mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Use a settings object for the main settings
This unifies the settings APIs. This also unifies the sync and async registration APIs, since the async registration API did not support adding non-functions to the API table.
This commit is contained in:
parent
a024042bf5
commit
43d1f375d1
46 changed files with 411 additions and 417 deletions
|
@ -75,16 +75,16 @@ private:
|
|||
// Asynchornous thread and job management
|
||||
class AsyncEngine {
|
||||
friend class AsyncWorkerThread;
|
||||
typedef void (*StateInitializer)(lua_State *L, int top);
|
||||
public:
|
||||
AsyncEngine();
|
||||
~AsyncEngine();
|
||||
|
||||
/**
|
||||
* Register function to be used within engine
|
||||
* @param name Function name to be used within Lua environment
|
||||
* Register function to be called on new states
|
||||
* @param func C function to be called
|
||||
*/
|
||||
bool registerFunction(const char* name, lua_CFunction func);
|
||||
void registerStateInitializer(StateInitializer func);
|
||||
|
||||
/**
|
||||
* Create async engine tasks and lock function registration
|
||||
|
@ -140,8 +140,8 @@ private:
|
|||
// Variable locking the engine against further modification
|
||||
bool initDone;
|
||||
|
||||
// Internal store for registred functions
|
||||
UNORDERED_MAP<std::string, lua_CFunction> functionList;
|
||||
// Internal store for registred state initializers
|
||||
std::vector<StateInitializer> stateInitializers;
|
||||
|
||||
// Internal counter to create job IDs
|
||||
unsigned int jobIdCounter;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue