Polyphase Game Engine
Loading...
Searching...
No Matches
Node Class Reference

#include <Node.h>

Inheritance diagram for Node:
Object Node3D NodeGraphPlayer SpriteAnimator TimelinePlayer Widget AnimatedSprite3D Audio3D Camera3D Light3D Primitive3D Spline3D ArrayWidget Button Canvas CheckBox ComboBox InputField LineEdit ListViewItemWidget ListViewWidget Poly ProgressBar Quad ScrollContainer Slider SpinBox Text ToolTipWidget Window

Public Member Functions

 DECLARE_FACTORY_MANAGER (Node)
 
 DECLARE_FACTORY (Node, Node)
 
 DECLARE_OBJECT (Node, Object)
 
 DECLARE_SCRIPT_LINK_BASE (Node)
 
 Node ()
 
virtual ~Node ()
 
virtual void Create ()
 
virtual void Destroy ()
 
void DestroyDeferred ()
 
void Doom ()
 
virtual void SaveStream (Stream &stream, Platform platform)
 
virtual void LoadStream (Stream &stream, Platform platform, uint32_t version)
 
virtual void Copy (Node *srcNode, bool recurse)
 
virtual void Render (PipelineConfig pipelineConfig)
 
virtual void Awake ()
 
virtual void Start ()
 
virtual void Stop ()
 
virtual void PrepareTick (std::vector< NodePtrWeak > &outTickNodes, bool game, bool recurse)
 
virtual void Tick (float deltaTime)
 
virtual void EditorTick (float deltaTime)
 
uint32_t GetLastTickedFrame () const
 
virtual void Render ()
 
virtual void OnInstanced ()
 
virtual VertexType GetVertexType () const
 
virtual void GatherProperties (std::vector< Property > &outProps) override
 
virtual void GatherReplicatedData (std::vector< NetDatum > &outData)
 
virtual void GatherNetFuncs (std::vector< NetFunc > &outFuncs)
 
void GatherPropertyOverrides (std::vector< Property > &outOverrides)
 
void ApplyPropertyOverrides (const std::vector< Property > &overs)
 
virtual void BeginOverlap (Primitive3D *thisComp, Primitive3D *otherComp)
 
virtual void EndOverlap (Primitive3D *thisComp, Primitive3D *otherComp)
 
virtual void OnCollision (Primitive3D *thisComp, Primitive3D *otherComp, glm::vec3 impactPoint, glm::vec3 impactNormal, btPersistentManifold *manifold)
 
NodeId GetNodeId () const
 
uint64_t GetPersistentUuid () const
 
void SetPersistentUuid (uint64_t uuid)
 
void EnsurePersistentUuid ()
 
void EmitSignal (const std::string &name, const std::vector< Datum > &args)
 
void ConnectSignal (const std::string &name, Node *listener, SignalHandlerFP func)
 
void ConnectSignal (const std::string &name, Node *listener, const ScriptFunc &func)
 
void DisconnectSignal (const std::string &name, Node *listener)
 
void RenderShadow ()
 
void RenderSelected (bool renderChildren)
 
NodeCreateChild (TypeId nodeType)
 
NodeCreateChild (const char *typeName)
 
NodeCreateChildClone (Node *srcNode, bool recurse)
 
NodePtr Clone (bool recurse, bool instantiateLinkedScene=true, bool resolveNodePaths=false)
 
void DestroyAllChildren ()
 
NodeGetRoot ()
 
bool IsWorldRoot () const
 
NodeGetSubRoot ()
 
template<class NodeClass >
NodeClass * CreateChild ()
 
template<class NodeClass >
SharedPtr< NodeClass > CreateChildSp ()
 
template<class NodeClass >
NodeClass * CreateChild (const char *name)
 
template<class NodeClass >
SharedPtr< NodeClass > CreateChildSp (const char *name)
 
bool IsDestroyed () const
 
bool IsPendingDestroy () const
 
bool IsDoomed () const
 
bool HasStarted () const
 
bool HasAwoken () const
 
