7 #ifndef __PVTRIGGERSELECTOR_H__ 8 #define __PVTRIGGERSELECTOR_H__ 11 #include <PvVirtualDeviceLib.h> 44 virtual void Start(
const uint32_t aHeight ) = 0;
51 virtual void Stop() = 0;
56 virtual void FireTrigger() = 0;
63 virtual void Rearm() = 0;
70 virtual void SetMode(
bool aIsEnabled ) = 0;
77 virtual bool GetMode()
const = 0;
84 virtual void SetSource( uint32_t aSource ) = 0;
91 virtual uint32_t GetSource()
const = 0;
98 virtual PvString GetName()
const = 0;
105 virtual State GetState()
const = 0;
112 virtual bool IsEnabled()
const = 0;
135 , mState( State_Disabled )
150 void Start(
const uint32_t aHeight )
override { PVUNREFPARAM( aHeight ); }
172 void SetMode(
const bool aIsEnabled )
override { SetState( aIsEnabled ? State_Enabled : State_Disabled ); }
186 void SetSource(
const uint32_t aSource)
override { mSource = aSource; }
207 bool IsEnabled()
const override {
return State_Disabled != mState; }
216 void SetState(
const State aState ) { mState = aState; }
229 volatile State mState;
262 void Start(
const uint32_t aHeight )
override 264 PVUNREFPARAM( aHeight );
376 void Start(
const uint32_t aHeight )
override 380 mTrigReload = aHeight;
381 mTrigCount = mTrigReload;
407 mTrigCount = mTrigReload;
415 uint32_t mTrigReload;
419 #endif // __PVTRIGGERSELECTOR_H__ void Start(const uint32_t aHeight) override
Signals the state machine to move from the Enabled state to the Armed state.
Definition: PvTriggerSelector.h:262
void Start(const uint32_t aHeight) override
Nothing to do for the default implementation.
Definition: PvTriggerSelector.h:150
~PvTriggerSelectorLineStart()
Virtual destructor.
Definition: PvTriggerSelector.h:369
void Rearm() override
Moves the state from Fired to Armed.
Definition: PvTriggerSelector.h:403
PvTriggerSelectorDefault(const char *const aName="N/A")
Constructor.
Definition: PvTriggerSelector.h:133
uint32_t GetSource() const override
Gets the trigger source.
Definition: PvTriggerSelector.h:193
bool GetMode() const override
Gets the trigger mode.
Definition: PvTriggerSelector.h:179
void FireTrigger() override
If Armed and all lines are received, moves to the Fired state.
Definition: PvTriggerSelector.h:388
String class.
Definition: PvString.h:25
Behaves like FrameStart, but moves to Fired state once all lines of a frame are received.
Definition: PvTriggerSelector.h:350
void SetSource(const uint32_t aSource) override
Sets the trigger source.
Definition: PvTriggerSelector.h:186
void FireTrigger() override
Moves the state from Armed to Fired.
Definition: PvTriggerSelector.h:334
void FireTrigger() override
Nothing to do for the default implementation.
Definition: PvTriggerSelector.h:160
PvTriggerSelectorAcquisitionStart(const char *const aName="AcquisitionStart")
Constructor.
Definition: PvTriggerSelector.h:249
A default implementation for the IPvTriggerSelector interface. This defines the typical base behavior...
Definition: PvTriggerSelector.h:123
void SetMode(const bool aIsEnabled) override
Sets the trigger mode (enabled or disabled).
Definition: PvTriggerSelector.h:172
void FireTrigger() override
Moves the state from armed to one-shot.
Definition: PvTriggerSelector.h:286
bool IsEnabled() const override
Checks if the trigger is enabled.
Definition: PvTriggerSelector.h:207
void Stop() override
Nothing to do for the default implementation.
Definition: PvTriggerSelector.h:155
Behaves just like AcquisitionStart, but is re-armed on a frame basis.
Definition: PvTriggerSelector.h:302
void Rearm() override
Moves the state from Fired to Armed.
Definition: PvTriggerSelector.h:323
void Start(const uint32_t aHeight) override
Signals the state machine to move from the Enabled state to the Armed state.
Definition: PvTriggerSelector.h:376
void Rearm() override
Nothing to do for the default implementation.
Definition: PvTriggerSelector.h:165
virtual ~IPvTriggerSelector()
Virtual destructor.
Definition: PvTriggerSelector.h:35
void SetState(const State aState)
Sets the selector state.
Definition: PvTriggerSelector.h:216
Interface used by PvStreamingChannelSourceTrigger to support a trigger mechanism. ...
Definition: PvTriggerSelector.h:19
virtual ~PvTriggerSelectorAcquisitionStart()
Virtual destructor.
Definition: PvTriggerSelector.h:255
virtual bool IsEnabled() const =0
Checks if the trigger is enabled.
PvString GetName() const override
Gets the selector name.
Definition: PvTriggerSelector.h:200
PvTriggerSelectorFrameStart(const char *const aName="FrameStart")
Constructor.
Definition: PvTriggerSelector.h:312
AcquisitionStart requires to be triggered once, and remains triggered until stopped.
Definition: PvTriggerSelector.h:239
void Stop() override
Unconditionally moves the state machine into the Enabled state.
Definition: PvTriggerSelector.h:275
virtual ~PvTriggerSelectorFrameStart()
Virtual destructor.
Definition: PvTriggerSelector.h:318
State GetState() const override
Gets the current selector state.
Definition: PvTriggerSelector.h:223
PvTriggerSelectorLineStart(const char *const aName="LineStart")
Constructor.
Definition: PvTriggerSelector.h:360
virtual ~PvTriggerSelectorDefault()
Virtual destructor.
Definition: PvTriggerSelector.h:143