VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Attributes
makVrv::DtChannelSpecificGroup Class Reference

A group node that culls it's group members based on channels.

Inheritance diagram for makVrv::DtChannelSpecificGroup:
Inheritance graph
[legend]

Public Member Functions

 DtChannelSpecificGroup ()
 
 DtChannelSpecificGroup (const DtChannelSpecificGroup &orig, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 
 META_Node (vrvOsg, DtChannelSpecificGroup)
 
virtual ~DtChannelSpecificGroup ()
 
virtual void addChannel (DtChannel *channel)
 
virtual void removeChannel (DtChannel *channel)
 
virtual int numChannels () const
 
virtual void traverse (osg::NodeVisitor &nv)
 
virtual void addView (osg::View *viewToAdd)
 
virtual void removeView (osg::View *viewToRemove)
 
- Public Member Functions inherited from makVrv::DtFastGroup
 META_Node (vrvOsg, DtFastGroup)
 
 DtFastGroup ()
 
 DtFastGroup (const DtFastGroup &, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 
virtual bool removeChildren (unsigned int pos, unsigned int numChildrenToRemove)
 
virtual void resizeGLObjectBuffers (unsigned int maxSize)
 

Protected Types

typedef std::unordered_set
< DtChannel * > 
ChannelSet
 
typedef std::unordered_set
< const osg::View * > 
ViewSet
 

Protected Attributes

ChannelSet myChannels
 
ViewSet myFastViewLookup
 
- Protected Attributes inherited from makVrv::DtFastGroup
int myLastMaxNumberOfGraphicsContexts = -1
 

Member Typedef Documentation

typedef std::unordered_set<DtChannel*> makVrv::DtChannelSpecificGroup::ChannelSet
protected
typedef std::unordered_set<const osg::View*> makVrv::DtChannelSpecificGroup::ViewSet
protected

Constructor & Destructor Documentation

makVrv::DtChannelSpecificGroup::DtChannelSpecificGroup ( )

CTOR.

makVrv::DtChannelSpecificGroup::DtChannelSpecificGroup ( const DtChannelSpecificGroup orig,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)
virtual makVrv::DtChannelSpecificGroup::~DtChannelSpecificGroup ( )
virtual

DTOR.

Member Function Documentation

makVrv::DtChannelSpecificGroup::META_Node ( vrvOsg  ,
DtChannelSpecificGroup   
)
virtual void makVrv::DtChannelSpecificGroup::addChannel ( DtChannel channel)
virtual

Add channels that should draw the things under this group node.

virtual void makVrv::DtChannelSpecificGroup::removeChannel ( DtChannel channel)
virtual

Remove a channel causing things under this group node to be culled from this channel.

virtual int makVrv::DtChannelSpecificGroup::numChannels ( ) const
virtual

Returns the number of channels that are accepted by the node.

virtual void makVrv::DtChannelSpecificGroup::traverse ( osg::NodeVisitor &  nv)
virtual

traverses the group, checking in the case of a culler, if the channel is allowed to render these objects

virtual void makVrv::DtChannelSpecificGroup::addView ( osg::View *  viewToAdd)
virtual

Although the interface implies that these groups cull by channel, what they REALLY do is cull based on the osg::View associated with the camera associated with a channel. This method lets you add an osg::View directly to allow traversal that's not necessarily related to a channel render pass.

virtual void makVrv::DtChannelSpecificGroup::removeView ( osg::View *  viewToRemove)
virtual

Remove a previously added view.

Member Data Documentation

ChannelSet makVrv::DtChannelSpecificGroup::myChannels
protected
ViewSet makVrv::DtChannelSpecificGroup::myFastViewLookup
protected

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

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)