Emergency 20 Dokumentation  4.2.0
em5::SupervisorMeshAnimationComponent Class Reference

Supervisor mesh animation test component class. More...

#include <SupervisorMeshAnimationComponent.h>

Inheritance diagram for em5::SupervisorMeshAnimationComponent:
qsf::MeshAnimationTestComponent qsf::MeshAnimationComponent qsf::Component qsf::JobProxyMovableObjectRenderingListener qsf::InheritedObject qsf::WeakPtrTarget qsf::MovableObjectRenderingListener qsf::Object

Public Member Functions

 SupervisorMeshAnimationComponent (qsf::Prototype *prototype)
 Constructor. More...
 
virtual ~SupervisorMeshAnimationComponent ()
 Destructor. More...
 
- Public Member Functions inherited from qsf::MeshAnimationTestComponent
 MeshAnimationTestComponent (Prototype *prototype)
 Constructor. More...
 
virtual ~MeshAnimationTestComponent ()
 Destructor. More...
 
const AssetProxygetSkeletonA () const
 Return the skeleton asset to use as animation source. More...
 
void setSkeletonA (const AssetProxy &skeleton)
 Set the skeleton asset to use as animation source. More...
 
const AssetProxygetSkeletonB () const
 Return the skeleton asset to use as second animation source. More...
 
void setSkeletonB (const AssetProxy &skeleton)
 Set the skeleton asset to use as second animation source. More...
 
bool getLoop () const
 Return whether or not to loop the animation playback. More...
 
void setLoop (bool loop)
 Set whether or not to loop the animation playback. More...
 
bool getReverseAnimation ()
 Return the direction of the animation. More...
 
void setReverseAnimation (bool animation)
 Set animation direction of playback. More...
 
float getSpeed () const
 Return the animation playback speed. More...
 
void setSpeed (float speed)
 Set animation playback speed. More...
 
BoneRetargeting getBoneTranslationRetargeting () const
 Return the bone translation retargeting mode. More...
 
void setBoneTranslationRetargeting (BoneRetargeting boneRetargeting)
 Set the bone translation retargeting mode. More...
 
float getPrologLength () const
 
void setPrologLength (float prologLength)
 
float getBlendLength () const
 
void setBlendLength (float blendLength)
 
bool getMovementEnabled () const
 
void setMovementEnabled (bool enable)
 
float getMovementA () const
 
void setMovementA (float movement)
 
float getMovementB () const
 
void setMovementB (float movement)
 
bool getRestart () const
 
void setRestart (bool)
 
BlendSynchronization getBlendSyncMode () const
 
void setBlendSyncMode (BlendSynchronization blendSyncMode)
 
bool getMixAnimation () const
 
void setMixAnimation (bool mixAnimation)
 
const std::string & getMaskBones () const
 
void setMaskBones (const std::string &maskBones)
 
float getCurrentTime () const
 
void setCurrentTime (float currentTime)
 
bool getUseRandomOffset () const
 
void setUseRandomOffset (bool useRandomOffset)
 
void forceRestart (const qsf::Time &blendTime=qsf::Time::ZERO)
 
bool isTestComponentUpdatesEnabled () const
 
void setTestComponentUpdatesEnabled (bool testComponentUpdatesEnabled)
 
- Public Member Functions inherited from qsf::MeshAnimationComponent
 MeshAnimationComponent (Prototype *prototype)
 Constructor. More...
 
virtual ~MeshAnimationComponent ()
 Destructor. More...
 
void stopAllAnimations ()
 Stop all animations currently playing. More...
 
MeshAnimationChannelplayAnimation (const AssetProxy &animationAsset, bool loop, bool reverse=false, BoneRetargeting boneTranslationRetargeting=ANIMATION_BONE_SCALE_RETARGETING)
 Play a new animation, replacing the existing one. More...
 
std::pair< MeshAnimationChannel *, MeshAnimationChannel * > playMaskedAnimation (const AssetProxy &animationAsset1, const AssetProxy &animationAsset2, const std::vector< std::string > &boneMask, bool loop, bool reverse1=false, bool reverse2=false, BoneRetargeting boneTranslationRetargeting1=ANIMATION_BONE_SCALE_RETARGETING, BoneRetargeting boneTranslationRetargeting2=ANIMATION_BONE_SCALE_RETARGETING)
 Play 2 new masked animation, replacing the existing one. More...
 
MeshAnimationChannelblendToAnimation (const AssetProxy &animationAsset, bool loop, Time blendLength, bool reverse=false, BlendSynchronization blendSync=SYNC_NONE, BoneRetargeting boneTranslationRetargeting=ANIMATION_BONE_SCALE_RETARGETING)
 Play a new animation, blending from the existing one (if there is one) More...
 
std::pair< MeshAnimationChannel *, MeshAnimationChannel * > blendToMaskedAnimation (const AssetProxy &animationAsset1, const AssetProxy &animationAsset2, const std::vector< std::string > &boneMask, bool loop, Time blendLength, bool reverse1=false, bool reverse2=false, BlendSynchronization blendSync=SYNC_NONE, BoneRetargeting boneTranslationRetargeting1=ANIMATION_BONE_SCALE_RETARGETING, BoneRetargeting boneTranslationRetargeting2=ANIMATION_BONE_SCALE_RETARGETING)
 Play a new animation, blending from the existing one (if there is one) More...
 
bool isPlaying () const
 Return the current playback state. More...
 
bool isAnimationPlaying (const AssetProxy &animationAsset) const
 Check whether the given animation is current playing. More...
 
const ChannelMapgetChannels () const
 
void resetAnimationBindingNextTime ()
 Next time an animation is played the binding will be updated. More...
 
bool isDoAlwaysUpdateAnimation () const
 Return whether or not the animation is always updated, regardless of whether or not it's visible. More...
 
void setDoAlwaysUpdateAnimation (bool doAlwaysUpdateAnimation)
 Return whether or not the animation is always updated, regardless of whether or not it's visible. More...
 
Ogre::v1::OldBone * manualBoneControl (const std::string &boneName, bool manualControl, MeshAnimationChannel *channelForMaskedBone=nullptr) const
 Set if we want to manually control a bone. More...
 
bool isBone (const std::string &boneName) const
 Check if a bone with bone name exists. More...
 
MeshAnimationChannelgetAnimationChannel (const AssetProxy &animationAsset) const
 Get an animation channel of a given asset if possible. More...
 
const std::string & getCurrentAnimation () const
 Return the skeleton local asset name of the first channel. More...
 
std::string getDebugStringFirstChannel () const
 Return the skeleton asset name of the first channel, plus debug information like the current play position. More...
 
const LastAnimatonDatagetLastAnimationData () const
 Returns the last animation data. More...
 
void enforceGraphicsSynchronization ()
 Enforce graphics synchronization. More...
 
- Public Member Functions inherited from qsf::Component
virtual ~Component ()
 Destructor. More...
 
PrototypegetPrototype () const
 Return the prototype this component is in. More...
 
EntitygetEntity () const
 Return a reference to the entity this component is in. More...
 
uint32 getId () const
 Return the unique component identifier. More...
 
ComponentManagergetComponentManager () const
 Return the component manager that's responsible for this component instance. More...
 
ComponentCollectiongetComponentCollection () const
 Return the component collection that's responsible for this component instance. More...
 
bool isSimulating () const
 Return whether or not the component is in simulating mode. More...
 
bool isActive () const
 Return whether or not the component is considered to be active. More...
 
void setActive (bool active)
 Set whether or not the component is considered to be active. More...
 
bool isDebug () const
 Return whether or not the component is considered to be in debug mode. More...
 
bool isHidden () const
 Return whether or not the component is hidden. More...
 
