OpenWalnut  1.5.0dev
Public Types | Public Member Functions | Protected Member Functions | List of all members
WGEManagedGroupNode Class Reference

This class adds some convenience methods to WGEGroupNode. More...

#include <WGEManagedGroupNode.h>

+ Inheritance diagram for WGEManagedGroupNode:
+ Collaboration diagram for WGEManagedGroupNode:

Public Types

typedef osg::ref_ptr< WGEManagedGroupNodeSPtr
 Shared pointer. More...
 
typedef osg::ref_ptr< const WGEManagedGroupNodeConstSPtr
 Const shared pointer. More...
 
- Public Types inherited from WGEGroupNode
typedef WPredicateHelper::ArbitraryPredicateBase< osg::ref_ptr< osg::Node > const > NodePredicate
 The base type of predicate. More...
 

Public Member Functions

 WGEManagedGroupNode (std::shared_ptr< WBoolFlag > active)
 Default constructor. More...
 
- Public Member Functions inherited from WGEGroupNode
 WGEGroupNode ()
 Default constructor. More...
 
void insert (osg::ref_ptr< osg::Node > node)
 Adds the specified node to the child list of this node in a safe manner. More...
 
void remove (osg::ref_ptr< osg::Node > node)
 Removes the specified node from this group in a thread safe manner. More...
 
void remove_if (std::shared_ptr< WGEGroupNode::NodePredicate > predicate)
 Removes a node if the specified predicate evaluates to true. More...
 
void clear ()
 Removes all children from this node. More...
 

Protected Member Functions

virtual ~WGEManagedGroupNode ()
 Destructor. More...
 
- Protected Member Functions inherited from WGEGroupNode
virtual ~WGEGroupNode ()
 Destructor. More...
 

Additional Inherited Members

- Protected Types inherited from WGEGroupNode
enum  ChildOperationType { INSERT = 0 , REMOVE , REMOVE_IF , CLEAR }
 The type of operation to perform. More...
 
- Protected Attributes inherited from WGEGroupNode
osg::ref_ptr< SafeUpdaterCallbackm_nodeUpdater
 Node callback used to update this root node. More...
 
std::queue< std::shared_ptr< ChildOperation > > m_childOperationQueue
 Queue of childs that need to be added/removed during the next update cycle. More...
 
std::shared_mutex m_childOperationQueueLock
 Lock used for inserting and removing childs into the child insertion/removal queue. More...
 
bool m_childOperationQueueDirty
 Flag denoting whether the m_childOperationQueue should be considered during the next update of the node. More...
 
bool m_removeAll
 True whenever all child nodes should be removed. More...
 

Detailed Description

This class adds some convenience methods to WGEGroupNode.

It can handle bool properties which switch the node on and off.

Definition at line 40 of file WGEManagedGroupNode.h.

Member Typedef Documentation

◆ ConstSPtr

typedef osg::ref_ptr< const WGEManagedGroupNode > WGEManagedGroupNode::ConstSPtr

Const shared pointer.

Definition at line 51 of file WGEManagedGroupNode.h.

◆ SPtr

Shared pointer.

Definition at line 46 of file WGEManagedGroupNode.h.

Constructor & Destructor Documentation

◆ WGEManagedGroupNode()

WGEManagedGroupNode::WGEManagedGroupNode ( std::shared_ptr< WBoolFlag active)
explicit

Default constructor.

Parameters
activethe flag denoting the node to be activated ( if flag == true ) or turned off.

Definition at line 30 of file WGEManagedGroupNode.cpp.

◆ ~WGEManagedGroupNode()

WGEManagedGroupNode::~WGEManagedGroupNode ( )
protectedvirtual

Destructor.

Definition at line 41 of file WGEManagedGroupNode.cpp.


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