Installation
Installing the engine is simple: simply compile all files under
src statically with your project.
Configuration
Custom string type
You can provide a custom string type by defining the
UTTE_CUSTOM_STRING macro to be equal to the given type, and
the UTTE_CUSTOM_STRING_INCLUDE macro to be equal to the
include path in quotes. It is defined like this:
#define UTTE_CUSTOM_STRING my_string
#define UTTE_CUSTOM_STRING_INCLUDE "my_string.h"Make sure that your string class behaves like
std::string — the library relies on the usual members and
operators (data(), size(),
length(), resize(), substr(),
replace(), find(), assign(),
c_str(), empty(), operator[],
concatenation with + and comparison with ==),
and it must be constructible from both a const char* and an
std::string (direct usage of std::string in
the library is rare but is needed in some places).
Custom map type
You can also provide a custom map type by defining the
UTTE_CUSTOM_MAP macro to be equal to the given type, and
the UTTE_CUSTOM_MAP_INCLUDE macro to be equal to the
include path in quotes. It is defined like this:
#define UTTE_CUSTOM_MAP my_map
#define UTTE_CUSTOM_MAP_INCLUDE "my_map.h"Make sure that your map is defined using 2 template parameters like this:
template<typename T, typename T2>
class my_map
{
... // Your code here
}Otherwise, our type definition will not work.
Exporting symbols when compiling a DLL
If you want to export the symbols of the library out of a DLL, simply
define the MLS_EXPORT_LIBRARY macro. Then, when building
the library, make sure the macro MLS_LIB_COMPILE is
enabled.