Pleora Technologies Inc. eBUS SDK v6.2.8.5877 API



PvAcquisitionStateManager Class Reference

Acquisition state manager, advanced TLParamsLocked manager. More...

Public Member Functions

 PvAcquisitionStateManager (PvDevice *aDevice, PvStream *aStream=0, uint32_t aSource=0)
 Constructor. More...
 
 ~PvAcquisitionStateManager ()
 Destructor.
 
PvResult Start ()
 Starts the acquisition. More...
 
PvResult Stop ()
 Stops acquisition. More...
 
PvAcquisitionState GetState () const
 Returns the current acquisition state. More...
 
uint32_t GetSource () const
 Returns the active source. More...
 
PvResult RegisterEventSink (PvAcquisitionStateEventSink *aEventSink)
 Register an event sink used for callbacks. More...
 
PvResult UnregisterEventSink (PvAcquisitionStateEventSink *aEventSink)
 Unregister an event sink. More...
 

Detailed Description

Acquisition state manager, advanced TLParamsLocked manager.

Contains logic to manage the TLParamsLocked GenICam parameter of a PvDevice over various acquisition modes.

A PvDevice is provided to the constructor of this class. A PvStream is also usually provided. The Start and Stop methods are invoked to start and stop the acquisition. If a stream is not provided, the acquisition state has to be reset manually for some acquisition mode as incoming buffers cannot be reported/counted.

It takes control of issuing Start/Stop methods to the AcquisitionStart and AcquisitionStop GenICam commands of a device. It also counts frames (when applicable) to automatically release TLParamsLocked when all the buffers have been accounted for. It is possible to cancel the operation preemptively by calling Stop - if the user wants to cancel the operation or the user knows some buffers were lost and will never come.

Constructor & Destructor Documentation

◆ PvAcquisitionStateManager()

PvAcquisitionStateManager::PvAcquisitionStateManager ( PvDevice aDevice,
PvStream aStream = 0,
uint32_t  aSource = 0 
)

Constructor.

Parameters
[in]aDevicePointer to the PvDevice acquisition controller.
[in]aStreamA pointer to a PvStream receiving buffers. Optional.
[in]aSourceIndex of the source in SourceSelector to use. Optional.

Member Function Documentation

◆ GetSource()

uint32_t PvAcquisitionStateManager::GetSource ( ) const

Returns the active source.

Returns
Index of the active source.

◆ GetState()

PvAcquisitionState PvAcquisitionStateManager::GetState ( ) const

Returns the current acquisition state.

Returns
Current acquisiton state.

◆ RegisterEventSink()

PvResult PvAcquisitionStateManager::RegisterEventSink ( PvAcquisitionStateEventSink aEventSink)

Register an event sink used for callbacks.

Parameters
[in]aEventSinkA pointer to the event sink.
Returns
Includes:

◆ Start()

PvResult PvAcquisitionStateManager::Start ( )

Starts the acquisition.

  1. Selects the right source (if applicable).
  2. Retrieves AcquisitionMode to configure the number of buffers to receive, allowing automatic unlock/stop if applicable.
  3. Issue AcquisitionStart command to the device.
Returns
Includes:

◆ Stop()

PvResult PvAcquisitionStateManager::Stop ( )

Stops acquisition.

  1. Sends the AcquisitionStop command.
  2. Releases TLParamsLocked.
Returns
Includes:

◆ UnregisterEventSink()

PvResult PvAcquisitionStateManager::UnregisterEventSink ( PvAcquisitionStateEventSink aEventSink)

Unregister an event sink.

Parameters
[in]aEventSinkA pointer to the event sink.
Returns
Includes:
See also
RegisterEventSink

The documentation for this class was generated from the following files:

Copyright (c) 2002-2021 Pleora Technologies Inc.
www.pleora.com