WaitMatch¶
-
virtual void ISignal::WaitMatch(const SDoubleCondition &condition, double timeout) = 0¶
Waits until the signal matches the specified condition, or the timeout interval is exceeded.
- Parameters
condition – SDoubleCondition to wait for.
timeout – Interval in seconds to wait for condition. Negative value means infinite.
- Throws
CInvalidArgumentException– Invalid condition (e.g. invalid operator) or invalid timeout (NaN).CUnsupportedException– Condition type not supported for this signal (signal data type must be ESignalDataType::Double or ESignalDataType::Float).CUnsupportedException– Signal doesn’t support match functionality (see product specific documentation).CInvalidOperationException– Top-controller state is not “Run”.COutOfResourcesException– No resources available to wait for condition.CTimeoutException– Timeout interval exceeded while waiting for condition.CCommunicationErrorException– Protocol error.CConnectionLostException– Connection to controller lost.CRebootedException– Controller has been rebooted since this object reference was retrieved, invalidating this reference.CObjectDestroyedException– Object is destroyed.
- Remarks
Execution requires one subscription resource.