mrfioc2  2.3.0
evgInput.h
Go to the documentation of this file.
1 #ifndef EVG_INPUT_H
2 #define EVG_INPUT_H
3 
4 #include <iostream>
5 #include <string>
6 #include <map>
7 
8 #include <epicsTypes.h>
9 #include "mrf/object.h"
10 
11 enum InputType {
12  NoneInp = 0,
16 };
17 
18 class evgInput : public mrf::ObjectInst<evgInput> {
19 public:
20  evgInput(const std::string&, const epicsUInt32, const InputType,
21  volatile epicsUInt8* const);
22  ~evgInput();
23 
24  /* locking done internally */
25  virtual void lock() const{};
26  virtual void unlock() const{};
27 
28  epicsUInt32 getNum() const;
29  InputType getType() const;
30 
31  void setExtIrq(bool);
32  bool getExtIrq() const;
33 
34  void setDbusMap(epicsUInt16, bool);
35  bool getDbusMap(epicsUInt16) const;
36 
37  void setSeqTrigMap(epicsUInt32);
38  epicsUInt32 getSeqTrigMap() const;
39 
40  void setTrigEvtMap(epicsUInt16, bool);
41  bool getTrigEvtMap(epicsUInt16) const;
42 
43 private:
44  const epicsUInt32 m_num;
45  const InputType m_type;
46  volatile epicsUInt8* const m_pInReg;
47 };
48 #endif //EVG_INPUT_H
InputType getType() const
Definition: evgInput.cpp:30
epicsUInt32 getNum() const
Definition: evgInput.cpp:25
virtual void unlock() const
Definition: evgInput.h:26
~evgInput()
Definition: evgInput.cpp:21
virtual void lock() const
Definition: evgInput.h:25
void setDbusMap(epicsUInt16, bool)
Definition: evgInput.cpp:50
void setTrigEvtMap(epicsUInt16, bool)
Definition: evgInput.cpp:100
epicsUInt32 getSeqTrigMap() const
Definition: evgInput.cpp:92
bool getExtIrq() const
Definition: evgInput.cpp:45
User implementation hook.
Definition: object.h:459
void setExtIrq(bool)
Definition: evgInput.cpp:35
bool getDbusMap(epicsUInt16) const
Definition: evgInput.cpp:68
bool getTrigEvtMap(epicsUInt16) const
Definition: evgInput.cpp:117
InputType
Definition: evgInput.h:11
evgInput(const std::string &, const epicsUInt32, const InputType, volatile epicsUInt8 *const)
Definition: evgInput.cpp:13
void setSeqTrigMap(epicsUInt32)
Definition: evgInput.cpp:78