Loading [MathJax]/extensions/tex2jax.js
  • <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • NVIDIA DRIVE OS Linux SDK API Reference

    6.0.9 Release
    All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
    NvSIPLQuery.hpp
    Go to the documentation of this file.
    1 /*
    2  * Copyright (c) 2019-2023, NVIDIA CORPORATION. All rights reserved.
    3  *
    4  * NVIDIA CORPORATION and its licensors retain all intellectual property
    5  * and proprietary rights in and to this software, related documentation
    6  * and any modifications thereto. Any use, reproduction, disclosure or
    7  * distribution of this software and related documentation without an express
    8  * license agreement from NVIDIA CORPORATION is strictly prohibited.
    9  */
    10 #ifndef NVSIPLQUERY_HPP
    11 #define NVSIPLQUERY_HPP
    12 
    13 #include "NvSIPLCommon.hpp"
    14 #include "NvSIPLPlatformCfg.hpp"
    15 
    16 #include <string>
    17 #include <cstdint>
    18 #include <memory>
    19 #include <vector>
    20 
    28 namespace nvsipl
    29 {
    30 
    34 {
    36  std::vector<SensorInfo> sensorInfoList;
    38  std::vector<EEPROMInfo> eepromInfoList;
    40  std::vector<SerInfo> serInfoList;
    42  std::vector<CameraModuleInfo> cameraModuleList;
    44  std::vector<DeserInfo> deserInfoList;
    45 };
    46 
    67 {
    68 public:
    69 
    70  static constexpr uint32_t MAJOR_VER = 1u;
    71  static constexpr uint32_t MINOR_VER = 0u;
    72  static constexpr uint32_t PATCH_VER = 0u;
    80  struct Version
    81  {
    82  uint32_t uMajor = MAJOR_VER;
    83  uint32_t uMinor = MINOR_VER;
    84  uint32_t uPatch = PATCH_VER;
    85  };
    86 
    107  static void GetVersion(Version& version);
    108 
    133  static std::unique_ptr <INvSIPLQuery> GetInstance(void);
    134 
    156  virtual SIPLStatus ParseDatabase(void) = 0;
    157 
    183  virtual SIPLStatus ParseJsonFile(std::string fileName) = 0;
    184 
    205  const virtual DeviceInfoList* GetDeviceInfoList() const = 0;
    206 
    227  virtual std::vector <const PlatformCfg*> GetPlatformCfgList() const = 0;
    228 
    248  virtual SIPLStatus GetPlatformCfg(std::string name,
    249  PlatformCfg& oConfig) const = 0;
    250 
    258  {
    259  LINK_0 = 0x0001,
    260  LINK_1 = 0x0010,
    261  LINK_2 = 0x0100,
    262  LINK_3 = 0x1000
    263  };
    264 
    291  virtual SIPLStatus ApplyMask(PlatformCfg& platCfg,
    292  const std::vector <uint32_t>& vMasks) const = 0;
    293 
    295  virtual ~INvSIPLQuery() = default;
    296 
    297 }; //INvSIPLQuery
    298 
    301 }// namespace nvsipl
    302 
    303 
    304 
    305 #endif //NVSIPLQUERY_HPP
    nvsipl::INvSIPLQuery::GetPlatformCfg
    virtual SIPLStatus GetPlatformCfg(std::string name, PlatformCfg &oConfig) const =0
    Returns a PlatformCfg object by name.
    nvsipl::DeviceInfoList::sensorInfoList
    std::vector< SensorInfo > sensorInfoList
    Holds a vector of SensorInfo objects.
    Definition: NvSIPLQuery.hpp:36
    nvsipl::INvSIPLQuery
    Defines the public data structures and describes the interfaces for NvSIPLQuery.
    Definition: NvSIPLQuery.hpp:66
    nvsipl::INvSIPLQuery::GetInstance
    static std::unique_ptr< INvSIPLQuery > GetInstance(void)
    Gets a handle to an instance of INvSIPLQuery.
    nvsipl::INvSIPLQuery::GetDeviceInfoList
    const virtual DeviceInfoList * GetDeviceInfoList() const =0
    Returns a pointer to the list of all external image devices supported by NvSIPL Query and SIPL Device...
    nvsipl::INvSIPLQuery::Version
    Defines the version information for NvSIPLQuery_API.
    Definition: NvSIPLQuery.hpp:80
    NvSIPLCommon.hpp
    NVIDIA SIPL: Common Data Structures - SIPL
    NvSIPLPlatformCfg.hpp
    NVIDIA SIPL: Camera Platform Configuration
    nvsipl::INvSIPLQuery::EnableMask
    EnableMask
    Defines link enable masks for deserializers.
    Definition: NvSIPLQuery.hpp:257
    nvsipl::INvSIPLQuery::Version::uMinor
    uint32_t uMinor
    Holds a minor revision.
    Definition: NvSIPLQuery.hpp:83
    nvsipl::INvSIPLQuery::Version::uPatch
    uint32_t uPatch
    Holds a patch revision.
    Definition: NvSIPLQuery.hpp:84
    nvsipl::INvSIPLQuery::MAJOR_VER
    static constexpr uint32_t MAJOR_VER
    Indicates a major revision.
    Definition: NvSIPLQuery.hpp:70
    nvsipl::INvSIPLQuery::MINOR_VER
    static constexpr uint32_t MINOR_VER
    Indicates a minor revision.
    Definition: NvSIPLQuery.hpp:71
    nvsipl::PlatformCfg
    Defines the camera platform configuration.
    Definition: NvSIPLPlatformCfg.hpp:36
    nvsipl::DeviceInfoList::deserInfoList
    std::vector< DeserInfo > deserInfoList
    Holds a vector of DeserInfo objects.
    Definition: NvSIPLQuery.hpp:44
    nvsipl::INvSIPLQuery::LINK_1
    @ LINK_1
    2nd Link
    Definition: NvSIPLQuery.hpp:260
    nvsipl::INvSIPLQuery::GetVersion
    static void GetVersion(Version &version)
    Returns the library version.
    nvsipl::INvSIPLQuery::ParseDatabase
    virtual SIPLStatus ParseDatabase(void)=0
    Parses the built-in JSON database and updates the internal state of the implementation class.
    nvsipl::DeviceInfoList::eepromInfoList
    std::vector< EEPROMInfo > eepromInfoList
    Holds a vector of EEPROMInfo objects.
    Definition: NvSIPLQuery.hpp:38
    nvsipl::INvSIPLQuery::ParseJsonFile
    virtual SIPLStatus ParseJsonFile(std::string fileName)=0
    Parses the input JSON file containing a list of user-specified camera platform configuration.
    nvsipl::SIPLStatus
    SIPLStatus
    Defines the status codes returned by functions in SIPL modules.
    Definition: NvSIPLCommon.hpp:150
    nvsipl::DeviceInfoList::serInfoList
    std::vector< SerInfo > serInfoList
    Holds a vector of SerInfo objects.
    Definition: NvSIPLQuery.hpp:40
    nvsipl::INvSIPLQuery::ApplyMask
    virtual SIPLStatus ApplyMask(PlatformCfg &platCfg, const std::vector< uint32_t > &vMasks) const =0
    Applies masks to the input platform configuration.
    nvsipl::DeviceInfoList
    Defines a list of all external image devices supported by NvSIPL Query and SIPL Device Block drivers.
    Definition: NvSIPLQuery.hpp:33
    nvsipl::INvSIPLQuery::PATCH_VER
    static constexpr uint32_t PATCH_VER
    Indicates a patch revision.
    Definition: NvSIPLQuery.hpp:72
    nvsipl::INvSIPLQuery::GetPlatformCfgList
    virtual std::vector< const PlatformCfg * > GetPlatformCfgList() const =0
    Returns a list of camera platform configurations supported by NvSIPL Query and NvSIPL Camera.
    nvsipl::INvSIPLQuery::LINK_2
    @ LINK_2
    3rd Link
    Definition: NvSIPLQuery.hpp:261
    nvsipl::DeviceInfoList::cameraModuleList
    std::vector< CameraModuleInfo > cameraModuleList
    Holds a vector of CameraModuleInfo objects.
    Definition: NvSIPLQuery.hpp:42
    nvsipl::INvSIPLQuery::Version::uMajor
    uint32_t uMajor
    Holds a major revision.
    Definition: NvSIPLQuery.hpp:82
    nvsipl
    Contains the classes and variables for implementation of SIPL.
    Definition: INvSiplControlAuto.hpp:33
    nvsipl::INvSIPLQuery::LINK_0
    @ LINK_0
    1st Link
    Definition: NvSIPLQuery.hpp:259
    nvsipl::INvSIPLQuery::LINK_3
    @ LINK_3
    4th Link
    Definition: NvSIPLQuery.hpp:262
    nvsipl::INvSIPLQuery::~INvSIPLQuery
    virtual ~INvSIPLQuery()=default
    Default destructor.
    人人超碰97caoporen国产