OpenLexocad  27.1
AbstractBehaviorMode.h File Reference
#include <Base/Base.h>
#include <Base/Observer.h>
#include <Core/EventInterface.h>
#include <Core/GUIInterface.h>
#include <Core/ServiceInterface.h>
#include <Core/ViewInterface.h>
#include <string>

Go to the source code of this file.

Classes

class  Core::AbstractBehaviorMode
 
class  Core::AbstractBehaviorSubMode
 
class  Core::BehaviorModeNotification
 
class  Core::BehaviorModeFactory
 

Namespaces

 Core
 

Macros

#define ADD_BEHAVIORMODE_FACTORY(_factoryName_, _class_)
 
#define REGISTER_BEHAVIORMODE_FACTORY(_factoryName_, _class_)   Core::BehaviorModeFactory::_registry[#_class_] = (Core::BehaviorModeFactory*)new _factoryName_();
 

Typedefs

typedef std::map< std::string, bool > Core::BehaviorAttributeMap
 

Detailed Description

AbstractBehaviorMode class header.

Macro Definition Documentation

◆ ADD_BEHAVIORMODE_FACTORY

#define ADD_BEHAVIORMODE_FACTORY (   _factoryName_,
  _class_ 
)
Value:
class _factoryName_ : public Core::BehaviorModeFactory \
{ \
private: \
{ \
Core::AbstractBehaviorMode* o = new _class_; \
o->setInterfaces(vi, gi, si); \
return o; \
} \
};
Definition: AbstractBehaviorMode.h:38
Definition: AbstractBehaviorMode.h:134
Definition: ServiceInterface.h:95
void setInterfaces(ViewMgrInterface *vi, GUIInterface *gi, ServiceInterface *si)
Definition: ViewInterface.h:34
virtual AbstractBehaviorMode * createByFactory(ViewMgrInterface *vi, GUIInterface *gi, ServiceInterface *si)=0
Definition: GUIInterface.h:20

◆ REGISTER_BEHAVIORMODE_FACTORY

#define REGISTER_BEHAVIORMODE_FACTORY (   _factoryName_,
  _class_ 
)    Core::BehaviorModeFactory::_registry[#_class_] = (Core::BehaviorModeFactory*)new _factoryName_();