REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
|
Loading...
Searching...
No Matches
daq.h
Go to the documentation of this file.
121status process(const run::Run &run, run::RunDataHandler *const data_handler, bool partial = false);
155 * If enough data for one chunk is available, the process function calls the data handler's handle
156 * function with the appropriate memory destination and size. See run::RunDataHandler::handle for more
160 * unless \p partial is set. If \p partial is set, any amount of data currently available is processed
165 status process(bool partial = false) { return stream::process(run, run_data_handler, partial); }
Automatically starts and stops a continuous acquisition in the current scope.
Definition daq.h:131
run::RunDataHandler *const run_data_handler
The run::RunDataHandler instance that will handle incoming data via process().
Definition daq.h:136
const run::Run & run
The run associated with this continuous acquisition, relevant for the run's ID and DAQConfig.
Definition daq.h:134
Scope(const run::Run &run, run::RunDataHandler *data_handler, bool start_=true)
Construct a scoped continuous acquisition, starting it by default. Consider using get() instead.
Definition daq.h:140
Definition run.h:71
Definition running_avg.h:58
A recoverable error, inspired from https://abseil.io/docs/cpp/guides/status and https://github....
Definition error.h:35
Definition protocol.h:20
Scope get(const run::Run &run, run::RunDataHandler *const data_handler)
Construct and return a scoped continuous acquisition. See the introductory example on how to use.
Definition daq.cpp:525
status stop(const run::Run &run)
Manually stop a previously started continuous data acquisition. Consider using get() instead.
Definition daq.cpp:594
status start(const run::Run &run, run::RunDataHandler *const data_handler)
Manually start a continuous data acquisition. You must stop it with stop(). Consider using get() inst...
Definition daq.cpp:621
status process(const run::Run &run, run::RunDataHandler *const data_handler, bool partial=false)
Manually process incoming data during a continuous acquisition.
Definition daq.cpp:539
Routines for data acquisition (DAQ) using the internal analog-to-digital converters (ADC).
Definition base.h:12
std::array< uint16_t, 8 > raw_to_offset_corrected(std::array< uint16_t, NUM_CHANNELS > raw)
Convert a raw vector to one with previously calibrated offsets removed.
Definition daq.cpp:475
status init()
Initialize the daq system. Needs to be called once before any sampling can happen.
Definition daq.cpp:414
const char * raw_to_str(uint16_t raw)
Convert a single raw value to a formatted string with 0.001 step size with a look-up table.
Definition daq.cpp:72
float raw_to_float(const uint16_t raw, const int16_t raw_zero_offset)
Convert a single raw value to float.
Definition daq.cpp:458
std::array< T, NUM_CHANNELS > average(std::array< T, NUM_CHANNELS >(*sample_function)(), size_t samples=100, unsigned int delay_us=33)
Acquire an averaged sample (either raw or float).
Definition daq.h:96
std::array< float, NUM_CHANNELS > sample()
Acquire one one-demand sample. Can not be used during a continuous acquisition.
Definition daq.cpp:519
size_t raw_to_normalized(uint16_t raw)
Convert a single raw value to a so-called "normalized" value in range [0, 2500], used in raw_to_str()...
Definition daq.cpp:15
std::array< uint16_t, NUM_CHANNELS > sample_raw()
Acquire one one-demand raw sample. Can not be used during a continuous acquisition.
Definition daq.cpp:484
constexpr std::array< Type, Size > convert(const std::array< OtherType, Size > source, const Types... data)
Definition running_avg.h:49