16 #ifndef DABC_ModuleItem
17 #define DABC_ModuleItem
185 Timer(
Reference parent,
bool systimer,
const std::string &name,
double timeout = -1.,
bool synchron =
false);
#define DABC_REFERENCE(RefClass, ParentClass, T)
Special timer to reestablish port connections in the module.
bool fErrorFlag
indicate why reconnection was started
ConnTimer(Reference parent, const std::string &name, const std::string &portname)
std::string fPortName
port name, which should be reconnected
virtual bool ItemNeedThread() const
void Activate(double period)
virtual double ProcessTimeout(double last_diff)
Base class for user-derived code, implementing event-processing.
Reference on dabc::ModuleItem class
WorkerRef GetModule() const
unsigned ItemSubId() const
std::string InfoParName() const
Base class for module items like ports, timers, pool handles.
void StartModule()
Starts module, should be called from module thread.
void SetItemPriority(int pri=-1)
virtual bool ItemNeedThread() const
void SetItemSubId(unsigned id)
ModuleItem(int typ, Reference parent, const std::string &name)
virtual void DoCleanup()
Called when module object is cleaned up - should release all references if any.
void SetItemId(unsigned id)
unsigned ItemSubId() const
void StopModule()
Stops module, should be called from module thread.
Base class for user-derived code, implementing main loop.
Base for dabc::ModuleSync and dabc::ModuleAsync classes.
Reference on the arbitrary object
void Release()
Releases reference on the object.
Object * GetObject() const
Return pointer on the object.
Provides timer event to the module.
void SetSynchron(bool on=true)
double fPeriod
indicate that timer uses module timeouts
Timer(Reference parent, bool systimer, const std::string &name, double timeout=-1., bool synchron=false)
virtual double ProcessTimeout(double last_diff)
virtual bool ItemNeedThread() const
void SingleShoot(double delay)
virtual void DoCleanup()
Called when module object is cleaned up - should release all references if any.
Reference on dabc::Worker
Active object, which is working inside dabc::Thread.
bool ActivateTimeout(double tmout_sec)
Method used to produce timeout events in the worker.
void SetWorkerCfgId(int id=-1)
Set identifier which can be used in XML configuration ${}# formula It means that correspondent to the...
void SetWorkerPriority(int nq)