void EnableTick (bool enable)
 
bool IsTickEnabled () const
 
virtual void SetWorld (World *world, bool subRoot)
 
WorldGetWorld ()
 
void SetScene (Scene *scene)
 
SceneGetScene ()
 
uint8_t GetTargetScreen () const
 
void SetTargetScreen (uint8_t screen)
 
std::vector< NetDatum > & GetReplicatedData ()
 
void SetNetId (NetId id)
 
NetId GetNetId () const
 
NetHostId GetOwningHost () const
 
void SetOwningHost (NetHostId hostId, bool setAsPawn=false)
 
void SetReplicate (bool replicate)
 
bool IsReplicated () const
 
void SetReplicateTransform (bool repTransform)
 
bool IsTransformReplicated () const
 
void ForceReplication ()
 
void ClearForcedReplication ()
 
bool NeedsForcedReplication ()
 
virtual bool CheckNetRelevance (Node *playerNode)
 
bool IsAlwaysRelevant () const
 
void SetAlwaysRelevant (bool alwaysRelevant)
 
bool HasTag (const std::string &tag)
 
void AddTag (const std::string &tag)
 
void RemoveTag (const std::string &tag)
 
void SetName (const std::string &newName)
 
const std::string & GetName () const
 
virtual void SetActive (bool active)
 
bool IsActive (bool recurse=false) const
 
virtual void SetVisible (bool visible)
 
bool IsVisible (bool recurse=false) const
 
void SetTransient (bool transient)
 
virtual bool IsTransient () const
 
void SetPersistent (bool persistent)
 
bool IsPersistent () const
 
void SetDefault (bool isDefault)
 
bool IsDefault () const
 
void SetUserdataCreated (bool created)
 
bool IsUserdataCreated () const
 
virtual const char * GetTypeName () const
 
virtual DrawData GetDrawData ()
 
virtual bool IsNode3D () const
 
virtual bool IsWidget () const
 
virtual bool IsPrimitive3D () const
 
virtual bool IsLight3D () const
 
NodeGetParent ()
 
const NodeGetParent () const
 
const std::vector< NodePtr > & GetChildren () const
 
virtual void Attach (Node *parent, bool keepWorldTransform=false, int32_t index=-1)
 
void Detach (bool keepWorldTransform=false)
 
void AddChild (Node *child, int32_t index=-1)
 
void RemoveChild (Node *child)
 
void RemoveChild (int32_t index)
 
template<typename T >
void AddChild (const SharedPtr< T > &child, int32_t index=-1)
 
template<typename T >
void RemoveChild (const SharedPtr< Node > &child)
 
int32_t FindChildIndex (const std::string &name) const
 
int32_t FindChildIndex (Node *child) const
 
NodeFindChild (const std::string &name, bool recurse) const
 
NodeFindChildWithTag (const std::string &name, bool recurse) const
 
NodeFindDescendant (const std::string &name)
 
NodeFindAncestor (const std::string &name)
 
bool HasAncestor (Node *node)
 
NodeGetChild (int32_t index) const
 
NodeGetChildByType (TypeId type) const
 
uint32_t GetNumChildren () const
 
int32_t FindParentNodeIndex () const
 
void SetHitCheckId (uint32_t id)
 
uint32_t GetHitCheckId () const
 
bool IsLateTickEnabled () const
 
void EnableLateTick (bool enable)
 
ScriptGetScript ()
 
void SetScriptFile (const std::string &fileName)
 
bool DoChildrenHaveUniqueNames () const
 
void BreakSceneLink ()
 
bool IsSceneLinked (bool ignoreInPie=true) const
 
bool IsSceneLinkedChild (bool ignoreInPie=true)
 
bool IsForeign () const
 
bool HasAuthority () const
 
bool IsOwned () const
 
bool IsLocallyControlled () const
 
Datum GetField (const std::string &key)
 
void SetField (const std::string &name, const Datum &value)
 
Datum GetField (int32_t key)
 
void SetField (int32_t key, const Datum &value)
 
