Interface to the core CaptureSession methods.
Definition at line 65 of file CaptureSession.h.
|
virtual Status | cancelRequests ()=0 |
| Removes all previously submitted requests from the queue. More...
|
|
virtual Status | connectAllRequestInputStreams (const Request *requests, uint32_t numRequests)=0 |
| Connect the input stream side consumers to input streams. More...
|
|
virtual uint32_t | capture (const Request *request, uint64_t timeout=TIMEOUT_INFINITE, Status *status=NULL)=0 |
| Submits a single capture request. More...
|
|
virtual uint32_t | captureBurst (const std::vector< const Request * > &requestList, uint64_t timeout=TIMEOUT_INFINITE, Status *status=NULL)=0 |
| Submits a burst of requests. More...
|
|
virtual uint32_t | maxBurstRequests () const =0 |
| Returns the maximum number of capture requests that can be included in a burst capture. More...
|
|
virtual Request * | createRequest (const CaptureIntent &intent=CAPTURE_INTENT_PREVIEW, Status *status=NULL)=0 |
| Creates a request object that can be later used with this CaptureSession. More...
|
|
virtual OutputStreamSettings * | createOutputStreamSettings (const StreamType &type, Status *status=NULL)=0 |
| Creates an OutputStreamSettings object that is used to configure the creation of an OutputStream (see createOutputStream). More...
|
|
virtual OutputStream * | createOutputStream (const OutputStreamSettings *settings, Status *status=NULL)=0 |
| Creates an OutputStream object using the settings configured by an OutputStreamSettings object (see createOutputStreamSettings). More...
|
|
virtual InputStreamSettings * | createInputStreamSettings (const StreamType &type, Status *status=NULL)=0 |
| Creates an InputStreamSettings object that is used to configure the creation of an InputStream (see createInputStream). More...
|
|
virtual InputStream * | createInputStream (const InputStreamSettings *settings, Status *status=NULL)=0 |
| Creates an InputStream object using the settings configured by an InputStreamSettings object (see createInputStreamSettings). More...
|
|
virtual bool | isRepeating () const =0 |
| Returns true if there is a streaming request in place. More...
|
|
virtual Status | repeat (const Request *request)=0 |
| Sets up a repeating request. More...
|
|
virtual Status | repeatBurst (const std::vector< const Request * > &requestList)=0 |
| Sets up a repeating burst request. More...
|
|
virtual Range< uint32_t > | stopRepeat ()=0 |
| Shuts down any repeating capture. More...
|
|
virtual Status | waitForIdle (uint64_t timeout=TIMEOUT_INFINITE) const =0 |
| Waits until all pending captures are complete. More...
|
|
Submits a single capture request.
For blocking capture session (created by ICameraProvider::createBlockingCaptureSession), it will wait until the request is accepted by lower level driver. For non-blocking capture session (created by ICameraProvider::createCaptureSession), it will queue a copy of the request to a queue and return.
The client can submit the same request instance in a future call. The request will be copied by the runtime.
- Parameters
-
[in] | request | Parameters for the capture. |
[in] | timeout | The timeout in nanoseconds. The camera device will try to issue the request within the timeout period. If it can't it will return and set status to STATUS_UNAVAILABLE. |
[out] | status | An optional pointer to return success/status. |
- Returns
- the capture id, a number that uniquely identifies (within this session) the request. If the submission request failed, zero will be returned. The request could fail because the timeout is reached, or because some parameter(s) of the
request
are invalid.
virtual uint32_t Argus::ICaptureSession::captureBurst |
( |
const std::vector< const Request * > & |
requestList, |
|
|
uint64_t |
timeout = TIMEOUT_INFINITE , |
|
|
Status * |
status = NULL |
|
) |
| |
|
pure virtual |
Submits a burst of requests.
For blocking capture session (created by ICameraProvider::createBlockingCaptureSession), it will wait until the first request is accepted by lower level driver. For non-blocking capture session (created by ICameraProvider::createCaptureSession), it will queue a copy of the requests to a queue and return.
The runtime will either accept the entire burst or refuse it completely (that is, no partial bursts will be accepted).
- Parameters
-
[in] | requestList | The list of requests that make up the burst. |
[in] | timeout | The timeout in nanoseconds. The camera device will try to issue the request within the timeout period. If it can't it will return and set status to STATUS_UNAVAILABLE. |
[out] | status | An optional pointer to return success/status. |
- Returns
- the capture id of the capture associated with the first request in the burst. The capture id will increment by one for the captures associated with each successive request. If the submission request failed, zero will be returned. The request could fail because the timeout is reached, or because some parameter(s) of the
request
are invalid.