Jamoma API  0.6.0.a19
TTAttribute.h File Reference

The TTAttribute class represents a single attribute, as used by the TTObjectBase class. More...

#include "TTObjectBase.h"
+ Include dependency graph for TTAttribute.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  TTAttribute
 This class represents a single attribute, as used by the TTObjectBase class. More...
 

Macros

#define addAttribute(name, type)   TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name)
 A convenience macro to be used by subclasses for registering attributes with a custom getter. More...
 
#define addAttributeWithGetter(name, type)   TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name, (TTGetterMethod)& thisTTClass ::get##name )
 A convenience macro to be used by subclasses for registering attributes with a custom getter. More...
 
#define addAttributeWithSetter(name, type)   TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name, (TTSetterMethod)& thisTTClass ::set##name )
 A convenience macro to be used by subclasses for registering attributes with a custom setter. More...
 
#define addAttributeWithGetterAndSetter(name, type)   TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, NULL, (TTGetterMethod)& thisTTClass ::get##name, (TTSetterMethod)& thisTTClass ::set##name )
 A convenience macro to be used by subclasses for registering attributes with a custom getter and setter. More...
 
#define addAttributeProperty(attributeName, propertyName, initialValue)   registerAttributeProperty(_attrname_##attributeName, #propertyName, initialValue, (TTGetterMethod)& TTAttribute::get##propertyName , (TTSetterMethod)& TTAttribute::set##propertyName )
 A convenience macro to be used for registering properties of attributes. More...
 

Detailed Description

The TTAttribute class represents a single attribute, as used by the TTObjectBase class.

Author
Timothy Place, Theo de la Hogue, Nils Peters, Trond Lossius

Definition in file TTAttribute.h.

Macro Definition Documentation

#define addAttribute (   name,
  type 
)    TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name)

A convenience macro to be used by subclasses for registering attributes with a custom getter.

Parameters
nameThe name of the attribute, which is also the name of the classes' member holding the value, and used for the getter method name.
typeThe type of the value.

Definition at line 29 of file TTAttribute.h.

Referenced by TTAudioSignal::TTAudioSignal(), TTEnvironment::TTEnvironment(), and TTProtocol::TTProtocol().

#define addAttributeProperty (   attributeName,
  propertyName,
  initialValue 
)    registerAttributeProperty(_attrname_##attributeName, #propertyName, initialValue, (TTGetterMethod)& TTAttribute::get##propertyName , (TTSetterMethod)& TTAttribute::set##propertyName )

A convenience macro to be used for registering properties of attributes.

This assumes that the property is one that has been explicitly supported by TTAttribute through the definition of accessor methods. If you are adding a custom property then you must define your own accessor methods and register the property by calling the TTObjectBase::registerAttributeProperty() method directly.

Definition at line 68 of file TTAttribute.h.

Referenced by TTAudioObjectBase::TTAudioObjectBase(), TTAudioSignal::TTAudioSignal(), and TTProtocol::TTProtocol().

#define addAttributeWithGetter (   name,
  type 
)    TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name, (TTGetterMethod)& thisTTClass ::get##name )

A convenience macro to be used by subclasses for registering attributes with a custom getter.

Parameters
nameThe name of the attribute, which is also the name of the classes' member holding the value, and used for the getter method name.
typeThe type of the value.

Definition at line 38 of file TTAttribute.h.

#define addAttributeWithGetterAndSetter (   name,
  type 
)    TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, NULL, (TTGetterMethod)& thisTTClass ::get##name, (TTSetterMethod)& thisTTClass ::set##name )

A convenience macro to be used by subclasses for registering attributes with a custom getter and setter.

Note that we don't bother passing the address of the value in this macro, because the default setter/getter is not used to access it.

Parameters
nameThe name of the attribute, which is also the name of the classes' member holding the value, and used for the getter/setter method names.
typeThe type of the value.

Definition at line 57 of file TTAttribute.h.

#define addAttributeWithSetter (   name,
  type 
)    TTString _attrname_##name(#name); _attrname_##name.at(0)=tolower(_attrname_##name.at(0)); registerAttribute(_attrname_##name, type, &m##name, (TTSetterMethod)& thisTTClass ::set##name )

A convenience macro to be used by subclasses for registering attributes with a custom setter.

Parameters
nameThe name of the attribute, which is also the name of the classes' member holding the value, and used for the setter method name.
typeThe type of the value.

Definition at line 47 of file TTAttribute.h.

Referenced by TTAudioObjectBase::TTAudioObjectBase(), TTAudioSignal::TTAudioSignal(), and TTAudioUnit::TTAudioUnit().