GL Studio C++ Runtime API
DistiAttributeVertexArray< T > Class Template Reference

#include <gls_metadata_attributes.h>

Inheritance diagram for DistiAttributeVertexArray< T >:
DistiAttributeBase WeakReferenceableMixin WeakReferenceable

Public Member Functions

void SetCompatabilityMode (bool mode)
 
 DistiAttributeVertexArray (CallbackMethodCallerBase *callback, const AttributeName &name, T **attribPtr, unsigned int *numVertices)
 
 DistiAttributeVertexArray (CallbackMethodCallerBase *callback, const AttributeName &name, T *attribPtr, unsigned int numElements)
 
virtual bool OkToWrite () const override
 
virtual std::ostream & WriteValue (std::ostream &outstr) override
 
virtual std::istream & ReadValue (std::istream &instr) override
 
virtual bool operator== (const DistiAttributeBase &rArg) override
 
- Public Member Functions inherited from DistiAttributeBase
 DistiAttributeBase (CallbackMethodCallerBase *callback, const AttributeName &name, bool localStorage)
 
virtual DistiAttributeBaseoperator= (const DistiAttributeBase &oldClass)
 
const AttributeNameName () const
 
AttributeNameName ()
 
bool LocalStorage () const
 
virtual bool Copyable () const
 
virtual bool OkToWrite () const
 
virtual bool ValueChanged ()
 
virtual void ResetValueChanged ()
 
virtual std::string ValueString ()
 
virtual void ValueString (const std::string &s)
 
virtual long ValueInt ()
 
virtual void ValueInt (long val)
 
virtual double ValueFloat ()
 
virtual void ValueFloat (double val)
 
virtual void CallCallback ()
 Calls callback CallType3 if it has been set.
 
virtual std::ostream & WriteValue (std::ostream &outstr)=0
 
virtual std::istream & ReadValue (std::istream &instr)=0
 
virtual bool operator== (const DistiAttributeBase &r)
 
template<class valType >
DistiAttributeBaseoperator<< (const valType &val)
 
template<class valType >
DistiAttributeBaseoperator>> (valType &val)
 
virtual CallbackID RegisterObserver (AttributeObserver *observer)
 
virtual void UnregisterObserver (CallbackID id)
 
virtual void NotifyObservers ()
 
- Public Member Functions inherited from WeakReferenceableMixin
void AddWeakReference (WeakReference *weakRef) override
 
void NotifyWeakReferenceDestroyed (WeakReference *ref) override
 
virtual void AddWeakReference (WeakReference *weakRef)=0
 
virtual void NotifyWeakReferenceDestroyed (WeakReference *weakReference)=0
 

Protected Types

typedef T * Tptr
 Shorthand typedef for a pointer to the template type.
 

Protected Attributes

T ** _attribPtr
 Underlying storage for this attribute.
 
unsigned int * _numVertices
 The number of vertices in a variable length array.
 
unsigned int _numElements
 The number of vertices in a fixed length array.
 
bool _fixedArray
 If true, this array is not resizable.
 
bool _compatabilityMode
 If true, backward compatibility mode will be used, values will be read with scanf.
 
- Protected Attributes inherited from DistiAttributeBase
AttributeName _name
 
CallbackMethodCallerBase_callback
 
ScopedPtr< DistiAttributeObserverList > _observerList
 
bool _localStorage
 
- Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * _weakRefs
 

Additional Inherited Members

- Public Types inherited from DistiAttributeBase
typedef unsigned int CallbackID
 Type for unique identifiers.
 
- Protected Member Functions inherited from WeakReferenceableMixin
 WeakReferenceableMixin ()
 
virtual ~WeakReferenceableMixin ()
 

Detailed Description

template<class T>
class disti::DistiAttributeVertexArray< T >

An attribute for either a Vector or Vertex

Constructor & Destructor Documentation

◆ DistiAttributeVertexArray() [1/2]

DistiAttributeVertexArray ( CallbackMethodCallerBase callback,
const AttributeName name,
T **  attribPtr,
unsigned int *  numVertices 
)
inline

Constructor, for variable length arrays.

Parameters
callbackThe callback method function pointer to call back.
nameThe name of this new attribute.
attribPtrA pointer to existing storage for this attribute.
numVerticesThe number of elements in the existing storage.

◆ DistiAttributeVertexArray() [2/2]

DistiAttributeVertexArray ( CallbackMethodCallerBase callback,
const AttributeName name,
T *  attribPtr,
unsigned int  numElements 
)
inline

Constructor, for fixed arrays.

Parameters
callbackThe callback method function pointer to call back.
nameThe name of this new attribute.
attribPtrA pointer to existing storage for this attribute.
numElementsThe number of elements in the existing storage.

Member Function Documentation

◆ OkToWrite()

virtual bool OkToWrite ( ) const
inlineoverridevirtual
Returns
True if this object is ready to have its WriteValue() called.

Reimplemented from DistiAttributeBase.

◆ operator==()

virtual bool operator== ( const DistiAttributeBase rArg)
inlineoverridevirtual

Equality operator

Parameters
rArgThe object to compare to.
Returns
Whether or not the objects are equal.

Reimplemented from DistiAttributeBase.

◆ ReadValue()

virtual std::istream & ReadValue ( std::istream &  instr)
inlineoverridevirtual

Read data from the stream into this attribute.

Parameters
instrStream to read from.
Returns
The stream in its current state.

Implements DistiAttributeBase.

Reimplemented in DistiAttributeTexturePointArray.

◆ SetCompatabilityMode()

void SetCompatabilityMode ( bool  mode)
inline

Set the compatibility parsing mode for this attribute.

Parameters
modeThe new mode to set.

◆ WriteValue()

virtual std::ostream & WriteValue ( std::ostream &  outstr)
inlineoverridevirtual

Write data from this attribute into the stream.

Parameters
outstrThe stream to write to.
Returns
The stream in its current state.

Implements DistiAttributeBase.

Reimplemented in DistiAttributeTexturePointArray.


The documentation for this class was generated from the following file: