ifw-daq  3.0.1
IFW Data Acquisition modules
Public Member Functions | List of all members
daq::ObservableStatus::DeferSignal Class Reference

Defer signal changes until later time. More...

#include <status.hpp>

Public Member Functions

 DeferSignal ()=default
 
 DeferSignal (ObservableStatus *status, bool force=true)
 
 ~DeferSignal () noexcept
 
 DeferSignal (DeferSignal &&) noexcept
 
DeferSignaloperator= (DeferSignal &&) noexcept
 
void Reset () noexcept
 If object is valid this will unblock and signal changes and then remove reference to ObservableStatus. More...
 
bool IsValid () const noexcept
 

Detailed Description

Defer signal changes until later time.

This is mainly usedful to allow making multiple changes with only one signal being emitted.

Effects:

Definition at line 222 of file status.hpp.

Constructor & Destructor Documentation

◆ DeferSignal() [1/3]

daq::ObservableStatus::DeferSignal::DeferSignal ( )
default

◆ DeferSignal() [2/3]

daq::ObservableStatus::DeferSignal::DeferSignal ( ObservableStatus status,
bool  force = true 
)

Definition at line 183 of file status.cpp.

◆ ~DeferSignal()

daq::ObservableStatus::DeferSignal::~DeferSignal ( )
noexcept

Definition at line 206 of file status.cpp.

◆ DeferSignal() [3/3]

daq::ObservableStatus::DeferSignal::DeferSignal ( ObservableStatus::DeferSignal &&  other)
noexcept

Definition at line 190 of file status.cpp.

Member Function Documentation

◆ IsValid()

bool daq::ObservableStatus::DeferSignal::IsValid ( ) const
inlinenoexcept
Returns
true if object is valid.

Definition at line 240 of file status.hpp.

◆ operator=()

ObservableStatus::DeferSignal & daq::ObservableStatus::DeferSignal::operator= ( ObservableStatus::DeferSignal &&  other)
noexcept

Definition at line 197 of file status.cpp.

◆ Reset()

void daq::ObservableStatus::DeferSignal::Reset ( )
noexcept

If object is valid this will unblock and signal changes and then remove reference to ObservableStatus.

Postcondition
IsValid() == false

Definition at line 210 of file status.cpp.


The documentation for this class was generated from the following files: