NVIDIA DRIVE OS Linux SDK API Reference

6.0.8 Release
SIPL

Detailed Description

SIPL provides abstract and simple API to capture the output of image sensors with optional image processing.

Data Structures

struct  nvsipl::NvSiplRect
 Holds a rectangular region of a surface. More...
 
struct  nvsipl::NvSiplPoint
 Defines the location of a point on a two-dimensional object. More...
 
struct  nvsipl::NvSiplPointFloat
 Defines the float-precision location of a point on a two-dimensional object. More...
 
struct  nvsipl::SIPLErrorDetails
 Error details for a particular device. More...
 
struct  nvsipl::PlatformCfg
 Defines the camera platform configuration. More...
 

Modules

 CDAC_GPIO_DEVICE_FLAGS
 
 NvSIPL Camera
 Provides top-level interfaces to program external image devices and Tegra to create and manage image processing pipelines to receive outputs in NvSciBufObj Images.
 
 NvSIPL Query
 Manages a database of information about external devices (deserializer, serializer, sensor, and EEPROM) and the camera platform configurations supported by SIPL Device Block drivers.
 
 SIPL Auto Control
 Describes interfaces for SIPL Auto Control implementation.
 

Macros

#define SIPL_TRUE
 A true NvSiplBool value. More...
 
#define SIPL_FALSE
 A false NvSiplBool value. More...
 
#define NVSIPL_GPIO_DEVICE_SERIALIZER_SHIFT   (8U)
 Offset to NVSIPL_GPIO_DEVICE_SERIALIZER_0 flag. More...
 
#define NVSIPL_GPIO_DEVICE_SENSOR_SHIFT   (16U)
 Offset to NVSIPL_GPIO_DEVICE_SENSOR_0 flag. More...
 

Typedefs

using nvsipl::NvSiplGlobalTime = uint64_t
 Media global time, measured in microseconds. More...
 
using nvsipl::NvSiplBool = uint32_t
 A boolean value, holding SIPL_TRUE or SIPL_FALSE. More...
 

Enumerations

enum  nvsipl::NvSiplTimeBase {
  nvsipl::NVSIPL_TIME_BASE_CLOCK_PTP,
  nvsipl::NVSIPL_TIME_BASE_CLOCK_MONOTONIC,
  nvsipl::NVSIPL_TIME_BASE_CLOCK_USER_DEFINED
}
 Defines clock base for NvSiplTime. More...
 
enum  nvsipl::SIPLStatus {
  nvsipl::NVSIPL_STATUS_OK = 0,
  nvsipl::NVSIPL_STATUS_BAD_ARGUMENT,
  nvsipl::NVSIPL_STATUS_NOT_SUPPORTED,
  nvsipl::NVSIPL_STATUS_OUT_OF_MEMORY,
  nvsipl::NVSIPL_STATUS_RESOURCE_ERROR,
  nvsipl::NVSIPL_STATUS_TIMED_OUT,
  nvsipl::NVSIPL_STATUS_INVALID_STATE,
  nvsipl::NVSIPL_STATUS_EOF,
  nvsipl::NVSIPL_STATUS_NOT_INITIALIZED,
  nvsipl::NVSIPL_STATUS_FAULT_STATE,
  nvsipl::NVSIPL_STATUS_ERROR
}
 Defines the status codes returned by functions in SIPL modules. More...
 
enum  nvsipl::SIPLGpioEvent {
  nvsipl::NVSIPL_GPIO_EVENT_NOTHING = 0,
  nvsipl::NVSIPL_GPIO_EVENT_INTR,
  nvsipl::NVSIPL_GPIO_EVENT_INTR_TIMEOUT,
  nvsipl::NVSIPL_GPIO_EVENT_ERROR_CDAC,
  nvsipl::NVSIPL_GPIO_EVENT_ERROR_BACKEND,
  nvsipl::NVSIPL_GPIO_EVENT_ERROR_UNKNOWN
}
 CDAC GPIO event codes. More...
 
enum  nvsipl::SIPLModuleErrorReadFlag {
  nvsipl::NVSIPL_MODULE_ERROR_READ_SENSOR,
  nvsipl::NVSIPL_MODULE_ERROR_READ_SERIALIZER,
  nvsipl::NVSIPL_MODULE_ERROR_READ_ALL
}
 Flag indicating which module errors to read. More...
 

Macro Definition Documentation

◆ NVSIPL_GPIO_DEVICE_SENSOR_SHIFT

#define NVSIPL_GPIO_DEVICE_SENSOR_SHIFT   (16U)

