iFun Engine API  1.0.0-b6053
Great Technology for Great Games
Classes | Macros
component.h File Reference
#include <boost/noncopyable.hpp>
#include <funapi/framework/argument_map.h>
#include <funapi/types.h>

Go to the source code of this file.

Classes

class  fun::Component
 Base class for any service in Funapi. More...
 

Macros

#define REGISTER_COMPONENT(COMPONENT_NAME, INSTALLER_CLS)
 Macro to register a <component name, installer> pair. More...
 
#define REGISTER_STARTABLE_COMPONENT(COMPONENT_NAME, INSTALLER_CLS)
 Registers a component as startable component. More...
 
#define REGISTER_STARTABLE_COMPONENT2(COMPONENT_NAME, INSTALLER_CLS)
 

Macro Definition Documentation

◆ REGISTER_COMPONENT

#define REGISTER_COMPONENT (   COMPONENT_NAME,
  INSTALLER_CLS 
)
Value:
\
extern "C" FUNAPI_DLL_VISIBLE bool COMPONENT_NAME ## _install( \
const fun::ArgumentMap &arguments) { \
return INSTALLER_CLS::Install(arguments); \
} \
\
extern "C" FUNAPI_DLL_VISIBLE bool COMPONENT_NAME ## _uninstall() { \
return INSTALLER_CLS::Uninstall(); \
} \
ArgumentMap class manages application-specific run-time arguments.
Definition: argument_map.h:23

◆ REGISTER_STARTABLE_COMPONENT

#define REGISTER_STARTABLE_COMPONENT (   COMPONENT_NAME,
  INSTALLER_CLS 
)
Value:
REGISTER_COMPONENT(COMPONENT_NAME, INSTALLER_CLS) \
\
extern "C" FUNAPI_DLL_VISIBLE bool COMPONENT_NAME ## _start() { \
return INSTALLER_CLS::Start(); \
} \
#define REGISTER_COMPONENT(COMPONENT_NAME, INSTALLER_CLS)
Macro to register a <component name, installer> pair.
Definition: component.h:32

◆ REGISTER_STARTABLE_COMPONENT2

#define REGISTER_STARTABLE_COMPONENT2 (   COMPONENT_NAME,
  INSTALLER_CLS 
)
Value:
REGISTER_STARTABLE_COMPONENT(COMPONENT_NAME, INSTALLER_CLS) \
\
extern "C" FUNAPI_DLL_VISIBLE bool COMPONENT_NAME ## _stop() { \
return INSTALLER_CLS::Stop(); \
} \
#define REGISTER_STARTABLE_COMPONENT(COMPONENT_NAME, INSTALLER_CLS)
Registers a component as startable component.
Definition: component.h:45