![]() |
The per-device data. More...
Public Member Functions | |
DeviceData (LabJackDevice *device, std::unique_ptr< Handle > &&handle) | |
Initialize the data, creating a thread. More... | |
~DeviceData () | |
DeviceData (LabJackDevice *device, std::unique_ptr< Handle > &&handle) | |
Initialize the data, creating a thread. More... | |
~DeviceData () | |
Public Attributes | |
LabJackDevice *const | deviceObject |
The corresponding device object. More... | |
std::unique_ptr< LabJackThread > | thread |
Processing thread. More... | |
std::unique_ptr< Handle > | deviceHandle |
Device handle to read from. More... | |
const std::unordered_set< int > | digitalInputChannels |
The channels read for digital inputs. More... | |
const std::unordered_set< int > | digitalOutputChannels |
The channels set for digital outputs. More... | |
const std::unordered_set< int > | timerInputChannels |
The timer channels that provide inputs. More... | |
const std::unordered_set< int > | timerOutputChannels |
The timer channels set for timer outputs (e.g., PWM outputs). More... | |
const std::unordered_map< int, LabJack::AnalogInputSettings > | analogInputs |
The analog inputs. More... | |
const std::unordered_set< int > | analogOutputChannels |
The channels set for analog outputs. More... | |
std::unordered_map< int, int > | digitalOutputIndices |
The DataGroup indices for the digital outputs. More... | |
std::unordered_map< int, int > | digitalInputIndices |
The DataGroup indices for the digital inputs. More... | |
std::unordered_map< int, int > | timerOutputIndices |
The DataGroup indices for the timer outputs. More... | |
std::unordered_map< int, int > | timerInputIndices |
The DataGroup indices for the timer inputs. More... | |
std::unordered_map< int, int > | analogOutputIndices |
The DataGroup indices for the analog outputs. More... | |
std::unordered_map< int, int > | analogInputIndices |
The DataGroup indices for the analog inputs. More... | |
bool | cachedOutputIndices |
True if the output indices have been cached. More... | |
double | calibration [40] |
Calibration constants. The meaning of each entry is specific to the model (i.e., LabJack::Model). More... | |
bool | configured |
True if the device has been successfully configured. More... | |
Private Member Functions | |
const std::unordered_set< int > | getTimerInputChannels (const std::unordered_map< int, LabJack::TimerSettings > &timers) const |
Given all the timers, return just the ones that provide inputs. More... | |
const std::unordered_set< int > | getTimerOutputChannels (const std::unordered_map< int, LabJack::TimerSettings > &timers) const |
Given all the timers, return just the ones that take outputs. More... | |
DeviceData (const DeviceData &) | |
DeviceData & | operator= (const DeviceData &) |
const std::unordered_set< int > | getTimerInputChannels (const std::unordered_map< int, LabJack::TimerSettings > &timers) const |
Given all the timers, return just the ones that provide inputs. More... | |
const std::unordered_set< int > | getTimerOutputChannels (const std::unordered_map< int, LabJack::TimerSettings > &timers) const |
Given all the timers, return just the ones that take outputs. More... | |
DeviceData (const DeviceData &) | |
DeviceData & | operator= (const DeviceData &) |
The per-device data.
|
inline |
Initialize the data, creating a thread.
|
inline |
|
private |
|
inline |
Initialize the data, creating a thread.
|
inline |
|
private |
|
inlineprivate |
Given all the timers, return just the ones that provide inputs.
timers | The timers. |
|
inlineprivate |
Given all the timers, return just the ones that provide inputs.
timers | The timers. |
|
inlineprivate |
Given all the timers, return just the ones that take outputs.
timers | The timers. |
|
inlineprivate |
Given all the timers, return just the ones that take outputs.
timers | The timers. |
|
private |
|
private |
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::analogInputIndices |
The DataGroup indices for the analog inputs.
const std::unordered_map< int, LabJack::AnalogInputSettings > SurgSim::Devices::LabJackScaffold::DeviceData::analogInputs |
The analog inputs.
const std::unordered_set< int > SurgSim::Devices::LabJackScaffold::DeviceData::analogOutputChannels |
The channels set for analog outputs.
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::analogOutputIndices |
The DataGroup indices for the analog outputs.
bool SurgSim::Devices::LabJackScaffold::DeviceData::cachedOutputIndices |
True if the output indices have been cached.
double SurgSim::Devices::LabJackScaffold::DeviceData::calibration[40] |
Calibration constants. The meaning of each entry is specific to the model (i.e., LabJack::Model).
bool SurgSim::Devices::LabJackScaffold::DeviceData::configured |
True if the device has been successfully configured.
std::unique_ptr< Handle > SurgSim::Devices::LabJackScaffold::DeviceData::deviceHandle |
Device handle to read from.
LabJackDevice *const SurgSim::Devices::LabJackScaffold::DeviceData::deviceObject |
The corresponding device object.
const std::unordered_set< int > SurgSim::Devices::LabJackScaffold::DeviceData::digitalInputChannels |
The channels read for digital inputs.
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::digitalInputIndices |
The DataGroup indices for the digital inputs.
const std::unordered_set< int > SurgSim::Devices::LabJackScaffold::DeviceData::digitalOutputChannels |
The channels set for digital outputs.
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::digitalOutputIndices |
The DataGroup indices for the digital outputs.
std::unique_ptr< LabJackThread > SurgSim::Devices::LabJackScaffold::DeviceData::thread |
Processing thread.
const std::unordered_set< int > SurgSim::Devices::LabJackScaffold::DeviceData::timerInputChannels |
The timer channels that provide inputs.
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::timerInputIndices |
The DataGroup indices for the timer inputs.
const std::unordered_set< int > SurgSim::Devices::LabJackScaffold::DeviceData::timerOutputChannels |
The timer channels set for timer outputs (e.g., PWM outputs).
std::unordered_map< int, int > SurgSim::Devices::LabJackScaffold::DeviceData::timerOutputIndices |
The DataGroup indices for the timer outputs.