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

osg::Attachment Class Reference
[Field Container]

#include <OSGAttachmentImpl.h>

Inheritance diagram for osg::Attachment:

osg::FieldContainer osg::DVRClipObjectsBase osg::DVRIsoSurfaceBase osg::DVRLookupTableBase osg::DVRVolumeTextureBase osg::SimpleAttachment< AttachmentDescT > osg::SimpleAttachment< NameAttachmentDesc > osg::SimpleAttachment< VoidPAttachmentDesc > osg::StateChunkBase List of all members.

General Fieldcontainer Declaration

*virtual osg::FieldContainerTypegetType (void)
virtual const osg::FieldContainerTypegetType (void) const
virtual osg::FieldContainerPtr shallowCopy (void) const
virtual osg::UInt32 getContainerSize (void) const
static osg::FieldContainerTypegetClassType (void)
static osg::UInt32 getClassTypeId (void)
static AttachmentPtr create (void)
static AttachmentPtr createEmpty (void)

Public Types

enum  { ParentsFieldId = Inherited::NextFieldId, InternalFieldId = ParentsFieldId + 1, NextFieldId = InternalFieldId + 1 }

Public Member Functions

Parents
*MFFieldContainerPtrgetParents (void)
const MFFieldContainerPtrgetParents (void) const
MFFieldContainerPtrgetMFParents (void)
void addParent (FieldContainerPtr parent)
void subParent (FieldContainerPtr parent)
Int32 findParent (FieldContainerPtr parent)
Parents
*SFBoolgetInternal (void)
const SFBoolgetInternal (void) const
SFBoolgetSFInternal (void)
void setInternal (bool bVal)
Binary Access
*virtual UInt32 getBinSize (const BitVector &whichField)
virtual void copyToBin (BinaryDataHandler &pMem, const BitVector &whichField)
virtual void copyFromBin (BinaryDataHandler &pMem, const BitVector &whichField)
Dump
*virtual void dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const
Get Instance Type Information
UInt32 getTypeId (void) const
UInt16 getGroupId (void) const
const Char8getTypeName (void) const
Generic Field Access *FieldgetField (UInt32 fieldId)
FieldgetField (const Char8 *fieldName)
Changed
*virtual void changed (BitVector whichField, UInt32 origin)

Static Public Member Functions

Get Class Type Information
static UInt16 getClassGroupId (void)

Static Public Attributes

static const BitVector InternalFieldMask = (1 << Attachment::InternalFieldId)
static const BitVector ParentsFieldMask = (1 << Attachment::ParentsFieldId)
static const BitVector NextFieldMask
static const BitVector MTInfluenceMask = 0x00
CoredNodePtr helper
static const bool isNodeCore = false

Protected Types

typedef FieldContainer Inherited

Protected Member Functions

Constructors
Attachment (void)
 Attachment (const Attachment &obj)
Destructor
*virtual ~Attachment (void)
MT Destruction
*virtual void onDestroy (void)
Sync
*virtual void executeSync (FieldContainer &other, const BitVector &whichField)
void executeSyncImpl (Attachment *pOther, const BitVector &whichField)
MT Edit
template<class FieldTypeT>
*void beginEditX (const BitVector &whichField, FieldTypeT &field)
template<class FieldTypeT>
void endEditX (const BitVector &whichField, FieldTypeT &field)
MT Construction
*void onCreate (const FieldContainer *source=NULL)
void onCreateAspect (const FieldContainer *aspect0, const FieldContainer *source=NULL)
Sync
void executeSyncImpl (FieldContainer *pOther, const BitVector &whichField)

Static Protected Member Functions

Create Fieldcontainer
template<class ObjectPtrT>
*static void newPtr (ObjectPtrT &result, const typename ObjectPtrT::StoredObjectType *prototypeP)
template<class ObjectPtrT>
static void newPtr (ObjectPtrT &result)

Protected Attributes

Fields
*SFBool _sfInternal
MFFieldContainerPtr _parents
Member
*UInt32 _shares

Static Protected Attributes

Type information
*static FieldDescription_desc []
static FieldContainerType _type

Private Member Functions

void operator= (const Attachment &source)
 prohibit default functions (move to 'public' if needed)

Friends

class FieldContainer

Detailed Description

Attachment is the base class for sharable thread safe data stores, which could be attached to other fieldcontainers than Attachments.

Definition at line 74 of file OSGAttachmentImpl.h.


Member Typedef Documentation

typedef FieldContainer osg::Attachment::Inherited [protected]
 

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjects, osg::DVRClipObjectsBase, osg::DVRIsoSurface, osg::DVRIsoSurfaceBase, osg::DVRLookupTable, osg::DVRLookupTableBase, osg::DVRVolumeTexture, osg::DVRVolumeTextureBase, osg::FatBorderChunk, osg::FatBorderChunkBase, osg::BlendChunk, osg::BlendChunkBase, osg::ClipPlaneChunk, osg::ClipPlaneChunkBase, osg::ColorMaskChunk, osg::ColorMaskChunkBase, osg::CubeTextureChunk, osg::CubeTextureChunkBase, osg::DepthChunk, osg::DepthChunkBase, osg::FragmentProgramChunk, osg::FragmentProgramChunkBase, osg::LightChunk, osg::LightChunkBase, osg::LineChunk, osg::LineChunkBase, osg::MaterialChunk, osg::MaterialChunkBase, osg::PointChunk, osg::PointChunkBase, osg::PolygonChunk, osg::PolygonChunkBase, osg::ProgramChunk, osg::ProgramChunkBase, osg::RegisterCombinersChunk, osg::RegisterCombinersChunkBase, osg::StateChunk, osg::StateChunkBase, osg::StencilChunk, osg::StencilChunkBase, osg::TexGenChunk, osg::TexGenChunkBase, osg::TextureChunk, osg::TextureChunkBase, osg::TextureTransformChunk, osg::TextureTransformChunkBase, osg::TransformChunk, osg::TransformChunkBase, osg::TwoSidedLightingChunk, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunk, osg::VertexProgramChunkBase, osg::ShaderChunk, osg::ShaderChunkBase, osg::ShaderParameterChunk, osg::ShaderParameterChunkBase, osg::SHLChunk, osg::SHLChunkBase, osg::SHLParameterChunk, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 80 of file OSGAttachmentImpl.h.


Member Enumeration Documentation

anonymous enum
 

Enumerator:
ParentsFieldId 
InternalFieldId 
NextFieldId 

Reimplemented from osg::FieldContainer.

Definition at line 86 of file OSGAttachmentImpl.h.

00087     { 
00088         ParentsFieldId     = Inherited::NextFieldId, 
00089         InternalFieldId    = ParentsFieldId  + 1,
00090         NextFieldId        = InternalFieldId + 1
00091     };


Constructor & Destructor Documentation

Attachment::Attachment void   )  [protected]
 

Definition at line 260 of file OSGAttachment.cpp.

00260                            :
00261      Inherited (     ),
00262     _sfInternal(false),
00263     _parents   (     )
00264 {
00265 }

Attachment::Attachment const Attachment obj  )  [protected]
 

Definition at line 267 of file OSGAttachment.cpp.

00267                                             :
00268      Inherited (obj            ),
00269     _sfInternal(obj._sfInternal),
00270     _parents   (               )
00271 {
00272 }

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

Definition at line 277 of file OSGAttachment.cpp.

00278 {
00279 }


Member Function Documentation

osg::FieldContainerType & Attachment::getType void   )  [virtual]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 90 of file OSGAttachment.cpp.

Referenced by dump().

const osg::FieldContainerType & Attachment::getType void   )  const [virtual]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 90 of file OSGAttachment.cpp.

static osg ::FieldContainerType& osg::Attachment::getClassType void   )  [static]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Referenced by osg::FieldContainerType::initBaseType().

static osg ::UInt32 osg::Attachment::getClassTypeId void   )  [static]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

static AttachmentPtr osg::Attachment::create void   )  [static]
 

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::RegisterCombinersChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

static AttachmentPtr osg::Attachment::createEmpty void   )  [static]
 

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::RegisterCombinersChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

osg::FieldContainerPtr Attachment::shallowCopy void   )  const [virtual]
 

Implements osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::RegisterCombinersChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 90 of file OSGAttachment.cpp.

osg::UInt32 Attachment::getContainerSize void   )  const [virtual]
 

Implements osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 90 of file OSGAttachment.cpp.

MFFieldContainerPtr & Attachment::getParents void   ) 
 

Definition at line 95 of file OSGAttachment.cpp.

00096 {
00097     return _parents;
00098 }

const MFFieldContainerPtr & Attachment::getParents void   )  const
 

Definition at line 100 of file OSGAttachment.cpp.

References _parents.

