pacemaker 1.0.1
COM automation for people with deadlines and a hatred of GUIs
 
Loading...
Searching...
No Matches
CalibrationScalarDataProxy Class Reference

Proxy for an INCA calibration scalar data COM object. More...

#include <CalibrationScalarDataProxy.hpp>

Inheritance diagram for CalibrationScalarDataProxy:
Collaboration diagram for CalibrationScalarDataProxy:

Public Member Functions

 CalibrationScalarDataProxy (pacemaker::inca::detail::unique_com_ptr<::IDispatch > idispatch)
 Constructs the proxy by narrowing a generic IDispatch to CalibrationScalarData_Dispatch.
 
 CalibrationScalarDataProxy (CalibrationScalarDataProxy &&)=default
 Move constructor transfers ownership of the COM object.
 
CalibrationScalarDataProxyoperator= (CalibrationScalarDataProxy &&)=default
 Move assignment transfers ownership of the COM object.
 
 ~CalibrationScalarDataProxy ()
 Destructor; releases the underlying COM object.
 
auto SetImplValue (double value) -> void
 Sets the implementation (working-page) value of the calibration parameter.
 
auto ResetValueToRP () -> void
 Resets the calibration parameter to its reference-page value.
 

Detailed Description

Proxy for an INCA calibration scalar data COM object.

CalibrationScalarDataProxy wraps the CalibrationScalarData_Dispatch COM interface, which represents a single scalar calibration parameter (implementation value) within an INCA experiment device.

It provides two operations:

  • Setting the implementation value to an arbitrary double during an experiment run.
  • Resetting the value back to its reference-page (RP) baseline when the experiment ends.

Instances are normally created by pacemaker::inca::Experiment::add_param() and stored in its internal parameter table, Direct construction requires a valid IDispatch pointer obtained from IncaOnlineExperimentProxy::GetCalibrationValueInDevice()

The class is move-only.

See also
pacemaker::inca::com::IncaOnlineExperimentProxy::GetCalibrationValueInDevice()
pacemaker::inca::Experiment::add_param()
pacemaker::inca::Experiment::set_param()
pacemaker::inca::detail::COMProxy

Definition at line 37 of file CalibrationScalarDataProxy.hpp.

Constructor & Destructor Documentation

◆ CalibrationScalarDataProxy() [1/2]

Constructs the proxy by narrowing a generic IDispatch to CalibrationScalarData_Dispatch.

Parameters
idispatchOwning pointer to a generic IDispatch representing the calibration scalar data object. Ownership is transferred to the proxy.
Exceptions
std::invalid_argumentif idispatch is null.
std::runtime_errorif QueryInterface fails to obtain CalibrationScalarData_Dispatch

◆ CalibrationScalarDataProxy() [2/2]

Move constructor transfers ownership of the COM object.

◆ ~CalibrationScalarDataProxy()

Destructor; releases the underlying COM object.

Member Function Documentation

◆ operator=()

Move assignment transfers ownership of the COM object.

◆ SetImplValue()

auto SetImplValue ( double value) -> void

Sets the implementation (working-page) value of the calibration parameter.

Delegates to CalibrationScalarData_Dispatch::SetImplValue(). The change takes effect immediately in the running INCA measurement session.

Parameters
valueThe new value to write to the calibration parameter.

◆ ResetValueToRP()

auto ResetValueToRP ( ) -> void

Resets the calibration parameter to its reference-page value.

Delegates to CalibrationScalarData_Dispatch::ResetValueToRP(). This restores the parameter to the baseline value stored on the reference page, undoing any changes applied via SetImplValue().

This method is called by pacemaker::inca::Experiment::reset() on every registered parameter at the end of an experiment run to leave INCA in a clean state.


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