void setHidden (bool hidden)
 Set whether or not the component is hidden. More...
 
bool isGloballyHidden () const
 Return whether or not the component is globally hidden. More...
 
void setGloballyHidden (bool globallyHidden)
 Set whether or not the component is globally hidden. More...
 
bool isReallyHidden () const
 Return whether or not the component is really hidden. More...
 
bool startup (bool ownerIsRunning)
 Startup the component. More...
 
bool isRunning () const
 Return whether or not the component is up-and-running. More...
 
void shutdown ()
 Shutdown the component. More...
 
uint64 getPrototypeId () const
 Return the ID of the prototype this component is in. More...
 
uint64 getEntityId () const
 Return the ID of the entity this component is in. More...
 
virtual void onInvalidation ()
 Invalidate the component. More...
 
virtual void setDebug (bool debugMode)
 Set whether or not the component is considered to be in debug mode. More...
 
virtual void serialize (BinarySerializer &serializer)
 Serialize or deserialize the component using a binary serializer. More...
 
- Public Member Functions inherited from qsf::InheritedObject
void copyPropertyOverrideStateFrom (const InheritedObject &object, bool add=false)
 
void setAllPropertyOverrideFlags (bool value)
 
void autoCreatePropertyOverrideState ()
 
virtual camp::Value getPropertyDefaultValue (const StringHash &propertyId) const override
 
virtual PropertyOverrideState getPropertyOverrideState (const StringHash &propertyId) const override
 
virtual bool setPropertyOverrideState (const StringHash &propertyId, PropertyOverrideState overrideState) override
 
- Public Member Functions inherited from qsf::Object
virtual ~Object ()
 Destructor. More...
 
const camp::Class & getCampClass () const
 Return the CAMP class. More...
 
int getPropertyIndexById (const StringHash &propertyId) const
 Return the CAMP property index by using the unique class property ID. More...
 
uint32 getPropertyIdByIndex (int index) const
 Return the unique class property ID with the given index. More...
 
std::string getPropertyNameById (const StringHash &propertyId) const
 Return the CAMP property name by using the unique class property ID. More...
 
const camp::Property * getCampPropertyById (const StringHash &propertyId) const
 Return the CAMP property by using the unique class property ID. More...
 
void setPropertyValuesByString (const std::string &values)
 Set CAMP reflection property values by using a given string. More...
 
void setPropertiesToDefaultValues ()
 Set all CAMP reflection system properties to their default values. More...
 
