This documenta- tion describes the current state of development.
Note that interfaces and functionality may still change.

Prokee Modules:
  A
  B
  C
  D
  E
  F
  G
  I
  L
  M
  N
  O
  P
  R
  S
  T
  U
  W

     open all    |    close all

GUI Elements:
  B
  C
  I
  M
  P
  R
  S
  T

     open all    |    close all

GUI Interactions:
  B
  F
  H
  S

     open all    |    close all

GUI Layouts:
  L

     open all    |    close all

Games/Demos:
  M

     open all    |    close all

Third Party Libraries:
  P
  F
  Z

     open all    |    close all

Information about this Website / Informationen zu dieser Webseite:
In case of any questions, or comments, please feel free to contact me via email at apoll500@gmail.com.

Module threadman [Version: v01]

   [AbsMsgItem]   [AbsThread]   [AbsThreadMan]
 
Compile status: 
see log

Contents


Interfaces


Dependencies

For the Prokee Module Library

Dynamically Linked Modules: For the Standalone Executable

Source Files

  • threadman/threadman.h
  • interface/prokee/threadman/prokee.h
  • interface/prokee/threadman/prokee_c.h
  • interface/prokee/mlocal.h
  • threadman/threadman.cpp
  • interface/prokee/threadman/prokee.cpp
  • interface/prokee/threadman/prokee_c.cpp

Licenses


Exported Symbols

Constructors

void *createThread1();
void *createThread2(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem));
void *createThread3(unsigned int tid,void(*main_func)(void *args),void *_args);
void *createThread4(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void(*main_func)(void *args),void *_args);
void *createThreadMan();
void *createMsgItem1(uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData);
void *createMsgItem2(uint64_t msgID,uint64_t msgFlags,void *msgData);
void *createMsgItem3(uint64_t msgID,uint64_t msgParam);
void *createMsgItem4(uint64_t msgID);

Destructors

void destroyThread(void *object);
void destroyThreadMan(void *object);

Methods

