Class CTrigger#
Defined in File trigger.h
Inheritance Relationships#
Base Types#
public sdv::IInterfaceAccess
(Struct IInterfaceAccess)public sdv::core::ITxTrigger
(Struct ITxTrigger)public sdv::IObjectDestroy
(Struct IObjectDestroy)
Class Documentation#
-
class CTrigger : public sdv::IInterfaceAccess, public sdv::core::ITxTrigger, public sdv::IObjectDestroy#
Trigger object, managing the triggering.
Public Functions
-
CTrigger(CDispatchService &rDispatchSvc, uint32_t uiCycleTime, uint32_t uiDelayTime, uint32_t uiBehaviorFlags, sdv::core::ITxTriggerCallback *pCallback)#
Constructor.
- Parameters:
rDispatchSvc – [in] Reference to the dispatch service.
uiCycleTime – [in] When set to any value other than 0, provides a cyclic trigger (ms). Could be 0 if cyclic triggering is not required.
uiDelayTime – [in] When set to any value other than 0, ensures a minimum time between two triggers. Could be 0 if minimum time should not be enforced.
uiBehaviorFlags – [in] Zero or more flags from sdv::core::ETxTriggerBehavior.
pCallback – [in] Pointer to the callback interface.
-
bool IsValid() const#
Return whether the trigger object is valid.
- Returns:
Returns the validity of the trigger.
-
virtual void DestroyObject() override#
Destroy the object. Overload of sdv::IObjectDestroy::DestroyObject.
-
virtual bool AddSignal(const sdv::u8string &ssSignalName) override#
Add a signal to the trigger object. The signal must be registered as TX signal before. Overload of sdv::core::ITxTrigger::AddSignal.
- Parameters:
ssSignalName – [in] Name of the signal.
- Returns:
Returns whether adding the signal was successful.
-
virtual void RemoveSignal(const sdv::u8string &ssSignalName) override#
Remove a signal from the trigger object.Overload of sdv::core::ITxTrigger::RemoveSignal.
- Parameters:
ssSignalName – [in] Name of the signal.
-
void Execute(EExecutionFlag eExecFlag = EExecutionFlag::spontaneous)#
This function is triggered every ms.
- Parameters:
eExecFlag – [in] When set, the trigger was caused by the periodic timer.
-
CTrigger(CDispatchService &rDispatchSvc, uint32_t uiCycleTime, uint32_t uiDelayTime, uint32_t uiBehaviorFlags, sdv::core::ITxTriggerCallback *pCallback)#