Luanti 5.15.0-dev
 
Loading...
Searching...
No Matches
ScriptApiAsync Class Referenceabstract

#include <s_async.h>

+ Inheritance diagram for ScriptApiAsync:
+ Collaboration diagram for ScriptApiAsync:

Public Member Functions

 ScriptApiAsync (Server *server)
 
virtual void initAsync ()=0
 
void stepAsync ()
 
u32 queueAsync (std::string &&serialized_func, PackedValue *param, const std::string &mod_origin)
 
bool cancelAsync (u32 id)
 
unsigned int getThreadingCapacity () const
 
- Public Member Functions inherited from ScriptApiBase
 ScriptApiBase (ScriptingType type)
 
 ScriptApiBase ()
 
virtual ~ScriptApiBase ()
 
 DISABLE_CLASS_COPY (ScriptApiBase)
 
void loadMod (const std::string &script_path, const std::string &mod_name)
 
void loadScript (const std::string &script_path)
 
void runCallbacksRaw (int nargs, RunCallbacksMode mode, const char *fxn)
 
void addObjectReference (ServerActiveObject *cobj)
 
void removeObjectReference (ServerActiveObject *cobj)
 
ScriptingType getType ()
 
IGameDefgetGameDef ()
 
ServergetServer ()
 
const std::string & getOrigin ()
 
void setOriginDirect (const char *origin)
 
void setOriginFromTableRaw (int index, const char *fxn)
 
void clientOpenLibs (lua_State *L)
 
void checkSetByBuiltin ()
 

Protected Attributes

AsyncEngine asyncEngine
 
- Protected Attributes inherited from ScriptApiBase
std::recursive_mutex m_luastackmutex
 
std::string m_last_run_mod
 
int m_lock_recursion_count {}
 
std::thread::id m_owning_thread
 

Additional Inherited Members

- Static Public Member Functions inherited from ScriptApiBase
static std::string getCurrentModNameInsecure (lua_State *L)
 Returns the currently running mod, only during init time.
 
- Protected Member Functions inherited from ScriptApiBase
lua_State * getStack ()
 
void realityCheck ()
 
void scriptError (int result, const char *fxn)
 
void stackDump (std::ostream &o)
 
void setGameDef (IGameDef *gamedef)
 
EnvironmentgetEnv ()
 
void setEnv (Environment *env)
 
EmergeThreadgetEmergeThread ()
 
void setEmergeThread (EmergeThread *emerge)
 
void objectrefGetOrCreate (lua_State *L, ServerActiveObject *cobj)
 
void pushPlayerHPChangeReason (lua_State *L, const PlayerHPChangeReason &reason)
 
- Protected Member Functions inherited from LuaHelper
template<>
bool readParam (lua_State *L, int index)
 
template<>
s16 readParam (lua_State *L, int index)
 
template<>
int readParam (lua_State *L, int index)
 
template<>
float readParam (lua_State *L, int index)
 
template<>
v2s16 readParam (lua_State *L, int index)
 
template<>
v2f readParam (lua_State *L, int index)
 
template<>
v3f readParam (lua_State *L, int index)
 
template<>
std::string_view readParam (lua_State *L, int index)
 
template<>
std::string readParam (lua_State *L, int index)
 
template<>
std::string_view readParam (lua_State *L, int index)
 Read a string from Lua state L at index without copying it.
 
- Static Protected Member Functions inherited from LuaHelper
template<typename T >
static T readParam (lua_State *L, int index)
 Read a value using a template type T from Lua state L at index.
 
template<typename T >
static T readParam (lua_State *L, int index, const T &default_value)
 Read a value using a template type T from Lua state L at index.
 

Constructor & Destructor Documentation

◆ ScriptApiAsync()

ScriptApiAsync::ScriptApiAsync ( Server * server)
inline

Member Function Documentation

◆ cancelAsync()

bool ScriptApiAsync::cancelAsync ( u32 id)

References asyncEngine, and AsyncEngine::cancelAsyncJob().

Referenced by ModApiAsync::l_cancel_async_callback().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getThreadingCapacity()

unsigned int ScriptApiAsync::getThreadingCapacity ( ) const
inline

References asyncEngine, and AsyncEngine::getThreadingCapacity().

Referenced by ModApiAsync::l_get_async_threading_capacity().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initAsync()

virtual void ScriptApiAsync::initAsync ( )
pure virtual

Implemented in ServerScripting.

◆ queueAsync()

u32 ScriptApiAsync::queueAsync ( std::string && serialized_func,
PackedValue * param,
const std::string & mod_origin )

References asyncEngine, and AsyncEngine::queueAsyncJob().

Referenced by ModApiAsync::l_do_async_callback().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ stepAsync()

void ScriptApiAsync::stepAsync ( )

References asyncEngine, ScriptApiBase::getStack(), and AsyncEngine::step().

Referenced by ServerEnvironment::step().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ asyncEngine

AsyncEngine ScriptApiAsync::asyncEngine
protected

The documentation for this class was generated from the following files: