Engage Engine API  1.243.9083
All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
CrossThreadCallbackWorker Class Reference

Classes

class  IntParameter
 
class  Parameter
 
class  StringParameter
 
class  StringVectorParameter
 

Public Member Functions

 CrossThreadCallbackWorker (v8::Local< v8::Function > fn)
 
void ADD_OBJECT_REFERENCE ()
 
void RELEASE_OBJECT_REFERENCE ()
 
void enqueue (const char *extra)
 
void enqueue (const char *s, const char *extra)
 
void enqueue (const char *s1, const char *s2, const char *extra)
 
void enqueue (std::vector< Parameter * > *parameters)
 

Static Public Member Functions

static void onExecuteWork (uv_work_t *workCtx)
 
static void onWorkCompleted (uv_work_t *workCtx)
 

Private Member Functions

void internal_onWorkCompleted ()
 

Private Attributes

std::mutex _lock
 
uv_loop_t * _evLoop
 
uv_work_t _workCtx
 
bool _isBusy
 
Nan::Callback _cb
 
Nan::Persistent< v8::Object > _persistentHandle
 
AsyncResource * _resource
 
std::atomic< int > _refCount
 
std::vector< Parameter * > * _pendingParameters
 

Detailed Description

Definition at line 104 of file engage.cpp.

Constructor & Destructor Documentation

◆ CrossThreadCallbackWorker()

CrossThreadCallbackWorker::CrossThreadCallbackWorker ( v8::Local< v8::Function > fn)
inlineexplicit

Definition at line 164 of file engage.cpp.

◆ ~CrossThreadCallbackWorker()

virtual CrossThreadCallbackWorker::~CrossThreadCallbackWorker ( )
inlinevirtual

Definition at line 187 of file engage.cpp.

Member Function Documentation

◆ ADD_OBJECT_REFERENCE()

void CrossThreadCallbackWorker::ADD_OBJECT_REFERENCE ( )
inline

Definition at line 199 of file engage.cpp.

◆ enqueue() [1/4]

void CrossThreadCallbackWorker::enqueue ( const char * extra)
inline

Definition at line 214 of file engage.cpp.

◆ enqueue() [2/4]

void CrossThreadCallbackWorker::enqueue ( const char * s,
const char * extra )
inline

Definition at line 221 of file engage.cpp.

◆ enqueue() [3/4]

void CrossThreadCallbackWorker::enqueue ( const char * s1,
const char * s2,
const char * extra )
inline

Definition at line 229 of file engage.cpp.

◆ enqueue() [4/4]

void CrossThreadCallbackWorker::enqueue ( std::vector< Parameter * > * parameters)
inline

Definition at line 238 of file engage.cpp.

◆ internal_onWorkCompleted()

void CrossThreadCallbackWorker::internal_onWorkCompleted ( )
inlineprivate

Definition at line 282 of file engage.cpp.

◆ onExecuteWork()

static void CrossThreadCallbackWorker::onExecuteWork ( uv_work_t * workCtx)
inlinestatic

Definition at line 267 of file engage.cpp.

◆ onWorkCompleted()

static void CrossThreadCallbackWorker::onWorkCompleted ( uv_work_t * workCtx)
inlinestatic

Definition at line 273 of file engage.cpp.

◆ RELEASE_OBJECT_REFERENCE()

void CrossThreadCallbackWorker::RELEASE_OBJECT_REFERENCE ( )
inline

Definition at line 205 of file engage.cpp.

Member Data Documentation

◆ _cb

Nan::Callback CrossThreadCallbackWorker::_cb
private

Definition at line 380 of file engage.cpp.

◆ _evLoop

uv_loop_t* CrossThreadCallbackWorker::_evLoop
private

Definition at line 377 of file engage.cpp.

◆ _isBusy

bool CrossThreadCallbackWorker::_isBusy
private

Definition at line 379 of file engage.cpp.

◆ _lock

std::mutex CrossThreadCallbackWorker::_lock
private

Definition at line 376 of file engage.cpp.

◆ _pendingParameters

std::vector<Parameter*>* CrossThreadCallbackWorker::_pendingParameters
private

Definition at line 384 of file engage.cpp.

◆ _persistentHandle

Nan::Persistent<v8::Object> CrossThreadCallbackWorker::_persistentHandle
private

Definition at line 381 of file engage.cpp.

◆ _refCount

std::atomic<int> CrossThreadCallbackWorker::_refCount
private

Definition at line 383 of file engage.cpp.

◆ _resource

AsyncResource* CrossThreadCallbackWorker::_resource
private

Definition at line 382 of file engage.cpp.

◆ _workCtx

uv_work_t CrossThreadCallbackWorker::_workCtx
private

Definition at line 378 of file engage.cpp.


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