TensorRT  8.0.3
NvInferLegacyDims.h
Go to the documentation of this file.
1 /*
2  * Copyright 1993-2021 NVIDIA Corporation. All rights reserved.
3  *
4  * NOTICE TO LICENSEE:
5  *
6  * This source code and/or documentation ("Licensed Deliverables") are
7  * subject to NVIDIA intellectual property rights under U.S. and
8  * international Copyright laws.
9  *
10  * These Licensed Deliverables contained herein is PROPRIETARY and
11  * CONFIDENTIAL to NVIDIA and is being provided under the terms and
12  * conditions of a form of NVIDIA software license agreement by and
13  * between NVIDIA and Licensee ("License Agreement") or electronically
14  * accepted by Licensee. Notwithstanding any terms or conditions to
15  * the contrary in the License Agreement, reproduction or disclosure
16  * of the Licensed Deliverables to any third party without the express
17  * written consent of NVIDIA is prohibited.
18  *
19  * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE
20  * LICENSE AGREEMENT, NVIDIA MAKES NO REPRESENTATION ABOUT THE
21  * SUITABILITY OF THESE LICENSED DELIVERABLES FOR ANY PURPOSE. IT IS
22  * PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND.
23  * NVIDIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THESE LICENSED
24  * DELIVERABLES, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY,
25  * NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE.
26  * NOTWITHSTANDING ANY TERMS OR CONDITIONS TO THE CONTRARY IN THE
27  * LICENSE AGREEMENT, IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY
28  * SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, OR ANY
29  * DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
30  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
31  * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
32  * OF THESE LICENSED DELIVERABLES.
33  *
34  * U.S. Government End Users. These Licensed Deliverables are a
35  * "commercial item" as that term is defined at 48 C.F.R. 2.101 (OCT
36  * 1995), consisting of "commercial computer software" and "commercial
37  * computer software documentation" as such terms are used in 48
38  * C.F.R. 12.212 (SEPT 1995) and is provided to the U.S. Government
39  * only as a commercial end item. Consistent with 48 C.F.R.12.212 and
40  * 48 C.F.R. 227.7202-1 through 227.7202-4 (JUNE 1995), all
41  * U.S. Government End Users acquire the Licensed Deliverables with
42  * only those rights set forth herein.
43  *
44  * Any use of the Licensed Deliverables in individual and commercial
45  * software must include, in the user documentation and internal
46  * comments to the code, the above Disclaimer and U.S. Government End
47  * Users Notice.
48  */
49 
50 #ifndef NV_INFER_LEGACY_DIMS_H
51 #define NV_INFER_LEGACY_DIMS_H
52 
53 #include "NvInferRuntimeCommon.h"
54 
61 
67 namespace nvinfer1
68 {
73 class Dims2 : public Dims
74 {
75 public:
80  {
81  nbDims = 2;
82  for (int32_t i = 0; i < MAX_DIMS; ++i)
83  {
84  d[i] = 0;
85  }
86  }
87 
94  Dims2(int32_t d0, int32_t d1)
95  {
96  nbDims = 2;
97  d[0] = d0;
98  d[1] = d1;
99  for (int32_t i = nbDims; i < MAX_DIMS; ++i)
100  {
101  d[i] = 0;
102  }
103  }
104 };
105 
110 class DimsHW : public Dims2
111 {
112 public:
117  : Dims2()
118  {
119  }
120 
127  DimsHW(int32_t height, int32_t width)
128  : Dims2(height, width)
129  {
130  }
131 
137  int32_t& h()
138  {
139  return d[0];
140  }
141 
147  int32_t h() const
148  {
149  return d[0];
150  }
151 
157  int32_t& w()
158  {
159  return d[1];
160  }
161 
167  int32_t w() const
168  {
169  return d[1];
170  }
171 };
172 
177 class Dims3 : public Dims
178 {
179 public:
184  {
185  nbDims = 3;
186  for (int32_t i = 0; i < MAX_DIMS; ++i)
187  {
188  d[i] = 0;
189  }
190  }
191 
199  Dims3(int32_t d0, int32_t d1, int32_t d2)
200  {
201  nbDims = 3;
202  d[0] = d0;
203  d[1] = d1;
204  d[2] = d2;
205  for (int32_t i = nbDims; i < MAX_DIMS; ++i)
206  {
207  d[i] = 0;
208  }
209  }
210 };
211 
216 class Dims4 : public Dims
217 {
218 public:
223  {
224  nbDims = 4;
225  for (int32_t i = 0; i < MAX_DIMS; ++i)
226  {
227  d[i] = 0;
228  }
229  }
230 
239  Dims4(int32_t d0, int32_t d1, int32_t d2, int32_t d3)
240  {
241  nbDims = 4;
242  d[0] = d0;
243  d[1] = d1;
244  d[2] = d2;
245  d[3] = d3;
246  for (int32_t i = nbDims; i < MAX_DIMS; ++i)
247  {
248  d[i] = 0;
249  }
250  }
251 };
252 
253 } // namespace nvinfer1
254 
255 #endif // NV_INFER_LEGCY_DIMS_H
nvinfer1::Dims3::Dims3
Dims3()
Construct an empty Dims3 object.
Definition: NvInferLegacyDims.h:183
nvinfer1::Dims4::Dims4
Dims4()
Construct an empty Dims4 object.
Definition: NvInferLegacyDims.h:222
nvinfer1::Dims32
Definition: NvInferRuntimeCommon.h:194
nvinfer1::DimsHW
Descriptor for two-dimensional spatial data.
Definition: NvInferLegacyDims.h:110
nvinfer1::DimsHW::DimsHW
DimsHW(int32_t height, int32_t width)
Construct a DimsHW given height and width.
Definition: NvInferLegacyDims.h:127
nvinfer1::Dims32::d
int32_t d[MAX_DIMS]
The extent of each dimension.
Definition: NvInferRuntimeCommon.h:202
nvinfer1
The TensorRT API version 1 namespace.
nvinfer1::DimsHW::h
int32_t h() const
Get the height.
Definition: NvInferLegacyDims.h:147
nvinfer1::Dims3::Dims3
Dims3(int32_t d0, int32_t d1, int32_t d2)
Construct a Dims3 from 3 elements.
Definition: NvInferLegacyDims.h:199
nvinfer1::Dims32::nbDims
int32_t nbDims
The number of dimensions.
Definition: NvInferRuntimeCommon.h:200
nvinfer1::Dims4::Dims4
Dims4(int32_t d0, int32_t d1, int32_t d2, int32_t d3)
Construct a Dims4 from 4 elements.
Definition: NvInferLegacyDims.h:239
nvinfer1::Dims2::Dims2
Dims2(int32_t d0, int32_t d1)
Construct a Dims2 from 2 elements.
Definition: NvInferLegacyDims.h:94
nvinfer1::DimsHW::h
int32_t & h()
Get the height.
Definition: NvInferLegacyDims.h:137
nvinfer1::DimsHW::w
int32_t & w()
Get the width.
Definition: NvInferLegacyDims.h:157
NvInferRuntimeCommon.h
nvinfer1::Dims3
Descriptor for three-dimensional data.
Definition: NvInferLegacyDims.h:177
nvinfer1::Dims2
Descriptor for two-dimensional data.
Definition: NvInferLegacyDims.h:73
nvinfer1::Dims32::MAX_DIMS
static constexpr int32_t MAX_DIMS
The maximum number of dimensions supported for a tensor.
Definition: NvInferRuntimeCommon.h:198
nvinfer1::DimsHW::DimsHW
DimsHW()
Construct an empty DimsHW object.
Definition: NvInferLegacyDims.h:116
nvinfer1::Dims4
Descriptor for four-dimensional data.
Definition: NvInferLegacyDims.h:216
nvinfer1::DimsHW::w
int32_t w() const
Get the width.
Definition: NvInferLegacyDims.h:167
nvinfer1::Dims2::Dims2
Dims2()
Construct an empty Dims2 object.
Definition: NvInferLegacyDims.h:79

  Copyright © 2024 NVIDIA Corporation
  Privacy Policy | Manage My Privacy | Do Not Sell or Share My Data | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact