#include <OSGStringAttributeMap.h>

Public Types | |
| enum | { KeysFieldId = Inherited::NextFieldId, ValuesFieldId = KeysFieldId + 1, NextFieldId = ValuesFieldId + 1 } |
| typedef StringAttributeMapPtr | Ptr |
| enum | { ParentsFieldId = Inherited::NextFieldId, InternalFieldId = ParentsFieldId + 1, NextFieldId = InternalFieldId + 1 } |
| enum | { NextFieldId = 1 } |
Public Member Functions | |
| const MFString & | getKeys () const |
| void | setAttribute (const std::string &key, const std::string &value) |
| bool | hasAttribute (const std::string &key) const |
| bool | getAttribute (const std::string &key, std::string &value) const |
| const std::string | getAttribute (const std::string &key) const |
| std::string & | operator[] (const std::string &key) |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Output | |
| virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
FieldContainer Get | |
| virtual FieldContainerType & | getType (void) |
| virtual const FieldContainerType & | getType (void) const |
| virtual UInt32 | getContainerSize (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) |
Copy | |
| virtual FieldContainerPtr | shallowCopy (void) 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 |
| Field * | getField (UInt32 fieldId) |
| Field * | getField (const Char8 *fieldName) |
Static Public Member Functions | |
Class Get | |
| static FieldContainerType & | getClassType (void) |
| access the type of the class | |
| static UInt32 | getClassTypeId (void) |
| access the numerical type of the class | |
Construction | |
| static StringAttributeMapPtr | create (void) |
| create a new instance of the class | |
| static StringAttributeMapPtr | createEmpty (void) |
| create an empty new instance of the class, do not copy the prototype | |
Get Class Type Information | |
| static UInt16 | getClassGroupId (void) |
Static Public Attributes | |
| static const osg::BitVector | KeysFieldMask |
| static const osg::BitVector | ValuesFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| static const BitVector | InternalFieldMask = (1 << Attachment::InternalFieldId) |
| static const BitVector | ParentsFieldMask = (1 << Attachment::ParentsFieldId) |
| static const BitVector | NextFieldMask |
CoredNodePtr helper | |
| static const bool | isNodeCore = false |
Protected Member Functions | |
Constructors | |
| StringAttributeMap (void) | |
| StringAttributeMap (const StringAttributeMap &source) | |
Destructors | |
| virtual | ~StringAttributeMap (void) |
Field Get | |
| MFString * | getMFKeys (void) |
| Get the StringAttributeMap::_mfKeys field. | |
| MFString * | getMFValues (void) |
| Get the StringAttributeMap::_mfValues field. | |
| std::string & | getKeys (UInt32 index) |
| Get the value of the index element the StringAttributeMap::_mfKeys field. | |
| MFString & | getKeys (void) |
| Get the StringAttributeMap::_mfKeys field. | |
| std::string & | getValues (UInt32 index) |
| Get the value of the index element the StringAttributeMap::_mfValues field. | |
| MFString & | getValues (void) |
| Get the StringAttributeMap::_mfValues field. | |
| const MFString & | getValues (void) const |
| Get the StringAttributeMap::_mfValues field. | |
Sync | |
| void | executeSyncImpl (StringAttributeMapBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (Attachment *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *pOther, const BitVector &whichField) |
MT Destruction | |
| virtual void | onDestroy (void) |
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 | |
| MFString | _mfKeys |
| MFString | _mfValues |
Fields | |
| SFBool | _sfInternal |
| MFFieldContainerPtr | _parents |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef StringAttributeMapBase | Inherited |
Private Member Functions | |
| void | operator= (const StringAttributeMap &source) |
Static Private Member Functions | |
| static void | initMethod (void) |
Friends | |
| class | FieldContainer |
| class | StringAttributeMapBase |
Definition at line 55 of file OSGStringAttributeMap.h.
typedef StringAttributeMapBase osg::StringAttributeMap::Inherited [private] |
Reimplemented from osg::StringAttributeMapBase.
Definition at line 59 of file OSGStringAttributeMap.h.
typedef StringAttributeMapPtr osg::StringAttributeMapBase::Ptr [inherited] |
Definition at line 91 of file OSGStringAttributeMapBase.h.
anonymous enum [inherited] |
Definition at line 93 of file OSGStringAttributeMapBase.h.
00094 { 00095 KeysFieldId = Inherited::NextFieldId, 00096 ValuesFieldId = KeysFieldId + 1, 00097 NextFieldId = ValuesFieldId + 1 00098 };
anonymous enum [inherited] |
Definition at line 86 of file OSGAttachmentImpl.h.
00087 { 00088 ParentsFieldId = Inherited::NextFieldId, 00089 InternalFieldId = ParentsFieldId + 1, 00090 NextFieldId = InternalFieldId + 1 00091 };
anonymous enum [inherited] |
| StringAttributeMap::StringAttributeMap | ( | void | ) | [protected] |
| StringAttributeMap::StringAttributeMap | ( | const StringAttributeMap & | source | ) | [protected] |
Definition at line 90 of file OSGStringAttributeMap.cpp.
00090 : 00091 Inherited(source) 00092 { 00093 }
| StringAttributeMap::~StringAttributeMap | ( | void | ) | [protected, virtual] |
Reimplemented from osg::FieldContainer.
Definition at line 101 of file OSGStringAttributeMap.cpp.
References osg::FieldContainer::changed().
00102 { 00103 Inherited::changed(whichField, origin); 00104 }
Reimplemented from osg::Attachment.
Definition at line 106 of file OSGStringAttributeMap.cpp.
References SLOG.
00108 { 00109 SLOG << "Dump StringAttributeMap NI" << std::endl; 00110 }
| const MFString & osg::StringAttributeMap::getKeys | ( | void | ) | const [inline] |
Provides read-only access to the keys multi-field of this attribute map. Among other things, this can be used for iterating over the contents of this attribute map.
Reimplemented from osg::StringAttributeMapBase.
Definition at line 50 of file OSGStringAttributeMap.inl.
References osg::StringAttributeMapBase::getKeys().
Referenced by hasAttribute().
00051 { 00052 return StringAttributeMapBase::getKeys(); 00053 }
| void StringAttributeMap::setAttribute | ( | const std::string & | key, | |
| const std::string & | value | |||
| ) |
Sets the value associated with the named key in this attribute map. If this attribute map does not include the named key, then the key is added and assigned the given value. Otherwise, the value previously associated with the named key is changed to value.
It is the responsibility of the caller to use OSG::beginEditCP() and OSG::endEditCP() accordingly. Both fields of this container (Keys and Values) are edited by this method.
Definition at line 122 of file OSGStringAttributeMap.cpp.
References osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::StringAttributeMapBase::getKeys(), osg::StringAttributeMapBase::getValues(), and osg::MField< FieldTypeT, fieldNameSpace >::push_back().
00124 { 00125 MFString& keys = this->StringAttributeMapBase::getKeys(); 00126 MFString& values = this->StringAttributeMapBase::getValues(); 00127 00128 unsigned int index(0); 00129 00130 // Find the index of key in _mfKeys. This index will be the index of the 00131 // value associated with key in _mfValues. 00132 for ( MFString::iterator i = keys.begin(); i != keys.end(); ++i, ++index ) 00133 { 00134 if ( *i == key ) 00135 { 00136 values[index] = value; 00137 return; 00138 } 00139 } 00140 00141 // key was not found in _mfKeys, so we add key to _mfKeys and value to 00142 // _mfValues. 00143 keys.push_back(key); 00144 values.push_back(value); 00145 }
| bool osg::StringAttributeMap::hasAttribute | ( | const std::string & | key | ) | const [inline] |
Queries this attribute map attachment to determine if it includes the named key. If it does, then true is returned. Otherwise, false is returned.
Definition at line 60 of file OSGStringAttributeMap.inl.
References osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::MField< FieldTypeT, fieldNameSpace >::find(), and getKeys().
Referenced by getAttribute().
| bool StringAttributeMap::getAttribute | ( | const std::string & | key, | |
| std::string & | value | |||
| ) | const |
Attempts to look up the value associated with the named key in this attribute map. If this attribute map does not include key, then false is returned. Otherwise, value is set to the value associated with the named key, and true is returned.
Definition at line 153 of file OSGStringAttributeMap.cpp.
References osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::StringAttributeMapBase::getKeys(), osg::StringAttributeMapBase::getValues(), and hasAttribute().
Referenced by getAttribute().
00156 { 00157 if ( hasAttribute(key) ) 00158 { 00159 const MFString& keys = this->StringAttributeMapBase::getKeys(); 00160 const MFString& values = this->StringAttributeMapBase::getValues(); 00161 00162 // Find the index of key in _mfKeys. This index will be the index of 00163 // the value associated with key in _mfValues. 00164 unsigned int index(0); 00165 MFString::const_iterator i; 00166 for ( i = keys.begin(); i != keys.end(); ++i, ++index ) 00167 { 00168 if ( *i == key ) 00169 { 00170 // Assign the value associated with key. 00171 value = values[index]; 00172 return true; 00173 } 00174 } 00175 } 00176 00177 // _mfKeys does not contain key. 00178 return false; 00179 }
| const std::string osg::StringAttributeMap::getAttribute | ( | const std::string & | key | ) | const [inline] |
Attempts to look up the value associated with the named key in this attribute map. If this attribute map does not include key, then an empty string is returned. Otherwise, a copy of the value associated with the named key is returned.
Definition at line 71 of file OSGStringAttributeMap.inl.
References getAttribute().
00073 { 00074 std::string value; 00075 getAttribute(key, value); 00076 return value; 00077 }
| std::string & osg::StringAttributeMap::operator[] | ( | const std::string & | key | ) | [inline] |
Provides index access to this attribute map following the semantics of the STL map type. If this attribute map contains key, a reference to the value associated with that key is returned. Otherwise, key is added to this attribute map with an empty string as the value, and a reference to that newly added value is returned.
It is the responsibility of the caller to use OSG::beginEditCP() and OSG::endEditCP() accordingly. Both fields of this container (Keys and Values) may be edited by this method depending on the usage. In the case when a key/value pair is being changed or added, the fields will be edited. In the case when an unknown key is used for querying a value, both fields will be edited. When this operator is used solely to query an existing key's value, then no fields will be edited.
Definition at line 98 of file OSGStringAttributeMap.inl.
References osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::StringAttributeMapBase::getKeys(), osg::StringAttributeMapBase::getValues(), osg::MField< FieldTypeT, fieldNameSpace >::push_back(), and osg::MField< FieldTypeT, fieldNameSpace >::size().
00099 { 00100 MFString& keys = this->StringAttributeMapBase::getKeys(); 00101 MFString& values = this->StringAttributeMapBase::getValues(); 00102 00103 unsigned int index(0); 00104 for ( MFString::iterator i = keys.begin(); i != keys.end(); ++i, ++index ) 00105 { 00106 if ( *i == key ) 00107 { 00108 return values[index]; 00109 } 00110 } 00111 00112 keys.push_back(key); 00113 values.push_back(std::string("")); 00114 00115 // The value we want to return is at the end of _mfValues. 00116 return values[values.size() - 1]; 00117 }
| void StringAttributeMap::initMethod | ( | void | ) | [static, private] |
| void osg::StringAttributeMap::operator= | ( | const StringAttributeMap & | source | ) | [private] |
| osg::FieldContainerType & osg::StringAttributeMapBase::getClassType | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::Attachment.
Definition at line 58 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_type.
Referenced by osg::StringAttributeMapBase::create(), and osg::stringAttributeMap().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::StringAttributeMapBase::getClassTypeId | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::Attachment.
Definition at line 65 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & StringAttributeMapBase::getType | ( | void | ) | [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 117 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_type.
00118 { 00119 return _type; 00120 }
| const FieldContainerType & StringAttributeMapBase::getType | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 122 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_type.
00123 { 00124 return _type; 00125 }
| UInt32 StringAttributeMapBase::getContainerSize | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 137 of file OSGStringAttributeMapBase.cpp.
00138 { 00139 return sizeof(StringAttributeMap); 00140 }
Reimplemented from osg::Attachment.
Definition at line 203 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_mfKeys, osg::StringAttributeMapBase::_mfValues, osg::MField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::Attachment::getBinSize(), osg::StringAttributeMapBase::KeysFieldMask, osg::FieldBits::NoField, and osg::StringAttributeMapBase::ValuesFieldMask.
00204 { 00205 UInt32 returnValue = Inherited::getBinSize(whichField); 00206 00207 if(FieldBits::NoField != (KeysFieldMask & whichField)) 00208 { 00209 returnValue += _mfKeys.getBinSize(); 00210 } 00211 00212 if(FieldBits::NoField != (ValuesFieldMask & whichField)) 00213 { 00214 returnValue += _mfValues.getBinSize(); 00215 } 00216 00217 00218 return returnValue; 00219 }
| void StringAttributeMapBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 221 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_mfKeys, osg::StringAttributeMapBase::_mfValues, osg::MField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::Attachment::copyToBin(), osg::StringAttributeMapBase::KeysFieldMask, osg::FieldBits::NoField, and osg::StringAttributeMapBase::ValuesFieldMask.
00223 { 00224 Inherited::copyToBin(pMem, whichField); 00225 00226 if(FieldBits::NoField != (KeysFieldMask & whichField)) 00227 { 00228 _mfKeys.copyToBin(pMem); 00229 } 00230 00231 if(FieldBits::NoField != (ValuesFieldMask & whichField)) 00232 { 00233 _mfValues.copyToBin(pMem); 00234 } 00235 00236 00237 }
| void StringAttributeMapBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 239 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_mfKeys, osg::StringAttributeMapBase::_mfValues, osg::MField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::Attachment::copyFromBin(), osg::StringAttributeMapBase::KeysFieldMask, osg::FieldBits::NoField, and osg::StringAttributeMapBase::ValuesFieldMask.
00241 { 00242 Inherited::copyFromBin(pMem, whichField); 00243 00244 if(FieldBits::NoField != (KeysFieldMask & whichField)) 00245 { 00246 _mfKeys.copyFromBin(pMem); 00247 } 00248 00249 if(FieldBits::NoField != (ValuesFieldMask & whichField)) 00250 { 00251 _mfValues.copyFromBin(pMem); 00252 } 00253 00254 00255 }
| StringAttributeMapPtr osg::StringAttributeMapBase::create | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::Attachment.
Definition at line 72 of file OSGStringAttributeMapBase.inl.
References osg::AttachmentPtr::dcast(), osg::StringAttributeMapBase::getClassType(), osg::NullFC, and osg::StringAttributeMapBase::shallowCopy().
Referenced by osg::stringAttributeMap().
00073 { 00074 StringAttributeMapPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = StringAttributeMapPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| StringAttributeMapPtr osg::StringAttributeMapBase::createEmpty | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::Attachment.
Definition at line 87 of file OSGStringAttributeMapBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 StringAttributeMapPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr StringAttributeMapBase::shallowCopy | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 128 of file OSGStringAttributeMapBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by osg::StringAttributeMapBase::create().
00129 { 00130 StringAttributeMapPtr returnValue; 00131 00132 newPtr(returnValue, dynamic_cast<const StringAttributeMap *>(this)); 00133 00134 return returnValue; 00135 }
| MFString * osg::StringAttributeMapBase::getMFKeys | ( | void | ) | [inline, protected, inherited] |
Definition at line 101 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfKeys.
00102 { 00103 return &_mfKeys; 00104 }
| MFString * osg::StringAttributeMapBase::getMFValues | ( | void | ) | [inline, protected, inherited] |
Definition at line 108 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfValues.
00109 { 00110 return &_mfValues; 00111 }
| std::string & osg::StringAttributeMapBase::getKeys | ( | UInt32 | index | ) | [inline, protected, inherited] |
Definition at line 117 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfKeys.
00118 { 00119 return _mfKeys[index]; 00120 }
| MFString & osg::StringAttributeMapBase::getKeys | ( | void | ) | [inline, protected, inherited] |
Reimplemented in osg::StringAttributeMap.
Definition at line 124 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfKeys.
Referenced by getAttribute(), getKeys(), operator[](), and setAttribute().
00125 { 00126 return _mfKeys; 00127 }
| std::string & osg::StringAttributeMapBase::getValues | ( | UInt32 | index | ) | [inline, protected, inherited] |
Definition at line 138 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfValues.
00139 { 00140 return _mfValues[index]; 00141 }
| MFString & osg::StringAttributeMapBase::getValues | ( | void | ) | [inline, protected, inherited] |
Definition at line 145 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfValues.
Referenced by getAttribute(), operator[](), and setAttribute().
00146 { 00147 return _mfValues; 00148 }
| const MFString & osg::StringAttributeMapBase::getValues | ( | void | ) | const [inline, protected, inherited] |
Definition at line 152 of file OSGStringAttributeMapBase.inl.
References osg::StringAttributeMapBase::_mfValues.
00153 { 00154 return _mfValues; 00155 }
| void StringAttributeMapBase::executeSyncImpl | ( | StringAttributeMapBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 258 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::_mfKeys, osg::StringAttributeMapBase::_mfValues, osg::Attachment::executeSyncImpl(), osg::StringAttributeMapBase::KeysFieldMask, osg::FieldBits::NoField, osg::MField< FieldTypeT, fieldNameSpace >::syncWith(), and osg::StringAttributeMapBase::ValuesFieldMask.
Referenced by osg::StringAttributeMapBase::executeSync().
00260 { 00261 00262 Inherited::executeSyncImpl(pOther, whichField); 00263 00264 if(FieldBits::NoField != (KeysFieldMask & whichField)) 00265 _mfKeys.syncWith(pOther->_mfKeys); 00266 00267 if(FieldBits::NoField != (ValuesFieldMask & whichField)) 00268 _mfValues.syncWith(pOther->_mfValues); 00269 00270 00271 }
| void Attachment::executeSyncImpl | ( | Attachment * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 306 of file OSGAttachment.cpp.
References osg::Attachment::_parents, osg::Attachment::_sfInternal, osg::FieldContainer::executeSyncImpl(), osg::Attachment::InternalFieldMask, osg::FieldBits::NoField, osg::Attachment::ParentsFieldMask, osg::MField< FieldTypeT, fieldNameSpace >::syncWith(), and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::Attachment::executeSync(), osg::StringAttributeMapBase::executeSyncImpl(), osg::StateChunkBase::executeSyncImpl(), osg::RenderOptionsBase::executeSyncImpl(), osg::FCPtrAttributeMapBase::executeSyncImpl(), osg::DVRVolumeTextureBase::executeSyncImpl(), osg::DVRLookupTableBase::executeSyncImpl(), osg::DVRIsoSurfaceBase::executeSyncImpl(), osg::DVRClipObjectsBase::executeSyncImpl(), and osg::SimpleAttachment< AttachmentDescT >::executeSyncImpl().
00308 { 00309 Inherited::executeSyncImpl(pOther, whichField); 00310 00311 if(FieldBits::NoField != (InternalFieldMask & whichField)) 00312 { 00313 _sfInternal.syncWith(pOther->_sfInternal); 00314 } 00315 00316 if(FieldBits::NoField != (ParentsFieldMask & whichField)) 00317 { 00318 _parents.syncWith(pOther->_parents); 00319 } 00320 }
| void osg::FieldContainer::executeSyncImpl | ( | FieldContainer * | pOther, | |
| const BitVector & | whichField | |||
| ) | [inline, protected, inherited] |
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().
| void StringAttributeMapBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual, inherited] |
Reimplemented from osg::Attachment.
Definition at line 144 of file OSGStringAttributeMapBase.cpp.
References osg::StringAttributeMapBase::executeSyncImpl().
00146 { 00147 this->executeSyncImpl((StringAttributeMapBase *) &other, whichField); 00148 }
| MFFieldContainerPtr & Attachment::getParents | ( | void | ) | [inherited] |
| const MFFieldContainerPtr & Attachment::getParents | ( | void | ) | const [inherited] |
Definition at line 100 of file OSGAttachment.cpp.
References osg::Attachment::_parents.
00101 { 00102 return _parents; 00103 }
| MFFieldContainerPtr * Attachment::getMFParents | ( | void | ) | [inherited] |
Definition at line 105 of file OSGAttachment.cpp.
References osg::Attachment::_parents.
Referenced by osg::DVRLookupTable::changed().
00106 { 00107 return &_parents; 00108 }
| void Attachment::addParent | ( | FieldContainerPtr | parent | ) | [inherited] |
Definition at line 110 of file OSGAttachment.cpp.
References osg::Attachment::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::push_back().
| void Attachment::subParent | ( | FieldContainerPtr | parent | ) | [inherited] |
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 }
| Int32 Attachment::findParent | ( | FieldContainerPtr | parent | ) | [inherited] |
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 }
| SFBool & Attachment::getInternal | ( | void | ) | [inherited] |
Definition at line 142 of file OSGAttachment.cpp.
References osg::Attachment::_sfInternal.
00143 { 00144 return _sfInternal; 00145 }
| const SFBool & Attachment::getInternal | ( | void | ) | const [inherited] |
Definition at line 147 of file OSGAttachment.cpp.
References osg::Attachment::_sfInternal.
00148 { 00149 return _sfInternal; 00150 }
| SFBool * Attachment::getSFInternal | ( | void | ) | [inherited] |
Definition at line 152 of file OSGAttachment.cpp.
References osg::Attachment::_sfInternal.
00153 { 00154 return &_sfInternal; 00155 }
| void Attachment::setInternal | ( | bool | bVal | ) | [inherited] |
Definition at line 157 of file OSGAttachment.cpp.
References osg::Attachment::_sfInternal, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00158 { 00159 _sfInternal.setValue(bVal); 00160 }
| void Attachment::onDestroy | ( | void | ) | [protected, virtual, inherited] |
Reimplemented from osg::FieldContainer.
Reimplemented in osg::CubeTextureChunk, osg::TextureChunk, osg::ShaderParameterChunk, and osg::SHLChunk.
Definition at line 285 of file OSGAttachment.cpp.
Referenced by osg::TextureChunk::onDestroy(), and osg::ShaderParameterChunk::onDestroy().
| UInt16 osg::FieldContainer::getClassGroupId | ( | void | ) | [inline, static, inherited] |
Definition at line 71 of file OSGFieldContainerImpl.inl.
References osg::FieldContainer::_type, and osg::FieldContainerType::getGroupId().
00072 { 00073 return _type.getGroupId(); 00074 }
| UInt32 osg::FieldContainer::getTypeId | ( | void | ) | const [inline, inherited] |
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().
00078 { 00079 return getType().getId(); 00080 }
| UInt16 osg::FieldContainer::getGroupId | ( | void | ) | const [inline, inherited] |
Definition at line 83 of file OSGFieldContainerImpl.inl.
References osg::FieldContainerType::getGroupId(), and osg::FieldContainer::getType().
Referenced by osg::fcptrAttributeMap(), osg::Image::setAttachmentField(), and osg::stringAttributeMap().
00084 { 00085 return getType().getGroupId(); 00086 }
| const Char8 * osg::FieldContainer::getTypeName | ( | void | ) | const [inline, inherited] |
Definition at line 89 of file OSGFieldContainerImpl.inl.
References osg::TypeBase::getCName(), and osg::FieldContainer::getType().
00090 { 00091 return getType().getCName(); 00092 }
Generic Field Access
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 }
Generic Field Access
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 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result, | |
| const typename ObjectPtrT::StoredObjectType * | prototypeP | |||
| ) | [inline, static, protected, inherited] |
Definition at line 138 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
Referenced by osg::XWindowBase::createEmpty(), osg::WIN32WindowBase::createEmpty(), osg::ViewportBase::createEmpty(), osg::VertexProgramChunkBase::createEmpty(), osg::TwoSidedLightingChunkBase::createEmpty(), osg::TransformChunkBase::createEmpty(), osg::TransformBase::createEmpty(), osg::TileCameraDecoratorBase::createEmpty(), osg::TextureTransformChunkBase::createEmpty(), osg::TextureGrabForegroundBase::createEmpty(), osg::TextureGrabBackgroundBase::createEmpty(), osg::TextureChunkBase::createEmpty(), osg::TextureBackgroundBase::createEmpty(), osg::TexGenChunkBase::createEmpty(), osg::SwitchMaterialBase::createEmpty(), osg::SwitchBase::createEmpty(), osg::SurfaceBase::createEmpty(), osg::StringAttributeMapBase::createEmpty(), osg::StereoBufferViewportBase::createEmpty(), osg::StencilChunkBase::createEmpty(), osg::StateSortingGroupBase::createEmpty(), osg::StateBase::createEmpty(), osg::SpotLightBase::createEmpty(), osg::SortFirstWindowBase::createEmpty(), osg::SolidBackgroundBase::createEmpty(), osg::SlicesBase::createEmpty(), osg::SkyBackgroundBase::createEmpty(), osg::SimpleTexturedMaterialBase::createEmpty(), osg::SimpleStatisticsForegroundBase::createEmpty(), osg::SimpleMaterialBase::createEmpty(), osg::SHLParameterChunkBase::createEmpty(), osg::SHLChunkBase::createEmpty(), osg::ShearedStereoCameraDecoratorBase::createEmpty(), osg::ShaderParameterVec4fBase::createEmpty(), osg::ShaderParameterVec3fBase::createEmpty(), osg::ShaderParameterVec2fBase::createEmpty(), osg::ShaderParameterStringBase::createEmpty(), osg::ShaderParameterRealBase::createEmpty(), osg::ShaderParameterMVec4fBase::createEmpty(), osg::ShaderParameterMVec3fBase::createEmpty(), osg::ShaderParameterMVec2fBase::createEmpty(), osg::ShaderParameterMRealBase::createEmpty(), osg::ShaderParameterMMatrixBase::createEmpty(), osg::ShaderParameterMIntBase::createEmpty(), osg::ShaderParameterMatrixBase::createEmpty(), osg::ShaderParameterIntBase::createEmpty(), osg::ShaderParameterBoolBase::createEmpty(), osg::ScreenGroupBase::createEmpty(), osg::SClipPlaneChunkBase::createEmpty(), osg::ResolutionDisplayFilterBase::createEmpty(), osg::RenderOptionsBase::createEmpty(), osg::RegisterCombinersChunkBase::createEmpty(), osg::QTWindowBase::createEmpty(), osg::ProxyGroupBase::createEmpty(), osg::ProjectionCameraDecoratorBase::createEmpty(), osg::PolygonForegroundBase::createEmpty(), osg::PolygonChunkBase::createEmpty(), osg::PolygonBackgroundBase::createEmpty(), osg::PointLightBase::createEmpty(), osg::PointChunkBase::createEmpty(), osg::PhongMaterialBase::createEmpty(), osg::PerspectiveCameraBase::createEmpty(), osg::PassiveWindowBase::createEmpty(), osg::PassiveViewportBase::createEmpty(), osg::PassiveBackgroundBase::createEmpty(), osg::ParticlesBase::createEmpty(), osg::OrthographicCameraBase::createEmpty(), osg::OffCenterPerspectiveCameraBase::createEmpty(), osg::MultiPassMaterialBase::createEmpty(), osg::MultiDisplayWindowBase::createEmpty(), osg::MatrixCameraDecoratorBase::createEmpty(), osg::MatrixCameraBase::createEmpty(), osg::MaterialPoolBase::createEmpty(), osg::MaterialGroupBase::createEmpty(), osg::MaterialChunkBase::createEmpty(), osg::LogicOpChunkBase::createEmpty(), osg::LineChunkBase::createEmpty(), osg::LightModelChunkBase::createEmpty(), osg::LightEnvBase::createEmpty(), osg::LightChunkBase::createEmpty(), osg::InverseTransformBase::createEmpty(), osg::InlineBase::createEmpty(), osg::ImageForegroundBase::createEmpty(), osg::ImageBase::createEmpty(), osg::ImageBackgroundBase::createEmpty(), osg::GroupBase::createEmpty(), osg::GraphicStatisticsForegroundBase::createEmpty(), osg::GradientBackgroundBase::createEmpty(), osg::GrabForegroundBase::createEmpty(), osg::GLUTWindowBase::createEmpty(), osg::GeometryBase::createEmpty(), osg::FresnelMaterialBase::createEmpty(), osg::FragmentProgramChunkBase::createEmpty(), osg::FileGrabForegroundBase::createEmpty(), osg::FCPtrAttributeMapBase::createEmpty(), osg::FBOViewportBase::createEmpty(), osg::FatBorderChunkBase::createEmpty(), osg::DVRVolumeTextureBase::createEmpty(), osg::DVRVolumeBase::createEmpty(), osg::DVRSimpleShaderBase::createEmpty(), osg::DVRSimpleLUTShaderBase::createEmpty(), osg::DVRMtexLUTShaderBase::createEmpty(), osg::DVRLookupTableBase::createEmpty(), osg::DVRIsoSurfaceBase::createEmpty(), osg::DVRIsoShaderBase::createEmpty(), osg::DVRGeometryBase::createEmpty(), osg::DVRClipObjectsBase::createEmpty(), osg::DVRClipGeometryBase::createEmpty(), osg::DVRAppearanceBase::createEmpty(), osg::DistortionDisplayFilterBase::createEmpty(), osg::DistanceLODBase::createEmpty(), osg::DisplayFilterForegroundBase::createEmpty(), osg::DisplayCalibrationBase::createEmpty(), osg::DirectionalLightBase::createEmpty(), osg::DepthClearBackgroundBase::createEmpty(), osg::DepthChunkBase::createEmpty(), osg::CubeTextureChunkBase::createEmpty(), osg::ComponentTransformBase::createEmpty(), osg::ColorMaskChunkBase::createEmpty(), osg::ColorDisplayFilterBase::createEmpty(), osg::ColorBufferViewportBase::createEmpty(), osg::ClusterWindowBase::createEmpty(), osg::ClipPlaneChunkBase::createEmpty(), osg::ClipPlaneBase::createEmpty(), osg::ChunkMaterialBase::createEmpty(), osg::BlendChunkBase::createEmpty(), osg::BillboardBase::createEmpty(), osg::XWindowBase::shallowCopy(), osg::WIN32WindowBase::shallowCopy(), osg::ViewportBase::shallowCopy(), osg::VertexProgramChunkBase::shallowCopy(), osg::TwoSidedLightingChunkBase::shallowCopy(), osg::TransformChunkBase::shallowCopy(), osg::TransformBase::shallowCopy(), osg::TileCameraDecoratorBase::shallowCopy(), osg::TextureTransformChunkBase::shallowCopy(), osg::TextureGrabForegroundBase::shallowCopy(), osg::TextureGrabBackgroundBase::shallowCopy(), osg::TextureChunkBase::shallowCopy(), osg::TextureBackgroundBase::shallowCopy(), osg::TexGenChunkBase::shallowCopy(), osg::SwitchMaterialBase::shallowCopy(), osg::SwitchBase::shallowCopy(), osg::SurfaceBase::shallowCopy(), osg::StringAttributeMapBase::shallowCopy(), osg::StereoBufferViewportBase::shallowCopy(), osg::StencilChunkBase::shallowCopy(), osg::StateSortingGroupBase::shallowCopy(), osg::StateBase::shallowCopy(), osg::SpotLightBase::shallowCopy(), osg::SortFirstWindowBase::shallowCopy(), osg::SolidBackgroundBase::shallowCopy(), osg::SlicesBase::shallowCopy(), osg::SkyBackgroundBase::shallowCopy(), osg::SimpleTexturedMaterialBase::shallowCopy(), osg::SimpleStatisticsForegroundBase::shallowCopy(), osg::SimpleMaterialBase::shallowCopy(), osg::SHLParameterChunkBase::shallowCopy(), osg::SHLChunkBase::shallowCopy(), osg::ShearedStereoCameraDecoratorBase::shallowCopy(), osg::ShaderParameterVec4fBase::shallowCopy(), osg::ShaderParameterVec3fBase::shallowCopy(), osg::ShaderParameterVec2fBase::shallowCopy(), osg::ShaderParameterStringBase::shallowCopy(), osg::ShaderParameterRealBase::shallowCopy(), osg::ShaderParameterMVec4fBase::shallowCopy(), osg::ShaderParameterMVec3fBase::shallowCopy(), osg::ShaderParameterMVec2fBase::shallowCopy(), osg::ShaderParameterMRealBase::shallowCopy(), osg::ShaderParameterMMatrixBase::shallowCopy(), osg::ShaderParameterMIntBase::shallowCopy(), osg::ShaderParameterMatrixBase::shallowCopy(), osg::ShaderParameterIntBase::shallowCopy(), osg::ShaderParameterBoolBase::shallowCopy(), osg::ScreenGroupBase::shallowCopy(), osg::SClipPlaneChunkBase::shallowCopy(), osg::ResolutionDisplayFilterBase::shallowCopy(), osg::RenderOptionsBase::shallowCopy(), osg::RegisterCombinersChunkBase::shallowCopy(), osg::QTWindowBase::shallowCopy(), osg::ProxyGroupBase::shallowCopy(), osg::ProjectionCameraDecoratorBase::shallowCopy(), osg::PolygonForegroundBase::shallowCopy(), osg::PolygonChunkBase::shallowCopy(), osg::PolygonBackgroundBase::shallowCopy(), osg::PointLightBase::shallowCopy(), osg::PointChunkBase::shallowCopy(), osg::PhongMaterialBase::shallowCopy(), osg::PerspectiveCameraBase::shallowCopy(), osg::PassiveWindowBase::shallowCopy(), osg::PassiveViewportBase::shallowCopy(), osg::PassiveBackgroundBase::shallowCopy(), osg::ParticlesBase::shallowCopy(), osg::OrthographicCameraBase::shallowCopy(), osg::OffCenterPerspectiveCameraBase::shallowCopy(), osg::MultiPassMaterialBase::shallowCopy(), osg::MultiDisplayWindowBase::shallowCopy(), osg::MatrixCameraDecoratorBase::shallowCopy(), osg::MatrixCameraBase::shallowCopy(), osg::MaterialPoolBase::shallowCopy(), osg::MaterialGroupBase::shallowCopy(), osg::MaterialChunkBase::shallowCopy(), osg::LogicOpChunkBase::shallowCopy(), osg::LineChunkBase::shallowCopy(), osg::LightModelChunkBase::shallowCopy(), osg::LightEnvBase::shallowCopy(), osg::LightChunkBase::shallowCopy(), osg::InverseTransformBase::shallowCopy(), osg::InlineBase::shallowCopy(), osg::ImageForegroundBase::shallowCopy(), osg::ImageBase::shallowCopy(), osg::ImageBackgroundBase::shallowCopy(), osg::GroupBase::shallowCopy(), osg::GraphicStatisticsForegroundBase::shallowCopy(), osg::GradientBackgroundBase::shallowCopy(), osg::GrabForegroundBase::shallowCopy(), osg::GLUTWindowBase::shallowCopy(), osg::GeometryBase::shallowCopy(), osg::FresnelMaterialBase::shallowCopy(), osg::FragmentProgramChunkBase::shallowCopy(), osg::FileGrabForegroundBase::shallowCopy(), osg::FCPtrAttributeMapBase::shallowCopy(), osg::FBOViewportBase::shallowCopy(), osg::FatBorderChunkBase::shallowCopy(), osg::DVRVolumeTextureBase::shallowCopy(), osg::DVRVolumeBase::shallowCopy(), osg::DVRSimpleShaderBase::shallowCopy(), osg::DVRSimpleLUTShaderBase::shallowCopy(), osg::DVRMtexLUTShaderBase::shallowCopy(), osg::DVRLookupTableBase::shallowCopy(), osg::DVRIsoSurfaceBase::shallowCopy(), osg::DVRIsoShaderBase::shallowCopy(), osg::DVRGeometryBase::shallowCopy(), osg::DVRClipObjectsBase::shallowCopy(), osg::DVRClipGeometryBase::shallowCopy(), osg::DVRAppearanceBase::shallowCopy(), osg::DistortionDisplayFilterBase::shallowCopy(), osg::DistanceLODBase::shallowCopy(), osg::DisplayFilterForegroundBase::shallowCopy(), osg::DisplayCalibrationBase::shallowCopy(), osg::DirectionalLightBase::shallowCopy(), osg::DepthClearBackgroundBase::shallowCopy(), osg::DepthChunkBase::shallowCopy(), osg::CubeTextureChunkBase::shallowCopy(), osg::ComponentTransformBase::shallowCopy(), osg::ColorMaskChunkBase::shallowCopy(), osg::ColorDisplayFilterBase::shallowCopy(), osg::ColorBufferViewportBase::shallowCopy(), osg::ClusterWindowBase::shallowCopy(), osg::ClipPlaneChunkBase::shallowCopy(), osg::ClipPlaneBase::shallowCopy(), osg::ChunkMaterialBase::shallowCopy(), osg::BlendChunkBase::shallowCopy(), and osg::BillboardBase::shallowCopy().
00141 { 00142 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00143 00144 UInt8 *pTmp; 00145 00146 result._containerSize = sizeof(ObjectType); 00147 00148 pTmp = 00149 static_cast<UInt8 *>(operator new( 00150 sizeof(Int32) + // ReferenceCount 00151 sizeof(UInt32) + // ContainerId 00152 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00153 00154 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00155 00156 pTmp += sizeof(Int32); 00157 00158 result._storeP = (pTmp + sizeof(UInt32)); 00159 00160 #ifdef OSG_DEBUG_FCPTR 00161 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00162 #endif 00163 00164 *(reinterpret_cast<UInt32 *>(pTmp)) = 00165 FieldContainerFactory::the()->registerFieldContainer(result); 00166 00167 Thread::getCurrentChangeList()->addCreated( 00168 *(reinterpret_cast<UInt32 *>(pTmp))); 00169 00170 pTmp += sizeof(UInt32); 00171 00172 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00173 00174 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00175 { 00176 pTmp = 00177 reinterpret_cast<UInt8 *>(new (pTmp) ObjectType(*prototypeP)); 00178 00179 pTmp += sizeof(ObjectType); 00180 } 00181 00182 result->onCreate(prototypeP); 00183 00184 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00185 { 00186 aObject[i].onCreateAspect(aObject, prototypeP); 00187 } 00188 00189 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00190 00191 fprintf(stderr, "GV_MEM_FC_DBG : (%u) cc (%p|%u)\n", 00192 Thread::getAspect(), 00193 result._storeP, 00194 // ObjectType::getClassType().getCName(), 00195 ObjectType::getClassType().getId()); 00196 #endif 00197 00198 #ifdef OSG_DEBUG_TYPED_FCPTR 00199 result.updateTypedStore(); 00200 #endif 00201 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result | ) | [inline, static, protected, inherited] |
Definition at line 204 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
00205 { 00206 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00207 00208 UInt8 *pTmp; 00209 00210 result._containerSize = sizeof(ObjectType); 00211 00212 pTmp = 00213 static_cast<UInt8 *>(operator new( 00214 sizeof(Int32) + // ReferenceCount 00215 sizeof(UInt32) + // ContainerId 00216 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00217 00218 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00219 00220 pTmp += sizeof(Int32); 00221 00222 result._storeP = (pTmp + sizeof(UInt32)); 00223 00224 #ifdef OSG_DEBUG_FCPTR 00225 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00226 #endif 00227 00228 *(reinterpret_cast<UInt32 *>(pTmp)) = 00229 FieldContainerFactory::the()->registerFieldContainer(result); 00230 00231 Thread::getCurrentChangeList()->addCreated( 00232 *(reinterpret_cast<UInt32 *>(pTmp))); 00233 00234 pTmp += sizeof(UInt32); 00235 00236 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00237 00238 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00239 { 00240 pTmp = reinterpret_cast<UInt8 *>(new (pTmp) ObjectType()); 00241 00242 pTmp += sizeof(ObjectType); 00243 } 00244 00245 result->onCreate(); 00246 00247 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00248 { 00249 aObject[i].onCreateAspect(aObject); 00250 } 00251 00252 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00253 fprintf(stderr, "GV_MEM_FC_DBG : (%u) c (%p|%u)\n", 00254 Thread::getAspect(), 00255 result._storeP, 00256 // ObjectType::getClassType().getCName(), 00257 ObjectType::getClassType().getId()); 00258 #endif 00259 00260 #ifdef OSG_DEBUG_TYPED_FCPTR 00261 result.updateTypedStore(); 00262 #endif 00263 }
| void osg::FieldContainer::beginEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
| void osg::FieldContainer::endEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
Definition at line 291 of file OSGFieldContainerImpl.inl.
References osg::endEditCP().
00292 { 00293 FieldContainerPtr tmpPtr(this); 00294 endEditCP(tmpPtr, whichField); 00295 }
| void osg::FieldContainer::onCreate | ( | const FieldContainer * | source = NULL |
) | [inline, protected, inherited] |
Definition at line 318 of file OSGFieldContainerImpl.inl.
Referenced by osg::ShaderParameterChunk::onCreate().
| void osg::FieldContainer::onCreateAspect | ( | const FieldContainer * | aspect0, | |
| const FieldContainer * | source = NULL | |||
| ) | [inline, protected, inherited] |
friend class FieldContainer [friend] |
Reimplemented from osg::StringAttributeMapBase.
Definition at line 117 of file OSGStringAttributeMap.h.
friend class StringAttributeMapBase [friend] |
Definition at line 118 of file OSGStringAttributeMap.h.
const osg::BitVector StringAttributeMapBase::KeysFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << StringAttributeMapBase::KeysFieldId)
Definition at line 100 of file OSGStringAttributeMapBase.h.
Referenced by osg::StringAttributeMapBase::copyFromBin(), osg::StringAttributeMapBase::copyToBin(), osg::StringAttributeMapBase::executeSyncImpl(), and osg::StringAttributeMapBase::getBinSize().
const osg::BitVector StringAttributeMapBase::ValuesFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << StringAttributeMapBase::ValuesFieldId)
Definition at line 101 of file OSGStringAttributeMapBase.h.
Referenced by osg::StringAttributeMapBase::copyFromBin(), osg::StringAttributeMapBase::copyToBin(), osg::StringAttributeMapBase::executeSyncImpl(), and osg::StringAttributeMapBase::getBinSize().
const osg::BitVector StringAttributeMapBase::MTInfluenceMask [static, inherited] |
Initial value:
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::FieldContainer.
Definition at line 104 of file OSGStringAttributeMapBase.h.
std::string StringAttributeMapBase::_mfKeys [protected, inherited] |
Definition at line 164 of file OSGStringAttributeMapBase.h.
Referenced by osg::StringAttributeMapBase::copyFromBin(), osg::StringAttributeMapBase::copyToBin(), osg::StringAttributeMapBase::executeSyncImpl(), osg::StringAttributeMapBase::getBinSize(), osg::StringAttributeMapBase::getKeys(), and osg::StringAttributeMapBase::getMFKeys().
std::string StringAttributeMapBase::_mfValues [protected, inherited] |
Definition at line 165 of file OSGStringAttributeMapBase.h.
Referenced by osg::StringAttributeMapBase::copyFromBin(), osg::StringAttributeMapBase::copyToBin(), osg::StringAttributeMapBase::executeSyncImpl(), osg::StringAttributeMapBase::getBinSize(), osg::StringAttributeMapBase::getMFValues(), and osg::StringAttributeMapBase::getValues().
const BitVector Attachment::InternalFieldMask = (1 << Attachment::InternalFieldId) [static, inherited] |
Definition at line 93 of file OSGAttachmentImpl.h.
Referenced by osg::Attachment::copyFromBin(), osg::Attachment::copyToBin(), osg::Attachment::executeSyncImpl(), and osg::Attachment::getBinSize().
const BitVector Attachment::ParentsFieldMask = (1 << Attachment::ParentsFieldId) [static, inherited] |
Definition at line 94 of file OSGAttachmentImpl.h.
Referenced by osg::SharePtrGraphOp::addAttachmentParent(), osg::SharePtrGraphOp::clearAttachmentParent(), osg::SharePtrGraphOp::compareFCs(), osg::Attachment::copyFromBin(), osg::Attachment::copyToBin(), osg::Attachment::executeSyncImpl(), osg::Attachment::getBinSize(), osg::Surface::onDestroy(), osg::Geometry::onDestroy(), osg::Particles::setColors(), osg::Geometry::setColors(), osg::Surface::setControlPoints(), osg::Geometry::setIndices(), osg::Geometry::setLengths(), osg::Particles::setNormals(), osg::Geometry::setNormals(), osg::Particles::setPositions(), osg::Geometry::setPositions(), osg::Geometry::setSecondaryColors(), osg::Particles::setSecPositions(), osg::Geometry::setTexCoords(), osg::Geometry::setTexCoords1(), osg::Geometry::setTexCoords2(), osg::Geometry::setTexCoords3(), osg::Geometry::setTexCoords4(), osg::Geometry::setTexCoords5(), osg::Geometry::setTexCoords6(), osg::Geometry::setTexCoords7(), osg::Surface::setTextureControlPoints(), osg::Geometry::setTypes(), osg::AttachmentContainer::subAttachment(), osg::AttachmentContainer::~AttachmentContainer(), and osg::Particles::~Particles().
SFBool osg::Attachment::_sfInternal [protected, inherited] |
Definition at line 165 of file OSGAttachmentImpl.h.
Referenced by osg::Attachment::copyFromBin(), osg::Attachment::copyToBin(), osg::Attachment::executeSyncImpl(), osg::Attachment::getBinSize(), osg::Attachment::getInternal(), osg::Attachment::getSFInternal(), and osg::Attachment::setInternal().
MFFieldContainerPtr osg::Attachment::_parents [protected, inherited] |
Definition at line 166 of file OSGAttachmentImpl.h.
Referenced by osg::Attachment::addParent(), osg::Attachment::copyFromBin(), osg::Attachment::copyToBin(), osg::Attachment::dump(), osg::Attachment::executeSyncImpl(), osg::Attachment::findParent(), osg::Attachment::getBinSize(), osg::Attachment::getMFParents(), osg::Attachment::getParents(), and osg::Attachment::subParent().
const BitVector osg::FieldContainer::NextFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << NextFieldId)
Definition at line 75 of file OSGFieldContainerImpl.h.
const bool osg::FieldContainer::isNodeCore = false [static, inherited] |
UInt32 osg::FieldContainer::_shares [protected, inherited] |
Definition at line 199 of file OSGFieldContainerImpl.h.
1.5.5