Pyrogenesis trunk
Classes | Macros | Variables
ComponentManager.cpp File Reference
#include "precompiled.h"
#include "ComponentManager.h"
#include "lib/utf8.h"
#include "ps/CLogger.h"
#include "ps/Filesystem.h"
#include "ps/Profile.h"
#include "ps/scripting/JSInterface_VFS.h"
#include "scriptinterface/FunctionWrapper.h"
#include "scriptinterface/Object.h"
#include "simulation2/components/ICmpTemplateManager.h"
#include "simulation2/MessageTypes.h"
#include "simulation2/system/DynamicSubscription.h"
#include "simulation2/system/IComponent.h"
#include "simulation2/system/ParamNode.h"
#include "simulation2/system/SimContext.h"
#include <string_view>
#include "simulation2/TypeList.h"
Include dependency graph for ComponentManager.cpp:

Classes

class  CMessageScripted
 Used for script-only message types. More...
 

Macros

#define MESSAGE(name)   m_ScriptInterface.SetGlobal("MT_" #name, (int)MT_##name);
 
#define INTERFACE(name)
 
#define COMPONENT(name)
 
#define MESSAGE(name)    RegisterMessageType(MT_##name, #name);
 
#define INTERFACE(name)
 
#define COMPONENT(name)
 

Variables

static CComponentManager::InterfaceListUnordered g_EmptyEntityMap
 

Macro Definition Documentation

◆ COMPONENT [1/2]

#define COMPONENT (   name)

◆ COMPONENT [2/2]

#define COMPONENT (   name)
Value:
extern void RegisterComponentType_##name(CComponentManager&); \
m_CurrentComponent = CID_##name; \
RegisterComponentType_##name(*this);
Definition: ComponentManager.h:40

◆ INTERFACE [1/2]

#define INTERFACE (   name)
Value:
m_ScriptInterface.SetGlobal("IID_" #name, (int)IID_##name); \
m_InterfaceIdsByName[#name] = IID_##name;

◆ INTERFACE [2/2]

#define INTERFACE (   name)
Value:
extern void RegisterComponentInterface_##name(ScriptInterface&); \
RegisterComponentInterface_##name(m_ScriptInterface);
Abstraction around a SpiderMonkey JS::Realm.
Definition: ScriptInterface.h:72

◆ MESSAGE [1/2]

#define MESSAGE (   name)    m_ScriptInterface.SetGlobal("MT_" #name, (int)MT_##name);

◆ MESSAGE [2/2]

#define MESSAGE (   name)     RegisterMessageType(MT_##name, #name);

Variable Documentation

◆ g_EmptyEntityMap