Computation =========== Data Acquisition (DAQ) ---------------------- Data acquisition can switch between on-demand (“one-shot”) and continuous streaming into a ring buffer. See the following example or the test case `test/hardware/components/daq/test_flexio_daq_num_of_samples/test.cpp` how to use it in practice. .. code-block:: c++ // Initialize daq once daq::init(); // On-demand sampling auto data = daq::sample(); auto data_averaged = daq::average(100, 10); // Scoped continuous stream { Run run(...); RunDataHandler data_handler(...); auto stream = daq::stream::get(run, &data_handler); while (1) { // ... do things ... // Process continuous data in chunks stream.process(); } // Process any remaining data stream.process(true); } // On-demand sampling data = daq::sample(); .. doxygennamespace:: daq :members: :undoc-members: Mode Managament --------------- .. doxygennamespace:: mode :members: :undoc-members: Run Managament -------------- .. doxygennamespace:: run :members: :undoc-members: