Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osg::ProxyGroupBase Class Reference

ProxyGroup Base Class.

#include <OSGProxyGroupBase.h>

Inheritance diagram for osg::ProxyGroupBase:

osg::Group osg::GroupBase osg::NodeCore osg::AttachmentContainer osg::FieldContainer osg::ProxyGroup List of all members.

Public Types

typedef ProxyGroupPtr Ptr
enum  {
  EnabledFieldId = Inherited::NextFieldId, UrlFieldId = EnabledFieldId + 1, RootFieldId = UrlFieldId + 1, StateFieldId = RootFieldId + 1,
  ConcurrentLoadFieldId = StateFieldId + 1, VolumeFieldId = ConcurrentLoadFieldId + 1, IndicesFieldId = VolumeFieldId + 1, TrianglesFieldId = IndicesFieldId + 1,
  PositionsFieldId = TrianglesFieldId + 1, GeometriesFieldId = PositionsFieldId + 1, AbsoluteUrlFieldId = GeometriesFieldId + 1, InlineFieldId = AbsoluteUrlFieldId + 1,
  NextFieldId = InlineFieldId + 1
}

Public Member Functions

Handle Attachments
*void addAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
void subAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
AttachmentPtr findAttachment (UInt32 groupId, UInt16 binding=0)
AttachmentPtr findAttachment (const FieldContainerType &type, UInt16 binding=0)
Field Access *SFAttachmentMapgetSFAttachments (void)
Parents
*MFNodePtrgetParents (void)
const MFNodePtrgetParents (void) const
MFNodePtrgetMFParents (void)
Volume
*virtual void invalidateVolume (void)
Handle Attachments
*void addAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
void subAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
AttachmentPtr findAttachment (UInt32 groupId, UInt16 binding=0)
AttachmentPtr findAttachment (const FieldContainerType &type, UInt16 binding=0)
Field Access *SFAttachmentMapgetSFAttachments (void)
FieldContainer Get
*virtual FieldContainerTypegetType (void)
virtual const FieldContainerTypegetType (void) const
virtual UInt32 getContainerSize (void) const
Field Get
*SFBoolgetSFEnabled (void)
 Get the ProxyGroup::_sfEnabled field.
SFStringgetSFUrl (void)
 Get the ProxyGroup::_sfUrl field.
SFNodePtrgetSFRoot (void)
 Get the ProxyGroup::_sfRoot field.
SFUInt32getSFState (void)
 Get the ProxyGroup::_sfState field.
SFBoolgetSFConcurrentLoad (void)
 Get the ProxyGroup::_sfConcurrentLoad field.
SFDynamicVolumegetSFVolume (void)
 Get the ProxyGroup::_sfVolume field.
SFUInt32getSFIndices (void)
 Get the ProxyGroup::_sfIndices field.
SFUInt32getSFTriangles (void)
 Get the ProxyGroup::_sfTriangles field.
SFUInt32getSFPositions (void)
 Get the ProxyGroup::_sfPositions field.
SFUInt32getSFGeometries (void)
 Get the ProxyGroup::_sfGeometries field.
MFUInt8getMFInline (void)
 Get the ProxyGroup::_mfInline field.
bool & getEnabled (void)
 Get the value of the ProxyGroup::_sfEnabled field.
const bool & getEnabled (void) const
 Get the value of the ProxyGroup::_sfEnabled field.
std::string & getUrl (void)
 Get the value of the ProxyGroup::_sfUrl field.
const std::string & getUrl (void) const
 Get the value of the ProxyGroup::_sfUrl field.
NodePtrgetRoot (void)
 Get the value of the ProxyGroup::_sfRoot field.
const NodePtrgetRoot (void) const
 Get the value of the ProxyGroup::_sfRoot field.
UInt32getState (void)
 Get the value of the ProxyGroup::_sfState field.
const UInt32getState (void) const
 Get the value of the ProxyGroup::_sfState field.
bool & getConcurrentLoad (void)
 Get the value of the ProxyGroup::_sfConcurrentLoad field.
const bool & getConcurrentLoad (void) const
 Get the value of the ProxyGroup::_sfConcurrentLoad field.
DynamicVolumegetVolume (void)
 Get the value of the ProxyGroup::_sfVolume field.
const DynamicVolumegetVolume (void) const
 Get the value of the ProxyGroup::_sfVolume field.
UInt32getIndices (void)
 Get the value of the ProxyGroup::_sfIndices field.
const UInt32getIndices (void) const
 Get the value of the ProxyGroup::_sfIndices field.
UInt32getTriangles (void)
 Get the value of the ProxyGroup::_sfTriangles field.
const UInt32getTriangles (void) const
 Get the value of the ProxyGroup::_sfTriangles field.
UInt32getPositions (void)
 Get the value of the ProxyGroup::_sfPositions field.
const UInt32getPositions (void) const
 Get the value of the ProxyGroup::_sfPositions field.
UInt32getGeometries (void)
 Get the value of the ProxyGroup::_sfGeometries field.
const UInt32getGeometries (void) const
 Get the value of the ProxyGroup::_sfGeometries field.
UInt8getInline (const UInt32 index)
 Get the value of the index element the ProxyGroup::_mfInline field.
MFUInt8getInline (void)
 Get the ProxyGroup::_mfInline field.
const MFUInt8getInline (void) const
 Get the ProxyGroup::_mfInline field.
Field Set
*void setEnabled (const bool &value)
 Set the value of the ProxyGroup::_sfEnabled field.
void setUrl (const std::string &value)
 Set the value of the ProxyGroup::_sfUrl field.
void setRoot (const NodePtr &value)
 Set the value of the ProxyGroup::_sfRoot field.
void setState (const UInt32 &value)
 Set the value of the ProxyGroup::_sfState field.
void setConcurrentLoad (const bool &value)
 Set the value of the ProxyGroup::_sfConcurrentLoad field.
void setVolume (const DynamicVolume &value)
 Set the value of the ProxyGroup::_sfVolume field.
void setIndices (const UInt32 &value)
 Set the value of the ProxyGroup::_sfIndices field.
void setTriangles (const UInt32 &value)
 Set the value of the ProxyGroup::_sfTriangles field.
void setPositions (const UInt32 &value)
 Set the value of the ProxyGroup::_sfPositions field.
void setGeometries (const UInt32 &value)
 Set the value of the ProxyGroup::_sfGeometries field.
Binary Access
*virtual UInt32 getBinSize (const BitVector &whichField)
virtual void copyToBin (BinaryDataHandler &pMem, const BitVector &whichField)
virtual void copyFromBin (BinaryDataHandler &pMem, const BitVector &whichField)
Copy
*virtual FieldContainerPtr shallowCopy (void) const
Sync
*virtual void changed (BitVector whichField, UInt32 origin)
Dump
*virtual void dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const
Parents
*MFNodePtrgetParents (void)
const MFNodePtrgetParents (void) const
MFNodePtrgetMFParents (void)
Volume
*virtual void invalidateVolume (void)
Handle Attachments
*void addAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
void subAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0)
AttachmentPtr findAttachment (UInt32 groupId, UInt16 binding=0)
AttachmentPtr findAttachment (const FieldContainerType &type, UInt16 binding=0)
Field Access *SFAttachmentMapgetSFAttachments (void)

Static Public Member Functions

Class Get
*static FieldContainerTypegetClassType (void)
 access the type of the class
static UInt32 getClassTypeId (void)
 access the numerical type of the class
Construction
*static ProxyGroupPtr create (void)
 create a new instance of the class
static ProxyGroupPtr createEmpty (void)
 create an empty new instance of the class, do not copy the prototype

Static Public Attributes

static const osg::BitVector EnabledFieldMask
static const osg::BitVector UrlFieldMask
static const osg::BitVector RootFieldMask
static const osg::BitVector StateFieldMask
static const osg::BitVector ConcurrentLoadFieldMask
static const osg::BitVector VolumeFieldMask
static const osg::BitVector IndicesFieldMask
static const osg::BitVector TrianglesFieldMask
static const osg::BitVector PositionsFieldMask
static const osg::BitVector GeometriesFieldMask
static const osg::BitVector AbsoluteUrlFieldMask
static const osg::BitVector InlineFieldMask
static const osg::BitVector MTInfluenceMask
static const BitVector ParentsFieldMask = (1 << NodeCore::ParentsFieldId )
static const BitVector AttachmentsFieldMask
static const BitVector NextFieldMask
CoredNodePtr helper
*static const bool isNodeCore = true
CoredNodePtr helper
*static const bool isNodeCore = true

Protected Member Functions