Datum CallFunction (const std::string &name, const std::vector< Datum > &args={})
 
NetFuncFindNetFunc (const char *name)
 
NetFuncFindNetFunc (uint16_t index)
 
void InvokeNetFunc (const char *name)
 
void InvokeNetFunc (const char *name, Datum param0)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2, Datum param3)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2, Datum param3, Datum param4)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2, Datum param3, Datum param4, Datum param5)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2, Datum param3, Datum param4, Datum param5, Datum param6)
 
void InvokeNetFunc (const char *name, Datum param0, Datum param1, Datum param2, Datum param3, Datum param4, Datum param5, Datum param6, Datum param7)
 
void InvokeNetFunc (const char *name, const std::vector< Datum > &params)
 
const WeakPtr< Node > & GetSelfPtr () const
 
template<typename T >
T * FindChild (const std::string &name, bool recurse)
 
template<typename T >
void Traverse (T func, bool inverted=false)
 
template<typename T >
bool ForEach (T func, bool inverted=false)
 
- Public Member Functions inherited from Object
virtual ~Object ()=default
 
virtual const char * RuntimeName () const =0
 
virtual const char * RuntimeParentName () const =0
 
virtual RuntimeId InstanceRuntimeId () const =0
 
virtual ObjectQueryInterface (RuntimeId id) const
 
virtual bool Is (RuntimeId id) const
 
virtual bool Is (const char *name) const
 
virtual bool DrawCustomProperty (Property &prop)
 
template<typename T >
T * As () const
 
virtual bool Equals (const Object *rhs) const
 

Static Public Member Functions

static NodePtr Construct (const std::string &name)
 
static NodePtr Construct (TypeId typeId)
 
static void Destruct (Node *node)
 
static void ProcessPendingDestroys ()
 
static void RegisterNetFuncs (Node *node)
 
static void Deleter (Node *node)
 
template<class NodeClass >
static SharedPtr< NodeClass > Construct ()
 
- Static Public Member Functions inherited from Object
static const char * ClassRuntimeName ()
 

Protected Member Functions

void TickCommon (float deltaTime)
 
virtual void SetParent (Node *parent)
 
void ValidateUniqueChildName (Node *newChild)
 
void SendNetFunc (NetFunc *func, uint32_t numParams, const Datum **params)
 

Static Protected Member Functions

static bool HandlePropChange (Datum *datum, uint32_t index, const void *newValue)
 
static bool OnRep_OwningHost (Datum *datum, uint32_t index, const void *newValue)
 

Protected Attributes

std::string mName
 
WorldmWorld = nullptr
 
NodePtrWeak mParent
 
NodePtrWeak mSelf
 
std::vector< NodePtrmChildren
 
std::unordered_map< std::string, Node * > mChildNameMap
 
std::unordered_map< std::string, SignalmSignalMap
 
std::string mScriptFile
 
uint32_t mLastTickedFrame = 0
 
bool mActive = true
 
bool mVisible = true
 
bool mTransient = false
 
bool mPersistent = false
 
bool mDefault = false
 
bool mUserdataCreated = false
 
bool mHasStarted = false
 
bool mHasAwoken = false
 
bool mDestroyed = false
 
bool mTickEnabled = true
 
bool mLateTick = false
 
SceneRef mScene
 
uint8_t mTargetScreen = 0
 
std::vector< std::string > mTags
 
NodeId mNodeId = INVALID_NODE_ID
 
uint64_t mPersistentUuid = 0
 
std::vector< NetDatummReplicatedData
 
NetId mNetId = INVALID_NET_ID
 
NetHostId mOwningHost = INVALID_HOST_ID
 
bool mReplicate = false
 
bool mReplicateTransform = false
 
bool mForceReplicate = false
 
bool mAlwaysRelevant = true
 
ScriptmScript = nullptr
 

Static Protected Attributes

static std::unordered_map< TypeId, NetFuncMapsTypeNetFuncMap
 
static std::unordered_set< NodePtrWeaksPendingDestroySet
 
static NodeId sNextNodeId = NodeId(1)
 

Constructor & Destructor Documentation

◆ Node()

Node::Node ( )

◆ ~Node()

Node::~Node ( )
virtual

Member Function Documentation

◆ AddChild() [1/2]

template<typename T >
void Node::AddChild ( const SharedPtr< T > &  child,
int32_t  index = -1 
)
inline

◆ AddChild() [2/2]

void Node::AddChild ( Node child,
int32_t  index = -1 
)

◆ AddTag()

void Node::AddTag ( const std::string &  tag)

◆ ApplyPropertyOverrides()

void Node::ApplyPropertyOverrides ( const std::vector< Property > &  overs)

◆ Attach()

void Node::Attach ( Node parent,
bool  keepWorldTransform = false,
int32_t  index = -1 
)
virtual

Reimplemented in Node3D.

◆ Awake()

void Node::Awake ( )
virtual

◆ BeginOverlap()

void Node::BeginOverlap ( Primitive3D thisComp,
Primitive3D otherComp 
)
virtual

Reimplemented in NodeGraphPlayer.

◆ BreakSceneLink()

void Node::BreakSceneLink ( )

◆ CallFunction()

Datum Node::CallFunction ( const std::string &  name,
const std::vector< Datum > &  args = {} 
)

◆ CheckNetRelevance()

bool Node::CheckNetRelevance ( Node playerNode)
virtual

Reimplemented in Node3D.

◆ ClearForcedReplication()

void Node::ClearForcedReplication ( )

◆ Clone()

NodePtr Node::Clone ( bool  recurse,
bool  instantiateLinkedScene = true,
bool  resolveNodePaths = false 
)

◆ ConnectSignal() [1/2]

void Node::ConnectSignal ( const std::string &  name,
Node listener,
const ScriptFunc func 
)

◆ ConnectSignal() [2/2]

void Node::ConnectSignal ( const std::string &  name,
Node listener,
SignalHandlerFP  func 
)

◆ Construct() [1/3]

template<class NodeClass >
static SharedPtr< NodeClass > Node::Construct ( )
inlinestatic

◆ Construct() [2/3]

NodePtr Node::Construct ( const std::string &  name)
static

◆ Construct() [3/3]

NodePtr Node::Construct ( TypeId  typeId)
static

◆ Copy()

void Node::Copy ( Node srcNode,
bool  recurse 
)
virtual

Reimplemented in Spline3D, Terrain3D, TileMap2D, and Voxel3D.

◆ Create()

◆ CreateChild() [1/4]

template<class NodeClass >
NodeClass * Node::CreateChild ( )
inline

◆ CreateChild() [2/4]

template<class NodeClass >
NodeClass * Node::CreateChild ( const char *  name)
inline

◆ CreateChild() [3/4]

Node * Node::CreateChild ( const char *  typeName)

◆ CreateChild() [4/4]

Node * Node::CreateChild ( TypeId  nodeType)

◆ CreateChildClone()

Node * Node::CreateChildClone ( Node srcNode,
bool  recurse 
)

◆ CreateChildSp() [1/2]

template<class NodeClass >
SharedPtr< NodeClass > Node::CreateChildSp ( )
inline

◆ CreateChildSp() [2/2]

template<class NodeClass >
SharedPtr< NodeClass > Node::CreateChildSp ( const char *  name)
inline

◆ DECLARE_FACTORY()

Node::DECLARE_FACTORY ( Node  ,
Node   
)

◆ DECLARE_FACTORY_MANAGER()

Node::DECLARE_FACTORY_MANAGER ( Node  )

◆ DECLARE_OBJECT()

Node::DECLARE_OBJECT ( Node  ,
Object   
)

◆ DECLARE_SCRIPT_LINK_BASE()

Node::DECLARE_SCRIPT_LINK_BASE ( Node  )

◆ Deleter()

void Node::Deleter ( Node node)
static

◆ Destroy()

◆ DestroyAllChildren()

void Node::DestroyAllChildren ( )

