Libargus API Libargus Camera API

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

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
CameraProvider | Ext::BlockingSessionCameraProvider

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

`#include <BlockingSessionCameraProvider.h>`

Inheritance diagram for Argus::Ext::IBlockingSessionCameraProvider:

List of all members.

## Public Member Functions
virtual CaptureSession * | createBlockingCaptureSession (CameraDevice *device, Status *status=NULL)=0
| Creates and returns a blocking CaptureSession using the given device.
virtual CaptureSession * | createBlockingCaptureSession (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 InterfaceID & | id ()

## 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 | ( |  | ) |
| inline protected

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] | device | The device to use for the CaptureSession.
  [out] | status | Optional 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] | devices | The device(s) to use for the CaptureSession.
  [out] | status | Optional 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 | ( |  | ) |
| inline static

Definition at line 67 of file BlockingSessionCameraProvider.h.

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

- include/Argus/Ext/BlockingSessionCameraProvider.h