#include <OSGFresnelMaterial.h>

Rendering | |
| virtual StatePtr | getState (UInt32 index=0) |
| virtual bool | isMultiPass (void) const |
| virtual UInt32 | getNPasses (void) const |
| virtual Int32 | getRealSortKey (void) const |
| typedef TypedFunctor1Base < Action::ResultE, PtrCallArg < DrawActionBase > > | DrawFunctor |
Public Types | |
| enum | { AmbientFieldId = Inherited::NextFieldId, DiffuseFieldId = AmbientFieldId + 1, SpecularFieldId = DiffuseFieldId + 1, ShininessFieldId = SpecularFieldId + 1, EmissionFieldId = ShininessFieldId + 1, TransparencyFieldId = EmissionFieldId + 1, LitFieldId = TransparencyFieldId + 1, ColorMaterialFieldId = LitFieldId + 1, IndexFieldId = ColorMaterialFieldId + 1, ScaleFieldId = IndexFieldId + 1, BiasFieldId = ScaleFieldId + 1, ImageFieldId = BiasFieldId + 1, NextFieldId = ImageFieldId + 1 } |
| typedef FresnelMaterialPtr | Ptr |
| enum | { ChunksFieldId = Inherited::NextFieldId, SlotsFieldId = ChunksFieldId + 1, NextFieldId = SlotsFieldId + 1 } |
| enum | { SortKeyFieldId = Inherited::NextFieldId, TransparencyModeFieldId = SortKeyFieldId + 1, NextFieldId = TransparencyModeFieldId + 1 } |
| enum | { AttachmentsFieldId = Inherited::NextFieldId, NextFieldId = AttachmentsFieldId + 1 } |
| enum | { NextFieldId = 1 } |
Public Member Functions | |
Sync | |
| virtual void | changed (BitVector whichField, UInt32 origin) |
Output | |
| virtual void | dump (UInt32 uiIndent=0, const BitVector bvFlags=0) const |
| virtual StatePtr | makeState (void) |
| virtual void | rebuildState (void) |
| virtual bool | isTransparent (void) const |
Texture specific | |
| void | setImage (ImagePtr &pImage) |
FieldContainer Get | |
| virtual FieldContainerType & | getType (void) |
| virtual const FieldContainerType & | getType (void) const |
| virtual UInt32 | getContainerSize (void) const |
Field Get | |
| SFColor3f * | getSFAmbient (void) |
| Get the FresnelMaterial::_sfAmbient field. | |
| SFColor3f * | getSFDiffuse (void) |
| Get the FresnelMaterial::_sfDiffuse field. | |
| SFColor3f * | getSFSpecular (void) |
| Get the FresnelMaterial::_sfSpecular field. | |
| SFReal32 * | getSFShininess (void) |
| Get the FresnelMaterial::_sfShininess field. | |
| SFColor3f * | getSFEmission (void) |
| Get the FresnelMaterial::_sfEmission field. | |
| SFReal32 * | getSFTransparency (void) |
| Get the FresnelMaterial::_sfTransparency field. | |
| SFBool * | getSFLit (void) |
| Get the FresnelMaterial::_sfLit field. | |
| SFGLenum * | getSFColorMaterial (void) |
| Get the FresnelMaterial::_sfColorMaterial field. | |
| SFReal32 * | getSFIndex (void) |
| Get the FresnelMaterial::_sfIndex field. | |
| SFReal32 * | getSFScale (void) |
| Get the FresnelMaterial::_sfScale field. | |
| SFReal32 * | getSFBias (void) |
| Get the FresnelMaterial::_sfBias field. | |
| SFImagePtr * | getSFImage (void) |
| Get the FresnelMaterial::_sfImage field. | |
| Color3f & | getAmbient (void) |
| Get the value of the FresnelMaterial::_sfAmbient field. | |
| const Color3f & | getAmbient (void) const |
| Get the value of the FresnelMaterial::_sfAmbient field. | |
| Color3f & | getDiffuse (void) |
| Get the value of the FresnelMaterial::_sfDiffuse field. | |
| const Color3f & | getDiffuse (void) const |
| Get the value of the FresnelMaterial::_sfDiffuse field. | |
| Color3f & | getSpecular (void) |
| Get the value of the FresnelMaterial::_sfSpecular field. | |
| const Color3f & | getSpecular (void) const |
| Get the value of the FresnelMaterial::_sfSpecular field. | |
| Real32 & | getShininess (void) |
| Get the value of the FresnelMaterial::_sfShininess field. | |
| const Real32 & | getShininess (void) const |
| Get the value of the FresnelMaterial::_sfShininess field. | |
| Color3f & | getEmission (void) |
| Get the value of the FresnelMaterial::_sfEmission field. | |
| const Color3f & | getEmission (void) const |
| Get the value of the FresnelMaterial::_sfEmission field. | |
| Real32 & | getTransparency (void) |
| Get the value of the FresnelMaterial::_sfTransparency field. | |
| const Real32 & | getTransparency (void) const |
| Get the value of the FresnelMaterial::_sfTransparency field. | |
| bool & | getLit (void) |
| Get the value of the FresnelMaterial::_sfLit field. | |
| const bool & | getLit (void) const |
| Get the value of the FresnelMaterial::_sfLit field. | |
| GLenum & | getColorMaterial (void) |
| Get the value of the FresnelMaterial::_sfColorMaterial field. | |
| const GLenum & | getColorMaterial (void) const |
| Get the value of the FresnelMaterial::_sfColorMaterial field. | |
| Real32 & | getIndex (void) |
| Get the value of the FresnelMaterial::_sfIndex field. | |
| const Real32 & | getIndex (void) const |
| Get the value of the FresnelMaterial::_sfIndex field. | |
| Real32 & | getScale (void) |
| Get the value of the FresnelMaterial::_sfScale field. | |
| const Real32 & | getScale (void) const |
| Get the value of the FresnelMaterial::_sfScale field. | |
| Real32 & | getBias (void) |
| Get the value of the FresnelMaterial::_sfBias field. | |
| const Real32 & | getBias (void) const |
| Get the value of the FresnelMaterial::_sfBias field. | |
| ImagePtr & | getImage (void) |
| Get the value of the FresnelMaterial::_sfImage field. | |
| const ImagePtr & | getImage (void) const |
| Get the value of the FresnelMaterial::_sfImage field. | |
Field Set | |
| void | setAmbient (const Color3f &value) |
| Set the value of the FresnelMaterial::_sfAmbient field. | |
| void | setDiffuse (const Color3f &value) |
| Set the value of the FresnelMaterial::_sfDiffuse field. | |
| void | setSpecular (const Color3f &value) |
| Set the value of the FresnelMaterial::_sfSpecular field. | |
| void | setShininess (const Real32 &value) |
| Set the value of the FresnelMaterial::_sfShininess field. | |
| void | setEmission (const Color3f &value) |
| Set the value of the FresnelMaterial::_sfEmission field. | |
| void | setTransparency (const Real32 &value) |
| Set the value of the FresnelMaterial::_sfTransparency field. | |
| void | setLit (const bool &value) |
| Set the value of the FresnelMaterial::_sfLit field. | |
| void | setColorMaterial (const GLenum &value) |
| Set the value of the FresnelMaterial::_sfColorMaterial field. | |
| void | setIndex (const Real32 &value) |
| Set the value of the FresnelMaterial::_sfIndex field. | |
| void | setScale (const Real32 &value) |
| Set the value of the FresnelMaterial::_sfScale field. | |
| void | setBias (const Real32 &value) |
| Set the value of the FresnelMaterial::_sfBias field. | |
| void | setImage (const ImagePtr &value) |
| Set the value of the FresnelMaterial::_sfImage 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 |
Rendering | |
| virtual void | draw (DrawFunctor &func, DrawActionBase *action) |
| virtual void | draw (Geometry *geo, DrawActionBase *action) |
Access | |
| bool | addChunk (StateChunkPtr chunk, Int32 slot=State::AutoSlotReplace) |
| bool | subChunk (StateChunkPtr chunk, Int32 slot=State::AutoSlotReplace) |
| Int32 | find (StateChunkPtr chunk) |
| StateChunkPtr | find (const FieldContainerType &type, Int32 slot=State::AutoSlotReplace) |
| void | clearChunks (void) |
| virtual bool | operator== (const Material &other) |
Comparison | |
| virtual bool | operator== (const Material &other) const |
| virtual bool | operator< (const Material &other) const |
| virtual bool | operator!= (const Material &other) const |
Field Get | |
| MFStateChunkPtr * | getMFChunks (void) |
| Get the ChunkMaterial::_mfChunks field. | |
| MFInt32 * | getMFSlots (void) |
| Get the ChunkMaterial::_mfSlots field. | |
| StateChunkPtr & | getChunks (const UInt32 index) |
| Get the value of the index element the ChunkMaterial::_mfChunks field. | |
| MFStateChunkPtr & | getChunks (void) |
| Get the ChunkMaterial::_mfChunks field. | |
| const MFStateChunkPtr & | getChunks (void) const |
| Get the ChunkMaterial::_mfChunks field. | |
| Int32 & | getSlots (const UInt32 index) |
| Get the value of the index element the ChunkMaterial::_mfSlots field. | |
| MFInt32 & | getSlots (void) |
| Get the ChunkMaterial::_mfSlots field. | |
| const MFInt32 & | getSlots (void) const |
| Get the ChunkMaterial::_mfSlots field. | |
Field Get | |
| SFInt32 * | getSFSortKey (void) |
| Get the Material::_sfSortKey field. | |
| SFInt32 * | getSFTransparencyMode (void) |
| Get the Material::_sfTransparencyMode field. | |
| Int32 & | getSortKey (void) |
| Get the value of the Material::_sfSortKey field. | |
| const Int32 & | getSortKey (void) const |
| Get the value of the Material::_sfSortKey field. | |
| Int32 & | getTransparencyMode (void) |
| Get the value of the Material::_sfTransparencyMode field. | |
| const Int32 & | getTransparencyMode (void) const |
| Get the value of the Material::_sfTransparencyMode field. | |
Field Set | |
| void | setSortKey (const Int32 &value) |
| Set the value of the Material::_sfSortKey field. | |
| void | setTransparencyMode (const Int32 &value) |
| Set the value of the Material::_sfTransparencyMode 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) |
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 FresnelMaterialPtr | create (void) |
| create a new instance of the class | |
| static FresnelMaterialPtr | createEmpty (void) |
| create an empty new instance of the class, do not copy the prototype | |
Class Get | |
| static const char * | getClassname (void) |
Get Class Type Information | |
| static UInt16 | getClassGroupId (void) |
Static Public Attributes | |
| static const osg::BitVector | AmbientFieldMask |
| static const osg::BitVector | DiffuseFieldMask |
| static const osg::BitVector | SpecularFieldMask |
| static const osg::BitVector | ShininessFieldMask |
| static const osg::BitVector | EmissionFieldMask |
| static const osg::BitVector | TransparencyFieldMask |
| static const osg::BitVector | LitFieldMask |
| static const osg::BitVector | ColorMaterialFieldMask |
| static const osg::BitVector | IndexFieldMask |
| static const osg::BitVector | ScaleFieldMask |
| static const osg::BitVector | BiasFieldMask |
| static const osg::BitVector | ImageFieldMask |
| static const osg::BitVector | MTInfluenceMask |
| static const osg::BitVector | ChunksFieldMask |
| static const osg::BitVector | SlotsFieldMask |
| static const osg::BitVector | SortKeyFieldMask |
| static const osg::BitVector | TransparencyModeFieldMask |
| static const BitVector | AttachmentsFieldMask |
| static const BitVector | NextFieldMask |
Constants | |
| static const Int32 | NoStateSorting = 0x7fffffff |
| static const Int32 | TransparencyAutoDetection = 0 |
| static const Int32 | TransparencyForceTransparent = 1 |
| static const Int32 | TransparencyForceOpaque = 2 |
CoredNodePtr helper | |
| static const bool | isNodeCore = false |
Protected Member Functions | |
Constructors | |
| FresnelMaterial (void) | |
| FresnelMaterial (const FresnelMaterial &source) | |
Destructors | |
| virtual | ~FresnelMaterial (void) |
Sync | |
| void | executeSyncImpl (FresnelMaterialBase *pOther, const BitVector &whichField) |
| virtual void | executeSync (FieldContainer &other, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (ChunkMaterialBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (MaterialBase *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (AttachmentContainer *pOther, const BitVector &whichField) |
Sync | |
| void | executeSyncImpl (FieldContainer *pOther, const BitVector &whichField) |
Destructor | |
| void | addChunks (StatePtr state) |
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 | |
| StatePtr | _pState |
Fields | |
| SFColor3f | _sfAmbient |
| SFColor3f | _sfDiffuse |
| SFColor3f | _sfSpecular |
| SFReal32 | _sfShininess |
| SFColor3f | _sfEmission |
| SFReal32 | _sfTransparency |
| SFBool | _sfLit |
| SFGLenum | _sfColorMaterial |
| SFReal32 | _sfIndex |
| SFReal32 | _sfScale |
| SFReal32 | _sfBias |
| SFImagePtr | _sfImage |
Fields | |
| MFStateChunkPtr | _mfChunks |
| MFInt32 | _mfSlots |
Fields | |
| SFInt32 | _sfSortKey |
| SFInt32 | _sfTransparencyMode |
Fields | |
| SFAttachmentMap | _attachmentMap |
Member | |
| UInt32 | _shares |
Private Types | |
| typedef FresnelMaterialBase | Inherited |
Private Member Functions | |
| void | prepareLocalChunks (void) |
| void | updateFresnel (void) |
| void | operator= (const FresnelMaterial &source) |
Static Private Member Functions | |
| static void | initMethod (void) |
Private Attributes | |
| MaterialChunkPtr | _materialChunk |
| TextureChunkPtr | _textureChunk |
| TexGenChunkPtr | _texGenChunk |
| BlendChunkPtr | _blendChunk |
| ImagePtr | _img |
Friends | |
| class | FieldContainer |
| class | FresnelMaterialBase |
Definition at line 60 of file OSGFresnelMaterial.h.
typedef FresnelMaterialBase osg::FresnelMaterial::Inherited [private] |
typedef FresnelMaterialPtr osg::FresnelMaterialBase::Ptr [inherited] |
typedef TypedFunctor1Base<Action::ResultE, PtrCallArg<DrawActionBase> > osg::Material::DrawFunctor [inherited] |
Definition at line 107 of file OSGMaterial.h.
anonymous enum [inherited] |
| AmbientFieldId | |
| DiffuseFieldId | |
| SpecularFieldId | |
| ShininessFieldId | |
| EmissionFieldId | |
| TransparencyFieldId | |
| LitFieldId | |
| ColorMaterialFieldId | |
| IndexFieldId | |
| ScaleFieldId | |
| BiasFieldId | |
| ImageFieldId | |
| NextFieldId |
Definition at line 103 of file OSGFresnelMaterialBase.h.
00104 { 00105 AmbientFieldId = Inherited::NextFieldId, 00106 DiffuseFieldId = AmbientFieldId + 1, 00107 SpecularFieldId = DiffuseFieldId + 1, 00108 ShininessFieldId = SpecularFieldId + 1, 00109 EmissionFieldId = ShininessFieldId + 1, 00110 TransparencyFieldId = EmissionFieldId + 1, 00111 LitFieldId = TransparencyFieldId + 1, 00112 ColorMaterialFieldId = LitFieldId + 1, 00113 IndexFieldId = ColorMaterialFieldId + 1, 00114 ScaleFieldId = IndexFieldId + 1, 00115 BiasFieldId = ScaleFieldId + 1, 00116 ImageFieldId = BiasFieldId + 1, 00117 NextFieldId = ImageFieldId + 1 00118 };
anonymous enum [inherited] |
Definition at line 93 of file OSGChunkMaterialBase.h.
00094 { 00095 ChunksFieldId = Inherited::NextFieldId, 00096 SlotsFieldId = ChunksFieldId + 1, 00097 NextFieldId = SlotsFieldId + 1 00098 };
anonymous enum [inherited] |
Definition at line 93 of file OSGMaterialBase.h.
00094 { 00095 SortKeyFieldId = Inherited::NextFieldId, 00096 TransparencyModeFieldId = SortKeyFieldId + 1, 00097 NextFieldId = TransparencyModeFieldId + 1 00098 };
anonymous enum [inherited] |
Definition at line 78 of file OSGAttachmentContainerImpl.h.
00079 { 00080 AttachmentsFieldId = Inherited::NextFieldId, 00081 NextFieldId = AttachmentsFieldId + 1 00082 };
anonymous enum [inherited] |
| FresnelMaterial::FresnelMaterial | ( | void | ) | [protected] |
Definition at line 81 of file OSGFresnelMaterial.cpp.
00081 : 00082 Inherited(), 00083 _materialChunk(NullFC), 00084 _textureChunk(NullFC), 00085 _texGenChunk(NullFC), 00086 _blendChunk(NullFC), 00087 _img(NullFC) 00088 { 00089 }
| FresnelMaterial::FresnelMaterial | ( | const FresnelMaterial & | source | ) | [protected] |
Definition at line 91 of file OSGFresnelMaterial.cpp.
00091 : 00092 Inherited(source), 00093 _materialChunk(source._materialChunk), 00094 _textureChunk(source._textureChunk), 00095 _texGenChunk(source._texGenChunk), 00096 _blendChunk(source._blendChunk), 00097 _img(source._img) 00098 { 00099 }
| FresnelMaterial::~FresnelMaterial | ( | void | ) | [protected, virtual] |
Definition at line 101 of file OSGFresnelMaterial.cpp.
References _blendChunk, _img, _materialChunk, osg::FresnelMaterialBase::_sfImage, _texGenChunk, _textureChunk, osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::NullFC, and osg::subRefCP().
00102 { 00103 if(_sfImage.getValue() != NullFC) 00104 subRefCP(_sfImage.getValue()); 00105 00106 if(_materialChunk != NullFC) 00107 subRefCP(_materialChunk); 00108 00109 if(_textureChunk != NullFC) 00110 subRefCP(_textureChunk); 00111 00112 if(_texGenChunk != NullFC) 00113 subRefCP(_texGenChunk); 00114 00115 if(_blendChunk != NullFC) 00116 subRefCP(_blendChunk); 00117 00118 if(_img != NullFC) 00119 subRefCP(_img); 00120 }
Reimplemented from osg::ChunkMaterial.
Definition at line 239 of file OSGFresnelMaterial.cpp.
References _img, osg::FresnelMaterialBase::_sfImage, _textureChunk, osg::ChangedOrigin::Abstract, osg::ChangedOrigin::AbstrIncRefCount, osg::addRefCP(), osg::beginEditCP(), osg::FresnelMaterialBase::BiasFieldMask, osg::ChunkMaterial::changed(), osg::endEditCP(), osg::FresnelMaterialBase::getImage(), osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::TextureChunkBase::ImageFieldMask, osg::FresnelMaterialBase::ImageFieldMask, osg::FresnelMaterialBase::IndexFieldMask, osg::NullFC, osg::Image::OSG_RGBA_PF, prepareLocalChunks(), osg::FresnelMaterialBase::ScaleFieldMask, setImage(), osg::SField< FieldTypeT, fieldNameSpace >::setValue(), and updateFresnel().
00240 { 00241 prepareLocalChunks(); 00242 00243 if(whichField & ImageFieldMask) 00244 { 00245 if(origin & ChangedOrigin::Abstract) 00246 { 00247 if(origin & ChangedOrigin::AbstrIncRefCount) 00248 { 00249 addRefCP(_sfImage.getValue()); 00250 } 00251 else 00252 { 00253 ImagePtr pImage = _sfImage.getValue(); 00254 00255 _sfImage.setValue(NullFC); 00256 00257 setImage(pImage); 00258 } 00259 } 00260 00261 if(getImage() != NullFC) 00262 { 00263 beginEditCP(_img); 00264 _img->set(Image::OSG_RGBA_PF, getImage()->getWidth(), getImage()->getHeight()); 00265 endEditCP(_img); 00266 00267 beginEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00268 _textureChunk->setImage(_img); 00269 endEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00270 } 00271 } 00272 00273 if((whichField & ImageFieldMask) || 00274 (whichField & IndexFieldMask) || 00275 (whichField & ScaleFieldMask) || 00276 (whichField & BiasFieldMask)) 00277 { 00278 updateFresnel(); 00279 } 00280 00281 Inherited::changed(whichField, origin); 00282 }
Reimplemented from osg::ChunkMaterial.
Definition at line 284 of file OSGFresnelMaterial.cpp.
References SLOG.
00286 { 00287 SLOG << "Dump FresnelMaterial NI" << std::endl; 00288 }
| StatePtr FresnelMaterial::makeState | ( | void | ) | [virtual] |
Reimplemented from osg::ChunkMaterial.
Definition at line 290 of file OSGFresnelMaterial.cpp.
References _blendChunk, _materialChunk, osg::ChunkMaterialBase::_mfChunks, _texGenChunk, _textureChunk, osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::beginEditCP(), osg::StateBase::create(), osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::endEditCP(), osg::FresnelMaterialBase::getAmbient(), osg::FresnelMaterialBase::getColorMaterial(), osg::FresnelMaterialBase::getDiffuse(), osg::FresnelMaterialBase::getEmission(), osg::FresnelMaterialBase::getLit(), osg::FresnelMaterialBase::getShininess(), osg::FresnelMaterialBase::getSpecular(), osg::FresnelMaterialBase::getTransparency(), isTransparent(), prepareLocalChunks(), and osg::Color4< ValueTypeT >::setValuesRGBA().
00291 { 00292 StatePtr state = State::create(); 00293 00294 Color3f v3; 00295 Color4f v4; 00296 float alpha = 1.f - getTransparency(); 00297 00298 prepareLocalChunks(); 00299 00300 beginEditCP(_materialChunk); 00301 v3 = getAmbient(); 00302 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00303 _materialChunk->setAmbient(v4); 00304 00305 v3 = getDiffuse(); 00306 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00307 _materialChunk->setDiffuse(v4); 00308 00309 v3 = getSpecular(); 00310 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00311 _materialChunk->setSpecular(v4); 00312 00313 _materialChunk->setShininess(getShininess()); 00314 00315 v3 = getEmission(); 00316 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00317 _materialChunk->setEmission(v4); 00318 00319 _materialChunk->setLit(getLit()); 00320 _materialChunk->setColorMaterial(getColorMaterial()); 00321 endEditCP (_materialChunk); 00322 00323 state->addChunk(_materialChunk); 00324 state->addChunk(_textureChunk); 00325 state->addChunk(_texGenChunk); 00326 00327 if(isTransparent()) 00328 state->addChunk(_blendChunk); 00329 00330 for(MFStateChunkPtr::iterator i = _mfChunks.begin(); 00331 i != _mfChunks.end(); 00332 ++i) 00333 { 00334 state->addChunk(*i); 00335 } 00336 00337 return state; 00338 }
| void FresnelMaterial::rebuildState | ( | void | ) | [virtual] |
Reimplemented from osg::ChunkMaterial.
Definition at line 340 of file OSGFresnelMaterial.cpp.
References _blendChunk, _materialChunk, osg::ChunkMaterialBase::_mfChunks, osg::Material::_pState, _texGenChunk, _textureChunk, osg::addRefCP(), osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::beginEditCP(), osg::StateBase::create(), osg::MField< FieldTypeT, fieldNameSpace >::end(), osg::endEditCP(), osg::FresnelMaterialBase::getAmbient(), osg::FresnelMaterialBase::getColorMaterial(), osg::FresnelMaterialBase::getDiffuse(), osg::FresnelMaterialBase::getEmission(), osg::FresnelMaterialBase::getLit(), osg::FresnelMaterialBase::getShininess(), osg::FresnelMaterialBase::getSpecular(), osg::FresnelMaterialBase::getTransparency(), isTransparent(), osg::NullFC, prepareLocalChunks(), and osg::Color4< ValueTypeT >::setValuesRGBA().
00341 { 00342 Color3f v3; 00343 Color4f v4; 00344 Real32 alpha = 1.f - getTransparency(); 00345 00346 if(_pState != NullFC) 00347 { 00348 _pState->clearChunks(); 00349 } 00350 else 00351 { 00352 _pState = State::create(); 00353 00354 addRefCP(_pState); 00355 } 00356 00357 prepareLocalChunks(); 00358 00359 beginEditCP(_materialChunk); 00360 v3 = getAmbient(); 00361 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00362 00363 _materialChunk->setAmbient(v4); 00364 00365 v3 = getDiffuse(); 00366 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00367 00368 _materialChunk->setDiffuse(v4); 00369 00370 v3 = getSpecular(); 00371 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00372 00373 _materialChunk->setSpecular(v4); 00374 00375 _materialChunk->setShininess(getShininess()); 00376 00377 v3 = getEmission(); 00378 v4.setValuesRGBA(v3[0], v3[1], v3[2], alpha); 00379 00380 _materialChunk->setEmission(v4); 00381 00382 _materialChunk->setLit(getLit()); 00383 _materialChunk->setColorMaterial(getColorMaterial()); 00384 endEditCP (_materialChunk); 00385 00386 _pState->addChunk(_materialChunk); 00387 _pState->addChunk(_textureChunk); 00388 _pState->addChunk(_texGenChunk); 00389 00390 if(isTransparent()) 00391 _pState->addChunk(_blendChunk); 00392 00393 for(MFStateChunkPtr::iterator i = _mfChunks.begin(); 00394 i != _mfChunks.end(); 00395 ++i) 00396 { 00397 _pState->addChunk(*i); 00398 } 00399 }
| bool FresnelMaterial::isTransparent | ( | void | ) | const [virtual] |
Reimplemented from osg::ChunkMaterial.
Definition at line 401 of file OSGFresnelMaterial.cpp.
References osg::Eps, osg::FresnelMaterialBase::getTransparency(), and osg::ChunkMaterial::isTransparent().
Referenced by makeState(), and rebuildState().
00402 { 00403 return ((getTransparency() > Eps) || (Inherited::isTransparent())); 00404 }
| void osg::FresnelMaterial::setImage | ( | ImagePtr & | pImage | ) | [inline] |
Definition at line 46 of file OSGFresnelMaterial.inl.
References osg::FresnelMaterialBase::_sfImage, osg::addRefCP(), osg::SField< FieldTypeT, fieldNameSpace >::getValue(), osg::SField< FieldTypeT, fieldNameSpace >::setValue(), and osg::subRefCP().
Referenced by changed().
00047 { 00048 addRefCP(pImage); 00049 00050 subRefCP(_sfImage.getValue()); 00051 00052 _sfImage.setValue(pImage); 00053 }
| void FresnelMaterial::prepareLocalChunks | ( | void | ) | [private] |
Definition at line 122 of file OSGFresnelMaterial.cpp.
References _blendChunk, _img, _materialChunk, _texGenChunk, _textureChunk, osg::addRefCP(), osg::beginEditCP(), osg::BlendChunkBase::create(), osg::TexGenChunkBase::create(), osg::TextureChunkBase::create(), osg::MaterialChunkBase::create(), osg::ImageBase::create(), osg::endEditCP(), osg::NullFC, and osg::Image::OSG_RGBA_PF.
Referenced by changed(), makeState(), and rebuildState().
00123 { 00124 if(_textureChunk != NullFC) 00125 return; 00126 00127 _img = Image::create(); 00128 addRefCP(_img); 00129 00130 UInt8 imgdata[] = { 255,0,0,128, 0,255,0,128, 0,0,255,255, 255,255,255,255 }; 00131 00132 beginEditCP(_img); 00133 _img->set( Image::OSG_RGBA_PF, 2, 2, 1, 1, 1, 0, imgdata); 00134 endEditCP(_img); 00135 00136 _materialChunk = MaterialChunk::create(); 00137 addRefCP(_materialChunk); 00138 00139 _textureChunk = TextureChunk::create(); 00140 addRefCP(_textureChunk); 00141 beginEditCP(_textureChunk); 00142 _textureChunk->setEnvMode(GL_DECAL); 00143 _textureChunk->setMinFilter(GL_LINEAR_MIPMAP_LINEAR); 00144 _textureChunk->setMagFilter(GL_LINEAR); 00145 _textureChunk->setWrapS(GL_CLAMP); 00146 _textureChunk->setWrapT(GL_CLAMP); 00147 endEditCP (_textureChunk); 00148 00149 _texGenChunk = TexGenChunk::create(); 00150 addRefCP(_texGenChunk); 00151 beginEditCP(_texGenChunk); 00152 _texGenChunk->setGenFuncS(GL_SPHERE_MAP); 00153 _texGenChunk->setGenFuncT(GL_SPHERE_MAP); 00154 endEditCP (_texGenChunk); 00155 00156 _blendChunk = BlendChunk::create(); 00157 addRefCP(_blendChunk); 00158 beginEditCP(_blendChunk); 00159 _blendChunk->setSrcFactor (GL_SRC_ALPHA); 00160 _blendChunk->setDestFactor(GL_ONE_MINUS_SRC_ALPHA); 00161 endEditCP (_blendChunk); 00162 }
| void FresnelMaterial::updateFresnel | ( | void | ) | [private] |
Definition at line 164 of file OSGFresnelMaterial.cpp.
References _img, _textureChunk, osg::beginEditCP(), osg::endEditCP(), FWARNING, osg::FresnelMaterialBase::getBias(), osg::FresnelMaterialBase::getImage(), osg::FresnelMaterialBase::getIndex(), osg::FresnelMaterialBase::getScale(), osg::TextureChunkBase::ImageFieldMask, osg::NullFC, osg::Image::OSG_RGB_PF, osg::Image::OSG_RGBA_PF, osg::osgpow(), and osg::osgsqrt().
Referenced by changed().
00165 { 00166 if(getImage() == NullFC) 00167 return; 00168 00169 if(getImage()->getPixelFormat() != Image::OSG_RGB_PF && 00170 getImage()->getPixelFormat() != Image::OSG_RGBA_PF) 00171 { 00172 FWARNING(("FresnelMaterial::updateFresnel : pixelformat(%u) not supported\n", getImage()->getPixelFormat())); 00173 return; 00174 } 00175 00176 if(_img->getPixelFormat() != getImage()->getPixelFormat() || 00177 _img->getWidth() != getImage()->getWidth() || 00178 _img->getHeight() != getImage()->getHeight()) 00179 { 00180 beginEditCP(_img); 00181 _img->set(Image::OSG_RGBA_PF, getImage()->getWidth(), getImage()->getHeight()); 00182 endEditCP(_img); 00183 } 00184 00185 if(_textureChunk->getImage() != _img) 00186 { 00187 beginEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00188 _textureChunk->setImage(_img); 00189 endEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00190 } 00191 00192 // copy the image and calculate the alpha values. 00193 UInt8 *src = getImage()->getData(); 00194 UInt8 *dst = _img->getData(); 00195 00196 beginEditCP(_img); 00197 00198 Real32 bias = getBias(); 00199 Real32 offset = getIndex(); 00200 Real32 expo = getScale(); 00201 Int32 width = _img->getWidth(); 00202 Int32 height = _img->getHeight(); 00203 Int32 bpp = getImage()->getBpp(); 00204 Int32 ws = width / 2; 00205 Int32 hs = height / 2; 00206 00207 for(Int32 y = -hs; y < hs; ++y) 00208 { 00209 for(Int32 x = -ws; x < ws; ++x) 00210 { 00211 Real32 xs = (Real32) x / (Real32) width; 00212 Real32 ys = (Real32) y / (Real32) height; 00213 00214 Real32 a = osgpow(osgsqrt(xs * xs + ys * ys), expo) * bias + offset; 00215 UInt32 ac = ((UInt32) (a * 255.0f)) & 0xff; 00216 //ac = 255 - ac; 00217 00218 UInt32 i = (x + ws) + ((y + hs) * width); 00219 00220 UInt32 si = i * bpp; 00221 UInt32 di = i * 4; 00222 00223 dst[di++] = src[si++]; // r 00224 dst[di++] = src[si++]; // g 00225 dst[di++] = src[si]; // b 00226 dst[di] = ac; // a 00227 } 00228 } 00229 00230 endEditCP(_img); 00231 00232 beginEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00233 _textureChunk->imageContentChanged(); 00234 endEditCP(_textureChunk, TextureChunk::ImageFieldMask); 00235 }
| void FresnelMaterial::initMethod | ( | void | ) | [static, private] |
| void osg::FresnelMaterial::operator= | ( | const FresnelMaterial & | source | ) | [private] |
| osg::FieldContainerType & osg::FresnelMaterialBase::getClassType | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 58 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_type.
Referenced by osg::FresnelMaterialBase::create().
00059 { 00060 return _type; 00061 }
| osg::UInt32 osg::FresnelMaterialBase::getClassTypeId | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 65 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_type, and osg::TypeBase::getId().
00066 { 00067 return _type.getId(); 00068 }
| FieldContainerType & FresnelMaterialBase::getType | ( | void | ) | [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 228 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_type.
00229 { 00230 return _type; 00231 }
| const FieldContainerType & FresnelMaterialBase::getType | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 233 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_type.
00234 { 00235 return _type; 00236 }
| UInt32 FresnelMaterialBase::getContainerSize | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 248 of file OSGFresnelMaterialBase.cpp.
00249 { 00250 return sizeof(FresnelMaterial); 00251 }
| SFColor3f * osg::FresnelMaterialBase::getSFAmbient | ( | void | ) | [inline, inherited] |
Definition at line 101 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfAmbient.
00102 { 00103 return &_sfAmbient; 00104 }
| SFColor3f * osg::FresnelMaterialBase::getSFDiffuse | ( | void | ) | [inline, inherited] |
Definition at line 108 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfDiffuse.
00109 { 00110 return &_sfDiffuse; 00111 }
| SFColor3f * osg::FresnelMaterialBase::getSFSpecular | ( | void | ) | [inline, inherited] |
Definition at line 115 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfSpecular.
00116 { 00117 return &_sfSpecular; 00118 }
| SFReal32 * osg::FresnelMaterialBase::getSFShininess | ( | void | ) | [inline, inherited] |
Definition at line 122 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfShininess.
00123 { 00124 return &_sfShininess; 00125 }
| SFColor3f * osg::FresnelMaterialBase::getSFEmission | ( | void | ) | [inline, inherited] |
Definition at line 129 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfEmission.
00130 { 00131 return &_sfEmission; 00132 }
| SFReal32 * osg::FresnelMaterialBase::getSFTransparency | ( | void | ) | [inline, inherited] |
Definition at line 136 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfTransparency.
00137 { 00138 return &_sfTransparency; 00139 }
| SFBool * osg::FresnelMaterialBase::getSFLit | ( | void | ) | [inline, inherited] |
Definition at line 143 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfLit.
00144 { 00145 return &_sfLit; 00146 }
| SFGLenum * osg::FresnelMaterialBase::getSFColorMaterial | ( | void | ) | [inline, inherited] |
Definition at line 150 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfColorMaterial.
00151 { 00152 return &_sfColorMaterial; 00153 }
| SFReal32 * osg::FresnelMaterialBase::getSFIndex | ( | void | ) | [inline, inherited] |
Definition at line 157 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfIndex.
00158 { 00159 return &_sfIndex; 00160 }
| SFReal32 * osg::FresnelMaterialBase::getSFScale | ( | void | ) | [inline, inherited] |
Definition at line 164 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfScale.
00165 { 00166 return &_sfScale; 00167 }
| SFReal32 * osg::FresnelMaterialBase::getSFBias | ( | void | ) | [inline, inherited] |
Definition at line 171 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfBias.
00172 { 00173 return &_sfBias; 00174 }
| SFImagePtr * osg::FresnelMaterialBase::getSFImage | ( | void | ) | [inline, inherited] |
Definition at line 178 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfImage.
00179 { 00180 return &_sfImage; 00181 }
| Color3f & osg::FresnelMaterialBase::getAmbient | ( | void | ) | [inline, inherited] |
Definition at line 186 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00187 { 00188 return _sfAmbient.getValue(); 00189 }
| const Color3f & osg::FresnelMaterialBase::getAmbient | ( | void | ) | const [inline, inherited] |
Definition at line 193 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00194 { 00195 return _sfAmbient.getValue(); 00196 }
| Color3f & osg::FresnelMaterialBase::getDiffuse | ( | void | ) | [inline, inherited] |
Definition at line 207 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00208 { 00209 return _sfDiffuse.getValue(); 00210 }
| const Color3f & osg::FresnelMaterialBase::getDiffuse | ( | void | ) | const [inline, inherited] |
Definition at line 214 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00215 { 00216 return _sfDiffuse.getValue(); 00217 }
| Color3f & osg::FresnelMaterialBase::getSpecular | ( | void | ) | [inline, inherited] |
Definition at line 228 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00229 { 00230 return _sfSpecular.getValue(); 00231 }
| const Color3f & osg::FresnelMaterialBase::getSpecular | ( | void | ) | const [inline, inherited] |
Definition at line 235 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00236 { 00237 return _sfSpecular.getValue(); 00238 }
| Real32 & osg::FresnelMaterialBase::getShininess | ( | void | ) | [inline, inherited] |
Definition at line 249 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfShininess, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00250 { 00251 return _sfShininess.getValue(); 00252 }
| const Real32 & osg::FresnelMaterialBase::getShininess | ( | void | ) | const [inline, inherited] |
Definition at line 256 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfShininess, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00257 { 00258 return _sfShininess.getValue(); 00259 }
| Color3f & osg::FresnelMaterialBase::getEmission | ( | void | ) | [inline, inherited] |
Definition at line 270 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfEmission, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00271 { 00272 return _sfEmission.getValue(); 00273 }
| const Color3f & osg::FresnelMaterialBase::getEmission | ( | void | ) | const [inline, inherited] |
Definition at line 277 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfEmission, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00278 { 00279 return _sfEmission.getValue(); 00280 }
| Real32 & osg::FresnelMaterialBase::getTransparency | ( | void | ) | [inline, inherited] |
Definition at line 291 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfTransparency, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by isTransparent(), makeState(), and rebuildState().
00292 { 00293 return _sfTransparency.getValue(); 00294 }
| const Real32 & osg::FresnelMaterialBase::getTransparency | ( | void | ) | const [inline, inherited] |
Definition at line 298 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfTransparency, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00299 { 00300 return _sfTransparency.getValue(); 00301 }
| bool & osg::FresnelMaterialBase::getLit | ( | void | ) | [inline, inherited] |
Definition at line 312 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfLit, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00313 { 00314 return _sfLit.getValue(); 00315 }
| const bool & osg::FresnelMaterialBase::getLit | ( | void | ) | const [inline, inherited] |
Definition at line 319 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfLit, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00320 { 00321 return _sfLit.getValue(); 00322 }
| GLenum & osg::FresnelMaterialBase::getColorMaterial | ( | void | ) | [inline, inherited] |
Definition at line 333 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfColorMaterial, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by makeState(), and rebuildState().
00334 { 00335 return _sfColorMaterial.getValue(); 00336 }
| const GLenum & osg::FresnelMaterialBase::getColorMaterial | ( | void | ) | const [inline, inherited] |
Definition at line 340 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfColorMaterial, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00341 { 00342 return _sfColorMaterial.getValue(); 00343 }
| Real32 & osg::FresnelMaterialBase::getIndex | ( | void | ) | [inline, inherited] |
Definition at line 354 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfIndex, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by updateFresnel().
00355 { 00356 return _sfIndex.getValue(); 00357 }
| const Real32 & osg::FresnelMaterialBase::getIndex | ( | void | ) | const [inline, inherited] |
Definition at line 361 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfIndex, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00362 { 00363 return _sfIndex.getValue(); 00364 }
| Real32 & osg::FresnelMaterialBase::getScale | ( | void | ) | [inline, inherited] |
Definition at line 375 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfScale, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by updateFresnel().
00376 { 00377 return _sfScale.getValue(); 00378 }
| const Real32 & osg::FresnelMaterialBase::getScale | ( | void | ) | const [inline, inherited] |
Definition at line 382 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfScale, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00383 { 00384 return _sfScale.getValue(); 00385 }
| Real32 & osg::FresnelMaterialBase::getBias | ( | void | ) | [inline, inherited] |
Definition at line 396 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfBias, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by updateFresnel().
00397 { 00398 return _sfBias.getValue(); 00399 }
| const Real32 & osg::FresnelMaterialBase::getBias | ( | void | ) | const [inline, inherited] |
Definition at line 403 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfBias, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00404 { 00405 return _sfBias.getValue(); 00406 }
| ImagePtr & osg::FresnelMaterialBase::getImage | ( | void | ) | [inline, inherited] |
Definition at line 417 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfImage, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by changed(), and updateFresnel().
00418 { 00419 return _sfImage.getValue(); 00420 }
| const ImagePtr & osg::FresnelMaterialBase::getImage | ( | void | ) | const [inline, inherited] |
Definition at line 424 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfImage, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00425 { 00426 return _sfImage.getValue(); 00427 }
| void osg::FresnelMaterialBase::setAmbient | ( | const Color3f & | value | ) | [inline, inherited] |
Definition at line 200 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfAmbient, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00201 { 00202 _sfAmbient.setValue(value); 00203 }
| void osg::FresnelMaterialBase::setDiffuse | ( | const Color3f & | value | ) | [inline, inherited] |
Definition at line 221 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfDiffuse, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00222 { 00223 _sfDiffuse.setValue(value); 00224 }
| void osg::FresnelMaterialBase::setSpecular | ( | const Color3f & | value | ) | [inline, inherited] |
Definition at line 242 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfSpecular, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00243 { 00244 _sfSpecular.setValue(value); 00245 }
| void osg::FresnelMaterialBase::setShininess | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 263 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfShininess, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00264 { 00265 _sfShininess.setValue(value); 00266 }
| void osg::FresnelMaterialBase::setEmission | ( | const Color3f & | value | ) | [inline, inherited] |
Definition at line 284 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfEmission, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00285 { 00286 _sfEmission.setValue(value); 00287 }
| void osg::FresnelMaterialBase::setTransparency | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 305 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfTransparency, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00306 { 00307 _sfTransparency.setValue(value); 00308 }
| void osg::FresnelMaterialBase::setLit | ( | const bool & | value | ) | [inline, inherited] |
Definition at line 326 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfLit, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::FresnelMaterialBase::setColorMaterial | ( | const GLenum & | value | ) | [inline, inherited] |
Definition at line 347 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfColorMaterial, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00348 { 00349 _sfColorMaterial.setValue(value); 00350 }
| void osg::FresnelMaterialBase::setIndex | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 368 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfIndex, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::FresnelMaterialBase::setScale | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 389 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfScale, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::FresnelMaterialBase::setBias | ( | const Real32 & | value | ) | [inline, inherited] |
Definition at line 410 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfBias, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
| void osg::FresnelMaterialBase::setImage | ( | const ImagePtr & | value | ) | [inline, inherited] |
Definition at line 431 of file OSGFresnelMaterialBase.inl.
References osg::FresnelMaterialBase::_sfImage, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
Reimplemented from osg::ChunkMaterialBase.
Definition at line 332 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_sfAmbient, osg::FresnelMaterialBase::_sfBias, osg::FresnelMaterialBase::_sfColorMaterial, osg::FresnelMaterialBase::_sfDiffuse, osg::FresnelMaterialBase::_sfEmission, osg::FresnelMaterialBase::_sfImage, osg::FresnelMaterialBase::_sfIndex, osg::FresnelMaterialBase::_sfLit, osg::FresnelMaterialBase::_sfScale, osg::FresnelMaterialBase::_sfShininess, osg::FresnelMaterialBase::_sfSpecular, osg::FresnelMaterialBase::_sfTransparency, osg::FresnelMaterialBase::AmbientFieldMask, osg::FresnelMaterialBase::BiasFieldMask, osg::FresnelMaterialBase::ColorMaterialFieldMask, osg::FresnelMaterialBase::DiffuseFieldMask, osg::FresnelMaterialBase::EmissionFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::getBinSize(), osg::ChunkMaterialBase::getBinSize(), osg::FresnelMaterialBase::ImageFieldMask, osg::FresnelMaterialBase::IndexFieldMask, osg::FresnelMaterialBase::LitFieldMask, osg::FieldBits::NoField, osg::FresnelMaterialBase::ScaleFieldMask, osg::FresnelMaterialBase::ShininessFieldMask, osg::FresnelMaterialBase::SpecularFieldMask, and osg::FresnelMaterialBase::TransparencyFieldMask.
00333 { 00334 UInt32 returnValue = Inherited::getBinSize(whichField); 00335 00336 if(FieldBits::NoField != (AmbientFieldMask & whichField)) 00337 { 00338 returnValue += _sfAmbient.getBinSize(); 00339 } 00340 00341 if(FieldBits::NoField != (DiffuseFieldMask & whichField)) 00342 { 00343 returnValue += _sfDiffuse.getBinSize(); 00344 } 00345 00346 if(FieldBits::NoField != (SpecularFieldMask & whichField)) 00347 { 00348 returnValue += _sfSpecular.getBinSize(); 00349 } 00350 00351 if(FieldBits::NoField != (ShininessFieldMask & whichField)) 00352 { 00353 returnValue += _sfShininess.getBinSize(); 00354 } 00355 00356 if(FieldBits::NoField != (EmissionFieldMask & whichField)) 00357 { 00358 returnValue += _sfEmission.getBinSize(); 00359 } 00360 00361 if(FieldBits::NoField != (TransparencyFieldMask & whichField)) 00362 { 00363 returnValue += _sfTransparency.getBinSize(); 00364 } 00365 00366 if(FieldBits::NoField != (LitFieldMask & whichField)) 00367 { 00368 returnValue += _sfLit.getBinSize(); 00369 } 00370 00371 if(FieldBits::NoField != (ColorMaterialFieldMask & whichField)) 00372 { 00373 returnValue += _sfColorMaterial.getBinSize(); 00374 } 00375 00376 if(FieldBits::NoField != (IndexFieldMask & whichField)) 00377 { 00378 returnValue += _sfIndex.getBinSize(); 00379 } 00380 00381 if(FieldBits::NoField != (ScaleFieldMask & whichField)) 00382 { 00383 returnValue += _sfScale.getBinSize(); 00384 } 00385 00386 if(FieldBits::NoField != (BiasFieldMask & whichField)) 00387 { 00388 returnValue += _sfBias.getBinSize(); 00389 } 00390 00391 if(FieldBits::NoField != (ImageFieldMask & whichField)) 00392 { 00393 returnValue += _sfImage.getBinSize(); 00394 } 00395 00396 00397 return returnValue; 00398 }
| void FresnelMaterialBase::copyToBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 400 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_sfAmbient, osg::FresnelMaterialBase::_sfBias, osg::FresnelMaterialBase::_sfColorMaterial, osg::FresnelMaterialBase::_sfDiffuse, osg::FresnelMaterialBase::_sfEmission, osg::FresnelMaterialBase::_sfImage, osg::FresnelMaterialBase::_sfIndex, osg::FresnelMaterialBase::_sfLit, osg::FresnelMaterialBase::_sfScale, osg::FresnelMaterialBase::_sfShininess, osg::FresnelMaterialBase::_sfSpecular, osg::FresnelMaterialBase::_sfTransparency, osg::FresnelMaterialBase::AmbientFieldMask, osg::FresnelMaterialBase::BiasFieldMask, osg::FresnelMaterialBase::ColorMaterialFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::copyToBin(), osg::ChunkMaterialBase::copyToBin(), osg::FresnelMaterialBase::DiffuseFieldMask, osg::FresnelMaterialBase::EmissionFieldMask, osg::FresnelMaterialBase::ImageFieldMask, osg::FresnelMaterialBase::IndexFieldMask, osg::FresnelMaterialBase::LitFieldMask, osg::FieldBits::NoField, osg::FresnelMaterialBase::ScaleFieldMask, osg::FresnelMaterialBase::ShininessFieldMask, osg::FresnelMaterialBase::SpecularFieldMask, and osg::FresnelMaterialBase::TransparencyFieldMask.
00402 { 00403 Inherited::copyToBin(pMem, whichField); 00404 00405 if(FieldBits::NoField != (AmbientFieldMask & whichField)) 00406 { 00407 _sfAmbient.copyToBin(pMem); 00408 } 00409 00410 if(FieldBits::NoField != (DiffuseFieldMask & whichField)) 00411 { 00412 _sfDiffuse.copyToBin(pMem); 00413 } 00414 00415 if(FieldBits::NoField != (SpecularFieldMask & whichField)) 00416 { 00417 _sfSpecular.copyToBin(pMem); 00418 } 00419 00420 if(FieldBits::NoField != (ShininessFieldMask & whichField)) 00421 { 00422 _sfShininess.copyToBin(pMem); 00423 } 00424 00425 if(FieldBits::NoField != (EmissionFieldMask & whichField)) 00426 { 00427 _sfEmission.copyToBin(pMem); 00428 } 00429 00430 if(FieldBits::NoField != (TransparencyFieldMask & whichField)) 00431 { 00432 _sfTransparency.copyToBin(pMem); 00433 } 00434 00435 if(FieldBits::NoField != (LitFieldMask & whichField)) 00436 { 00437 _sfLit.copyToBin(pMem); 00438 } 00439 00440 if(FieldBits::NoField != (ColorMaterialFieldMask & whichField)) 00441 { 00442 _sfColorMaterial.copyToBin(pMem); 00443 } 00444 00445 if(FieldBits::NoField != (IndexFieldMask & whichField)) 00446 { 00447 _sfIndex.copyToBin(pMem); 00448 } 00449 00450 if(FieldBits::NoField != (ScaleFieldMask & whichField)) 00451 { 00452 _sfScale.copyToBin(pMem); 00453 } 00454 00455 if(FieldBits::NoField != (BiasFieldMask & whichField)) 00456 { 00457 _sfBias.copyToBin(pMem); 00458 } 00459 00460 if(FieldBits::NoField != (ImageFieldMask & whichField)) 00461 { 00462 _sfImage.copyToBin(pMem); 00463 } 00464 00465 00466 }
| void FresnelMaterialBase::copyFromBin | ( | BinaryDataHandler & | pMem, | |
| const BitVector & | whichField | |||
| ) | [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 468 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_sfAmbient, osg::FresnelMaterialBase::_sfBias, osg::FresnelMaterialBase::_sfColorMaterial, osg::FresnelMaterialBase::_sfDiffuse, osg::FresnelMaterialBase::_sfEmission, osg::FresnelMaterialBase::_sfImage, osg::FresnelMaterialBase::_sfIndex, osg::FresnelMaterialBase::_sfLit, osg::FresnelMaterialBase::_sfScale, osg::FresnelMaterialBase::_sfShininess, osg::FresnelMaterialBase::_sfSpecular, osg::FresnelMaterialBase::_sfTransparency, osg::FresnelMaterialBase::AmbientFieldMask, osg::FresnelMaterialBase::BiasFieldMask, osg::FresnelMaterialBase::ColorMaterialFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::copyFromBin(), osg::ChunkMaterialBase::copyFromBin(), osg::FresnelMaterialBase::DiffuseFieldMask, osg::FresnelMaterialBase::EmissionFieldMask, osg::FresnelMaterialBase::ImageFieldMask, osg::FresnelMaterialBase::IndexFieldMask, osg::FresnelMaterialBase::LitFieldMask, osg::FieldBits::NoField, osg::FresnelMaterialBase::ScaleFieldMask, osg::FresnelMaterialBase::ShininessFieldMask, osg::FresnelMaterialBase::SpecularFieldMask, and osg::FresnelMaterialBase::TransparencyFieldMask.
00470 { 00471 Inherited::copyFromBin(pMem, whichField); 00472 00473 if(FieldBits::NoField != (AmbientFieldMask & whichField)) 00474 { 00475 _sfAmbient.copyFromBin(pMem); 00476 } 00477 00478 if(FieldBits::NoField != (DiffuseFieldMask & whichField)) 00479 { 00480 _sfDiffuse.copyFromBin(pMem); 00481 } 00482 00483 if(FieldBits::NoField != (SpecularFieldMask & whichField)) 00484 { 00485 _sfSpecular.copyFromBin(pMem); 00486 } 00487 00488 if(FieldBits::NoField != (ShininessFieldMask & whichField)) 00489 { 00490 _sfShininess.copyFromBin(pMem); 00491 } 00492 00493 if(FieldBits::NoField != (EmissionFieldMask & whichField)) 00494 { 00495 _sfEmission.copyFromBin(pMem); 00496 } 00497 00498 if(FieldBits::NoField != (TransparencyFieldMask & whichField)) 00499 { 00500 _sfTransparency.copyFromBin(pMem); 00501 } 00502 00503 if(FieldBits::NoField != (LitFieldMask & whichField)) 00504 { 00505 _sfLit.copyFromBin(pMem); 00506 } 00507 00508 if(FieldBits::NoField != (ColorMaterialFieldMask & whichField)) 00509 { 00510 _sfColorMaterial.copyFromBin(pMem); 00511 } 00512 00513 if(FieldBits::NoField != (IndexFieldMask & whichField)) 00514 { 00515 _sfIndex.copyFromBin(pMem); 00516 } 00517 00518 if(FieldBits::NoField != (ScaleFieldMask & whichField)) 00519 { 00520 _sfScale.copyFromBin(pMem); 00521 } 00522 00523 if(FieldBits::NoField != (BiasFieldMask & whichField)) 00524 { 00525 _sfBias.copyFromBin(pMem); 00526 } 00527 00528 if(FieldBits::NoField != (ImageFieldMask & whichField)) 00529 { 00530 _sfImage.copyFromBin(pMem); 00531 } 00532 00533 00534 }
| FresnelMaterialPtr osg::FresnelMaterialBase::create | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 72 of file OSGFresnelMaterialBase.inl.
References osg::AttachmentContainerPtr::dcast(), osg::FresnelMaterialBase::getClassType(), osg::NullFC, and osg::FresnelMaterialBase::shallowCopy().
00073 { 00074 FresnelMaterialPtr fc; 00075 00076 if(getClassType().getPrototype() != OSG::NullFC) 00077 { 00078 fc = FresnelMaterialPtr::dcast( 00079 getClassType().getPrototype()-> shallowCopy()); 00080 } 00081 00082 return fc; 00083 }
| FresnelMaterialPtr osg::FresnelMaterialBase::createEmpty | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 87 of file OSGFresnelMaterialBase.inl.
References osg::FieldContainer::newPtr().
00088 { 00089 FresnelMaterialPtr returnValue; 00090 00091 newPtr(returnValue); 00092 00093 return returnValue; 00094 }
| FieldContainerPtr FresnelMaterialBase::shallowCopy | ( | void | ) | const [virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 239 of file OSGFresnelMaterialBase.cpp.
References osg::FieldContainer::newPtr().
Referenced by osg::FresnelMaterialBase::create().
00240 { 00241 FresnelMaterialPtr returnValue; 00242 00243 newPtr(returnValue, dynamic_cast<const FresnelMaterial *>(this)); 00244 00245 return returnValue; 00246 }
| void FresnelMaterialBase::executeSyncImpl | ( | FresnelMaterialBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 537 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::_sfAmbient, osg::FresnelMaterialBase::_sfBias, osg::FresnelMaterialBase::_sfColorMaterial, osg::FresnelMaterialBase::_sfDiffuse, osg::FresnelMaterialBase::_sfEmission, osg::FresnelMaterialBase::_sfImage, osg::FresnelMaterialBase::_sfIndex, osg::FresnelMaterialBase::_sfLit, osg::FresnelMaterialBase::_sfScale, osg::FresnelMaterialBase::_sfShininess, osg::FresnelMaterialBase::_sfSpecular, osg::FresnelMaterialBase::_sfTransparency, osg::FresnelMaterialBase::AmbientFieldMask, osg::FresnelMaterialBase::BiasFieldMask, osg::FresnelMaterialBase::ColorMaterialFieldMask, osg::FresnelMaterialBase::DiffuseFieldMask, osg::FresnelMaterialBase::EmissionFieldMask, osg::ChunkMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::ImageFieldMask, osg::FresnelMaterialBase::IndexFieldMask, osg::FresnelMaterialBase::LitFieldMask, osg::FieldBits::NoField, osg::FresnelMaterialBase::ScaleFieldMask, osg::FresnelMaterialBase::ShininessFieldMask, osg::FresnelMaterialBase::SpecularFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::syncWith(), and osg::FresnelMaterialBase::TransparencyFieldMask.
Referenced by osg::FresnelMaterialBase::executeSync().
00539 { 00540 00541 Inherited::executeSyncImpl(pOther, whichField); 00542 00543 if(FieldBits::NoField != (AmbientFieldMask & whichField)) 00544 _sfAmbient.syncWith(pOther->_sfAmbient); 00545 00546 if(FieldBits::NoField != (DiffuseFieldMask & whichField)) 00547 _sfDiffuse.syncWith(pOther->_sfDiffuse); 00548 00549 if(FieldBits::NoField != (SpecularFieldMask & whichField)) 00550 _sfSpecular.syncWith(pOther->_sfSpecular); 00551 00552 if(FieldBits::NoField != (ShininessFieldMask & whichField)) 00553 _sfShininess.syncWith(pOther->_sfShininess); 00554 00555 if(FieldBits::NoField != (EmissionFieldMask & whichField)) 00556 _sfEmission.syncWith(pOther->_sfEmission); 00557 00558 if(FieldBits::NoField != (TransparencyFieldMask & whichField)) 00559 _sfTransparency.syncWith(pOther->_sfTransparency); 00560 00561 if(FieldBits::NoField != (LitFieldMask & whichField)) 00562 _sfLit.syncWith(pOther->_sfLit); 00563 00564 if(FieldBits::NoField != (ColorMaterialFieldMask & whichField)) 00565 _sfColorMaterial.syncWith(pOther->_sfColorMaterial); 00566 00567 if(FieldBits::NoField != (IndexFieldMask & whichField)) 00568 _sfIndex.syncWith(pOther->_sfIndex); 00569 00570 if(FieldBits::NoField != (ScaleFieldMask & whichField)) 00571 _sfScale.syncWith(pOther->_sfScale); 00572 00573 if(FieldBits::NoField != (BiasFieldMask & whichField)) 00574 _sfBias.syncWith(pOther->_sfBias); 00575 00576 if(FieldBits::NoField != (ImageFieldMask & whichField)) 00577 _sfImage.syncWith(pOther->_sfImage); 00578 00579 00580 }
| void osg::ChunkMaterialBase::executeSyncImpl | ( | ChunkMaterialBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 258 of file OSGChunkMaterialBase.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::ChunkMaterialBase::_mfSlots, osg::ChunkMaterialBase::ChunksFieldMask, osg::MaterialBase::executeSyncImpl(), osg::FieldBits::NoField, osg::ChunkMaterialBase::SlotsFieldMask, and osg::MField< FieldTypeT, fieldNameSpace >::syncWith().
Referenced by osg::ChunkMaterialBase::executeSync(), osg::SimpleMaterialBase::executeSyncImpl(), osg::PhongMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::DVRAppearanceBase::executeSyncImpl().
00260 { 00261 00262 Inherited::executeSyncImpl(pOther, whichField); 00263 00264 if(FieldBits::NoField != (ChunksFieldMask & whichField)) 00265 _mfChunks.syncWith(pOther->_mfChunks); 00266 00267 if(FieldBits::NoField != (SlotsFieldMask & whichField)) 00268 _mfSlots.syncWith(pOther->_mfSlots); 00269 00270 00271 }
| void osg::MaterialBase::executeSyncImpl | ( | MaterialBase * | pOther, | |
| const BitVector & | whichField | |||
| ) | [protected, inherited] |
Definition at line 247 of file OSGMaterialBase.cpp.
References osg::MaterialBase::_sfSortKey, osg::MaterialBase::_sfTransparencyMode, osg::AttachmentContainer::executeSyncImpl(), osg::FieldBits::NoField, osg::MaterialBase::SortKeyFieldMask, osg::SField< FieldTypeT, fieldNameSpace >::syncWith(), and osg::MaterialBase::TransparencyModeFieldMask.
Referenced by osg::MaterialBase::executeSync(), osg::SwitchMaterialBase::executeSyncImpl(), osg::MultiPassMaterialBase::executeSyncImpl(), and osg::ChunkMaterialBase::executeSyncImpl().
00249 { 00250 00251 Inherited::executeSyncImpl(pOther, whichField); 00252 00253 if(FieldBits::NoField != (SortKeyFieldMask & whichField)) 00254 _sfSortKey.syncWith(pOther->_sfSortKey); 00255 00256 if(FieldBits::NoField != (TransparencyModeFieldMask & whichField)) 00257 _sfTransparencyMode.syncWith(pOther->_sfTransparencyMode); 00258 00259 00260 }
| 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 FresnelMaterialBase::executeSync | ( | FieldContainer & | other, | |
| const BitVector & | whichField | |||
| ) | [protected, virtual, inherited] |
Reimplemented from osg::ChunkMaterialBase.
Definition at line 255 of file OSGFresnelMaterialBase.cpp.
References osg::FresnelMaterialBase::executeSyncImpl().
00257 { 00258 this->executeSyncImpl((FresnelMaterialBase *) &other, whichField); 00259 }
| static const char* osg::ChunkMaterial::getClassname | ( | void | ) | [inline, static, inherited] |
Reimplemented from osg::Material.
Reimplemented in osg::SimpleMaterial.
Definition at line 64 of file OSGChunkMaterial.h.
| void ChunkMaterial::draw | ( | DrawFunctor & | func, | |
| DrawActionBase * | action | |||
| ) | [virtual, inherited] |
Draw the function behind the functor with this material. The functored function should be very careful changing OpenGL state, better just use glBegin(), glEnd() and the standard stuff in between.
Implements osg::Material.
Definition at line 285 of file OSGChunkMaterial.cpp.
References osg::addRefCP(), osg::TypedFunctor1Base< RetT, CallArgT, SizeTraitsT >::call(), osg::ChunkMaterial::makeState(), and osg::subRefCP().
00286 { 00287 StatePtr state = makeState(); 00288 00289 addRefCP(state); 00290 00291 state->activate(action); 00292 00293 func.call(action); 00294 00295 state->deactivate(action); 00296 00297 subRefCP(state); // kill it 00298 }
| void ChunkMaterial::draw | ( | Geometry * | geo, | |
| DrawActionBase * | action | |||
| ) | [virtual, inherited] |
Draw the geometry with this material.
Implements osg::Material.
Definition at line 265 of file OSGChunkMaterial.cpp.
References osg::addRefCP(), osg::Geometry::drawPrimitives(), osg::ChunkMaterial::makeState(), and osg::subRefCP().
00266 { 00267 StatePtr state = makeState(); 00268 00269 addRefCP(state); 00270 00271 state->activate(action); 00272 00273 geo->drawPrimitives(action); 00274 00275 state->deactivate(action); 00276 00277 subRefCP(state); // kill it 00278 }
| bool ChunkMaterial::addChunk | ( | StateChunkPtr | chunk, | |
| Int32 | slot = State::AutoSlotReplace | |||
| ) | [inherited] |
Add the given chunk to the material. It is possible to specify which slot this chunk should be associated with. See StateChunkClass for a general description of the slots concept. The default slot is State::AutoSlotReplace.
Definition at line 140 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::ChunkMaterialBase::_mfSlots, osg::addRefCP(), osg::State::AutoSlotReplace, osg::MField< FieldTypeT, fieldNameSpace >::push_back(), and osg::MField< FieldTypeT, fieldNameSpace >::size().
00141 { 00142 if(slot != State::AutoSlotReplace) 00143 { 00144 while(_mfSlots.size() < _mfChunks.size()) 00145 _mfSlots.push_back(State::AutoSlotReplace); 00146 } 00147 00148 _mfChunks.push_back(chunk); 00149 00150 if(slot != State::AutoSlotReplace) 00151 _mfSlots.push_back(slot); 00152 00153 addRefCP(chunk); 00154 00155 return true; 00156 }
| bool ChunkMaterial::subChunk | ( | StateChunkPtr | chunk, | |
| Int32 | slot = State::AutoSlotReplace | |||
| ) | [inherited] |
Remove the given chunk from the material. If the slot is not State::AutoSlotReplace, only the given slot will be searched and removed if found. Returns true if the chunk couldn't be found.
Definition at line 162 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::ChunkMaterialBase::_mfSlots, osg::State::AutoSlotReplace, osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::erase(), osg::MField< FieldTypeT, fieldNameSpace >::size(), osg::subRefCP(), and SWARNING.
00163 { 00164 UInt32 i; 00165 00166 for(i = 0; i < _mfChunks.size(); ++i) 00167 { 00168 if(_mfChunks[i] == chunk && 00169 ((i < _mfSlots.size() && _mfSlots[i] == slot) || 00170 slot == State::AutoSlotReplace)) 00171 { 00172 subRefCP(chunk); 00173 _mfChunks.erase(_mfChunks.begin() + i); 00174 if(i < _mfSlots.size()) 00175 _mfSlots.erase(_mfSlots.begin() + i); 00176 return false; 00177 } 00178 } 00179 00180 SWARNING << "ChunkMaterial::subChunk(" << this << ") has no chunk " 00181 << chunk << " with slot " << slot << std::endl; 00182 00183 return true; 00184 }
| Int32 ChunkMaterial::find | ( | StateChunkPtr | chunk | ) | [inherited] |
Search the list of chunks for the given chunk. Returns its index, -1 if the chunk is not used in the material.
Definition at line 190 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, and osg::MField< FieldTypeT, fieldNameSpace >::size().
00191 { 00192 UInt32 i; 00193 00194 for(i = 0; i < _mfChunks.size(); ++i) 00195 { 00196 if(_mfChunks[i] == chunk) 00197 return i; 00198 } 00199 00200 return -1; 00201 }
| StateChunkPtr ChunkMaterial::find | ( | const FieldContainerType & | type, | |
| Int32 | slot = State::AutoSlotReplace | |||
| ) | [inherited] |
Search the list of chunks for a chunk of the given type and the given slot. If slot is State::AutoSlotReplace, all slots are searched and the first found chunk is returned. For searching a specific chunk with a AutoSlotReplace slot, the slot parameter is interpreted as a index.
Definition at line 210 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::State::AutoSlotReplace, osg::ChunkMaterialBase::getSlots(), osg::NullFC, p, and osg::MField< FieldTypeT, fieldNameSpace >::size().
00212 { 00213 UInt32 index = 0; 00214 for(UInt32 i = 0; i < _mfChunks.size(); ++i) 00215 { 00216 StateChunkPtr p = _mfChunks[i]; 00217 Int32 s = State::AutoSlotReplace; 00218 00219 if(i < getSlots().size()) 00220 s = getSlots(i); 00221 00222 if(s == State::AutoSlotReplace) 00223 s = index; 00224 00225 if(p->getType() == type) 00226 { 00227 if(slot == State::AutoSlotReplace || slot == s) 00228 return (p); 00229 ++index; 00230 } 00231 } 00232 return NullFC; 00233 }
| void ChunkMaterial::clearChunks | ( | void | ) | [inherited] |
Add the given chunk to the material. It is possible to specify which slot this chunk should be associated with. See StateChunkClass for a general description of the slots concept. The default slot is State::AutoSlotReplace.
Definition at line 235 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::MField< FieldTypeT, fieldNameSpace >::begin(), osg::MField< FieldTypeT, fieldNameSpace >::clear(), osg::MField< FieldTypeT, fieldNameSpace >::end(), and osg::subRefCP().
Referenced by osg::ChunkMaterial::~ChunkMaterial().
00236 { 00237 MFStateChunkPtr::iterator matIt = _mfChunks.begin(); 00238 MFStateChunkPtr::iterator matEnd = _mfChunks.end (); 00239 00240 while(matIt != matEnd) 00241 { 00242 subRefCP(*matIt); 00243 ++matIt; 00244 } 00245 _mfChunks.clear(); 00246 }
| bool ChunkMaterial::operator== | ( | const Material & | other | ) | [virtual, inherited] |
Add the given chunk to the material. It is possible to specify which slot this chunk should be associated with. See StateChunkClass for a general description of the slots concept. The default slot is State::AutoSlotReplace.
Definition at line 248 of file OSGChunkMaterial.cpp.
00249 { 00250 Material& thisBase = *this; 00251 if (!(thisBase == other)) 00252 return false; 00253 00254 const ChunkMaterial* othercm = dynamic_cast<const ChunkMaterial*>(&other); 00255 if (!othercm) 00256 return false; 00257 00258 // ? 00259 return false; 00260 }
| bool Material::operator== | ( | const Material & | other | ) | const [virtual, inherited] |
| void ChunkMaterial::addChunks | ( | StatePtr | state | ) | [protected, inherited] |
Add chunks to the given state. Needed for ordering in the drived materials.
Definition at line 304 of file OSGChunkMaterial.cpp.
References osg::ChunkMaterialBase::_mfChunks, osg::ChunkMaterialBase::_mfSlots, osg::State::AutoSlotReplace, and osg::MField< FieldTypeT, fieldNameSpace >::size().
Referenced by osg::SimpleMaterial::makeState(), osg::ChunkMaterial::makeState(), osg::SimpleMaterial::rebuildState(), and osg::ChunkMaterial::rebuildState().
00305 { 00306 UInt32 i; 00307 00308 for(i = 0; i < _mfChunks.size(); ++i) 00309 state->addChunk(_mfChunks[i], 00310 (i < _mfSlots.size()) ? _mfSlots[i] 00311 : State::AutoSlotReplace); 00312 }
| MFStateChunkPtr * osg::ChunkMaterialBase::getMFChunks | ( | void | ) | [inline, inherited] |
Definition at line 101 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfChunks.
00102 { 00103 return &_mfChunks; 00104 }
| MFInt32 * osg::ChunkMaterialBase::getMFSlots | ( | void | ) | [inline, inherited] |
Definition at line 108 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfSlots.
00109 { 00110 return &_mfSlots; 00111 }
| StateChunkPtr & osg::ChunkMaterialBase::getChunks | ( | const UInt32 | index | ) | [inline, inherited] |
Definition at line 117 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfChunks.
00118 { 00119 return _mfChunks[index]; 00120 }
| MFStateChunkPtr & osg::ChunkMaterialBase::getChunks | ( | void | ) | [inline, inherited] |
Definition at line 124 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfChunks.
00125 { 00126 return _mfChunks; 00127 }
| const MFStateChunkPtr & osg::ChunkMaterialBase::getChunks | ( | void | ) | const [inline, inherited] |
Definition at line 131 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfChunks.
00132 { 00133 return _mfChunks; 00134 }
Definition at line 138 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfSlots.
00139 { 00140 return _mfSlots[index]; 00141 }
| MFInt32 & osg::ChunkMaterialBase::getSlots | ( | void | ) | [inline, inherited] |
Definition at line 145 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfSlots.
Referenced by osg::ChunkMaterial::find().
00146 { 00147 return _mfSlots; 00148 }
| const MFInt32 & osg::ChunkMaterialBase::getSlots | ( | void | ) | const [inline, inherited] |
Definition at line 152 of file OSGChunkMaterialBase.inl.
References osg::ChunkMaterialBase::_mfSlots.
00153 { 00154 return _mfSlots; 00155 }
Reimplemented in osg::MultiPassMaterial, and osg::SwitchMaterial.
Definition at line 164 of file OSGMaterial.cpp.
References osg::Material::_pState.
Referenced by osg::RenderAction::getMaterialStates().
00165 { 00166 return _pState; 00167 }
| bool Material::isMultiPass | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::MultiPassMaterial, and osg::SwitchMaterial.
Definition at line 169 of file OSGMaterial.cpp.
Referenced by osg::RenderAction::dropFunctor(), osg::RenderAction::dropGeometry(), and osg::RenderAction::getMaterialStates().
| UInt32 Material::getNPasses | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::MultiPassMaterial, and osg::SwitchMaterial.
Definition at line 174 of file OSGMaterial.cpp.
Referenced by osg::RenderAction::getMaterialStates().
| Int32 Material::getRealSortKey | ( | void | ) | const [virtual, inherited] |
Reimplemented in osg::SwitchMaterial.
Definition at line 186 of file OSGMaterial.cpp.
References osg::MaterialBase::_sfSortKey, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::RenderAction::dropFunctor(), osg::RenderAction::dropGeometry(), and osg::SwitchMaterial::getRealSortKey().
00187 { 00188 return _sfSortKey.getValue(); 00189 }
| bool Material::operator< | ( | const Material & | other | ) | const [virtual, inherited] |
| bool Material::operator!= | ( | const Material & | other | ) | const [virtual, inherited] |
| SFInt32 * osg::MaterialBase::getSFSortKey | ( | void | ) | [inline, inherited] |
Definition at line 75 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfSortKey.
00076 { 00077 return &_sfSortKey; 00078 }
| SFInt32 * osg::MaterialBase::getSFTransparencyMode | ( | void | ) | [inline, inherited] |
Definition at line 82 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfTransparencyMode.
00083 { 00084 return &_sfTransparencyMode; 00085 }
| Int32 & osg::MaterialBase::getSortKey | ( | void | ) | [inline, inherited] |
Definition at line 90 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfSortKey, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00091 { 00092 return _sfSortKey.getValue(); 00093 }
| const Int32 & osg::MaterialBase::getSortKey | ( | void | ) | const [inline, inherited] |
Definition at line 97 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfSortKey, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00098 { 00099 return _sfSortKey.getValue(); 00100 }
| Int32 & osg::MaterialBase::getTransparencyMode | ( | void | ) | [inline, inherited] |
Definition at line 111 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfTransparencyMode, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
Referenced by osg::MultiPassMaterial::isTransparent(), and osg::ChunkMaterial::isTransparent().
00112 { 00113 return _sfTransparencyMode.getValue(); 00114 }
| const Int32 & osg::MaterialBase::getTransparencyMode | ( | void | ) | const [inline, inherited] |
Definition at line 118 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfTransparencyMode, and osg::SField< FieldTypeT, fieldNameSpace >::getValue().
00119 { 00120 return _sfTransparencyMode.getValue(); 00121 }
| void osg::MaterialBase::setSortKey | ( | const Int32 & | value | ) | [inline, inherited] |
Definition at line 104 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfSortKey, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00105 { 00106 _sfSortKey.setValue(value); 00107 }
| void osg::MaterialBase::setTransparencyMode | ( | const Int32 & | value | ) | [inline, inherited] |
Definition at line 125 of file OSGMaterialBase.inl.
References osg::MaterialBase::_sfTransparencyMode, and osg::SField< FieldTypeT, fieldNameSpace >::setValue().
00126 { 00127 _sfTransparencyMode.setValue(value); 00128 }
| 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 }
| UInt32 osg::FieldContainer::getTypeId | ( | void | ) | const [inline, inherited] |
Definition at line 77 of file OSGFieldContainerImpl.inl.
References osg::TypeBase::getId(), and osg::FieldContainer::getType().
Referenced by osg::TextureChunk::changeFrom(), and osg::CubeTextureChunk::changeFrom().
00078 { 00079 return getType().getId(); 00080 }
| UInt16 osg::FieldContainer::getGroupId | ( | void | ) | const [inline, inherited] |
Definition at line 83 of file OSGFieldContainerImpl.inl.
References osg::FieldContainerType::getGroupId(), and osg::FieldContainer::getType().
Referenced by osg::fcptrAttributeMap(), osg::Image::setAttachmentField(), and osg::stringAttributeMap().
00084 { 00085 return getType().getGroupId(); 00086 }
| const Char8 * osg::FieldContainer::getTypeName | ( | void | ) | const [inline, inherited] |
Definition at line 89 of file OSGFieldContainerImpl.inl.
References osg::TypeBase::getCName(), and osg::FieldContainer::getType().
00090 { 00091 return getType().getCName(); 00092 }
Generic Field Access
Definition at line 95 of file OSGFieldContainerImpl.inl.
References osg::FieldDescription::getField(), osg::FieldContainerType::getFieldDescription(), and osg::FieldContainer::getType().
Referenced by osg::QFCItem::expand(), osg::VRMLShapeDesc::getFieldAndDesc(), osg::QFieldViewBase::getFieldPtr(), osg::QFieldEditorBase::getFieldPtr(), osg::getParentsField(), and osg::QFCItem::setup().
00096 { 00097 const FieldDescription *desc = getType().getFieldDescription(fieldId); 00098 00099 return desc ? desc->getField(*this) : NULL; 00100 }
Generic Field Access
Definition at line 103 of file OSGFieldContainerImpl.inl.
References osg::FieldContainerType::findFieldDescription(), osg::FieldDescription::getField(), and osg::FieldContainer::getType().
00104 { 00105 const FieldDescription *desc =getType().findFieldDescription(fieldName); 00106 00107 return desc ? desc->getField(*this) : NULL; 00108 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result, | |
| const typename ObjectPtrT::StoredObjectType * | prototypeP | |||
| ) | [inline, static, protected, inherited] |
Definition at line 138 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
Referenced by osg::XWindowBase::createEmpty(), osg::WIN32WindowBase::createEmpty(), osg::ViewportBase::createEmpty(), osg::VertexProgramChunkBase::createEmpty(), osg::TwoSidedLightingChunkBase::createEmpty(), osg::TransformChunkBase::createEmpty(), osg::TransformBase::createEmpty(), osg::TileCameraDecoratorBase::createEmpty(), osg::TextureTransformChunkBase::createEmpty(), osg::TextureGrabForegroundBase::createEmpty(), osg::TextureGrabBackgroundBase::createEmpty(), osg::TextureChunkBase::createEmpty(), osg::TextureBackgroundBase::createEmpty(), osg::TexGenChunkBase::createEmpty(), osg::SwitchMaterialBase::createEmpty(), osg::SwitchBase::createEmpty(), osg::SurfaceBase::createEmpty(), osg::StringAttributeMapBase::createEmpty(), osg::StereoBufferViewportBase::createEmpty(), osg::StencilChunkBase::createEmpty(), osg::StateSortingGroupBase::createEmpty(), osg::StateBase::createEmpty(), osg::SpotLightBase::createEmpty(), osg::SortFirstWindowBase::createEmpty(), osg::SolidBackgroundBase::createEmpty(), osg::SlicesBase::createEmpty(), osg::SkyBackgroundBase::createEmpty(), osg::SimpleTexturedMaterialBase::createEmpty(), osg::SimpleStatisticsForegroundBase::createEmpty(), osg::SimpleMaterialBase::createEmpty(), osg::SHLParameterChunkBase::createEmpty(), osg::SHLChunkBase::createEmpty(), osg::ShearedStereoCameraDecoratorBase::createEmpty(), osg::ShaderParameterVec4fBase::createEmpty(), osg::ShaderParameterVec3fBase::createEmpty(), osg::ShaderParameterVec2fBase::createEmpty(), osg::ShaderParameterStringBase::createEmpty(), osg::ShaderParameterRealBase::createEmpty(), osg::ShaderParameterMVec4fBase::createEmpty(), osg::ShaderParameterMVec3fBase::createEmpty(), osg::ShaderParameterMVec2fBase::createEmpty(), osg::ShaderParameterMRealBase::createEmpty(), osg::ShaderParameterMMatrixBase::createEmpty(), osg::ShaderParameterMIntBase::createEmpty(), osg::ShaderParameterMatrixBase::createEmpty(), osg::ShaderParameterIntBase::createEmpty(), osg::ShaderParameterBoolBase::createEmpty(), osg::ScreenGroupBase::createEmpty(), osg::SClipPlaneChunkBase::createEmpty(), osg::ResolutionDisplayFilterBase::createEmpty(), osg::RenderOptionsBase::createEmpty(), osg::RegisterCombinersChunkBase::createEmpty(), osg::QTWindowBase::createEmpty(), osg::ProxyGroupBase::createEmpty(), osg::ProjectionCameraDecoratorBase::createEmpty(), osg::PolygonForegroundBase::createEmpty(), osg::PolygonChunkBase::createEmpty(), osg::PolygonBackgroundBase::createEmpty(), osg::PointLightBase::createEmpty(), osg::PointChunkBase::createEmpty(), osg::PhongMaterialBase::createEmpty(), osg::PerspectiveCameraBase::createEmpty(), osg::PassiveWindowBase::createEmpty(), osg::PassiveViewportBase::createEmpty(), osg::PassiveBackgroundBase::createEmpty(), osg::ParticlesBase::createEmpty(), osg::OrthographicCameraBase::createEmpty(), osg::OffCenterPerspectiveCameraBase::createEmpty(), osg::MultiPassMaterialBase::createEmpty(), osg::MultiDisplayWindowBase::createEmpty(), osg::MatrixCameraDecoratorBase::createEmpty(), osg::MatrixCameraBase::createEmpty(), osg::MaterialPoolBase::createEmpty(), osg::MaterialGroupBase::createEmpty(), osg::MaterialChunkBase::createEmpty(), osg::LogicOpChunkBase::createEmpty(), osg::LineChunkBase::createEmpty(), osg::LightModelChunkBase::createEmpty(), osg::LightEnvBase::createEmpty(), osg::LightChunkBase::createEmpty(), osg::InverseTransformBase::createEmpty(), osg::InlineBase::createEmpty(), osg::ImageForegroundBase::createEmpty(), osg::ImageBase::createEmpty(), osg::ImageBackgroundBase::createEmpty(), osg::GroupBase::createEmpty(), osg::GraphicStatisticsForegroundBase::createEmpty(), osg::GradientBackgroundBase::createEmpty(), osg::GrabForegroundBase::createEmpty(), osg::GLUTWindowBase::createEmpty(), osg::GeometryBase::createEmpty(), osg::FresnelMaterialBase::createEmpty(), osg::FragmentProgramChunkBase::createEmpty(), osg::FileGrabForegroundBase::createEmpty(), osg::FCPtrAttributeMapBase::createEmpty(), osg::FBOViewportBase::createEmpty(), osg::FatBorderChunkBase::createEmpty(), osg::DVRVolumeTextureBase::createEmpty(), osg::DVRVolumeBase::createEmpty(), osg::DVRSimpleShaderBase::createEmpty(), osg::DVRSimpleLUTShaderBase::createEmpty(), osg::DVRMtexLUTShaderBase::createEmpty(), osg::DVRLookupTableBase::createEmpty(), osg::DVRIsoSurfaceBase::createEmpty(), osg::DVRIsoShaderBase::createEmpty(), osg::DVRGeometryBase::createEmpty(), osg::DVRClipObjectsBase::createEmpty(), osg::DVRClipGeometryBase::createEmpty(), osg::DVRAppearanceBase::createEmpty(), osg::DistortionDisplayFilterBase::createEmpty(), osg::DistanceLODBase::createEmpty(), osg::DisplayFilterForegroundBase::createEmpty(), osg::DisplayCalibrationBase::createEmpty(), osg::DirectionalLightBase::createEmpty(), osg::DepthClearBackgroundBase::createEmpty(), osg::DepthChunkBase::createEmpty(), osg::CubeTextureChunkBase::createEmpty(), osg::ComponentTransformBase::createEmpty(), osg::ColorMaskChunkBase::createEmpty(), osg::ColorDisplayFilterBase::createEmpty(), osg::ColorBufferViewportBase::createEmpty(), osg::ClusterWindowBase::createEmpty(), osg::ClipPlaneChunkBase::createEmpty(), osg::ClipPlaneBase::createEmpty(), osg::ChunkMaterialBase::createEmpty(), osg::BlendChunkBase::createEmpty(), osg::BillboardBase::createEmpty(), osg::XWindowBase::shallowCopy(), osg::WIN32WindowBase::shallowCopy(), osg::ViewportBase::shallowCopy(), osg::VertexProgramChunkBase::shallowCopy(), osg::TwoSidedLightingChunkBase::shallowCopy(), osg::TransformChunkBase::shallowCopy(), osg::TransformBase::shallowCopy(), osg::TileCameraDecoratorBase::shallowCopy(), osg::TextureTransformChunkBase::shallowCopy(), osg::TextureGrabForegroundBase::shallowCopy(), osg::TextureGrabBackgroundBase::shallowCopy(), osg::TextureChunkBase::shallowCopy(), osg::TextureBackgroundBase::shallowCopy(), osg::TexGenChunkBase::shallowCopy(), osg::SwitchMaterialBase::shallowCopy(), osg::SwitchBase::shallowCopy(), osg::SurfaceBase::shallowCopy(), osg::StringAttributeMapBase::shallowCopy(), osg::StereoBufferViewportBase::shallowCopy(), osg::StencilChunkBase::shallowCopy(), osg::StateSortingGroupBase::shallowCopy(), osg::StateBase::shallowCopy(), osg::SpotLightBase::shallowCopy(), osg::SortFirstWindowBase::shallowCopy(), osg::SolidBackgroundBase::shallowCopy(), osg::SlicesBase::shallowCopy(), osg::SkyBackgroundBase::shallowCopy(), osg::SimpleTexturedMaterialBase::shallowCopy(), osg::SimpleStatisticsForegroundBase::shallowCopy(), osg::SimpleMaterialBase::shallowCopy(), osg::SHLParameterChunkBase::shallowCopy(), osg::SHLChunkBase::shallowCopy(), osg::ShearedStereoCameraDecoratorBase::shallowCopy(), osg::ShaderParameterVec4fBase::shallowCopy(), osg::ShaderParameterVec3fBase::shallowCopy(), osg::ShaderParameterVec2fBase::shallowCopy(), osg::ShaderParameterStringBase::shallowCopy(), osg::ShaderParameterRealBase::shallowCopy(), osg::ShaderParameterMVec4fBase::shallowCopy(), osg::ShaderParameterMVec3fBase::shallowCopy(), osg::ShaderParameterMVec2fBase::shallowCopy(), osg::ShaderParameterMRealBase::shallowCopy(), osg::ShaderParameterMMatrixBase::shallowCopy(), osg::ShaderParameterMIntBase::shallowCopy(), osg::ShaderParameterMatrixBase::shallowCopy(), osg::ShaderParameterIntBase::shallowCopy(), osg::ShaderParameterBoolBase::shallowCopy(), osg::ScreenGroupBase::shallowCopy(), osg::SClipPlaneChunkBase::shallowCopy(), osg::ResolutionDisplayFilterBase::shallowCopy(), osg::RenderOptionsBase::shallowCopy(), osg::RegisterCombinersChunkBase::shallowCopy(), osg::QTWindowBase::shallowCopy(), osg::ProxyGroupBase::shallowCopy(), osg::ProjectionCameraDecoratorBase::shallowCopy(), osg::PolygonForegroundBase::shallowCopy(), osg::PolygonChunkBase::shallowCopy(), osg::PolygonBackgroundBase::shallowCopy(), osg::PointLightBase::shallowCopy(), osg::PointChunkBase::shallowCopy(), osg::PhongMaterialBase::shallowCopy(), osg::PerspectiveCameraBase::shallowCopy(), osg::PassiveWindowBase::shallowCopy(), osg::PassiveViewportBase::shallowCopy(), osg::PassiveBackgroundBase::shallowCopy(), osg::ParticlesBase::shallowCopy(), osg::OrthographicCameraBase::shallowCopy(), osg::OffCenterPerspectiveCameraBase::shallowCopy(), osg::MultiPassMaterialBase::shallowCopy(), osg::MultiDisplayWindowBase::shallowCopy(), osg::MatrixCameraDecoratorBase::shallowCopy(), osg::MatrixCameraBase::shallowCopy(), osg::MaterialPoolBase::shallowCopy(), osg::MaterialGroupBase::shallowCopy(), osg::MaterialChunkBase::shallowCopy(), osg::LogicOpChunkBase::shallowCopy(), osg::LineChunkBase::shallowCopy(), osg::LightModelChunkBase::shallowCopy(), osg::LightEnvBase::shallowCopy(), osg::LightChunkBase::shallowCopy(), osg::InverseTransformBase::shallowCopy(), osg::InlineBase::shallowCopy(), osg::ImageForegroundBase::shallowCopy(), osg::ImageBase::shallowCopy(), osg::ImageBackgroundBase::shallowCopy(), osg::GroupBase::shallowCopy(), osg::GraphicStatisticsForegroundBase::shallowCopy(), osg::GradientBackgroundBase::shallowCopy(), osg::GrabForegroundBase::shallowCopy(), osg::GLUTWindowBase::shallowCopy(), osg::GeometryBase::shallowCopy(), osg::FresnelMaterialBase::shallowCopy(), osg::FragmentProgramChunkBase::shallowCopy(), osg::FileGrabForegroundBase::shallowCopy(), osg::FCPtrAttributeMapBase::shallowCopy(), osg::FBOViewportBase::shallowCopy(), osg::FatBorderChunkBase::shallowCopy(), osg::DVRVolumeTextureBase::shallowCopy(), osg::DVRVolumeBase::shallowCopy(), osg::DVRSimpleShaderBase::shallowCopy(), osg::DVRSimpleLUTShaderBase::shallowCopy(), osg::DVRMtexLUTShaderBase::shallowCopy(), osg::DVRLookupTableBase::shallowCopy(), osg::DVRIsoSurfaceBase::shallowCopy(), osg::DVRIsoShaderBase::shallowCopy(), osg::DVRGeometryBase::shallowCopy(), osg::DVRClipObjectsBase::shallowCopy(), osg::DVRClipGeometryBase::shallowCopy(), osg::DVRAppearanceBase::shallowCopy(), osg::DistortionDisplayFilterBase::shallowCopy(), osg::DistanceLODBase::shallowCopy(), osg::DisplayFilterForegroundBase::shallowCopy(), osg::DisplayCalibrationBase::shallowCopy(), osg::DirectionalLightBase::shallowCopy(), osg::DepthClearBackgroundBase::shallowCopy(), osg::DepthChunkBase::shallowCopy(), osg::CubeTextureChunkBase::shallowCopy(), osg::ComponentTransformBase::shallowCopy(), osg::ColorMaskChunkBase::shallowCopy(), osg::ColorDisplayFilterBase::shallowCopy(), osg::ColorBufferViewportBase::shallowCopy(), osg::ClusterWindowBase::shallowCopy(), osg::ClipPlaneChunkBase::shallowCopy(), osg::ClipPlaneBase::shallowCopy(), osg::ChunkMaterialBase::shallowCopy(), osg::BlendChunkBase::shallowCopy(), and osg::BillboardBase::shallowCopy().
00141 { 00142 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00143 00144 UInt8 *pTmp; 00145 00146 result._containerSize = sizeof(ObjectType); 00147 00148 pTmp = 00149 static_cast<UInt8 *>(operator new( 00150 sizeof(Int32) + // ReferenceCount 00151 sizeof(UInt32) + // ContainerId 00152 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00153 00154 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00155 00156 pTmp += sizeof(Int32); 00157 00158 result._storeP = (pTmp + sizeof(UInt32)); 00159 00160 #ifdef OSG_DEBUG_FCPTR 00161 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00162 #endif 00163 00164 *(reinterpret_cast<UInt32 *>(pTmp)) = 00165 FieldContainerFactory::the()->registerFieldContainer(result); 00166 00167 Thread::getCurrentChangeList()->addCreated( 00168 *(reinterpret_cast<UInt32 *>(pTmp))); 00169 00170 pTmp += sizeof(UInt32); 00171 00172 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00173 00174 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00175 { 00176 pTmp = 00177 reinterpret_cast<UInt8 *>(new (pTmp) ObjectType(*prototypeP)); 00178 00179 pTmp += sizeof(ObjectType); 00180 } 00181 00182 result->onCreate(prototypeP); 00183 00184 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00185 { 00186 aObject[i].onCreateAspect(aObject, prototypeP); 00187 } 00188 00189 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00190 00191 fprintf(stderr, "GV_MEM_FC_DBG : (%u) cc (%p|%u)\n", 00192 Thread::getAspect(), 00193 result._storeP, 00194 // ObjectType::getClassType().getCName(), 00195 ObjectType::getClassType().getId()); 00196 #endif 00197 00198 #ifdef OSG_DEBUG_TYPED_FCPTR 00199 result.updateTypedStore(); 00200 #endif 00201 }
| void osg::FieldContainer::newPtr | ( | ObjectPtrT & | result | ) | [inline, static, protected, inherited] |
Definition at line 204 of file OSGFieldContainerImpl.inl.
References osg::ChangeList::addCreated(), osg::PThreadBase::getAspect(), osg::PThreadBase::getCurrentChangeList(), osg::ThreadManager::getNumAspects(), osg::FieldContainerFactory::registerFieldContainer(), and osg::FieldContainerFactory::the().
00205 { 00206 typedef typename ObjectPtrT::StoredObjectType ObjectType; 00207 00208 UInt8 *pTmp; 00209 00210 result._containerSize = sizeof(ObjectType); 00211 00212 pTmp = 00213 static_cast<UInt8 *>(operator new( 00214 sizeof(Int32) + // ReferenceCount 00215 sizeof(UInt32) + // ContainerId 00216 sizeof(ObjectType) * ThreadManager::getNumAspects())); 00217 00218 *(reinterpret_cast<Int32 *>(pTmp)) = 0; 00219 00220 pTmp += sizeof(Int32); 00221 00222 result._storeP = (pTmp + sizeof(UInt32)); 00223 00224 #ifdef OSG_DEBUG_FCPTR 00225 result._typedStoreP = reinterpret_cast<FieldContainer *>(result._storeP); 00226 #endif 00227 00228 *(reinterpret_cast<UInt32 *>(pTmp)) = 00229 FieldContainerFactory::the()->registerFieldContainer(result); 00230 00231 Thread::getCurrentChangeList()->addCreated( 00232 *(reinterpret_cast<UInt32 *>(pTmp))); 00233 00234 pTmp += sizeof(UInt32); 00235 00236 ObjectType *aObject = reinterpret_cast<ObjectType *>(pTmp); 00237 00238 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00239 { 00240 pTmp = reinterpret_cast<UInt8 *>(new (pTmp) ObjectType()); 00241 00242 pTmp += sizeof(ObjectType); 00243 } 00244 00245 result->onCreate(); 00246 00247 for(UInt32 i = 0; i < ThreadManager::getNumAspects(); i++) 00248 { 00249 aObject[i].onCreateAspect(aObject); 00250 } 00251 00252 #if defined(OSG_GV_BETA) && defined(OSG_DBG_MEM) 00253 fprintf(stderr, "GV_MEM_FC_DBG : (%u) c (%p|%u)\n", 00254 Thread::getAspect(), 00255 result._storeP, 00256 // ObjectType::getClassType().getCName(), 00257 ObjectType::getClassType().getId()); 00258 #endif 00259 00260 #ifdef OSG_DEBUG_TYPED_FCPTR 00261 result.updateTypedStore(); 00262 #endif 00263 }
| void osg::FieldContainer::beginEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
| void osg::FieldContainer::endEditX | ( | const BitVector & | whichField, | |
| FieldTypeT & | field | |||
| ) | [inline, protected, inherited] |
Definition at line 291 of file OSGFieldContainerImpl.inl.
References osg::endEditCP().
00292 { 00293 FieldContainerPtr tmpPtr(this); 00294 endEditCP(tmpPtr, whichField); 00295 }
| void osg::FieldContainer::onCreate | ( | const FieldContainer * | source = NULL |
) | [inline, protected, inherited] |
Definition at line 318 of file OSGFieldContainerImpl.inl.
Referenced by osg::ShaderParameterChunk::onCreate().
| void osg::FieldContainer::onCreateAspect | ( | const FieldContainer * | aspect0, | |
| const FieldContainer * | source = NULL | |||
| ) | [inline, protected, inherited] |
| 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] |
friend class FresnelMaterialBase [friend] |
Definition at line 125 of file OSGFresnelMaterial.h.
Definition at line 129 of file OSGFresnelMaterial.h.
Referenced by makeState(), prepareLocalChunks(), rebuildState(), and ~FresnelMaterial().
Definition at line 130 of file OSGFresnelMaterial.h.
Referenced by changed(), makeState(), prepareLocalChunks(), rebuildState(), updateFresnel(), and ~FresnelMaterial().
Definition at line 131 of file OSGFresnelMaterial.h.
Referenced by makeState(), prepareLocalChunks(), rebuildState(), and ~FresnelMaterial().
Definition at line 132 of file OSGFresnelMaterial.h.
Referenced by makeState(), prepareLocalChunks(), rebuildState(), and ~FresnelMaterial().
ImagePtr osg::FresnelMaterial::_img [private] |
Definition at line 133 of file OSGFresnelMaterial.h.
Referenced by changed(), prepareLocalChunks(), updateFresnel(), and ~FresnelMaterial().
const osg::BitVector FresnelMaterialBase::AmbientFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::AmbientFieldId)
Definition at line 120 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::DiffuseFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::DiffuseFieldId)
Definition at line 121 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::SpecularFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::SpecularFieldId)
Definition at line 122 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::ShininessFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::ShininessFieldId)
Definition at line 123 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::EmissionFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::EmissionFieldId)
Definition at line 124 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::TransparencyFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::TransparencyFieldId)
Definition at line 125 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::LitFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::LitFieldId)
Definition at line 126 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::ColorMaterialFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::ColorMaterialFieldId)
Definition at line 127 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::IndexFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::IndexFieldId)
Definition at line 128 of file OSGFresnelMaterialBase.h.
Referenced by changed(), osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::ScaleFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::ScaleFieldId)
Definition at line 129 of file OSGFresnelMaterialBase.h.
Referenced by changed(), osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::BiasFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::BiasFieldId)
Definition at line 130 of file OSGFresnelMaterialBase.h.
Referenced by changed(), osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::ImageFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << FresnelMaterialBase::ImageFieldId)
Definition at line 131 of file OSGFresnelMaterialBase.h.
Referenced by changed(), osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), and osg::FresnelMaterialBase::getBinSize().
const osg::BitVector FresnelMaterialBase::MTInfluenceMask [static, inherited] |
Initial value:
(Inherited::MTInfluenceMask) |
(static_cast<BitVector>(0x0) << Inherited::NextFieldId)
Reimplemented from osg::ChunkMaterialBase.
Definition at line 134 of file OSGFresnelMaterialBase.h.
Color3f FresnelMaterialBase::_sfAmbient [protected, inherited] |
Definition at line 255 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getAmbient(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getSFAmbient(), and osg::FresnelMaterialBase::setAmbient().
Color3f FresnelMaterialBase::_sfDiffuse [protected, inherited] |
Definition at line 256 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getDiffuse(), osg::FresnelMaterialBase::getSFDiffuse(), and osg::FresnelMaterialBase::setDiffuse().
Color3f FresnelMaterialBase::_sfSpecular [protected, inherited] |
Definition at line 257 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getSFSpecular(), osg::FresnelMaterialBase::getSpecular(), and osg::FresnelMaterialBase::setSpecular().
Real32 FresnelMaterialBase::_sfShininess [protected, inherited] |
Definition at line 258 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getSFShininess(), osg::FresnelMaterialBase::getShininess(), and osg::FresnelMaterialBase::setShininess().
Color3f FresnelMaterialBase::_sfEmission [protected, inherited] |
Definition at line 259 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getEmission(), osg::FresnelMaterialBase::getSFEmission(), and osg::FresnelMaterialBase::setEmission().
Real32 FresnelMaterialBase::_sfTransparency [protected, inherited] |
Definition at line 260 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getSFTransparency(), osg::FresnelMaterialBase::getTransparency(), and osg::FresnelMaterialBase::setTransparency().
bool FresnelMaterialBase::_sfLit [protected, inherited] |
Definition at line 261 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getLit(), osg::FresnelMaterialBase::getSFLit(), and osg::FresnelMaterialBase::setLit().
GLenum FresnelMaterialBase::_sfColorMaterial [protected, inherited] |
Definition at line 262 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getColorMaterial(), osg::FresnelMaterialBase::getSFColorMaterial(), and osg::FresnelMaterialBase::setColorMaterial().
Real32 FresnelMaterialBase::_sfIndex [protected, inherited] |
Definition at line 263 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getIndex(), osg::FresnelMaterialBase::getSFIndex(), and osg::FresnelMaterialBase::setIndex().
Real32 FresnelMaterialBase::_sfScale [protected, inherited] |
Definition at line 264 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getScale(), osg::FresnelMaterialBase::getSFScale(), and osg::FresnelMaterialBase::setScale().
Real32 FresnelMaterialBase::_sfBias [protected, inherited] |
Definition at line 265 of file OSGFresnelMaterialBase.h.
Referenced by osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBias(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getSFBias(), and osg::FresnelMaterialBase::setBias().
ImagePtr FresnelMaterialBase::_sfImage [protected, inherited] |
Definition at line 266 of file OSGFresnelMaterialBase.h.
Referenced by changed(), osg::FresnelMaterialBase::copyFromBin(), osg::FresnelMaterialBase::copyToBin(), osg::FresnelMaterialBase::executeSyncImpl(), osg::FresnelMaterialBase::getBinSize(), osg::FresnelMaterialBase::getImage(), osg::FresnelMaterialBase::getSFImage(), osg::FresnelMaterialBase::setImage(), setImage(), and ~FresnelMaterial().
const osg::BitVector osg::ChunkMaterialBase::ChunksFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << ChunkMaterialBase::ChunksFieldId)
Definition at line 100 of file OSGChunkMaterialBase.h.
Referenced by osg::ChunkMaterialBase::copyFromBin(), osg::ChunkMaterialBase::copyToBin(), osg::PhongMaterial::createChunkMaterial(), osg::VRMLAppearanceDesc::endNode(), osg::ChunkMaterialBase::executeSyncImpl(), osg::ChunkMaterialBase::getBinSize(), and modifyMaterial().
const osg::BitVector osg::ChunkMaterialBase::SlotsFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << ChunkMaterialBase::SlotsFieldId)
Definition at line 101 of file OSGChunkMaterialBase.h.
Referenced by osg::ChunkMaterialBase::copyFromBin(), osg::ChunkMaterialBase::copyToBin(), osg::ChunkMaterialBase::executeSyncImpl(), and osg::ChunkMaterialBase::getBinSize().
StateChunkPtr osg::ChunkMaterialBase::_mfChunks [protected, inherited] |
Definition at line 185 of file OSGChunkMaterialBase.h.
Referenced by osg::ChunkMaterial::addChunk(), osg::ChunkMaterial::addChunks(), osg::ChunkMaterial::changed(), osg::ChunkMaterial::clearChunks(), osg::ChunkMaterialBase::copyFromBin(), osg::ChunkMaterialBase::copyToBin(), osg::PhongMaterial::createFragmentProgram(), osg::SimpleMaterial::dump(), osg::ChunkMaterial::dump(), osg::ChunkMaterialBase::executeSyncImpl(), osg::ChunkMaterial::find(), osg::ChunkMaterialBase::getBinSize(), osg::ChunkMaterialBase::getChunks(), osg::ChunkMaterialBase::getMFChunks(), osg::ChunkMaterial::isTransparent(), osg::PhongMaterial::makeState(), makeState(), osg::PhongMaterial::rebuildState(), rebuildState(), and osg::ChunkMaterial::subChunk().
Int32 osg::ChunkMaterialBase::_mfSlots [protected, inherited] |
Definition at line 186 of file OSGChunkMaterialBase.h.
Referenced by osg::ChunkMaterial::addChunk(), osg::ChunkMaterial::addChunks(), osg::ChunkMaterialBase::copyFromBin(), osg::ChunkMaterialBase::copyToBin(), osg::ChunkMaterial::dump(), osg::ChunkMaterialBase::executeSyncImpl(), osg::ChunkMaterialBase::getBinSize(), osg::ChunkMaterialBase::getMFSlots(), osg::ChunkMaterialBase::getSlots(), and osg::ChunkMaterial::subChunk().
const Int32 Material::NoStateSorting = 0x7fffffff [static, inherited] |
Definition at line 78 of file OSGMaterial.h.
Referenced by osg::RenderAction::dropFunctor(), and osg::RenderAction::dropGeometry().
const Int32 Material::TransparencyAutoDetection = 0 [static, inherited] |
Definition at line 79 of file OSGMaterial.h.
Referenced by osg::MultiPassMaterial::isTransparent(), and osg::ChunkMaterial::isTransparent().
const Int32 Material::TransparencyForceTransparent = 1 [static, inherited] |
Definition at line 80 of file OSGMaterial.h.
Referenced by osg::MultiPassMaterial::isTransparent(), and osg::ChunkMaterial::isTransparent().
const Int32 Material::TransparencyForceOpaque = 2 [static, inherited] |
Definition at line 81 of file OSGMaterial.h.
StatePtr osg::Material::_pState [protected, inherited] |
Definition at line 142 of file OSGMaterial.h.
Referenced by osg::Material::getState(), osg::Material::operator==(), osg::SimpleTexturedMaterial::rebuildState(), osg::SimpleMaterial::rebuildState(), osg::PhongMaterial::rebuildState(), rebuildState(), osg::ChunkMaterial::rebuildState(), osg::Material::~Material(), and osg::SwitchMaterial::~SwitchMaterial().
const osg::BitVector osg::MaterialBase::SortKeyFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << MaterialBase::SortKeyFieldId)
Definition at line 100 of file OSGMaterialBase.h.
Referenced by osg::MaterialBase::copyFromBin(), osg::MaterialBase::copyToBin(), osg::MaterialBase::executeSyncImpl(), and osg::MaterialBase::getBinSize().
const osg::BitVector osg::MaterialBase::TransparencyModeFieldMask [static, inherited] |
Initial value:
(TypeTraits<BitVector>::One << MaterialBase::TransparencyModeFieldId)
Definition at line 101 of file OSGMaterialBase.h.
Referenced by osg::MaterialBase::copyFromBin(), osg::MaterialBase::copyToBin(), osg::MaterialBase::executeSyncImpl(), and osg::MaterialBase::getBinSize().
Int32 osg::MaterialBase::_sfSortKey [protected, inherited] |
Definition at line 169 of file OSGMaterialBase.h.
Referenced by osg::MaterialBase::copyFromBin(), osg::MaterialBase::copyToBin(), osg::MaterialBase::executeSyncImpl(), osg::MaterialBase::getBinSize(), osg::Material::getRealSortKey(), osg::MaterialBase::getSFSortKey(), osg::MaterialBase::getSortKey(), and osg::MaterialBase::setSortKey().
Int32 osg::MaterialBase::_sfTransparencyMode [protected, inherited] |
Set the transparency mode, possible values are TransparencyAutoDetection, TransparencyForceTransparent and TransparencyForceOpaque
Definition at line 170 of file OSGMaterialBase.h.
Referenced by osg::MaterialBase::copyFromBin(), osg::MaterialBase::copyToBin(), osg::MaterialBase::executeSyncImpl(), osg::MaterialBase::getBinSize(), osg::MaterialBase::getSFTransparencyMode(), osg::MaterialBase::getTransparencyMode(), and osg::MaterialBase::setTransparencyMode().
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