void serializeToBoostPTree (boost::property_tree::ptree &pTree, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
void serializeToBoostPTree (boost::property_tree::ptree &pTree, const camp::Class &campClass, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
bool deserializeFromBoostPTree (const boost::property_tree::ptree &pTree, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL)
 
bool deserializeFromBoostPTree (const boost::property_tree::ptree &pTree, const camp::Class &campClass, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL)
 
void serializeToBinarySerializer (BinarySerializer &serializer, SerializationMode mode=MODE_MINIMAL, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL) const
 
void deserializeFromBinarySerializer (BinarySerializer &serializer, SerializationMode mode=MODE_MINIMAL, SerializationMethod serializationMethod=SERIALIZE_DIFFERENTIAL, bool setOverrideState=true)
 
virtual void onPreDeserialize ()
 Called right before the object is deserialized using any of the above methods. Default implementation is empty. More...
 
virtual void onPostDeserialize ()
 Called right after the object was deserialized using any of the above methods. Default implementation is empty. More...
 
virtual ScriptgetAssociatedScript () const
 Return the script instance associated with this object instance. More...
 
- Public Member Functions inherited from qsf::JobProxyMovableObjectRenderingListener
 JobProxyMovableObjectRenderingListener ()
 Constructor. More...
 
virtual ~JobProxyMovableObjectRenderingListener ()
 Destructor. More...
 
const TimegetNonvisibleUpdateTimeout () const
 Return the nonvisible update timeout. More...
 
void setNonvisibleUpdateTimeout (const Time &nonvisibleUpdateTimeout)
 Set the nonvisible update timeout. More...
 
- Public Member Functions inherited from qsf::MovableObjectRenderingListener
 MovableObjectRenderingListener ()
 Constructor. More...
 
virtual ~MovableObjectRenderingListener ()
 Destructor. More...
 
bool isMovableObjectRenderingListenerRegistered () const
 Return whether or not the movable object rendering listener is registered. More...
 
State getState () const
 Return the state of the listener. More...
 

Static Public Attributes

static const uint32 COMPONENT_ID
 "em5::SupervisorMeshAnimationComponent" unique component ID More...
 
- Static Public Attributes inherited from qsf::MeshAnimationTestComponent
static const uint32 COMPONENT_ID
 "qsf::MeshAnimationTestComponent" unique component ID More...
 
static const uint32 ACTIVE
 "Active" unique class property ID inside the class More...
 
static const uint32 SKELETON_A
 "Skeleton_A" unique class property ID inside the class More...
 
static const uint32 SKELETON_B
 "Skeleton_B" unique class property ID inside the class More...
 
static const uint32 LOOP
 "Loop" unique class property ID inside the class More...
 
static const uint32 REVERSE
 "Playback" unique class property ID inside the class More...
 
static const uint32 SPEED
 "Speed" unique class property ID inside the class More...
 
static const uint32 USE_RANDOM_OFFSET
 "UseRandomOffset" unique class property ID inside the class More...
 
- Static Public Attributes inherited from qsf::MeshAnimationComponent
static const uint32 COMPONENT_ID
 "qsf::MeshAnimationComponent" unique component ID More...
 
- Static Public Attributes inherited from qsf::Component
static const uint32 COMPONENT_ID
 "qsf::Component" unique component ID More...
 

Protected Member Functions

virtual const qsf::NamedIdentifiergetAnimationJobManagerId () const override
 
- Protected Member Functions inherited from qsf::MeshAnimationTestComponent
virtual void onSetActive (bool active) override
 Set whether or not the component is considered to be active. More...
 
virtual bool onStartup () override
 Startup the component. More...
 
virtual void onShutdown () override
 Shutdown the component. More...
 
- Protected Member Functions inherited from qsf::MeshAnimationComponent
virtual void onUpdateMovableObjectRenderingJob (const JobArguments &jobArguments) override
 Main update function that is passed to the job manager. More...
 
virtual ComponentgetMovableObjectRenderingListenerComponent () override
 Return the component the listener will spy on. More...
 
virtual void onObjectRenderingStartup () override
 Called when an OGRE movable object is about to be rendered for the first time after it has not been rendered for some time. More...
 
virtual void onObjectRenderingShutdown () override
 Called when an OGRE movable object is no longer be rendered for some time. More...
 
virtual bool implementsOnComponentPropertyChange () const override
 Signal whether this component needs the "onComponentPropertyChange" callback at all. More...
 
virtual void onComponentPropertyChange (const Component &component, uint32 propertyId) override
 Called in case a component property value was changed. More...
 
bool isVisibleAnimation () const
 Return whether or not the animation is considered to be visible. More...
 
MeshAnimationChannelplayAnimationInternal (const AssetProxy &animationAsset, bool loop, bool reverse=false, BoneRetargeting boneTranslationRetargeting=ANIMATION_BONE_SCALE_RETARGETING, bool visibleAnimation=false)
 Play a new animation, replacing the existing one. More...
 
std::pair< MeshAnimationChannel *, MeshAnimationChannel * > playMaskedAnimationInternal (const AssetProxy &animationAsset1, const AssetProxy &animationAsset2, const std::vector< std::string > &boneMask, bool loop, bool reverse1=false, bool reverse2=false, BoneRetargeting boneTranslationRetargeting1=ANIMATION_BONE_SCALE_RETARGETING, BoneRetargeting boneTranslationRetargeting2=ANIMATION_BONE_SCALE_RETARGETING, bool visibleAnimation=false)
 Play 2 new masked animation, replacing the existing one. More...
 
MeshAnimationChannelblendToAnimationInternal (const AssetProxy &animationAsset, bool loop, Time blendLength, bool reverse=false, BlendSynchronization blendSync=SYNC_NONE, BoneRetargeting boneTranslationRetargeting=ANIMATION_BONE_SCALE_RETARGETING, bool visibleAnimation=false)
 Play a new animation, blending from the existing one (if there is one) More...
 
std::pair< MeshAnimationChannel *, MeshAnimationChannel * > blendToMaskedAnimationInternal (const AssetProxy &animationAsset1, const AssetProxy &animationAsset2, const std::vector< std::string > &boneMask, bool loop, Time blendLength, bool reverse1=false, bool reverse2=false, BlendSynchronization blendSync=SYNC_NONE, BoneRetargeting boneTranslationRetargeting1=ANIMATION_BONE_SCALE_RETARGETING, BoneRetargeting boneTranslationRetargeting2=ANIMATION_BONE_SCALE_RETARGETING, bool visibleAnimation=false)
 Play a new animation, blending from the existing one (if there is one) More...
 
- Protected Member Functions inherited from qsf::Component
 Component (Prototype *prototype)
 Constructor. More...
 
void promotePropertyChange (uint32 propertyId)
 A component property value was changed. More...
 
template<typename T , typename S >
bool assignAndPromoteChange (T &variable, const S &newValue, uint32 propertyId)
 Comfort function for updating an exported member variable and promoting any change that happened. More...
 
void setRegisterForSimulationTransformChanges (bool enable)
 Register or unregister this component as simulation transform listener. More...
 
void setRegisterForAnimationTransformChanges (bool enable)
 Register or unregister this component as animation transform listener. More...
 
virtual const ObjectgetPropertyDefaultsProvider () const override
 
virtual bool ignoreOwnerRunningState () const
 Return whether or not the component will only startup if the owner is in running state. More...
 
virtual void onComponentTransformChange (const Transform &transform, TransformChangeFlags flags)
 Called in case a component transformation value was changed. More...
 
virtual void onSetSimulating (bool simulating)
 Set whether or not the component is in simulating mode. More...
 
virtual void onSetDebug (bool debug)
 Set whether or not the component is considered to be in debug mode. More...
 
virtual void onSetHidden (bool hidden)
 Set whether or not the component is considered to be hidden. More...
 
- Protected Member Functions inherited from qsf::InheritedObject
 InheritedObject ()
 Default constructor. More...
 
- Protected Member Functions inherited from qsf::Object
 Object ()
 Default constructor. More...
 
- Protected Member Functions inherited from qsf::WeakPtrTarget
 WeakPtrTarget ()
 Default constructor. More...
 
 WeakPtrTarget (const WeakPtrTarget &other)
 Copy constructor. More...
 
 WeakPtrTarget (WeakPtrTarget &&)=delete
 Delete the move constructor, as WeakPtrTarget would need a proper move constructor-implementation that ensures that its pointer gets updated in the WeakPtrBase as well. More...
 
 ~WeakPtrTarget ()
 Destructor. More...
 
void invalidateAllWeakPtr ()
 Invalidate all weak pointers to this object. More...
 
void operator= (const WeakPtrTarget &other)
 Copy operator. More...
 
- Protected Member Functions inherited from qsf::JobProxyMovableObjectRenderingListener
virtual void onObjectRendering (const Component &component, const Ogre::Camera &ogreCamera) override
 Called when an OGRE movable object of the camera to be used for rendering. More...
 
- Protected Member Functions inherited from qsf::MovableObjectRenderingListener
virtual void registerMovableObjectRenderingListener ()
 Register movable object rendering listener. More...
 
virtual void unregisterMovableObjectRenderingListener ()
 Unregister movable object rendering listener. More...
 
virtual void onObjectDestroyed ()
 Movable object has been destroyed. More...
 

Additional Inherited Members

- Public Types inherited from qsf::MeshAnimationComponent
enum  BlendSynchronization { SYNC_NONE, SYNC_AT_START, SYNC_AT_END, SYNC_PARALLEL }
 
enum  BoneRetargeting { ANIMATION_BONE_RETARGETING, ANIMATION_BONE_SCALE_RETARGETING }
 Bone retargeting. More...
 
enum  AnimationType {
  ANIMATION_TYPE_NONE, ANIMATION_TYPE_STOP_ALL, ANIMATION_TYPE_PLAY_SINGLE, ANIMATION_TYPE_PLAY_MASK,
  ANIMATION_TYPE_BLEND_SINGLE, ANIMATION_TYPE_BLEND_MASK
}
 
typedef boost::container::flat_map< uint32, MeshAnimationChannel * > ChannelMap
 
- Public Types inherited from qsf::Component
enum  TransformChangeFlag {
  TRANSFORM_CHANGE_POSITION = 0x01, TRANSFORM_CHANGE_ROTATION = 0x02, TRANSFORM_CHANGE_SCALE = 0x04, TRANSFORM_CHANGE_TRANSFORM = 0x07,
  TRANSFORM_CHANGE_FOR_SIMULATION = 0x08, TRANSFORM_CHANGE_FOR_ANIMATION = 0x10
}
 
typedef BitFlagSet< uint8, TransformChangeFlagTransformChangeFlags
 
- Public Types inherited from qsf::Object
enum  PropertyOverrideState { PROPERTY_INVALID, PROPERTY_DEFAULT, PROPERTY_OVERRIDE, PROPERTY_REMOVED }
 
enum  SerializationMethod { SERIALIZE_FLAT, SERIALIZE_COMPLETE, SERIALIZE_DIFFERENTIAL, SERIALIZE_IGNORE_UNKNOWN }
 
enum  SerializationMode { MODE_MINIMAL, MODE_COMPATIBLE }
 
- Public Types inherited from qsf::MovableObjectRenderingListener
enum  State { SLEEPING, AWAKE }
 State of the listener. More...
 
- Static Public Member Functions inherited from qsf::MeshAnimationComponent
static void preloadSkeletonAnimationResource (GlobalAssetId globalAssetId)
 
- Protected Attributes inherited from qsf::InheritedObject
std::bitset< 128 > mPropertyOverrideFlags
 One bit for each property; if set, the property is overridden. More...
 
- Protected Attributes inherited from qsf::JobProxyMovableObjectRenderingListener
JobProxy mAnimationJobProxy
 Regular animation job proxy; for updates once a frame. More...
 
- Protected Attributes inherited from qsf::MovableObjectRenderingListener
bool mAllowRegistration
 Actually only for internal builds (additional check to find erroneous behavior), but we need to make sure end-user SDK is the same with or without ENDUSER define. More...
 

Detailed Description

Supervisor mesh animation test component class.

Constructor & Destructor Documentation

em5::SupervisorMeshAnimationComponent::SupervisorMeshAnimationComponent ( qsf::Prototype prototype)
explicit

Constructor.

Parameters
[in]prototypeThe prototype this component is in, no null pointer allowed
virtual em5::SupervisorMeshAnimationComponent::~SupervisorMeshAnimationComponent ( )
virtual

Destructor.

Member Function Documentation

virtual const qsf::NamedIdentifier& em5::SupervisorMeshAnimationComponent::getAnimationJobManagerId ( ) const
overrideprotectedvirtual

Reimplemented from qsf::MeshAnimationComponent.

Member Data Documentation

const uint32 em5::SupervisorMeshAnimationComponent::COMPONENT_ID
static

"em5::SupervisorMeshAnimationComponent" unique component ID


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