gepetto::viewer::PropertyTpl< T, Range > Class Template Reference

#include <gepetto/viewer/node-property.h>

Inheritance diagram for gepetto::viewer::PropertyTpl< T, Range >:
[legend]
Collaboration diagram for gepetto::viewer::PropertyTpl< T, Range >:
[legend]

Public Types

typedef boost::function< void(const T &)> Setter_t
 
typedef boost::function< T(void)> Getter_t
 
typedef shared_ptr< PropertyTplPtr_t
 

Public Member Functions

virtual std::string type ()
 
 PropertyTpl (const std::string &name, const Getter_t &g, const Setter_t &s)
 
virtual ~PropertyTpl ()
 
virtual bool set (const T &value)
 
virtual bool get (T &value)
 
bool hasReadAccess () const
 
bool hasWriteAccess () const
 
const Getter_tgetter () const
 
void getter (const Getter_t &g)
 
const Setter_tsetter () const
 
void setter (const Setter_t &s)
 
- Public Member Functions inherited from gepetto::viewer::Property
virtual bool set (void)
 
virtual bool set (const bool &v)
 
virtual bool set (const int &v)
 
virtual bool set (const float &v)
 
virtual bool set (const std::string &v)
 
virtual bool set (const unsigned long &v)
 
virtual bool set (const osgVector2 &v)
 
virtual bool set (const osgVector3 &v)
 
virtual bool set (const osgVector4 &v)
 
virtual bool set (const Configuration &v)
 
virtual bool get (void)
 
virtual bool get (bool &v)
 
virtual bool get (int &v)
 
virtual bool get (float &v)
 
virtual bool get (std::string &v)
 
virtual bool get (unsigned long &v)
 
virtual bool get (osgVector2 &v)
 
virtual bool get (osgVector3 &v)
 
virtual bool get (osgVector4 &v)
 
virtual bool get (Configuration &v)
 
const std::string & name () const
 
- Public Member Functions inherited from gepetto::viewer::Range< Scalar >
 Range ()
 
bool hasMin ()
 
bool hasMax ()
 
bool hasRange ()
 
void setRange (const Scalar &minimum, const Scalar &maximum)
 
void setRange (const Scalar &minimum, const Scalar &maximum, const Scalar &_step)
 

Static Public Member Functions

static Ptr_t create (const std::string &name, const Getter_t &g, const Setter_t &s)
 
static Ptr_t create (const std::string &name, const Getter_t &g)
 
static Ptr_t create (const std::string &name, const Setter_t &s)
 
template<typename Obj >
static Getter_t getterFromMemberFunction (Obj *obj, const T &(Obj::*mem_func)() const)
 
template<typename Obj >
static Getter_t getterFromMemberFunction (Obj *obj, T(Obj::*mem_func)() const)
 
template<typename Obj >
static Setter_t setterFromMemberFunction (Obj *obj, void(Obj::*mem_func)(const T &))
 
template<typename Obj >
static Setter_t setterFromMemberFunction (Obj *obj, void(Obj::*mem_func)(T))
 
template<typename Obj , typename RetType >
static Ptr_t create (const std::string &name, Obj *obj, RetType(Obj::*mem_get)() const, void(Obj::*mem_set)(const T &))
 
template<typename Obj , typename RetType >
static Ptr_t create (const std::string &name, Obj *obj, RetType(Obj::*mem_get)() const, void(Obj::*mem_set)(T))
 
template<typename Obj , typename RetType >
static Ptr_t createRO (const std::string &name, Obj *obj, RetType(Obj::*mem_get)() const)
 
template<typename Obj >
static Ptr_t createWO (const std::string &name, Obj *obj, void(Obj::*mem_set)(const T &))
 
template<typename Obj , typename RetType >
static Ptr_t createWO (const std::string &name, Obj *obj, void(Obj::*mem_set)(T))
 

Additional Inherited Members

- Public Attributes inherited from gepetto::viewer::Range< Scalar >
Scalar min
 
Scalar max
 
Scalar step
 
bool adaptiveDecimal
 
- Protected Member Functions inherited from gepetto::viewer::Property
 Property (const std::string &name)
 
virtual ~Property ()
 
template<typename T >
void invalidType (T) const
 
void invalidGet () const
 
void invalidSet () const
 
- Protected Attributes inherited from gepetto::viewer::Property
const std::string name_
 

Member Typedef Documentation

◆ Getter_t

template<typename T , typename Range = NoRange>
typedef boost::function< T (void)> gepetto::viewer::PropertyTpl< T, Range >::Getter_t

◆ Ptr_t

template<typename T , typename Range = NoRange>
typedef shared_ptr<PropertyTpl> gepetto::viewer::PropertyTpl< T, Range >::Ptr_t

◆ Setter_t

template<typename T , typename Range = NoRange>
typedef boost::function<void(const T&)> gepetto::viewer::PropertyTpl< T, Range >::Setter_t

Constructor & Destructor Documentation

◆ PropertyTpl()

