PiPo
Plug In Plug Out / Plugin Interface for Processing Objects
PiPo::Attr Class Referenceabstract
Inheritance diagram for PiPo::Attr:
PiPo::EnumAttr PiPoArrayAttr< TYPE, SIZE > PiPoScalarAttr< TYPE > PiPoScalarAttr< bool > PiPoScalarAttr< const char *> PiPoScalarAttr< const char *> PiPoScalarAttr< double > PiPoScalarAttr< float > PiPoScalarAttr< int > PiPoScalarAttr< PiPo::Enumerate > PiPoVarSizeAttr< TYPE > PiPoVarSizeAttr< double > PiPoVarSizeAttr< float > PiPoVarSizeAttr< int > PiPoVarSizeAttr< PiPo::Atom >

Public Member Functions

 Attr (PiPo *pipo, const char *name, const char *descr, const std::type_info *type, bool changesStream)
 
void setIndex (unsigned int index)
 
void setName (const char *name)
 
void setDescr (const char *descr)
 
unsigned int getIndex (void)
 
const char * getName (void)
 
const char * getDescr (void)
 
enum Type getType (void)
 
bool doesChangeStream (void)
 
virtual void clone (Attr *other)=0
 
virtual unsigned int setSize (unsigned int size)=0
 
virtual unsigned int getSize (void)=0
 
virtual void set (unsigned int i, int val, bool silently=false)=0
 
virtual void set (unsigned int i, double val, bool silently=false)=0
 
virtual void set (unsigned int i, const char *val, bool silently=false)=0
 
virtual int getInt (unsigned int i)=0
 
virtual double getDbl (unsigned int i)=0
 
virtual const char * getStr (unsigned int i)=0
 
virtual std::vector< const char * > * getEnumList (void)
 
void changed (bool silently=false)
 
void rename (const char *name)
 

Constructor & Destructor Documentation

◆ Attr()

PiPo::Attr::Attr ( PiPo pipo,
const char *  name,
const char *  descr,
const std::type_info *  type,
bool  changesStream 
)
inline

PiPo attribute base class