#include <OSGAttachmentPtrImpl.h>
Inheritance diagram for osg::AttachmentPtr:

Public Types | |
| typedef Attachment | StoredObjectType |
| typedef AttachmentPtr | ObjectType |
| typedef FieldContainerPtr | Inherited |
| typedef UInt8 *FieldContainerPtrBase::* | unspecified_bool_type |
Public Member Functions | |
| OSG_PROPERTY_DECL (Pointer) | |
Parent Field Pos | |
| *void | setParentFieldPos (UInt16 uiParentEPos) |
| UInt16 | getParentFieldPos (void) const |
Get Container Information | |
| *Int32 | getRefCount (void) const |
| UInt32 | getFieldContainerId (void) const |
| UInt16 | getContainerSize (void) const |
Get Container C++ Pointer | |
| *FieldContainer * | getBaseCPtr (void) const |
| FieldContainer * | getAspectCPtr (UInt32 uiAspectId) const |
Comparison | |
| *bool | operator< (const NullFieldContainerPtr &) const |
| bool | operator< (const FieldContainerPtrBase &) const |
| bool | operator== (const NullFieldContainerPtr &other) const |
| bool | operator== (const FieldContainerPtrBase &other) const |
| bool | operator!= (const NullFieldContainerPtr &other) const |
| bool | operator!= (const FieldContainerPtrBase &other) const |
| bool | operator! (void) const |
| operator unspecified_bool_type () const | |
Dump | |
| *void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
Constructors | |
| * | AttachmentPtr (void) |
| AttachmentPtr (const AttachmentPtr &source) | |
| AttachmentPtr (const NullFieldContainerPtr &source) | |
Destructor | |
| * | ~AttachmentPtr (void) |
Container Access | |
| *Attachment * | operator-> (void) |
| Attachment * | operator-> (void) const |
| Attachment & | operator * (void) |
| Attachment & | operator * (void) const |
| Attachment * | getCPtr (void) |
| Attachment * | getCPtr (void) const |
Assignment | |
| *void | operator= (const AttachmentPtr &source) |
| void | operator= (const NullFieldContainerPtr &source) |
Container Constructors | |
| * | AttachmentPtr (const Attachment &source) |
| Container Constructor, used to work around MS Bugs, use them only if you really now what you are doing ;-). | |
| AttachmentPtr (const Attachment *source) | |
| Container Constructor, used to work around MS Bugs, use them only if you really now what you are doing ;-). | |
Parent Field Pos | |
| *void | setParentFieldPos (UInt16 uiParentEPos) |
| UInt16 | getParentFieldPos (void) const |
Get Container Information | |
| *Int32 | getRefCount (void) const |
| UInt32 | getFieldContainerId (void) const |
| UInt16 | getContainerSize (void) const |
Get Container C++ Pointer | |
| *FieldContainer * | getBaseCPtr (void) const |
| FieldContainer * | getAspectCPtr (UInt32 uiAspectId) const |
Comparison | |
| *bool | operator< (const NullFieldContainerPtr &) const |
| bool | operator< (const FieldContainerPtrBase &) const |
| bool | operator== (const NullFieldContainerPtr &other) const |
| bool | operator== (const FieldContainerPtrBase &other) const |
| bool | operator!= (const NullFieldContainerPtr &other) const |
| bool | operator!= (const FieldContainerPtrBase &other) const |
| bool | operator! (void) const |
| operator unspecified_bool_type () const | |
Dump | |
| *void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
Static Public Member Functions | |
dcast | |
| template<class InTypeT> | |
| *static AttachmentPtr | dcast (const InTypeT oIn) |
Static Public Attributes | |
| static const UInt16 | InvalidParentEPos = 0xFFFF |
Protected Member Functions | |
MT Edit | |
| *void | beginEdit (BitVector whichField, UInt32 origin) const |
| void | endEdit (BitVector whichField, UInt32 origin) const |
| void | changed (BitVector whichField, UInt32 origin) const |
| void | endEditNotChanged (BitVector whichField, UInt32 origin) const |
Sync | |
| *void | executeSync (UInt32 uiFromAspect, UInt32 uiToAspect, BitVector whichField) |
Get Memory Locations | |
| *Int32 * | getRefCountP (void) |
| Int32 * | getRefCountP (void) const |
| UInt32 * | getIdP (void) |
| UInt32 * | getIdP (void) const |
| UInt8 * | getFirstElemP (void) |
| UInt8 * | getFirstElemP (void) const |
| UInt8 * | getElemP (UInt32 uiElemNum) |
| UInt8 * | getElemP (UInt32 uiElemNum) const |
Get Memory Offsets | |
| *Int32 | getRefCountOff (void) const |
| Int32 | getIdOff (void) const |
| Int32 | getFirstElemOff (void) const |
| Int32 | getElemOff (UInt32 uiElemNum) const |
Reference Counting | |
| *void | addRef (void) const |
| void | subRef (void) const |
| void | deleteContainers (void) const |
Helper | |
| *void | setNull (void) |
Internal Constructors | |
| * | AttachmentPtr (const Attachment *source, const UInt16 uiSize, const UInt16 uiParentPos) |
MT Edit | |
| *void | beginEdit (BitVector whichField, UInt32 origin) const |
| void | endEdit (BitVector whichField, UInt32 origin) const |
| void | changed (BitVector whichField, UInt32 origin) const |
| void | endEditNotChanged (BitVector whichField, UInt32 origin) const |
Sync | |
| *void | executeSync (UInt32 uiFromAspect, UInt32 uiToAspect, BitVector whichField) |
Get Memory Locations | |
| *Int32 * | getRefCountP (void) |
| Int32 * | getRefCountP (void) const |
| UInt32 * | getIdP (void) |
| UInt32 * | getIdP (void) const |
| UInt8 * | getFirstElemP (void) |
| UInt8 * | getFirstElemP (void) const |
| UInt8 * | getElemP (UInt32 uiElemNum) |
| UInt8 * | getElemP (UInt32 uiElemNum) const |
Get Memory Offsets | |
| *Int32 | getRefCountOff (void) const |
| Int32 | getIdOff (void) const |
| Int32 | getFirstElemOff (void) const |
| Int32 | getElemOff (UInt32 uiElemNum) const |
Reference Counting | |
| *void | addRef (void) const |
| void | subRef (void) const |
| void | deleteContainers (void) const |
Helper | |
| *void | setNull (void) |
Static Protected Member Functions | |
Intialization / Termination | |
| *static bool | initialize (void) |
| static bool | terminate (void) |
Intialization / Termination | |
| *static bool | initialize (void) |
| static bool | terminate (void) |
Protected Attributes | |
Member | |
| *UInt16 | _containerSize |
| UInt16 | _uiParentEPos |
| UInt8 * | _storeP |
Member | |
| *UInt16 | _containerSize |
| UInt16 | _uiParentEPos |
| UInt8 * | _storeP |
Friends | |
| class | FieldContainer |
Definition at line 71 of file OSGAttachmentPtrImpl.h.
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 77 of file OSGAttachmentPtrImpl.h. |
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 78 of file OSGAttachmentPtrImpl.h. |
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 80 of file OSGAttachmentPtrImpl.h. |
|
|
Definition at line 99 of file OSGFieldContainerPtrImpl.h. |
|
|
Definition at line 54 of file OSGAttachmentPtrImpl.inl. Referenced by dcast(). 00054 : 00055 Inherited() 00056 { 00057 }
|
|
|
Definition at line 60 of file OSGAttachmentPtrImpl.inl. 00060 : 00061 00062 Inherited(source) 00063 { 00064 }
|
|
|
Definition at line 67 of file OSGAttachmentPtrImpl.inl. 00067 : 00068 00069 Inherited(source) 00070 { 00071 }
|
|
|
Definition at line 77 of file OSGAttachmentPtrImpl.inl.
|
|
|
Definition at line 55 of file OSGAttachmentPtr.cpp. 00055 : 00056 00057 Inherited(source) 00058 { 00059 }
|
|
|
Definition at line 61 of file OSGAttachmentPtr.cpp. 00061 : 00062 00063 Inherited(source) 00064 { 00065 }
|
|
||||||||||||||||
|
Definition at line 67 of file OSGAttachmentPtr.cpp. 00069 : 00070 00071 Inherited(source, uiSize, uiParentPos) 00072 { 00073 }
|
|
||||||||||
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 85 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtrBase::getElemP(), and osg::FieldContainerPtr::operator->(). 00086 { 00087 #if 0 00088 return (Attachment *) getElemP(Thread::getAspect()); 00089 #else 00090 return (Attachment *) Inherited::operator ->(); 00091 #endif 00092 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 95 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtrBase::getElemP(), and osg::FieldContainerPtr::operator->(). 00096 { 00097 #if 0 00098 return (Attachment *) getElemP(Thread::getAspect()); 00099 #else 00100 return (Attachment *) Inherited::operator ->(); 00101 #endif 00102 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 105 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtrBase::getElemP(), and osg::operator *(). 00106 { 00107 #if 0 00108 return *((Attachment *) getElemP(Thread::getAspect())); 00109 #else 00110 return (Attachment &) Inherited::operator *(); 00111 #endif 00112 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 115 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtrBase::getElemP(), and osg::operator *(). 00116 { 00117 #if 0 00118 return *((Attachment *) getElemP(Thread::getAspect())); 00119 #else 00120 return (Attachment &) Inherited::operator *(); 00121 #endif 00122 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 125 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtr::getCPtr(), and osg::FieldContainerPtrBase::getElemP(). Referenced by osg::State::changeFrom(), osg::SkyBackground::drawFace(), and osg::RenderAction::dropLight(). 00126 { 00127 #if 0 00128 return (Attachment *) getElemP(Thread::getAspect()); 00129 #else 00130 return (Attachment *) Inherited::getCPtr(); 00131 #endif 00132 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 135 of file OSGAttachmentPtrImpl.inl. References osg::PThreadBase::getAspect(), osg::FieldContainerPtr::getCPtr(), and osg::FieldContainerPtrBase::getElemP(). 00136 { 00137 #if 0 00138 return (Attachment *) getElemP(Thread::getAspect()); 00139 #else 00140 return (Attachment *) Inherited::getCPtr(); 00141 #endif 00142 }
|
|
|
Definition at line 148 of file OSGAttachmentPtrImpl.inl. 00149 { 00150 // copy parts inherited from parent 00151 *(static_cast<Inherited *>(this)) = source; 00152 }
|
|
|
Reimplemented from osg::FieldContainerPtr. Definition at line 155 of file OSGAttachmentPtrImpl.inl. 00156 { 00157 // copy parts inherited from parent 00158 *(static_cast<Inherited *>(this)) = source; 00159 }
|
|
|
|
|
||||||||||||
|
Definition at line 554 of file OSGFieldContainerPtrImpl.inl. References osg::PThreadBase::getAspect(), and osg::FieldContainerPtrBase::getContainerSize(). 00556 { 00557 #ifdef OSG_FIXED_MFIELDSYNC 00558 (*this)->execBeginEdit(whichField, 00559 Thread::getAspect(), 00560 getContainerSize()); 00561 #endif 00562 }
|
|
||||||||||||
|
Definition at line 578 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtr::changed(), and osg::FieldContainerPtr::endEditNotChanged(). 00579 { 00580 endEditNotChanged(whichField, origin); 00581 changed(whichField, origin); 00582 }
|
|
||||||||||||
|
Definition at line 572 of file OSGFieldContainerPtrImpl.inl. Referenced by osg::FieldContainerPtr::endEdit().
|
|
||||||||||||
|
Definition at line 565 of file OSGFieldContainerPtrImpl.inl. References osg::ChangeList::addChanged(), and osg::PThreadBase::getCurrentChangeList(). Referenced by osg::FieldContainerPtr::endEdit(). 00567 { 00568 Thread::getCurrentChangeList()->addChanged(*this, whichField); 00569 }
|
|
|
|
Definition at line 207 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_uiParentEPos. 00208 { 00209 return _uiParentEPos; 00210 }
|
|
|
Definition at line 216 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP, and osg::FieldContainerPtrBase::getRefCountP(). 00217 { 00218 if(_storeP == NULL) 00219 return 0; 00220 00221 return (*getRefCountP()); 00222 }
|
|
|
|
Definition at line 231 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_containerSize. Referenced by osg::FieldContainerPtr::beginEdit(), and osg::FieldContainerPtrBase::executeSync(). 00232 { 00233 return _containerSize; 00234 }
|
|
|
Definition at line 237 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::getFirstElemP(). Referenced by osg::FieldTraitsRecurseMapper< FieldContainerPtr, false >::putToString(). 00238 { 00239 return reinterpret_cast<FieldContainer *>(getFirstElemP()); 00240 }
|
|
|
Definition at line 243 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::getElemP(). Referenced by osg::QFCItem::expand(), osg::QFieldViewBase::getFieldPtr(), osg::QFieldEditorBase::getFieldPtr(), osg::getParentsField(), and osg::QFCItem::setup(). 00244 { 00245 return reinterpret_cast<FieldContainer *>(getElemP(uiAspectId)); 00246 }
|
|
|
Definition at line 281 of file OSGFieldContainerPtrImpl.inl.
|
|
|
Definition at line 303 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00305 { 00306 return _storeP < other._storeP; 00307 }
|
|
|
Definition at line 288 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00290 { 00291 return _storeP == NULL; 00292 }
|
|
|
Definition at line 310 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00312 { 00313 return _storeP == other._storeP; 00314 }
|
|
|
Definition at line 295 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00297 { 00298 return _storeP != NULL; 00299 }
|
|
|
Definition at line 317 of file OSGFieldContainerPtrImpl.inl.
|
|
|
Definition at line 324 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00325 { 00326 return _storeP == NULL; 00327 }
|
|
|
Definition at line 330 of file OSGFieldContainerPtrImpl.inl. References osg::FieldContainerPtrBase::_storeP. 00331 { 00332 return !*this ? 0 : &FieldContainerPtrBase::_storeP; 00333 }
|
|
||||||||||||
|
Definition at line 82 of file OSGFieldContainerPtr.cpp. References osg::FieldContainerPtrBase::_storeP, osg::FieldContainerPtrBase::getFirstElemP(), osg::FieldContainerPtrBase::getIdP(), osg::FieldContainerPtrBase::getRefCountP(), osg::indentLog(), PLOG, and osg::FCDumpFlags::RefCount. Referenced by osg::DVRVolumeTexture::changed(), osg::createComposedImage(), osg::SimpleMaterial::dump(), osg::Geometry::dump(), osg::DVRVolume::dump(), and osg::DVRLookupTable::dump(). 00084 { 00085 if(this != NULL && _storeP != NULL) 00086 { 00087 indentLog(uiIndent, PLOG); 00088 PLOG << "FCPtr Dump :" << std::endl; 00089 00090 uiIndent += 4; 00091 00092 indentLog(uiIndent, PLOG); 00093 PLOG << "Id : " << std::dec << (*(getIdP())) << std::endl; 00094 00095 indentLog(uiIndent, PLOG); 00096 PLOG << "Storage : " 00097 << std::hex << (UInt32 *)getFirstElemP() 00098 << std::endl; 00099 00100 if(bvFlags & FCDumpFlags::RefCount) 00101 { 00102 indentLog(uiIndent, PLOG); 00103 PLOG << "RefCount : " << *(getRefCountP()) << std::endl; 00104 } 00105 00106 // dumpContent(); 00107 } 00108 else 00109 { 00110 PLOG << "FCPtr Dump : (NULL)" << std::endl; 00111 } 00112 }
|
|
|
Definition at line 117 of file OSGFieldContainerPtr.cpp. References osg::FieldContainerPtrBase::_pRefCountLock, osg::addRefP(), osg::ThreadManager::getLockPool(), SINFO, and osg::ThreadManager::the(). Referenced by osg::DVRVolume::draw(), |