The core engine namespace, manages and glues together the various engine subsystems
It manages the providers, the plugins, the current frame, the application, the class creation/factory, holds the central resource manager, etc.
More...
Data Structures |
| class | Application |
| | The application object handles all the OS app related creation, messaging, destroy and other app related services
it is used by the Engine class. More...
|
| class | Serializable |
| class | Base |
| | The base class for all high level classes in the engine
inherit from this class all the classes that need properties or are themselves base classes for other objects. More...
|
| class | CodeCoverageMarker |
| class | ConsoleCommand |
| | A console command object, commands can be registered and called from whithin C++ code, in-game, editor or script
You can register a command using the macro: NYTRO_REGISTER_CONSOLE_COMMAND
. More...
|
| class | ConsoleCommandRegisterer |
| class | EngineSetup |
| | Class used to store the engine initialization parameters, which can be set by hand or loaded from a *.config.xml settings file, used as a parameter for initialize(). More...
|
| class | EngineObservers |
| class | DataLibraryItem |
| | An item from the library. More...
|
| class | DataLibraryFolder |
| | A data library folder. More...
|
| class | DataLibrary |
| | A generic data library. More...
|
| class | DynamicLibrary |
| | The dynamic library helper class, loads DLLs or LIBs (Linux) retrieve exported functions addresses. More...
|
| class | EngineObserver |
| class | Exception |
| | Class used for throwing exceptions, holding lot of info about an exception. More...
|
| class | LocalizedTextData |
| | This class will load language labels from a file (plain Unicode, fixed 16bit per character, no headers)
The format of the file is : labelName = Label Value ... More...
|
| class | Logger |
| | A logger class is a central point where all messages go, errors, warnings, info, success can be overridden and used a custom logger class, or chain up with another logger ( see linkChild(...) method ). More...
|
| class | HtmlLogger |
| | A HTML logger, writes a nice HTML log file with colors for each log item type. More...
|
| class | StdioLogger |
| | A stdio console app logger, writes what it receives with printf, useful for server or fast prototyping/debugging/testing. More...
|
| class | MemoryUsageReporter |
| | Used/inherited by classes that can return info about used memory and used object count. More...
|
| class | MemoryBlockInfo |
| | A memory block info, used to track allocations. More...
|
| class | MemoryPoolManager |
| | The memory pool manager handles a big pool buffer, in which smaller objects can be held, thus minimizing the main memory fragmentation The pointers are kept in a linked list inside the buffer: [BYTE-FLAGS(0x01-BLOCK_USED)][UINT32-LENGTH][UINT32-NEXT_BLOCK_OFFSET_FROM_POOL_START][DATA OF LENGTH]. More...
|
| class | IObserver |
| | An observer, a class that holds virtual methods, and later on implemnentations to connect an observable class to some other user-defined parts of the application. More...
|
| class | Observable |
| | If a class inherits this class, it will have observable features, it will manage a list of observers for that class ObserverClassName is the name of the class supported by the observable. More...
|
| class | ParameterList |
| | Class which stores and manages list of parameters. More...
|
| class | ProfilerSection |
| | This class holds info about a profiled section of code. More...
|
| class | PerformanceProfiler |
| | This class is used to output in the current log, function/section name on guard/unguard call stack, in debug mode. More...
|
| class | PluginDescriptor |
| | Plugin info class that holds the info about a dynamic library plugin. More...
|
| class | Plugin |
| | A plugin holder class, from a dynamic library. More...
|
| class | PluginManager |
| | A plugin manager, holds an array of Plugin objects. More...
|
| class | PropertyConstant |
| | A property constant, used for properties of TYPE_ENUM, when you have a list of constant from which the user can choose one. More...
|
| class | Property |
| | Property class, like Delphi's or VC++ 7 property list
This class is used in Base class, to provide a property System. More...
|
| class | Provider |
| | Service provider, acts like a class factory and provides a virtual way of doing operations, examples of providers: AudioProvider, GraphicsProvider, PhysicsProvider, etc. More...
|
| class | ResourceObserver |
| class | Resource |
| | Resource base class for textures, shaders, meshes, sounds etc. More...
|
| class | ResourceHandler |
| | This class defines a resource type handler, for example there can be texture, sound, mesh resource handlers. More...
|
| class | ResourceManager |
| | Resource manager class, manages the global game resources. More...
|
| class | StatsCounter |
| | A statistics counter, it will count a specified quantity. More...
|
| class | StatsManager |
| | The statistics manager holds a set of stats counters. More...
|
| class | GameEngineFullStats |
| | This class will gather information about the whole engine and current game level/world. More...
|
| class | StreamChunkHeader |
| | Generic chunk that holds a data block, useful for binary files with different versions. More...
|
| class | Stream |
| | This class is the one and only data streaming connection with the hard-drive or any other data streaming location, even web, it cannot be used directly, but created through the current StreamProvider, with StreamProvider::openStream
. More...
|
| class | DiskStreamHandler |
| | A disk stream handler will handle hard disk or other devices files. More...
|
| class | ZipStreamHandler |
| | This stream handler will load files from a ZIP file. More...
|
| class | NetStreamHandler |
| | This handler will load files from the internet. More...
|
| class | StreamHandler |
| | A file location handler is a class that handles specific file names and types of data streaming
For example there are handler for: http://, svn:// zip:// or *.zip. More...
|
| class | StreamLocation |
| | A location object holds info about a specific named game data location. More...
|
| class | StreamProvider |
| | A generic file provider, can handle files on disk or from an archive
it loads files using file location objects, see StreamLocation. More...
|
| class | Table |
| | A 2D matrix of elements. More...
|
| class | Mutex |
| | This class represents a mutex synchronization object, used by threads to lock a common resource to many threads when write operations occur. More...
|
| class | Semaphore |
| | This class represents a semaphore object, used to limit the number of created resources (for example there may be maximum 10 threads for computing a data stream)
When a thread which uses this semaphore is started, it will call use() method (which will decrement the count), and when thread will exit, it will call release() (which will increment the count of the semaphore)
When the count is zero, the thread cannot create another resource of that type and it will have to wait for that sempahore counter to be greater than zero, using the waitForSemaphore() global function. More...
|
| class | Thread |
| | This class encapsulates a thread object with several properties and methods. More...
|
| class | ThreadMessageQueue |
| | This class is used to exchange computed data and messages between threads. More...
|
| class | ThreadDualMessageQueueSwitcher |
| | This class is used to switch between two buffers used for fast command/message writing and reading from worker threads. More...
|
| class | Timer |
| | A timer class, with various handy methods. More...
|
| class | Variant |
| | Variant class, supporting many data types. More...
|
| class | XmlAttribute |
| | An XML attribute. More...
|
| class | XmlElement |
| | An XML element. More...
|
| class | XmlDocument |
| | A simple XML parser. More...
|
Typedefs |
| typedef void(* | TConsoleCommandCallback )(const ConsoleCommand *pCmd, const ParameterList &crArgs) |
| | A console command callback function.
|
| typedef uint32 | MemoryBlockHandle |
| typedef vector< PropertyConstant > | TPropertyConstantArray |
Enumerations |
| enum | EEngineMode { eEngineMode_InGame,
eEngineMode_Editor
} |
| | The operating mode of the engine.
More...
|
| enum | EWaitResult { eWaitResult_OK,
eWaitResult_ForcedExit,
eWaitResult_Error
} |
| | Wait function result.
More...
|
Functions |
| NYTRO_EXPORT bool | beginCodeCoverageRecording (const char *pMustHitMarkersFile="CodeCoverageMarkers.txt", const char *pHitMarkersFile="CodeCoverageResults.txt", bool bSaveAllMarkers=false) |
| NYTRO_EXPORT void | saveCodeCoverageResultsFile () |
| NYTRO_EXPORT float32 | getCodeCoverageCompletionProgress () |
| NYTRO_EXPORT void | hitCodeCoverageMarker (const char *pName) |
| NYTRO_EXPORT bool | registerConsoleCommand (const char *pName, const char *pDescription, TConsoleCommandCallback pfnCallback) |
| | register a console command
|
| NYTRO_EXPORT bool | unregisterConsoleCommand (const char *pName) |
| | unregister a console command
|
| NYTRO_EXPORT bool | executeConsoleCommand (const char *pName, const Variant &rArg1=Variant(), const Variant &rArg2=Variant(), const Variant &rArg3=Variant(), const Variant &rArg4=Variant(), const Variant &rArg5=Variant()) |
| | execute console command by name, when you don't have more than 5 arguments, else call the other function: executeConsoleCommand( const char* pName, const ParameterList& crArgs )
|
| NYTRO_EXPORT bool | executeConsoleCommand (const char *pName, const ParameterList &crArgs) |
| | execute console command called with a parameter list
|
| NYTRO_EXPORT void | executeConsoleCommandsFromText (const char *pCommands) |
| | executes commands from the given text buffer, consecutive commands are separated by
|
NYTRO_EXPORT map< string,
ConsoleCommand > & | getConsoleCommands () |
| NYTRO_EXPORT EResult | initializeEngine (EngineSetup *pSetup=NULL) |
| | initialize the engine with the given setup
|
| NYTRO_EXPORT EResult | quickEngineInitialize (const char *pSettingsFile, GameProvider *pCustomGame, int32 aIconId=0) |
| | quick initialize the engine with the given setup and settings, it will start the loop, and also release all, this function is blocking, it will return only after application is closed Application::isStopped() is true
|
| NYTRO_EXPORT EResult | releaseEngine () |
| | release the engine, with all its data
|
| NYTRO_EXPORT EResult | processFrame () |
| | process current frame, update timers, fps, etc.
|
| NYTRO_EXPORT StreamProvider * | getStreamProvider () |
| NYTRO_EXPORT GraphicsProvider * | getGraphicsProvider () |
| NYTRO_EXPORT AudioProvider * | getAudioProvider () |
| NYTRO_EXPORT InputProvider * | getInputProvider () |
| NYTRO_EXPORT NetworkProvider * | getNetworkProvider () |
| NYTRO_EXPORT ScriptProvider * | getScriptProvider () |
| NYTRO_EXPORT PhysicsProvider * | getPhysicsProvider () |
| NYTRO_EXPORT GameProvider * | getGameProvider () |
| NYTRO_EXPORT Timer & | getCentralTimer () |
| NYTRO_EXPORT float32 | getFps () |
| NYTRO_EXPORT float32 | getFrameCount () |
| NYTRO_EXPORT PluginManager & | getPluginManager () |
| NYTRO_EXPORT EEngineMode | getEngineMode () |
| NYTRO_EXPORT float32 | getDeltaTime () |
| NYTRO_EXPORT float32 | getEngineSpeed () |
| NYTRO_EXPORT ResourceManager * | getResourceManager () |
| NYTRO_EXPORT Application * | getApplication () |
| NYTRO_EXPORT EngineSetup & | getEngineSetup () |
| NYTRO_EXPORT PerformanceProfiler * | getPerformanceProfiler () |
| NYTRO_EXPORT StatsManager * | getStatsManager () |
| NYTRO_EXPORT void | setStreamProvider (StreamProvider *pValue) |
| | set the current stream provider
|
| NYTRO_EXPORT void | setGraphicsProvider (GraphicsProvider *pValue) |
| | set the current graphics provider
|
| NYTRO_EXPORT void | setAudioProvider (AudioProvider *pValue) |
| | set the current Audio provider
|
| NYTRO_EXPORT void | setInputProvider (InputProvider *pValue) |
| | set the current input provider
|
| NYTRO_EXPORT void | setNetworkProvider (NetworkProvider *pValue) |
| | set the current network provider
|
| NYTRO_EXPORT void | setScriptProvider (ScriptProvider *pValue) |
| | set the current script provider
|
| NYTRO_EXPORT void | setPhysicsProvider (PhysicsProvider *pValue) |
| | set the current Physics provider
|
| NYTRO_EXPORT void | setGameProvider (GameProvider *pValue) |
| | set the current game provider
|
| NYTRO_EXPORT void | setEngineMode (EEngineMode aMode) |
| | set the engine mode
|
| NYTRO_EXPORT void | setEngineSpeed (float32 aValue) |
| | set the engine speed
|
| NYTRO_EXPORT void | setFrameDeltaTime (float32 aValue) |
| | set the inter-frame delta time
|
| NYTRO_EXPORT void | setApplication (Application *pApp) |
| | set the application
|
| NYTRO_EXPORT void | setResourceManager (ResourceManager *pResMan) |
| | set a new resource manager, you must delete your custom resource manager when engine exists
|
| NYTRO_EXPORT Base * | newClassInstance (const char *pClassname) |
| | create a new class instance based on class name, from the plugins or registered class factory callbacks
|
| NYTRO_EXPORT Base * | newFirstClassInstanceOfSuperType (ESuperClassId aID) |
| | create a new class instance based on super class ID, the engine will search the first class that has the super class id and it will instantiate one, used for automatic provider creation of a given super class id, example: eSuperClassId_AUDIO_PROVIDER
|
| NYTRO_EXPORT void | registerRuntimeClass (RuntimeClassDescriptor *pClassDesc) |
| | registers a class factory callback, used by the newClassInstance() if it does not find the specified class name in the plugins, then it will call these callbacks, until one of them returns a not NULL Base class pointer, with the newly created object instance
In the callback you must check if you support that class, create an instance and return that pointer, else return NULL
|
| NYTRO_EXPORT void | unregisterRuntimeClass (RuntimeClassDescriptor *pClassDesc) |
| | unregister a class factory callback
|
| NYTRO_EXPORT bool | getRuntimeClassDescriptors (ESuperClassId aSuperId, vector< RuntimeClassDescriptor * > &rClassDescriptors) |
NYTRO_EXPORT
RuntimeClassDescriptor * | getRuntimeClassDescriptorOf (const char *pClassName) |
| NYTRO_EXPORT EResult | loadPlugins (const char *pDir) |
| | load the plugins from the specified directory
|
| NYTRO_EXPORT EResult | freePlugins () |
| | free all plugin dynamic libraries
|
| NYTRO_EXPORT void | setGlobalVariable (const char *pName, Variant aVar) |
| | set a global engine variable variant
|
| NYTRO_EXPORT Variant & | getGlobalVariable (const char *pName) |
| | get a global engine variable variant
|
NYTRO_EXPORT map< string,
Variant > & | getGlobalVariables () |
| | get all global engine variable variants
|
| NYTRO_EXPORT bool | changeCurrentProfile (const char *pProfileName) |
| | set the current game profile, or variables set
|
| NYTRO_EXPORT const string & | getCurrentProfile () |
| NYTRO_EXPORT EngineObservers & | getEngineObservers () |
| NYTRO_EXPORT string | getEngineVersionString () |
| NYTRO_EXPORT uint32 | getEngineRevision () |
| NYTRO_EXPORT bool | registerMutex (Mutex *pMutex) |
| | unsigned a mutex object
|
| NYTRO_EXPORT void | unregisterMutex (Mutex *pMutex) |
| | unregister a mutex object
|
| NYTRO_EXPORT bool | registerSemaphore (Semaphore *pMutex) |
| | unsigned a semaphore object
|
| NYTRO_EXPORT void | unregisterSemaphore (Semaphore *pMutex) |
| | unregister a semaphore object
|
| NYTRO_EXPORT Mutex * | getMutex (const char *pName) |
| NYTRO_EXPORT Semaphore * | getSemaphore (const char *pName) |
NYTRO_EXPORT map< string,
Mutex * > & | getMutexes () |
NYTRO_EXPORT map< string,
Semaphore * > & | getSemaphores () |
| NYTRO_EXPORT EWaitResult | waitForMutex (const char *pMutexName, int32 aMaxTimeMsec=-1) |
| | function that waits for a Mutex object to be unlocked
|
| NYTRO_EXPORT EWaitResult | waitForSemaphore (const char *pSemaphoreName, int32 aMaxTimeMsec=-1) |
| | function that waits for a Semaphore object for its count to be > 0
|
| NYTRO_EXPORT EWaitResult | waitForMutex (Mutex *pMutex, int32 aMaxTimeMsec=-1) |
| | function that waits for a Mutex object to be unlocked
|
| NYTRO_EXPORT EWaitResult | waitForSemaphore (Semaphore *pSemaphore, int32 aMaxTimeMsec=-1) |
| | function that waits for a Semaphore object for its count to be > 0
|
Variables |
| const uint32 | kDefaultMemoryPoolSize = 4092 |
| const uint32 | kDefaultMemoryPoolMaxBlockCount = 1024 |
| const uint32 | kMaxGraphTimingsBufferSize = 500 |
The core engine namespace, manages and glues together the various engine subsystems
It manages the providers, the plugins, the current frame, the application, the class creation/factory, holds the central resource manager, etc.