cisst-saw
Loading...
Searching...
No Matches
cmnClassServicesBase.h File Reference

Defines the cmnClassServicesBase. More...

#include <cisstCommon/cmnForwardDeclarations.h>
#include <cisstCommon/cmnLogLoD.h>
#include <string>
#include <typeinfo>
#include <cisstCommon/cmnExport.h>

Go to the source code of this file.

Classes

class  cmnClassServicesBase
 Base class for class services. More...

Macros

#define _cmnClassServicesBase_h

Functions

template<class _class>
cmnClassServicesBasecmnClassServicesInstantiate (void)

Detailed Description

Defines the cmnClassServicesBase.

Macro Definition Documentation

◆ _cmnClassServicesBase_h

#define _cmnClassServicesBase_h

Function Documentation

◆ cmnClassServicesInstantiate()

template<class _class>
cmnClassServicesBase * cmnClassServicesInstantiate ( void )

Class services instantiation.

This function is templated by the type of the class to be registered. Its implementation is defined by the macro CMN_IMPLEMENT_SERVICES or CMN_IMPLEMENT_SERVICES_TEMPLATED. In both case, the function creates the class services (cmnClassServices) and registers it within the class register (cmnClassRegister) based on its std::type_info (see typeid and C++RTTI for more details) to ensure its uniqueness.