00101 {
00102     return _parents;
00103 }

MFFieldContainerPtr * Attachment::getMFParents void   ) 
 

Definition at line 105 of file OSGAttachment.cpp.

References _parents.

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

00106 {
00107     return &_parents;
00108 }

void Attachment::addParent FieldContainerPtr  parent  ) 
 

Definition at line 110 of file OSGAttachment.cpp.

References _parents, and osg::MField< FieldTypeT, fieldNameSpace >::push_back().

00111 {
00112     _parents.push_back(parent);
00113 }

void Attachment::subParent FieldContainerPtr  parent  ) 
 

Definition at line 115 of file OSGAttachment.cpp.

References _parents, osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::MField< FieldTypeT, fieldNameSpace >::erase(), and osg::MField< FieldTypeT, fieldNameSpace >::find().

00116 {
00117     MFFieldContainerPtr::iterator parentIt = _parents.find(parent);
00118 
00119     if(parentIt != _parents.end())
00120     {
00121         _parents.erase(parentIt);
00122     }
00123 }

Int32 Attachment::findParent FieldContainerPtr  parent  ) 
 

Definition at line 125 of file OSGAttachment.cpp.

References _parents, osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::end(), and osg::MField< FieldTypeT, fieldNameSpace >::find().

00126 {
00127     MFFieldContainerPtr::iterator parentIt = _parents.find(parent);
00128 
00129     if(parentIt != _parents.end())
00130     {
00131         return parentIt - _parents.begin();
00132     }
00133     else
00134     {
00135         return -1;
00136     }
00137 }

SFBool & Attachment::getInternal void   ) 
 

Definition at line 142 of file OSGAttachment.cpp.

References _sfInternal.

00143 {
00144     return _sfInternal;
00145 }

const SFBool & Attachment::getInternal void   )  const
 

Definition at line 147 of file OSGAttachment.cpp.

References _sfInternal.

00148 {
00149     return _sfInternal;
00150 }

SFBool * Attachment::getSFInternal void   ) 
 

Definition at line 152 of file OSGAttachment.cpp.

References _sfInternal.

00153 {
00154     return &_sfInternal;
00155 }

void Attachment::setInternal bool  bVal  ) 
 

Definition at line 157 of file OSGAttachment.cpp.

References _sfInternal, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().

00158 {
00159     _sfInternal.setValue(bVal);
00160 }

UInt32 Attachment::getBinSize const BitVector whichField  )  [virtual]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 165 of file OSGAttachment.cpp.

References _parents, _sfInternal, osg::MField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::SField< FieldTypeT, fieldNameSpace >::getBinSize(), InternalFieldMask, osg::FieldBits::NoField, and ParentsFieldMask.

Referenced by osg::StateChunkBase::getBinSize(), osg::DVRVolumeTextureBase::getBinSize(), osg::DVRLookupTableBase::getBinSize(), osg::DVRIsoSurfaceBase::getBinSize(), osg::DVRClipObjectsBase::getBinSize(), and osg::SimpleAttachment< AttachmentDescT >::getBinSize().

00166 {
00167     UInt32 returnValue = 0;
00168 
00169     if(FieldBits::NoField != (InternalFieldMask & whichField))
00170     {
00171         returnValue += _sfInternal.getBinSize();
00172     }
00173 
00174     if(FieldBits::NoField != (ParentsFieldMask & whichField))
00175     {
00176         returnValue += _parents.getBinSize();
00177     }
00178 
00179     return returnValue;
00180 }

void Attachment::copyToBin BinaryDataHandler pMem,
const BitVector whichField
[virtual]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 182 of file OSGAttachment.cpp.

References _parents, _sfInternal, osg::MField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::SField< FieldTypeT, fieldNameSpace >::copyToBin(), InternalFieldMask, osg::FieldBits::NoField, and ParentsFieldMask.

Referenced by osg::StateChunkBase::copyToBin(), osg::DVRVolumeTextureBase::copyToBin(), osg::DVRLookupTableBase::copyToBin(), osg::DVRIsoSurfaceBase::copyToBin(), osg::DVRClipObjectsBase::copyToBin(), and osg::SimpleAttachment< AttachmentDescT >::copyToBin().

00184 {
00185     if(FieldBits::NoField != (InternalFieldMask & whichField))
00186     {
00187         _sfInternal.copyToBin(pMem);
00188     }
00189 
00190     if(FieldBits::NoField != (ParentsFieldMask & whichField))
00191     {
00192         _parents.copyToBin(pMem);
00193     }
00194 }

