Class to write to digital outputs.
Definition DigitalOutput.hpp:23
DIOSim(int channel)
Constructs from an digital I/O channel number.
DIOSim(const DigitalInput &input)
Constructs from a DigitalInput object.
void SetValue(bool value)
Change the DIO value.
std::unique_ptr< CallbackStore > RegisterIsInputCallback(NotifyCallback callback, bool initialNotify)
Register a callback to be run whenever this DIO changes to be an input.
bool GetValue() const
Read the value of the DIO port.
double GetPulseLength() const
Read the pulse length.
void ResetData()
Reset all simulation data of this object.
void SetPulseLength(double pulseLength)
Change the pulse length of this DIO port.
std::unique_ptr< CallbackStore > RegisterInitializedCallback(NotifyCallback callback, bool initialNotify)
Register a callback to be run when this DIO is initialized.
int GetFilterIndex() const
Read the filter index.
void SetInitialized(bool initialized)
Define whether this DIO has been initialized.
std::unique_ptr< CallbackStore > RegisterPulseLengthCallback(NotifyCallback callback, bool initialNotify)
Register a callback to be run whenever the pulse length changes.
void SetFilterIndex(int filterIndex)
Change the filter index of this DIO port.
std::unique_ptr< CallbackStore > RegisterFilterIndexCallback(NotifyCallback callback, bool initialNotify)
Register a callback to be run whenever the filter index changes.
std::unique_ptr< CallbackStore > RegisterValueCallback(NotifyCallback callback, bool initialNotify)
Register a callback to be run whenever the DIO value changes.
bool GetInitialized() const
Check whether this DIO has been initialized.
void SetIsInput(bool isInput)
Define whether this DIO port is an Input.
bool GetIsInput() const
Check whether this DIO port is currently an Input.
DIOSim(const DigitalOutput &output)
Constructs from a DigitalOutput object.
Definition CTREPCMSim.hpp:13
std::function< void(std::string_view, const HAL_Value *)> NotifyCallback
Definition CallbackStore.hpp:16
Definition CvSource.hpp:15