cumbia-epics 1.x
C++ multi threaded library based on cumbia and the Epics control system
|
Cumbia implementation over the EPICS control system. More...
#include <cumbiaepics.h>
Public Types | |
enum | Type { CumbiaEpicsType = Cumbia::CumbiaUserType + 1 } |
Public Member Functions | |
CumbiaEpics () | |
CumbiaEpics (CuThreadFactoryImplI *tfi, CuThreadsEventBridgeFactory_I *teb) | |
void | setThreadFactoryImpl (CuThreadFactoryImplI *tfi) |
void | setThreadEventsBridgeFactory (CuThreadsEventBridgeFactory_I *teb) |
~CumbiaEpics () | |
bool | addAction (const std::string &source, CuDataListener *l, const CuEpicsActionFactoryI &f) |
Creates and registers a new action if an active one with the given source and type is not found. More... | |
void | unlinkListener (const std::string &source, CuEpicsActionI::Type t, CuDataListener *l) |
CuEpicsActionI * | findAction (const std::string &source, CuEpicsActionI::Type t) const |
CuThreadFactoryImplI * | getThreadFactoryImpl () const |
CuThreadsEventBridgeFactory_I * | getThreadEventsBridgeFactory () const |
virtual int | getType () const |
Cumbia implementation over the EPICS control system.
The CumbiaEpics class is an extension of the Cumbia base one. Its main task is managing the so called actions. An action represents a task associated to an EPICS pv (called source). Presently, reading from EPICS is the only action that can be accomplished by cumbia-epics. More types of actions are foreseen, such as a writer implementation. CuEpActionI defines the interface of an action. Operations include adding or removing data listeners, starting and stopping an action, sending and getting data to and from the underlying thread (for example retrieve or change the polling period of a source). CuMonitor implements the interface and holds a reference to an activity designed to receive events from EPICS.
enum CumbiaEpics::Type |
CumbiaEpics::CumbiaEpics | ( | ) |
CumbiaEpics::CumbiaEpics | ( | CuThreadFactoryImplI * | tfi, |
CuThreadsEventBridgeFactory_I * | teb | ||
) |
CumbiaEpics::~CumbiaEpics | ( | ) |
bool CumbiaEpics::addAction | ( | const std::string & | source, |
CuDataListener * | l, | ||
const CuEpicsActionFactoryI & | f | ||
) |
Creates and registers a new action if an active one with the given source and type is not found.
References CuEpicsActionI::addDataListener(), CuEpicsActionFactoryService::CuActionFactoryServiceType, CuEpicsActionFactoryService::findActive(), CuEpicsActionFactoryI::getType(), CuEpicsActionFactoryService::registerAction(), CuEpicsWorld::source_valid(), and CuEpicsActionI::start().
CuEpicsActionI * CumbiaEpics::findAction | ( | const std::string & | source, |
CuEpicsActionI::Type | t | ||
) | const |
CuThreadsEventBridgeFactory_I * CumbiaEpics::getThreadEventsBridgeFactory | ( | ) | const |
Referenced by CuEpConfiguration::start(), and CuPut::start().
CuThreadFactoryImplI * CumbiaEpics::getThreadFactoryImpl | ( | ) | const |
Referenced by CuEpConfiguration::start(), and CuPut::start().
|
virtual |
References CumbiaEpicsType.
void CumbiaEpics::setThreadEventsBridgeFactory | ( | CuThreadsEventBridgeFactory_I * | teb | ) |
void CumbiaEpics::setThreadFactoryImpl | ( | CuThreadFactoryImplI * | tfi | ) |
void CumbiaEpics::unlinkListener | ( | const std::string & | source, |
CuEpicsActionI::Type | t, | ||
CuDataListener * | l | ||
) |