#include <OSGDirectionalLightBase.h>

Set | |
| enum | { CAST_SHADOW_AUTO = 0, CAST_SHADOW_ON = 1, CAST_SHADOW_OFF = 2 } |
| void | setAmbient (Real32 rRed, Real32 rGreen, Real32 rBlue, Real32 rAlpha) |
| void | setAmbient (const Color4f &col) |
| void | setDiffuse (Real32 rRed, Real32 rGreen, Real32 rBlue, Real32 rAlpha) |
| void | setDiffuse (const Color4f &col) |
| void | setSpecular (Real32 rRed, Real32 rGreen, Real32 rBlue, Real32 rAlpha) |
| void | setSpecular (const Color4f &col) |
Public Types | |
| enum | { DirectionFieldId = Inherited::NextFieldId, NextFieldId = DirectionFieldId + 1 } |
| typedef DirectionalLightPtr | Ptr |
| enum | { AmbientFieldId = Inherited::NextFieldId, DiffuseFieldId = AmbientFieldId + 1, SpecularFieldId = DiffuseFieldId + 1, BeaconFieldId = SpecularFieldId + 1, OnFieldId = BeaconFieldId + 1, ConstantAttenuationFieldId = OnFieldId + 1, LinearAttenuationFieldId = ConstantAttenuationFieldId + 1, QuadraticAttenuationFieldId = LinearAttenuationFieldId + 1, ShadowIntensityFieldId = QuadraticAttenuationFieldId + 1, ShadowModeFieldId = ShadowIntensityFieldId + 1, NextFieldId = ShadowModeFieldId + 1 } |
| enum | { ParentsFieldId = Inherited::NextFieldId, NextFieldId = ParentsFieldId + 1 } |
| typedef MFNodePtr | ParentField |
| typedef MFNodePtr * | ParentFieldPtr |
| typedef MFNodePtr::iterator | ParentFieldIt |
| 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 | |
| SFVec3f * | getSFDirection (void) |
| Get the DirectionalLight::_sfDirection field. | |
| Vec3f & | getDirection (void) |
| Get the value of the DirectionalLight::_sfDirection field. | |
| const Vec3f & | getDirection (void) const |
| Get the value of the DirectionalLight::_sfDirection field. | |
Field Set | |
| void | setDirection (const Vec3f &value) |
| Set the value of the DirectionalLight::_sfDirection 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 |
Chunk | |
| LightChunkPtr | getChunk (void) |
| virtual void | makeChunk (void) |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Dump | |
| virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
Field Get | |
| SFColor4f * | getSFAmbient (void) |
| Get the Light::_sfAmbient field. | |
| SFColor4f * | getSFDiffuse (void) |
| Get the Light::_sfDiffuse field. | |
| SFColor4f * | getSFSpecular (void) |
| Get the Light::_sfSpecular field. | |
| SFNodePtr * | getSFBeacon (void) |
| Get the Light::_sfBeacon field. | |
| SFBool * | getSFOn (void) |
| Get the Light::_sfOn field. | |
| SFReal32 * | getSFConstantAttenuation (void) |
| Get the Light::_sfConstantAttenuation field. | |
| SFReal32 * | getSFLinearAttenuation (void) |
| Get the Light::_sfLinearAttenuation field. | |
| SFReal32 * | getSFQuadraticAttenuation (void) |
| Get the Light::_sfQuadraticAttenuation field. | |
| SFReal32 * | getSFShadowIntensity (void) |
| Get the Light::_sfShadowIntensity field. | |
| SFUInt32 * | getSFShadowMode (void) |
| Get the Light::_sfShadowMode field. | |
| Color4f & | getAmbient (void) |
| Get the value of the Light::_sfAmbient field. | |
| const Color4f & | getAmbient (void) const |
| Get the value of the Light::_sfAmbient field. | |
| Color4f & | getDiffuse (void) |
| Get the value of the Light::_sfDiffuse field. | |
| const Color4f & | getDiffuse (void) const |
| Get the value of the Light::_sfDiffuse field. | |
| Color4f & | getSpecular (void) |
| Get the value of the Light::_sfSpecular field. | |
| const Color4f & | getSpecular (void) const |
| Get the value of the Light::_sfSpecular field. | |
| NodePtr & | getBeacon (void) |
| Get the value of the Light::_sfBeacon field. | |
| const NodePtr & | getBeacon (void) const |
| Get the value of the Light::_sfBeacon field. | |
| bool & | getOn (void) |
| Get the value of the Light::_sfOn field. | |
| const bool & | getOn (void) const |
| Get the value of the Light::_sfOn field. | |
| Real32 & | getConstantAttenuation (void) |
| Get the value of the Light::_sfConstantAttenuation field. | |
| const Real32 & | getConstantAttenuation (void) const |
| Get the value of the Light::_sfConstantAttenuation field. | |
| Real32 & | getLinearAttenuation (void) |
| Get the value of the Light::_sfLinearAttenuation field. | |
| const Real32 & | getLinearAttenuation (void) const |
| Get the value of the Light::_sfLinearAttenuation field. | |
| Real32 & | getQuadraticAttenuation (void) |
| Get the value of the Light::_sfQuadraticAttenuation field. | |
| const Real32 & | getQuadraticAttenuation (void) const |
| Get the value of the Light::_sfQuadraticAttenuation field. | |
| Real32 & | getShadowIntensity (void) |
| Get the value of the Light::_sfShadowIntensity field. | |
| const Real32 & | getShadowIntensity (void) const |
| Get the value of the Light::_sfShadowIntensity field. | |
| UInt32 & | getShadowMode (void) |
| Get the value of the Light::_sfShadowMode field. | |
| const UInt32 & | getShadowMode (void) const |
| Get the value of the Light::_sfShadowMode field. | |
Field Set | |
| void | setBeacon (const NodePtr &value) |
| Set the value of the Light::_sfBeacon field. | |
| void | setOn (const bool &value) |
| Set the value of the Light::_sfOn field. | |
| void | setConstantAttenuation (const Real32 &value) |
| Set the value of the Light::_sfConstantAttenuation field. | |
| void | setLinearAttenuation (const Real32 &value) |
| Set the value of the Light::_sfLinearAttenuation field. | |
| void | setQuadraticAttenuation (const Real32 &value) |
| Set the value of the Light::_sfQuadraticAttenuation field. | |
| void | setShadowIntensity (const Real32 &value) |
| Set the value of the Light::_sfShadowIntensity field. | |
| void | setShadowMode (const UInt32 &value) |
| Set the value of the Light::_sfShadowMode field. | |
Parents | |
| MFNodePtr & | getParents (void) |
| const MFNodePtr & | getParents (void) const |
| MFNodePtr * | getMFParents (void) |
Volume | |
| virtual void | invalidateVolume (void) |
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) |
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 DirectionalLightPtr | create (void) |
| create a new instance of the class | |
| static DirectionalLightPtr | 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 | DirectionFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| static const osg::BitVector | AmbientFieldMask |
| static const osg::BitVector | DiffuseFieldMask |
| static const osg::BitVector | SpecularFieldMask |
| static const osg::BitVector | BeaconFieldMask |
| static const osg::BitVector | OnFieldMask |
| static const osg::BitVector | ConstantAttenuationFieldMask |
| static const osg::BitVector | LinearAttenuationFieldMask |
| static const osg::BitVector | QuadraticAttenuationFieldMask |
| static const osg::BitVector | ShadowIntensityFieldMask |
| static const osg::BitVector | ShadowModeFieldMask |
| static const BitVector | ParentsFieldMask = (1 << NodeCore::ParentsFieldId ) |
| static const BitVector | AttachmentsFieldMask |
| static const BitVector | NextFieldMask |
CoredNodePtr helper | |
| static const bool | isNodeCore = true |
Protected Member Functions | |
Constructors | |
| DirectionalLightBase (void) | |
| DirectionalLightBase (const DirectionalLightBase &source) | |
Destructors | |
| virtual | ~DirectionalLightBase (void) |
Sync | |
| void | executeSyncImpl (DirectionalLightBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Actions | |
| Action::ResultE | drawEnter (Action *action) |
| Action::ResultE | drawLeave (Action *action) |
| Action::ResultE | renderEnter (Action *action) |
| Action::ResultE | renderLeave (Action *action) |
Sync | |
| void | executeSyncImpl (LightBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (GroupBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (NodeCore *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *pOther, const BitVector &whichField) |
Action Callbacks | |
| Action::ResultE | intersect (Action *action) |
MT Destruction | |
| virtual void | onDestroy (void) |
Set / Get Parents | |
| void | addParent (const NodePtr &parent) |
| void | subParent (const NodePtr &parent) |
Pointer | |
| NodeCorePtr | getPtr (void) const |
Pointer | |
| AttachmentContainerPtr | getPtr (void) |
Transformation | |
| virtual void | accumulateMatrix (Matrix &result) |
Volume | |
| virtual void | adjustVolume (Volume &volume) |
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 | |
| LightChunkPtr | _pChunk |
Fields | |
| SFVec3f | _sfDirection |
Fields | |
| SFColor4f | _sfAmbient |
| SFColor4f | _sfDiffuse |
| SFColor4f | _sfSpecular |
| SFNodePtr | _sfBeacon |
| SFBool | _sfOn |
| SFReal32 | _sfConstantAttenuation |
| SFReal32 | _sfLinearAttenuation |
| SFReal32 | _sfQuadraticAttenuation |
| SFReal32 | _sfShadowIntensity |
| SFUInt32 | _sfShadowMode |
Fields | |
| MFNodePtr | _parents |
Fields | |
| SFAttachmentMap | _attachmentMap |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef Light | Inherited |
Private Member Functions | |
| void | operator= (const DirectionalLightBase &source) |
Static Private Attributes | |
| static FieldDescription * | _desc [] |
| DirectionalLight description. | |
| static FieldContainerType | _type |
Friends | |
| class | FieldContainer |
Definition at line 81 of file OSGDirectionalLightBase.h.
typedef Light osg::DirectionalLightBase::Inherited [private] |
Reimplemented from osg::Light.
Reimplemented in osg::DirectionalLight.
Definition at line 85 of file OSGDirectionalLightBase.h.
typedef MFNodePtr osg::NodeCore::ParentField [inherited] |
Definition at line 85 of file OSGNodeCore.h.
typedef MFNodePtr* osg::NodeCore::ParentFieldPtr [inherited] |
Definition at line 86 of file OSGNodeCore.h.
typedef MFNodePtr::iterator osg::NodeCore::ParentFieldIt [inherited] |
Definition at line 87 of file OSGNodeCore.h.
| anonymous enum |
Definition at line 92 of file OSGDirectionalLightBase.h.
00093 { 00094 DirectionFieldId = Inherited::NextFieldId, 00095 NextFieldId = DirectionFieldId + 1 00096 };
anonymous enum [inherited] |
Definition at line 84 of file OSGLight.h.
00085 { 00086 CAST_SHADOW_AUTO = 0, 00087 CAST_SHADOW_ON = 1, 00088 CAST_SHADOW_OFF = 2 00089 };
anonymous enum [inherited] |
Definition at line 101 of file OSGLightBase.h.
00102 { 00103 AmbientFieldId = Inherited::NextFieldId, 00104 DiffuseFieldId = AmbientFieldId + 1, 00105 SpecularFieldId = DiffuseFieldId + 1, 00106 BeaconFieldId = SpecularFieldId + 1, 00107 OnFieldId = BeaconFieldId + 1, 00108 ConstantAttenuationFieldId = OnFieldId + 1, 00109 LinearAttenuationFieldId = ConstantAttenuationFieldId + 1, 00110 QuadraticAttenuationFieldId = LinearAttenuationFieldId + 1, 00111 ShadowIntensityFieldId = QuadraticAttenuationFieldId + 1, 00112 ShadowModeFieldId = ShadowIntensityFieldId + 1, 00113 NextFieldId = ShadowModeFieldId + 1 00114 };
anonymous enum [inherited] |
Definition at line 93 of file OSGNodeCore.h.
00094 { 00095 ParentsFieldId = Inherited::NextFieldId, 00096 NextFieldId = ParentsFieldId + 1 00097 };
anonymous enum [inherited] |
Definition at line 78 of file OSGAttachmentContainerImpl.h.
00079 { 00080 AttachmentsFieldId = Inherited::NextFieldId, 00081 NextFieldId = AttachmentsFieldId + 1 00082 };
anonymous enum [inherited] |
| DirectionalLightBase::DirectionalLightBase | ( | void | ) | [protected] |
Definition at line 164 of file OSGDirectionalLightBase.cpp.
00164 : 00165 _sfDirection (Vec3f(0,0,1)), 00166 Inherited() 00167 { 00168 }
| DirectionalLightBase::DirectionalLightBase | ( | const DirectionalLightBase & | source | ) | [protected] |
Definition at line 174 of file OSGDirectionalLightBase.cpp.
00174 : 00175 _sfDirection (source._sfDirection ), 00176 Inherited (source) 00177 { 00178 }
| DirectionalLightBase::~DirectionalLightBase | ( | void | ) | [protected, virtual] |
| osg::FieldContainerType & osg::DirectionalLightBase::getClassType | ( | void | ) | [inline, static] |
Reimplemented from osg::LightBase.
Definition at line 58 of file OSGDirectionalLightBase.inl.
References _type.
Referenced by create(), and osg::DirectionalLight::initMethod().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::DirectionalLightBase::getClassTypeId | ( | void | ) | [inline, static] |
Reimplemented from osg::LightBase.
Definition at line 65 of file OSGDirectionalLightBase.inl.
References _type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & DirectionalLightBase::getType | ( | void | ) | [virtual] |
Reimplemented from osg::LightBase.
Definition at line 106 of file OSGDirectionalLightBase.cpp.
References _type.
00107 { 00108 return _type; 00109 }
| const FieldContainerType & DirectionalLightBase::getType | ( | void | ) | const [virtual] |
Reimplemented from osg::LightBase.
Definition at line 111 of file OSGDirectionalLightBase.cpp.
References _type.
00112 { 00113 return _type; 00114 }
| UInt32 DirectionalLightBase::getContainerSize | ( | void | ) | const [virtual] |
Reimplemented from osg::LightBase.
Definition at line 126 of file OSGDirectionalLightBase.cpp.
00127 { 00128 return sizeof(DirectionalLight); 00129 }
| SFVec3f * osg::DirectionalLightBase::getSFDirection | ( | void | ) | [inline] |
Definition at line 101 of file OSGDirectionalLightBase.inl.
References _sfDirection.
00102 { 00103 return &_sfDirection; 00104 }
| Vec3f & osg::DirectionalLightBase::getDirection | ( | void | ) | [inline] |
Definition at line 109 of file OSGDirectionalLightBase.inl.
References _sfDirection, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00110 { 00111 return _sfDirection.getValue(); 00112 }
| const Vec3f & osg::DirectionalLightBase::getDirection | ( | void | ) | const [inline] |
Definition at line 116 of file OSGDirectionalLightBase.inl.
References _sfDirection, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00117 { 00118 return _sfDirection.getValue(); 00119 }
| void osg::DirectionalLightBase::setDirection | ( | const Vec3f & | value | ) | [inline] |
Reimplemented in osg::DirectionalLight.
Definition at line 123 of file OSGDirectionalLightBase.inl.
References _sfDirection, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
Referenced by osg::DirectionalLight::setDirection().
00124 { 00125 _sfDirection.setValue(value); 00126 }
Reimplemented from osg::LightBase.
Definition at line 188 of file OSGDirectionalLightBase.cpp.
References _sfDirection, DirectionFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::LightBase::getBinSize(), and osg::FieldBits::NoField.
00189 { 00190 UInt32 returnValue = Inherited::getBinSize(whichField); 00191 00192 if(FieldBits::NoField != (DirectionFieldMask & whichField)) 00193 { 00194 returnValue += _sfDirection.getBinSize(); 00195 } 00196 00197 00198 return returnValue; 00199 }
| void DirectionalLightBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::LightBase.
Definition at line 201 of file OSGDirectionalLightBase.cpp.
References _sfDirection, osg::SField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::LightBase::copyToBin(), DirectionFieldMask, and osg::FieldBits::NoField.
00203 { 00204 Inherited::copyToBin(pMem, whichField); 00205 00206 if(FieldBits::NoField != (DirectionFieldMask & whichField)) 00207 { 00208 _sfDirection.copyToBin(pMem); 00209 } 00210 00211 00212 }
| void DirectionalLightBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual] |
Reimplemented from osg::LightBase.
Definition at line 214 of file OSGDirectionalLightBase.cpp.
References _sfDirection, osg::SField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::LightBase::copyFromBin(), DirectionFieldMask, and osg::FieldBits::NoField.
00216 { 00217 Inherited::copyFromBin(pMem, whichField); 00218 00219 if(FieldBits::NoField != (DirectionFieldMask & whichField)) 00220 { 00221 _sfDirection.copyFromBin(pMem); 00222 } 00223 00224 00225 }
| DirectionalLightPtr osg::DirectionalLightBase::create | ( | void | ) | [inline, static] |
Reimplemented from osg::GroupBase.
Definition at line 72 of file OSGDirectionalLightBase.inl.
References osg::AttachmentContainerPtr::dcast(), getClassType(), osg::NullFC, and shallowCopy().
Referenced by osg::SimpleSceneManager::initialize().
00073 { 00074 DirectionalLightPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = DirectionalLightPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| DirectionalLightPtr osg::DirectionalLightBase::createEmpty | ( | void | ) | [inline, static] |
Reimplemented from osg::GroupBase.
Definition at line 87 of file OSGDirectionalLightBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 DirectionalLightPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr DirectionalLightBase::shallowCopy | ( | void | ) | const [virtual] |
Reimplemented from osg::GroupBase.
Definition at line 117 of file OSGDirectionalLightBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by create().
00118 { 00119 DirectionalLightPtr returnValue; 00120 00121 newPtr(returnValue, dynamic_cast<const DirectionalLight *>(this)); 00122 00123 return returnValue; 00124 }
| void DirectionalLightBase::executeSyncImpl | ( | DirectionalLightBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected] |
Definition at line 228 of file OSGDirectionalLightBase.cpp.
References _sfDirection, DirectionFieldMask, osg::LightBase::executeSyncImpl(), osg::FieldBits::NoField, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by executeSync().
00230 { 00231 00232 Inherited::executeSyncImpl(pOther, whichField); 00233 00234 if(FieldBits::NoField != (DirectionFieldMask & whichField)) 00235 _sfDirection.syncWith(pOther->_sfDirection); 00236 00237 00238 }
| void DirectionalLightBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual] |
Reimplemented from osg::LightBase.
Definition at line 133 of file OSGDirectionalLightBase.cpp.
References executeSyncImpl().
00135 { 00136 this->executeSyncImpl((DirectionalLightBase *) &other, whichField); 00137 }
| void osg::DirectionalLightBase::operator= | ( | const DirectionalLightBase & | source | ) | [private] |
Definition at line 66 of file OSGLight.cpp.
References osg::LightBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00070 { 00071 _sfAmbient.getValue().setValuesRGBA(rRed, rGreen, rBlue, rAlpha); 00072 }
| void osg::Light::setAmbient | ( | const Color4f & | col | ) | [inline, inherited] |
Reimplemented from osg::LightBase.
Definition at line 46 of file OSGLight.inl.
References osg::LightBase::setAmbient().
00047 { 00048 Inherited::setAmbient(col); 00049 }
Definition at line 74 of file OSGLight.cpp.
References osg::LightBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00078 { 00079 _sfDiffuse.getValue().setValuesRGBA(rRed, rGreen, rBlue, rAlpha); 00080 }
| void osg::Light::setDiffuse | ( | const Color4f & | col | ) | [inline, inherited] |
Reimplemented from osg::LightBase.
Definition at line 52 of file OSGLight.inl.
References osg::LightBase::setDiffuse().
00053 { 00054 Inherited::setDiffuse(col); 00055 }
Definition at line 82 of file OSGLight.cpp.
References osg::LightBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00086 { 00087 _sfSpecular.getValue().setValuesRGBA(rRed, rGreen, rBlue, rAlpha); 00088 }
| void osg::Light::setSpecular | ( | const Color4f & | col | ) | [inline, inherited] |
Reimplemented from osg::LightBase.
Definition at line 58 of file OSGLight.inl.
References osg::LightBase::setSpecular().
00059 { 00060 Inherited::setSpecular(col); 00061 }
| LightChunkPtr Light::getChunk | ( | void | ) | [inherited] |
Definition at line 93 of file OSGLight.cpp.
References osg::Light::_pChunk.
Referenced by osg::RenderAction::dropLight().
00094 { 00095 return _pChunk; 00096 }
| void Light::makeChunk | ( | void | ) | [virtual, inherited] |
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 98 of file OSGLight.cpp.
References osg::Light::_pChunk, osg::LightChunkBase::create(), osg::LightBase::getAmbient(), osg::LightBase::getDiffuse(), osg::LightBase::getSpecular(), and osg::NullFC.
Referenced by osg::RenderAction::dropLight(), osg::PointLight::makeChunk(), and osg::DirectionalLight::makeChunk().
00099 { 00100 if(_pChunk == NullFC) 00101 { 00102 _pChunk = LightChunk::create(); 00103 } 00104 00105 _pChunk->setAmbient (getAmbient ()); 00106 _pChunk->setDiffuse (getDiffuse ()); 00107 _pChunk->setSpecular(getSpecular()); 00108 }
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 113 of file OSGLight.cpp.
References osg::Group::changed().
Referenced by osg::PointLight::changed(), and osg::DirectionalLight::changed().
00114 { 00115 Inherited::changed(whichField, origin); 00116 }
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 122 of file OSGLight.cpp.
References osg::Group::dump().
Referenced by osg::PointLight::dump(), and osg::DirectionalLight::dump().
00124 { 00125 Inherited::dump(uiIndent, bvFlags); 00126 }
| Action::ResultE Light::drawEnter | ( | Action * | action | ) | [protected, inherited] |
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 155 of file OSGLight.cpp.
References osg::LightBase::_sfAmbient, osg::LightBase::_sfConstantAttenuation, osg::LightBase::_sfDiffuse, osg::LightBase::_sfLinearAttenuation, osg::LightBase::_sfQuadraticAttenuation, osg::LightBase::_sfSpecular, osg::Action::Continue, osg::Action::getActNode(), osg::LightBase::getBeacon(), osg::DrawAction::getLightCount(), osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::TransformationMatrix< ValueTypeT >::getValues(), GLenum, osg::DrawAction::incLightCount(), osg::TransformationMatrix< ValueTypeT >::mult(), osg::NullFC, osg::DrawActionBase::selectVisibles(), and SINFO.
Referenced by osg::SpotLight::drawEnter(), osg::PointLight::drawEnter(), and osg::DirectionalLight::drawEnter().
00156 { 00157 DrawAction *da = dynamic_cast<DrawAction *>(action); 00158 GLenum light = GL_LIGHT0 + da->getLightCount(); 00159 00160 da->incLightCount(); 00161 00162 glEnable (light); 00163 00164 glLightfv(light, GL_DIFFUSE , _sfDiffuse. getValue().getValuesRGBA()); 00165 glLightfv(light, GL_AMBIENT , _sfAmbient. getValue().getValuesRGBA()); 00166 glLightfv(light, GL_SPECULAR, _sfSpecular.getValue().getValuesRGBA()); 00167 00168 glLightf( light, 00169 GL_CONSTANT_ATTENUATION, 00170 _sfConstantAttenuation.getValue() ); 00171 glLightf( light, 00172 GL_LINEAR_ATTENUATION, 00173 _sfLinearAttenuation.getValue() ); 00174 glLightf( light, 00175 GL_QUADRATIC_ATTENUATION, 00176 _sfQuadraticAttenuation.getValue()); 00177 00178 // add the matrix to get into the beacon's coordinate system onto the stack 00179 00180 Matrix fromworld; 00181 Matrix tobeacon; 00182 00183 action->getActNode()->getToWorld(fromworld); 00184 fromworld.invert(); 00185 00186 NodePtr beacon = getBeacon(); 00187 00188 if(beacon == NullFC) 00189 { 00190 SINFO << "draw: no beacon set!" << std::endl; 00191 00192 glPushMatrix(); 00193 } 00194 else 00195 { 00196 getBeacon()->getToWorld(tobeacon); 00197 00198 tobeacon.mult(fromworld); 00199 00200 glPushMatrix(); 00201 glMultMatrixf(tobeacon.getValues()); 00202 } 00203 00204 da->selectVisibles(); 00205 00206 return Action::Continue; 00207 }
| Action::ResultE Light::drawLeave | ( | Action * | action | ) | [protected, inherited] |
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 209 of file OSGLight.cpp.
References osg::Action::Continue, osg::DrawAction::decLightCount(), osg::DrawAction::getLightCount(), and GLenum.
Referenced by osg::SpotLight::drawLeave(), osg::PointLight::drawLeave(), and osg::DirectionalLight::drawLeave().
00210 { 00211 DrawAction *da = dynamic_cast<DrawAction *>(action); 00212 00213 da->decLightCount(); 00214 00215 GLenum light = GL_LIGHT0 + da->getLightCount(); 00216 00217 glDisable(light); 00218 00219 return Action::Continue; 00220 }
| Action::ResultE Light::renderEnter | ( | Action * | action | ) | [protected, inherited] |
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 225 of file OSGLight.cpp.
References osg::Action::Continue, osg::RenderAction::dropLight(), osg::RenderAction::getLightEnvsLightsState(), osg::RenderAction::getLocalLights(), osg::RenderAction::popVisibility(), osg::RenderAction::pushVisibility(), osg::DrawActionBase::selectVisibles(), and osg::Action::Skip.
Referenced by osg::PointLight::renderEnter(), and osg::DirectionalLight::renderEnter().
00226 { 00227 RenderAction *pAction = dynamic_cast<RenderAction *>(action); 00228 00229 // ok we can cull the light only when it is invisible and has 00230 // no LightEnv parent and local lights are enabled! 00231 if (pAction->pushVisibility()) 00232 { 00233 if(pAction->getLightEnvsLightsState().empty() && 00234 pAction->selectVisibles() == 0 && 00235 pAction->getLocalLights()) 00236 { 00237 pAction->popVisibility(); 00238 return Action::Skip; 00239 } 00240 } 00241 00242 pAction->dropLight(this); 00243 00244 return Action::Continue; 00245 }
| Action::ResultE Light::renderLeave | ( | Action * | action | ) | [protected, inherited] |
Reimplemented from osg::Group.
Reimplemented in osg::DirectionalLight, osg::PointLight, and osg::SpotLight.
Definition at line 247 of file OSGLight.cpp.
References osg::Action::Continue, osg::RenderAction::popVisibility(), and osg::RenderAction::undropLight().
Referenced by osg::SpotLight::renderLeave(), osg::PointLight::renderLeave(), and osg::DirectionalLight::renderLeave().
00248 { 00249 RenderAction *pAction = dynamic_cast<RenderAction *>(action); 00250 00251 pAction->undropLight(this); 00252 00253 pAction->popVisibility(); 00254 00255 return Action::Continue; 00256 }
| SFColor4f * osg::LightBase::getSFAmbient | ( | void | ) | [inline, inherited] |
Definition at line 75 of file OSGLightBase.inl.
References osg::LightBase::_sfAmbient.
00076 { 00077 return &_sfAmbient; 00078 }
| SFColor4f * osg::LightBase::getSFDiffuse | ( | void | ) | [inline, inherited] |
Definition at line 82 of file OSGLightBase.inl.
References osg::LightBase::_sfDiffuse.
00083 { 00084 return &_sfDiffuse; 00085 }
| SFColor4f * osg::LightBase::getSFSpecular | ( | void | ) | [inline, inherited] |
Definition at line 89 of file OSGLightBase.inl.
References osg::LightBase::_sfSpecular.
00090 { 00091 return &_sfSpecular; 00092 }
| SFNodePtr * osg::LightBase::getSFBeacon | ( | void | ) | [inline, inherited] |
Definition at line 96 of file OSGLightBase.inl.
References osg::LightBase::_sfBeacon.
00097 { 00098 return &_sfBeacon; 00099 }
| SFBool * osg::LightBase::getSFOn | ( | void | ) | [inline, inherited] |
Definition at line 103 of file OSGLightBase.inl.
References osg::LightBase::_sfOn.
00104 { 00105 return &_sfOn; 00106 }
| SFReal32 * osg::LightBase::getSFConstantAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 110 of file OSGLightBase.inl.
References osg::LightBase::_sfConstantAttenuation.
00111 { 00112 return &_sfConstantAttenuation; 00113 }
| SFReal32 * osg::LightBase::getSFLinearAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 117 of file OSGLightBase.inl.
References osg::LightBase::_sfLinearAttenuation.
00118 { 00119 return &_sfLinearAttenuation; 00120 }
| SFReal32 * osg::LightBase::getSFQuadraticAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 124 of file OSGLightBase.inl.
References osg::LightBase::_sfQuadraticAttenuation.
00125 { 00126 return &_sfQuadraticAttenuation; 00127 }
| SFReal32 * osg::LightBase::getSFShadowIntensity | ( | void | ) | [inline, inherited] |
Definition at line 131 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowIntensity.
00132 { 00133 return &_sfShadowIntensity; 00134 }
| SFUInt32 * osg::LightBase::getSFShadowMode | ( | void | ) | [inline, inherited] |
Definition at line 138 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowMode.
00139 { 00140 return &_sfShadowMode; 00141 }
| Color4f & osg::LightBase::getAmbient | ( | void | ) | [inline, inherited] |
Definition at line 146 of file OSGLightBase.inl.
References osg::LightBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::Light::makeChunk().
00147 { 00148 return _sfAmbient.getValue(); 00149 }
| const Color4f & osg::LightBase::getAmbient | ( | void | ) | const [inline, inherited] |
Definition at line 153 of file OSGLightBase.inl.
References osg::LightBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00154 { 00155 return _sfAmbient.getValue(); 00156 }
| Color4f & osg::LightBase::getDiffuse | ( | void | ) | [inline, inherited] |
Definition at line 167 of file OSGLightBase.inl.
References osg::LightBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::Light::makeChunk().
00168 { 00169 return _sfDiffuse.getValue(); 00170 }
| const Color4f & osg::LightBase::getDiffuse | ( | void | ) | const [inline, inherited] |
Definition at line 174 of file OSGLightBase.inl.
References osg::LightBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00175 { 00176 return _sfDiffuse.getValue(); 00177 }
| Color4f & osg::LightBase::getSpecular | ( | void | ) | [inline, inherited] |
Definition at line 188 of file OSGLightBase.inl.
References osg::LightBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::Light::makeChunk().
00189 { 00190 return _sfSpecular.getValue(); 00191 }
| const Color4f & osg::LightBase::getSpecular | ( | void | ) | const [inline, inherited] |
Definition at line 195 of file OSGLightBase.inl.
References osg::LightBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00196 { 00197 return _sfSpecular.getValue(); 00198 }
| NodePtr & osg::LightBase::getBeacon | ( | void | ) | [inline, inherited] |
Definition at line 209 of file OSGLightBase.inl.
References osg::LightBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::Light::drawEnter(), and osg::RenderAction::dropLight().
00210 { 00211 return _sfBeacon.getValue(); 00212 }
| const NodePtr & osg::LightBase::getBeacon | ( | void | ) | const [inline, inherited] |
Definition at line 216 of file OSGLightBase.inl.
References osg::LightBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00217 { 00218 return _sfBeacon.getValue(); 00219 }
| bool & osg::LightBase::getOn | ( | void | ) | [inline, inherited] |
Definition at line 230 of file OSGLightBase.inl.
References osg::LightBase::_sfOn, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::SpotLight::drawEnter(), osg::PointLight::drawEnter(), osg::DirectionalLight::drawEnter(), osg::SpotLight::drawLeave(), osg::PointLight::drawLeave(), osg::DirectionalLight::drawLeave(), osg::SpotLight::renderEnter(), osg::PointLight::renderEnter(), osg::DirectionalLight::renderEnter(), osg::SpotLight::renderLeave(), osg::PointLight::renderLeave(), and osg::DirectionalLight::renderLeave().
00231 { 00232 return _sfOn.getValue(); 00233 }
| const bool & osg::LightBase::getOn | ( | void | ) | const [inline, inherited] |
Definition at line 237 of file OSGLightBase.inl.
References osg::LightBase::_sfOn, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00238 { 00239 return _sfOn.getValue(); 00240 }
| Real32 & osg::LightBase::getConstantAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 251 of file OSGLightBase.inl.
References osg::LightBase::_sfConstantAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PointLight::makeChunk().
00252 { 00253 return _sfConstantAttenuation.getValue(); 00254 }
| const Real32 & osg::LightBase::getConstantAttenuation | ( | void | ) | const [inline, inherited] |
Definition at line 258 of file OSGLightBase.inl.
References osg::LightBase::_sfConstantAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00259 { 00260 return _sfConstantAttenuation.getValue(); 00261 }
| Real32 & osg::LightBase::getLinearAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 272 of file OSGLightBase.inl.
References osg::LightBase::_sfLinearAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PointLight::makeChunk().
00273 { 00274 return _sfLinearAttenuation.getValue(); 00275 }
| const Real32 & osg::LightBase::getLinearAttenuation | ( | void | ) | const [inline, inherited] |
Definition at line 279 of file OSGLightBase.inl.
References osg::LightBase::_sfLinearAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00280 { 00281 return _sfLinearAttenuation.getValue(); 00282 }
| Real32 & osg::LightBase::getQuadraticAttenuation | ( | void | ) | [inline, inherited] |
Definition at line 293 of file OSGLightBase.inl.
References osg::LightBase::_sfQuadraticAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::PointLight::makeChunk().
00294 { 00295 return _sfQuadraticAttenuation.getValue(); 00296 }
| const Real32 & osg::LightBase::getQuadraticAttenuation | ( | void | ) | const [inline, inherited] |
Definition at line 300 of file OSGLightBase.inl.
References osg::LightBase::_sfQuadraticAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00301 { 00302 return _sfQuadraticAttenuation.getValue(); 00303 }
| Real32 & osg::LightBase::getShadowIntensity | ( | void | ) | [inline, inherited] |
Definition at line 314 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowIntensity, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00315 { 00316 return _sfShadowIntensity.getValue(); 00317 }
| const Real32 & osg::LightBase::getShadowIntensity | ( | void | ) | const [inline, inherited] |
Definition at line 321 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowIntensity, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00322 { 00323 return _sfShadowIntensity.getValue(); 00324 }
| UInt32 & osg::LightBase::getShadowMode | ( | void | ) | [inline, inherited] |
Definition at line 335 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowMode, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00336 { 00337 return _sfShadowMode.getValue(); 00338 }
| const UInt32 & osg::LightBase::getShadowMode | ( | void | ) | const [inline, inherited] |
Definition at line 342 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowMode, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00343 { 00344 return _sfShadowMode.getValue(); 00345 }
| void osg::LightBase::setBeacon | ( | const NodePtr & | value | ) | [inline, inherited] |
Definition at line 223 of file OSGLightBase.inl.
References osg::LightBase::_sfBeacon, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::LightBase::setOn | ( | const bool & | value | ) | [inline, inherited] |
Definition at line 244 of file OSGLightBase.inl.
References osg::LightBase::_sfOn, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::LightBase::setConstantAttenuation | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 265 of file OSGLightBase.inl.
References osg::LightBase::_sfConstantAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00266 { 00267 _sfConstantAttenuation.setValue(value); 00268 }
| void osg::LightBase::setLinearAttenuation | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 286 of file OSGLightBase.inl.
References osg::LightBase::_sfLinearAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00287 { 00288 _sfLinearAttenuation.setValue(value); 00289 }
| void osg::LightBase::setQuadraticAttenuation | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 307 of file OSGLightBase.inl.
References osg::LightBase::_sfQuadraticAttenuation, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00308 { 00309 _sfQuadraticAttenuation.setValue(value); 00310 }
| void osg::LightBase::setShadowIntensity | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 328 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowIntensity, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00329 { 00330 _sfShadowIntensity.setValue(value); 00331 }
| void osg::LightBase::setShadowMode | ( | const UInt32 & | value | ) | [inline, inherited] |
Definition at line 349 of file OSGLightBase.inl.
References osg::LightBase::_sfShadowMode, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00350 { 00351 _sfShadowMode.setValue(value); 00352 }
| void osg::LightBase::executeSyncImpl | ( | LightBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 471 of file OSGLightBase.cpp.
References osg::LightBase::_sfAmbient, osg::LightBase::_sfBeacon, osg::LightBase::_sfConstantAttenuation, osg::LightBase::_sfDiffuse, osg::LightBase::_sfLinearAttenuation, osg::LightBase::_sfOn, osg::LightBase::_sfQuadraticAttenuation, osg::LightBase::_sfShadowIntensity, osg::LightBase::_sfShadowMode, osg::LightBase::_sfSpecular, osg::LightBase::AmbientFieldMask, osg::LightBase::BeaconFieldMask, osg::LightBase::ConstantAttenuationFieldMask, osg::LightBase::DiffuseFieldMask, osg::GroupBase::executeSyncImpl(), osg::LightBase::LinearAttenuationFieldMask, osg::FieldBits::NoField, osg::LightBase::OnFieldMask, osg::LightBase::QuadraticAttenuationFieldMask, osg::LightBase::ShadowIntensityFieldMask, osg::LightBase::ShadowModeFieldMask, osg::LightBase::SpecularFieldMask, and osg::SField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::LightBase::executeSync(), osg::PointLightBase::executeSyncImpl(), and executeSyncImpl().
00473 { 00474 00475 Inherited::executeSyncImpl(pOther, whichField); 00476 00477 if(FieldBits::NoField != (AmbientFieldMask & whichField)) 00478 _sfAmbient.syncWith(pOther->_sfAmbient); 00479 00480 if(FieldBits::NoField != (DiffuseFieldMask & whichField)) 00481 _sfDiffuse.syncWith(pOther->_sfDiffuse); 00482 00483 if(FieldBits::NoField != (SpecularFieldMask & whichField)) 00484 _sfSpecular.syncWith(pOther->_sfSpecular); 00485 00486 if(FieldBits::NoField != (BeaconFieldMask & whichField)) 00487 _sfBeacon.syncWith(pOther->_sfBeacon); 00488 00489 if(FieldBits::NoField != (OnFieldMask & whichField)) 00490 _sfOn.syncWith(pOther->_sfOn); 00491 00492 if(FieldBits::NoField != (ConstantAttenuationFieldMask & whichField)) 00493 _sfConstantAttenuation.syncWith(pOther->_sfConstantAttenuation); 00494 00495 if(FieldBits::NoField != (LinearAttenuationFieldMask & whichField)) 00496 _sfLinearAttenuation.syncWith(pOther->_sfLinearAttenuation); 00497 00498 if(FieldBits::NoField != (QuadraticAttenuationFieldMask & whichField)) 00499 _sfQuadraticAttenuation.syncWith(pOther->_sfQuadraticAttenuation); 00500 00501 if(FieldBits::NoField != (ShadowIntensityFieldMask & whichField)) 00502 _sfShadowIntensity.syncWith(pOther->_sfShadowIntensity); 00503 00504 if(FieldBits::NoField != (ShadowModeFieldMask & whichField)) 00505 _sfShadowMode.syncWith(pOther->_sfShadowMode); 00506 00507 00508 }
| void GroupBase::executeSyncImpl | ( | GroupBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 191 of file OSGGroupBase.cpp.
References osg::NodeCore::executeSyncImpl().
Referenced by osg::GroupBase::executeSync(), osg::TransformBase::executeSyncImpl(), osg::SwitchBase::executeSyncImpl(), osg::ScreenGroupBase::executeSyncImpl(), osg::ProxyGroupBase::executeSyncImpl(), osg::MaterialPoolBase::executeSyncImpl(), osg::MaterialGroupBase::executeSyncImpl(), osg::LightBase::executeSyncImpl(), osg::InverseTransformBase::executeSyncImpl(), osg::DistanceLODBase::executeSyncImpl(), osg::ClipPlaneBase::executeSyncImpl(), and osg::BillboardBase::executeSyncImpl().
00193 { 00194 00195 Inherited::executeSyncImpl(pOther, whichField); 00196 00197 00198 }
| void osg::NodeCore::executeSyncImpl | ( | NodeCore * | pOther, | |
| const BitVector & | whichField | |||
| ) | [inline, protected, inherited] |
Definition at line 180 of file OSGNodeCore.inl.
References osg::NodeCore::_parents, osg::AttachmentContainer::executeSyncImpl(), osg::FieldBits::NoField, osg::NodeCore::ParentsFieldMask, and osg::MField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::NodeCore::executeSync(), osg::StateSortingGroupBase::executeSyncImpl(), osg::LightEnvBase::executeSyncImpl(), osg::InlineBase::executeSyncImpl(), osg::GroupBase::executeSyncImpl(), osg::DVRVolumeBase::executeSyncImpl(), and osg::DrawableBase::executeSyncImpl().
00182 { 00183 Inherited::executeSyncImpl(pOther, whichField); 00184 00185 if(FieldBits::NoField != (ParentsFieldMask & whichField)) 00186 { 00187 _parents.syncWith(pOther->_parents); 00188 } 00189 }
| 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().
| Action::ResultE Group::intersect | ( | Action * | action | ) | [protected, inherited] |
Reimplemented in osg::Switch.
Definition at line 146 of file OSGGroup.cpp.
References osg::Action::Continue, osg::Action::getActNode(), osg::IntersectAction::getLine(), osg::DynamicVolume::intersect(), osg::Volume::isValid(), and osg::Action::Skip.
Referenced by osg::Group::initMethod(), and osg::Transform::intersectEnter().
00147 { 00148 IntersectAction *ia = dynamic_cast<IntersectAction *>(action); 00149 const DynamicVolume &dv = ia->getActNode()->getVolume(); 00150 00151 if(dv.isValid() && ! dv.intersect(ia->getLine())) 00152 { 00153 return Action::Skip; //bv missed -> can not hit children 00154 } 00155 00156 return Action::Continue; 00157 }
| MFNodePtr & osg::NodeCore::getParents | ( | void | ) | [inline, inherited] |
Definition at line 56 of file OSGNodeCore.inl.
Referenced by osg::Surface::FindClosestPoint().
00057 { 00058 return _parents; 00059 }
| const MFNodePtr & osg::NodeCore::getParents | ( | void | ) | const [inline, inherited] |
Definition at line 62 of file OSGNodeCore.inl.
References osg::NodeCore::_parents.
00063 { 00064 return _parents; 00065 }
| MFNodePtr * osg::NodeCore::getMFParents | ( | void | ) | [inline, inherited] |
Definition at line 68 of file OSGNodeCore.inl.
References osg::NodeCore::_parents.
00069 { 00070 return &_parents; 00071 }
| void osg::NodeCore::invalidateVolume | ( | void | ) | [inline, virtual, inherited] |
Definition at line 237 of file OSGNodeCore.inl.
References osg::NodeCore::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::size().
Referenced by osg::Transform::changed(), and osg::Slices::changed().
00238 { 00239 for(UInt32 i = 0; i < _parents.size(); i++) 00240 { 00241 _parents[i]->invalidateVolume(); 00242 } 00243 }
| void osg::NodeCore::onDestroy | ( | void | ) | [inline, protected, virtual, inherited] |
Reimplemented from osg::FieldContainer.
Reimplemented in osg::Geometry, osg::Surface, and osg::MaterialPool.
Definition at line 142 of file OSGNodeCore.inl.
Referenced by osg::Geometry::onDestroy().
| void osg::NodeCore::addParent | ( | const NodePtr & | parent | ) | [inline, protected, inherited] |
Definition at line 150 of file OSGNodeCore.inl.
References osg::NodeCore::_parents, and osg::MField< FieldTypeT, fieldNameSpace >::push_back().
00151 { 00152 _parents.push_back(parent); 00153 }
| void osg::NodeCore::subParent | ( | const NodePtr & | parent | ) | [inline, protected, inherited] |
Definition at line 156 of file OSGNodeCore.inl.
References osg::NodeCore::_parents, osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::MField< FieldTypeT, fieldNameSpace >::erase(), and osg::MField< FieldTypeT, fieldNameSpace >::find().
00157 { 00158 MFNodePtr::iterator parentIt = _parents.find(parent); 00159 00160 if(parentIt != _parents.end()) 00161 { 00162 _parents.erase(parentIt); 00163 } 00164 }
| NodeCorePtr osg::NodeCore::getPtr | ( | void | ) | const [inline, protected, inherited] |
Reimplemented in osg::Geometry.
Definition at line 170 of file OSGNodeCore.inl.
Referenced by osg::MaterialPool::add(), osg::NodeCore::dump(), and osg::MaterialPool::sub().
| 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 }
| void osg::NodeCore::accumulateMatrix | ( | Matrix & | result | ) | [inline, protected, virtual, inherited] |
Reimplemented in osg::Billboard, osg::InverseTransform, osg::ScreenGroup, and osg::Transform.
Definition at line 224 of file OSGNodeCore.inl.
| void osg::NodeCore::adjustVolume | ( | Volume & | volume | ) | [inline, protected, virtual, inherited] |
Reimplemented in osg::Geometry, osg::Slices, osg::Particles, osg::DVRVolume, osg::Surface, osg::Billboard, osg::InverseTransform, osg::ProxyGroup, osg::ScreenGroup, and osg::Transform.
Definition at line 232 of file OSGNodeCore.inl.
Referenced by osg::Billboard::adjustVolume().
| 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 }
| 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(), 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(), 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::Light.
Reimplemented in osg::DirectionalLight.
Definition at line 230 of file OSGDirectionalLightBase.h.
const osg::BitVector DirectionalLightBase::DirectionFieldMask [static] |
Initial value:
(TypeTraits<BitVector>::One << DirectionalLightBase::DirectionFieldId)
Definition at line 98 of file OSGDirectionalLightBase.h.
Referenced by copyFromBin(), copyToBin(), executeSyncImpl(), and getBinSize().
const osg::BitVector DirectionalLightBase::MTInfluenceMask [static] |
Initial value:
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::LightBase.
Definition at line 101 of file OSGDirectionalLightBase.h.
Vec3f DirectionalLightBase::_sfDirection [protected] |
Definition at line 178 of file OSGDirectionalLightBase.h.
Referenced by copyFromBin(), copyToBin(), osg::DirectionalLight::drawEnter(), executeSyncImpl(), getBinSize(), getDirection(), getSFDirection(), osg::DirectionalLight::makeChunk(), setDirection(), and osg::DirectionalLight::setDirection().
FieldDescription * DirectionalLightBase::_desc [static, private] |
Initial value:
{
new FieldDescription(SFVec3f::getClassType(),
"direction",
DirectionFieldId, DirectionFieldMask,
false,
(FieldAccessMethod) &DirectionalLightBase::getSFDirection)
}
Reimplemented from osg::LightBase.
Definition at line 232 of file OSGDirectionalLightBase.h.
FieldContainerType DirectionalLightBase::_type [static, private] |
Reimplemented from osg::LightBase.
Definition at line 233 of file OSGDirectionalLightBase.h.
Referenced by getClassType(), getClassTypeId(), and getType().
LightChunkPtr osg::Light::_pChunk [protected, inherited] |
Definition at line 121 of file OSGLight.h.
Referenced by osg::Light::getChunk(), osg::SpotLight::makeChunk(), osg::PointLight::makeChunk(), osg::Light::makeChunk(), osg::DirectionalLight::makeChunk(), and osg::Light::~Light().
const osg::BitVector osg::LightBase::AmbientFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::AmbientFieldId)
Definition at line 116 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::DiffuseFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::DiffuseFieldId)
Definition at line 117 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::SpecularFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::SpecularFieldId)
Definition at line 118 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::BeaconFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::BeaconFieldId)
Definition at line 119 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::OnFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::OnFieldId)
Definition at line 120 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), and osg::SimpleSceneManager::setHeadlight().
const osg::BitVector osg::LightBase::ConstantAttenuationFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::ConstantAttenuationFieldId)
Definition at line 121 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::LinearAttenuationFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::LinearAttenuationFieldId)
Definition at line 122 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::QuadraticAttenuationFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::QuadraticAttenuationFieldId)
Definition at line 123 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::ShadowIntensityFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::ShadowIntensityFieldId)
Definition at line 124 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
const osg::BitVector osg::LightBase::ShadowModeFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << LightBase::ShadowModeFieldId)
Definition at line 125 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), and osg::LightBase::getBinSize().
Color4f osg::LightBase::_sfAmbient [protected, inherited] |
The light's ambient component.
Definition at line 225 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getAmbient(), osg::LightBase::getBinSize(), osg::LightBase::getSFAmbient(), osg::LightBase::setAmbient(), and osg::Light::setAmbient().
Color4f osg::LightBase::_sfDiffuse [protected, inherited] |
The light's diffuse color.
Definition at line 226 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getDiffuse(), osg::LightBase::getSFDiffuse(), osg::LightBase::setDiffuse(), and osg::Light::setDiffuse().
Color4f osg::LightBase::_sfSpecular [protected, inherited] |
The light's specular color.
Definition at line 227 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getSFSpecular(), osg::LightBase::getSpecular(), osg::LightBase::setSpecular(), and osg::Light::setSpecular().
NodePtr osg::LightBase::_sfBeacon [protected, inherited] |
The light's ambient component.
Definition at line 228 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBeacon(), osg::LightBase::getBinSize(), osg::LightBase::getSFBeacon(), and osg::LightBase::setBeacon().
bool osg::LightBase::_sfOn [protected, inherited] |
The light's ambient component.
Definition at line 229 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getOn(), osg::LightBase::getSFOn(), and osg::LightBase::setOn().
Real32 osg::LightBase::_sfConstantAttenuation [protected, inherited] |
The light's constant attenuation.
Definition at line 230 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getConstantAttenuation(), osg::LightBase::getSFConstantAttenuation(), osg::PointLight::setAttenuation(), and osg::LightBase::setConstantAttenuation().
Real32 osg::LightBase::_sfLinearAttenuation [protected, inherited] |
The light's linear attenuation.
Definition at line 231 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getLinearAttenuation(), osg::LightBase::getSFLinearAttenuation(), osg::PointLight::setAttenuation(), and osg::LightBase::setLinearAttenuation().
Real32 osg::LightBase::_sfQuadraticAttenuation [protected, inherited] |
The light's quadratic attenuation.
Definition at line 232 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::Light::drawEnter(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getQuadraticAttenuation(), osg::LightBase::getSFQuadraticAttenuation(), osg::PointLight::setAttenuation(), and osg::LightBase::setQuadraticAttenuation().
Real32 osg::LightBase::_sfShadowIntensity [protected, inherited] |
The light's ambient component.
Definition at line 233 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getSFShadowIntensity(), osg::LightBase::getShadowIntensity(), and osg::LightBase::setShadowIntensity().
UInt32 osg::LightBase::_sfShadowMode [protected, inherited] |
possible values are CAST_SHADOW_AUTO, CAST_SHADOW_ON, CAST_SHADOW_OFF in auto mode the light source casts shadows if the light is on and the shadow intensity is greater than zero.
Definition at line 234 of file OSGLightBase.h.
Referenced by osg::LightBase::copyFromBin(), osg::LightBase::copyToBin(), osg::LightBase::executeSyncImpl(), osg::LightBase::getBinSize(), osg::LightBase::getSFShadowMode(), osg::LightBase::getShadowMode(), and osg::LightBase::setShadowMode().
const BitVector NodeCore::ParentsFieldMask = (1 << NodeCore::ParentsFieldId ) [static, inherited] |
Definition at line 99 of file OSGNodeCore.h.
Referenced by osg::NodeCore::copyFromBin(), osg::NodeCore::copyToBin(), osg::NodeCore::executeSyncImpl(), osg::NodeCore::getBinSize(), and osg::Node::~Node().
const bool osg::NodeCore::isNodeCore = true [static, inherited] |
MFNodePtr osg::NodeCore::_parents [protected, inherited] |
Definition at line 168 of file OSGNodeCore.h.
Referenced by osg::NodeCore::addParent(), osg::ProxyGroup::changed(), osg::Particles::changed(), osg::Geometry::changed(), osg::NodeCore::copyFromBin(), osg::NodeCore::copyToBin(), osg::NodeCore::dump(), osg::Geometry::dump(), osg::NodeCore::executeSyncImpl(), osg::NodeCore::getBinSize(), osg::NodeCore::getMFParents(), osg::NodeCore::getParents(), osg::NodeCore::getType(), osg::NodeCore::invalidateVolume(), and osg::NodeCore::subParent().
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.
UInt32 osg::FieldContainer::_shares [protected, inherited] |
Definition at line 199 of file OSGFieldContainerImpl.h.
1.5.5