TSPD-ADQ EPICS device support  1.2.0
ADQDevice.h
Go to the documentation of this file.
1 //
2 // Copyright (c) 2018 Cosylab d.d.
3 // This software is distributed under the terms found
4 // in file LICENSE.txt that is included with this distribution.
5 //
6 
7 #ifndef ADQDEVICE_H
8 #define ADQDEVICE_H
9 
10 #include "ADQAIChannel.h"
11 #include "ADQAIChannelGroup.h"
12 #include "ADQDefinition.h"
13 #include "ADQInfo.h"
14 
15 #include <ADQAPI.h>
16 #include <mutex>
17 #include <nds3/nds.h>
18 
26 class ADQDevice
27 {
28 public:
35  ADQDevice(nds::Factory& factory, const std::string& deviceName, const nds::namedParameters_t& parameters);
36  ~ADQDevice();
37 
38 private:
39  nds::Node m_node;
40 
41  // Pointer to ADQ device interface
42  ADQInterface* m_adqInterface;
43 
44  // ADQ Control Unit
45  void* m_adqCtrlUnit;
46 
47  // Vector of pointers to Group channel class
48  std::vector<std::shared_ptr<ADQAIChannelGroup>> m_adqChanGrpPtr;
49 };
50 
51 #endif /* ADQDEVICE_H */
ADQDevice::ADQDevice
ADQDevice(nds::Factory &factory, const std::string &deviceName, const nds::namedParameters_t &parameters)
ADQDevice class constructor.
Definition: ADQDevice.cpp:24
ADQDefinition.h
This file contains global objects (constants and macros). They are used in classes that include this ...
ADQInfo.h
This file defines ADQInfo class.
ADQDevice
This class creates a device that communicates with a digitizer. ADQ Control Unit is handled by this c...
Definition: ADQDevice.h:26
ADQAIChannelGroup.h
This file defines ADQAIChannelGroup class and streamingHeader_t struct.
ADQAIChannel.h
This file defines ADQAIChannel class.