Data Structures | |
class | Binding |
Binding abstract classes for the engine. More... | |
class | Clock |
Global clock of the engine used to retrieve time or create timers. More... | |
class | Engine |
Core class of the engine. Used to create subsystems. More... | |
class | Event |
Base untemplated class used for the event instancies. More... | |
class | EventActor |
Event actors could acts as a server and client on event communication channels. More... | |
class | EventChannel |
Event channel used for communication between application/engine's components. More... | |
class | EventFactory |
Event factories are used to create events of certain types. More... | |
class | EventManager |
Main class providing the event messaging system. More... | |
class | ScriptEvent |
Base event class for scripting engine events. More... | |
class | ScriptRegisterFunctionEvent |
Send this event by registering of a new function in the script engine. More... | |
class | ScriptRemoveFunctionEvent |
Send this event by removing of a function from the script engine. More... | |
class | KernelEvent |
On of the system base events classes (used by kernel to send information). More... | |
class | KernelStartTaskEvent |
Send this event if kernel start execution of a task. More... | |
class | KernelStopTaskEvent |
This event is sent if a task stopped/removed from pipeline. More... | |
class | KernelSuspendTaskEvent |
Task is get into sleep state now. More... | |
class | KernelResumeTaskEvent |
Event was waked up and is runnign now. More... | |
class | Exception |
Exception thrown by the engine if any non returnable error occurs. More... | |
class | FileStream |
Derived class from IStream to provide streaming from files. More... | |
class | EmptyFileStream |
Empty file stream to represent empty files. More... | |
class | FileStreamLoader |
File stream loader is able to instantiate file stream objects. More... | |
class | FileSystemManager |
File system manager class handles all filesystem transparent to the user. More... | |
class | IFileSystem |
File system module interface that are managed by file system manager. More... | |
class | IScript |
Script interface for any kind of script languages. More... | |
class | EmptyScript |
Empty script object that just do nothing(idle). More... | |
class | IStream |
Stream is an interface for stream objects (files, urls, ...). More... | |
class | ITask |
Each component of the engine/application does run as tasks in the Kernel. More... | |
class | EmptyTask |
Empty task does not affect anything. It can helps to group tasks by making htem depends on this task. More... | |
class | IThread |
Abstract class to run a ITask in a thread controlled by Kernel. More... | |
class | ITimeObserver |
Interface for every kind of objects used to observe the ticking of the clock. More... | |
class | Kernel |
Heart of our engine system, where tasks are running. More... | |
class | Log |
Simple class giving you logging functionality for your application. More... | |
class | Package |
Package abstract classes for the engine. More... | |
class | Plugin |
General interface for any plugin in the engine. More... | |
class | EmptyPlugin |
Simple class for empty plugin. This plugin doesn't have any effect. More... | |
class | PluginLoader |
Plugin loader does handle loading/creating of plugin libraries for the engine. More... | |
class | CPriority |
Priorities class definition. More... | |
class | Profile |
Single profile processed by the profiler. More... | |
class | Profiler |
The profiler allows you to measure the performance of your code. More... | |
class | Property |
Properties are name value pair with a value of any type. More... | |
class | PropertyList |
Property list to hold property objects. More... | |
class | PropertyManager |
Property manager does hold properties for global access. More... | |
class | IResource |
General interface to hold any kind of resources. More... | |
class | ResourceFactory |
Factory class to built instances of resources. More... | |
class | ResourceHolder |
Interstage between manager and resources for more efficience and safety. More... | |
class | IResourceLoader |
Interface for loading/creating resources. More... | |
class | ResourceManager |
General pointer/handle based resource management system. More... | |
class | IResourcePtr |
Base untemplated class for resource pointers. More... | |
class | ResourcePtr |
Resource pointer is a smart pointer pointing to the resource. More... | |
class | Script |
Simple script object based on engine's simple script language. More... | |
class | ScriptConnector |
Script connectors are listening on script engine events and react on them. More... | |
class | ScriptEngine |
Script engine is a glue code between the scripts and the engine. More... | |
class | ScriptLoader |
Script loader is used to create/load engine's script objects. More... | |
struct | null_deleter |
All smart pointers created whithin this deleter could not be deleted outside. More... | |
class | Timer |
Timers are used to retrieve time. You can hav emore than one timer in your app. More... | |
class | TimeSource |
Interface for time source give clock a current time. More... | |
class | TimeSourceVirtual |
Timesource ticking certain time steps. More... | |
class | VarArg |
VariadicArgument - Class helping you to pass variable number of parameters to a scripting function. More... | |
class | DefaultScriptingFunctions |
struct | _taskSort |
Typedefs | |
typedef uint32 | TaskId |
typedef enum nrEngine::_KeyIndex | keyIndex |
typedef enum nrEngine::_mouseButtonIndex | mouseButtonIndex |
typedef void * | PluginHandle |
typedef unsigned char | BYTE |
typedef unsigned char | byte |
typedef unsigned char | uchar |
typedef char | int8 |
typedef unsigned char | uint8 |
typedef signed short | int16 |
typedef unsigned short | uint16 |
typedef signed int | int32 |
typedef unsigned int | uint32 |
typedef float | float32 |
typedef double | float64 |
typedef signed long long | int64 |
typedef unsigned long long | uint64 |
typedef CPriority | Priority |
Write the priority without C prefix, to define it like normal type. | |
typedef SharedPtr< IResourceLoader > | ResourceLoader |
Smart pointer pointing to a loader. | |
typedef uint32 | ResourceHandle |
This handle will store something like resource id. | |
typedef uint32 | Result |
The result code is only an integer in real. | |
typedef VarArg | ScriptResult |
Each script function can return variable argument as a result. | |
typedef boost::any | ScriptParam |
The real functions accept this default parameter. | |
typedef boost::function< ScriptResult(const std::vector< std::string > &, const std::vector< ScriptParam > &)> | ScriptFunctor |
We define each function that can be called from the scripts as this type. | |
Enumerations | |
enum | TaskState { TASK_STOPPED = 0, TASK_RUNNING = 1, TASK_PAUSED = 2 } |
enum | TaskProperty { TASK_NONE = 0, TASK_IS_THREAD = 1 << 1, TASK_RUN_ONCE = 1 << 2 } |
enum | TaskType { TASK_SYSTEM, TASK_USER } |
enum | TaskOrder { ORDER_STEP = 32768, ORDER_SYS_ROOT = 0, ORDER_SYS_FIRST = 1 * ORDER_STEP, ORDER_SYS_SECOND = 2 * ORDER_STEP, ORDER_SYS_THIRD = 3 * ORDER_STEP, ORDER_SYS_FOURTH = 4 * ORDER_STEP, ORDER_SYS_FIVETH = 5 * ORDER_STEP, ORDER_SYS_LAST = 6 * ORDER_STEP, ORDER_FIRST = 7 * ORDER_STEP, ORDER_ULTRA_HIGH = 8 * ORDER_STEP, ORDER_VERY_HIGH = 9 * ORDER_STEP, ORDER_HIGH = 10 * ORDER_STEP, ORDER_NORMAL = 11 * ORDER_STEP, ORDER_LOW = 12 * ORDER_STEP, ORDER_VERY_LOW = 13 * ORDER_STEP, ORDER_ULTRA_LOW = 14 * ORDER_STEP, ORDER_LAST = 15 * ORDER_STEP } |
enum | _KeyIndex { KEY_UNKNOWN = 0, KEY_FIRST = 0, KEY_BACKSPACE = 8, KEY_TAB = 9, KEY_CLEAR = 12, KEY_RETURN = 13, KEY_PAUSE = 19, KEY_ESCAPE = 27, KEY_SPACE = 32, KEY_EXCLAIM = 33, KEY_QUOTEDBL = 34, KEY_HASH = 35, KEY_DOLLAR = 36, KEY_AMPERSAND = 38, KEY_QUOTE = 39, KEY_LEFTPAREN = 40, KEY_RIGHTPAREN = 41, KEY_ASTERISK = 42, KEY_PLUS = 43, KEY_COMMA = 44, KEY_MINUS = 45, KEY_PERIOD = 46, KEY_SLASH = 47, KEY_0 = 48, KEY_1 = 49, KEY_2 = 50, KEY_3 = 51, KEY_4 = 52, KEY_5 = 53, KEY_6 = 54, KEY_7 = 55, KEY_8 = 56, KEY_9 = 57, KEY_COLON = 58, KEY_SEMICOLON = 59, KEY_LESS = 60, KEY_EQUALS = 61, KEY_GREATER = 62, KEY_QUESTION = 63, KEY_AT = 64, KEY_LEFTBRACKET = 91, KEY_BACKSLASH = 92, KEY_RIGHTBRACKET = 93, KEY_CARET = 94, KEY_UNDERSCORE = 95, KEY_BACKQUOTE = 96, KEY_a = 97, KEY_b = 98, KEY_c = 99, KEY_d = 100, KEY_e = 101, KEY_f = 102, KEY_g = 103, KEY_h = 104, KEY_i = 105, KEY_j = 106, KEY_k = 107, KEY_l = 108, KEY_m = 109, KEY_n = 110, KEY_o = 111, KEY_p = 112, KEY_q = 113, KEY_r = 114, KEY_s = 115, KEY_t = 116, KEY_u = 117, KEY_v = 118, KEY_w = 119, KEY_x = 120, KEY_y = 121, KEY_z = 122, KEY_DELETE = 127, KEY_WORLD_0 = 160, KEY_WORLD_1 = 161, KEY_WORLD_2 = 162, KEY_WORLD_3 = 163, KEY_WORLD_4 = 164, KEY_WORLD_5 = 165, KEY_WORLD_6 = 166, KEY_WORLD_7 = 167, KEY_WORLD_8 = 168, KEY_WORLD_9 = 169, KEY_WORLD_10 = 170, KEY_WORLD_11 = 171, KEY_WORLD_12 = 172, KEY_WORLD_13 = 173, KEY_WORLD_14 = 174, KEY_WORLD_15 = 175, KEY_WORLD_16 = 176, KEY_WORLD_17 = 177, KEY_WORLD_18 = 178, KEY_WORLD_19 = 179, KEY_WORLD_20 = 180, KEY_WORLD_21 = 181, KEY_WORLD_22 = 182, KEY_WORLD_23 = 183, KEY_WORLD_24 = 184, KEY_WORLD_25 = 185, KEY_WORLD_26 = 186, KEY_WORLD_27 = 187, KEY_WORLD_28 = 188, KEY_WORLD_29 = 189, KEY_WORLD_30 = 190, KEY_WORLD_31 = 191, KEY_WORLD_32 = 192, KEY_WORLD_33 = 193, KEY_WORLD_34 = 194, KEY_WORLD_35 = 195, KEY_WORLD_36 = 196, KEY_WORLD_37 = 197, KEY_WORLD_38 = 198, KEY_WORLD_39 = 199, KEY_WORLD_40 = 200, KEY_WORLD_41 = 201, KEY_WORLD_42 = 202, KEY_WORLD_43 = 203, KEY_WORLD_44 = 204, KEY_WORLD_45 = 205, KEY_WORLD_46 = 206, KEY_WORLD_47 = 207, KEY_WORLD_48 = 208, KEY_WORLD_49 = 209, KEY_WORLD_50 = 210, KEY_WORLD_51 = 211, KEY_WORLD_52 = 212, KEY_WORLD_53 = 213, KEY_WORLD_54 = 214, KEY_WORLD_55 = 215, KEY_WORLD_56 = 216, KEY_WORLD_57 = 217, KEY_WORLD_58 = 218, KEY_WORLD_59 = 219, KEY_WORLD_60 = 220, KEY_WORLD_61 = 221, KEY_WORLD_62 = 222, KEY_WORLD_63 = 223, KEY_WORLD_64 = 224, KEY_WORLD_65 = 225, KEY_WORLD_66 = 226, KEY_WORLD_67 = 227, KEY_WORLD_68 = 228, KEY_WORLD_69 = 229, KEY_WORLD_70 = 230, KEY_WORLD_71 = 231, KEY_WORLD_72 = 232, KEY_WORLD_73 = 233, KEY_WORLD_74 = 234, KEY_WORLD_75 = 235, KEY_WORLD_76 = 236, KEY_WORLD_77 = 237, KEY_WORLD_78 = 238, KEY_WORLD_79 = 239, KEY_WORLD_80 = 240, KEY_WORLD_81 = 241, KEY_WORLD_82 = 242, KEY_WORLD_83 = 243, KEY_WORLD_84 = 244, KEY_WORLD_85 = 245, KEY_WORLD_86 = 246, KEY_WORLD_87 = 247, KEY_WORLD_88 = 248, KEY_WORLD_89 = 249, KEY_WORLD_90 = 250, KEY_WORLD_91 = 251, KEY_WORLD_92 = 252, KEY_WORLD_93 = 253, KEY_WORLD_94 = 254, KEY_WORLD_95 = 255, KEY_KP0 = 256, KEY_KP1 = 257, KEY_KP2 = 258, KEY_KP3 = 259, KEY_KP4 = 260, KEY_KP5 = 261, KEY_KP6 = 262, KEY_KP7 = 263, KEY_KP8 = 264, KEY_KP9 = 265, KEY_KP_PERIOD = 266, KEY_KP_DIVIDE = 267, KEY_KP_MULTIPLY = 268, KEY_KP_MINUS = 269, KEY_KP_PLUS = 270, KEY_KP_ENTER = 271, KEY_KP_EQUALS = 272, KEY_UP = 273, KEY_DOWN = 274, KEY_RIGHT = 275, KEY_LEFT = 276, KEY_INSERT = 277, KEY_HOME = 278, KEY_END = 279, KEY_PAGEUP = 280, KEY_PAGEDOWN = 281, KEY_F1 = 282, KEY_F2 = 283, KEY_F3 = 284, KEY_F4 = 285, KEY_F5 = 286, KEY_F6 = 287, KEY_F7 = 288, KEY_F8 = 289, KEY_F9 = 290, KEY_F10 = 291, KEY_F11 = 292, KEY_F12 = 293, KEY_F13 = 294, KEY_F14 = 295, KEY_F15 = 296, KEY_NUMLOCK = 300, KEY_CAPSLOCK = 301, KEY_SCROLLOCK = 302, KEY_RSHIFT = 303, KEY_LSHIFT = 304, KEY_RCTRL = 305, KEY_LCTRL = 306, KEY_RALT = 307, KEY_LALT = 308, KEY_RMETA = 309, KEY_LMETA = 310, KEY_LSUPER = 311, KEY_RSUPER = 312, KEY_MODE = 313, KEY_COMPOSE = 314, KEY_HELP = 315, KEY_PRINT = 316, KEY_SYSREQ = 317, KEY_BREAK = 318, KEY_MENU = 319, KEY_POWER = 320, KEY_EURO = 321, KEY_UNDO = 322, KEY_LAST } |
enum | _mouseButtonIndex { BUTTON_LEFT, BUTTON_RIGHT, BUTTON_MIDDLE, BUTTON_WHEEL, BUTTON_WHEEL_UP, BUTTON_WHEEL_DOWN, BUTTON_COUNT } |
enum | ResultCode { OK = 0, UNKNOWN_ERROR = 0xFFFFFFFF, BAD_PARAMETERS = 1 << 0, OUT_OF_MEMORY = 1 << 1, NOT_VALID_DATOR = 1 << 2, TIME_OUT = 1 << 3, FILE_ERROR = NR_ERR_GROUP(2), FILE_NOT_FOUND = FILE_ERROR | (1 << 0), FILE_ERROR_IN_LINE = FILE_ERROR | (1 << 1), PROFILE_ERROR = NR_ERR_GROUP(3), PROFILE_NOT_FOUND = PROFILE_ERROR | (1 << 0), PROFILE_NOT_LOADED = PROFILE_ERROR | (1 << 1), PROFILE_NOT_EXISTS = PROFILE_ERROR | (1 << 2), PROFILE_ALREADY_EXISTS = PROFILE_ERROR | (1 << 3), VFS_ERROR = NR_ERR_GROUP(4), VFS_ALREADY_OPEN = VFS_ERROR | (1 << 0), VFS_CANNOT_OPEN = VFS_ERROR | (1 << 1), VFS_CANNOT_CLOSE = VFS_ERROR | (1 << 2), VFS_IS_NOT_OPEN = VFS_ERROR | (1 << 3), VFS_FILE_NOT_FOUND = VFS_ERROR | (1 << 4), VFS_FILE_NOT_OPEN = VFS_ERROR | (1 << 5), VFS_FILE_END_REACHED = VFS_ERROR | (1 << 6), VFS_FILE_READ_ERROR = VFS_ERROR | (1 << 7), VFS_LINE_READ_ERROR = VFS_ERROR | (1 << 8), VFS_SCAN_READ_ERROR = VFS_ERROR | (1 << 9), VFS_SEEK_ERROR = VFS_ERROR | (1 << 10), VFS_NO_PARAMETER = VFS_ERROR | (1 << 11), SETTINGS_ERROR = NR_ERR_GROUP(5), SETTINGS_VAR_ALREADY_REGISTERED = SETTINGS_ERROR | (1 << 1), SETTINGS_VAR_NOT_REGISTERED = SETTINGS_ERROR | (1 << 2), KERNEL_ERROR = NR_ERR_GROUP(6), KERNEL_NO_TASK_FOUND = KERNEL_ERROR | (1 << 1), KERNEL_NO_RIGHTS = KERNEL_ERROR | (1 << 2), KERNEL_TASK_NOT_READY = KERNEL_ERROR | (1 << 3), KERNEL_CIRCULAR_DEPENDENCY = KERNEL_ERROR | (1 << 4), KERNEL_TASK_MISSING = KERNEL_ERROR | (1 << 5), KERNEL_END_REACHED = KERNEL_ERROR | (1 << 6), KERNEL_ALREADY_VISITED = KERNEL_ERROR | (1 << 7), KERNEL_LEAF_TASK = KERNEL_ERROR | (1 << 8), CLOCK_ERROR = NR_ERR_GROUP(7), CLOCK_OBSERVER_NOT_FOUND = CLOCK_ERROR | (1 << 1), CLOCK_OBSERVER_ALREADY_ADDED = CLOCK_ERROR | (1 << 2), CLOCK_NO_TIME_SOURCE = CLOCK_ERROR | (1 << 3), FW_ERROR = NR_ERR_GROUP (8), FW_CANNOT_INITIALIZE = FW_ERROR | (1 << 1), FW_FAILED_TO_RESIZE = FW_ERROR | (1 << 2), FW_INVALID_RC_ID = FW_ERROR | (1 << 3), FW_ALREADY_INIT = FW_ERROR | (1 << 4), FW_NOT_INITIALIZED = FW_ERROR | (1 << 5), FW_RC_CANNOT_SETUP_PIXEL_FORMAT = FW_ERROR | (1 << 6), RES_ERROR = NR_ERR_GROUP(9), RES_LOADER_ALREADY_EXISTS = RES_ERROR | (1 << 1), RES_LOADER_NOT_REGISTERED = RES_ERROR | (1 << 2), RES_ALREADY_EXISTS = RES_ERROR | (1 << 3), RES_BAD_FILETYPE = RES_ERROR | (1 << 4), RES_CAN_NOT_LOAD_EMPTY = RES_ERROR | (1 << 5), RES_NOT_FOUND = RES_ERROR | (1 << 6), RES_LOADER_NOT_EXISTS = RES_ERROR | (1 << 7), RES_IS_EMPTY = RES_ERROR | (1 << 8), RES_GROUP_NOT_FOUND = RES_ERROR | (1 << 9), RES_PTR_IS_NULL = RES_ERROR | (1 << 10), RES_TYPE_NOT_SUPPORTED = RES_ERROR | (1 << 11), RES_LOCK_STATE_STACK_IS_FULL = RES_ERROR | (1 << 12), RES_NO_EMPTY_RES_FOUND = RES_ERROR | (1 << 13), PLG_ERROR = NR_ERR_GROUP(10), PLG_COULD_NOT_LOAD = PLG_ERROR | (1 << 0), PLG_CANNOT_INITIALIZE = PLG_ERROR | (1 << 1), PLG_EXTERNAL_ERROR = PLG_ERROR | (1 << 2), PLG_SYMBOL_NOT_FOUND = PLG_ERROR | (1 << 3), PLG_WRONG_VERSION = PLG_ERROR | (1 << 4), PLG_UNLOAD_ERROR = PLG_ERROR | (1 << 5), SCRIPT_ERROR = NR_ERR_GROUP(11), SCRIPT_PARSE_ERROR = SCRIPT_ERROR | (1 << 0), SCRIPT_FUNCTION_REGISTERED = SCRIPT_ERROR | (1 << 1), SCRIPT_FUNCTION_NOT_REGISTERED = SCRIPT_ERROR | (1 << 2), SCRIPT_FUNCTION_NOT_FOUND = SCRIPT_ERROR | (1 << 3), SCRIPT_WRONG_PARAMETER_VALUE = SCRIPT_ERROR | (1 << 4), SCRIPT_ALREADY_RUNNING = SCRIPT_ERROR | (1 << 5), EVENT_ERROR = NR_ERR_GROUP(12), EVENT_CHANNEL_EXISTS = EVENT_ERROR | (1 << 0), EVENT_NO_CHANNEL_FOUND = EVENT_ERROR | (1 << 1), EVENT_ALREADY_CONNECTED = EVENT_ERROR | (1 << 2), EVENT_NOT_CONNECTED = EVENT_ERROR | (1 << 3), EVENT_CHANNEL_NOT_EXISTS = EVENT_ERROR | (1 << 4), EVENT_COULD_NOT_CAST = EVENT_ERROR | (1 << 5), EVENT_FACTORY_FOUND = EVENT_ERROR | (1 << 6), EVENT_FACTORY_NOT_FOUND = EVENT_ERROR | (1 << 7), EVENT_NO_VALID_ACTOR = EVENT_ERROR | (1 << 8), PROPERTY_ERROR = NR_ERR_GROUP(13), PROPERTY_NOT_EXISTS = PROPERTY_ERROR | (1 << 0), PROPERTY_WRONG_TYPE = PROPERTY_ERROR | (1 << 1), ENGINE_ERROR = NR_ERR_GROUP(127) } |
Functions | |
template<class T> | |
static T * | event_cast (Event *base) |
template<class T> | |
static SharedPtr< T > | event_shared_cast (SharedPtr< Event > base) throw (Exception) |
template<class T> | |
SharedPtr< T > | ResourceLoaderCast (ResourceLoader loader) |
Cast a resource loader of basis type to any derived type. | |
void _NRExport | sleep (uint32 milliseconds) |
std::string _NRExport | convertVersionToString (uint32 version) |
uint32 _NRExport | createVersionInteger (uint8 major, uint8 minor, uint8 patch) |
std::string _NRExport | trim (const std::string &str) |
std::string _NRExport | orderToString (int32 order) |
ScriptFunctionDec (scriptResetClock, Clock) | |
ScriptFunctionDec (set, DefaultScriptingFunctions) | |
ScriptFunctionDec (get, DefaultScriptingFunctions) | |
ScriptFunctionDec (list, DefaultScriptingFunctions) | |
ScriptFunctionDec (loadPlugin, PluginLoader) | |
ScriptFunctionDec (scriptLoadResource, ResourceManager) | |
ScriptFunctionDec (scriptUnloadResource, ResourceManager) | |
ScriptFunctionDec (scriptLoad, ScriptEngine) | |
ScriptFunctionDec (scriptRun, ScriptEngine) | |
ScriptFunctionDec (scriptLoadAndRun, ScriptEngine) | |
ScriptFunctionDec (scriptCall, ScriptEngine) | |
Variables | |
const unsigned int | nrEngineVersion |
const int32 | NR_RESOURCE_LOCK_STACK = 128 |
const unsigned int nrEngine::nrEngineVersion |
Initial value:
NR_VERSION_MAJOR * 256 * 256 + NR_VERSION_MINOR * 256 + NR_VERSION_PATCH
Definition at line 49 of file Prerequisities.h.
Referenced by nrEngine::Plugin::initialize(), and nrEngine::Engine::initializeEngine().