|
Yate
|
Data source with own thread. More...
#include <yatephone.h>
Public Member Functions | |
| virtual void | destroyed () |
| bool | start (const char *name="ThreadedSource", Thread::Priority prio=Thread::Normal) |
| void | stop () |
| Thread * | thread () const |
| bool | running () const |
Public Member Functions inherited from DataSource | |
| DataSource (const char *format="slin") | |
| virtual void * | getObject (const String &name) const |
| virtual bool | valid () const |
| virtual bool | control (NamedList ¶ms) |
| unsigned long | Forward (const DataBlock &data, unsigned long tStamp=invalidStamp(), unsigned long flags=0) |
| bool | attach (DataConsumer *consumer, bool override=false) |
| bool | detach (DataConsumer *consumer) |
| void | clear () |
| DataTranslator * | getTranslator () const |
| void | synchronize (unsigned long tStamp) |
| unsigned long | nextStamp () const |
Public Member Functions inherited from DataNode | |
| DataNode (const char *format=0) | |
| virtual int | costFormat (const DataFormat &format) |
| virtual bool | setFormat (const DataFormat &format) |
| const DataFormat & | getFormat () const |
| unsigned long | timeStamp () const |
| virtual void | attached (bool added) |
Public Member Functions inherited from RefObject | |
| RefObject () | |
| virtual | ~RefObject () |
| virtual bool | alive () const |
| bool | ref () |
| bool | deref () |
| int | refcount () const |
| virtual void | destruct () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual const String & | toString () const |
| virtual const String & | traceId () const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from Mutex | |
| Mutex (bool recursive=false, const char *name=0) | |
| Mutex (const Mutex &original) | |
| ~Mutex () | |
| Mutex & | operator= (const Mutex &original) |
| virtual bool | lock (long maxwait=-1) |
| virtual bool | unlock () |
| virtual bool | locked () const |
| const char * | owner () const |
| bool | recursive () const |
Public Member Functions inherited from Lockable | |
| virtual | ~Lockable () |
| virtual bool | check (long maxwait=-1) |
| virtual bool | unlockAll () |
Protected Member Functions | |
| ThreadedSource (const char *format="slin") | |
| virtual void | run ()=0 |
| virtual void | cleanup () |
| bool | looping (bool runConsumers=false) const |
Protected Member Functions inherited from RefObject | |
| virtual void | zeroRefs () |
| bool | resurrect () |
Friends | |
| class | ThreadedSourcePrivate |
Additional Inherited Members | |
Public Types inherited from DataNode | |
| enum | DataFlags { DataStart = 0x0001 , DataEnd = 0x0002 , DataMark = 0x0004 , DataSilent = 0x0008 , DataMissed = 0x0010 , DataError = 0x0020 , DataPrivate = 0x0100 } |
Static Public Member Functions inherited from DataNode | |
| static unsigned long | invalidStamp () |
Static Public Member Functions inherited from RefObject | |
| static bool | alive (const RefObject *obj) |
| static bool | efficientIncDec () |
Static Public Member Functions inherited from GenObject | |
| static void * | getObject (const String &name, const GenObject *obj) |
| static bool | getObjCounting () |
| static void | setObjCounting (bool enable) |
| static NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
Static Public Member Functions inherited from Mutex | |
| static int | count () |
| static int | locks () |
| static bool | efficientTimedLock () |
Static Public Member Functions inherited from Lockable | |
| static void | wait (unsigned long maxwait) |
| static unsigned long | wait () |
| static void | startUsingNow () |
| static void | enableSafety (bool safe=true) |
| static bool | safety () |
Protected Attributes inherited from DataSource | |
| unsigned long | m_nextStamp |
| ObjList | m_consumers |
Protected Attributes inherited from DataNode | |
| DataFormat | m_format |
| unsigned long | m_timestamp |
Data source with own thread.
A data source with a thread of its own
|
inlineexplicitprotected |
Threaded Source constructor
| format | Name of the data format, default "slin" (Signed Linear) |
The cleanup after thread method, deletes the source if already dereferenced and set for asynchronous deletion
The destruction notification, checks that the thread is gone
Reimplemented from DataSource.
Check if the calling thread should keep looping the worker method
| runConsumers | True to keep running as long consumers are attached |
The worker method. You have to reimplement it as you need
| bool running | ( | ) | const |
Check if the data thread is running
| bool start | ( | const char * | name = "ThreadedSource", |
| Thread::Priority | prio = Thread::Normal |
||
| ) |
Starts the worker thread
| name | Static name of this thread |
| prio | Thread's priority |
| void stop | ( | ) |
Stops and destroys the worker thread if running
| Thread * thread | ( | ) | const |
Return a pointer to the worker thread