Scope
OutputsDAQmx.h
1 #pragma once
2 
3 #include "Outputs.h"
4 #include "devices/daqmx/DAQmxTask.h"
5 #include "ScopeDatatypes.h"
6 
7 // Forward declarations
8 namespace scope {
9  namespace parameters {
10  class OutputsDAQmx;
11  class Scope;
12  }
13 }
14 
15 namespace scope {
16 
19  : public Outputs {
20 
21 protected:
24 
25 public:
33  OutputsDAQmx(const uint32_t& _area, const parameters::OutputsDAQmx& _outputparams, const parameters::Scope& _params);
34 
36  ~OutputsDAQmx();
37 
39  void Start() override;
40 
42  void Stop() override;
43 
49  int32_t Write(const std::vector<int16_t>& _xyzp, const uint32_t& _blocks = 1) override;
50 
51 };
52 
55 public:
59 };
60 
61 }
62 
Parameters for x/y-scanner/fast z/Pockels signal generation with NI-DAQmx where all output channels (...
Definition: IO.h:552
The master parameters class.
Definition: Scope.h:204
void Start() override
Start task, last the first output task (all other are waiting for it as their start trigger)...
ZeroOutputsDAQmx(const parameters::OutputsDAQmx &_params)
Create a simple tasks for writing a scalar zero to all channels.
OutputsDAQmx(const uint32_t &_area, const parameters::OutputsDAQmx &_outputparams, const parameters::Scope &_params)
Creates the task for scanner, pockels, and fast-z output with NI DAQmx.
Wraps hardware connection for signal output to scanners, fast z control, and pockels cell with NI-DAQ...
Definition: OutputsDAQmx.h:18
int32_t Write(const std::vector< int16_t > &_xyzp, const uint32_t &_blocks=1) override
Writes values for one frame of X-Y-fastZ and pockels data to the device buffer.
Wraps hardware connection for zeroing signal output to scanners, fast z control, and pockels cell wit...
Definition: OutputsDAQmx.h:54
In here all declarations for all kinds of datatypes Scope needs.
Wraps a DAQmx Analog Output task.
Definition: DAQmxTask.h:137
~OutputsDAQmx()
Stop and clear output task.
DAQmx::CDAQmxAnalogOutTask task
The DAQmx task for x/y-scanners/fast z/Pockels clocked by a pixel clock.
Definition: OutputsDAQmx.h:23
void Stop() override
Stop task.
Wraps hardware connection for signal output to scanners, fast z control, and pockels cell...
Definition: Outputs.h:6