EnginePtr Class
Header: | #include <UnigineEngine.h> |
This class is an analogue of the C++ std::auto_ptr class template. It automatically destroys the engine instance when the function is destroyed.
Unigine::EnginePtr engine(...);
engine->main();
EnginePtr Class
Members
EnginePtr()
An EnginePtr constructor.EnginePtr(const EnginePtr & ptr)
An EnginePtr constructor.Arguments
- const EnginePtr & ptr - Pointer to the EnginePtr instance.
EnginePtr(int version, int argc, char ** argv, const char * project = 0, const char * password = 0)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- int argc - Number of command line arguments.
- char ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
EnginePtr(int version, int argc, wchar_t ** argv, const char * project = 0, const char * password = 0)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
EnginePtr(int version, App * app, int argc, char ** argv, const char * project, const char * password)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- int argc - Number of command line arguments.
- char ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
EnginePtr(int version, App * app, int argc, wchar_t ** argv, const char * project, const char * password)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
EnginePtr(int version, App * app, const char * app_path, const char * home_path, int argc, char ** argv, const char * project, const char * password)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- const char * app_path - Path to a directory where binary executable file is stored. Pass the 0 value to ignore this parameter.
- const char * home_path - Path to the user's home directory.
- int argc - Number of command line arguments.
- char ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
EnginePtr(int version, App * app, const char * app_path, const char * home_path, int argc, wchar_t ** argv, const char * project, const char * password)
An EnginePtr constructor.Arguments
- int version - Engine version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- const char * app_path - Path to a directory where binary executable file is stored. Pass the 0 value to ignore this parameter.
- const char * home_path - Path to the user's home directory.
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of command line arguments values.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
Engine * get()
Returns a pointer to the existing Engine instance.Return value
Pointer to Engine.int isOwner()
Returns the owner flag of the pointer. If the pointer is the owner, on its deletion the object also will be deleted.Return value
Owner flag.void grab()
Sets the owner flag to 1 for the Engine pointer.void init(int version, App * app, const char * app_path, const char * home_path, int argc, char ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- const char * app_path - Path to a directory where binary executable file is stored. Pass the 0 value to ignore this parameter.
- const char * home_path - Path to the user's home directory.
- int argc - Number of command line arguments.
- char ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
void init(int version, int argc, char ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- int argc - Number of command line arguments.
- char ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
void init(int version, App * app, const char * app_path, const char * home_path, int argc, wchar_t ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- const char * app_path - Path to a directory where binary executable file is stored. Pass the 0 value to ignore this parameter.
- const char * home_path - Path to the user's home directory.
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
void init(int version, App * app, int argc, wchar_t ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
void init(int version, int argc, wchar_t ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- int argc - Number of command line arguments.
- wchar_t ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
void init()
Initializes the pointer to a new engine instance.void init(int version, App * app, int argc, char ** argv, const char * project = 0, const char * password = 0)
Initializes a new EnginePtr instance.Arguments
- int version - Version number (UNIGINE_VERSION).
- App * app - Pointer to the graphics App class. Pass the 0 value to ignore this parameter.
- int argc - Number of command line arguments.
- char ** argv - Array of values of command line arguments.
- const char * project - Project name. If this parameter is set, it forces the engine to store rewritable data (such as log file, cache files, config files) in user profile rather than in a directory with binaries. Notice that only the project name is required to pass in for this parameter, not the full path to the project. If there is no need to change location of such files, pass the 0 value.
- const char * password - Password for the filesystem archives. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password. Notice that the specified password must be the same as for the project archive (if it exists). Pass the 0 value if you do not need to set a password.
Engine * operator->()
Pointer dereferencing and member access operator.Return value
Engine instance.EnginePtr & operator=(const EnginePtr & ptr)
Assign operator.Arguments
- const EnginePtr & ptr - EnginePtr instance.
Return value
EnginePtr instance.void release()
Releases the owner flag for the pointer. Engine instance will stay alive upon the pointer destruction.void shutdown()
Destroys the existing engine instance. The pointer must be an owner of the engine instance.Last update: 2017-12-21
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)