3#include <pybind11/numpy.h>
4#include <pybind11/pybind11.h>
5#include <pybind11/stl.h>
10namespace py = pybind11;
16 py::class_<StreamMgr, std::shared_ptr<StreamMgr>> smgr(
19 py::enum_<StreamMgr::StreamType>(smgr,
"StreamType")
25 smgr.def_static(
"getInstance", []() {
42 smgr.rescanDAQDevices(background);
44 py::arg(
"background") =
false);
Stream manager. Used to manage the input and output streams. Implemented as a singleton: only one str...
static std::shared_ptr< StreamMgr > getInstance()
Get access to stream manager instance.
Daq::StreamStatus getStreamStatus(const StreamType type) const
Get the streamstatus object corresponding to a given stream.
DeviceInfoList getDeviceInfo() const
Obtain a list of devices currently available. When the StreamMgr is first created,...
void startStream(const DaqConfiguration &config)
Start a stream based on given configuration.
const Daq * getDaq(StreamType type) const
Get DAQ pointer for a given stream. Gives a nullptr if stream is not running.
bool isStreamRunning(const StreamType type) const
void setSiggen(std::shared_ptr< Siggen > s)
Set active signal generator for output streams. Only one ‘Siggen’ is active at the same time....
void stopAllStreams()
Stop and delete all streams. Also called on destruction of the StreamMgr.
void stopStream(const StreamType stype)
Stop stream of given type (input / output/ duplex);.
bool isStreamRunningOK(const StreamType type) const
Check if a certain stream is running. If running with no errors, it returns true. If an error occured...
void init_streammgr(py::module &m)