#include "dmtool/DMObject.hpp"#include "libecs.hpp"Include dependency graph for PropertiedClass.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.
Namespaces | |
| namespace | libecs |
Classes | |
| class | libecs::PropertiedClass |
| Common base class for classes with PropertySlots. More... | |
Defines | |
| #define | LIBECS_DM_CLASS(CLASSNAME, BASE) |
| #define | LIBECS_DM_OBJECT_ABSTRACT(CLASSNAME) |
| #define | LIBECS_DM_OBJECT(CLASSNAME, DMTYPE) |
| #define | LIBECS_DM_BASECLASS(CLASSNAME) DM_BASECLASS( CLASSNAME ) |
| #define | LIBECS_DM_INIT(CLASSNAME, DMTYPE) |
| #define | LIBECS_DM_INIT_STATIC(CLASSNAME, DMTYPE) |
| #define | LIBECS_DM_OBJECT_DEF(CLASSNAME, DMTYPE) |
| #define | LIBECS_DM_OBJECT_DEF_ABSTRACT(CLASSNAME) |
| #define | LIBECS_DM_EXPOSE_PROPERTYINTERFACE(CLASSNAME) |
| #define | INHERIT_PROPERTIES(BASECLASS) |
| #define | CLASS_DESCRIPTION(DESCRIPTION) CLASS_INFO( "Description", DESCRIPTION ) |
| #define | NOMETHOD NULLPTR |
| #define | CLASSINFO_TRUE 1 |
| #define | CLASSINFO_FALSE 0 |
| #define | METHODFLAG(METHODPTR, NULLVALUE) METHODFLAG2( METHODPTR, NULLVALUE ) |
| #define | METHODFLAG2(METHODPTR, NULLVALUE) ( # METHODPTR == # NULLVALUE ? CLASSINFO_FALSE : CLASSINFO_TRUE ) |
| #define | CLASS_INFO(FIELDNAME, FIELDVALUE) PropertyInterface<TT>::setInfoField( String ( FIELDNAME ), String( FIELDVALUE ) ) |
| macro for setting class Info string Info is expected as PropertyName, Value both Strings Property descriptor strings | |
| #define | CLASSPROPERTY_INFO(PROPERTYNAME, TYPE, SETMETHOD, GETMETHOD, SAVEMETHOD, LOADMETHOD) |
| macro for setting Property class info PropertyName, Type, set_flag, get_flag, save_flag, load_flag | |
| #define | PROPERTYSLOT(TYPE, NAME, SETMETHOD, GETMETHOD) |
| #define | PROPERTYSLOT_LOAD_SAVE(TYPE, NAME, SETMETHOD, GETMETHOD, LOADMETHOD, SAVEMETHOD) |
| #define | PROPERTYSLOT_NO_LOAD_SAVE(TYPE, NAME, SETMETHOD, GETMETHOD) |
| #define | PROPERTYSLOT_SET_GET(TYPE, NAME) |
| #define | PROPERTYSLOT_SET(TYPE, NAME) |
| #define | PROPERTYSLOT_GET(TYPE, NAME) |
| #define | PROPERTYSLOT_SET_GET_NO_LOAD_SAVE(TYPE, NAME) |
| #define | PROPERTYSLOT_SET_NO_LOAD_SAVE(TYPE, NAME) |
| #define | PROPERTYSLOT_GET_NO_LOAD_SAVE(TYPE, NAME) |
| #define | LIBECS_DM_DEFINE_PROPERTIES() |
| #define | SET_SLOT(TYPE, METHODNAME) void METHODNAME( libecs::Param<TYPE>::type value ) |
| #define | GET_SLOT(TYPE, METHODNAME) const TYPE METHODNAME() const |
| #define | SET_SLOT_DEF(TYPE, METHODNAME, CLASS) SET_SLOT( TYPE, CLASS::METHODNAME ) |
| #define | GET_SLOT_DEF(TYPE, METHODNAME, CLASS) GET_SLOT( TYPE, CLASS::METHODNAME ) |
| #define | SET_METHOD(TYPE, NAME) SET_SLOT( TYPE, set ## NAME ) |
| #define | GET_METHOD(TYPE, NAME) GET_SLOT( TYPE, get ## NAME ) |
| #define | LOAD_METHOD(TYPE, NAME) SET_SLOT( TYPE, load ## NAME ) |
| #define | SAVE_METHOD(TYPE, NAME) GET_SLOT( TYPE, save ## NAME ) |
| #define | SET_METHOD_DEF(TYPE, NAME, CLASS) SET_SLOT_DEF( TYPE, set ## NAME, CLASS ) |
| #define | GET_METHOD_DEF(TYPE, NAME, CLASS) GET_SLOT_DEF( TYPE, get ## NAME, CLASS ) |
| #define | LOAD_METHOD_DEF(TYPE, NAME, CLASS) SET_SLOT_DEF( TYPE, load ## NAME, CLASS ) |
| #define | SAVE_METHOD_DEF(TYPE, NAME, CLASS) GET_SLOT_DEF( TYPE, save ## NAME, CLASS ) |
| #define | SIMPLE_GET_METHOD(TYPE, NAME) |
| #define | SIMPLE_SET_METHOD(TYPE, NAME) |
| #define | SIMPLE_SET_GET_METHOD(TYPE, NAME) |
| #define | NULLSET_SPECIALIZATION(TYPE) template <> void PropertiedClass::nullSet<TYPE>( Param<TYPE>::type ) |
| #define | NULLGET_SPECIALIZATION(TYPE) template <> const TYPE PropertiedClass::nullGet<TYPE>() const |
Functions | |
| libecs::NULLSET_SPECIALIZATION (Real) | |
| libecs::NULLSET_SPECIALIZATION (Integer) | |
| libecs::NULLSET_SPECIALIZATION (String) | |
| libecs::NULLSET_SPECIALIZATION (Polymorph) | |
| libecs::NULLGET_SPECIALIZATION (Real) | |
| libecs::NULLGET_SPECIALIZATION (Integer) | |
| libecs::NULLGET_SPECIALIZATION (String) | |
| libecs::NULLGET_SPECIALIZATION (Polymorph) | |
|
|
Value: PropertyInterface<TT>::setPropertyInfoField( String( PROPERTYNAME ), String( TYPE ), \
METHODFLAG(SETMETHOD, NULLPTR ), METHODFLAG( GETMETHOD, NULLPTR ), \
METHODFLAG( SAVEMETHOD, NULLPTR ), METHODFLAG( LOADMETHOD, NULLPTR ) )
|
|
|
Value: BASECLASS::initializePropertyInterface( Type2Type<TT>() );\
CLASS_INFO( "Baseclass", # BASECLASS )
|
|
|
Value: DECLARE_CLASS( CLASSNAME );\ class CLASSNAME\ :\ public BASE |
|
|
Value: template<class TT>\ static void initializePropertyInterface( Type2Type<TT> ) For internal use only.
|
|
|
For internal use only.
|
|
|
Value: DM_INIT( CLASSNAME, DMTYPE )\ LIBECS_DM_INIT_STATIC( CLASSNAME, DMTYPE ) |
|
|
Value: template class PropertyInterface<CLASSNAME>;\ libecs::PropertyInterface<CLASSNAME> CLASSNAME::thePropertyInterface |
|
|
Value: DM_OBJECT( CLASSNAME, DMTYPE );\ LIBECS_DM_OBJECT_DEF( CLASSNAME, DMTYPE );\ LIBECS_DM_EXPOSE_PROPERTYINTERFACE( CLASSNAME );\ LIBECS_DM_DEFINE_PROPERTIES() |
|
|
Value: LIBECS_DM_OBJECT_DEF_ABSTRACT( CLASSNAME );\ LIBECS_DM_EXPOSE_PROPERTYINTERFACE( CLASSNAME );\ LIBECS_DM_DEFINE_PROPERTIES() |
|
|
Value: typedef DMTYPE _LIBECS_DMTYPE_;\
LIBECS_DM_OBJECT_DEF_ABSTRACT( CLASSNAME )
For internal use only.
|
|
|
Value: typedef CLASSNAME _LIBECS_CLASS_;\ virtual StringLiteral getClassName() const { return XSTR( CLASSNAME ); } |
|
|
Value: PropertyInterface<TT>::registerPropertySlot( # NAME,\
new ConcretePropertySlot<TT,TYPE>( SETMETHOD, GETMETHOD ) );\
CLASSPROPERTY_INFO( # NAME, # TYPE, SETMETHOD, GETMETHOD, SETMETHOD, GETMETHOD )
|
|
|
Value: PROPERTYSLOT( TYPE, NAME,\
NULLPTR,\
& _LIBECS_CLASS_::get ## NAME )
|
|
|
Value: PROPERTYSLOT_NO_LOAD_SAVE( TYPE, NAME,\
NULLPTR,\
& _LIBECS_CLASS_::get ## NAME )
|
|
|
Value: PropertyInterface<TT>::registerPropertySlot( # NAME,\
new LoadSaveConcretePropertySlot<TT,TYPE>( SETMETHOD, GETMETHOD,\
LOADMETHOD, SAVEMETHOD ) );\
CLASSPROPERTY_INFO( # NAME, # TYPE, SETMETHOD, GETMETHOD, SAVEMETHOD, LOADMETHOD )
|
|
|
Value: PROPERTYSLOT_LOAD_SAVE( TYPE, NAME, SETMETHOD, GETMETHOD,\
NULLPTR, NULLPTR )
|
|
|
Value: PROPERTYSLOT( TYPE, NAME,\
& _LIBECS_CLASS_::set ## NAME,\
NULLPTR )
|
|
|
Value: PROPERTYSLOT( TYPE, NAME,\
& _LIBECS_CLASS_::set ## NAME,\
& _LIBECS_CLASS_::get ## NAME )
|
|
|
Value: PROPERTYSLOT_NO_LOAD_SAVE( TYPE, NAME,\
& _LIBECS_CLASS_::set ## NAME,\
& _LIBECS_CLASS_::get ## NAME )
|
|
|
Value: PROPERTYSLOT_NO_LOAD_SAVE( TYPE, NAME,\
& _LIBECS_CLASS_::set ## NAME,\
NULLPTR )
|
|
|
Value: GET_METHOD( TYPE, NAME )\
{\
return NAME;\
}
|
|
|
Value: SIMPLE_SET_METHOD( TYPE, NAME )\ SIMPLE_GET_METHOD( TYPE, NAME ) |
|
|
Value: SET_METHOD( TYPE, NAME )\
{\
NAME = value;\
}
|
1.4.6