Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
/*----- PROTECTED REGION ID(SupervisedID.h) ENABLED START -----*/
//=============================================================================
//
// file : SupervisedID.h
//
// description : Include for the SupervisedID class.
//
// project : Supervised ID: common interface for supervised insertion devices.
//
// $Author: claudio $
//
// $Revision: 1.2 $
// $Date: 2014-04-14 14:51:54 $
//
// SVN only:
// $HeadURL: $
//
// CVS only:
// $Source: /home/cvsadm/cvsroot/AbstractClasses7/SupervisedID/SupervisedID.h,v $
// $Log: SupervisedID.h,v $
// Revision 1.2 2014-04-14 14:51:54 claudio
// for 8.1.2.c and pogo-8
//
// Revision 1.1.1.1 2012-03-05 14:01:56 claudio
// frist import
//
//
//=============================================================================
// This file is generated by POGO
// (Program Obviously used to Generate tango Object)
//=============================================================================
#ifndef SUPERVISEDID_H
#define SUPERVISEDID_H
#include <tango.h>
/*----- PROTECTED REGION END -----*/ // SupervisedID.h
/**
* SupervisedID class description:
* This abstract class incapsulates the common interface for insertion devices used
* under ID supervisor. The "supervisor" can inhibi/allow the operations on the insertion device
* and impose limits on the permited range.
*/
namespace SupervisedID_ns
{
/*----- PROTECTED REGION ID(SupervisedID::Additional Class Declarations) ENABLED START -----*/
// Additional Class Declarations
/*----- PROTECTED REGION END -----*/ // SupervisedID::Additional Class Declarations
class SupervisedID : public TANGO_BASE_CLASS
{
/*----- PROTECTED REGION ID(SupervisedID::Data Members) ENABLED START -----*/
// Add your own data members
/*----- PROTECTED REGION END -----*/ // SupervisedID::Data Members
// Attribute data members
public:
// Constructors and destructors
public:
/**
* Constructs a newly device object.
*
* @param cl Class.
* @param s Device Name
*/
SupervisedID(Tango::DeviceClass *cl,string &s);
/**
* Constructs a newly device object.
*
* @param cl Class.
* @param s Device Name
*/
SupervisedID(Tango::DeviceClass *cl,const char *s);
/**
* Constructs a newly device object.
*
* @param cl Class.
* @param s Device name
* @param d Device description.
*/
SupervisedID(Tango::DeviceClass *cl,const char *s,const char *d);
/**
* The device object destructor.
*/
~SupervisedID() {delete_device();};
// Miscellaneous methods
public:
/*
* will be called at device destruction or at init command.
*/
void delete_device();
/*
* Initialize the device
*/
virtual void init_device();
/*
* Always executed method before execution command method.
*/
virtual void always_executed_hook();
// Attribute methods
public:
//--------------------------------------------------------
/*
* Method : SupervisedID::read_attr_hardware()
* Description : Hardware acquisition for attributes.
*/
//--------------------------------------------------------
virtual void read_attr_hardware(vector<long> &attr_list);
//--------------------------------------------------------
/*
* Method : SupervisedID::write_attr_hardware()
* Description : Hardware writing for attributes.
*/
//--------------------------------------------------------
virtual void write_attr_hardware(vector<long> &attr_list);
/**
* Attribute Enabled related methods
* Description: True when
*
* Data type: Tango::DevBoolean
* Attr type: Scalar
*/
virtual void read_Enabled(Tango::Attribute &attr) = 0;
virtual void write_Enabled(Tango::WAttribute &attr) = 0;
virtual bool is_Enabled_allowed(Tango::AttReqType type);
/**
* Attribute Ready related methods
* Description: true when operating condtions of the ID make it operable by the beamlines:
* - good flags and in range.
*
* Data type: Tango::DevBoolean
* Attr type: Scalar
*/
virtual void read_Ready(Tango::Attribute &attr) = 0;
virtual bool is_Ready_allowed(Tango::AttReqType type);
/**
* Attribute StatRF related methods
* Description: bit mask for compatibility with old style software
* Holds the ready and enabled bits together
*
* Data type: Tango::DevBoolean
* Attr type: Spectrum max = 32
*/
virtual void read_StatRF(Tango::Attribute &attr) = 0;
virtual bool is_StatRF_allowed(Tango::AttReqType type);
//--------------------------------------------------------
/**
* Method : SupervisedID::add_dynamic_attributes()
* Description : Add dynamic attributes if any.
*/
//--------------------------------------------------------
void add_dynamic_attributes();
// Command related methods
public:
/*----- PROTECTED REGION ID(SupervisedID::Additional Method prototypes) ENABLED START -----*/
// Additional Method prototypes
/*----- PROTECTED REGION END -----*/ // SupervisedID::Additional Method prototypes
};
/*----- PROTECTED REGION ID(SupervisedID::Additional Classes Definitions) ENABLED START -----*/
// Additional Classes definitions
/*----- PROTECTED REGION END -----*/ // SupervisedID::Additional Classes Definitions
} // End of namespace
#endif // SupervisedID_H