Contains the classes and variables for implementation of SIPL.
Data Structures | |
class | AR0820_CUST1_CustomInterface |
The class of custom interfaces in Sensor AR0820. More... | |
class | AR0820NonFuSaCustomInterface |
struct | CameraModuleInfo |
Defines information for the camera module. More... | |
class | CryptoKeyInfo |
Describes a single globally-visible crypto key object. More... | |
struct | DeserInfo |
Defines the deserializer information. More... | |
struct | DeviceBlockInfo |
Defines the DeviceBlock information. More... | |
struct | DeviceInfoList |
Defines a list of all external image devices supported by NvSIPL Query and SIPL Device Block drivers. More... | |
struct | EEPROMInfo |
Defines the EEPROM information. More... | |
struct | EMPTY_INTR_NTFN |
Empty (invalid) InterruptNotification. More... | |
class | IInterfaceProvider |
Class providing access to device interfaces. More... | |
class | IInterruptStatus |
Interface defining Interrupt Status functionality. More... | |
class | IMX623_CustomInterface |
The class of custom interfaces in Sensor IMX623. More... | |
class | IMX728_CustomInterface |
The class of custom interfaces in Sensor IMX728. More... | |
class | Interface |
Top-level interface class implementable for a particular device. More... | |
struct | IntrGpioInfo |
Describes an Interrupt GPIO configuration. More... | |
class | INvSIPLCamera |
The top-level API for SIPL. More... | |
class | INvSIPLClient |
Defines the public data structures and describes the interfaces for NvSIPL Client. More... | |
class | INvSIPLDeviceBlockTrace |
Describes the interfaces of NvSIPLDeviceBlockTrace. More... | |
class | INvSIPLFrameCompletionQueue |
The interface to the frame completion queue. More... | |
class | INvSIPLNotificationQueue |
The interface to the notification queue. More... | |
class | INvSIPLQuery |
Defines the public data structures and describes the interfaces for NvSIPLQuery. More... | |
class | INvSIPLQueryTrace |
class | INvSIPLTrace |
Defines the public interfaces to control the logging/tracing of SIPL. More... | |
class | ISensorControl |
Interface defining basic Sensor Control functionality. More... | |
class | ISiplControlAuto |
Defines SIPL Control Auto Interface Class. More... | |
struct | IspStatsData |
ISP statistics container for data attributes. More... | |
struct | IspStatsInfo |
ISP statistics container for settings and data. More... | |
struct | IspStatsSettings |
ISP statistics container for settings attributes. More... | |
class | NonCopyable |
A class to prevent drivers being copied and duplicating state. More... | |
struct | NvIspStatsHeaderInfo |
ISP decoded stats including the stats header info. More... | |
struct | NvSiplControlInfo |
Defines the control info. More... | |
struct | NvSIPLDeviceBlockQueues |
Holds the queues used by the client to receive device block event notifications. More... | |
struct | NvSIPLDownscaleCropCfg |
Downscale and crop configuration. More... | |
class | NvSIPLImageGroupWriter |
Describes the interfaces of SIPL pipeline feeder. More... | |
struct | NvSiplISPBadPixelStats |
Holds controls for bad pixel statistics (BP Stats). More... | |
struct | NvSiplISPBadPixelStatsData |
Holds bad pixel statistics (BP Stats). More... | |
struct | NvSiplISPDeadPixelCorrectionStatsData |
Holds dead pixel correction statistics (DPC Stats). More... | |
struct | NvSiplISPDeadPixelCorrectionStatsROIData |
Holds dead pixel correction statistics (DPC Stats) metrics. More... | |
struct | NvSiplISPEllipse |
Defines an ellipse. More... | |
struct | NvSiplISPGlobalToneMapInfo |
Defines the global tone map spline. More... | |
struct | NvSiplISPHistogramStats |
Holds controls for histogram statistics (HIST Stats). More... | |
struct | NvSiplISPHistogramStatsData |
Holds histogram statistics (HIST Stats). More... | |
struct | NvSiplISPHistogramStatsOverride |
SIPL ISP Histogram Statistics Override Params. More... | |
struct | NvSiplISPLocalAvgClipStats |
Holds controls for local average and clip statistics (LAC Stats). More... | |
struct | NvSiplISPLocalAvgClipStatsData |
Holds local average and clip statistics block (LAC Stats). More... | |
struct | NvSiplISPLocalAvgClipStatsROIData |
Holds local average and clip statistics data for a region of interest. More... | |
struct | NvSiplISPRadialTF |
Defines a radial transform. More... | |
struct | NvSiplISPSplineControlPoint |
Defines a spline control point. More... | |
struct | NvSiplISPStatisticsWindows |
Defines the windows used in ISP LAC stats calculations. More... | |
struct | NvSIPLIspStatsOverrideSetting |
SIPL ISP Statistics Override Parameters. More... | |
struct | NvSIPLNitoMetadata |
NvSIPLNitoMetadata defines the 3-tuple returned by a successful call to GetNitoMetadataFromMemory(). More... | |
struct | NvSIPLPipelineBufferCfg |
Data structure to define the camera pipeline buffer configuration. More... | |
struct | NvSIPLPipelineConfiguration |
Defines the camera pipeline configuration. More... | |
class | NvSIPLPipelineNotifier |
Describes the interfaces of the SIPL pipeline notification handler. More... | |
struct | NvSIPLPipelineQueues |
This is the output structure for INvSIPLCamera::SetPipelineCfg(). More... | |
struct | NvSiplPoint |
Defines the location of a point on a two-dimensional object. More... | |
struct | NvSiplPointFloat |
Defines the float-precision location of a point on a two-dimensional object. More... | |
struct | NvSiplRect |
Holds a rectangular region of a surface. More... | |
struct | NvSIPLVersion |
Holds the version information of NvSIPL Camera and NvSIPL Client. More... | |
class | OV2311NonFuSaCustomInterface |
struct | PlatformCfg |
Defines the camera platform configuration. More... | |
struct | SensorInfo |
Defines the image sensor information. More... | |
struct | SerdesGPIOPinMap |
Defines GPIO mapping from the serializer to the deserializer. More... | |
struct | SerInfo |
Defines the serializer information. More... | |
struct | SiplControlAutoAwbGain |
Color Gains assuming order RGGB, RCCB, RCCC. More... | |
struct | SiplControlAutoAwbSetting |
Automatic white balance settings. More... | |
struct | SiplControlAutoInputParam |
Input parameters for processing AE/AWB. More... | |
struct | SiplControlAutoMetadata |
Structure containing metadata info for processing AE/AWB algorithm. More... | |
struct | SiplControlAutoOutputParam |
AE/AWB Output parameters. More... | |
struct | SiplControlAutoSensorSetting |
Sensor settings. More... | |
struct | SiplControlEmbedData |
Embedded data and parsed information. More... | |
struct | SiplControlEmbedInfo |
Parsed frame embedded information. More... | |
struct | SiplControlIspStatsInfo |
Structure containing ISP Stats information. More... | |
struct | SIPLErrorDetails |
Error details for a particular device. More... | |
class | UUID |
A universally unique identifier. More... | |
Typedefs | |
using | NvSiplGlobalTime = uint64_t |
Media global time, measured in microseconds. More... | |
using | NvSiplBool = uint32_t |
A boolean value, holding SIPL_TRUE or SIPL_FALSE. More... | |
Functions | |
constexpr UUID | IMX728_CUSTOM_INTERFACE_ID (0xBCE64356U, 0x1505U, 0x11EDU, 0x861DU, 0x02U, 0x42U, 0xACU, 0x12U, 0x00U, 0x02U) |
This is version 4 UUID obtained using https://www.uuidgenerator.net/ It's unique to IMX728 custom interface class and will be used to uniquely identify this interface. More... | |
constexpr UUID | IMX623_CUSTOM_INTERFACE_ID (0x90FB9A0DU, 0xA3AAU, 0x4C1BU, 0xA3B0U, 0xA1U, 0xE0U, 0xE9U, 0xBFU, 0x4FU, 0x7DU) |
This is version 4 UUID obtained using https://www.uuidgenerator.net/ It's unique to IMX623 custom interface class and will be used to uniquely identify this interface. More... | |
void | NvSIPLGetVersion (NvSIPLVersion &rVersion) |
Indicates the patch revision. More... | |
Variables | |
const UUID | AR0820_NONFUSA_CUSTOM_INTERFACE_ID (0x024ea870U, 0xa3f3U, 0x4b4cU, 0xbbb9U, 0xdfU, 0xbaU, 0x64U, 0x95U, 0x5AU, 0x1BU) |
const UUID | OV2311_NONFUSA_CUSTOM_INTERFACE_ID (0xca09c89aU, 0x255bU, 0x11ecU, 0x9621U, 0x02U, 0x42U, 0xacU, 0x13U, 0x00U, 0x02) |
static constexpr uint32_t | MAX_DEVGRP_NTFNS_PER_INTR { 8U } |
Maximum number of error notifications to dispatch to the client per device group (i.e. More... | |
static constexpr uint32_t | MAX_DEVICEBLOCKS_PER_PLATFORM {6U} |
Indicates the maximum number of device blocks per platform. More... | |
static constexpr uint32_t | MAX_CAMERAMODULES_PER_BLOCK {4U} |
Indicates the maximum number of camera modules per device block. More... | |
static constexpr uint32_t | MAX_CAMERAMODULES_PER_PLATFORM {MAX_DEVICEBLOCKS_PER_PLATFORM * MAX_CAMERAMODULES_PER_BLOCK} |
Indicates the maximum number of camera modules per platform. More... | |
static constexpr uint32_t | MAX_SENSORS_PER_PLATFORM {MAX_CAMERAMODULES_PER_PLATFORM} |
Indicates the maximum number of sensors per platform. More... | |
static constexpr std::uint32_t | MAX_CSI_LANE_CONFIGURATION {2U} |
Indicates the maximum number of CSI lane configurations. More... | |
static constexpr std::uint32_t | X2_CSI_LANE_CONFIGURATION {0U} |
Indicates the index for CSI 2 lanes. More... | |
static constexpr std::uint32_t | X4_CSI_LANE_CONFIGURATION {1U} |
Indicates the index for CSI 4 lanes. More... | |
constexpr UUID | AR0820_CUST1_CUSTOM_INTERFACE_ID |
static constexpr uint16_t | DEFAULT_SET_CAPTURE_BUFFER_COUNT {40U} |
The default number of capture buffers configured for a given pipeline. More... | |
static constexpr uint16_t | DEFAULT_SET_ISP_BUFFER_COUNT {64U} |
The default number of ISP buffers configured for a given pipeline. More... | |
constexpr uint32_t | NVSIPL_MAJOR_VER = 1U |
constexpr uint32_t | NVSIPL_MINOR_VER = 0U |
Indicates the major revision. More... | |
constexpr uint32_t | NVSIPL_PATCH_VER = 0U |
Indicates the minor revision. More... | |
constexpr uint32_t | NUM_GTM_SPLINE_POINTS = 18U |
Defines the number of global tone map spline points. More... | |
constexpr uint32_t | NVSIPL_LUMINANCE_CALIB_MATRIX_SIZE {4U} |
Defines the length(M) of a MxM luminance calibration matrix. More... | |
constexpr uint32_t | NVSIPL_CCM_MATRIX_SIZE {3U} |
Defines the length(M) of a MxM color correction matrix(ccm). More... | |
enum | NvSiplNvSciSyncClientType : std::uint8_t { SIPL_SIGNALER, SIPL_WAITER } |
Defines SIPL NvSciSync client types. More... | |
enum | NvSiplNvSciSyncObjType : std::uint8_t { NVSIPL_PRESYNCOBJ, NVSIPL_EOFSYNCOBJ } |
Defines SIPL NvSciSyncObj types. More... | |
static constexpr size_t | NITO_PARAMETER_SET_ID_SIZE {16U} |
Size of the NITO Parameters set ID. More... | |
static constexpr size_t | NITO_SCHEMA_HASH_SIZE {32U} |
Size of the NITO Schema Hash. More... | |
static constexpr size_t | NITO_DATA_HASH_SIZE {32U} |
Size of the NITO Data Hash. More... | |
SIPLStatus | GetNitoMetadataFromMemory (uint8_t const *const nitoMem, size_t const nitoMemLength, NvSIPLNitoMetadata *const metadataArray, size_t const metadataArrayLength, size_t *const metadataCount) |
Get NITO Metadata (knobset UUID, schema hash, data hash) from a NITO memory buffer. More... | |
|
strong |
Interrupt Status Codes.
Definition at line 29 of file NvSIPLInterrupts.hpp.
enum nvsipl::NvSiplNvSciSyncClientType : std::uint8_t |
Defines SIPL NvSciSync client types.
Enumerator | |
---|---|
SIPL_SIGNALER | For a given NvSciSyncObj SIPL acts as a signaler. This type corresponds to postfences from SIPL |
SIPL_WAITER | For a given NvSciSyncObj SIPL acts as a waiter. This type corresponds to prefences to SIPL |
Definition at line 119 of file NvSIPLCamera.hpp.
enum nvsipl::NvSiplNvSciSyncObjType : std::uint8_t |
Defines SIPL NvSciSyncObj types.
Enumerator | |
---|---|
NVSIPL_PRESYNCOBJ | Specifies an NvSciSyncObj type for which SIPL acts as a waiter. |
NVSIPL_EOFSYNCOBJ | Specifies an NvSciSyncObj type for which SIPL acts as a signaler, signaling EOFFence. |
Definition at line 134 of file NvSIPLCamera.hpp.
SIPLStatus nvsipl::GetNitoMetadataFromMemory | ( | uint8_t const *const | nitoMem, |
size_t const | nitoMemLength, | ||
NvSIPLNitoMetadata *const | metadataArray, | ||
size_t const | metadataArrayLength, | ||
size_t *const | metadataCount | ||
) |
Get NITO Metadata (knobset UUID, schema hash, data hash) from a NITO memory buffer.
The possible return values from this functions are:
[in] | nitoMem | Pointer to location of memory to load from. |
[in] | nitoMemLength | Size of memory pointed to by nitoMem. This value must be in the range [1, 6MB (6UL * 1024UL * 1024UL)]. |
[in,out] | metadataArray | An array of NvSIPLNitoMetadata tuples to store the result. |
[in] | metadataArrayLength | The size of array metadataArray |
[out] | metadataCount | The number of tuples stored in metadataArray on success. |
Usage considerations
|
constexpr |
This is version 4 UUID obtained using https://www.uuidgenerator.net/ It's unique to IMX623 custom interface class and will be used to uniquely identify this interface.
The client can use this ID to validate the correct interface before use.
Referenced by nvsipl::IMX623_CustomInterface::getClassInterfaceID(), and nvsipl::IMX623_CustomInterface::getInstanceInterfaceID().
|
constexpr |
This is version 4 UUID obtained using https://www.uuidgenerator.net/ It's unique to IMX728 custom interface class and will be used to uniquely identify this interface.
The client can use this ID to validate the correct interface before use.
Referenced by nvsipl::IMX728_CustomInterface::getClassInterfaceID(), and nvsipl::IMX728_CustomInterface::getInstanceInterfaceID().
|
constexpr |
Definition at line 24 of file AR0820_CUST1_CustomInterface.hpp.
const UUID nvsipl::AR0820_NONFUSA_CUSTOM_INTERFACE_ID(0x024ea870U, 0xa3f3U, 0x4b4cU, 0xbbb9U, 0xdfU, 0xbaU, 0x64U, 0x95U, 0x5AU, 0x1BU) |
|
staticconstexpr |
Size of the NITO Data Hash.
Definition at line 57 of file NvSIPLCamera.hpp.
|
staticconstexpr |
Size of the NITO Schema Hash.
Definition at line 55 of file NvSIPLCamera.hpp.
const UUID nvsipl::OV2311_NONFUSA_CUSTOM_INTERFACE_ID(0xca09c89aU, 0x255bU, 0x11ecU, 0x9621U, 0x02U, 0x42U, 0xacU, 0x13U, 0x00U, 0x02) |