◆ DestroyDeferred()

void Node::DestroyDeferred ( )

◆ Destruct()

void Node::Destruct ( Node node)
static

◆ Detach()

void Node::Detach ( bool  keepWorldTransform = false)

◆ DisconnectSignal()

void Node::DisconnectSignal ( const std::string &  name,
Node listener 
)

◆ DoChildrenHaveUniqueNames()

bool Node::DoChildrenHaveUniqueNames ( ) const

◆ Doom()

void Node::Doom ( )

◆ EditorTick()

◆ EmitSignal()

void Node::EmitSignal ( const std::string &  name,
const std::vector< Datum > &  args 
)

◆ EnableLateTick()

void Node::EnableLateTick ( bool  enable)

◆ EnableTick()

void Node::EnableTick ( bool  enable)

◆ EndOverlap()

void Node::EndOverlap ( Primitive3D thisComp,
Primitive3D otherComp 
)
virtual

Reimplemented in NodeGraphPlayer.

◆ EnsurePersistentUuid()

void Node::EnsurePersistentUuid ( )

◆ FindAncestor()

Node * Node::FindAncestor ( const std::string &  name)

◆ FindChild() [1/2]

template<typename T >
T * Node::FindChild ( const std::string &  name,
bool  recurse 
)
inline

◆ FindChild() [2/2]

Node * Node::FindChild ( const std::string &  name,
bool  recurse 
) const

◆ FindChildIndex() [1/2]

int32_t Node::FindChildIndex ( const std::string &  name) const

◆ FindChildIndex() [2/2]

int32_t Node::FindChildIndex ( Node child) const

◆ FindChildWithTag()

Node * Node::FindChildWithTag ( const std::string &  name,
bool  recurse 
) const

◆ FindDescendant()

Node * Node::FindDescendant ( const std::string &  name)

◆ FindNetFunc() [1/2]

NetFunc * Node::FindNetFunc ( const char *  name)

◆ FindNetFunc() [2/2]

NetFunc * Node::FindNetFunc ( uint16_t  index)

◆ FindParentNodeIndex()

int32_t Node::FindParentNodeIndex ( ) const

◆ ForceReplication()

void Node::ForceReplication ( )

◆ ForEach()

template<typename T >
bool Node::ForEach ( func,
bool  inverted = false 
)
inline

◆ GatherNetFuncs()

void Node::GatherNetFuncs ( std::vector< NetFunc > &  outFuncs)
virtual

◆ GatherProperties()

◆ GatherPropertyOverrides()

void Node::GatherPropertyOverrides ( std::vector< Property > &  outOverrides)

◆ GatherReplicatedData()

void Node::GatherReplicatedData ( std::vector< NetDatum > &  outData)
virtual

Reimplemented in Node3D.

◆ GetChild()

Node * Node::GetChild ( int32_t  index) const

◆ GetChildByType()

Node * Node::GetChildByType ( TypeId  type) const

◆ GetChildren()

const std::vector< NodePtr > & Node::GetChildren ( ) const

◆ GetDrawData()

DrawData Node::GetDrawData ( )
virtual

Reimplemented in Mesh3D, Particle3D, Poly, Quad, and Text.

◆ GetField() [1/2]

Datum Node::GetField ( const std::string &  key)

◆ GetField() [2/2]

Datum Node::GetField ( int32_t  key)

◆ GetHitCheckId()

uint32_t Node::GetHitCheckId ( ) const

◆ GetLastTickedFrame()

uint32_t Node::GetLastTickedFrame ( ) const

◆ GetName()

const std::string & Node::GetName ( ) const

◆ GetNetId()

NetId Node::GetNetId ( ) const

◆ GetNodeId()

NodeId Node::GetNodeId ( ) const

◆ GetNumChildren()

uint32_t Node::GetNumChildren ( ) const

◆ GetOwningHost()

NetHostId Node::GetOwningHost ( ) const

◆ GetParent() [1/2]

Node * Node::GetParent ( )

◆ GetParent() [2/2]

