NVIDIA DRIVE OS Linux API Reference

5.1.0.2 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvsipl::INvSIPLCamera Class Referenceabstract

Detailed Description

Defines public data structures and describes the interfaces for NvSIPLCamera.

Definition at line 44 of file NvSIPLCamera.hpp.

Public Member Functions

virtual SIPLStatus SetPlatformCfg (const PlatformCfg *platformCfg)=0
 Sets a platform configuration. More...
 
virtual const PlatformCfgGetPlatformCfg (void) const =0
 Gets the camera platform configuration set by SetPlatformCfg. More...
 
virtual SIPLStatus SetNotifier (std::uint32_t uIndex, NvSIPLPipelineNotifier *pNotifier)=0
 Sets a handler for events from an image processing pipeline. More...
 
virtual SIPLStatus SetImageGroupWriterCallback (std::uint32_t uIndex, NvSIPLImageGroupWriter *pImageGroupWriter)=0
 Sets an image group writer for an image processing pipeline. More...
 
virtual SIPLStatus SetOutputDesc (std::vector< INvSIPLClient::ConsumerDesc > vDescs)=0
 Sets a vector of INvSIPLClient::ConsumerDesc of consumers of image processing pipeline(s). More...
 
virtual SIPLStatus SetImagePoolAttributes (std::uint32_t index, INvSIPLClient::ConsumerDesc::OutputType outType, uint32_t numOfImages, const NvSIPLImageAttr &imageAttr)=0
 Sets attributes of the image pool used by ICP and ISP components of an image processing pipeline. More...
 
virtual SIPLStatus Init (void)=0
 Initializes NvSIPL Camera (libnvsipl.so) for the selected platform configuration. More...
 
virtual INvSIPLClient::ClientDescGetClientDesc (std::uint32_t index, INvSIPLClient::ConsumerDesc::OutputType outType)=0
 Gets NvSIPL Client (libnvsipl.so) descriptor for an image processing pipeline output. More...
 
virtual SIPLStatus Start (void)=0
 Starts NvSIPL Camera (libnvsipl.so) for the selected platform configuration. More...
 
virtual SIPLStatus Stop (void)=0
 Stops NvSIPL Camera (libnvsipl.so) for the selected platform configuration. More...
 
virtual SIPLStatus Deinit (void)=0
 De-initializes NvSIPL Camera (libnvsipl.so) for the selected platform configuration. More...
 
virtual ~INvSIPLCamera (void)=default
 Default destructor. More...
 

Static Public Member Functions

static std::unique_ptr
< INvSIPLCamera
GetInstance (void)
 Gets a handle to INvSIPLCamera instance. More...
 

Constructor & Destructor Documentation

virtual nvsipl::INvSIPLCamera::~INvSIPLCamera ( void  )
virtualdefault

Default destructor.

Member Function Documentation

virtual SIPLStatus nvsipl::INvSIPLCamera::Deinit ( void  )
pure virtual

De-initializes NvSIPL Camera (libnvsipl.so) for the selected platform configuration.

The function internally De-initializes the NvSIPL DeviceBlock (libnvsipl_devblk.so) for each device block in the selected platform configuration and De-initializes and destroys the image processing pipelines.

This function must be called after Stop().

Returns
SIPLStatus.
virtual INvSIPLClient::ClientDesc* nvsipl::INvSIPLCamera::GetClientDesc ( std::uint32_t  index,
INvSIPLClient::ConsumerDesc::OutputType  outType 
)
pure virtual

Gets NvSIPL Client (libnvsipl.so) descriptor for an image processing pipeline output.

The function returns a handle to INvSIPLClient::ClientDesc for a specific image processing pipeline output. This descriptor can be used to initialize a NvSIPL Client (libnvsipl.so) object.

Parameters
[in]indexThe ID of the sensor.
[in]outTypeINvSIPLClient::ConsumerDesc::OutputType.

this function must be called after Init().

Returns
SIPLStatus. The completion status of the operation.
static std::unique_ptr<INvSIPLCamera> nvsipl::INvSIPLCamera::GetInstance ( void  )
static

Gets a handle to INvSIPLCamera instance.

Static function to create an instance of implementation class and return the handle. The object is automatically destroyed when the variable holding the return value goes out of scope.

Returns
unique_ptr A pointer to an INvSIPLCamera instance.
virtual const PlatformCfg* nvsipl::INvSIPLCamera::GetPlatformCfg ( void  ) const
pure virtual

