#include <OSGShaderParameterMIntBase.h>

TypeId's | |
| enum | SHPType { SHPTypeUnknown = 0, SHPTypeBool, SHPTypeInt, SHPTypeReal, SHPTypeVec2s, SHPTypeVec3s, SHPTypeVec4s, SHPTypeVec2f, SHPTypeVec3f, SHPTypeVec4f, SHPTypeMatrix, SHPTypeString, SHPTypeMBool, SHPTypeMInt, SHPTypeMReal, SHPTypeMVec2s, SHPTypeMVec3s, SHPTypeMVec4s, SHPTypeMVec2f, SHPTypeMVec3f, SHPTypeMVec4f, SHPTypeMMatrix, SHPTypeMString } |
| enum | SHPFlags { SHPFlagNone = 0, SHPFlagUpdate = 1 } |
| SHPType | getTypeId (void) |
| GLint | getLocation (void) |
| void | setLocation (GLint location) |
| UInt32 | getFlags (void) |
| void | setFlags (UInt32 flags) |
Public Types | |
| enum | { ValueFieldId = Inherited::NextFieldId, NextFieldId = ValueFieldId + 1 } |
| typedef ShaderParameterMIntPtr | Ptr |
| enum | { NameFieldId = Inherited::NextFieldId, NextFieldId = NameFieldId + 1 } |
| enum | { AttachmentsFieldId = Inherited::NextFieldId, NextFieldId = AttachmentsFieldId + 1 } |
| enum | { NextFieldId = 1 } |
Public Member Functions | |
FieldContainer Get | |
| virtual FieldContainerType & | getType (void) |
| virtual const FieldContainerType & | getType (void) const |
| virtual UInt32 | getContainerSize (void) const |
Field Get | |
| MFInt32 * | getMFValue (void) |
| Get the ShaderParameterMInt::_mfValue field. | |
| Int32 & | getValue (const UInt32 index) |
| Get the value of the index element the ShaderParameterMInt::_mfValue field. | |
| MFInt32 & | getValue (void) |
| Get the ShaderParameterMInt::_mfValue field. | |
| const MFInt32 & | getValue (void) const |
| Get the ShaderParameterMInt::_mfValue field. | |
Binary Access | |
| virtual UInt32 | getBinSize (const BitVector &whichField) |
| virtual void | copyToBin (BinaryDataHandler &pMem, const BitVector &whichField) |
| virtual void | copyFromBin (BinaryDataHandler &pMem, const BitVector &whichField) |
Copy | |
| virtual FieldContainerPtr | shallowCopy (void) const |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Output | |
| virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
| bool | hasChanged (void) |
| void | resetChanged (void) |
Get Instance Type Information | |
| UInt32 | getTypeId (void) const |
| UInt16 | getGroupId (void) const |
| const Char8 * | getTypeName (void) const |
Field Get | |
| SFString * | getSFName (void) |
| Get the ShaderParameter::_sfName field. | |
| std::string & | getName (void) |
| Get the value of the ShaderParameter::_sfName field. | |
| const std::string & | getName (void) const |
| Get the value of the ShaderParameter::_sfName field. | |
Field Set | |
| void | setName (const std::string &value) |
| Set the value of the ShaderParameter::_sfName field. | |
Handle Attachments | |
| void | addAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0) |
| void | subAttachment (const AttachmentPtr &fieldContainerP, UInt16 binding=0) |
| AttachmentPtr | findAttachment (UInt32 groupId, UInt16 binding=0) |
| AttachmentPtr | findAttachment (const FieldContainerType &type, UInt16 binding=0) |
| SFAttachmentMap * | getSFAttachments (void) |
| 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 ShaderParameterMIntPtr | create (void) |
| create a new instance of the class | |
| static ShaderParameterMIntPtr | 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 | ValueFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| static const osg::BitVector | NameFieldMask |
| static const BitVector | AttachmentsFieldMask |
| static const BitVector | NextFieldMask |
CoredNodePtr helper | |
| static const bool | isNodeCore = false |
Protected Member Functions | |
Constructors | |
| ShaderParameterMIntBase (void) | |
| ShaderParameterMIntBase (const ShaderParameterMIntBase &source) | |
Destructors | |
| virtual | ~ShaderParameterMIntBase (void) |
Sync | |
| void | executeSyncImpl (ShaderParameterMIntBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Destructors | |
| void | setTypeId (SHPType type) |
| void | setChanged (void) |
Sync | |
| void | executeSyncImpl (ShaderParameterBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *pOther, const BitVector &whichField) |
Pointer | |
| AttachmentContainerPtr | getPtr (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) |
MT Destruction | |
| virtual void | onDestroy (void) |
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 | |
| MFInt32 | _mfValue |
Fields | |
| SFString | _sfName |
Fields | |
| SFAttachmentMap | _attachmentMap |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef ShaderParameter | Inherited |
Private Member Functions | |
| void | operator= (const ShaderParameterMIntBase &source) |
Static Private Attributes | |
| static FieldDescription * | _desc [] |
| ShaderParameterMInt description. | |
| static FieldContainerType | _type |
Friends | |
| class | FieldContainer |
Definition at line 81 of file OSGShaderParameterMIntBase.h.
typedef ShaderParameter osg::ShaderParameterMIntBase::Inherited [private] |
Reimplemented from osg::ShaderParameter.
Reimplemented in osg::ShaderParameterMInt.
Definition at line 85 of file OSGShaderParameterMIntBase.h.
Reimplemented from osg::ShaderParameterBase.
Definition at line 90 of file OSGShaderParameterMIntBase.h.
| anonymous enum |
Definition at line 92 of file OSGShaderParameterMIntBase.h.
00093 { 00094 ValueFieldId = Inherited::NextFieldId, 00095 NextFieldId = ValueFieldId + 1 00096 };
enum osg::ShaderParameter::SHPType [inherited] |
Definition at line 87 of file OSGShaderParameter.h.
00088 { 00089 SHPTypeUnknown = 0, 00090 SHPTypeBool, 00091 SHPTypeInt, 00092 SHPTypeReal, 00093 SHPTypeVec2s, 00094 SHPTypeVec3s, 00095 SHPTypeVec4s, 00096 SHPTypeVec2f, 00097 SHPTypeVec3f, 00098 SHPTypeVec4f, 00099 SHPTypeMatrix, 00100 SHPTypeString, 00101 SHPTypeMBool, 00102 SHPTypeMInt, 00103 SHPTypeMReal, 00104 SHPTypeMVec2s, 00105 SHPTypeMVec3s, 00106 SHPTypeMVec4s, 00107 SHPTypeMVec2f, 00108 SHPTypeMVec3f, 00109 SHPTypeMVec4f, 00110 SHPTypeMMatrix, 00111 SHPTypeMString 00112 };
enum osg::ShaderParameter::SHPFlags [inherited] |
Definition at line 114 of file OSGShaderParameter.h.
00115 { 00116 SHPFlagNone = 0, 00117 SHPFlagUpdate = 1 00118 };
anonymous enum [inherited] |
Definition at line 92 of file OSGShaderParameterBase.h.
00093 { 00094 NameFieldId = Inherited::NextFieldId, 00095 NextFieldId = NameFieldId + 1 00096 };
anonymous enum [inherited] |
Definition at line 78 of file OSGAttachmentContainerImpl.h.
00079 { 00080 AttachmentsFieldId = Inherited::NextFieldId, 00081 NextFieldId = AttachmentsFieldId + 1 00082 };
anonymous enum [inherited] |
| osg::ShaderParameterMIntBase::ShaderParameterMIntBase | ( | void | ) | [protected] |
| osg::ShaderParameterMIntBase::ShaderParameterMIntBase | ( | const ShaderParameterMIntBase & | source | ) | [protected] |
| osg::ShaderParameterMIntBase::~ShaderParameterMIntBase | ( | void | ) | [protected, virtual] |
| osg::FieldContainerType & osg::ShaderParameterMIntBase::getClassType | ( | void | ) | [inline, static] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 58 of file OSGShaderParameterMIntBase.inl.
References _type.
Referenced by create().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::ShaderParameterMIntBase::getClassTypeId | ( | void | ) | [inline, static] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 65 of file OSGShaderParameterMIntBase.inl.
References _type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & osg::ShaderParameterMIntBase::getType | ( | void | ) | [virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 106 of file OSGShaderParameterMIntBase.cpp.
References _type.
00107 { 00108 return _type; 00109 }
| const FieldContainerType & osg::ShaderParameterMIntBase::getType | ( | void | ) | const [virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 111 of file OSGShaderParameterMIntBase.cpp.
References _type.
00112 { 00113 return _type; 00114 }
| UInt32 osg::ShaderParameterMIntBase::getContainerSize | ( | void | ) | const [virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 126 of file OSGShaderParameterMIntBase.cpp.
| MFInt32 * osg::ShaderParameterMIntBase::getMFValue | ( | void | ) | [inline] |
Definition at line 101 of file OSGShaderParameterMIntBase.inl.
References _mfValue.
00102 { 00103 return &_mfValue; 00104 }
Definition at line 110 of file OSGShaderParameterMIntBase.inl.
References _mfValue.
00111 { 00112 return _mfValue[index]; 00113 }
| MFInt32 & osg::ShaderParameterMIntBase::getValue | ( | void | ) | [inline] |
Definition at line 117 of file OSGShaderParameterMIntBase.inl.
References _mfValue.
00118 { 00119 return _mfValue; 00120 }
| const MFInt32 & osg::ShaderParameterMIntBase::getValue | ( | void | ) | const [inline] |
Definition at line 124 of file OSGShaderParameterMIntBase.inl.
References _mfValue.
00125 { 00126 return _mfValue; 00127 }
Reimplemented from osg::ShaderParameterBase.
Definition at line 189 of file OSGShaderParameterMIntBase.cpp.
References _mfValue, osg::MField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::ShaderParameterBase::getBinSize(), osg::FieldBits::NoField, and ValueFieldMask.
00190 { 00191 UInt32 returnValue = Inherited::getBinSize(whichField); 00192 00193 if(FieldBits::NoField != (ValueFieldMask & whichField)) 00194 { 00195 returnValue += _mfValue.getBinSize(); 00196 } 00197 00198 00199 return returnValue; 00200 }
| void osg::ShaderParameterMIntBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 202 of file OSGShaderParameterMIntBase.cpp.
References _mfValue, osg::MField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::ShaderParameterBase::copyToBin(), osg::FieldBits::NoField, and ValueFieldMask.
00204 { 00205 Inherited::copyToBin(pMem, whichField); 00206 00207 if(FieldBits::NoField != (ValueFieldMask & whichField)) 00208 { 00209 _mfValue.copyToBin(pMem); 00210 } 00211 00212 00213 }
| void osg::ShaderParameterMIntBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 215 of file OSGShaderParameterMIntBase.cpp.
References _mfValue, osg::MField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::ShaderParameterBase::copyFromBin(), osg::FieldBits::NoField, and ValueFieldMask.
00217 { 00218 Inherited::copyFromBin(pMem, whichField); 00219 00220 if(FieldBits::NoField != (ValueFieldMask & whichField)) 00221 { 00222 _mfValue.copyFromBin(pMem); 00223 } 00224 00225 00226 }
| ShaderParameterMIntPtr osg::ShaderParameterMIntBase::create | ( | void | ) | [inline, static] |
Definition at line 72 of file OSGShaderParameterMIntBase.inl.
References osg::AttachmentContainerPtr::dcast(), getClassType(), osg::NullFC, and shallowCopy().
00073 { 00074 ShaderParameterMIntPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = ShaderParameterMIntPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| ShaderParameterMIntPtr osg::ShaderParameterMIntBase::createEmpty | ( | void | ) | [inline, static] |
Definition at line 87 of file OSGShaderParameterMIntBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 ShaderParameterMIntPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr osg::ShaderParameterMIntBase::shallowCopy | ( | void | ) | const [virtual] |
Implements osg::FieldContainer.
Definition at line 117 of file OSGShaderParameterMIntBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by create().
00118 { 00119 ShaderParameterMIntPtr returnValue; 00120 00121 newPtr(returnValue, dynamic_cast<const ShaderParameterMInt *>(this)); 00122 00123 return returnValue; 00124 }
| void osg::ShaderParameterMIntBase::executeSyncImpl | ( | ShaderParameterMIntBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected] |
Definition at line 229 of file OSGShaderParameterMIntBase.cpp.
References _mfValue, osg::ShaderParameterBase::executeSyncImpl(), osg::FieldBits::NoField, osg::MField< FieldTypeT, fieldNameSpace >::syncWith(), and ValueFieldMask.
Referenced by executeSync().
00231 { 00232 00233 Inherited::executeSyncImpl(pOther, whichField); 00234 00235 if(FieldBits::NoField != (ValueFieldMask & whichField)) 00236 _mfValue.syncWith(pOther->_mfValue); 00237 00238 00239 }
| void osg::ShaderParameterMIntBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 133 of file OSGShaderParameterMIntBase.cpp.
References executeSyncImpl().
00135 { 00136 this->executeSyncImpl((ShaderParameterMIntBase *) &other, whichField); 00137 }
| void osg::ShaderParameterMIntBase::operator= | ( | const ShaderParameterMIntBase & | source | ) | [private] |
Reimplemented from osg::AttachmentContainer.
Reimplemented in osg::ShaderParameterBool, osg::ShaderParameterInt, osg::ShaderParameterMatrix, osg::ShaderParameterMInt, osg::ShaderParameterMMatrix, osg::ShaderParameterMReal, osg::ShaderParameterMVec2f, osg::ShaderParameterMVec3f, osg::ShaderParameterMVec4f, osg::ShaderParameterReal, osg::ShaderParameterString, osg::ShaderParameterVec2f, osg::ShaderParameterVec3f, and osg::ShaderParameterVec4f.
Definition at line 105 of file OSGShaderParameter.cpp.
References osg::AttachmentContainer::changed().
Referenced by osg::ShaderParameterVec4f::changed(), osg::ShaderParameterVec3f::changed(), osg::ShaderParameterVec2f::changed(), osg::ShaderParameterString::changed(), osg::ShaderParameterReal::changed(), osg::ShaderParameterMVec4f::changed(), osg::ShaderParameterMVec3f::changed(), osg::ShaderParameterMVec2f::changed(), osg::ShaderParameterMReal::changed(), osg::ShaderParameterMMatrix::changed(), osg::ShaderParameterMInt::changed(), osg::ShaderParameterMatrix::changed(), osg::ShaderParameterInt::changed(), and osg::ShaderParameterBool::changed().
00106 { 00107 Inherited::changed(whichField, origin); 00108 }
| void ShaderParameter::dump | ( | UInt32 | uiIndent = 0, |
|
| const BitVector | bvFlags = 0 | |||
| ) | const [virtual, inherited] |
Reimplemented from osg::AttachmentContainer.
Reimplemented in osg::ShaderParameterBool, osg::ShaderParameterInt, osg::ShaderParameterMatrix, osg::ShaderParameterMInt, osg::ShaderParameterMMatrix, osg::ShaderParameterMReal, osg::ShaderParameterMVec2f, osg::ShaderParameterMVec3f, osg::ShaderParameterMVec4f, osg::ShaderParameterReal, osg::ShaderParameterString, osg::ShaderParameterVec2f, osg::ShaderParameterVec3f, and osg::ShaderParameterVec4f.
Definition at line 110 of file OSGShaderParameter.cpp.
References SLOG.
00112 { 00113 SLOG << "Dump ShaderParameter NI" << std::endl; 00114 }
| bool osg::ShaderParameter::hasChanged | ( | void | ) | [inline, inherited] |
Definition at line 70 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_changed.
00071 { 00072 return _changed; 00073 }
| void osg::ShaderParameter::resetChanged | ( | void | ) | [inline, inherited] |
Definition at line 76 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_changed.
00077 { 00078 _changed = false; 00079 }
| ShaderParameter::SHPType osg::ShaderParameter::getTypeId | ( | void | ) | [inline, inherited] |
Definition at line 52 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_typeid.
00053 { 00054 return _typeid; 00055 }
| 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 }
| GLint osg::ShaderParameter::getLocation | ( | void | ) | [inline, inherited] |
Definition at line 64 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_location.
00065 { 00066 return _location; 00067 }
| void osg::ShaderParameter::setLocation | ( | GLint | location | ) | [inline, inherited] |
| UInt32 osg::ShaderParameter::getFlags | ( | void | ) | [inline, inherited] |
Definition at line 88 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_flags.
00089 { 00090 return _flags; 00091 }
| void osg::ShaderParameter::setFlags | ( | UInt32 | flags | ) | [inline, inherited] |
Definition at line 94 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_flags.
00095 { 00096 _flags = flags; 00097 }
| void osg::ShaderParameter::setTypeId | ( | ShaderParameter::SHPType | type | ) | [inline, protected, inherited] |
Definition at line 46 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_typeid.
Referenced by osg::ShaderParameterBool::ShaderParameterBool(), osg::ShaderParameterInt::ShaderParameterInt(), osg::ShaderParameterMatrix::ShaderParameterMatrix(), osg::ShaderParameterMInt::ShaderParameterMInt(), osg::ShaderParameterMMatrix::ShaderParameterMMatrix(), osg::ShaderParameterMReal::ShaderParameterMReal(), osg::ShaderParameterMVec2f::ShaderParameterMVec2f(), osg::ShaderParameterMVec3f::ShaderParameterMVec3f(), osg::ShaderParameterMVec4f::ShaderParameterMVec4f(), osg::ShaderParameterReal::ShaderParameterReal(), osg::ShaderParameterString::ShaderParameterString(), osg::ShaderParameterVec2f::ShaderParameterVec2f(), osg::ShaderParameterVec3f::ShaderParameterVec3f(), and osg::ShaderParameterVec4f::ShaderParameterVec4f().
00047 { 00048 _typeid = type; 00049 }
| void osg::ShaderParameter::setChanged | ( | void | ) | [inline, protected, inherited] |
Definition at line 82 of file OSGShaderParameter.inl.
References osg::ShaderParameter::_changed.
Referenced by osg::ShaderParameterVec4f::changed(), osg::ShaderParameterVec3f::changed(), osg::ShaderParameterVec2f::changed(), osg::ShaderParameterString::changed(), osg::ShaderParameterReal::changed(), osg::ShaderParameterMVec4f::changed(), osg::ShaderParameterMVec3f::changed(), osg::ShaderParameterMVec2f::changed(), osg::ShaderParameterMReal::changed(), osg::ShaderParameterMMatrix::changed(), osg::ShaderParameterMInt::changed(), osg::ShaderParameterMatrix::changed(), osg::ShaderParameterInt::changed(), and osg::ShaderParameterBool::changed().
00083 { 00084 _changed = true; 00085 }
| SFString * osg::ShaderParameterBase::getSFName | ( | void | ) | [inline, inherited] |
Definition at line 75 of file OSGShaderParameterBase.inl.
References osg::ShaderParameterBase::_sfName.
00076 { 00077 return &_sfName; 00078 }
| std::string & osg::ShaderParameterBase::getName | ( | void | ) | [inline, inherited] |
Definition at line 83 of file OSGShaderParameterBase.inl.
References osg::ShaderParameterBase::_sfName, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00084 { 00085 return _sfName.getValue(); 00086 }
| const std::string & osg::ShaderParameterBase::getName | ( | void | ) | const [inline, inherited] |
Definition at line 90 of file OSGShaderParameterBase.inl.
References osg::ShaderParameterBase::_sfName, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00091 { 00092 return _sfName.getValue(); 00093 }
| void osg::ShaderParameterBase::setName | ( | const std::string & | value | ) | [inline, inherited] |
Definition at line 97 of file OSGShaderParameterBase.inl.
References osg::ShaderParameterBase::_sfName, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void ShaderParameterBase::executeSyncImpl | ( | ShaderParameterBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 219 of file OSGShaderParameterBase.cpp.
References osg::ShaderParameterBase::_sfName, osg::AttachmentContainer::executeSyncImpl(), osg::ShaderParameterBase::NameFieldMask, osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::ShaderParameterBase::executeSync(), osg::ShaderParameterVec4fBase::executeSyncImpl(), osg::ShaderParameterVec3fBase::executeSyncImpl(), osg::ShaderParameterVec2fBase::executeSyncImpl(), osg::ShaderParameterStringBase::executeSyncImpl(), osg::ShaderParameterRealBase::executeSyncImpl(), osg::ShaderParameterMVec4fBase::executeSyncImpl(), osg::ShaderParameterMVec3fBase::executeSyncImpl(), osg::ShaderParameterMVec2fBase::executeSyncImpl(), osg::ShaderParameterMRealBase::executeSyncImpl(), osg::ShaderParameterMMatrixBase::executeSyncImpl(), executeSyncImpl(), osg::ShaderParameterMatrixBase::executeSyncImpl(), osg::ShaderParameterIntBase::executeSyncImpl(), and osg::ShaderParameterBoolBase::executeSyncImpl().
00221 { 00222 00223 Inherited::executeSyncImpl(pOther, whichField); 00224 00225 if(FieldBits::NoField != (NameFieldMask & whichField)) 00226 _sfName.syncWith(pOther->_sfName); 00227 00228 00229 }
| void AttachmentContainer::executeSyncImpl | ( | AttachmentContainer * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 316 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::AttachmentContainer::AttachmentsFieldMask, osg::FieldContainer::executeSyncImpl(), osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::AttachmentContainer::executeSync(), osg::WindowBase::executeSyncImpl(), osg::ViewportBase::executeSyncImpl(), osg::ShaderParameterBase::executeSyncImpl(), osg::Node::executeSyncImpl(), osg::NodeCore::executeSyncImpl(), osg::MaterialBase::executeSyncImpl(), osg::ImageComposerBase::executeSyncImpl(), osg::ImageBase::executeSyncImpl(), osg::ForegroundBase::executeSyncImpl(), osg::DisplayFilterBase::executeSyncImpl(), osg::DisplayCalibrationBase::executeSyncImpl(), osg::CameraBase::executeSyncImpl(), and osg::BackgroundBase::executeSyncImpl().
00319 { 00320 Inherited::executeSyncImpl(pOther, whichField); 00321 00322 if (FieldBits::NoField != (AttachmentsFieldMask & whichField)) 00323 { 00324 _attachmentMap.syncWith(pOther->_attachmentMap); 00325 } 00326 }
| 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 AttachmentContainer::addAttachment | ( | const AttachmentPtr & | fieldContainerP, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 84 of file OSGAttachmentContainer.cpp.
References osg::addRefCP(), osg::beginEditCP(), osg::endEditCP(), osg::NullFC, and osg::subRefCP().
Referenced by osg::AttachmentContainer::AttachmentContainer(), osg::Node::onCreate(), and osg::Image::setAttachmentField().
00086 { 00087 UInt32 key; 00088 00089 if(fieldContainerP == NullFC) 00090 return; 00091 00092 key = (UInt32 (fieldContainerP->getGroupId()) << 16) | binding; 00093 00094 addRefCP(fieldContainerP); 00095 00096 beginEditCP(fieldContainerP, Attachment::ParentsFieldMask); 00097 { 00098 fieldContainerP->addParent(getPtr()); 00099 } 00100 endEditCP (fieldContainerP, Attachment::ParentsFieldMask); 00101 00102 AttachmentMap::iterator fcI = _attachmentMap.getValue().find(key); 00103 00104 if(fcI != _attachmentMap.getValue().end()) 00105 { 00106 beginEditCP((*fcI).second, Attachment::ParentsFieldMask); 00107 { 00108 (*fcI).second->subParent(getPtr()); 00109 } 00110 endEditCP ((*fcI).second, Attachment::ParentsFieldMask); 00111 00112 subRefCP((*fcI).second); 00113 00114 (*fcI).second = fieldContainerP; 00115 } 00116 else 00117 { 00118 _attachmentMap.getValue()[key] = fieldContainerP; 00119 } 00120 }
| void AttachmentContainer::subAttachment | ( | const AttachmentPtr & | fieldContainerP, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 122 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::beginEditCP(), osg::endEditCP(), osg::AttachmentContainer::getPtr(), osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::NullFC, osg::Attachment::ParentsFieldMask, and osg::subRefCP().
00124 { 00125 UInt32 key; 00126 00127 AttachmentMap::iterator fcI; 00128 00129 if(fieldContainerP == NullFC) 00130 return; 00131 00132 key = (UInt32(fieldContainerP->getGroupId()) << 16) | binding; 00133 00134 fcI = _attachmentMap.getValue().find(key); 00135 00136 if(fcI != _attachmentMap.getValue().end()) 00137 { 00138 beginEditCP(fieldContainerP, Attachment::ParentsFieldMask); 00139 { 00140 (*fcI).second->subParent(getPtr()); 00141 } 00142 endEditCP (fieldContainerP, Attachment::ParentsFieldMask); 00143 00144 subRefCP((*fcI).second); 00145 00146 _attachmentMap.getValue().erase(fcI); 00147 } 00148 }
| AttachmentPtr AttachmentContainer::findAttachment | ( | UInt32 | groupId, | |
| UInt16 | binding = 0 | |||
| ) | [inherited] |
Definition at line 150 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap, osg::SField< FieldTypeT, fieldNameSpace >::getValue(), and osg::NullFC.
Referenced by osg::Image::findAttachmentField(), and osg::Image::setAttachmentField().
00152 { 00153 UInt32 key = (UInt32(groupId) << 16) | binding; 00154 00155 AttachmentMap::iterator fcI = _attachmentMap.getValue().find(key); 00156 00157 if(fcI == _attachmentMap.getValue().end()) 00158 { 00159 return NullFC; 00160 } 00161 else 00162 { 00163 return (*fcI).second; 00164 } 00165 }
| AttachmentPtr osg::AttachmentContainer::findAttachment | ( | const FieldContainerType & | type, | |
| UInt16 | binding = 0 | |||
| ) | [inline, inherited] |
Definition at line 57 of file OSGAttachmentContainerImpl.inl.
00060 { 00061 return findAttachment(type.getGroupId(), binding); 00062 }
| SFAttachmentMap * AttachmentContainer::getSFAttachments | ( | void | ) | [inherited] |
Field Access
Definition at line 170 of file OSGAttachmentContainer.cpp.
References osg::AttachmentContainer::_attachmentMap.
00171 { 00172 return &_attachmentMap; 00173 }
| AttachmentContainerPtr AttachmentContainer::getPtr | ( | void | ) | [protected, inherited] |
Definition at line 352 of file OSGAttachmentContainer.cpp.
Referenced by osg::FileGrabForeground::draw(), osg::FBOViewport::render(), osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer().
00353 { 00354 return AttachmentContainerPtr(*this); 00355 }
| 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 }
| 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(), 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(), 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] |
| void FieldContainer::onDestroy | ( | void | ) | [protected, virtual, inherited] |
Reimplemented in osg::NodeCore, osg::Attachment, osg::Geometry, osg::Surface, osg::MaterialPool, osg::CubeTextureChunk, osg::TextureChunk, osg::FBOViewport, osg::Window, osg::ShaderParameterChunk, and osg::SHLChunk.
Definition at line 98 of file OSGFieldContainer.cpp.
friend class FieldContainer [friend] |
Reimplemented from osg::ShaderParameter.
Reimplemented in osg::ShaderParameterMInt.
Definition at line 230 of file OSGShaderParameterMIntBase.h.
const osg::BitVector osg::ShaderParameterMIntBase::ValueFieldMask [static] |
Initial value:
(TypeTraits<BitVector>::One << ShaderParameterMIntBase::ValueFieldId)
Definition at line 98 of file OSGShaderParameterMIntBase.h.
Referenced by osg::ShaderParameterMInt::changed(), copyFromBin(), copyToBin(), executeSyncImpl(), and getBinSize().
const osg::BitVector osg::ShaderParameterMIntBase::MTInfluenceMask [static] |
Initial value:
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::ShaderParameterBase.
Definition at line 101 of file OSGShaderParameterMIntBase.h.
Int32 osg::ShaderParameterMIntBase::_mfValue [protected] |
parameter value
Definition at line 178 of file OSGShaderParameterMIntBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), getBinSize(), getMFValue(), and getValue().
FieldDescription * osg::ShaderParameterMIntBase::_desc [static, private] |
Initial value:
{
new FieldDescription(MFInt32::getClassType(),
"value",
ValueFieldId, ValueFieldMask,
false,
(FieldAccessMethod) &ShaderParameterMIntBase::getMFValue)
}
Reimplemented from osg::ShaderParameterBase.
Definition at line 232 of file OSGShaderParameterMIntBase.h.
FieldContainerType osg::ShaderParameterMIntBase::_type [static, private] |
Reimplemented from osg::ShaderParameterBase.
Definition at line 233 of file OSGShaderParameterMIntBase.h.
Referenced by getClassType(), getClassTypeId(), and getType().
const osg::BitVector ShaderParameterBase::NameFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << ShaderParameterBase::NameFieldId)
Definition at line 98 of file OSGShaderParameterBase.h.
Referenced by osg::ShaderParameterBase::copyFromBin(), osg::ShaderParameterBase::copyToBin(), osg::ShaderParameterBase::executeSyncImpl(), and osg::ShaderParameterBase::getBinSize().
std::string ShaderParameterBase::_sfName [protected, inherited] |
parameter name
Definition at line 162 of file OSGShaderParameterBase.h.
Referenced by osg::ShaderParameterBase::copyFromBin(), osg::ShaderParameterBase::copyToBin(), osg::ShaderParameterBase::executeSyncImpl(), osg::ShaderParameterBase::getBinSize(), osg::ShaderParameterBase::getName(), osg::ShaderParameterBase::getSFName(), and osg::ShaderParameterBase::setName().
const BitVector AttachmentContainer::AttachmentsFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One <<
AttachmentContainer::AttachmentsFieldId)
Definition at line 84 of file OSGAttachmentContainerImpl.h.
Referenced by osg::VRMLFile::beginNode(), osg::AttachmentContainer::changed(), osg::AttachmentContainer::copyFromBin(), osg::AttachmentContainer::copyToBin(), osg::deepCloneAttachments(), osg::AttachmentContainer::executeSyncImpl(), osg::fcptrAttributeMap(), osg::AttachmentContainer::getBinSize(), and osg::stringAttributeMap().
SFAttachmentMap osg::AttachmentContainer::_attachmentMap [protected, inherited] |
Definition at line 161 of file OSGAttachmentContainerImpl.h.
Referenced by osg::AttachmentContainer::AttachmentContainer(), osg::AttachmentContainer::changed(), osg::AttachmentContainer::copyFromBin(), osg::AttachmentContainer::copyToBin(), osg::NodeCore::dump(), osg::Node::dump(), osg::Geometry::dump(), osg::AttachmentContainer::dump(), osg::AttachmentContainer::executeSyncImpl(), osg::AttachmentContainer::findAttachment(), osg::AttachmentContainer::getBinSize(), osg::AttachmentContainer::getSFAttachments(), osg::Node::onCreate(), osg::AttachmentContainer::subAttachment(), and osg::AttachmentContainer::~AttachmentContainer().
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