const Node * Node::GetParent ( ) const

◆ GetPersistentUuid()

uint64_t Node::GetPersistentUuid ( ) const

◆ GetReplicatedData()

std::vector< NetDatum > & Node::GetReplicatedData ( )

◆ GetRoot()

Node * Node::GetRoot ( )

◆ GetScene()

Scene * Node::GetScene ( )

◆ GetScript()

Script * Node::GetScript ( )

◆ GetSelfPtr()

const WeakPtr< Node > & Node::GetSelfPtr ( ) const
inline

◆ GetSubRoot()

Node * Node::GetSubRoot ( )

◆ GetTargetScreen()

uint8_t Node::GetTargetScreen ( ) const
inline

◆ GetTypeName()

◆ GetVertexType()

VertexType Node::GetVertexType ( ) const
virtual

Reimplemented in Particle3D, Primitive3D, StaticMesh3D, and Widget.

◆ GetWorld()

World * Node::GetWorld ( )

◆ HandlePropChange()

bool Node::HandlePropChange ( Datum datum,
uint32_t  index,
const void *  newValue 
)
staticprotected

◆ HasAncestor()

bool Node::HasAncestor ( Node node)

◆ HasAuthority()

bool Node::HasAuthority ( ) const

◆ HasAwoken()

bool Node::HasAwoken ( ) const

◆ HasStarted()

bool Node::HasStarted ( ) const

◆ HasTag()

bool Node::HasTag ( const std::string &  tag)

◆ InvokeNetFunc() [1/10]

void Node::InvokeNetFunc ( const char *  name)

◆ InvokeNetFunc() [2/10]

void Node::InvokeNetFunc ( const char *  name,
const std::vector< Datum > &  params 
)

◆ InvokeNetFunc() [3/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0 
)

◆ InvokeNetFunc() [4/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1 
)

◆ InvokeNetFunc() [5/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2 
)

◆ InvokeNetFunc() [6/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2,
Datum  param3 
)

◆ InvokeNetFunc() [7/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2,
Datum  param3,
Datum  param4 
)

◆ InvokeNetFunc() [8/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2,
Datum  param3,
Datum  param4,
Datum  param5 
)

◆ InvokeNetFunc() [9/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2,
Datum  param3,
Datum  param4,
Datum  param5,
Datum  param6 
)

◆ InvokeNetFunc() [10/10]

void Node::InvokeNetFunc ( const char *  name,
Datum  param0,
Datum  param1,
Datum  param2,
Datum  param3,
Datum  param4,
Datum  param5,
Datum  param6,
Datum  param7 
)

◆ IsActive()

bool Node::IsActive ( bool  recurse = false) const

◆ IsAlwaysRelevant()

bool Node::IsAlwaysRelevant ( ) const

◆ IsDefault()

bool Node::IsDefault ( ) const

◆ IsDestroyed()

bool Node::IsDestroyed ( ) const

◆ IsDoomed()

bool Node::IsDoomed ( ) const

◆ IsForeign()

bool Node::IsForeign ( ) const

◆ IsLateTickEnabled()

bool Node::IsLateTickEnabled ( ) const

◆ IsLight3D()

bool Node::IsLight3D ( ) const
virtual

Reimplemented in Light3D.

◆ IsLocallyControlled()

bool Node::IsLocallyControlled ( ) const

◆ IsNode3D()

bool Node::IsNode3D ( ) const
virtual

Reimplemented in Node3D.

◆ IsOwned()

bool Node::IsOwned ( ) const

◆ IsPendingDestroy()

bool Node::IsPendingDestroy ( ) const

◆ IsPersistent()

bool Node::IsPersistent ( ) const

◆ IsPrimitive3D()

bool Node::IsPrimitive3D ( ) const
virtual

Reimplemented in Primitive3D.

◆ IsReplicated()

bool Node::IsReplicated ( ) const

◆ IsSceneLinked()

bool Node::IsSceneLinked ( bool  ignoreInPie = true) const

◆ IsSceneLinkedChild()

