#include <policies.h>
Public Member Functions | |
| MonitorPolicy () | |
| chtype | getDataType () const |
| chtype | getDbrDataType () const |
| CAFENUM::DBR_TYPE | getCafeDbrType () const |
| unsigned int | getNelem () const |
| unsigned int | getMask () const |
| bool | maskHasDBE_PROPERTY () const |
| bool | maskHasDBE_VALUE () const |
| bool | maskHasDBE_LOG () const |
| bool | maskHasDBE_ALARM () const |
| pCallback | getHandler () const |
| void * | getUserArgs () const |
| unsigned int | getUserArgsAsInt () const |
| evid | getEventID () const |
| unsigned int | getMonitorID () const |
| int | getStatus () const |
| unsigned int | getID () const |
| void | setMask (unsigned int m) |
| void | setPyHandler () |
| void | setPyHandlerData () |
| void | setDefaultHandler () |
| void | setHandler (pCallback h) |
| void | setNelem (unsigned int n) |
| void | setDataType (chtype dt) |
| void | setCafeDbrType (CAFENUM::DBR_TYPE cdt) |
| void | setUserArgs (void *u) |
| void | setStatus (int s) |
| void | print () |
Static Public Member Functions | |
| static void | callbackHandlerMonitor (struct event_handler_args args) |
| Callback function for monitor method is invoked with a pointer to the retrieved value. | |
Private Member Functions | |
| void | setEventID (evid e) |
Static Private Member Functions | |
| static void | PyCallbackHandlerMonitorData (struct event_handler_args args) |
| Callback function for monitor method is invoked with a pointer to the retrieved value; also fires a user supplied Python callback. | |
| static void | PyCallbackHandlerMonitor (struct event_handler_args args) |
| Callback function for monitor method is invoked with a pointer to the retrieved value; also fires a user supplied Python callback. | |
Private Attributes | |
| chtype | dataType |
| chtype | dbrDataType |
| CAFENUM::DBR_TYPE | cafeDbrType |
| unsigned int | nelem |
| unsigned int | mask |
| pCallback | handler |
| void * | userArgs |
| evid | eventID |
| int | status |
| unsigned int | id |
Static Private Attributes | |
| static unsigned int | idNext = 0xfff |
Friends | |
| class | Conduit |
| class | Connect |
Defines policy to start a monitor on a channel upon first connection. Note that CAFE will not start a monitor on a channel if it is not connected as the datatype in such cases is unknown.
The monitor is rather placed in a monitor_in_waiting pseudo-queue and only started upon connection
| MonitorPolicy::MonitorPolicy | ( | ) | [inline] |
References idNext.
| void MonitorPolicy::callbackHandlerMonitor | ( | struct event_handler_args | args | ) | [static] |
Callback function for monitor method is invoked with a pointer to the retrieved value.
| args | input: event handler arguments |
References __METHOD__, cafeMutex, cs, PVHolder::getAsLongLong(), long, MUTEX, SF_PULSE_ID_PV, and SF_WITH_PULSE_ID.
Referenced by setDefaultHandler().
| CAFENUM::DBR_TYPE MonitorPolicy::getCafeDbrType | ( | void | ) | const [inline] |
References cafeDbrType.
| chtype MonitorPolicy::getDataType | ( | ) | const [inline] |
References dataType.
Referenced by Connect::monitorStart().
| chtype MonitorPolicy::getDbrDataType | ( | ) | const [inline] |
References dbrDataType.
Referenced by Conduit::monitorStart().
| evid MonitorPolicy::getEventID | ( | ) | const [inline] |
References eventID.
Referenced by Connect::monitorStart().
| pCallback MonitorPolicy::getHandler | ( | ) | const [inline] |
References handler.
Referenced by Conduit::monitorStart().
| unsigned int MonitorPolicy::getID | ( | ) | const [inline] |
References id.
Referenced by Connect::monitorStart().
| unsigned int MonitorPolicy::getMask | ( | ) | const [inline] |
References mask.
Referenced by Conduit::monitorStart().
| unsigned int MonitorPolicy::getMonitorID | ( | ) | const [inline] |
References id.
Referenced by main(), and Connect::monitorStop().
| unsigned int MonitorPolicy::getNelem | ( | ) | const [inline] |
References nelem.
Referenced by Connect::monitorStart(), and Conduit::monitorStart().
| void* MonitorPolicy::getUserArgs | ( | ) | const [inline] |
References userArgs.
Referenced by Connect::monitorStart(), and Conduit::monitorStart().
| bool MonitorPolicy::maskHasDBE_ALARM | ( | ) | const [inline] |
References mask.
| bool MonitorPolicy::maskHasDBE_LOG | ( | ) | const [inline] |
References mask.
| bool MonitorPolicy::maskHasDBE_PROPERTY | ( | ) | const [inline] |
References mask.
| bool MonitorPolicy::maskHasDBE_VALUE | ( | ) | const [inline] |
References mask.
| void MonitorPolicy::print | ( | ) | [inline] |
References dbrDataType, eventID, and nelem.
| void MonitorPolicy::PyCallbackHandlerMonitor | ( | struct event_handler_args | args | ) | [static, private] |
Callback function for monitor method is invoked with a pointer to the retrieved value; also fires a user supplied Python callback.
| args | input: event handler arguments |
References __METHOD__, cafeMutex, cs, long, and MUTEX.
Referenced by setPyHandler().
| void MonitorPolicy::PyCallbackHandlerMonitorData | ( | struct event_handler_args | args | ) | [static, private] |
Callback function for monitor method is invoked with a pointer to the retrieved value; also fires a user supplied Python callback.
| args | input: event handler arguments |
References __METHOD__, cafeMutex, cs, long, and MUTEX.
Referenced by setPyHandlerData().
| void MonitorPolicy::setCafeDbrType | ( | CAFENUM::DBR_TYPE | cdt | ) | [inline] |
References cafeDbrType, dataType, CAFENUM::DBR_CTRL, CAFENUM::DBR_GR, CAFENUM::DBR_PRIMITIVE, CAFENUM::DBR_PUT, CAFENUM::DBR_STS, CAFENUM::DBR_TIME, and dbrDataType.
Referenced by main(), and Connect::monitorPulseID().
| void MonitorPolicy::setDataType | ( | chtype | dt | ) | [inline] |
References cafeDbrType, dataType, CAFENUM::DBR_CTRL, CAFENUM::DBR_GR, CAFENUM::DBR_PRIMITIVE, CAFENUM::DBR_STS, CAFENUM::DBR_TIME, and dbrDataType.
Referenced by main(), Connect::monitorPulseID(), and Connect::monitorStart().
| void MonitorPolicy::setDefaultHandler | ( | ) | [inline] |
References callbackHandlerMonitor(), and handler.
| void MonitorPolicy::setEventID | ( | evid | e | ) | [inline, private] |
References eventID.
Referenced by Conduit::monitorStart().
| void MonitorPolicy::setHandler | ( | pCallback | h | ) | [inline] |
References handler.
Referenced by main(), and Connect::monitorPulseID().
| void MonitorPolicy::setMask | ( | unsigned int | m | ) | [inline] |
References mask.
Referenced by main(), and Connect::monitorPulseID().
| void MonitorPolicy::setNelem | ( | unsigned int | n | ) | [inline] |
References nelem.
Referenced by Connect::monitorStart().
| void MonitorPolicy::setPyHandler | ( | ) | [inline] |
References handler, and PyCallbackHandlerMonitor().
| void MonitorPolicy::setPyHandlerData | ( | ) | [inline] |
References handler, and PyCallbackHandlerMonitorData().
| void MonitorPolicy::setStatus | ( | int | s | ) | [inline] |
References status.
Referenced by Connect::monitorStart().
| void MonitorPolicy::setUserArgs | ( | void * | u | ) | [inline] |
References userArgs.
Referenced by main(), Connect::monitorPulseID(), and Connect::monitorStart().
friend class Conduit [friend] |
friend class Connect [friend] |
CAFENUM::DBR_TYPE MonitorPolicy::cafeDbrType [private] |
Referenced by getCafeDbrType(), setCafeDbrType(), and setDataType().
chtype MonitorPolicy::dataType [private] |
Referenced by getDataType(), setCafeDbrType(), and setDataType().
chtype MonitorPolicy::dbrDataType [private] |
Referenced by getDbrDataType(), print(), setCafeDbrType(), and setDataType().
evid MonitorPolicy::eventID [private] |
Referenced by getEventID(), print(), and setEventID().
pCallback MonitorPolicy::handler [private] |
Referenced by getHandler(), setDefaultHandler(), setHandler(), setPyHandler(), and setPyHandlerData().
unsigned int MonitorPolicy::id [private] |
Referenced by getID(), and getMonitorID().
unsigned int MonitorPolicy::idNext = 0xfff [static, private] |
Referenced by MonitorPolicy(), and Connect::terminate().
unsigned int MonitorPolicy::mask [private] |
Referenced by getMask(), maskHasDBE_ALARM(), maskHasDBE_LOG(), maskHasDBE_PROPERTY(), maskHasDBE_VALUE(), and setMask().
unsigned int MonitorPolicy::nelem [private] |
Referenced by getNelem(), print(), and setNelem().
int MonitorPolicy::status [private] |
Referenced by getStatus(), and setStatus().
void* MonitorPolicy::userArgs [private] |
Referenced by getUserArgs(), getUserArgsAsInt(), and setUserArgs().
1.6.1