Offset to NVSIPL_GPIO_DEVICE_SENSOR_0 flag.

Definition at line 179 of file NvSIPLCommon.hpp.

◆ NVSIPL_GPIO_DEVICE_SERIALIZER_SHIFT

#define NVSIPL_GPIO_DEVICE_SERIALIZER_SHIFT   (8U)

Offset to NVSIPL_GPIO_DEVICE_SERIALIZER_0 flag.

Definition at line 177 of file NvSIPLCommon.hpp.

◆ SIPL_FALSE

#define SIPL_FALSE

A false NvSiplBool value.

Definition at line 92 of file NvSIPLCommon.hpp.

◆ SIPL_TRUE

#define SIPL_TRUE

A true NvSiplBool value.

Definition at line 89 of file NvSIPLCommon.hpp.

Typedef Documentation

◆ NvSiplBool

using nvsipl::NvSiplBool = typedef uint32_t

A boolean value, holding SIPL_TRUE or SIPL_FALSE.

Definition at line 98 of file NvSIPLCommon.hpp.

◆ NvSiplGlobalTime

using nvsipl::NvSiplGlobalTime = typedef uint64_t

Media global time, measured in microseconds.

Definition at line 64 of file NvSIPLCommon.hpp.

Enumeration Type Documentation

◆ NvSiplTimeBase

Defines clock base for NvSiplTime.

Enumerator
NVSIPL_TIME_BASE_CLOCK_PTP 

Specifies that PTP clock is used for base time calculation.

NVSIPL_TIME_BASE_CLOCK_MONOTONIC 

Specifies that kernel monotonic clock is used for base time calculation.

NVSIPL_TIME_BASE_CLOCK_USER_DEFINED 

Specifies that a user defined clock is used for base time calculation.

Definition at line 102 of file NvSIPLCommon.hpp.

◆ SIPLGpioEvent

CDAC GPIO event codes.

Enumerator
NVSIPL_GPIO_EVENT_NOTHING 

There is no pending event.

NVSIPL_GPIO_EVENT_INTR 

An interrupt has occured.

NVSIPL_GPIO_EVENT_INTR_TIMEOUT 

An interrupt timeout period has elapsed.

NVSIPL_GPIO_EVENT_ERROR_CDAC 

An error occurred in CDAC code, potentially resulting in permanent loss of functionality.

(Error)

NVSIPL_GPIO_EVENT_ERROR_BACKEND 

An error occurred in backend code, potentially resulting in permanent loss of functionality.

(Error)

NVSIPL_GPIO_EVENT_ERROR_UNKNOWN 

A generic error occurred, potentially resulting in permanent loss of functionality.

(Error)

Definition at line 182 of file NvSIPLCommon.hpp.

◆ SIPLModuleErrorReadFlag

Flag indicating which module errors to read.

Enumerator
NVSIPL_MODULE_ERROR_READ_SENSOR 

Read only sensor error information when getting module error details.

Skip reading serializer error information.

NVSIPL_MODULE_ERROR_READ_SERIALIZER 

Read only serializer error information when getting error details.

Skip reading sensor error information.

NVSIPL_MODULE_ERROR_READ_ALL 

Read both sensor and serializer error information when getting error details.

Definition at line 229 of file NvSIPLCommon.hpp.

◆ SIPLStatus

Defines the status codes returned by functions in SIPL modules.

Enumerator
NVSIPL_STATUS_OK 

Indicates the operation completed successfully without errors.

NVSIPL_STATUS_BAD_ARGUMENT 

Indicates one or more invalid arguments was encountered.

NVSIPL_STATUS_NOT_SUPPORTED 

Indicates an unsupported operation or argument was encountered.

NVSIPL_STATUS_OUT_OF_MEMORY 

Indicates an out of memory or other system resource error was encountered.

NVSIPL_STATUS_RESOURCE_ERROR 

Indicates a resource error was encountered.

NVSIPL_STATUS_TIMED_OUT 

Indicates an operation timed out.

NVSIPL_STATUS_INVALID_STATE 

Indicates a module is in an invalid state.

NVSIPL_STATUS_EOF 

Indicates that end of file has been reached.

NVSIPL_STATUS_NOT_INITIALIZED 

Indicates a module was not initialized.

NVSIPL_STATUS_FAULT_STATE 

Indicates module is in non-recoverable fault state.

NVSIPL_STATUS_ERROR 

Indicates an unspecified error that is used when no other error code applies.

Definition at line 115 of file NvSIPLCommon.hpp.