GL Studio C++ Runtime API
|
#include <gls_metadata_attributes.h>
Public Member Functions | |
DistiAttributeString (CallbackMethodCallerBase *callback, const AttributeName &name, char **attribPtr) | |
DistiAttributeString (CallbackMethodCallerBase *callback, const AttributeName &name, char *initialValue) | |
char * | LocalStorageString () |
virtual bool | OkToWrite () const override |
virtual std::ostream & | WriteValue (std::ostream &outstr) override |
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 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 |
Protected Attributes | |
char ** | _attribPtr |
A pointer to the pointer containing the underlying storage for this attribute. | |
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 () |
An attribute for a char* string
DistiAttributeString | ( | CallbackMethodCallerBase * | callback, |
const AttributeName & | name, | ||
char ** | attribPtr | ||
) |
This constructor makes the bold assumption that it can modify the contents. of the supplied char*, by realocating the memory.
callback | The callback function pointer to call. |
name | The name of this new attribute. |
attribPtr | A pointer to the pointer containing the original string value. |
DistiAttributeString | ( | CallbackMethodCallerBase * | callback, |
const AttributeName & | name, | ||
char * | initialValue | ||
) |
Creates local storage, and will resize as needed.
callback | The callback function pointer to call. |
name | The name of this new attribute. |
initialValue | The initial string value. |
char * LocalStorageString | ( | ) |
|
overridevirtual |
This SHOULD be overriden by any derived objects that may not be ready to write at any point. The reason for this is the data is often written "NAME: VALUE". If Value is not available, we don't want to write "NAME: " first, so before writing "NAME: ", OkToWrite() can be called to see if it will have a valid value.
Reimplemented from DistiAttributeBase.
|
overridevirtual |
Pure virtual because this is specific to the data type to be contained. This should be overridden to read the data from the stream. The value read could be encoded for being read from a file as a single string, or have its own special encoding specific to its underlying type. In the case of attribute strings, this will be the GLS file encoded value. The user is responsible for encoding the value themselves, or using WriteValue which should perform encoding to maintain symmetry.
instr | The stream to read from. |
Implements DistiAttributeBase.
Reimplemented in DistiAttributeEncodedString.
|
overridevirtual |
Pure virtual because this is specific to the data type to be contained. This should be overridden to write the data to the stream. The value written could be encoded for writing to a file as a single string, or have its own special encoding specific to its underlying type. In the case of attribute strings, this will be the GLS file encoded value. The user is responsible for decoding the value themselves, or using ReadValue which should perform decoding to maintain symmetry.
outstr | The stream to write to. |
Implements DistiAttributeBase.
Reimplemented in DistiAttributeEncodedString.