Open 3D Engine EMotionFX Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
EMStudio::AnimGraphModel Class Reference

Inherits QAbstractItemModel, EMotionFX::AnimGraphNotificationBus::Handler, and AZ::Data::AssetBus::Router.

Classes

struct  ItemTypeForClass
 
struct  ItemTypeForClass< EMotionFX::AnimGraphNode >
 
struct  ItemTypeForClass< EMotionFX::AnimGraphStateTransition >
 
struct  ItemTypeForClass< EMotionFX::BlendTreeConnection >
 
struct  RoleForClass
 
struct  RoleForClass< EMotionFX::AnimGraphNode >
 
struct  RoleForClass< EMotionFX::AnimGraphStateTransition >
 
struct  RoleForClass< EMotionFX::BlendTreeConnection >
 

Public Types

enum  ColumnIndex { COLUMN_NAME , COLUMN_PALETTE_NAME }
 
enum  Role {
  ROLE_MODEL_ITEM_TYPE = Qt::UserRole , ROLE_ID , ROLE_POINTER , ROLE_ANIM_GRAPH_INSTANCE ,
  ROLE_RTTI_TYPE_ID , ROLE_ANIM_GRAPH_OBJECT_PTR , ROLE_NODE_POINTER , ROLE_NODE_CAN_ACT_AS_STATE ,
  ROLE_NODE_ENTRY_STATE , ROLE_TRANSITION_POINTER , ROLE_TRANSITION_CONDITIONS , ROLE_TRIGGER_ACTIONS ,
  ROLE_CONNECTION_POINTER
}
 
enum class  ModelItemType { NODE , TRANSITION , CONNECTION }
 

Signals

void FocusChanged (const QModelIndex &newFocusIndex, const QModelIndex &newFocusParent, const QModelIndex &oldFocusIndex, const QModelIndex &oldFocusParent)
 
void ParametersChanged (EMotionFX::AnimGraph *animGraph)
 

Public Member Functions

QModelIndex index (int row, int column, const QModelIndex &parent=QModelIndex()) const override
 
QModelIndex parent (const QModelIndex &child) const override
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
QVariant headerData (int section, Qt::Orientation orientation, int role) const override
 
QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const override
 
void Focus (const QModelIndex &focusIndex=QModelIndex(), bool forceEmitFocusChangeEvent=false)
 
QModelIndexList FindModelIndexes (EMotionFX::AnimGraphObject *animGraphObject)
 
QModelIndexList FindModelIndexes (EMotionFX::BlendTreeConnection *blendTreeConnection)
 
QModelIndex FindModelIndex (EMotionFX::AnimGraphObject *animGraphObject, EMotionFX::AnimGraphInstance *graphInstance)
 
QModelIndex FindFirstModelIndex (EMotionFX::AnimGraphObject *animGraphObject)
 
QItemSelectionModel & GetSelectionModel ()
 
template<class AnimGraphObjectType >
AZStd::unordered_map< EMotionFX::AnimGraph *, AZStd::vector< AnimGraphObjectType * > > GetSelectedObjectsOfType () const
 
QModelIndex GetFocus () const
 
QModelIndex GetParentFocus () const
 
EMotionFX::AnimGraphGetFocusedAnimGraph () const
 
EMotionFX::AnimGraphFindRootAnimGraph (const QModelIndex &modelIndex) const
 
bool CheckAnySelectedNodeBelongsToReferenceGraph () const
 
void SetAnimGraphInstance (EMotionFX::AnimGraph *currentAnimGraph, EMotionFX::AnimGraphInstance *currentAnimGraphInstance, EMotionFX::AnimGraphInstance *newAnimGraphInstance)
 

Static Public Member Functions

static void AddToItemSelection (QItemSelection &selection, const QModelIndex &modelIndex, bool wasPreviouslySelected, bool isNewlySelected, bool toggleMode, bool clearSelection)
 
static QString GetTransitionName (const EMotionFX::AnimGraphStateTransition *transition)
 

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