void Attachment::copyFromBin BinaryDataHandler pMem,
const BitVector whichField
[virtual]
 

Reimplemented from osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjectsBase, osg::DVRIsoSurfaceBase, osg::DVRLookupTableBase, osg::DVRVolumeTextureBase, osg::FatBorderChunkBase, osg::BlendChunkBase, osg::ClipPlaneChunkBase, osg::ColorMaskChunkBase, osg::CubeTextureChunkBase, osg::DepthChunkBase, osg::FragmentProgramChunkBase, osg::LightChunkBase, osg::LineChunkBase, osg::MaterialChunkBase, osg::PointChunkBase, osg::PolygonChunkBase, osg::ProgramChunkBase, osg::RegisterCombinersChunkBase, osg::StateChunkBase, osg::StencilChunkBase, osg::TexGenChunkBase, osg::TextureChunkBase, osg::TextureTransformChunkBase, osg::TransformChunkBase, osg::TwoSidedLightingChunkBase, osg::VertexProgramChunkBase, osg::ShaderChunkBase, osg::ShaderParameterChunkBase, osg::SHLChunkBase, osg::SHLParameterChunkBase, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 196 of file OSGAttachment.cpp.

References _parents, _sfInternal, osg::MField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::SField< FieldTypeT, fieldNameSpace >::copyFromBin(), InternalFieldMask, osg::FieldBits::NoField, and ParentsFieldMask.

Referenced by osg::StateChunkBase::copyFromBin(), osg::DVRVolumeTextureBase::copyFromBin(), osg::DVRLookupTableBase::copyFromBin(), osg::DVRIsoSurfaceBase::copyFromBin(), osg::DVRClipObjectsBase::copyFromBin(), and osg::SimpleAttachment< AttachmentDescT >::copyFromBin().

00198 {
00199     if(FieldBits::NoField != (InternalFieldMask & whichField))
00200     {
00201         _sfInternal.copyFromBin(pMem);
00202     }
00203 
00204     if(FieldBits::NoField != (ParentsFieldMask & whichField))
00205     {
00206         _parents.copyFromBin(pMem);
00207     }
00208 }

void Attachment::dump UInt32  uiIndent = 0,
const BitVector  bvFlags = 0
const [virtual]
 

Implements osg::FieldContainer.

Reimplemented in osg::SimpleAttachment< AttachmentDescT >, osg::DVRClipObjects, osg::DVRIsoSurface, osg::DVRLookupTable, osg::DVRVolumeTexture, osg::FatBorderChunk, osg::BlendChunk, osg::ClipPlaneChunk, osg::ColorMaskChunk, osg::CubeTextureChunk, osg::DepthChunk, osg::FragmentProgramChunk, osg::LightChunk, osg::LineChunk, osg::MaterialChunk, osg::PointChunk, osg::PolygonChunk, osg::ProgramChunk, osg::RegisterCombinersChunk, osg::StateChunk, osg::StencilChunk, osg::TexGenChunk, osg::TextureChunk, osg::TextureTransformChunk, osg::TransformChunk, osg::TwoSidedLightingChunk, osg::VertexProgramChunk, osg::ShaderChunk, osg::ShaderParameterChunk, osg::SHLChunk, osg::SHLParameterChunk, osg::SimpleAttachment< VoidPAttachmentDesc >, and osg::SimpleAttachment< NameAttachmentDesc >.

Definition at line 213 of file OSGAttachment.cpp.

References _parents, osg::FieldContainerPtrBase::getFieldContainerId(), osg::TypeBase::getName(), getType(), osg::indentLog(), PLOG, and osg::MField< FieldTypeT, fieldNameSpace >::size().

Referenced by osg::SimpleAttachment< AttachmentDescT >::dump().

00215 {
00216     UInt32 i;
00217 
00218     AttachmentPtr thisP(this);
00219 
00220     indentLog(uiIndent, PLOG);
00221 
00222     PLOG << "Attachment"
00223          << "(" 
00224          << std::dec
00225          << thisP.getFieldContainerId()
00226          << ") : " 
00227          << getType().getName()
00228          << "("       
00229          << this 
00230          << ")" 
00231          << std::endl;
00232 
00233     indentLog(uiIndent, PLOG);
00234     PLOG << "[" << std::endl;
00235 
00236     indentLog(uiIndent + 4, PLOG);
00237