68 virtual void exception (
70 int status,
const char * pContext,
79 virtual void completion (
83 virtual void exception (
85 const char * pContext,
unsigned type,
94 virtual void current (
98 virtual void exception (
100 const char *pContext,
unsigned type,
107 bool readPermit =
false,
108 bool writePermit =
false,
109 bool operatorConfirmationRequest =
false);
110 void setReadPermit ();
111 void setWritePermit ();
112 void setOperatorConfirmationRequest ();
113 void clrReadPermit ();
114 void clrWritePermit ();
115 void clrOperatorConfirmationRequest ();
116 bool readPermit ()
const;
117 bool writePermit ()
const;
118 bool operatorConfirmationRequest ()
const;
121 bool f_writePermit:1;
122 bool f_operatorConfirmationRequest:1;
130 virtual void serviceShutdownNotify (
132 virtual void accessRightsNotify (
134 virtual void exception (
137 virtual void readException (
141 virtual void writeException (
177 virtual void destroy (
181 virtual unsigned getName (
183 char * pBuf,
unsigned bufLen )
const throw () = 0;
185 virtual const char * pName (
189 unsigned level )
const = 0;
190 virtual void initiateConnect (
192 virtual unsigned requestMessageBytesPending (
203 const void *pValue ) = 0;
208 virtual void subscribe (
219 virtual void ioCancel (
223 virtual void ioShow (
225 const ioid &,
unsigned level )
const = 0;
226 virtual short nativeType (
232 virtual unsigned searchAttempts (
234 virtual double beaconPeriod (
236 virtual double receiveWatchdogDelay (
240 virtual bool connected (
242 virtual unsigned getHostName (
244 char * pBuf,
unsigned bufLength )
const throw ();
246 virtual const char * pHostName (
280 virtual unsigned circuitCount (
282 virtual void selfTest (
284 virtual unsigned beaconAnomaliesSinceProgramStart (
296 virtual void exception (
298 const char * pFileName,
unsigned lineNo ) = 0;
300 virtual int varArgsPrintFormated (
const char * pformat, va_list args )
const = 0;
302 virtual void attachToClientCtx () = 0;
303 virtual void callbackProcessingInitiateNotify () = 0;
304 virtual void callbackProcessingCompleteNotify () = 0;
330 return this->callback;
334 bool readPermit,
bool writePermit,
bool operatorConfirmationRequest) :
335 f_readPermit ( readPermit ), f_writePermit ( writePermit ),
336 f_operatorConfirmationRequest ( operatorConfirmationRequest ) {}
340 this->f_readPermit =
true;
345 this->f_writePermit =
true;
350 this->f_operatorConfirmationRequest =
true;
355 this->f_readPermit =
false;
360 this->f_writePermit =
false;
365 this->f_operatorConfirmationRequest =
false;
370 return this->f_readPermit;
375 return this->f_writePermit;
380 return this->f_operatorConfirmationRequest;
383 #endif // ifndef INC_cacIO_H
LIBCA_API int epicsStdCall ca_v42_ok(chid chan)
static const priLev priorityMin
static const priLev priorityMax
pvd::StructureConstPtr type
CallbackGuard(epicsMutex &mutex)
cacChannel(cacChannelNotify &)
static const priLev priorityOPI
LIBCA_API epicsThreadPrivateId caClientCallbackThreadId
void setOperatorConfirmationRequest()
static const priLev priorityLinksDB
LIBCA_API void epicsStdCall caInstallDefaultService(cacService &service)
APIs for the epicsMutex mutual exclusion semaphore.
bool operatorConfirmationRequest() const
unsigned long arrayElementCount
void clrOperatorConfirmationRequest()
C++ and C descriptions for a thread.
caAccessRights(bool readPermit=false, bool writePermit=false, bool operatorConfirmationRequest=false)
static const priLev priorityArchive
static const priLev priorityDefault
cacChannelNotify & notify() const