| GL Studio C++ Runtime API

Public Types | Public Member Functions | Public Attributes | List of all members
DistiAttributeEnum< containerClass, setType, getType > Class Template Reference

`#include <disti_metadata.h>`

Inheritance diagram for DistiAttributeEnum< containerClass, setType, getType >:

## Public Types
typedef void(containerClass::* | SetMethodType) (setType)
| Typedef for the set method function pointer.
typedef getType(containerClass::* | GetMethodType) ()
| Typedef for the get method function pointer.
Public Types inherited from DistiAttributeBase
typedef unsigned int | CallbackID
| Type for unique identifiers.

## Public Member Functions
| DistiAttributeEnum (containerClass *object, SetMethodType setMethod, GetMethodType getMethod, const AttributeName &name)
virtual long | ValueInt () override
virtual void | ValueInt (long val) override
virtual DistiAttributeBase & | operator= (const DistiAttributeBase &oldClass) override
virtual std::ostream & | WriteValue (std::ostream &outstr) override
int | EnumToInt (std::string &string)
virtual std::istream & | ReadValue (std::istream &instr) override
Public Member Functions inherited from DistiAttributeBase
| DistiAttributeBase (CallbackMethodCallerBase *callback, const AttributeName &name, bool localStorage)
virtual DistiAttributeBase & | operator= (const DistiAttributeBase &oldClass)
const AttributeName & | Name () const
AttributeName & | Name ()
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 std::string | Type () const
virtual bool | operator== (const DistiAttributeBase &r)
template<class valType >
DistiAttributeBase & | operator<< (const valType &val)
template<class valType >
DistiAttributeBase & | operator>> (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

## Public Attributes
DistiAttributeEnumDefList * | _pairList
| A list of name value pairs describing the enumeration.
containerClass * | _object
| Object that contains the attribute.
SetMethodType | _setMethod
| Set method member function pointer.
GetMethodType | _getMethod
| Get method member function pointer.

## Additional Inherited Members
Protected Member Functions inherited from WeakReferenceableMixin
| WeakReferenceableMixin ()
virtual | ~WeakReferenceableMixin ()
Protected Attributes inherited from DistiAttributeBase
AttributeName | _name
CallbackMethodCallerBase * | _callback
ScopedPtr< DistiAttributeObserverList > | _observerList
bool | _localStorage
Protected Attributes inherited from WeakReferenceableMixin
DynamicArray< WeakReference * > * | _weakRefs

## Detailed Description

template<class containerClass, class setType, class getType>
class disti::DistiAttributeEnum< containerClass, setType, getType >

A Disti Attribute which reads and writes enumerations.

## Constructor & Destructor Documentation

## ◆ DistiAttributeEnum()

DistiAttributeEnum | ( | containerClass * | object,
|  | SetMethodType | setMethod,
|  | GetMethodType | getMethod,
|  | const AttributeName & | name
| ) |  |
| inline

Create a new DistiAttributeEnum object, able to convert string and int enum values between one another.

Parameters

  object | The object containing the enumeration.
  setMethod | The set method pointer for the property.
  getMethod | The get method pointer for the property.
  name | The name of the attribute to contain the enumeration.

## Member Function Documentation

## ◆ EnumToInt()

int EnumToInt | ( | std::string & | string | ) |
| inline

Return the associated integer value with the enumeration string.

Parameters

  string | The string whose enum value is to be returned.

Returns
  The enumeration value, 0 if the string isn't present in the list.

## ◆ operator=()

virtual DistiAttributeBase & operator= | ( | const DistiAttributeBase & | oldClass | ) |
| inline override virtual

Assignment operator.

Parameters

  oldClass | The attribute to assign to.

Returns
  The resulting attribute (this).

Reimplemented from DistiAttributeBase.

## ◆ ReadValue()

virtual std::istream & ReadValue | ( | std::istream & | instr | ) |
| inline override virtual

Read from the stream, and store it in this attribute.

Parameters

  instr | The stream to read from.

Returns
  The stream in its updated state.

Implements DistiAttributeBase.

## ◆ ValueInt() [1/2]

virtual long ValueInt | ( |  | ) |
| inline override virtual

Returns
  The integer value via the underlying get method.

Reimplemented from DistiAttributeBase.

## ◆ ValueInt() [2/2]

virtual void ValueInt | ( | long | val | ) |
| inline override virtual

Set the integer value via the underlying set method.

Parameters

  val | The new integer value to set.

Reimplemented from DistiAttributeBase.

## ◆ WriteValue()

virtual std::ostream & WriteValue | ( | std::ostream & | outstr | ) |
| inline override virtual

Write this attribute's string value to the stream.

Parameters

  outstr | The stream to write to.

Returns
  The stream in its updated state.

Implements DistiAttributeBase.

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

- disti_metadata.h