#include <connect.h>
Public Member Functions | |
Connect () | |
HandleHelper | getHandleHelper () |
HandleHelper | getInfo () |
PolicyHelper | getPolicyHelper () |
PolicyHelper | getPolicy () |
unsigned int | getNelemClient (unsigned int h) |
unsigned int | getNelemNative (unsigned int h) |
unsigned int | getNelemRequest (unsigned int h) |
int | getStatus () |
CAFEStatus | getCafeStatus () |
CAFEStatusSeverity | getCafeStatusSeverity () |
CAFEGlobalAlarmCondition | getEpicsAlarmStatus () |
CAFEGlobalAlarmCondition | getEpicsAlarmCondition () |
CAFEGlobalAlarmSeverity | getEpicsAlarmSeverity () |
int | flushNow () |
int | _ca_flush_io () |
int | _ca_poll () |
int | _ca_pend_io (double t) |
int | _ca_pend_event (double t) |
bool | setPyCafe (bool b) |
bool | getPyCafe () |
int | init () throw (CAFEException_init) |
int | init (ca_preemptive_callback_select select) throw (CAFEException_init) |
int | open (const std::string pvS, unsigned int &handle) throw (CAFEException_open) |
int | open (const std::string pvS, const std::string pvAliasS, unsigned int &handle) throw (CAFEException_open) |
int | open (const std::string *pvArrayS, unsigned int *handleArray, const unsigned int nHandles) throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
| |
int | open (const char *pv, unsigned int &handle) throw (CAFEException_open) |
Establishes virtual circuit to epics process variable
| |
int | open (const char *pv, const char *pvAlias, unsigned int &handle) throw (CAFEException_open) |
Establishes virtual circuit to epics process variable and defines its pv alias name
| |
int | open (const char **pvArray, unsigned int *handleArray, const unsigned int nHandles) throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
| |
int | open (std::vector< const char * >, std::vector< unsigned int > &) throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
| |
int | open (std::vector< std::string >, std::vector< unsigned int > &) throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
| |
int | openV (std::vector< std::string > s, std::vector< unsigned int > &i) throw (CAFEException_open) |
void | openGroupPrepare () |
void | openGroupNowAndWait (double _timeout) |
send the command to the ioc to open channels within all group(s). | |
void | openGroupNowAndWaitForInputGroups (double _timeout, std::vector< unsigned int > gHandles) |
send the command to the ioc to open channels within given group(s). | |
void | openGroupNow () |
void | groupOpenPrepare () |
void | groupOpenNowAndWait (double _timeout) |
void | groupOpenNowAndWait (double _timeout, std::vector< unsigned int > gH) |
void | groupOpenNow () |
void | openMonitorPrepare () |
void | openMonitorNow () |
void | openMonitorNowAndWait (double _timeout) |
double | setOpenDefaultPendTime (double _timeout) |
double | getOpenDefaultPendTime () |
void | openPrepare () |
void | openNoWait () |
void | openNowAndWait (double _timeout) |
send the command to the ioc to open channels | |
void | openNow () |
bool | initCallbackComplete (std::vector< unsigned int > hV) |
bool | initCallbackComplete (unsigned int *hArray, unsigned int nelem) |
Establishes whether all callbacks from methodCallbacks.cpp have completed
| |
unsigned int | printHandle (unsigned int h) |
unsigned int | printHandles (void) |
unsigned int | printDisconnectedHandles (void) |
unsigned int | getDisconnectedHandles (std::vector< unsigned int > &dhV, std::vector< std::string > &pvV) |
void | printCAFEException_pv (CAFEException_pv &e) |
int | closeChannels (unsigned int *handleArray, unsigned int nHandles) |
Closes connection for channel within a ca_client_context and deletes corresponding handle The handle must be within the same context. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event handlers for subscriptions (i.e., monitors). The Conduit handle is erased. | |
int | closeChannels (std::vector< unsigned int > v) |
int | closeChannelsV (std::vector< unsigned int > v) |
int | close (unsigned int handle) |
Closes connection for channel within a ca_client_context and deletes corresponding handle The handle must be within the same context. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event handlers for subscriptions (i.e. monitors). The Conduit handle is erased. | |
int | closeChannel (unsigned int handle) |
int | closeChannels () |
Closes all channel connections within a ca_client_context and removes the corresponding handles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). Corresponding Conduit handles are erased. | |
int | closeChannels (ca_client_context *cctLocal) |
Closes all channel connections within the given ca_client_context and removes the corresponding handles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). Corresponding Conduit handles are erased. | |
int | close () |
int | closeHandlesV (std::vector< unsigned int > v) |
int | closeHandles (std::vector< unsigned int > v) |
int | closeHandles (unsigned int *handleArray, unsigned int nHandles) |
Closes given channel connections (even if in other threads) and deletes their handles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). All corresponding Conduit handles are erased. | |
int | closeHandle (unsigned int handle) |
Closes channel connections (even if in other thread) and deletes handle. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event handlers for subscriptions (i.e. monitors). The Conduit handle is erased. | |
int | closeHandles () |
Closes all channel connections (even if in other threads) and deletes all handles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). All Conduit handles are erased. | |
int | closeChannelKeepHandle (unsigned int handle) |
Closes channel connections (even if in other thread) but does not delete handle. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event handlers for subscriptions (i.e., monitors). The Conduit handle is NOT erased. | |
int | closeChannelsKeepHandles (unsigned int *handleArray, unsigned int nHandles) |
Closes given channel connections (even if in other threads) but does not deletes their handles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). All corresponding Conduit handles are not erased. | |
int | closeChannelsKeepHandlesV (std::vector< unsigned int > v) |
int | closeChannelsKeepHandles (std::vector< unsigned int > v) |
int | monitorStart (unsigned int handle, MonitorPolicy &mp) |
Monitor a PV. | |
int | monitorStart (unsigned int handle, unsigned int &monitorID) |
Monitor a PV. | |
int | monitorStart (unsigned int handle) |
int | monitorPulseID () |
Monitor PulseID PV. | |
int | monitorStopPulseID () |
Monitor PulseID PV. | |
int | monitorStop (unsigned int handle, MonitorPolicy mp) |
Stop monitor of a PV. | |
int | monitorStop (unsigned int handle, unsigned int monitorID) |
Stop monitor of a PV. | |
int | monitorStopWithID (unsigned int handle, unsigned int monitorID) |
int | monitorStop (unsigned int handle) |
Stop all monitors for this handle. | |
int | monitorStop () |
Stop all monitors. | |
int | monitorStopAll () |
int | monitorStop (ca_client_context *ccc) |
Stop all monitors for the given ca_client_context. | |
int | monitorStart (unsigned int *handleArray, unsigned int nelem) |
int | monitorStart (unsigned int *handleArray, unsigned int nelem, int *statusArray, MonitorPolicy *mpV) |
Monitor an array of PV with parameters set by MonitorPolicy objects. | |
int | monitorStart (unsigned int *handleArray, unsigned int nelem, int *statusArray, unsigned int *monitorIDArray) |
Monitor an array of PV with parameters with default policies. | |
int | monitorStart (std::vector< unsigned int > handleV, std::vector< int > &statusV, std::vector< MonitorPolicy > &mpV) |
Monitor an array of PV with parameters set by MonitorPolicy objects. | |
int | monitorStart (std::vector< unsigned int > handleV, std::vector< int > &statusV, std::vector< unsigned int > &monitorIDV) |
Monitor an array of PV with default MonitorPolicy object parameters. | |
int | monitorStop (unsigned int *handleArray, unsigned int nelem, int *statusArray) |
Stop all monitors for this array of handles. | |
int | monitorStop (std::vector< unsigned int > handleV, std::vector< int > &statusV) |
Stop all monitors for a vector of handles. | |
int | monitorStop (unsigned int *handleArray, unsigned int nelem) |
MonitorPolicy * | createMonitorPolicyArray (const unsigned int nmp) |
int | terminate () |
Closes all channels within a given context and all handles for all contexts Shuts down the local channel access client context and frees allocated resources contextDestroy is not essential as resources are normally automatically released by the system. | |
int | terminate (ca_client_context *cctLocal) |
Closes all channels within the given context and their respective handles Shuts down the given channel access client context and frees allocated resources contextDestroy is not essential as resources are normally automatically released by the system. | |
unsigned int | getHandleFromPV (const char *pv) |
const char * | getPVFromHandle (unsigned int handle) |
unsigned int | getHandleFromPVWithinGroup (const char *pv, unsigned int grh) |
bool | isEnum (unsigned int handle) |
bool | isValid (unsigned int handle) |
bool | allChannelsConnected () |
bool | isConnected (unsigned int handle) |
bool | isChannelConnected (unsigned int handle) |
int | getChannelInfo (unsigned int handle, ChannelRegalia &channelInfo) |
chid | getChannelID (unsigned int handle) |
ca_client_context * | getClientContext (const char *pvname) |
ca_client_context * | getClientContext (unsigned int handle) |
int | attachContext (ca_client_context *ccc) |
int | attachContextByPVName (const char *pvname) |
int | attachContextByHandle (unsigned int handle) |
int | updateAccessRead (unsigned int handle, int ar) |
int | updateAccessWrite (unsigned int handle, int aw) |
bool | getReadAccess (unsigned int handle) |
bool | getWriteAccess (unsigned int handle) |
void | printStatusMessage (int status) |
int | printStatus (unsigned int handle, int status) |
print status information of given handle | |
int | printStatusIfError (unsigned int handle, int status) |
print status information of given handle only on error | |
int | printStatus (unsigned int *handleArray, unsigned int nelem, int *statusArray) |
print status information of given handles | |
int | printStatusIfError (unsigned int *handleArray, unsigned int nelem, int *statusArray) |
print status information of given handles only on error | |
int | printStatus (std::vector< unsigned int > handleV, std::vector< int > statusV) |
print status information of given handles | |
int | printStatusIfError (std::vector< unsigned int > handleV, std::vector< int > statusV) |
print status information of given handles only on error | |
int | printStatus (const char *pv, int status) |
print status information of given pv | |
int | printStatusIfError (const char *pv, int status) |
print status information of given pv only on error | |
int | printStatus (const char *pvArray, unsigned int nelem, int *statusArray) |
print status information of given PVs | |
int | printStatusIfError (const char *pvArray, unsigned int nelem, int *statusArray) |
print status information of given PVs only on error | |
int | printStatus (std::vector< std::string > pvV, std::vector< int > statusV) |
print status information of given PVs | |
int | printStatusIfError (std::vector< std::string > pvV, std::vector< int > statusV) |
print status information of given PVs only on error | |
int | setPVAlias (unsigned int handle, const char *pv) throw (CAFEException_open) |
Defines a pv alias for pv and adds this to multi-index hash table. | |
PVDataHolder * | getPVData (std::vector< unsigned int > handleArray) |
Creates a pseudo group from input handles and initalizes PVdataHolder array; \ method to be preceded by getV(v) and followed by e.g.getCachePVArrayNoWait(v, pvd). | |
int | collectionDefine (const char *collectionName, std::vector< std::string > deviceV) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV. | |
int | collectionDefine (const char *collectionName, std::vector< const char * > deviceV) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV. | |
int | collectionDefine (const char *collectionName, pv_string_t *deviceArray, unsigned int deviceLength) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV. | |
int | collectionFetch (const char *collectionName, std::vector< std::string > &deviceListV) |
Connect::collectionFetch - retrieves Collection. | |
int | collectionFetch (const char *collectionName, std::vector< const char * > &deviceListV) |
Connect::collectionFetch - retrieves Collection. | |
int | collectionFetch (const char *collectionName, deviceCollection &dC) |
Connect::collectionFetch - retrieves Collection. | |
std::vector< deviceCollection > | getCollections () const |
int | collectionMemberList (const char *collectionName, boost::shared_ptr< pv_string_t[]> &list, unsigned int &listLength) |
Connect::collectionMemberList - lists the members of the given collection . | |
int | collectionList (boost::shared_ptr< pv_string_t[]> &clist, unsigned int &listLength) |
Connect::collectionList - lists all collection in global vector deviceCollectionV . | |
int | collectionMemberList (const char *collectionName, std::vector< std::string > &list) |
Connect::collectionMemberList - lists the members of the given collection. | |
int | collectionList (std::vector< std::string > &clist) |
Connect::collectionList - lists all collections in global vector deviceCollectionV. | |
int | devicePositionOrderedMultiMap (const char *collectionName, std::multimap< float, std::string > &posDev) |
Connect::devicePositionOrderedMultiMap - returns a map of devices and their positions. | |
int | devicePositionMap (const char *collectionName, std::map< float, std::string > &posDev) |
Connect::devicePositionMap - returns a map of devices and their positions. | |
int | devicePositionV (const char *collectionName, std::vector< std::string > &dev, std::vector< float > &pos) |
Connect::devicePositionV - returns a vector of devices and their positions. | |
int | fetchIndexOfCollectionMember (const char *collectionName, const char *deviceName) |
Connect::fetchIndexOfCollectionMember. | |
bool | isGroup (const char *) |
Connect::isGroup - Test const char * to determine if input 'name' is a garoup. | |
bool | isCollection (const char *) |
Connect::isCollection - Test const char * to determine if input 'name' is a collection. | |
int | groupOpen (const char *pv, unsigned int &groupHandle) throw (CAFEException_groupOpen) |
Establishes virtual circuit to epics process variable for each group member by calling Connect::open(pv, &handle). | |
int | groupOpen (PVGroup &pvgroup, unsigned int &groupHandle) throw (CAFEException_groupOpen) |
int | groupClose (unsigned int groupHandle) |
int | groupClose () |
int | groupCloseAll () |
int | groupHandleErase () |
int | groupHandleErase (ca_client_context *ccc) |
int | groupCombine (const char *newGroupName, const char *groupName1, const char *groupName2) |
Connect::groupCombine - Combines two groups to form a new group. | |
int | groupCombine (const char *newGroupName, std::vector< char * > groupName) |
Connect::groupCombine - Combines individual groups to form a new group. | |
std::vector< std::string > | generateChannelList (std::vector< std::string > inputStringV) |
std::vector< std::string > | getFromGlobalChannelList (std::vector< std::string >) |
int | groupDefine (const char *groupName, const char *collectionName, std::vector< std::string > attributeV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, const char *collectionName, std::vector< const char * > attributeV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, const char *collectionName, pv_string_t *attributeArray, unsigned short attributeLength) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, const char *collectionName, pv_string_t attribute) |
int | groupDefine (const char *groupName, std::vector< std::string > deviceV, std::vector< std::string > attributeV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, std::vector< const char * > deviceV, std::vector< const char * > attributeV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, pv_string_t *deviceArray, unsigned int deviceLength, pv_string_t *attributeArray, unsigned short attributeLength) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, std::vector< std::string > pvArrayV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, std::vector< const char * > pvArrayV) |
Connect::groupDefine. | |
int | groupDefine (const char *groupName, pv_string_t *pvArray, unsigned int pvArrayLength) |
Connect::groupDefine. | |
int | groupMemberList (const char *groupName, boost::shared_ptr< pv_string_t[]> &list, unsigned int &listLength) |
Connect::groupMemberList - lists the members of the given group User responsible for deleting list array. | |
int | groupList (boost::shared_ptr< pv_string_t[]> &glist, unsigned int &listLength) |
Connect::groupList - lists all groups in global vector PVGroupV . | |
int | groupMemberList (const char *groupName, std::vector< std::string > &list) |
Connect::groupMemberList - lists the members of the given group. | |
int | groupList (std::vector< std::string > &glist) |
Connect::groupList - lists all groups in global vector PVGroupV. | |
int | fetchIndexOfGroupMember (const char *groupName, const char *pv) |
Connect::fetchIndexOfGroupMember. | |
void | setDeviceAttributeDeliminator (std::string d) |
std::string | getDeviceAttributeDeliminator () const |
Public Attributes | |
PrintErrorPolicy | printErrorPolicy |
ChannelCreatePolicy | channelCreatePolicy |
ChannelOpenPolicy | channelOpenPolicy |
ChannelOpenPolicy | channelClosePolicy |
ChannelOpenPolicy | channelMonitorPolicy |
ChannelOpenPolicy | channelOpenGroupPolicy |
ChannelRequestPolicy | channelRequestPolicyMasterPut |
ChannelRequestPolicy | channelRequestPolicyMasterGet |
ChannelRequestPolicy | channelRequestPolicyMasterGetCtrl |
ChannelGetActionWhenMonitorPolicy | channelGetActionWhenMonitorPolicyMaster |
Protected Member Functions | |
int | createChannel (unsigned int handle, const char *pv, chid &pCh) |
int | createHandle (const char *pv, ca_client_context *ccc, unsigned int &handle) throw (CAFEException_pv) |
int | contextDestroy () |
Shuts down a channel access client context and frees allocated resources Not essential as resources are normally automatically released by the system. This invokes the connection_handler callback function. | |
int | contextDestroy (ca_client_context *cctLocal) |
Closes channels for the given channel access client context. Shuts down the 'local' channel access client context and frees allocated resources Note that in thread:stop, these two contexts are different!! Not essential as resources are normally automatically released by the system. This invokes the connection_handler callback function. | |
unsigned short | epicsVersion (unsigned short &major, unsigned short &minor, unsigned short &patch) |
int | createChannelWithinGroup (unsigned int handle, const char *pv, chid &pCh) |
int | createHandleWithinGroup (const char *pv, ca_client_context *ccc, unsigned int &_handle) throw (CAFEException_pv) |
Connect::createHandleWithinGroup. | |
Static Protected Member Functions | |
static void | callbackHandlerAccessRights (struct access_rights_handler_args args) |
static void | callbackHandlerException (struct exception_handler_args args) |
Protected Attributes | |
int | status |
CAFEStatus | cafeStatus |
CAFEStatusSeverity | cafeStatusSeverity |
CAFEGlobalAlarmSeverity | epicsAlarmSeverity |
CAFEGlobalAlarmCondition | epicsAlarmStatus |
cafeConduit_set::iterator | itcs |
cafeGroup_set::iterator | itgs |
CAFEDataTypeCode | cafeDataTypeCode |
ExceptionsHelper | exceptionsHelper |
PolicyHelper | policyHelper |
HandleHelper | handleHelper |
Helper | helper |
std::string | deviceAttributeDeliminator |
bool | pyCafeFlag |
Connect::Connect | ( | ) | [inline] |
References channelClosePolicy, channelMonitorPolicy, channelOpenGroupPolicy, channelOpenPolicy, DEFAULT_DEVICE_ATTRIBUTE_DELIMINATOR, DEFAULT_TIMEOUT_PEND_EVENT, DEFAULT_TIMEOUT_PEND_IO, DEFAULT_TIMEOUT_SG_PEND_EVENT, deviceAttributeDeliminator, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_SUBSCRIPTION, CAFENUM::FLUSH_AFTER_EACH_GROUP_CREATION, pyCafeFlag, ChannelOpenPolicy::setPolicy(), CAFENUM::WITH_FLUSH_IO, CAFENUM::WITH_PEND_IO, and CAFENUM::WITH_POLL.
int Connect::_ca_flush_io | ( | ) | [inline] |
int Connect::_ca_pend_event | ( | double | t | ) | [inline] |
int Connect::_ca_pend_io | ( | double | t | ) | [inline] |
int Connect::_ca_poll | ( | ) | [inline] |
int Connect::attachContext | ( | ca_client_context * | ccc | ) | [inline] |
References ECAFE_NULLCONTEXT.
References ECAFE_NULLCONTEXT, and getClientContext().
int Connect::attachContextByPVName | ( | const char * | pvname | ) | [inline] |
References ECAFE_NULLCONTEXT, and getClientContext().
void Connect::callbackHandlerAccessRights | ( | struct access_rights_handler_args | args | ) | [static, protected] |
Callback function for callbackHandlerAccessRights
Modifies Conduit object accordingly
Callback handler for the event of a change of R/W access rights
R3.14 documentation states that the callback handler is called
args | output: access_rights_handler_args parameters |
References cafeMutex, cs, long, and MUTEX.
Referenced by createChannel(), and createChannelWithinGroup().
void Connect::callbackHandlerException | ( | struct exception_handler_args | args | ) | [static, protected] |
Callback function for callbackHandlerException Modifies CAFEConduit object accordingly
args | output: exception_handler_args parameters |
References long, and PVNAME_SIZE.
Referenced by createChannel(), and createChannelWithinGroup().
int Connect::close | ( | ) | [inline] |
References closeChannels().
Referenced by closeChannel(), createHandle(), and createHandleWithinGroup().
Closes connection for channel within a ca_client_context and deletes corresponding handle
The handle must be within the same context.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event handlers for subscriptions (i.e. monitors).
The Conduit handle is erased.
handle | input |
References cafeMutex, channelClosePolicy, cs, ECAFE_INVALID_HANDLE, ECAFE_NULLCONTEXT, ECAFE_WRONG_CA_CONTEXT, ChannelOpenPolicy::getTimeout(), ICAFE_NORMAL, itcs, MUTEX, and status.
Closes channel connections (even if in other thread) but does not delete handle.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event handlers for subscriptions (i.e., monitors).
The Conduit handle is NOT erased.
handle | input |
References cafeMutex, channelClosePolicy, ChannelRegalia::channelID, cs, ECAFE_INVALID_HANDLE, ChannelOpenPolicy::flushSendBufferNow(), ICAFE_CA_OP_CONN_DOWN, ICAFE_CS_CLOSED, ICAFE_NORMAL, itcs, monitorStop(), MUTEX, ChannelRegalia::setCafeConnectionState(), ChannelRequestStatus::setCallbackKind(), ChannelRegalia::setConnectFlag(), ChannelRegalia::setConnectionState(), and status.
int Connect::closeChannels | ( | ca_client_context * | cctLocal | ) |
Closes all channel connections within the given ca_client_context and removes the corresponding handles.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event subscriptions (for monitors).
Corresponding Conduit handles are erased.
References cafeMutex, channelClosePolicy, cs, ECAFE_NULLCONTEXT, ChannelOpenPolicy::getTimeout(), ICAFE_NORMAL, itcs, MUTEX, and status.
int Connect::closeChannels | ( | ) |
Closes all channel connections within a ca_client_context and removes the corresponding handles.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event subscriptions (for monitors).
Corresponding Conduit handles are erased.
References ECAFE_NULLCONTEXT.
Referenced by close(), closeChannels(), closeChannelsV(), contextDestroy(), and terminate().
References closeChannels().
Closes connection for channel within a ca_client_context and deletes corresponding handle
The handle must be within the same context.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event handlers for subscriptions (i.e., monitors).
The Conduit handle is erased.
handleArray | input: array of handles | |
nHandles | input: size of array |
References cafeMutex, channelClosePolicy, cs, ECAFE_NULLCONTEXT, ChannelOpenPolicy::getTimeout(), ICAFE_NORMAL, MUTEX, and status.
References closeChannelsKeepHandles().
Referenced by closeChannelsKeepHandles().
Closes given channel connections (even if in other threads) but does not deletes their handles.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event subscriptions (for monitors).
All corresponding Conduit handles are not erased.
handleArray | input: unsigned int * | |
nHandles | input: unsigned int |
References cafeMutex, channelClosePolicy, ChannelRegalia::channelID, cs, ChannelOpenPolicy::flushSendBufferNow(), ICAFE_CA_OP_CONN_DOWN, ICAFE_CS_CLOSED, ICAFE_NORMAL, itcs, monitorStop(), MUTEX, ChannelRegalia::setCafeConnectionState(), ChannelRequestStatus::setCallbackKind(), ChannelRegalia::setConnectFlag(), ChannelRegalia::setConnectionState(), and status.
Referenced by closeChannelsKeepHandlesV().
References closeChannelsKeepHandles().
References closeChannels().
Closes channel connections (even if in other thread) and deletes handle.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event handlers for subscriptions (i.e. monitors).
The Conduit handle is erased.
handle | input |
References cafeMutex, channelClosePolicy, cs, ECAFE_INVALID_HANDLE, ChannelOpenPolicy::getTimeout(), ICAFE_NORMAL, itcs, MUTEX, and status.
int Connect::closeHandles | ( | ) |
Closes all channel connections (even if in other threads) and deletes all handles.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event subscriptions (for monitors).
All Conduit handles are erased.
References cafeMutex, channelClosePolicy, cs, ChannelOpenPolicy::getTimeout(), itcs, MUTEX, and status.
Referenced by closeHandlesV(), groupClose(), and terminate().
Closes given channel connections (even if in other threads) and deletes their handles.
Note that this does NOT cause the channel's disconnect handler to be called.
It does however invoke event subscriptions (for monitors).
All corresponding Conduit handles are erased.
handleArray | input: unsigned int * | |
nHandles | input: unsigned int |
References cafeMutex, channelClosePolicy, cs, ChannelOpenPolicy::getTimeout(), ICAFE_NORMAL, itcs, MUTEX, and status.
References closeHandles().
Referenced by closeHandles(), and main().
References closeHandles().
int Connect::collectionDefine | ( | const char * | collectionName, | |
pv_string_t * | deviceList, | |||
unsigned int | deviceListLength | |||
) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV.
collectionName | input: define collection name | |
deviceList | input: array of pv_string_t that comprises the collection of devices | |
deviceListLength | input: size of deviceList array |
References deviceCollection::cMembers, deviceCollectionV, collectionMember::deviceName, ECAFE_COLLECTION_PREV_DEF, ICAFE_NORMAL, and deviceCollection::name.
int Connect::collectionDefine | ( | const char * | collectionName, | |
std::vector< const char * > | deviceListV | |||
) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV.
collectionName | input: define collection name | |
deviceListV | input: vector list of const char * that comprise the collection of devices |
References deviceCollection::cMembers, deviceCollectionV, collectionMember::deviceName, ECAFE_COLLECTION_PREV_DEF, ICAFE_NORMAL, and deviceCollection::name.
int Connect::collectionDefine | ( | const char * | collectionName, | |
std::vector< std::string > | deviceListV | |||
) |
Connect::collectionDefine: Add collection to global vector, deviceCollectionV.
collectionName | input: define collection name | |
deviceListV | input: vector list of strings that comprise the collection of devices |
References deviceCollection::cMembers, deviceCollectionV, collectionMember::deviceName, ECAFE_COLLECTION_PREV_DEF, ICAFE_NORMAL, and deviceCollection::name.
Referenced by main().
int Connect::collectionFetch | ( | const char * | collectionName, | |
deviceCollection & | dC | |||
) |
Connect::collectionFetch - retrieves Collection.
collectionName | input: collection name | |
dC | ouput: deviceCollection class |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::collectionFetch | ( | const char * | collectionName, | |
std::vector< const char * > & | deviceListV | |||
) |
Connect::collectionFetch - retrieves Collection.
collectionName | input: collection name | |
deviceListV | ouput: vector of const char * containing collection members |
References deviceCollectionV, ECAFE_EMPTY_COLLECTION, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::collectionFetch | ( | const char * | collectionName, | |
std::vector< std::string > & | deviceListV | |||
) |
Connect::collectionFetch - retrieves Collection.
collectionName | input: collection name | |
deviceListV | ouput: vector of strings containing collection members |
References deviceCollectionV, ECAFE_EMPTY_COLLECTION, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
Referenced by groupDefine().
int Connect::collectionList | ( | std::vector< std::string > & | clist | ) |
Connect::collectionList - lists all collections in global vector deviceCollectionV.
clist | output: vector of collection names (string) |
References deviceCollectionV, and ICAFE_NORMAL.
int Connect::collectionList | ( | boost::shared_ptr< pv_string_t[]> & | clist, | |
unsigned int & | listLength | |||
) |
Connect::collectionList - lists all collection in global vector deviceCollectionV
.
clist | output: array of collection names (pv_string_t) | |
listLength | output: length of clist array |
References deviceCollectionV, and ICAFE_NORMAL.
Referenced by main().
int Connect::collectionMemberList | ( | const char * | collectionName, | |
std::vector< std::string > & | list | |||
) |
Connect::collectionMemberList - lists the members of the given collection.
collectionName | input: name of collection | |
list | output: vector of devices (string) |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::collectionMemberList | ( | const char * | collectionName, | |
boost::shared_ptr< pv_string_t[]> & | list, | |||
unsigned int & | listLength | |||
) |
Connect::collectionMemberList - lists the members of the given collection
.
collectionName | input: name of Collection | |
list | output: array of device names (pv_string_t) | |
listLength,: | length of list array |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::contextDestroy | ( | ca_client_context * | cctLocal | ) | [protected] |
Closes channels for the given channel access client context.
Shuts down the 'local' channel access client context and frees allocated resources
Note that in thread:stop, these two contexts are different!!
Not essential as resources are normally automatically released by the system.
This invokes the connection_handler callback function.
References closeChannels(), ECAFE_NULLCONTEXT, and ICAFE_NORMAL.
int Connect::contextDestroy | ( | ) | [protected] |
Shuts down a channel access client context and frees allocated resources Not essential as resources are normally automatically released by the system. This invokes the connection_handler callback function.
References closeChannels(), ECAFE_NULLCONTEXT, and ICAFE_NORMAL.
Referenced by terminate().
Establishes virtual circuit to epics process variable
handle | input | |
pv | input: process variable | |
pCh | output: channel identifier (chid) |
References __METHOD__, ADD_EXCEPTION_EVENT, cafeMutex, cafeStatus, callbackHandlerAccessRights(), callbackHandlerException(), channelCreatePolicy, channelOpenPolicy, cs, ECAFE_INVALID_HANDLE, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, ChannelOpenPolicy::flushSendBufferNow(), ChannelRequestStatus::getCallbackProgressKind(), HandleHelper::getChannelRequestStatusGet(), ChannelCreatePolicy::getHandler(), ChannelCreatePolicy::getPriority(), HandleHelper::getPVFromHandle(), ChannelOpenPolicy::getTimeout(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), handleHelper, MUTEX, CAFENUM::PENDING, CAFEStatus::report(), and status.
int Connect::createChannelWithinGroup | ( | unsigned int | _handle, | |
const char * | pv, | |||
chid & | pCh | |||
) | [protected] |
Connect::createChannelWithinGroup (as for createChannel)
Establishes virtual circuit to epics process variable
_handle | input | |
pv | input: process variable | |
pCh | output: channel identifier (chid) |
References __METHOD__, ADD_EXCEPTION_EVENT, cafeMutex, cafeStatus, callbackHandlerAccessRights(), callbackHandlerException(), channelCreatePolicy, cs, ECAFE_INVALID_HANDLE, ChannelCreatePolicy::getHandler(), ChannelCreatePolicy::getPriority(), MUTEX, CAFEStatus::report(), and status.
int Connect::createHandle | ( | const char * | pv, | |
ca_client_context * | ccc, | |||
unsigned int & | handle | |||
) | throw (CAFEException_pv) [protected] |
Creates handle and calls createChannel to establish virtual circuit to epics process variable
pv | input: process variable | |
ccc | input: ca_client_context | |
handle | input: handle |
CAFEException_pv | if unable to create channel virtual circuit |
Conduit cc = *(p.first);
_handle=cc.getHandle();
References __METHOD__, cafeMutex, close(), cs, ECAFE_HASH_UNIQUEID_EXISTS, ECAFE_NULLCHID, Conduit::handleNext, and MUTEX.
int Connect::createHandleWithinGroup | ( | const char * | pv, | |
ca_client_context * | ccc, | |||
unsigned int & | _handle | |||
) | throw (CAFEException_pv) [protected] |
Connect::createHandleWithinGroup.
pv | input: process variable | |
ccc | input: ca_client_context | |
_handle | input: handle |
References __METHOD__, cafeMutex, close(), cs, ECAFE_HASH_UNIQUEID_EXISTS, ECAFE_NULLCHID, Conduit::handleNext, ICAFE_NORMAL, and MUTEX.
MonitorPolicy* Connect::createMonitorPolicyArray | ( | const unsigned int | nmp | ) | [inline] |
int Connect::devicePositionMap | ( | const char * | collectionName, | |
std::map< float, std::string > & | posDev | |||
) |
Connect::devicePositionMap - returns a map of devices and their positions.
collectionName | input: name of collection | |
posDev | output: map of devices (string) and their positions (float) - not ordered |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
Referenced by main().
int Connect::devicePositionOrderedMultiMap | ( | const char * | collectionName, | |
std::multimap< float, std::string > & | posDev | |||
) |
Connect::devicePositionOrderedMultiMap - returns a map of devices and their positions.
collectionName | input: name of collection | |
posDev | output: multimap of devices (string) and their positions (float) - odered in position |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, flip_map(), helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::devicePositionV | ( | const char * | collectionName, | |
std::vector< std::string > & | dev, | |||
std::vector< float > & | pos | |||
) |
Connect::devicePositionV - returns a vector of devices and their positions.
collectionName | input: name of collection | |
dev | output: vector of devices (string) | |
pos | output: vector of devices positions (float) |
References deviceCollectionV, ECAFE_UNKNOWN_COLLECTION, helper, ICAFE_NORMAL, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
unsigned short Connect::epicsVersion | ( | unsigned short & | major, | |
unsigned short & | minor, | |||
unsigned short & | patch | |||
) | [protected] |
Establishes virtual circuit to epics process variable
major | input | |
minor | input | |
patch | input |
References EPICS_MAJOR, EPICS_MINOR, and EPICS_PATCH.
int Connect::fetchIndexOfCollectionMember | ( | const char * | collectionName, | |
const char * | deviceName | |||
) |
Connect::fetchIndexOfCollectionMember.
collectionName | input: collection name | |
deviceName | input: (const char *) device name |
References deviceCollectionV, helper, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::fetchIndexOfGroupMember | ( | const char * | groupName, | |
const char * | pv | |||
) |
Connect::fetchIndexOfGroupMember.
groupName | input: group name | |
pv | input: (const char *) process variable |
References helper, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
std::vector<std::string> Connect::generateChannelList | ( | std::vector< std::string > | inputStringV | ) | [inline] |
References getFromGlobalChannelList().
CAFEStatus Connect::getCafeStatus | ( | ) | [inline] |
References cafeStatus.
Referenced by printStatusMessage().
CAFEStatusSeverity Connect::getCafeStatusSeverity | ( | ) | [inline] |
References cafeStatusSeverity.
int Connect::getChannelInfo | ( | unsigned int | handle, | |
ChannelRegalia & | channelInfo | |||
) | [inline] |
References cs, ECAFE_INVALID_HANDLE, and ICAFE_NORMAL.
Referenced by CAFE::get(), CAFE::getCache(), main(), and CAFE::set().
ca_client_context* Connect::getClientContext | ( | unsigned int | handle | ) | [inline] |
References HandleHelper::getContextFromHandle(), and handleHelper.
ca_client_context* Connect::getClientContext | ( | const char * | pvname | ) | [inline] |
References HandleHelper::getContextFromPV(), and handleHelper.
Referenced by attachContextByHandle(), and attachContextByPVName().
std::vector<deviceCollection> Connect::getCollections | ( | ) | const [inline] |
References deviceCollectionV.
std::string Connect::getDeviceAttributeDeliminator | ( | ) | const [inline] |
References deviceAttributeDeliminator.
unsigned int Connect::getDisconnectedHandles | ( | std::vector< unsigned int > & | dhV, | |
std::vector< std::string > & | pvV | |||
) | [inline] |
References HandleHelper::getDisconnectedHandles(), and handleHelper.
CAFEGlobalAlarmCondition Connect::getEpicsAlarmCondition | ( | ) | [inline] |
References epicsAlarmStatus.
CAFEGlobalAlarmSeverity Connect::getEpicsAlarmSeverity | ( | ) | [inline] |
References epicsAlarmSeverity.
CAFEGlobalAlarmCondition Connect::getEpicsAlarmStatus | ( | ) | [inline] |
References epicsAlarmStatus.
vector< std::string > Connect::getFromGlobalChannelList | ( | std::vector< std::string > | searchList | ) |
References globalChannelList.
Referenced by generateChannelList().
unsigned int Connect::getHandleFromPV | ( | const char * | pv | ) | [inline] |
References HandleHelper::getHandleFromPV(), and handleHelper.
Referenced by main().
References HandleHelper::getHandleFromPVWithinGroup(), and handleHelper.
HandleHelper Connect::getHandleHelper | ( | ) | [inline] |
References handleHelper.
Referenced by CAFE::getCache(), main(), and CAFE::snapshot2XML().
HandleHelper Connect::getInfo | ( | ) | [inline] |
References handleHelper.
Referenced by main(), and CAFE::snapshot2XML().
References HandleHelper::getNelemClient(), and handleHelper.
Referenced by main().
References HandleHelper::getNelemNative(), and handleHelper.
Referenced by main().
References HandleHelper::getNelemRequest(), and handleHelper.
Referenced by main().
double Connect::getOpenDefaultPendTime | ( | ) | [inline] |
References channelOpenPolicy, and ChannelOpenPolicy::getDefaultTimeout().
PolicyHelper Connect::getPolicy | ( | ) | [inline] |
References policyHelper.
PolicyHelper Connect::getPolicyHelper | ( | ) | [inline] |
References policyHelper.
Referenced by main().
PVDataHolder * Connect::getPVData | ( | std::vector< unsigned int > | handleArray | ) |
Creates a pseudo group from input handles and initalizes PVdataHolder array; \ method to be preceded by getV(v) and followed by e.g.getCachePVArrayNoWait(v, pvd).
handleArray | input: array of handles |
References __METHOD__, PVHolder::alarmSeverity, PVHolder::alarmStatus, cafeStatus, cs, deviceAttributeDeliminator, ECAFE_INVALID_HANDLE, PVHolder::getAttribute(), PVHolder::getDevice(), PrintErrorPolicy::getInvalidHandle(), PVGroup::getPVData(), HandleHelper::getPVFromHandle(), groupPseudoMap, handleHelper, helper, ICAFE_NORMAL, MemberMap::insert(), PVGroup::memberMap, PVGroup::name, PVGroup::npv, printErrorPolicy, PVGroup::pvdata, PVGROUP_PSEUDO_SIZE, PVGroupPseudo, Helper::removeLeadingAndTrailingSpacesPseudo(), CAFEStatus::report(), PVDataHolder::setNelem(), PVHolder::status, status, and PVDataHolder::ts.
const char* Connect::getPVFromHandle | ( | unsigned int | handle | ) | [inline] |
References HandleHelper::getPVFromHandle(), and handleHelper.
Referenced by main().
bool Connect::getPyCafe | ( | ) | [inline] |
References pyCafeFlag.
int Connect::getStatus | ( | void | ) | [inline] |
References status.
Referenced by CAFE::snapshot2XML().
int Connect::groupClose | ( | ) |
Closes all channel connections associated within a group, for all groupHandles. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). All Conduit handles are erased.
References HandleHelper::getGroupHandleFromGroupName(), handleHelper, ICAFE_NORMAL, and PVGroupV.
Referenced by groupCloseAll().
Closes all channel connections associated within a group, indentified by it's groupHandle. Note that this does NOT cause the channel's disconnect handler to be called. It does however invoke event subscriptions (for monitors). All Conduit handles are erased.
groupHandle | input |
References cafeMutex, closeHandles(), ECAFE_INVALID_GROUP_HANDLE, HandleHelper::getGroupNameFromGroupHandle(), gs, handleHelper, ICAFE_NORMAL, MUTEX, and PVGroupV.
Referenced by main().
int Connect::groupCloseAll | ( | ) | [inline] |
References groupClose().
int Connect::groupCombine | ( | const char * | newGroupName, | |
std::vector< char * > | groupNameV | |||
) |
Connect::groupCombine - Combines individual groups to form a new group.
newGroupName | input: new group name | |
groupNameV | input: vector of groups |
References ECAFE_GROUP_PREV_DEF, ECAFE_UNKNOWN_GROUP, helper, ICAFE_NORMAL, MemberMap::insert(), PVGroup::memberMap, PVGroup::name, PVGroup::npv, PVGroup::pvdata, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::groupCombine | ( | const char * | newGroupName, | |
const char * | groupName1, | |||
const char * | groupName2 | |||
) |
Connect::groupCombine - Combines two groups to form a new group.
newGroupName | input: new group name | |
groupName1 | input: already existing group | |
groupName2 | input: already existing group |
References ECAFE_GROUP_PREV_DEF, ECAFE_UNKNOWN_GROUP, helper, ICAFE_NORMAL, MemberMap::insert(), PVGroup::memberMap, PVGroup::name, PVGroup::npv, PVGroup::pvdata, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::groupDefine | ( | const char * | groupName, | |
pv_string_t * | pvArray, | |||
unsigned int | pvArrayLength | |||
) |
groupName | input: new group name | |
pvArray | input: array of process variables (pv_string_t) | |
pvArrayLength,: | length of pvArray |
References deviceAttributeDeliminator, ECAFE_GROUP_PREV_DEF, ChannelDeviceAttribute::getAttribute(), ChannelDeviceAttribute::getDevice(), helper, ICAFE_NORMAL, ChannelDeviceAttribute::init(), MemberMap::insert(), PVGroup::memberMap, PVGroup::name, PVGroup::npv, PVGroup::pvdata, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::groupDefine | ( | const char * | groupName, | |
std::vector< const char * > | pvArrayV | |||
) |
groupName | input: new group name | |
pvArrayV | input: vector of process varaibles (const char *) |
References groupDefine(), and status.
int Connect::groupDefine | ( | const char * | groupName, | |
std::vector< std::string > | pvArrayV | |||
) |
groupName | input: new group name | |
pvArrayV | input: vector of process varaibles (string) |
References groupDefine(), and status.
int Connect::groupDefine | ( | const char * | groupName, | |
pv_string_t * | deviceArray, | |||
unsigned int | nDevice, | |||
pv_string_t * | attributeArray, | |||
unsigned short | nAttribute | |||
) |
groupName | input: new group name | |
deviceArray | input: array of devices (pv_string_t) | |
nDevice | input : size of device array | |
attributeArray | input: array of attributes (pv_string_t *) | |
nAttribute | input: size of attribute array |
References deviceAttributeDeliminator, groupDefine(), and status.
int Connect::groupDefine | ( | const char * | groupName, | |
std::vector< const char * > | deviceV, | |||
std::vector< const char * > | attributeV | |||
) |
groupName | input: new group name | |
deviceV | input: vector of devices (const char *) | |
attributeV | input: vector of attributes (const char *) |
References deviceAttributeDeliminator, groupDefine(), and status.
int Connect::groupDefine | ( | const char * | groupName, | |
std::vector< std::string > | deviceV, | |||
std::vector< std::string > | attributeV | |||
) |
groupName | input: new group name | |
deviceV | input: vector of devices (string) | |
attributeV | input: vector of attributes (strig) |
References deviceAttributeDeliminator, groupDefine(), and status.
int Connect::groupDefine | ( | const char * | groupName, | |
const char * | collectionName, | |||
pv_string_t | attribute | |||
) | [inline] |
References groupDefine().
int Connect::groupDefine | ( | const char * | groupName, | |
const char * | collectionName, | |||
pv_string_t * | attributeArray, | |||
unsigned short | attributeLength | |||
) |
groupName | input: new group name | |
collectionName | input: name of already existing collection | |
attributeArray | input: array of attributes (pv_string_t *) | |
attributeLength | input: size of input array |
References collectionFetch(), groupDefine(), and ICAFE_NORMAL.
int Connect::groupDefine | ( | const char * | groupName, | |
const char * | collectionName, | |||
std::vector< const char * > | attributeV | |||
) |
groupName | input: new group name | |
collectionName | input: name of already existing collection | |
attributeV | input: vector of attributes (const char *) |
References collectionFetch(), groupDefine(), and ICAFE_NORMAL.
int Connect::groupDefine | ( | const char * | groupName, | |
const char * | collectionName, | |||
std::vector< std::string > | attributeV | |||
) |
groupName | input: new group name | |
collectionName | input: name of already existing collection | |
attributeV | input: vector of attributes (string) |
References collectionFetch(), and ICAFE_NORMAL.
Referenced by groupDefine(), and main().
int Connect::groupHandleErase | ( | ca_client_context * | ccc | ) |
Erases groupHandle (assumes associated connections are already closed) All Groupconduit handles are erased withingt the give ca_client_context
ccc | input: ca_client_context * |
References cafeMutex, gs, ICAFE_NORMAL, itgs, and MUTEX.
int Connect::groupHandleErase | ( | ) |
Erases groupHandles All Groupconduit handles are erased
References cafeMutex, gs, ICAFE_NORMAL, itgs, and MUTEX.
Referenced by terminate().
int Connect::groupList | ( | std::vector< std::string > & | glist | ) |
Connect::groupList - lists all groups in global vector PVGroupV.
glist | output: vector of group names (string) |
References ICAFE_NORMAL, and PVGroupV.
int Connect::groupList | ( | boost::shared_ptr< pv_string_t[]> & | glist, | |
unsigned int & | listLength | |||
) |
Connect::groupList - lists all groups in global vector PVGroupV
.
glist | output: shared_ptr to array of group names (pv_string_t) | |
listLength,: | length of glist array |
References ICAFE_NORMAL, and PVGroupV.
Referenced by main().
int Connect::groupMemberList | ( | const char * | groupName, | |
std::vector< std::string > & | list | |||
) |
Connect::groupMemberList - lists the members of the given group.
groupName | input: group name | |
list | output: vector of process variables (string) |
References ECAFE_UNKNOWN_GROUP, helper, ICAFE_NORMAL, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::groupMemberList | ( | const char * | groupName, | |
boost::shared_ptr< pv_string_t[]> & | list, | |||
unsigned int & | listLength | |||
) |
Connect::groupMemberList - lists the members of the given group
User responsible for deleting list array.
groupName | input: group name | |
list | output: shared_ptr to array of process variables (pv_string_t) | |
listLength,: | length of list array |
References ECAFE_UNKNOWN_GROUP, helper, ICAFE_NORMAL, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
Referenced by CAFE::group2XML().
int Connect::groupOpen | ( | PVGroup & | pvgroup, | |
unsigned int & | groupHandle | |||
) | throw (CAFEException_groupOpen) |
Establishes virtual circuit to epics process variable for each group member by calling Connect::open(pv, &handle)
pvgroup | input/output: PVGroup object | |
groupHandle | output: (unique) group handle |
CAFEException | re-throws CAFEException from open |
int Connect::groupOpen | ( | const char * | groupName, | |
unsigned int & | groupHandle | |||
) | throw (CAFEException_groupOpen) |
Establishes virtual circuit to epics process variable for each group member by calling Connect::open(pv, &handle).
groupName | input: (unique) name of the group | |
groupHandle | output: (unique) group handle |
CAFEException_groupOpen | re-throws CAFEException from open |
References __METHOD__, cafeMutex, cs, ECAFE_HASH_UNIQUEID_EXISTS, ECAFE_UNKNOWN_GROUP, CAFENUM::FLUSH_AFTER_EACH_GROUP_CREATION, CAFEException_groupOpen::groupEx, PVGroup::groupHandle, gs, CAFEException_pv::handle, ICAFE_NORMAL, init(), MUTEX, NMEMBER_PER_SEC_SG_PEND_EVENT, PVGroup::npv, CAFEException_pv::pv, PVHolder::pv, PVGroup::pvdata, PVGroupV, CAFEException_pv::statusCode, and CAFEException_pv::statusCodeText.
Referenced by main().
void Connect::groupOpenNow | ( | ) | [inline] |
References channelOpenGroupPolicy, ChannelOpenPolicy::getTimeout(), and openGroupNowAndWait().
void Connect::groupOpenNowAndWait | ( | double | _timeout, | |
std::vector< unsigned int > | gH | |||
) | [inline] |
References openGroupNowAndWaitForInputGroups().
void Connect::groupOpenNowAndWait | ( | double | _timeout | ) | [inline] |
References openGroupNowAndWait().
void Connect::groupOpenPrepare | ( | ) | [inline] |
int Connect::init | ( | ca_preemptive_callback_select | select | ) | throw (CAFEException_init) |
Called once prior to making any channel access calls
select | input: enum ca_preemptive_callback_select {ca_disable_preemptive_callback=0, ca_enable_preemptive_callback=1} |
CAFEbad_allocMem | ECA_ALLOCMEM if memory space could not be allocated |
References __METHOD__, and initPyCafe().
int Connect::init | ( | ) | throw (CAFEException_init) |
Called once prior to making any channel access calls
Specifies that preemptive callback is allowed: ca_enable_preemptive_callback
CAFEException_init | ECA_ALLOCMEM if memory space could not be allocated |
References __METHOD__, initPyCafe(), status, and CAFEException_init::what().
Referenced by groupOpen(), and main().
Establishes whether all callbacks from methodCallbacks.cpp have completed
hArray | output: array of reference handles to Conduit objects | |
nHandles | input: size ofhArray |
References __METHOD__, ChannelRequestStatus::getCallbackProgressKind(), HandleHelper::getChannelRequestStatusGet(), HandleHelper::getChannelRequestStatusGetCtrl(), HandleHelper::getChannelRequestStatusGetSTSACK(), HandleHelper::getPVFromHandle(), handleHelper, HandleHelper::isChannelConnected(), and CAFENUM::PENDING.
bool Connect::initCallbackComplete | ( | std::vector< unsigned int > | hV | ) | [inline] |
bool Connect::isChannelConnected | ( | unsigned int | handle | ) | [inline] |
References cs.
Referenced by isConnected(), and main().
bool Connect::isCollection | ( | const char * | collectionID | ) |
Connect::isCollection - Test const char * to determine if input 'name' is a collection.
collectionID | input: collection name |
References deviceCollectionV, helper, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
bool Connect::isConnected | ( | unsigned int | handle | ) | [inline] |
References isChannelConnected().
bool Connect::isEnum | ( | unsigned int | handle | ) | [inline] |
References handleHelper, and HandleHelper::isEnum().
bool Connect::isGroup | ( | const char * | groupID | ) |
Connect::isGroup - Test const char * to determine if input 'name' is a garoup.
groupID | input: group name |
References helper, PVGroupV, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
int Connect::monitorPulseID | ( | ) |
Monitor PulseID PV.
References CAFENUM::DBR_TIME, CALLBACK_CAFE::handlerPulseID(), ICAFE_NORMAL, monitorStart(), open(), MonitorPolicy::setCafeDbrType(), MonitorPolicy::setDataType(), MonitorPolicy::setHandler(), MonitorPolicy::setMask(), MonitorPolicy::setUserArgs(), SF_PULSE_ID_PV, SF_WITH_PULSE_ID, and status.
int Connect::monitorStart | ( | std::vector< unsigned int > | handleV, | |
std::vector< int > & | statusV, | |||
std::vector< unsigned int > & | monitorIDV | |||
) |
Monitor an array of PV with default MonitorPolicy object parameters.
handleV | input: Array of handles to conduit object | |
statusV | output: Array of statuses | |
monitorIDV | output: Array of unique MonitorIDs |
References channelMonitorPolicy, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, monitorStart(), and ChannelOpenPolicy::setWhenToFlushSendBuffer().
int Connect::monitorStart | ( | std::vector< unsigned int > | handleV, | |
std::vector< int > & | statusV, | |||
std::vector< MonitorPolicy > & | mpV | |||
) |
Monitor an array of PV with parameters set by MonitorPolicy objects.
handleV | input: Array of handles to conduit object | |
statusV | output: Array of statuses | |
mpV | input/output: Array of MonitorPolicy objects identifying the monitor subscription |
References __METHOD__, channelMonitorPolicy, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, monitorStart(), and ChannelOpenPolicy::setWhenToFlushSendBuffer().
int Connect::monitorStart | ( | unsigned int * | handleArray, | |
unsigned int | nelem, | |||
int * | statusArray, | |||
unsigned int * | monitorIDArray | |||
) |
Monitor an array of PV with parameters with default policies.
handleArray | input: Array of handles to conduit object | |
nelem | input: Number of elements in the Array | |
statusArray,: | Array of statuses | |
monitorIDArray | output: Array of MonitorIDs to be used by monitorStop |
References channelMonitorPolicy, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, monitorStart(), and ChannelOpenPolicy::setWhenToFlushSendBuffer().
int Connect::monitorStart | ( | unsigned int * | handleArray, | |
unsigned int | nelem, | |||
int * | statusArray, | |||
MonitorPolicy * | mpArray | |||
) |
Monitor an array of PV with parameters set by MonitorPolicy objects.
handleArray | input: Array of handles to conduit object | |
nelem | input: Number of elements in the Array | |
statusArray,: | Array of statuses | |
mpArray | input/output: Array of MonitorPolicy objects identifying the monitor subscription |
References channelMonitorPolicy, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, monitorStart(), and ChannelOpenPolicy::setWhenToFlushSendBuffer().
References monitorStart(), and status.
References monitorStart().
Monitor a PV.
handle | input: handle | |
monitorID | output: monitorID identifying the monitor subscription |
References __METHOD__, cafeStatus, cs, ECAFE_INVALID_HANDLE, ECAFE_MAX_MONITORS_PER_CHAN_EXCEEDED, ECAFE_NULLEVID, MonitorPolicy::getEventID(), MonitorPolicy::getID(), PrintErrorPolicy::getInvalidHandle(), ICAFE_CS_CLOSED, ICAFE_CS_NEVER_CONN, ICAFE_NORMAL, int, MAX_NO_MONITORS_PER_CHANNEL, monitorStart(), printErrorPolicy, CAFEStatus::report(), MonitorPolicy::setDataType(), MonitorPolicy::setNelem(), MonitorPolicy::setUserArgs(), and status.
int Connect::monitorStart | ( | unsigned int | handle, | |
MonitorPolicy & | mp | |||
) |
Monitor a PV.
handle | input: handle | |
mp | input/output: MonitorPolicy object identifying the monitor subscription |
References __METHOD__, CAFE_NOT_REQUESTED, cafeMutex, cafeStatus, channelMonitorPolicy, cs, ECAFE_INVALID_HANDLE, ECAFE_MAX_MONITORS_PER_CHAN_EXCEEDED, ECAFE_NULLEVID, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_SUBSCRIPTION, ChannelOpenPolicy::flushSendBufferNow(), MonitorPolicy::getDataType(), MonitorPolicy::getEventID(), MonitorPolicy::getID(), PrintErrorPolicy::getInvalidHandle(), MonitorPolicy::getNelem(), MonitorPolicy::getUserArgs(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_MONITOR_DELAYED_AS_CONN_DOWN, ICAFE_NORMAL, MAX_NO_MONITORS_PER_CHANNEL, MUTEX, printErrorPolicy, CAFEStatus::report(), MonitorPolicy::setDataType(), MonitorPolicy::setNelem(), MonitorPolicy::setStatus(), MonitorPolicy::setUserArgs(), and status.
Referenced by Instant< CTYPE >::compareAndMatchMany(), CAFE::groupMonitorStart(), main(), Instant< CTYPE >::matchMany(), monitorPulseID(), monitorStart(), Instant< CTYPE >::setAndMatch(), and Instant< CTYPE >::setAndMatchMany().
References monitorStop(), and status.
Stop all monitors for a vector of handles.
handleV | input: vector of handles | |
statusV | output: vector of statuses |
References ICAFE_NORMAL, and monitorStop().
Stop all monitors for this array of handles.
handleArray | input: array of handle | |
nelem | input: array of elements | |
statusArray | output: array of statuses |
References ICAFE_NORMAL, and monitorStop().
int Connect::monitorStop | ( | ca_client_context * | cctLocal | ) |
Stop all monitors for the given ca_client_context.
References channelClosePolicy, cs, ECAFE_NULLCONTEXT, ChannelOpenPolicy::getTimeout(), itcs, monitorStop(), and status.
int Connect::monitorStop | ( | ) |
Stop all monitors.
References channelClosePolicy, cs, ChannelOpenPolicy::getTimeout(), itcs, and status.
Referenced by closeChannelKeepHandle(), closeChannelsKeepHandles(), CAFE::groupMonitorStop(), monitorStop(), monitorStopAll(), monitorStopPulseID(), monitorStopWithID(), and terminate().
Stop all monitors for this handle.
handle | input: handle |
References __METHOD__, cafeMutex, cafeStatus, channelMonitorPolicy, cs, ECAFE_INVALID_HANDLE, ECAFE_NULLEVID, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_SUBSCRIPTION, ChannelOpenPolicy::flushSendBufferNow(), PrintErrorPolicy::getInvalidHandle(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, int, MUTEX, printErrorPolicy, CAFEStatus::report(), and status.
Stop monitor of a PV.
handle | input: handle | |
monitorID | input: monitorID identifying the monitor subscription |
References __METHOD__, cafeMutex, cafeStatus, channelMonitorPolicy, cs, ECAFE_INVALID_HANDLE, ECAFE_NULLEVID, CAFENUM::FLUSH_AFTER_EACH_CHANNEL_SUBSCRIPTION, ChannelOpenPolicy::flushSendBufferNow(), PrintErrorPolicy::getInvalidHandle(), ChannelOpenPolicy::getWhenToFlushSendBuffer(), ICAFE_NORMAL, MUTEX, printErrorPolicy, CAFEStatus::report(), and status.
int Connect::monitorStop | ( | unsigned int | handle, | |
MonitorPolicy | mp | |||
) |
Stop monitor of a PV.
handle | input: handle | |
mp | input: MonitorPolicy identifying the monitor subscription |
References MonitorPolicy::getMonitorID(), and monitorStop().
Referenced by Instant< CTYPE >::compareAndMatchMany(), main(), Instant< CTYPE >::matchMany(), Instant< CTYPE >::setAndMatch(), and Instant< CTYPE >::setAndMatchMany().
int Connect::monitorStopAll | ( | ) | [inline] |
References monitorStop().
int Connect::monitorStopPulseID | ( | ) |
Monitor PulseID PV.
References HandleHelper::getHandleFromPV(), handleHelper, ICAFE_NORMAL, monitorStop(), SF_PULSE_ID_PV, and status.
References monitorStop().
int Connect::open | ( | std::vector< std::string > | pvV, | |
std::vector< unsigned int > & | handleV | |||
) | throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
pvV | input: vector of process variables (string) | |
handleV | output: vector of reference handle to Conduit objects |
CAFEException_open | if unable to create channel virtual circuit |
References CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ICAFE_NORMAL, and openNow().
int Connect::open | ( | std::vector< const char * > | pvV, | |
std::vector< unsigned int > & | handleV | |||
) | throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
pvV | input: vector of process variables (char *) | |
handleV | output: vector of reference handle to Conduit objects |
CAFEException_open | if unable to create channel virtual circuit |
References CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ICAFE_NORMAL, and openNow().
int Connect::open | ( | const char ** | pvArray, | |
unsigned int * | handleArray, | |||
const unsigned int | nHandles | |||
) | throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
pvArray | input: array of process variables (PVNAME_SIZE) | |
handleArray | output: array of reference handle to Conduit objects | |
nHandles | input: size of pvArray |
CAFEException_open | if unable to create channel virtual circuit |
References CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ICAFE_NORMAL, and openNow().
int Connect::open | ( | const char * | _pv, | |
const char * | _pvAlias, | |||
unsigned int & | handle | |||
) | throw (CAFEException_open) |
Establishes virtual circuit to epics process variable and defines its pv alias name
_pv | input: process variable | |
_pvAlias | input: process variable alias | |
handle | output: reference handle to Conduit object |
CAFEException_pvOpen | if unable to create channel virtual circuit |
int Connect::open | ( | const char * | _pv, | |
unsigned int & | handle | |||
) | throw (CAFEException_open) |
Establishes virtual circuit to epics process variable
_pv | input: process variable | |
handle | output: reference handle to Conduit object |
CAFEException_pvOpen | if unable to create channel virtual circuit |
References __METHOD__, ICAFE_NORMAL, CAFEException_open::pvEx, and PVNAME_SIZE.
int Connect::open | ( | const std::string * | pvArrayS, | |
unsigned int * | handleArray, | |||
const unsigned int | nHandles | |||
) | throw (CAFEException_open) |
Establishes virtual circuits for a vector of epics process variables
pvArrayS | input: array of process variables givenas "strings" | |
handleArray | output: array of reference handle to Conduit objects | |
nHandles | input: size of pvArray |
CAFEException_open | if unable to create channel virtual circuit |
References CAFENUM::FLUSH_AFTER_EACH_CHANNEL_CREATION, CAFENUM::FLUSH_DESIGNATED_TO_CLIENT, ICAFE_NORMAL, and openNow().
int Connect::open | ( | const std::string | pvS, | |
const std::string | pvAliasS, | |||
unsigned int & | handle | |||
) | throw (CAFEException_open) [inline] |
References open().
int Connect::open | ( | const std::string | pvS, | |
unsigned int & | handle | |||
) | throw (CAFEException_open) [inline] |
Referenced by CAFE::get(), CAFE::getCtrl(), main(), monitorPulseID(), open(), openV(), and CAFE::set().
void Connect::openGroupNow | ( | ) | [inline] |
References channelOpenGroupPolicy, ChannelOpenPolicy::getTimeout(), and openGroupNowAndWait().
void Connect::openGroupNowAndWait | ( | double | _timeout | ) |
send the command to the ioc to open channels within all group(s).
_timeout | input: max pend time to establish connections |
References HandleHelper::allChannelsWithinGroupConnected(), channelOpenGroupPolicy, CAFENUM::FLUSH_NOW, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getTimeout(), handleHelper, ChannelOpenPolicy::setFlushSendBufferKind(), ChannelOpenPolicy::setTimeout(), ChannelOpenPolicy::setWhenToFlushSendBuffer(), and CAFENUM::WITH_POLL.
Referenced by groupOpenNow(), groupOpenNowAndWait(), and openGroupNow().
void Connect::openGroupNowAndWaitForInputGroups | ( | double | _timeout, | |
std::vector< unsigned int > | gHandles | |||
) |
send the command to the ioc to open channels within given group(s).
_timeout | input: max pend time to establish connections | |
gHandles | input: vector of groups handles |
References HandleHelper::allChannelsWithinGroupConnectedV(), channelOpenGroupPolicy, CAFENUM::FLUSH_NOW, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getTimeout(), handleHelper, ChannelOpenPolicy::setFlushSendBufferKind(), ChannelOpenPolicy::setTimeout(), ChannelOpenPolicy::setWhenToFlushSendBuffer(), and CAFENUM::WITH_POLL.
Referenced by groupOpenNowAndWait().
void Connect::openGroupPrepare | ( | ) | [inline] |
void Connect::openMonitorNow | ( | ) | [inline] |
void Connect::openMonitorNowAndWait | ( | double | _timeout | ) | [inline] |
void Connect::openMonitorPrepare | ( | ) | [inline] |
void Connect::openNow | ( | ) | [inline] |
References channelOpenPolicy, ChannelOpenPolicy::getTimeout(), and openNowAndWait().
void Connect::openNoWait | ( | ) | [inline] |
void Connect::openNowAndWait | ( | double | _timeout | ) |
send the command to the ioc to open channels
_timeout | input: max pend time to establish connections |
References HandleHelper::allChannelsConnected(), channelOpenPolicy, CAFENUM::FLUSH_NOW, ChannelOpenPolicy::flushSendBufferNow(), ChannelOpenPolicy::getTimeout(), handleHelper, ChannelOpenPolicy::setFlushSendBufferKind(), ChannelOpenPolicy::setTimeout(), ChannelOpenPolicy::setWhenToFlushSendBuffer(), and CAFENUM::WITH_POLL.
void Connect::openPrepare | ( | ) | [inline] |
int Connect::openV | ( | std::vector< std::string > | s, | |
std::vector< unsigned int > & | i | |||
) | throw (CAFEException_open) [inline] |
References open().
void Connect::printCAFEException_pv | ( | CAFEException_pv & | e | ) | [inline] |
References exceptionsHelper, and ExceptionsHelper::printCAFEException_pv().
unsigned int Connect::printDisconnectedHandles | ( | void | ) | [inline] |
References handleHelper, and HandleHelper::printDisconnectedHandles().
Referenced by main().
References handleHelper, and HandleHelper::printHandle().
unsigned int Connect::printHandles | ( | void | ) | [inline] |
References handleHelper, and HandleHelper::printHandles().
Referenced by main().
print status information of given PVs
pvV | input: vector of pvs for which handles to conduit objects are to be matched | |
statusV | input: vector of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given PVs
pvArray | input: array of PVs for which handles to conduit objects are to be matched | |
nelem | input: size of array of PVs | |
statusArray | input: array of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given pv
pv | input: pv for which handle is to be matched | |
status | input: reporting status |
References ECAFE_INVALID_HANDLE, HandleHelper::getHandleFromPV(), handleHelper, and printStatus().
print status information of given handles
handleV | input: vector of handles to conduit objects | |
statusV | input: vector of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given handles
handleArray | input: array of handles to conduit objects | |
nelem | input: size of array of handles | |
statusArray | input: array of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given handle
handle | input: handle to Conduit object | |
status | input: reporting status |
References cafeStatus, cs, ECAFE_INVALID_HANDLE, PrintErrorPolicy::getInvalidHandle(), ICAFE_NORMAL, printErrorPolicy, and CAFEStatus::report().
Referenced by main(), printStatus(), and printStatusIfError().
print status information of given PVs only on error
pvV | input: vector of PVs for which handles to Conduit objects are to be matched | |
statusV | input: vector of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given PVs only on error
pvArray | input: array of PVnames | |
nelem | input: size of array of handles | |
statusArray | input: array of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given pv only on error
pv | input: pv for which handle is to be matched | |
status | input: reporting status |
References ECAFE_INVALID_HANDLE, HandleHelper::getHandleFromPV(), handleHelper, ICAFE_NORMAL, and printStatus().
print status information of given handles only on error
handleV | input: vector of Handles to Conduit objects | |
statusV | input: vector of statuses |
References ICAFE_NORMAL, and printStatus().
int Connect::printStatusIfError | ( | unsigned int * | handleArray, | |
unsigned int | nelem, | |||
int * | statusArray | |||
) |
print status information of given handles only on error
handleArray | input: array of Handles to Conduit objects | |
nelem | input: size of array of handles | |
statusArray | input: array of statuses |
References ICAFE_NORMAL, and printStatus().
print status information of given handle only on error
handle | input: handle to Conduit object | |
status | input: reporting status |
References ICAFE_NORMAL, and printStatus().
Referenced by main().
void Connect::printStatusMessage | ( | int | status | ) | [inline] |
References CAFEStatus::csc, CAFEStatus::csi, getCafeStatus(), CAFEStatusCode::message(), and CAFEStatusInfo::message().
void Connect::setDeviceAttributeDeliminator | ( | std::string | d | ) | [inline] |
References deviceAttributeDeliminator.
double Connect::setOpenDefaultPendTime | ( | double | _timeout | ) | [inline] |
References channelOpenPolicy, and ChannelOpenPolicy::setDefaultTimeout().
int Connect::setPVAlias | ( | unsigned int | handle, | |
const char * | _pvAlias | |||
) | throw (CAFEException_open) |
Defines a pv alias for pv and adds this to multi-index hash table.
handle | input: handle | |
_pvAlias | input: process variable alias |
CAFEException_pvOopen | if unable to set an alias |
References __METHOD__, cafeMutex, cs, ECAFE_INVALID_HANDLE, ECAFE_PVALIAS_INVALID, ECAFE_PVALIAS_PREV_DEF, ICAFE_NORMAL, MUTEX, CAFEException_open::pvEx, PVNAME_SIZE, and Helper::removeLeadingAndTrailingSpaces().
Referenced by main().
bool Connect::setPyCafe | ( | bool | b | ) | [inline] |
References pyCafeFlag.
int Connect::terminate | ( | ca_client_context * | cctLocal | ) |
Closes all channels within the given context and their respective handles
Shuts down the given channel access client context and frees allocated resources
contextDestroy is not essential as resources are normally automatically released by the system.
References cafeStatus, closeChannels(), contextDestroy(), ECAFE_NULLCONTEXT, groupHandleErase(), ICAFE_NORMAL, monitorStop(), and CAFEStatus::report().
int Connect::terminate | ( | ) |
Closes all channels within a given context and all handles for all contexts
Shuts down the local channel access client context and frees allocated resources
contextDestroy is not essential as resources are normally automatically released by the system.
References cafeStatus, closeHandles(), contextDestroy(), deviceCollectionV, ECAFE_NULLCONTEXT, globalChannelList, groupHandleErase(), ConduitGroup::groupHandleNext, groupPseudoMap, Conduit::handleNext, ICAFE_NORMAL, MonitorPolicy::idNext, monitorStop(), PVGroupPseudo, PVGroupV, and CAFEStatus::report().
Referenced by main().
References cafeMutex, cs, ECAFE_INVALID_HANDLE, ICAFE_NORMAL, and MUTEX.
References cafeMutex, cs, ECAFE_INVALID_HANDLE, ICAFE_NORMAL, and MUTEX.
CAFEDataTypeCode Connect::cafeDataTypeCode [protected] |
CAFEStatus Connect::cafeStatus [protected] |
Referenced by createChannel(), createChannelWithinGroup(), CAFE::get(), CAFE::getCache(), CAFE::getCacheFromPulseID(), CAFE::getCacheNoWait(), getCafeStatus(), CAFE::getCtrl(), CAFE::getCtrlCache(), getPVData(), CAFE::getWFAsString(), CAFE::getWFAsStringCache(), CAFE::groupAttach(), CAFE::groupFetch(), CAFE::groupGet(), CAFE::groupGetScalar(), CAFE::groupMonitorStart(), CAFE::groupMonitorStop(), CAFE::groupSet(), monitorStart(), monitorStop(), printStatus(), CAFE::resetCallbackGet(), CAFE::resetCallbackPut(), CAFE::set(), terminate(), and CAFE::waitForBundledEvents().
CAFEStatusSeverity Connect::cafeStatusSeverity [protected] |
Referenced by getCafeStatusSeverity().
Referenced by close(), closeChannelKeepHandle(), closeChannels(), closeChannelsKeepHandles(), closeHandle(), closeHandles(), Connect(), and monitorStop().
Referenced by createChannel(), createChannelWithinGroup(), and main().
Referenced by CAFE::CAFE().
Referenced by Connect(), createChannel(), getOpenDefaultPendTime(), main(), openNow(), openNoWait(), openNowAndWait(), openPrepare(), and setOpenDefaultPendTime().
std::string Connect::deviceAttributeDeliminator [protected] |
Referenced by Connect(), getDeviceAttributeDeliminator(), getPVData(), CAFE::groupAttach(), groupDefine(), and setDeviceAttributeDeliminator().
CAFEGlobalAlarmSeverity Connect::epicsAlarmSeverity [protected] |
Referenced by getEpicsAlarmSeverity().
CAFEGlobalAlarmCondition Connect::epicsAlarmStatus [protected] |
Referenced by getEpicsAlarmCondition(), and getEpicsAlarmStatus().
ExceptionsHelper Connect::exceptionsHelper [protected] |
Referenced by printCAFEException_pv().
HandleHelper Connect::handleHelper [protected] |
Referenced by createChannel(), CAFE::get(), CAFE::getCache(), getClientContext(), CAFE::getCtrl(), CAFE::getCtrlCache(), getDisconnectedHandles(), getHandleFromPV(), getHandleFromPVWithinGroup(), getHandleHelper(), getInfo(), getNelemClient(), getNelemNative(), getNelemRequest(), CAFE::getPVArray(), getPVData(), getPVFromHandle(), CAFE::getWFAsString(), CAFE::getWFAsStringCache(), CAFE::groupAttach(), groupClose(), CAFE::groupFetch(), CAFE::groupGet(), CAFE::groupSet(), initCallbackComplete(), isEnum(), monitorStopPulseID(), openGroupNowAndWait(), openGroupNowAndWaitForInputGroups(), openNowAndWait(), printDisconnectedHandles(), printHandle(), printHandles(), printStatus(), printStatusIfError(), CAFE::set(), CAFE::setNelemToOne(), CAFE::setNelemToPrevious(), CAFE::setNelemToRetrieveFromCacheToOne(), CAFE::setNelemToRetrieveFromCacheToPrevious(), and CAFE::setVVString().
Helper Connect::helper [protected] |
cafeConduit_set::iterator Connect::itcs [protected] |
cafeGroup_set::iterator Connect::itgs [protected] |
Referenced by groupHandleErase().
PolicyHelper Connect::policyHelper [protected] |
Referenced by CAFE::get(), getPolicy(), getPolicyHelper(), and CAFE::set().
Referenced by CAFE::get(), CAFE::getCache(), CAFE::getCacheFromPulseID(), CAFE::getCacheNoWait(), CAFE::getCtrl(), CAFE::getCtrlCache(), getPVData(), CAFE::getWFAsString(), CAFE::getWFAsStringCache(), monitorStart(), monitorStop(), printStatus(), CAFE::resetCallbackGet(), CAFE::resetCallbackPut(), and CAFE::set().
bool Connect::pyCafeFlag [protected] |
Referenced by Connect(), getPyCafe(), and setPyCafe().
int Connect::status [protected] |
Referenced by close(), closeChannelKeepHandle(), closeChannels(), closeChannelsKeepHandles(), closeHandle(), closeHandles(), createChannel(), createChannelWithinGroup(), CAFE::get(), CAFE::getCache(), CAFE::getCacheDouble(), CAFE::getCacheFromPulseID(), CAFE::getCacheNoWait(), CAFE::getCacheString(), HandleHelper::getCafeDbrType(), CAFE::getCtrl(), CAFE::getCtrlCache(), HandleHelper::getDataTypeRequest(), HandleHelper::getMonitorPolicyInWaitingVector(), HandleHelper::getMonitorPolicyVector(), CAFE::getPVArray(), getPVData(), CAFE::getScalars(), getStatus(), CAFE::getWFAsString(), CAFE::getWFAsStringCache(), CAFE::group2XML(), groupDefine(), CAFE::groupGetScalar(), init(), main(), monitorPulseID(), monitorStart(), monitorStop(), monitorStopPulseID(), CAFE::resetCallbackGet(), CAFE::resetCallbackPut(), CAFE::set(), HandleHelper::setCafeDbrType(), HandleHelper::setCafeDbrTypeV(), PolicyHelper::setChannelRequestPolicyGet(), PolicyHelper::setChannelRequestPolicyPut(), HandleHelper::setSTS(), and CAFE::waitForPut().