Sync
void executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField)
Pointer
*AttachmentContainerPtr getPtr (void)
Sync
void executeSyncImpl (NodeCore *pOther, const BitVector &whichField)
Sync
void executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField)
MT Destruction
*virtual void onDestroy (void)
Set / Get Parents
*void addParent (const NodePtr &parent)
void subParent (const NodePtr &parent)
Pointer
*NodeCorePtr getPtr (void) const
Pointer
*AttachmentContainerPtr getPtr (void)
Transformation
*virtual void accumulateMatrix (Matrix &result)
Volume
*virtual void adjustVolume (Volume &volume)
Constructors
ProxyGroupBase (void)
 ProxyGroupBase (const ProxyGroupBase &source)
Destructors
*virtual ~ProxyGroupBase (void)
Field Get
*SFStringgetSFAbsoluteUrl (void)
 Get the ProxyGroup::_sfAbsoluteUrl field.
std::string & getAbsoluteUrl (void)
 Get the value of the ProxyGroup::_sfAbsoluteUrl field.
const std::string & getAbsoluteUrl (void) const
 Get the value of the ProxyGroup::_sfAbsoluteUrl field.
Field Set
*void setAbsoluteUrl (const std::string &value)
 Set the value of the ProxyGroup::_sfAbsoluteUrl field.
Sync
*void executeSyncImpl (ProxyGroupBase *pOther, const BitVector &whichField)
virtual void executeSync (FieldContainer &other, const BitVector &whichField)
Action Callbacks
*Action::ResultE drawEnter (Action *action)
Action::ResultE drawLeave (Action *action)
Action::ResultE renderEnter (Action *action)
Action::ResultE renderLeave (Action *action)
Action::ResultE intersect (Action *action)
Sync
*void executeSyncImpl (GroupBase *pOther, const BitVector &whichField)
Sync
void executeSyncImpl (NodeCore *pOther, const BitVector &whichField)
Sync
void executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField)
MT Destruction
*virtual void onDestroy (void)
Set / Get Parents
*void addParent (const NodePtr &parent)
void subParent (const NodePtr &parent)
Pointer
*NodeCorePtr getPtr (void) const
Pointer
*AttachmentContainerPtr getPtr (void)
Transformation
*virtual void accumulateMatrix (Matrix &result)
Volume
*virtual void adjustVolume (Volume &volume)

Protected Attributes

Fields
*SFAttachmentMap _attachmentMap
Fields
*MFNodePtr _parents
Fields
*SFAttachmentMap _attachmentMap
Fields
*SFBool _sfEnabled
SFString _sfUrl
SFNodePtr _sfRoot
SFUInt32 _sfState
SFBool _sfConcurrentLoad
SFDynamicVolume _sfVolume
SFUInt32 _sfIndices
SFUInt32 _sfTriangles
SFUInt32 _sfPositions
SFUInt32 _sfGeometries
SFString _sfAbsoluteUrl
MFUInt8 _mfInline
Fields
*MFNodePtr _parents
Fields
*SFAttachmentMap _attachmentMap

Private Types

typedef Group Inherited

Private Member Functions

void operator= (const ProxyGroupBase &source)

Static Private Attributes

static FieldDescription_desc []
 ProxyGroup description.
static FieldContainerType _type

Friends

class FieldContainer

Detailed Description

Definition at line 92 of file OSGProxyGroupBase.h.


Member Typedef Documentation

typedef Group osg::ProxyGroupBase::Inherited [private]
 

Reimplemented from osg::Group.

Reimplemented in osg::ProxyGroup.

Definition at line 96 of file OSGProxyGroupBase.h.

typedef ProxyGroupPtr osg::ProxyGroupBase::Ptr
 

Reimplemented from osg::GroupBase.

Definition at line 101 of file OSGProxyGroupBase.h.


Member Enumeration Documentation

anonymous enum
 

Enumerator:
EnabledFieldId 
UrlFieldId 
RootFieldId 
StateFieldId 
ConcurrentLoadFieldId 
VolumeFieldId 
IndicesFieldId 
TrianglesFieldId 
PositionsFieldId 
GeometriesFieldId 
AbsoluteUrlFieldId 
InlineFieldId 
NextFieldId 

Reimplemented from osg::NodeCore.

Definition at line 103 of file OSGProxyGroupBase.h.