void MsgQueue_print(void *object);
int Thread_startThread(void *object);
void Thread_iniFutex(void *object);
void Thread_freeFutex(void *object);
void Thread_print(void *object);
int Thread_mainloop(void *object);
int Thread_feedback(void *object);
int Thread_sendMessage1(AbsMsgItem *msg,void *object);
int Thread_sendMessage2(uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
unsigned int Thread_getThreadID(void *object);
int Thread_getStatus(void *object);
void Thread_setStatus(int st,void *object);
void Thread_setCallback(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
void Thread_setThreadID(unsigned int tid,void *object);
void Thread_setManager(AbsThreadMan *managerThread,void *object);
AbsThreadMan *Thread_getManager(void *object);
void Thread_fwait(void *object);
void Thread_fpost(void *object);
AbsThread *ThreadMan_getThreadById(unsigned int tid,void *object);
unsigned int ThreadMan_getThreadId(AbsThread *tr,void *object);
unsigned int ThreadMan_countRunningThreads(void *object);
void ThreadMan_printInfo(void *object);
AbsThread *ThreadMan_createEmptyThread(void *object);
AbsThread *ThreadMan_createThread(void(*main_func)(void *args),void *_args,void *object);
AbsThread *ThreadMan_createThread2(unsigned int tid,void(*main_func)(void *args),void *_args,void *object);
AbsThread *ThreadMan_createLoopThread(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
AbsThread *ThreadMan_createLoopThread2(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
AbsThread *ThreadMan_createThreadEx(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void(*main_func)(void *args),void *_args,void *object);
void ThreadMan_setMasterThread(AbsThread *tr,void *object);
AbsThread *ThreadMan_getMasterThread(void *object);
int ThreadMan_sendMessage(AbsThread *tr,uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
int ThreadMan_broadcastMessage(AbsThread *senderThread,uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
int ThreadMan_broadcastShutdownMessage(void *object);
uint64_t MsgItem_getID(void *object);
void MsgItem_setID(uint64_t new_id,void *object);
uint64_t MsgItem_getParam(void *object);
void MsgItem_setParam(uint64_t new_param,void *object);
uint64_t MsgItem_getFlags(void *object);
void MsgItem_setFlags(uint64_t new_flags,void *object);
void *MsgItem_getData(void *object);
void MsgItem_setData(void *new_data,void *object);

Pointers

int (*threadman_main)(int argc,char **argv);
void (*threadman_sleep)(int64_t n);
void (*threadman_sleep_millis)(int64_t n);
void (*threadman_sleep_micros)(int64_t n);
void (*threadman_sleep_nanos)(int64_t n);

Internal Pointers

Constructors

The functions listed below are the "constructor functions" for creating objects of the linked module.
These functions can be used directly to omit the static wrapper methods.

void *threadman_Thread_createThread1();
void *threadman_Thread_createThread2(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem));
void *threadman_Thread_createThread3(unsigned int tid,void(*main_func)(void *args),void *_args);
void *threadman_Thread_createThread4(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void(*main_func)(void *args),void *_args);
void *threadman_ThreadMan_createThreadMan();
void *threadman_MsgItem_createMsgItem1(uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData);
void *threadman_MsgItem_createMsgItem2(uint64_t msgID,uint64_t msgFlags,void *msgData);
void *threadman_MsgItem_createMsgItem3(uint64_t msgID,uint64_t msgParam);
void *threadman_MsgItem_createMsgItem4(uint64_t msgID);


The names of the functions are constructed according to the following pattern:
 <module>_<namespace>_<class>_create<class>(...) 
where:
   <module> is the name of the module.
   <namespace> is the name of the namespace (optional).
   <class> is the name of the class.

Destructors

There are also destructor functions. These are equivalent to calling delete object;.
Do not call this functions directly.

void threadman_Thread_destroyThread(void *object);
void threadman_ThreadMan_destroyThreadMan(void *object);


The names of the functions are constructed according to the following pattern:
 <<module>_<namespace>_<class>_destroy<class>(void *object) 
where:
   <module> is the name of the module.
   <namespace> is the name of the namespace (optional).
   <class> is the name of the class.
   object is the object to be destroyed.

Methods

These functions are used, if you created the object locally.
Do not call this functions directly.

void threadman_MsgQueue_print(void *object);
int threadman_Thread_startThread(void *object);
void threadman_Thread_iniFutex(void *object);
void threadman_Thread_freeFutex(void *object);
void threadman_Thread_print(void *object);
int threadman_Thread_mainloop(void *object);
int threadman_Thread_feedback(void *object);
int threadman_Thread_sendMessage1(AbsMsgItem *msg,void *object);
int threadman_Thread_sendMessage2(uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
unsigned int threadman_Thread_getThreadID(void *object);
int threadman_Thread_getStatus(void *object);
void threadman_Thread_setStatus(int st,void *object);
void threadman_Thread_setCallback(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
void threadman_Thread_setThreadID(unsigned int tid,void *object);
void threadman_Thread_setManager(AbsThreadMan *managerThread,void *object);
AbsThreadMan *threadman_Thread_getManager(void *object);
void threadman_Thread_fwait(void *object);
void threadman_Thread_fpost(void *object);
AbsThread *threadman_ThreadMan_getThreadById(unsigned int tid,void *object);
unsigned int threadman_ThreadMan_getThreadId(AbsThread *tr,void *object);
unsigned int threadman_ThreadMan_countRunningThreads(void *object);
void threadman_ThreadMan_printInfo(void *object);
AbsThread *threadman_ThreadMan_createEmptyThread(void *object);
AbsThread *threadman_ThreadMan_createThread(void(*main_func)(void *args),void *_args,void *object);
AbsThread *threadman_ThreadMan_createThread2(unsigned int tid,void(*main_func)(void *args),void *_args,void *object);
AbsThread *threadman_ThreadMan_createLoopThread(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
AbsThread *threadman_ThreadMan_createLoopThread2(unsigned int tid,int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void *object);
AbsThread *threadman_ThreadMan_createThreadEx(int32_t(*callback)(AbsThread *tread,AbsMsgItem *msgItem),void(*main_func)(void *args),void *_args,void *object);
void threadman_ThreadMan_setMasterThread(AbsThread *tr,void *object);
AbsThread *threadman_ThreadMan_getMasterThread(void *object);
int threadman_ThreadMan_sendMessage(AbsThread *tr,uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
int threadman_ThreadMan_broadcastMessage(AbsThread *senderThread,uint64_t msgID,uint64_t msgParam,uint64_t msgFlags,void *msgData,void *object);
int threadman_ThreadMan_broadcastShutdownMessage(void *object);
uint64_t threadman_MsgItem_getID(void *object);
void threadman_MsgItem_setID(uint64_t new_id,void *object);
uint64_t threadman_MsgItem_getParam(void *object);
void threadman_MsgItem_setParam(uint64_t new_param,void *object);
uint64_t threadman_MsgItem_getFlags(void *object);
void threadman_MsgItem_setFlags(uint64_t new_flags,void *object);
void *threadman_MsgItem_getData(void *object);
void threadman_MsgItem_setData(void *new_data,void *object);


The names of the functions are constructed according to the following pattern:
 <module>_<namespace>_<class>_<method>(...,void *object) 
where:
   <module> is the name of the module.
   <namespace> is the name of the namespace (optional).
   <class> is the name of the class.
   <method> is the name of the method.
   object is the object of which the method is called.

Pointers

int threadman_main(int argc,char **argv);
void threadman_sleep(int64_t n);
void threadman_sleep_millis(int64_t n);
void threadman_sleep_micros(int64_t n);
void threadman_sleep_nanos(int64_t n);

Build Log

--------------------------------------------------------------------------------
threadman -- Do Dez  5 02:41:18 CET 2019
--------------------------------------------------------------------------------
ERROR: Fehler beim öffnen der Datei files.def.
Fehlernummer: 2
-------------------------------------------------------------------------------
> install headers
-------------------------------------------------------------------------------
Executable for Linux/[local system] (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Executable for Windows/[local system] (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Linux/[local system] (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Windows/[local system] (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Linux/[local system] (LIB)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Windows/[local system] (LIB)
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Linux/[local system])
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Windows/[local system])
[compiling] [end]
------------------------------------------------------------------------------- Executable for Linux/32bit (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Executable for Windows/32bit (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Linux/32bit (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Windows/32bit (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Linux/32bit (LIB)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Windows/32bit (LIB)
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Linux/32bit)
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Windows/32bit)
[compiling] [end]
------------------------------------------------------------------------------- Executable for Linux/64bit (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Executable for Windows/64bit (CLI)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Linux/64bit (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Dynamic library for Windows/64bit (DLL)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Linux/64bit (LIB)
[compiling] [end]
------------------------------------------------------------------------------- Static library for Windows/64bit (LIB)
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Linux/64bit)
[compiling] [end]
------------------------------------------------------------------------------- TESTS (Automated Tests for Windows/64bit)
[compiling] [end]
------------------------------------------------------------------------------- > test_all ------------------------------------------------------------------------------- > prepare cp: der Aufruf von stat für '../docu/man/' ist nicht möglich: Datei oder Verzeichnis nicht gefunden ------------------------------------------------------------------------------- > install creating /opt/prokee/system/reg/dllinfo/threadman.v01.info ... license=1 | version=1 | library=libthreadman.v01 creating /opt/prokee/system/reg/dllinfo/threadman.info ... license=1 | version=1 | library=libthreadman.v01 ------------------------------------------------------------------------------- > module ------------------------------------------------------------------------------- > exepack ------------------------------------------------------------------------------- > sourcepack ------------------------------------------------------------------------------- > cleanup ------------------------------------------------------------------------------- > webexport -------------------------------------------------------------------------------- FERTIG --------------------------------------------------------------------------------

Copyright © 2017 - 2019 by Andreas Pollhammer