bool Node::IsSceneLinkedChild ( bool  ignoreInPie = true)

◆ IsTickEnabled()

bool Node::IsTickEnabled ( ) const

◆ IsTransformReplicated()

bool Node::IsTransformReplicated ( ) const

◆ IsTransient()

bool Node::IsTransient ( ) const
virtual

◆ IsUserdataCreated()

bool Node::IsUserdataCreated ( ) const

◆ IsVisible()

bool Node::IsVisible ( bool  recurse = false) const

◆ IsWidget()

bool Node::IsWidget ( ) const
virtual

Reimplemented in Widget.

◆ IsWorldRoot()

bool Node::IsWorldRoot ( ) const

◆ LoadStream()

void Node::LoadStream ( Stream stream,
Platform  platform,
uint32_t  version 
)
virtual

◆ NeedsForcedReplication()

bool Node::NeedsForcedReplication ( )

◆ OnCollision()

void Node::OnCollision ( Primitive3D thisComp,
Primitive3D otherComp,
glm::vec3  impactPoint,
glm::vec3  impactNormal,
btPersistentManifold *  manifold 
)
virtual

Reimplemented in NodeGraphPlayer.

◆ OnInstanced()

void Node::OnInstanced ( )
virtual

Reimplemented in Canvas, DialogWindow, and Window.

◆ OnRep_OwningHost()

bool Node::OnRep_OwningHost ( Datum datum,
uint32_t  index,
const void *  newValue 
)
staticprotected

◆ PrepareTick()

void Node::PrepareTick ( std::vector< NodePtrWeak > &  outTickNodes,
bool  game,
bool  recurse 
)
virtual

Reimplemented in Widget.

◆ ProcessPendingDestroys()

void Node::ProcessPendingDestroys ( )
static

◆ RegisterNetFuncs()

void Node::RegisterNetFuncs ( Node node)
static

◆ RemoveChild() [1/3]

template<typename T >
void Node::RemoveChild ( const SharedPtr< Node > &  child)
inline

◆ RemoveChild() [2/3]

void Node::RemoveChild ( int32_t  index)

◆ RemoveChild() [3/3]

void Node::RemoveChild ( Node child)

◆ RemoveTag()

void Node::RemoveTag ( const std::string &  tag)

◆ Render() [1/2]

◆ Render() [2/2]

void Node::Render ( PipelineConfig  pipelineConfig)
virtual

◆ RenderSelected()

void Node::RenderSelected ( bool  renderChildren)

◆ RenderShadow()

void Node::RenderShadow ( )

◆ SaveStream()

void Node::SaveStream ( Stream stream,
Platform  platform 
)
virtual

◆ SendNetFunc()

void Node::SendNetFunc ( NetFunc func,
uint32_t  numParams,
const Datum **  params 
)
protected

◆ SetActive()

void Node::SetActive ( bool  active)
virtual

◆ SetAlwaysRelevant()

void Node::SetAlwaysRelevant ( bool  alwaysRelevant)

◆ SetDefault()

void Node::SetDefault ( bool  isDefault)

◆ SetField() [1/2]

void Node::SetField ( const std::string &  name,
const Datum value 
)

◆ SetField() [2/2]

void Node::SetField ( int32_t  key,
const Datum value 
)

◆ SetHitCheckId()

void Node::SetHitCheckId ( uint32_t  id)

◆ SetName()

void Node::SetName ( const std::string &  newName)

◆ SetNetId()

void Node::SetNetId ( NetId  id)

◆ SetOwningHost()

void Node::SetOwningHost ( NetHostId  hostId,
bool  setAsPawn = false 
)

◆ SetParent()

void Node::SetParent ( Node parent)
protectedvirtual

Reimplemented in Node3D, and Widget.

◆ SetPersistent()

void Node::SetPersistent ( bool  persistent)

◆ SetPersistentUuid()

void Node::SetPersistentUuid ( uint64_t  uuid)

◆ SetReplicate()

void Node::SetReplicate ( bool  replicate)

