1 #ifndef _Belle2_NSMVHandler_h
2 #define _Belle2_NSMVHandler_h
4 #include <daq/slc/nsm/NSMVar.h>
25 NSMVHandler(
const std::string& node,
const std::string& name,
26 bool useget,
bool useset)
27 : m_id(0), m_timestamp(0), m_node(node), m_name(name),
28 m_useget(useget), m_useset(useset), m_var(name) {}
32 virtual bool handleGet(
NSMVar& var)
37 virtual bool handleSet(
const NSMVar& var)
44 const std::string& getNode()
const {
return m_node; }
45 const std::string& getName()
const {
return m_name; }
46 bool useGet()
const {
return m_useget; }
47 bool useSet()
const {
return m_useset; }
48 void setUseGet(
bool use) { m_useget = use; }
49 void setUseSet(
bool use) { m_useset = use; }
50 int getTimeStamp()
const {
return m_timestamp; }
51 int getId()
const {
return m_id; }
52 void setNode(
const std::string& node) { m_node = node; }
53 void setId(
int id) { m_id = id; }
54 void set(
const NSMVar& var) { m_var = var; }
55 void set(
int val) { m_var = val; }
56 void set(
float val) { m_var = val; }
57 void set(
const std::string& val) { m_var = val; }
58 void set(
const std::vector<int>& val) { m_var = val; }
59 void set(
const std::vector<float>& val) { m_var = val; }
60 const NSMVar& get()
const {
return m_var; }
61 NSMVar& get() {
return m_var; }
62 NSMVar::Type getType()
const {
return m_var.getType(); }
63 const char* getTypeLabel()
const {
return m_var.getTypeLabel(); }
64 bool isDumped()
const {
return m_isdump; }
65 void setDumped(
bool isdump) { m_isdump = isdump; }
79 typedef std::map<std::string, NSMVHandler*> NSMVHandlerList;
85 bool useget,
bool useset,
int val = 0)
91 bool useget,
bool useset,
int val = 0)
99 virtual bool handleGet(
NSMVar& var);
100 virtual bool handleSet(
const NSMVar& var);
103 virtual bool handleGetInt(
int& val)
105 val = m_var.getInt();
108 virtual bool handleSetInt(
int val)
120 bool useget,
bool useset,
float val = 0)
126 bool useget,
bool useset,
float val = 0)
134 virtual bool handleGet(
NSMVar& var);
135 virtual bool handleSet(
const NSMVar& var);
138 virtual bool handleGetFloat(
float& val)
140 val = m_var.getFloat();
143 virtual bool handleSetFloat(
float val)
155 bool useget,
bool useset,
const std::string& val =
"")
161 bool useget,
bool useset,
const std::string& val =
"")
169 virtual bool handleGet(
NSMVar& var);
170 virtual bool handleSet(
const NSMVar& var);
173 virtual bool handleGetText(std::string& val)
175 val = m_var.getText();
178 virtual bool handleSetText(
const std::string& val)
190 bool useget,
bool useset,
191 const std::vector<int>& val = std::vector<int>())
197 bool useget,
bool useset,
198 const std::vector<int>& val = std::vector<int>())
206 virtual bool handleGet(
NSMVar& var);
207 virtual bool handleSet(
const NSMVar& var);
210 virtual bool handleGetIntArray(std::vector<int>& val);
211 virtual bool handleSetIntArray(
const std::vector<int>& val)
223 bool useget,
bool useset,
224 const std::vector<float>& val = std::vector<float>())
230 bool useget,
bool useset,
231 const std::vector<float>& val = std::vector<float>())
239 virtual bool handleGet(
NSMVar& var);
240 virtual bool handleSet(
const NSMVar& var);
243 virtual bool handleGetFloatArray(std::vector<float>& val);
244 virtual bool handleSetFloatArray(
const std::vector<float>& val)
258 const std::string& name,
259 const std::string& refname)
261 m_callback(callback), m_refname(refname) {}
265 virtual bool handleGet(
NSMVar& var);
266 virtual bool handleSet(
const NSMVar& var);
270 std::string m_refname;