public

Inheritance Graph

graph BT
	GroupState
	GroupState --> State
	click GroupState "classMinSG_1_1GroupState"
	click State "classMinSG_1_1State"

Description

[ GroupState ] > [ State ] A GroupState can contain multiple other States. The States attached to a Node ‘s GroupState behave like as if they were directly attached to the Node .

Note: GroupStates support to be enabled in a nested way (e.g. on an inner Node and on a leaf Node on the same subtree), though this behvior is strongly not encouraged, as the contained States are not guaranteed to work in a nested way.

Note: the interface is intentionally designed as close as possible to the state related functions of Node . If the corresponding interface of Node is altered, these changes should also be performed to GroupState .

Public Types

   
   
typedef std::vector< Util::Reference < State > > stateArray_t

Public Functions

     
     
  GroupState()  
     
  ~GroupState()  
     
void addState( State * s)  
     
GroupState * clone() const
> [ State ]
     
const stateArray_t & getStates() const  
     
bool hasStates() const  
     
bool isEnabled() const  
     
void removeState( State * s)  
     
void removeStates()  

Documentation

typedef
MinSG::GroupState::stateArray_t

public
 
 
typedef std::vector< Util::Reference < State > > stateArray_t

Defined in MinSG/Core/States/GroupState.h:35


function
MinSG::GroupState::GroupState

public inline
   
   
GroupState( )

Defined in MinSG/Core/States/GroupState.h:37


function
MinSG::GroupState::~GroupState

public virtual
   
   
~GroupState( )

Defined in MinSG/Core/States/GroupState.h:38


function
MinSG::GroupState::addState

public
     
     
void addState( State * s )

Defined in MinSG/Core/States/GroupState.h:40


function
MinSG::GroupState::clone

public const inline virtual
   
   
GroupState * clone( ) const
> [ State ]

Defined in MinSG/Core/States/GroupState.h:42


function
MinSG::GroupState::getStates

public const inline
   
   
const stateArray_t & getStates( ) const

Defined in MinSG/Core/States/GroupState.h:43


function
MinSG::GroupState::hasStates

public const inline
   
   
bool hasStates( ) const

Defined in MinSG/Core/States/GroupState.h:44


function
MinSG::GroupState::isEnabled

public const inline
   
   
bool isEnabled( ) const

Defined in MinSG/Core/States/GroupState.h:45


function
MinSG::GroupState::removeState

public
     
     
void removeState( State * s )

Defined in MinSG/Core/States/GroupState.h:46


function
MinSG::GroupState::removeStates

public
   
   
void removeStates( )

Defined in MinSG/Core/States/GroupState.h:47