◆ SetReplicateTransform()

void Node::SetReplicateTransform ( bool  repTransform)

◆ SetScene()

void Node::SetScene ( Scene scene)

◆ SetScriptFile()

void Node::SetScriptFile ( const std::string &  fileName)

◆ SetTargetScreen()

void Node::SetTargetScreen ( uint8_t  screen)
inline

◆ SetTransient()

void Node::SetTransient ( bool  transient)

◆ SetUserdataCreated()

void Node::SetUserdataCreated ( bool  created)

◆ SetVisible()

void Node::SetVisible ( bool  visible)
virtual

Reimplemented in Widget.

◆ SetWorld()

void Node::SetWorld ( World world,
bool  subRoot 
)
virtual

Reimplemented in Primitive3D.

◆ Start()

◆ Stop()

void Node::Stop ( )
virtual

◆ Tick()

◆ TickCommon()

void Node::TickCommon ( float  deltaTime)
protected

◆ Traverse()

template<typename T >
void Node::Traverse ( func,
bool  inverted = false 
)
inline

◆ ValidateUniqueChildName()

void Node::ValidateUniqueChildName ( Node newChild)
protected

Member Data Documentation

◆ mActive

bool Node::mActive = true
protected

◆ mAlwaysRelevant

bool Node::mAlwaysRelevant = true
protected

◆ mChildNameMap

std::unordered_map<std::string, Node*> Node::mChildNameMap
protected

◆ mChildren

std::vector<NodePtr> Node::mChildren
protected

◆ mDefault

bool Node::mDefault = false
protected

◆ mDestroyed

bool Node::mDestroyed = false
protected

◆ mForceReplicate

bool Node::mForceReplicate = false
protected

◆ mHasAwoken

bool Node::mHasAwoken = false
protected

◆ mHasStarted

bool Node::mHasStarted = false
protected

◆ mLastTickedFrame

uint32_t Node::mLastTickedFrame = 0
protected

◆ mLateTick

bool Node::mLateTick = false
protected

◆ mName

std::string Node::mName
protected

◆ mNetId

NetId Node::mNetId = INVALID_NET_ID
protected

◆ mNodeId

NodeId Node::mNodeId = INVALID_NODE_ID
protected

◆ mOwningHost

NetHostId Node::mOwningHost = INVALID_HOST_ID
protected

◆ mParent

NodePtrWeak Node::mParent
protected

◆ mPersistent

bool Node::mPersistent = false
protected

◆ mPersistentUuid

uint64_t Node::mPersistentUuid = 0
protected

◆ mReplicate

bool Node::mReplicate = false
protected

◆ mReplicatedData

std::vector<NetDatum> Node::mReplicatedData
protected

◆ mReplicateTransform

bool Node::mReplicateTransform = false
protected

◆ mScene

SceneRef Node::mScene
protected

◆ mScript

Script* Node::mScript = nullptr
protected

◆ mScriptFile

std::string Node::mScriptFile
protected

◆ mSelf

NodePtrWeak Node::mSelf
protected

◆ mSignalMap

std::unordered_map<std::string, Signal> Node::mSignalMap
protected

◆ mTags

std::vector<std::string> Node::mTags
protected

◆ mTargetScreen

uint8_t Node::mTargetScreen = 0
protected

◆ mTickEnabled

bool Node::mTickEnabled = true
protected

◆ mTransient

bool Node::mTransient = false
protected

◆ mUserdataCreated

bool Node::mUserdataCreated = false
protected

◆ mVisible

bool Node::mVisible = true
protected

◆ mWorld

World* Node::mWorld = nullptr
protected

◆ sNextNodeId

NodeId Node::sNextNodeId = NodeId(1)
staticprotected

◆ sPendingDestroySet

std::unordered_set< NodePtrWeak > Node::sPendingDestroySet
staticprotected

◆ sTypeNetFuncMap

std::unordered_map< TypeId, NetFuncMap > Node::sTypeNetFuncMap
staticprotected

The documentation for this class was generated from the following files: