Libargus API
Libargus Camera API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions
Argus::Ext::IBlockingSessionCameraProvider Class Reference

Interface used to create blocking capture session. More...

#include <BlockingSessionCameraProvider.h>

Inheritance diagram for Argus::Ext::IBlockingSessionCameraProvider:
Argus::Interface Argus::NonCopyable

List of all members.

Public Member Functions

virtual CaptureSessioncreateBlockingCaptureSession (CameraDevice *device, Status *status=NULL)=0
 Creates and returns a blocking CaptureSession using the given device.
virtual CaptureSessioncreateBlockingCaptureSession (const std::vector< CameraDevice * > &devices, Status *status=NULL)=0
 Creates and returns a blocking CaptureSession using the given device.

Static Public Member Functions

static const InterfaceIDid ()

Protected Member Functions

 ~IBlockingSessionCameraProvider ()
- Protected Member Functions inherited from Argus::Interface
 Interface ()
 ~Interface ()

Detailed Description

Interface used to create blocking capture session.

Definition at line 64 of file BlockingSessionCameraProvider.h.


Constructor & Destructor Documentation

Argus::Ext::IBlockingSessionCameraProvider::~IBlockingSessionCameraProvider ( )
inlineprotected

Definition at line 98 of file BlockingSessionCameraProvider.h.


Member Function Documentation

virtual CaptureSession* Argus::Ext::IBlockingSessionCameraProvider::createBlockingCaptureSession ( CameraDevice device,
Status status = NULL 
)
pure virtual

Creates and returns a blocking CaptureSession using the given device.

For blocking CaptureSession, the capture related API call will block wait until the request is serviced by underlying driver. This will help timing control in client side when client auto control is involved. In compare, for the default CaptureSession, the capture related API call will put the request in a internal queue and return immediately, without blocking client thread. STATUS_UNAVAILABLE will be placed into status if the device is already in use.

Parameters:
[in]deviceThe device to use for the CaptureSession.
[out]statusOptional pointer to return success/status of the call.
Returns:
The new CaptureSession, or NULL if an error occurred.
virtual CaptureSession* Argus::Ext::IBlockingSessionCameraProvider::createBlockingCaptureSession ( const std::vector< CameraDevice * > &  devices,
Status status = NULL 
)
pure virtual

Creates and returns a blocking CaptureSession using the given device.

For blocking CaptureSession, the capture related API call will block wait until the request is serviced by underlying driver. This will help timing control in client side when client auto control is involved. STATUS_UNAVAILABLE will be placed into status if any of the devices are already in use.

Parameters:
[in]devicesThe device(s) to use for the CaptureSession.
[out]statusOptional pointer to return success/status of the call.
Returns:
The new CaptureSession, or NULL if an error occurred.
static const InterfaceID& Argus::Ext::IBlockingSessionCameraProvider::id ( )
inlinestatic

Definition at line 67 of file BlockingSessionCameraProvider.h.


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