Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

nvsg::StateAttribute Class Reference

Pure virtual base class of all state attribute objects. More...

#include <StateAttribute.h>

Inheritance diagram for nvsg::StateAttribute:

Inheritance graph
[legend]
Collaboration diagram for nvsg::StateAttribute:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual NVSG_API const StateAttributeclone (void) const =0
 Get a clone of this attribute.
virtual NVSG_API bool isDataShared (void) const
 Determine whether the data of this object is shared.
virtual NVSG_API DataID getDataID (void) const
 Get the DataID of the data of this object.
NVSG_API const nvutil::IncarnationgetIncarnation (void) const
 Get attribute's incarnation for comparison purposes.
NVSG_API size_t getNumberOfParents (void) const
 Get the number of parents of this StateAttribute.
NVSG_API const StateSetgetParent (size_t index) const
 Get a constant pointer to the parent StateSet at position index.
virtual NVSG_API bool containsTransparentMaterial (void) const
 Ask if this StateAttribute is a transparent Material.
virtual NVSG_API void invalidateTransparentMaterialContainment (void)
 Invalidate the transparent Material containment cache.
virtual NVSG_API bool containsTransparentTexture (void) const
 Ask if this StateAttribute is a transparent Texture.
virtual NVSG_API void invalidateTransparentTextureContainment (void)
 Invalidate the transparent Texture containment cache.

Protected Member Functions

NVSG_API StateAttribute (void)
 Constructor.
NVSG_API StateAttribute (const StateAttribute &rhs)
 Copy constructor.
virtual NVSG_API ~StateAttribute (void)
 Protected destructor to prevent explicit creation on stack.

Protected Attributes

nvutil::Incarnation m_incarnation
 current incarnation

Friends

class StateSet

Detailed Description

Pure virtual base class of all state attribute objects.

Defines the interface that every state attribute (e.g. FaceAttribute) has to resolve.


Constructor & Destructor Documentation

NVSG_API nvsg::StateAttribute::StateAttribute void   )  [protected]
 

Constructor.

NVSG_API nvsg::StateAttribute::StateAttribute const StateAttribute rhs  )  [protected]
 

Copy constructor.

virtual NVSG_API nvsg::StateAttribute::~StateAttribute void   )  [protected, virtual]
 

Protected destructor to prevent explicit creation on stack.


Member Function Documentation

virtual NVSG_API const StateAttribute* nvsg::StateAttribute::clone void   )  const [pure virtual]
 

Get a clone of this attribute.

Implemented in nvsg::CgFx, nvsg::FaceAttribute, nvsg::Material, and nvsg::TextureAttribute.

virtual NVSG_API bool nvsg::StateAttribute::isDataShared void   )  const [virtual]
 

Determine whether the data of this object is shared.

Returns:
true if the object's data is shared, otherwise false.

Reimplemented from nvsg::Object.

Reimplemented in nvsg::CgFx, nvsg::FaceAttribute, nvsg::Material, and nvsg::TextureAttribute.

virtual NVSG_API DataID nvsg::StateAttribute::getDataID void   )  const [virtual]
 

Get the DataID of the data of this object.

Returns:
DataID of the object's data.

Reimplemented from nvsg::Object.

Reimplemented in nvsg::CgFx, nvsg::FaceAttribute, nvsg::Material, and nvsg::TextureAttribute.

const nvutil::Incarnation & nvsg::StateAttribute::getIncarnation void   )  const [inline]
 

Get attribute's incarnation for comparison purposes.

Returns:
The current incarnation.

size_t nvsg::StateAttribute::getNumberOfParents void   )  const [inline]
 

Get the number of parents of this StateAttribute.

Returns:
The number of parents if this StateAttribute

const StateSet * nvsg::StateAttribute::getParent size_t  index  )  const [inline]
 

Get a constant pointer to the parent StateSet at position index.

Returns:
The constant pointer to the parent StateSet at position index
Parameters:
index  The position to get the parent at

virtual NVSG_API bool nvsg::StateAttribute::containsTransparentMaterial void   )  const [virtual]
 

Ask if this StateAttribute is a transparent Material.

Returns:
false

Reimplemented in nvsg::Material.

virtual NVSG_API void nvsg::StateAttribute::invalidateTransparentMaterialContainment void   )  [virtual]
 

Invalidate the transparent Material containment cache.

Invalidating the cache is carried to all parents of this Node.

virtual NVSG_API bool nvsg::StateAttribute::containsTransparentTexture void   )  const [virtual]
 

Ask if this StateAttribute is a transparent Texture.

Returns:
false

virtual NVSG_API void nvsg::StateAttribute::invalidateTransparentTextureContainment void   )  [virtual]
 

Invalidate the transparent Texture containment cache.

Invalidating the cache is carried to all parents of this Node.


Member Data Documentation

nvutil::Incarnation nvsg::StateAttribute::m_incarnation [protected]
 

current incarnation


The documentation for this class was generated from the following file:
Generated on Tue Mar 1 13:20:56 2005 for NVSGSDK by NVIDIA