areaDetector 3-14
EPICS areaDetector framework
PVAttribute.h
Go to the documentation of this file.
1
2/* PVAttribute.h
3 *
4 * \author Mark Rivers
5 *
6 * \author University of Chicago
7 *
8 * \date April 30, 2009
9 *
10 */
11#ifndef INCPVAttributeH
12#define INCPVAttributeH
13
14#include <cadef.h>
15#include <epicsMutex.h>
16#include <epicsEvent.h>
17
18#include "NDAttribute.h"
19
21#define DBR_NATIVE -1
22
26public:
27 PVAttribute(const char *pName, const char *pDescription, const char *pSource, chtype dbrType);
28 PVAttribute(PVAttribute& attribute);
30 PVAttribute* copy(NDAttribute *pAttribute);
31 virtual int updateValue();
32 /* These callbacks must be public because they are called from C */
33 void connectCallback(struct connection_handler_args cha);
34 void monitorCallback(struct event_handler_args cha);
35 int report(FILE *fp, int details);
36
37private:
38 chid chanId;
39 evid eventId;
40 chtype dbrType;
41 NDAttrValue callbackValue;
42 char *callbackString;
43 bool connectedOnce;
44 epicsMutexId lock;
45};
46
47#endif /*INCPVAttributeH*/
#define ADCORE_API
Definition ADCoreAPI.h:41
NDAttribute class; an attribute has a name, description, source type, source string,...
Definition NDAttribute.h:96
virtual int updateValue()
Updates the current value of this attribute.
Definition NDAttribute.cpp:410
virtual NDAttribute * copy(NDAttribute *pAttribute)
Copies properties from this to pOut.
Definition NDAttribute.cpp:108
virtual int report(FILE *fp, int details)
Reports on the properties of the attribute.
Definition NDAttribute.cpp:419
Attribute that gets its value from an EPICS PV.
Definition PVAttribute.h:25
Union defining the values in an NDAttribute object.
Definition NDAttribute.h:72