Gets the camera platform configuration set by SetPlatformCfg.

Returns
PlatformCfg* A pointer to the PlatformCfg.
virtual SIPLStatus nvsipl::INvSIPLCamera::Init ( void  )
pure virtual

Initializes NvSIPL Camera (libnvsipl.so) for the selected platform configuration.

The function internally initializes the NvSIPL DeviceBlock (libnvsipl_devblk.so) for each device block in the selected platform configuration and creates and initializes the image processing pipelines based on the number and type of the consumers set via SetOutputDesc.

This function must be called after SetPlatformCfg and SetOutputDesc.

Returns
SIPLStatus. The completion status of the operation.
virtual SIPLStatus nvsipl::INvSIPLCamera::SetImageGroupWriterCallback ( std::uint32_t  uIndex,
NvSIPLImageGroupWriter pImageGroupWriter 
)
pure virtual

Sets an image group writer for an image processing pipeline.

Sets a NvSIPLImageGroupWriter to feed the images to image processing pipeline. The API can be used to re-process the RAW frames captured from sensor via Tegra HW ISP.

The SetPlatformCfg() method must be called with appropriate platform configuration before calling this API.

Parameters
[in]uIndexThe ID of the sensor.
[in]pImageGroupWriterA pointer to NvSIPLImageGroupWriter.
Returns
SIPLStatus.
virtual SIPLStatus nvsipl::INvSIPLCamera::SetImagePoolAttributes ( std::uint32_t  index,
INvSIPLClient::ConsumerDesc::OutputType  outType,
uint32_t  numOfImages,
const NvSIPLImageAttr imageAttr 
)
pure virtual

Sets attributes of the image pool used by ICP and ISP components of an image processing pipeline.

The API can be used to override the default output format of the ISP.

Parameters
[in]indexThe ID of the sensor.
[in]outTypenvsipl::INvSIPLClient::ConsumerDesc::OutputType.
[in]numOfImagesNumber of images in the pool.
[in]imageAttrAn NvSIPLImageAttr.
Returns
SIPLStatus.
virtual SIPLStatus nvsipl::INvSIPLCamera::SetNotifier ( std::uint32_t  uIndex,
NvSIPLPipelineNotifier pNotifier 
)
pure virtual

Sets a handler for events from an image processing pipeline.

Sets a NvSIPLPipelineNotifier to handle the events from the image processing pipeline.

Parameters
[in]uIndexThe ID of the sensor.
[in]pNotifierA pointer to NvSIPLPipelineNotifier.
Returns
SIPLStatus. The completion status of the operation.
virtual SIPLStatus nvsipl::INvSIPLCamera::SetOutputDesc ( std::vector< INvSIPLClient::ConsumerDesc vDescs)
pure virtual

Sets a vector of INvSIPLClient::ConsumerDesc of consumers of image processing pipeline(s).

This function must be called after SetPlatformCfg() and before Init() Each INvSIPLClient::ConsumerDesc describes a consumer of an image processing pipeline output.

Returns
SIPLStatus. The completion status of the operation.
virtual SIPLStatus nvsipl::INvSIPLCamera::SetPlatformCfg ( const PlatformCfg platformCfg)
pure virtual

Sets a platform configuration.

Function sets a PlatformCfg camera platform configuration. NvSIPLCamera uses the information in the platform configuration to create the necessary DeviceBlock(s) and Pipeline Manager(s).

Parameters
[in]platformCfgPlatformCfg The external devices referenced in the platform configurations must be supported by the NvSIPL DeviceBlock (libnvsipl_devblk.so)
Returns
SIPLStatus. The completion status of the operation.
virtual SIPLStatus nvsipl::INvSIPLCamera::Start ( void  )
pure virtual

Starts NvSIPL Camera (libnvsipl.so) for the selected platform configuration.

The function internally starts the streaming from sensors belonging to each device block in the selected platform configuration and starts the associated image processing pipelines.

This function must be called after Init().

Returns
SIPLStatus. The completion status of the operation.
virtual SIPLStatus nvsipl::INvSIPLCamera::Stop ( void  )
pure virtual

Stops NvSIPL Camera (libnvsipl.so) for the selected platform configuration.

The function internally stops the streaming from sensors belonging to each device block in the selected platform configuration and stops the associated image processing pipelines.

This function must be called after Start().

Returns
SIPLStatus. The completion status of the operation.

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