00104     {
00105         EnabledFieldId        = Inherited::NextFieldId,
00106         UrlFieldId            = EnabledFieldId        + 1,
00107         RootFieldId           = UrlFieldId            + 1,
00108         StateFieldId          = RootFieldId           + 1,
00109         ConcurrentLoadFieldId = StateFieldId          + 1,
00110         VolumeFieldId         = ConcurrentLoadFieldId + 1,
00111         IndicesFieldId        = VolumeFieldId         + 1,
00112         TrianglesFieldId      = IndicesFieldId        + 1,
00113         PositionsFieldId      = TrianglesFieldId      + 1,
00114         GeometriesFieldId     = PositionsFieldId      + 1,
00115         AbsoluteUrlFieldId    = GeometriesFieldId     + 1,
00116         InlineFieldId         = AbsoluteUrlFieldId    + 1,
00117         NextFieldId           = InlineFieldId         + 1
00118     };


Constructor & Destructor Documentation

ProxyGroupBase::ProxyGroupBase void   )  [protected]
 

Definition at line 286 of file OSGProxyGroupBase.cpp.

00286                                    :
00287     _sfEnabled                (bool(true)), 
00288     _sfUrl                    (), 
00289     _sfRoot                   (NodePtr(NullFC)), 
00290     _sfState                  (UInt32(0)), 
00291     _sfConcurrentLoad         (bool(true)), 
00292     _sfVolume                 (), 
00293     _sfIndices                (UInt32(0)), 
00294     _sfTriangles              (UInt32(0)), 
00295     _sfPositions              (), 
00296     _sfGeometries             (), 
00297     _sfAbsoluteUrl            (), 
00298     _mfInline                 (), 
00299     Inherited() 
00300 {
00301 }

ProxyGroupBase::ProxyGroupBase const ProxyGroupBase source  )  [protected]
 

Definition at line 307 of file OSGProxyGroupBase.cpp.

00307                                                            :
00308     _sfEnabled                (source._sfEnabled                ), 
00309     _sfUrl                    (source._sfUrl                    ), 
00310     _sfRoot                   (source._sfRoot                   ), 
00311     _sfState                  (source._sfState                  ), 
00312     _sfConcurrentLoad         (source._sfConcurrentLoad         ), 
00313     _sfVolume                 (source._sfVolume                 ), 
00314     _sfIndices                (source._sfIndices                ), 
00315     _sfTriangles              (source._sfTriangles              ), 
00316     _sfPositions              (source._sfPositions              ), 
00317     _sfGeometries             (source._sfGeometries             ), 
00318     _sfAbsoluteUrl            (source._sfAbsoluteUrl            ), 
00319     _mfInline                 (source._mfInline                 ), 
00320     Inherited                 (source)
00321 {
00322 }

ProxyGroupBase::~ProxyGroupBase void   )  [protected, virtual]
 

Definition at line 326 of file OSGProxyGroupBase.cpp.

00327 {
00328 }


Member Function Documentation

osg::FieldContainerType & osg::ProxyGroupBase::getClassType void   )  [inline, static]
 

Reimplemented from osg::GroupBase.

Definition at line 58 of file OSGProxyGroupBase.inl.

References _type.

Referenced by create(), and osg::ProxyGroup::initMethod().

00059 {
00060     return _type; 
00061 } 

osg::UInt32 osg::ProxyGroupBase::getClassTypeId void   )  [inline, static]
 

Reimplemented from osg::GroupBase.

Definition at line 65 of file OSGProxyGroupBase.inl.

References _type, and osg::TypeBase::getId().

00066 {
00067     return _type.getId(); 
00068 } 

FieldContainerType & ProxyGroupBase::getType void   )  [virtual]
 

Reimplemented from osg::GroupBase.

Definition at line 227 of file OSGProxyGroupBase.cpp.

References _type.

00228 {
00229     return _type; 
00230 } 

const FieldContainerType & ProxyGroupBase::getType void   )  const [virtual]
 

Reimplemented from osg::GroupBase.

Definition at line 232 of file OSGProxyGroupBase.cpp.

References _type.

00233 {
00234     return _type;
00235 } 

UInt32 ProxyGroupBase::getContainerSize void   )  const [virtual]
 

Reimplemented from osg::GroupBase.

Definition at line 247 of file OSGProxyGroupBase.cpp.

00248 { 
00249     return sizeof(ProxyGroup); 
00250 }

SFBool * osg::ProxyGroupBase::getSFEnabled void   )  [inline]
 

Definition at line 101 of file OSGProxyGroupBase.inl.

References _sfEnabled.

00102 {
00103     return &_sfEnabled;
00104 }

SFString * osg::ProxyGroupBase::getSFUrl void   )  [inline]
 

Definition at line 108 of file OSGProxyGroupBase.inl.

References _sfUrl.

00109 {
00110     return &_sfUrl;
00111 }

