Anim 0.1
Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
AnimationSystem::Mesh::BlendTree::NodeBase Class Referenceabstract

Base class for nodes in the blend tree. More...

#include <NodeBase.h>

Inheritance diagram for AnimationSystem::Mesh::BlendTree::NodeBase:
Collaboration diagram for AnimationSystem::Mesh::BlendTree::NodeBase:

Classes

struct  DataBlockBase
 Base class for data blocks, allowing nodes to hold state that can be safely accessed from outside the tree. More...
 

Public Member Functions

 NodeBase (NodeBase const &other)=delete
 
NodeBaseoperator= (NodeBase const &other)=delete
 
template<typename T >
ValueResult< std::reference_wrapper< T > > ModifyData () const
 Gets the DataBlock of this node allowing the data to be queried / modified. More...
 

Public Attributes

std::string const Name
 

Protected Member Functions

template<typename T >
T & GetData () const
 Gets the DataBlock of this node.
 
PureResult RegisterSelf ()
 
 NodeBase (string name, NodeBase const *parent, AnimationBlendTree &blendTree, unique_ptr< DataBlockBase > dataBlock)
 

Static Protected Member Functions

static AnimatedMesh const & GetMeshObject (AnimationBlendTree const &blendTree)
 

Protected Attributes

NodeBase const *const parent_ {}
 
AnimationBlendTreeblend_tree_
 
AnimatedMesh const & mesh_object_ref_
 

Friends

class RegularNode
 

Detailed Description

Base class for nodes in the blend tree.

Member Function Documentation

◆ ModifyData()

template<typename T >
ValueResult< std::reference_wrapper< T > > AnimationSystem::Mesh::BlendTree::NodeBase::ModifyData ( ) const
inline

Gets the DataBlock of this node allowing the data to be queried / modified.

Template Parameters
TThe type of the DataBlock. Note this must inherit from DataBlockBase

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