43 auto InstrData = dynamic_InstrumentData_cast<DigitalOut>(GetInstrumentData());
48 WriteData(CallbackFunc);
59 auto InstrParams = DynExp::dynamic_Params_cast<DigitalOut>(GetParams());
60 auto InstrData = dynamic_InstrumentData_cast<DigitalOut>(GetInstrumentData());
63 auto SampleStream = InstrData->GetSampleStream();
65 SampleStream->Clear();
66 for (
auto i = SampleStream->GetStreamSizeWrite(); i > 0; --i)
Defines a meta instrument for a single digital output port to write a data stream consisting of digit...
SampleT SampleType
Alias for SampleT.
virtual ~DigitalOutConfigurator()=0
void ResetImpl(dispatch_tag< OutputPortData >) override final
void DisableUserEditable()
Calls DynExp::ParamsBase::DisableUserEditable() on all bundled parameters.
virtual ~DigitalOutParams()=0
void ExitFuncImpl(dispatch_tag< OutputPortTasks::ExitTask >, DynExp::InstrumentInstance &Instance) override final
Deinitializes the respective instrument within the instrument inheritance hierarchy....
void InitFuncImpl(dispatch_tag< OutputPortTasks::InitTask >, DynExp::InstrumentInstance &Instance) override final
Initializes the respective instrument within the instrument inheritance hierarchy....
virtual void SetDefault(DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Writes DigitalOutParams::DefaultValue to the sample stream. CallbackFunc gets called after the task D...
virtual void OnPrepareExitChild() const override
This function enables derived classes to enqueue tasks to be executed directly before the final exit ...
void ResetImpl(dispatch_tag< OutputPort >) override final
Refer to DynExp::Object::Reset(). Using tag dispatch mechanism to ensure that ResetImpl() of every de...
virtual void Set(DigitalOutData::SampleStreamType::SampleType Sample, DynExp::TaskBase::CallbackType CallbackFunc=nullptr) const
Writes one sample to the sample stream. CallbackFunc gets called after the task DataStreamInstrument:...
virtual void SetSync(DigitalOutData::SampleStreamType::SampleType Sample) const
Synchronized version of Set(), which blocks until Sample has been written.
Refer to DynExp::ParamsBase::dispatch_tag.
Refer to DynExp::ParamsBase::dispatch_tag.
Refer to ParamsBase::dispatch_tag.
Defines data for a thread belonging to a InstrumentBase instance. Refer to RunnableInstance.
Refer to ParamsBase::dispatch_tag.
static void DisableUserEditable(ParamBase &Param) noexcept
Sets the UserEditable property of the parameter Param to false. Refer to ParamBase::UserEditable.
std::function< void(const TaskBase &, ExceptionContainer &)> CallbackType
Type of a callback function which is invoked when a task has finished, failed or has been aborted....
DynExp's instrument namespace contains the implementation of DynExp instruments which extend DynExp's...
Accumulates include statements to provide a precompiled header.
double DataType
Data type of time and value.