eBUS SDK v7.0.1.7536 API
7 #ifndef __PVSTREAMINGCHANNELSOURCETRIGGER_H__
8 #define __PVSTREAMINGCHANNELSOURCETRIGGER_H__
14 #include <PvTriggerSelector.h>
15 #include <IPvSemaphore.h>
16 #include <PvSoftDeviceGEVInterfaces.h>
17 #include <PvSoftDeviceGEVLib.h>
19 #define TRIGGERSELECTOR_ADDRESS( base, channel ) ( base + 0x0 + ( 0x80 * ( channel ) ) )
20 #define TRIGGERMODE_ADDRESS( base, channel ) ( base + 0x4 + ( 0x80 * ( channel ) ) )
21 #define TRIGGERSOURCE_ADDRESS( base, channel ) ( base + 0x8 + ( 0x80 * ( channel ) ) )
22 #define TRIGGERSOFTWARE_ADDRESS( base, channel ) ( base + 0xc + ( 0x80 * ( channel ) ) )
25 enum TriggerSelectorEnum
28 TRIGGER_SELECTOR_FRAMESTART = 0,
30 TRIGGER_SELECTOR_ACQUISITIONSTART,
32 TRIGGER_SELECTOR_ACQUISITIONEND,
34 TRIGGER_SELECTOR_ACQUISITIONACTIVE,
36 TRIGGER_SELECTOR_FRAMEBURSTSTART,
38 TRIGGER_SELECTOR_FRAMEBURSTEND,
40 TRIGGER_SELECTOR_FRAMEBURSTACTIVE,
42 TRIGGER_SELECTOR_FRAMEEND,
44 TRIGGER_SELECTOR_FRAMEACTIVE,
46 TRIGGER_SELECTOR_LINESTART,
48 TRIGGER_SELECTOR_EXPOSURESTART,
50 TRIGGER_SELECTOR_EXPOSUREEND,
52 TRIGGER_SELECTOR_EXPOSUREACTIVE,
54 TRIGGER_SELECTOR_LAST = TRIGGER_SELECTOR_EXPOSUREACTIVE
67 enum TriggerSourceEnum
70 TRIGGER_SOURCE_SOFTWARE = 0,
72 TRIGGER_SOURCE_USER = 1
155 virtual bool PreQueueBufferProc()
final;
162 virtual void PostRetrieveBufferProc();
228 virtual void FireTrigger()
const;
236 void AddSelector( TriggerSelectorEnum aIndex, SelectorEntry aSelector );
244 void AddSelectorTriggerCallback( TriggerSelectorEnum aIndex,
IPvTriggerCallback *aCallback );
252 void AddSource( uint32_t aIndex,
const PvString &aName );
259 bool GetMode()
const;
266 uint32_t GetSource()
const;
304 void SetSelector( uint32_t aIndex );
305 void SetMode( uint32_t aMode );
306 void SetSource( uint32_t aIndex );
308 bool IsSourceSoftware( uint32_t aIndex )
const;
320 uint32_t mRegisterBaseAddress;
322 uint32_t mSourceIndex;
323 std::map<uint32_t, std::string> *mSources;
324 std::map<uint32_t, SelectorEntry> *mSelectors;
328 uint32_t mCurrentSelector;
334 #endif // __PVSTREAMINGCHANNELSOURCETRIGGER_H__
Result information.
Definition: PvResult.h:29
Definition: PvSoftDeviceGEVInterfaces.h:64
virtual PvResult PreWrite(IPvRegister *aRegister)
Pre-write register notification.
Definition: PvVirtualDeviceGEVInterfaces.h:1772
Register map interface for a software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:1909
virtual void OnStreamingStop()=0
Notification that the GigE Vision controller has requested that the device stop streaming on this cha...
GenApi factory used to add custom GenApi parameters to a software-based GigE Vision Device GenICam XM...
Definition: PvVirtualDeviceGEVInterfaces.h:2024
virtual void OnStreamingStart()=0
Notification that the GigE Vision controller has requested that the device start streaming on this ch...
Trigger-capable streaming source implementing IPvSWStreamingChannelSource.
Definition: PvStreamingChannelSourceTrigger.h:113
String class.
Definition: PvString.h:25
Interface used by PvStreamingChannelSourceTrigger to support a trigger mechanism.
Definition: PvTriggerSelector.h:19
Class used for register creation.
Definition: PvVirtualDeviceGEVInterfaces.h:1835
Interface that is used to access the registers of the software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:1470
virtual void CreateRegisters(IPvRegisterMap *aRegisterMap, IPvRegisterFactory *aFactory)
When called, the streaming channel source should create its custom registers if they are needed.
Definition: PvVirtualDeviceGEVInterfaces.h:1193
virtual PvResult PreRead(IPvRegister *aRegister)
Pre-read register notification.
Definition: PvVirtualDeviceGEVInterfaces.h:1731
virtual ~IPvTriggerCallback()
Virtual destructor.
Definition: PvStreamingChannelSourceTrigger.h:103
Interface for a semaphore object used for synchronization.
Definition: IPvSemaphore.h:18
@ NOT_IMPLEMENTED
The requested feature or functionality is not implemented.
Definition: PvResult.h:340
virtual void CreateGenApiFeatures(IPvRegisterMap *aRegisterMap, IPvGenApiFactory *aFactory)
When called, the streaming channel source should create its custom GenApi parameters if they are need...
Definition: PvVirtualDeviceGEVInterfaces.h:1259
Class used with register persistence in the context of user-sets.
Definition: PvVirtualDeviceGEVInterfaces.h:1659
An interface which provides a trigger callback function.
Definition: PvStreamingChannelSourceTrigger.h:87
Interface that is used to report the register activity of the software-based GigE Vision Device.
Definition: PvVirtualDeviceGEVInterfaces.h:1701
virtual PvResult Persist(IPvRegister *aRegister, IPvRegisterStore *aStore)
Peristence request for selected registers for user-sets.
Definition: PvVirtualDeviceGEVInterfaces.h:1817
PvResult GetTxNumBuffersToUse(uint32_t &aNumBuffer)
Disabled transmitter buffer count query.
Definition: PvStreamingChannelSourceTrigger.h:186
Copyright (c) 2002-2026 Pleora Technologies Inc.
www.pleora.com