NVIDIA DriveOS Linux NSR SDK API Reference

7.0.3.0 Release
INvSiplControlAuto.hpp
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2020-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: LicenseRef-NvidiaProprietary
4  *
5  * NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
6  * property and proprietary rights in and to this material, related
7  * documentation and any modifications thereto. Any use, reproduction,
8  * disclosure or distribution of this material and related documentation
9  * without an express license agreement from NVIDIA CORPORATION or
10  * its affiliates is strictly prohibited.
11  */
12 
13 /* NVIDIA SIPL Control Auto Interface */
14 
15 #ifndef NVSIPLCONTROLAUTOINTERFACE_HPP
16 #define NVSIPLCONTROLAUTOINTERFACE_HPP
17 
18 
19 #include "NvSIPLCommon.hpp"
20 #include "NvSiplControlAutoDef.hpp"
21 
35 namespace nvsipl
36 {
37 
47 
48 public:
82  virtual SIPLStatus Process(const SiplControlAutoInputParam& inParams,
83  SiplControlAutoOutputParam& outParams) = 0;
84 
119  virtual SIPLStatus GetNoiseProfile(const SiplControlEmbedInfo& currFrameEmbedInfo,
120  uint32_t const maxSupportedNoiseProfiles,
121  uint32_t& noiseProfile) {
122  static_cast<void>(currFrameEmbedInfo);
123  static_cast<void>(maxSupportedNoiseProfiles);
124  noiseProfile = 0U;
125  return NVSIPL_STATUS_OK;
126  }
127 
157  virtual SIPLStatus Reset() {
159  }
160 
162  virtual ~ISiplControlAuto() = default;
163 
164 protected:
166  ISiplControlAuto() = default;
167 
168 private:
169 
171  ISiplControlAuto(ISiplControlAuto const &) = delete;
173  ISiplControlAuto& operator= (ISiplControlAuto const &) & = delete;
174 
176  ISiplControlAuto(ISiplControlAuto &&) = delete;
178  ISiplControlAuto& operator= (ISiplControlAuto &&) & = delete;
179 };
180 
183 } // namespace nvsipl
184 
185 #endif // NVSIPLCONTROLAUTOINTERFACE_HPP
nvsipl::NVSIPL_STATUS_NOT_SUPPORTED
@ NVSIPL_STATUS_NOT_SUPPORTED
Indicates an unsupported operation or argument was encountered.
Definition: NvSIPLCommon.hpp:164
NvSIPLCommon.hpp
NVIDIA SIPL: Common Data Structures - SIPL
nvsipl::NVSIPL_STATUS_OK
@ NVSIPL_STATUS_OK
Indicates the operation completed successfully without errors.
Definition: NvSIPLCommon.hpp:158
nvsipl::SiplControlAutoOutputParam
AE/AWB Output parameters.
Definition: NvSiplControlAutoDef.hpp:226
nvsipl::ISiplControlAuto::Reset
virtual SIPLStatus Reset()
Function to reset to the state right after initialization.
Definition: INvSiplControlAuto.hpp:157
NvSiplControlAutoDef.hpp
NVIDIA SIPL: Auto Control Settings - SIPL Auto Control
nvsipl::ISiplControlAuto::~ISiplControlAuto
virtual ~ISiplControlAuto()=default
SIPL Control Auto Interface class default destructor.
nvsipl::SIPLStatus
SIPLStatus
Defines the status codes returned by functions in SIPL modules.
Definition: NvSIPLCommon.hpp:153
nvsipl::SiplControlAutoInputParam
Input parameters for processing AE/AWB.
Definition: NvSiplControlAutoDef.hpp:204
nvsipl::SiplControlEmbedInfo
Parsed frame embedded information.
Definition: NvSiplControlAutoDef.hpp:75
nvsipl::ISiplControlAuto::GetNoiseProfile
virtual SIPLStatus GetNoiseProfile(const SiplControlEmbedInfo &currFrameEmbedInfo, uint32_t const maxSupportedNoiseProfiles, uint32_t &noiseProfile)
Function to get noise profile from captured frame embedded data.
Definition: INvSiplControlAuto.hpp:119
nvsipl
Contains the classes and variables for implementation of SIPL.
Definition: NvSIPLCamera.hpp:44
nvsipl::ISiplControlAuto::ISiplControlAuto
ISiplControlAuto()=default
SIPL Control Auto Interface class default constructor.
nvsipl::ISiplControlAuto
Defines SIPL Control Auto Interface Class.
Definition: INvSiplControlAuto.hpp:46
nvsipl::ISiplControlAuto::Process
virtual SIPLStatus Process(const SiplControlAutoInputParam &inParams, SiplControlAutoOutputParam &outParams)=0
Function to process auto (AE-AWB) algorithm.