template<typename T , typename Range = NoRange>
gepetto::viewer::PropertyTpl< T, Range >::PropertyTpl ( const std::string &  name,
const Getter_t g,
const Setter_t s 
)
inline

◆ ~PropertyTpl()

template<typename T , typename Range = NoRange>
virtual gepetto::viewer::PropertyTpl< T, Range >::~PropertyTpl ( )
inlinevirtual

Member Function Documentation

◆ create() [1/5]

template<typename T , typename Range = NoRange>
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::create ( const std::string &  name,
const Getter_t g,
const Setter_t s 
)
inlinestatic

◆ create() [2/5]

template<typename T , typename Range = NoRange>
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::create ( const std::string &  name,
const Getter_t g 
)
inlinestatic

◆ create() [3/5]

template<typename T , typename Range = NoRange>
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::create ( const std::string &  name,
const Setter_t s 
)
inlinestatic

◆ create() [4/5]

template<typename T , typename Range = NoRange>
template<typename Obj , typename RetType >
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::create ( const std::string &  name,
Obj *  obj,
RetType(Obj::*)() const  mem_get,
void(Obj::*)(const T &)  mem_set 
)
inlinestatic

◆ create() [5/5]

template<typename T , typename Range = NoRange>
template<typename Obj , typename RetType >
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::create ( const std::string &  name,
Obj *  obj,
RetType(Obj::*)() const  mem_get,
void(Obj::*)(T)  mem_set 
)
inlinestatic

◆ createRO()

template<typename T , typename Range = NoRange>
template<typename Obj , typename RetType >
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::createRO ( const std::string &  name,
Obj *  obj,
RetType(Obj::*)() const  mem_get 
)
inlinestatic

◆ createWO() [1/2]

template<typename T , typename Range = NoRange>
template<typename Obj >
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::createWO ( const std::string &  name,
Obj *  obj,
void(Obj::*)(const T &)  mem_set 
)
inlinestatic

◆ createWO() [2/2]

template<typename T , typename Range = NoRange>
template<typename Obj , typename RetType >
static Ptr_t gepetto::viewer::PropertyTpl< T, Range >::createWO ( const std::string &  name,
Obj *  obj,
void(Obj::*)(T)  mem_set 
)
inlinestatic

◆ get()

template<typename T , typename Range = NoRange>
virtual bool gepetto::viewer::PropertyTpl< T, Range >::get ( T &  value)
inlinevirtual

◆ getter() [1/2]

template<typename T , typename Range = NoRange>
const Getter_t& gepetto::viewer::PropertyTpl< T, Range >::getter ( ) const
inline

◆ getter() [2/2]

template<typename T , typename Range = NoRange>
void gepetto::viewer::PropertyTpl< T, Range >::getter ( const Getter_t g)
inline

◆ getterFromMemberFunction() [1/2]

template<typename T , typename Range = NoRange>
template<typename Obj >
static Getter_t gepetto::viewer::PropertyTpl< T, Range >::getterFromMemberFunction ( Obj *  obj,
const T &(Obj::*)() const  mem_func 
)
inlinestatic

◆ getterFromMemberFunction() [2/2]

template<typename T , typename Range = NoRange>
template<typename Obj >
static Getter_t gepetto::viewer::PropertyTpl< T, Range >::getterFromMemberFunction ( Obj *  obj,
T(Obj::*)() const  mem_func 
)
inlinestatic

◆ hasReadAccess()

template<typename T , typename Range = NoRange>
bool gepetto::viewer::PropertyTpl< T, Range >::hasReadAccess ( ) const
inlinevirtual

◆ hasWriteAccess()

template<typename T , typename Range = NoRange>
bool gepetto::viewer::PropertyTpl< T, Range >::hasWriteAccess ( ) const
inlinevirtual

◆ set()

template<typename T , typename Range = NoRange>
virtual bool gepetto::viewer::PropertyTpl< T, Range >::set ( const T &  value)
inlinevirtual

◆ setter() [1/2]

template<typename T , typename Range = NoRange>
const Setter_t& gepetto::viewer::PropertyTpl< T, Range >::setter ( ) const
inline

◆ setter() [2/2]

template<typename T , typename Range = NoRange>
void gepetto::viewer::PropertyTpl< T, Range >::setter ( const Setter_t s)
inline

◆ setterFromMemberFunction() [1/2]

template<typename T , typename Range = NoRange>
template<typename Obj >
static Setter_t gepetto::viewer::PropertyTpl< T, Range >::setterFromMemberFunction ( Obj *  obj,
void(Obj::*)(const T &)  mem_func 
)
inlinestatic

◆ setterFromMemberFunction() [2/2]

template<typename T , typename Range = NoRange>
template<typename Obj >
static Setter_t gepetto::viewer::PropertyTpl< T, Range >::setterFromMemberFunction ( Obj *  obj,
void(Obj::*)(T)  mem_func 
)
inlinestatic

◆ type()

template<typename T , typename Range = NoRange>
virtual std::string gepetto::viewer::PropertyTpl< T, Range >::type ( )
inlinevirtual