2#include "lasp_config.h"
29 virtual std::unique_ptr<DeviceInfo>
clone()
const {
30 return std::make_unique<DeviceInfo>(*
this);
107 throw std::runtime_error(
"No prefered sample rate available");
140 operator string()
const {
142 std::stringstream str;
146 <<
" number of output channels: " <<
noutchannels << endl;
Class that specifies API related information. An API configuration is part of the DAQConfiguration an...
Qty
Possible physical quantities that are recorded.
Structure containing device info parameters.
unsigned ninchannels
The number of input channels available for the device.
bool duplexModeForced
This flag is used to be able to indicate that the device cannot run input and output streams independ...
unsigned noutchannels
The number of output channels available for the device.
dvec availableSampleRates
Available sample rates the device can run on.
string device_name
The name of the device.
double prefSampleRate() const
std::vector< DataTypeDescriptor::DataType > availableDataTypes
The available data types the device can output.
DaqChannel::Qty physicalOutputQty
The physical quantity of the output signal. For 'normal' audio devices, this is typically a 'number' ...
int prefDataTypeIndex
The device's prefferd data type.
virtual ~DeviceInfo()
Virtual desctructor. Can be derived class.
bool hasInputACCouplingSwitch
Whether the device is capable of enabling a hardware AC-coupling.
usvec availableFramesPerBlock
Available latency-setting (number of frames passed in each callback).
int prefInputRangeIndex
Its preffered range.
static DeviceInfoList getDeviceInfo()
Create a list of DeviceInfo's that are at call time avalable.
virtual std::unique_ptr< DeviceInfo > clone() const
Clone a device info.
DaqApi api
Backend API corresponding to device.
bool hasInternalOutputMonitor
Whether the device has an internal monitor of the output signal. If true, the device is able to monit...
DeviceInfo & operator=(const DeviceInfo &)=delete
us prefFramesPerBlockIndex
Preffered number of frames per callback.
bool hasInputTrigger
Whether the device is able to trigger on input.
dvec availableInputRanges
Available ranges for the input, i.e. +/- 1V and/or +/- 10 V etc.
int prefSampleRateIndex
Preferred setting for the sample rate.
bool hasInputIEPE
Whether the device is capable to provide IEPE constant current power supply.
std::vector< std::unique_ptr< DeviceInfo > > DeviceInfoList
std::vector< double > dvec
size_t us
We often use boolean values.