Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound 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 Methods

virtual NVSG_API const StateAttribute * clone (void) const=0
 Get a clone of this attribute. More...

virtual NVSG_API bool isDataShared (void) const
 Determine whether the data of this object is shared. More...

virtual NVSG_API DataID getDataID (void) const
 Get the DataID of the data of this object. More...

NVSG_API const nvutil::IncarnationgetIncarnation (void) const
 Get attribute's incarnation for comparison purposes. More...

NVSG_API size_t getNumberOfParents (void) const
 Get the number of parents of this StateAttribute. More...

NVSG_API const StateSetgetParent (size_t index) const
 Get a constant pointer to the parent StateSet at position index. More...

virtual NVSG_API bool containsTransparentMaterial (void) const
 Ask if this StateAttribute is a transparent Material. More...

virtual NVSG_API void invalidateTransparentMaterialContainment (void)
 Invalidate the transparent Material containment cache. More...

virtual NVSG_API bool containsTransparentTexture (void) const
 Ask if this StateAttribute is a transparent Texture. More...

virtual NVSG_API void invalidateTransparentTextureContainment (void)
 Invalidate the transparent Texture containment cache. More...


Protected Methods

NVSG_API StateAttribute (void)
 Constructor. More...

NVSG_API StateAttribute (const StateAttribute &rhs)
 Copy constructor. More...

virtual NVSG_API ~StateAttribute (void)
 Protected destructor to prevent explicit creation on stack. More...


Protected Attributes

nvutil::Incarnation m_incarnation
 current incarnation. More...


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:33 2005 for NVSGSDK by NVIDIA