You.i Engine
CYISceneNodeProxy Class Reference

Detailed Description

A class used to proxy access to a CYISceneNode.

Instances of this class are used to provide access to a CYISceneNode instance when the lifetime of that scene node is unknown. The CYISceneNodeProxy instances are accessed from a CYISceneNode instance and held in a shared pointer. If the scene node instance is deleted, the proxy instance is updated and its scene node reference is set to nullptr. Subsequent calls to setters on the proxy will have no effect.

Note
This class provides safe CYISceneNode wrapper functions, ensuring the CYISceneNode instance is valid before dereferencing it.
This class is never instanciated. Objects of this class are actually CYIEventTargetProxy instances (converted from CYIEventTargetProxy to CYISceneNodeProxy via static cast), therefore this class must only provide new member functions, not data members.
See also
CYIEventTarget::GetProxy()
CYISceneNode::GetSceneNodeProxy()

#include <scenetree/YiSceneNodeProxy.h>

Inheritance diagram for CYISceneNodeProxy:

Public Member Functions

const CYISceneNodeGetSceneNode () const
 
CYISceneNodeGetSceneNode ()
 
void SetAnchorPoint (const glm::vec3 &ref)
 
void SetAnchorPoint (float x, float y, float z)
 
void SetAnchorPointX (float x)
 
void SetAnchorPointY (float y)
 
void SetAnchorPointZ (float z)
 
void SetPosition (const glm::vec3 &ref)
 
void SetPosition (float x, float y, float z)
 
void SetPositionX (float x)
 
void SetPositionY (float y)
 
void SetPositionZ (float z)
 
void SetRotation (const glm::vec3 &eulerDegrees)
 
void SetRotation (float pitchDegrees, float yawDegrees, float rollDegrees)
 
void SetRotationX (float pitchDegrees)
 
void SetRotationY (float yawDegrees)
 
void SetRotationZ (float rollDegrees)
 
void SetOrientation (float pitchDegrees, float yawDegrees, float rollDegrees)
 
void SetOrientation (const glm::quat &orient)
 
void SetScale (const glm::vec3 &scaleFactors)
 
void SetScale (float factorX, float factorY, float factorZ)
 
void SetScaleX (float factor)
 
void SetScaleY (float factor)
 
void SetScaleZ (float factor)
 
void Show ()
 
void Hide ()
 
void SetOpacity (float opacity)
 
void SetInternalCustomTimelineValue (uint32_t trackID, const CYIVariant &value)
 
- Public Member Functions inherited from CYIEventTargetProxy
 CYIEventTargetProxy (CYIEventTarget *pEventTarget)
 
const CYIEventTargetGetEventTarget () const
 
CYIEventTargetGetEventTarget ()
 

Member Function Documentation

◆ GetSceneNode() [1/2]

const CYISceneNode* CYISceneNodeProxy::GetSceneNode ( ) const

Returns the scene node that is proxied by this object. Scene nodes set this to nullptr on their associated proxy object when the scene node is deleted.

◆ GetSceneNode() [2/2]

CYISceneNode* CYISceneNodeProxy::GetSceneNode ( )

◆ Hide()

void CYISceneNodeProxy::Hide ( )

◆ SetAnchorPoint() [1/2]

void CYISceneNodeProxy::SetAnchorPoint ( const glm::vec3 &  ref)

◆ SetAnchorPoint() [2/2]

void CYISceneNodeProxy::SetAnchorPoint ( float  x,
float  y,
float  z 
)

◆ SetAnchorPointX()

void CYISceneNodeProxy::SetAnchorPointX ( float  x)

◆ SetAnchorPointY()

void CYISceneNodeProxy::SetAnchorPointY ( float  y)

◆ SetAnchorPointZ()

void CYISceneNodeProxy::SetAnchorPointZ ( float  z)

◆ SetInternalCustomTimelineValue()

void CYISceneNodeProxy::SetInternalCustomTimelineValue ( uint32_t  trackID,
const CYIVariant value 
)

◆ SetOpacity()

void CYISceneNodeProxy::SetOpacity ( float  opacity)

◆ SetOrientation() [1/2]

void CYISceneNodeProxy::SetOrientation ( float  pitchDegrees,
float  yawDegrees,
float  rollDegrees 
)

◆ SetOrientation() [2/2]

void CYISceneNodeProxy::SetOrientation ( const glm::quat &  orient)

◆ SetPosition() [1/2]

void CYISceneNodeProxy::SetPosition ( const glm::vec3 &  ref)

◆ SetPosition() [2/2]

void CYISceneNodeProxy::SetPosition ( float  x,
float  y,
float  z 
)

◆ SetPositionX()

void CYISceneNodeProxy::SetPositionX ( float  x)

◆ SetPositionY()

void CYISceneNodeProxy::SetPositionY ( float  y)

◆ SetPositionZ()

void CYISceneNodeProxy::SetPositionZ ( float  z)

◆ SetRotation() [1/2]

void CYISceneNodeProxy::SetRotation ( const glm::vec3 &  eulerDegrees)

◆ SetRotation() [2/2]

void CYISceneNodeProxy::SetRotation ( float  pitchDegrees,
float  yawDegrees,
float  rollDegrees 
)

◆ SetRotationX()

void CYISceneNodeProxy::SetRotationX ( float  pitchDegrees)

◆ SetRotationY()

void CYISceneNodeProxy::SetRotationY ( float  yawDegrees)

◆ SetRotationZ()

void CYISceneNodeProxy::SetRotationZ ( float  rollDegrees)

◆ SetScale() [1/2]

void CYISceneNodeProxy::SetScale ( const glm::vec3 &  scaleFactors)

◆ SetScale() [2/2]

void CYISceneNodeProxy::SetScale ( float  factorX,
float  factorY,
float  factorZ 
)

◆ SetScaleX()

void CYISceneNodeProxy::SetScaleX ( float  factor)

◆ SetScaleY()

void CYISceneNodeProxy::SetScaleY ( float  factor)

◆ SetScaleZ()

void CYISceneNodeProxy::SetScaleZ ( float  factor)

◆ Show()

void CYISceneNodeProxy::Show ( )

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