DispatchWrapper for the IncaOnlineExperiment_Dispatch COM interface.
More...
#include <IncaOnlineExperimentProxy.hpp>


Public Member Functions | |
| auto | GetAllDevices () -> std::vector< ExperimentDeviceProxy > |
| Returns all ECU devices associated with the open experiment. | |
| auto | GetCalibrationValueInDevice (const std::string &name, ::ExperimentDevice_Dispatch *const device) -> CalibrationScalarDataProxy |
| Retrieves a calibration scalar data item by name from a specific device. | |
Additional Inherited Members | |
Public Types inherited from DispatchWrapper<::IncaOnlineExperiment_Dispatch > | |
| using | type |
DispatchWrapper for the IncaOnlineExperiment_Dispatch COM interface.
Inherits ::IncaOnlineExperiment_Dispatch and overload two C++ methods that hide COM SAFEARRAY and BSTR marshalling behind standard C++ return types. Methods that require no adaptation are inherited directly from the base and accessed via operator-> on the IncaOnlineExperimentProxy owning pointer.
Instances are managed exclusively through the IncaOnlineExperimentProxy owning smart pointer.
Definition at line 29 of file IncaOnlineExperimentProxy.hpp.
|
inlinenodiscard |
Returns all ECU devices associated with the open experiment.
Calls the base IncaOnlineExperiment_Dispatch::GetAllDevices(), unapckas the returned SAFEARRAY of VT_DISPATCH elements, and constructs an ExperimentDeviceProxy for each element by narrowing the individual IDispatch pointers.
std::vector<ExperimentDeviceProxy> containing one proxy per device reported by INCA. The vector is empty if no devices are configured in the open experiment.| std::runtime_error | if the returned variant is not of type VT_ARRAY | VT_VARIANT. |
| std::runtime_error | if SafeArrayGetElement fails for any element. |
| std::runtime_error | if any element variant is not VT_DISPATCH. |
Definition at line 45 of file IncaOnlineExperimentProxy.hpp.
|
inlinenodiscard |
Retrieves a calibration scalar data item by name from a specific device.
Calls the base IncaOnlineExperiment_Dispatch::GetCalibrationValueInDevice(), detaches the returned IDispatch, and constructs a CalibrationScalarDataProxy by narrowing the pointer via query_interface.
| name | Name of the calibration parameter as configured in INCA |
| device | Non-owning raw pointer to the device on which to look up the parameter. Obtain this via ExperimentDeviceProxy::get(). |
CalibrationScalarDataProxy for the named parameter.| std::runtime_error | if the parameter is not found on the device (the underlying COM call returns a nullptr). |
Definition at line 86 of file IncaOnlineExperimentProxy.hpp.