#include <conduit.h>
Principal constructor has:
_pv | process variable | |
_ccc | ca_client_context |
Conduit::Conduit | ( | void | ) |
Conduit::Conduit | ( | const char * | _pv, | |
ca_client_context * | _ccc, | |||
bool | _pyCafeFlag | |||
) |
Conduit constructor with flag for PyCafe API
.
_pv | input: process variable | |
_ccc | input: ca_client_context | |
_pyCafeFlag | input: bool |
References alarmSeverity, alarmStatus, beamEventNo, ChannelRequestMetaData::cafeDbrType, cafeDbrType, ccc, channelDeviceAttribute, channelID, channelRequestMetaCtrl, channelRequestMetaCtrlClient, channelRequestMetaData, channelRequestMetaDataClient, channelRequestMetaPrimitive, channelRequestPolicyGet, channelRequestPolicyGetCtrl, channelRequestPolicyPut, ctrlBuffer, dataBuffer, dataType, CAFENUM::DBR_CTRL, CAFENUM::DBR_NONE, CAFENUM::DBR_PRIMITIVE, CAFENUM::DBR_TIME, dbrDataType, DEFAULT_DEVICE_ATTRIBUTE_DELIMINATOR, deviceAttributeDeliminator, epicsAlarmConditionStrings, epicsAlarmSeverityStrings, CAFENUM::FLUSH_AFTER_EACH_MESSAGE, groupHandle, handle, handleNext, hasNewData, ICAFE_CS_NEVER_CONN, import_PyCafe(), ChannelDeviceAttribute::init(), long, monitorAction, mpV, CAFENUM::NO_WAIT, putBuffer, pv, pvAlias, pyCafeFlag, ChannelRequestPolicy::setPolicy(), status, stsackBuffer, ts, usrArgs, CAFENUM::WAIT, CAFENUM::WITH_CALLBACK_DEFAULT, and CAFENUM::WITHOUT_CALLBACK.
Conduit::~Conduit | ( | ) | [virtual] |
CAFEConduit destructor
Good place to clean up!
int Conduit::get | ( | void | ) | const [private] |
Called from Granules.cc
Retrieves PV data through channel access into the Conduit::dataBuffer.
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaData, dataBuffer, ChannelRequestMetaData::dbrDataType, and ChannelRequestMetaData::nelem.
unsigned short Conduit::getAccessRead | ( | void | ) | const [inline] |
References ChannelRegalia::accessRead, and channelRegalia.
unsigned short Conduit::getAccessWrite | ( | void | ) | const [inline] |
References ChannelRegalia::accessWrite, and channelRegalia.
short Conduit::getAlarmSeverity | ( | void | ) | const [inline] |
References alarmSeverity.
string Conduit::getAlarmSeverityAsString | ( | void | ) | const [inline] |
References ALARM_SEVERITY_STRING_LENGTH, alarmSeverity, and epicsAlarmSeverityStrings.
short Conduit::getAlarmStatus | ( | void | ) | const [inline] |
References alarmStatus.
string Conduit::getAlarmStatusAsString | ( | void | ) | const [inline] |
References ALARM_STATUS_STRING_LENGTH, alarmStatus, and epicsAlarmConditionStrings.
const char* Conduit::getAttribute | ( | void | ) | const [inline] |
References channelDeviceAttribute, and ChannelDeviceAttribute::getAttribute().
unsigned int Conduit::getBeamEventNo | ( | void | ) | const [inline] |
References beamEventNo.
CAFENUM::DBR_TYPE Conduit::getCafeDbrType | ( | void | ) | const [inline] |
References cafeDbrType.
ChannelGetActionWhenMonitorPolicy Conduit::getChannelGetActionWhenMonitorPolicy | ( | void | ) | const [inline] |
References channelGetActionWhenMonitorPolicy.
ChannelGetCacheWaitPolicy Conduit::getChannelGetCacheWaitPolicy | ( | void | ) | const [inline] |
References channelGetCacheWaitPolicy.
chid Conduit::getChannelID | ( | void | ) | const [inline] |
References ChannelRegalia::channelID, and channelRegalia.
ChannelRegalia Conduit::getChannelRegalia | ( | void | ) | const [inline] |
References channelRegalia.
ChannelRequestDataTypePolicy Conduit::getChannelRequestDataTypePolicy | ( | void | ) | const [inline] |
References channelRequestDataTypePolicy.
ChannelRequestMetaData Conduit::getChannelRequestMetaCtrl | ( | void | ) | const [inline] |
References channelRequestMetaCtrl.
ChannelRequestMetaDataClient Conduit::getChannelRequestMetaCtrlClient | ( | void | ) | const [inline] |
References channelRequestMetaCtrlClient.
ChannelRequestMetaData Conduit::getChannelRequestMetaData | ( | void | ) | const [inline] |
References channelRequestMetaData.
ChannelRequestMetaDataClient Conduit::getChannelRequestMetaDataClient | ( | void | ) | const [inline] |
References channelRequestMetaDataClient.
ChannelRequestMetaData Conduit::getChannelRequestMetaPrimitive | ( | void | ) | const [inline] |
References channelRequestMetaPrimitive.
ChannelRequestPolicy Conduit::getChannelRequestPolicyGet | ( | void | ) | const [inline] |
References channelRequestPolicyGet.
ChannelRequestPolicy Conduit::getChannelRequestPolicyGetCtrl | ( | void | ) | const [inline] |
References channelRequestPolicyGetCtrl.
ChannelRequestPolicy Conduit::getChannelRequestPolicyPut | ( | void | ) | const [inline] |
References channelRequestPolicyPut.
ChannelRequestStatus Conduit::getChannelRequestStatusGet | ( | void | ) | const [inline] |
References channelRequestStatusGet.
ChannelRequestStatus Conduit::getChannelRequestStatusGetClassName | ( | void | ) | const [inline] |
References channelRequestStatusGetClassName.
ChannelRequestStatus Conduit::getChannelRequestStatusGetCtrl | ( | void | ) | const [inline] |
References channelRequestStatusGetCtrl.
ChannelRequestStatus Conduit::getChannelRequestStatusGetSTSACK | ( | void | ) | const [inline] |
References channelRequestStatusGetSTSACK.
ChannelRequestStatus Conduit::getChannelRequestStatusPut | ( | void | ) | const [inline] |
References channelRequestStatusPut.
ChannelTimeoutPolicy Conduit::getChannelTimeoutPolicyGet | ( | void | ) | const [inline] |
References channelTimeoutPolicyGet.
ChannelTimeoutPolicy Conduit::getChannelTimeoutPolicyPut | ( | void | ) | const [inline] |
References channelTimeoutPolicyPut.
Called from Granules.cc and conduitConnectionHandersArgs.h
Retrieves ClassName data through channel access into the Conduit::ClassNameBuffer thru callbackHandlerClassName.
callbackHandlerClassName | input: pCallback |
References ChannelRegalia::channelID, channelRegalia, and handle.
ca_client_context* Conduit::getClientContext | ( | void | ) | const [inline] |
References ccc.
int Conduit::getCtrl | ( | void | ) | const [private] |
Called from Granules.cc
Retrieves Ctrl data through channel access into the Conduit::ctrlBuffer.
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaCtrl, ctrlBuffer, ChannelRequestMetaData::dbrDataType, and ChannelRequestMetaData::nelem.
db_access_val* Conduit::getCtrlBuffer | ( | void | ) | const [inline] |
References ctrlBuffer.
Called from granules.cc and conduitConnectionHandersArgs.h
Retrieves Ctrl data through channel access into the Conduit::ctrlBuffer thru callbackHandlerCtrl.
callbackHandlerCtrl | input: pCallback |
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaCtrl, ChannelRequestMetaData::dbrDataType, handle, and ChannelRequestMetaData::nelem.
db_access_val* Conduit::getDataBuffer | ( | void | ) | const [inline] |
References dataBuffer.
chtype Conduit::getDataType | ( | void | ) | const [inline] |
References dataType.
chtype Conduit::getDbrDataType | ( | void | ) | const [inline] |
References dbrDataType.
const char* Conduit::getDevice | ( | void | ) | const [inline] |
References channelDeviceAttribute, and ChannelDeviceAttribute::getDevice().
unsigned int Conduit::getGroupHandle | ( | void | ) | const [inline] |
References groupHandle.
bool Conduit::getHasNewData | ( | void | ) | const [inline] |
References hasNewData.
const char* Conduit::getHostName | ( | void | ) | const [inline] |
References channelRegalia, and ChannelRegalia::hostName.
vector<string> Conduit::getMonitorAction | ( | void | ) | const [inline] |
References monitorAction.
vector<MonitorPolicy> Conduit::getMonitorPolicyInWaitingVector | ( | void | ) | const [inline] |
References mpInWaitingV.
vector<MonitorPolicy> Conduit::getMonitorPolicyVector | ( | void | ) | const [inline] |
References mpV.
db_access_val* Conduit::getPutBuffer | ( | void | ) | const [inline] |
References putBuffer.
const char* Conduit::getPV | ( | void | ) | const [inline] |
References pv.
const char* Conduit::getPVAlias | ( | void | ) | const [inline] |
References pvAlias.
int Conduit::getPVCtrlHolder | ( | PVCtrlHolder & | _pvc | ) | const |
Called from cafe.cc.
_pvc | output: PVCtrlHolder |
References __METHOD__, PVHolder::alarmSeverity, PVHolder::alarmStatus, PVHolder::attrib, CAFE_DATATYPE_UNION::ch, channelDeviceAttribute, channelRegalia, channelRequestMetaCtrl, channelRequestMetaCtrlClient, Helper::convertToCAFEDbrTypeClass(), ctrlBuffer, CAFE_DATATYPE_UNION::d, PVHolder::dataType, PVHolder::dataTypeNative, CAFENUM::DBR_CTRL, CAFENUM::DBR_GR, PVHolder::dbrDataType, PVHolder::device, CAFE_DATATYPE_UNION::f, ChannelDeviceAttribute::getAttribute(), ChannelRegalia::getCafeConnectionState(), ChannelRegalia::getDataType(), ChannelRequestMetaData::getDataType(), ChannelRequestMetaData::getDbrDataType(), ChannelDeviceAttribute::getDevice(), ChannelRequestMetaData::getNelem(), ChannelRequestMetaData::getOffset(), ICAFE_CS_NEVER_CONN, ICAFE_NORMAL, CAFE_DATATYPE_UNION::l, PVCtrlHolder::lowerAlarmLimit, PVCtrlHolder::lowerCtrlLimit, PVCtrlHolder::lowerDispLimit, PVCtrlHolder::lowerWarningLimit, PVHolder::nelem, PVHolder::noStr, PVCtrlHolder::precision, pv, PVHolder::pv, pvAlias, PVHolder::pvAlias, PVCtrlHolder::RISC_pad, CAFE_DATATYPE_UNION::s, PVHolder::size, status, PVHolder::status, PVHolder::strs, PVCtrlHolder::units, PVCtrlHolder::upperAlarmLimit, PVCtrlHolder::upperCtrlLimit, PVCtrlHolder::upperDispLimit, PVCtrlHolder::upperWarningLimit, CAFE_DATATYPE_UNION::us, and PVHolder::val.
int Conduit::getPVDataHolder | ( | PVDataHolder & | _pvd | ) | const |
Called from cafe.cc.
_pvd | output: PVDataHolder |
References __METHOD__, PVHolder::alarmSeverity, PVHolder::alarmStatus, PVHolder::attrib, beamEventNo, PVHolder::beamEventNo, channelDeviceAttribute, channelRegalia, channelRequestMetaData, Helper::convertToCAFEDbrTypeClass(), ctrlBuffer, dataBuffer, PVHolder::dataType, PVHolder::dataTypeNative, CAFENUM::DBR_PRIMITIVE, CAFENUM::DBR_STS, CAFENUM::DBR_TIME, PVHolder::dbrDataType, PVHolder::device, ChannelDeviceAttribute::getAttribute(), ChannelRegalia::getCafeConnectionState(), ChannelRequestMetaData::getDataType(), ChannelRegalia::getDataType(), ChannelRequestMetaData::getDbrDataType(), ChannelDeviceAttribute::getDevice(), ChannelRequestMetaData::getNelem(), ChannelRequestMetaData::getOffset(), ICAFE_CS_NEVER_CONN, ICAFE_NORMAL, PVHolder::nelem, PVHolder::noStr, pv, PVHolder::pv, pvAlias, PVHolder::pvAlias, PVHolder::size, status, PVHolder::status, PVHolder::strs, PVDataHolder::ts, and PVHolder::val.
bool Conduit::getPyCafe | ( | ) | const [inline] |
References pyCafeFlag.
Called from Granules.cc and conduitConnectionHandersArgs.h
Retrieves STSACK data through channel access into the Conduit::STSACKBuffer thru callbackHandlerSTSACK.
callbackHandlerSTSACK | input: pCallback |
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaSTSACK, handle, and ChannelRequestMetaData::nelem.
epicsTimeStamp Conduit::getTimeStamp | ( | void | ) | const [inline] |
References ts.
void* Conduit::getUsrArgs | ( | void | ) | const [inline] |
References usrArgs.
Called from Granules.cc
Retrieves PV data through channel access into the Conduit::dataBuffer thru callbackHandlerGet.
callbackHandlerGet | input: pCallback |
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaData, ChannelRequestMetaData::dbrDataType, handle, and ChannelRequestMetaData::nelem.
bool Conduit::isConnected | ( | void | ) | const [inline] |
References channelRegalia, and ChannelRegalia::connectFlag.
int Conduit::monitorStart | ( | MonitorPolicy & | mp | ) | const [private] |
Starts a monitor on the epics channel.
mp | input: MonitorPolicy class mp.eventID output: evid identifying the monitor subscription |
References ChannelRegalia::channelID, channelRegalia, MonitorPolicy::getDbrDataType(), MonitorPolicy::getHandler(), MonitorPolicy::getMask(), MonitorPolicy::getNelem(), MonitorPolicy::getUserArgs(), MonitorPolicy::setEventID(), and status.
int Conduit::monitorStop | ( | evid | eventID | ) | const [private] |
Stops a monitor on the epics channel.
eventID | input: evid |
int Conduit::put | ( | void | ) | const [private] |
Called from Granules.cc
Sends data from the Conduit::putBuffer to the process variable. It does not wait to determine if the data was actually written or not.
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaPrimitive, ChannelRequestMetaData::dbrDataType, ChannelRequestMetaData::nelem, and putBuffer.
Called from Granules.cc
Sends data from the Conduit::putBuffer to the process variable. It does not wait to determine if the data was actually written or not.
callbackHandlerPut | input: pCallback |
References ChannelRegalia::channelID, channelRegalia, channelRequestMetaPrimitive, ChannelRequestMetaData::dbrDataType, handle, ChannelRequestMetaData::nelem, and putBuffer.
friend class CAFE [friend] |
friend struct change_accessRead [friend] |
friend struct change_accessRightsHandlerArgs [friend] |
friend struct change_accessWrite [friend] |
friend struct change_alarmSeverity [friend] |
friend struct change_alarmStatus [friend] |
friend struct change_channelDeviceAttribute [friend] |
friend struct change_channelGetActionWhenMonitorPolicy [friend] |
friend struct change_channelGetCacheWaitPolicy [friend] |
friend struct change_channelID [friend] |
friend struct change_channelRegalia [friend] |
friend struct change_channelRequestDataTypePolicy [friend] |
friend struct change_channelRequestMetaCtrl [friend] |
friend struct change_channelRequestMetaCtrlClient [friend] |
friend struct change_channelRequestMetaData [friend] |
friend struct change_channelRequestMetaDataClient [friend] |
friend struct change_channelRequestMetaPrimitive [friend] |
friend struct change_channelRequestPolicyGet [friend] |
friend struct change_channelRequestPolicyGetCtrl [friend] |
friend struct change_channelRequestPolicyPut [friend] |
friend struct change_channelRequestStatusGet [friend] |
friend struct change_channelRequestStatusGetClassName [friend] |
friend struct change_channelRequestStatusGetCtrl [friend] |
friend struct change_channelRequestStatusGetSTSACK [friend] |
friend struct change_channelRequestStatusPut [friend] |
friend struct change_channelTimeoutPolicyGet [friend] |
friend struct change_channelTimeoutPolicyPut [friend] |
friend struct change_connectionHandlerArgs [friend] |
friend struct change_dataBufferSize_CTRL [friend] |
friend struct change_dataBufferSize_PRIMITIVE [friend] |
friend struct change_dataBufferSize_STSACK [friend] |
friend struct change_dataBufferSize_TIME [friend] |
friend struct change_epicsTimeStamp [friend] |
friend struct change_eventHandlerArgs [friend] |
friend struct change_hasNewData [friend] |
friend struct change_monitorAction [friend] |
friend struct change_monitorActionClear [friend] |
friend struct change_monitorActionErase [friend] |
friend struct change_monitorPolicyErase [friend] |
friend struct change_monitorPolicyInsert [friend] |
friend struct change_monitorPolicyInWaitingErase [friend] |
friend struct change_monitorPolicyInWaitingInsert [friend] |
friend struct change_pvAlias [friend] |
friend struct change_status [friend] |
friend struct change_usrArgs [friend] |
friend class ChannelCreatePolicy [friend] |
friend class ConduitGroup [friend] |
friend class Connect [friend] |
friend struct free_dataBuffers [friend] |
friend class Granules [friend] |
friend class MonitorPolicy [friend] |
std::ostream& operator<< | ( | std::ostream & | os, | |
const Conduit & | e | |||
) | [friend] |
short Conduit::alarmSeverity [private] |
short Conduit::alarmStatus [private] |
unsigned int Conduit::beamEventNo [private] |
Referenced by Conduit(), getBeamEventNo(), and getPVDataHolder().
CAFENUM::DBR_TYPE Conduit::cafeDbrType [private] |
Referenced by Conduit(), getCafeDbrType(), and change_eventHandlerArgs::operator()().
ca_client_context* Conduit::ccc [private] |
Referenced by Conduit(), and getClientContext().
Referenced by Conduit(), getAttribute(), getDevice(), getPVCtrlHolder(), getPVDataHolder(), and change_channelDeviceAttribute::operator()().
Referenced by change_eventHandlerArgs::operator()().
Referenced by getChannelGetCacheWaitPolicy(), and change_channelGetCacheWaitPolicy::operator()().
chid Conduit::channelID |
ChannelRegalia Conduit::channelRegalia [private] |
Referenced by get(), getAccessRead(), getAccessWrite(), getChannelID(), getChannelRegalia(), getClassNameWithCallback(), getCtrl(), getCtrlWithCallback(), getHostName(), getPVCtrlHolder(), getPVDataHolder(), getSTSACKWithCallback(), getWithCallback(), isConnected(), monitorStart(), change_channelRegalia::operator()(), change_channelID::operator()(), change_accessRightsHandlerArgs::operator()(), change_accessWrite::operator()(), change_accessRead::operator()(), change_eventHandlerArgs::operator()(), change_dataBufferSize_TIME::operator()(), change_connectionHandlerArgs::operator()(), put(), and putWithCallback().
Referenced by Conduit(), getChannelRequestPolicyGet(), and change_channelRequestPolicyGet::operator()().
Referenced by Conduit(), getChannelRequestPolicyGetCtrl(), and change_channelRequestPolicyGetCtrl::operator()().
Referenced by Conduit(), getChannelRequestPolicyPut(), and change_channelRequestPolicyPut::operator()().
Referenced by getChannelRequestStatusGetCtrl(), and change_channelRequestStatusGetCtrl::operator()().
Referenced by getChannelRequestStatusGetSTSACK(), and change_channelRequestStatusGetSTSACK::operator()().
union db_access_val* Conduit::ctrlBuffer [write, private] |
union db_access_val* Conduit::dataBuffer [write, private] |
chtype Conduit::dataType [private] |
Referenced by Conduit(), getDataType(), and change_eventHandlerArgs::operator()().
chtype Conduit::dbrDataType [private] |
Referenced by Conduit(), getDbrDataType(), and change_eventHandlerArgs::operator()().
std::string Conduit::deviceAttributeDeliminator [private] |
Referenced by Conduit().
const char* Conduit::epicsAlarmConditionStrings[ALARM_STATUS_STRING_LENGTH] [private] |
Referenced by Conduit(), and getAlarmStatusAsString().
const char* Conduit::epicsAlarmSeverityStrings[ALARM_SEVERITY_STRING_LENGTH] [private] |
Referenced by Conduit(), and getAlarmSeverityAsString().
unsigned int Conduit::groupHandle |
Referenced by Conduit(), getGroupHandle(), and change_groupHandle::operator()().
unsigned int Conduit::handle |
Referenced by Conduit(), getClassNameWithCallback(), getCtrlWithCallback(), getHandle(), getSTSACKWithCallback(), getWithCallback(), change_monitorPolicyInWaitingInsert::operator()(), change_monitorPolicyInsert::operator()(), change_dataBufferSize_TIME::operator()(), change_dataBufferSize_STSACK::operator()(), change_dataBufferSize_PRIMITIVE::operator()(), change_dataBufferSize_CTRL::operator()(), change_connectionHandlerArgs::operator()(), operator<(), and putWithCallback().
unsigned int Conduit::handleNext = 0 [static, private] |
Referenced by Conduit(), Connect::createHandle(), Connect::createHandleWithinGroup(), and Connect::terminate().
bool Conduit::hasNewData [private] |
Referenced by Conduit(), getHasNewData(), change_hasNewData::operator()(), and change_eventHandlerArgs::operator()().
vector<std::string> Conduit::monitorAction [private] |
vector<MonitorPolicy> Conduit::mpInWaitingV [private] |
vector<MonitorPolicy> Conduit::mpV [private] |
union db_access_val* Conduit::putBuffer [write, private] |
std::string Conduit::pv |
Referenced by Conduit(), getPV(), getPVCtrlHolder(), getPVDataHolder(), change_monitorPolicyInWaitingInsert::operator()(), change_monitorPolicyInsert::operator()(), change_eventHandlerArgs::operator()(), change_dataBufferSize_TIME::operator()(), change_dataBufferSize_STSACK::operator()(), change_dataBufferSize_PRIMITIVE::operator()(), and change_dataBufferSize_CTRL::operator()().
std::string Conduit::pvAlias |
Referenced by Conduit(), getPVAlias(), getPVCtrlHolder(), getPVDataHolder(), and change_pvAlias::operator()().
bool Conduit::pyCafeFlag [private] |
Referenced by Conduit(), and getPyCafe().
union db_access_val* Conduit::stsackBuffer [write, private] |
epicsTimeStamp Conduit::ts [private] |
Referenced by Conduit(), getTimeStamp(), change_epicsTimeStamp::operator()(), and change_eventHandlerArgs::operator()().
void* Conduit::usrArgs [private] |
Referenced by Conduit(), getUsrArgs(), change_usrArgs::operator()(), and change_eventHandlerArgs::operator()().