#include <OSGAttachmentImpl.h>
Inheritance diagram for osg::SimpleAttachment< AttachmentDescT >:

General Fieldcontainer Declaration | |
| *virtual osg::FieldContainerType & | getType (void) |
| virtual const osg::FieldContainerType & | getType (void) const |
| virtual osg::FieldContainerPtr | shallowCopy (void) const |
| virtual osg::UInt32 | getContainerSize (void) const |
| static osg::FieldContainerType & | getClassType (void) |
| static osg::UInt32 | getClassTypeId (void) |
| static PtrType | create (void) |
| static PtrType | createEmpty (void) |
Public Types | |
| typedef AttachmentDescT::FieldTypeT | StoredFieldType |
| typedef SimpleAttachment< AttachmentDescT > | Self |
| typedef FCPtr< AttachmentPtr, Self > | PtrType |
| enum | { SimpleFieldId = Inherited::NextFieldId, NextFieldId = SimpleFieldId + 1 } |
| enum | { ParentsFieldId = Inherited::NextFieldId, InternalFieldId = ParentsFieldId + 1, NextFieldId = InternalFieldId + 1 } |
Public Member Functions | |
Get | |
| *StoredFieldType * | getFieldPtr (void) |
| StoredFieldType & | getField (void) |
| const StoredFieldType & | getField (void) const |
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 |
Parents | |
| *MFFieldContainerPtr & | getParents (void) |
| const MFFieldContainerPtr & | getParents (void) const |
| MFFieldContainerPtr * | getMFParents (void) |
| void | addParent (FieldContainerPtr parent) |
| void | subParent (FieldContainerPtr parent) |
| Int32 | findParent (FieldContainerPtr parent) |
Parents | |
| *SFBool & | getInternal (void) |
| const SFBool & | getInternal (void) const |
| SFBool * | getSFInternal (void) |
| void | setInternal (bool bVal) |
Get Instance Type Information | |
| UInt32 | getTypeId (void) const |
| UInt16 | getGroupId (void) const |
| const Char8 * | getTypeName (void) const |
| Generic Field Access *Field * | getField (UInt32 fieldId) |
| Field * | getField (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 | SimpleFieldMask |
| 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 Attachment | Inherited |
Protected Member Functions | |
Constructors | |
| * | SimpleAttachment (void) |
| SimpleAttachment (const SimpleAttachment &source) | |
Destructors | |
| *virtual | ~SimpleAttachment (void) |
Sync | |
| *virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
| void | executeSyncImpl (SimpleAttachment *pOther, const BitVector &whichField) |
MT Destruction | |
| *virtual void | onDestroy (void) |
Sync | |
| void | executeSyncImpl (Attachment *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *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) |
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 | |
| *StoredFieldType | _field |
Fields | |
| *SFBool | _sfInternal |
| MFFieldContainerPtr | _parents |
Member | |
| *UInt32 | _shares |
Static Protected Attributes | |
Type information | |
| *static FieldDescription * | _desc [] |
| static FieldContainerType | _type |
Private Member Functions | |
| SimpleAttachment & | operator= (const SimpleAttachment &source) |
| prohibit default functions (move to 'public' if needed) | |
Friends | |
| class | FieldContainer |
Definition at line 243 of file OSGAttachmentImpl.h.
|
|||||
|
Reimplemented from osg::Attachment. Definition at line 249 of file OSGAttachmentImpl.h. |
|
|||||
|
Definition at line 255 of file OSGAttachmentImpl.h. |
|
|||||
|
Definition at line 257 of file OSGAttachmentImpl.h. |
|
|||||
|
Definition at line 259 of file OSGAttachmentImpl.h. |
|
|||||
|
Definition at line 261 of file OSGAttachmentImpl.h. 00262 { 00263 SimpleFieldId = Inherited::NextFieldId, 00264 NextFieldId = SimpleFieldId + 1 00265 };
|
|
|
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 };
|
|
||||||||||
|
Definition at line 202 of file OSGAttachmentImpl.inl.
|
|
||||||||||
|
Definition at line 209 of file OSGAttachmentImpl.inl.
|
|
||||||||||
|
Definition at line 220 of file OSGAttachmentImpl.inl.
|
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
Reimplemented from osg::Attachment. |
|
||||||||||
|
|
|
||||||||||
|
Returns reference to the stored field Definition at line 130 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field. 00131 { 00132 return _field; 00133 }
|
|
||||||||||
|
Returns const reference to the stored field Definition at line 140 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field. 00141 { 00142 return _field; 00143 }
|
|
||||||||||
|
Reimplemented from osg::Attachment. Definition at line 149 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field, osg::Attachment::getBinSize(), osg::FieldBits::NoField, and osg::SimpleAttachment< AttachmentDescT >::SimpleFieldMask. 00151 { 00152 UInt32 returnValue = Inherited::getBinSize(whichField); 00153 00154 if(FieldBits::NoField != (SimpleFieldMask & whichField)) 00155 { 00156 returnValue += _field.getBinSize(); 00157 } 00158 00159 return returnValue; 00160 }
|
|
||||||||||||||||
|
Reimplemented from osg::Attachment. Definition at line 163 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field, osg::Attachment::copyToBin(), osg::FieldBits::NoField, and osg::SimpleAttachment< AttachmentDescT >::SimpleFieldMask. 00166 { 00167 Inherited::copyToBin(pMem, whichField); 00168 00169 if(FieldBits::NoField != (SimpleFieldMask & whichField)) 00170 { 00171 _field.copyToBin(pMem); 00172 } 00173 }
|
|
||||||||||||||||
|
Reimplemented from osg::Attachment. Definition at line 176 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field, osg::Attachment::copyFromBin(), osg::FieldBits::NoField, and osg::SimpleAttachment< AttachmentDescT >::SimpleFieldMask. 00179 { 00180 Inherited::copyFromBin(pMem, whichField); 00181 00182 if(FieldBits::NoField != (SimpleFieldMask & whichField)) 00183 { 00184 _field.copyFromBin(pMem); 00185 } 00186 }
|
|
||||||||||||||||
|
Reimplemented from osg::Attachment. Definition at line 192 of file OSGAttachmentImpl.inl. References osg::Attachment::dump(). 00194 { 00195 Inherited::dump(uiIndent, bvFlags); 00196 }
|
|
||||||||||||||||
|
Reimplemented from osg::Attachment. Definition at line 229 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::executeSyncImpl(). 00232 { 00233 this->executeSyncImpl(static_cast<SimpleAttachment *>(&other) , 00234 whichField); 00235 }
|
|
||||||||||||||||
|
Definition at line 238 of file OSGAttachmentImpl.inl. References osg::SimpleAttachment< AttachmentDescT >::_field, osg::Attachment::executeSyncImpl(), osg::FieldBits::NoField, and osg::SimpleAttachment< AttachmentDescT >::SimpleFieldMask. Referenced by osg::SimpleAttachment< AttachmentDescT >::executeSync(). 00241 { 00242 Inherited::executeSyncImpl(pOther, whichField); 00243 00244 if(FieldBits::NoField != (SimpleFieldMask & whichField)) 00245 { 00246 _field.syncWith(pOther->_field); 00247 } 00248 }
|
|
||||||||||
|
|
|
|
Definition at line 95 of file OSGAttachment.cpp. 00096 { 00097 return _parents; 00098 }
|
|
|
Definition at line 100 of file OSGAttachment.cpp. References osg::Attachment::_parents. 00101 { 00102 return _parents; 00103 }
|
|
|
Definition at line 105 of file OSGAttachment.cpp. References osg::Attachment::_parents. Referenced by osg::DVRLookupTable::changed(). 00106 { 00107 return &_parents; 00108 }
|
|
|
Definition at line 110 of file OSGAttachment.cpp. References osg::Attachment::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::push_back().
|
|
|
Definition at line 115 of file OSGAttachment.cpp. References osg::Attachment::_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 }
|
|
|
Definition at line 125 of file OSGAttachment.cpp. References osg::Attachment::_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 }
|
|
|
Definition at line 142 of file OSGAttachment.cpp. References osg::Attachment::_sfInternal. 00143 { 00144 return _sfInternal; 00145 }
|
|
|
Definition at line 147 of file OSGAttachment.cpp. References osg::Attachment::_sfInternal. 00148 { 00149 return _sfInternal; 00150 }
|
|
|
Definition at line 152 of file OSGAttachment.cpp. References osg::Attachment::_sfInternal. 00153 { 00154 return &_sfInternal; 00155 }
|
|
|
Definition at line 157 of file OSGAttachment.cpp. References osg::Attachment::_sfInternal, and osg::SField< FieldTypeT, fieldNameSpace >::setValue(). 00158 { 00159 _sfInternal.setValue(bVal); 00160 }
|
|
|
Reimplemented from osg::FieldContainer. Reimplemented in osg::ShaderParameterChunk, and osg::SHLChunk. Definition at line 285 of file OSGAttachment.cpp. Referenced by osg::ShaderParameterChunk::onDestroy().
|
|
||||||||||||
|
||||||||||||
|
Definition at line 333 of file OSGFieldContainerImpl.inl. Referenced by osg::StateBase::executeSyncImpl(), osg::DVRShaderBase::executeSyncImpl(), osg::DVRClipGeometryBase::executeSyncImpl(), osg::AttachmentContainer::executeSyncImpl(), and osg::Attachment::executeSyncImpl().
|
|
|
Definition at line 71 of file OSGFieldContainerImpl.inl. References osg::FieldContainer::_type, and osg::FieldContainerType::getGroupId(). 00072 { 00073 return _type.getGroupId(); 00074 }
|
|
|
Definition at line 77 of file OSGFieldContainerImpl.inl. References osg::TypeBase::getId(), and osg::FieldContainer::getType(). Referenced by osg::TextureChunk::changeFrom(), and osg::CubeTextureChunk::changeFrom().
|
|
|
Definition at line 83 of file OSGFieldContainerImpl.inl. References osg::FieldContainerType::getGroupId(), and osg::FieldContainer::getType(). Referenced by osg::Image::setAttachmentField(). 00084 { 00085 return getType().getGroupId(); 00086 }
|
|
|
Definition at line 89 of file OSGFieldContainerImpl.inl. References osg::TypeBase::getCName(), and osg::FieldContainer::getType().
|
|
|
Definition at line 95 of file OSGFieldContainerImpl.inl. References osg::FieldDescription::getField(), osg::FieldContainerType::getFieldDescription(), and osg::FieldContainer::getType(). Referenced by osg::QFCItem::expand(), osg::VRMLShapeDesc::getFieldAndDesc(), osg::QFieldViewBase::getFieldPtr(), osg::QFieldEditorBase::getFieldPtr(), osg::getParentsField(), and osg::QFCItem::setup(). 00096 { 00097 const FieldDescription *desc = getType().getFieldDescription(fieldId); 00098 00099 return desc ? desc->getField(*this) : NULL; 00100 }
|
|
|
Definition at line 103 of file OSGFieldContainerImpl.inl. References osg::FieldContainerType::findFieldDescription(), osg::FieldDescription::getField(), and osg::FieldContainer::getType(). 00104 { 00105 const FieldDescription *desc =getType().findFieldDescription(fieldName); 00106 00107 return desc ? desc->getField(*this) : NULL; 00108 }
|
|
||||||||||||