SFNodePtr * osg::ProxyGroupBase::getSFRoot void   )  [inline]
 

Definition at line 115 of file OSGProxyGroupBase.inl.

References _sfRoot.

00116 {
00117     return &_sfRoot;
00118 }

SFUInt32 * osg::ProxyGroupBase::getSFState void   )  [inline]
 

Definition at line 122 of file OSGProxyGroupBase.inl.

References _sfState.

00123 {
00124     return &_sfState;
00125 }

SFBool * osg::ProxyGroupBase::getSFConcurrentLoad void   )  [inline]
 

Definition at line 129 of file OSGProxyGroupBase.inl.

References _sfConcurrentLoad.

00130 {
00131     return &_sfConcurrentLoad;
00132 }

SFDynamicVolume * osg::ProxyGroupBase::getSFVolume void   )  [inline]
 

Definition at line 136 of file OSGProxyGroupBase.inl.

References _sfVolume.

00137 {
00138     return &_sfVolume;
00139 }

SFUInt32 * osg::ProxyGroupBase::getSFIndices void   )  [inline]
 

Definition at line 143 of file OSGProxyGroupBase.inl.

References _sfIndices.

00144 {
00145     return &_sfIndices;
00146 }

SFUInt32 * osg::ProxyGroupBase::getSFTriangles void   )  [inline]
 

Definition at line 150 of file OSGProxyGroupBase.inl.

References _sfTriangles.

00151 {
00152     return &_sfTriangles;
00153 }

SFUInt32 * osg::ProxyGroupBase::getSFPositions void   )  [inline]
 

Definition at line 157 of file OSGProxyGroupBase.inl.

References _sfPositions.

00158 {
00159     return &_sfPositions;
00160 }

SFUInt32 * osg::ProxyGroupBase::getSFGeometries void   )  [inline]
 

Definition at line 164 of file OSGProxyGroupBase.inl.

References _sfGeometries.

00165 {
00166     return &_sfGeometries;
00167 }

MFUInt8 * osg::ProxyGroupBase::getMFInline void   )  [inline]
 

Definition at line 178 of file OSGProxyGroupBase.inl.

References _mfInline.

00179 {
00180     return &_mfInline;
00181 }

bool & osg::ProxyGroupBase::getEnabled void   )  [inline]
 

Definition at line 186 of file OSGProxyGroupBase.inl.

References _sfEnabled, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

Referenced by osg::ProxyGroup::adjustVolume(), and osg::ProxyGroup::draw().

00187 {
00188     return _sfEnabled.getValue();
00189 }

const bool & osg::ProxyGroupBase::getEnabled void   )  const [inline]
 

Definition at line 193 of file OSGProxyGroupBase.inl.

References _sfEnabled, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

00194 {
00195     return _sfEnabled.getValue();
00196 }

std::string & osg::ProxyGroupBase::getUrl void   )  [inline]
 

Definition at line 207 of file OSGProxyGroupBase.inl.

References _sfUrl, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

Referenced by osg::ProxyGroup::changed().

00208 {
00209     return _sfUrl.getValue();
00210 }

const std::string & osg::ProxyGroupBase::getUrl void   )  const [inline]
 

Definition at line 214 of file OSGProxyGroupBase.inl.

References _sfUrl, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

00215 {
00216     return _sfUrl.getValue();
00217 }

NodePtr & osg::ProxyGroupBase::getRoot void   )  [inline]
 

Definition at line 228 of file OSGProxyGroupBase.inl.

References _sfRoot, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

Referenced by osg::ProxyGroup::adjustVolume(), osg::ProxyGroup::draw(), and osg::ProxyGroup::~ProxyGroup().

00229 {
00230     return _sfRoot.getValue();
00231 }

const NodePtr & osg::ProxyGroupBase::getRoot void   )  const [inline]
 

Definition at line 235 of file OSGProxyGroupBase.inl.

References _sfRoot, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

00236 {
00237     return _sfRoot.getValue();
00238 }

UInt32 & osg::ProxyGroupBase::getState void   )  [inline]
 

Definition at line 249 of file OSGProxyGroupBase.inl.

References _sfState, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().

Referenced by osg::ProxyGroup::adjustVolume(), and osg::ProxyGroup::draw().

00250 {
00251     return _sfState.getValue();
00252 }

const UInt32 & osg::ProxyGroupBase::getState void   )  const [inline]
 

Definition at line 256 of file OSGProxyGroupBase.inl.

References