SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
sutil::CDynamicTypeBase< Idx > Class Template Referenceabstract

#include <CRegisteredDynamicTypes.hpp>

Inheritance diagram for sutil::CDynamicTypeBase< Idx >:
Inheritance graph
[legend]

Public Member Functions

 CDynamicTypeBase (const Idx &arg_type_name)
 
virtual ~CDynamicTypeBase ()
 
virtual void * createObject ()=0
 

Protected Member Functions

virtual bool registerMyType (CDynamicTypeBase *arg_obj)
 

Protected Attributes

Idx type_name_
 

Private Member Functions

 CDynamicTypeBase ()
 
 CDynamicTypeBase (const CDynamicTypeBase &)
 
CDynamicTypeBaseoperator= (const CDynamicTypeBase &)
 

Detailed Description

template<typename Idx>
class sutil::CDynamicTypeBase< Idx >

To support indexed querying for dynamic object allocation: Subclass CDynamicTypeBase and implement the createObject() function to return an object of the wanted type.

Constructor & Destructor Documentation

template<typename Idx>
sutil::CDynamicTypeBase< Idx >::CDynamicTypeBase ( const Idx &  arg_type_name)
inline

Must name a type while creating an object

template<typename Idx>
virtual sutil::CDynamicTypeBase< Idx >::~CDynamicTypeBase ( )
inlinevirtual

Default Destructor : Does nothing

template<typename Idx>
sutil::CDynamicTypeBase< Idx >::CDynamicTypeBase ( )
private

Must name a type while creating an object

template<typename Idx>
sutil::CDynamicTypeBase< Idx >::CDynamicTypeBase ( const CDynamicTypeBase< Idx > &  )
private

Must name a type while creating an object

Member Function Documentation

template<typename Idx>
virtual void* sutil::CDynamicTypeBase< Idx >::createObject ( )
pure virtual

Dynamically allocates an object of the type that any subclass implements, and returns it.

Implemented in sutil::CDynamicType< Idx, Type >.

template<typename Idx>
CDynamicTypeBase& sutil::CDynamicTypeBase< Idx >::operator= ( const CDynamicTypeBase< Idx > &  )
private

Must name a type while creating an object

Member Data Documentation

template<typename Idx>
Idx sutil::CDynamicTypeBase< Idx >::type_name_
protected

The type of the object


The documentation for this class was generated from the following file: