Scope
InputsDAQmx.h
1 #pragma once
2 
3 #include "ScopeDefines.h"
4 #include "Inputs.h"
5 #include "devices/daqmx/DAQmxTask.h"
6 #include "ScopeDatatypes.h"
7 
8 // Forward declarations
9 namespace scope {
10  class DaqChunk;
11  namespace parameters {
12  class InputsDAQmx;
13  class Scope;
14  }
15 }
16 
17 namespace scope {
18 
21  : public Inputs {
22 
23 protected:
26 
29 
30 public:
38  InputsDAQmx(const uint32_t& _area, const parameters::InputsDAQmx* const _inputparams, const parameters::Scope& _params);
39 
41  ~InputsDAQmx();
42 
43  void Start() override;
44 
45  void Stop() override;
46 
47  uint32_t StandardChunkSize() const override;
48 
49  int32_t Read(DaqChunk& _chunk, bool& _timedout, const double& _timeout) override;
50 };
51 
52 }
53 
Wraps hardware connection for signal input from PMTs.
Definition: Inputs.h:13
The master parameters class.
Definition: Scope.h:204
void Start() override
Start task.
Definition: InputsDAQmx.cpp:59
DAQmx::CDAQmxAnalogInTask task
The DAQmx task.
Definition: InputsDAQmx.h:25
void Stop() override
Stops task.
Definition: InputsDAQmx.cpp:63
uint32_t standardchunksize
the standard chunk size per channel for Read
Definition: InputsDAQmx.h:28
int32_t Read(DaqChunk &_chunk, bool &_timedout, const double &_timeout) override
Reads one chunk of samples for one area.
Definition: InputsDAQmx.cpp:71
A DaqChunk contains data from all channels sequentially.
Definition: DaqChunk.h:9
uint32_t StandardChunkSize() const override
Definition: InputsDAQmx.cpp:67
In here all declarations for all kinds of datatypes Scope needs.
~InputsDAQmx()
Stop and clear input tasks.
Definition: InputsDAQmx.cpp:54
Parameters for pixel acquisition with NI-DAQmx.
Definition: IO.h:58
InputsDAQmx(const uint32_t &_area, const parameters::InputsDAQmx *const _inputparams, const parameters::Scope &_params)
Creates a task for PMT signal acquisition with NI DAQmx.
Definition: InputsDAQmx.cpp:11
Wraps hardware connection for signal input from PMTs with NI-DAQmx.
Definition: InputsDAQmx.h:20
Wraps a DAQmx Analog Input Task.
Definition: DAQmxTask.h:258