DriveWorks SDK Reference
5.16.65 Release
For Test and Development only
CodecHeaderPlugin.h
Go to the documentation of this file.
1
2
//
3
// Notice
4
// ALL NVIDIA DESIGN SPECIFICATIONS AND CODE ("MATERIALS") ARE PROVIDED "AS IS" NVIDIA MAKES
5
// NO REPRESENTATIONS, WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
6
// THE MATERIALS, AND EXPRESSLY DISCLAIMS ANY IMPLIED WARRANTIES OF NONINFRINGEMENT,
7
// MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
8
//
9
// NVIDIA CORPORATION & AFFILIATES assumes no responsibility for the consequences of use of such
10
// information or for any infringement of patents or other rights of third parties that may
11
// result from its use. No license is granted by implication or otherwise under any patent
12
// or patent rights of NVIDIA CORPORATION & AFFILIATES. No third party distribution is allowed unless
13
// expressly authorized by NVIDIA. Details are subject to change without notice.
14
// This code supersedes and replaces all information previously supplied.
15
// NVIDIA CORPORATION & AFFILIATES products are not authorized for use as critical
16
// components in life support devices or systems without express written approval of
17
// NVIDIA CORPORATION & AFFILIATES.
18
//
19
// SPDX-FileCopyrightText: Copyright (c) 2022-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
20
// SPDX-License-Identifier: LicenseRef-NvidiaProprietary
21
//
22
// NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
23
// property and proprietary rights in and to this material, related
24
// documentation and any modifications thereto. Any use, reproduction,
25
// disclosure or distribution of this material and related documentation
26
// without an express license agreement from NVIDIA CORPORATION or
27
// its affiliates is strictly prohibited.
28
//
30
38
#ifndef DW_SENSORS_CODEC_CODECHEADERPLUGIN_H_
39
#define DW_SENSORS_CODEC_CODECHEADERPLUGIN_H_
40
41
#include <
dw/core/base/Types.h
>
42
#include <
dw/core/base/Status.h
>
43
#include <
dw/core/context/Context.h
>
44
45
#include <
dw/sensors/Codec.h
>
46
#include <dw/sensors/codecs/DecoderPlugin.h>
47
48
#ifdef __cplusplus
49
extern
"C"
{
50
#endif
51
53
typedef
void
*
dwCodecHeaderPluginHandle_t
;
54
65
typedef
dwStatus
(*
dwCodecHeaderPlugin_initializeHandle
)(
dwCodecHeaderPluginHandle_t
* handle,
void
*
const
codecConfig,
void
*
const
params);
66
75
typedef
dwStatus
(*
dwCodecHeaderPlugin_release
)(
dwCodecHeaderPluginHandle_t
handle);
76
87
typedef
dwStatus
(*
dwCodecHeaderPlugin_getCodecType
)(
char
*
const
mimeType,
const
size_t
size,
dwCodecHeaderPluginHandle_t
handle);
88
98
typedef
dwStatus
(*
dwCodecHeaderPlugin_getMediaType
)(
dwMediaType
*
const
mediaType,
dwCodecHeaderPluginHandle_t
handle);
99
108
typedef
dwStatus
(*
dwCodecHeaderPlugin_getMaxRawPacketSize
)(
size_t
*
const
size,
dwCodecHeaderPluginHandle_t
handle);
109
121
typedef
dwStatus
(*
dwCodecHeaderPlugin_getProperties
)(
void
*
const
properties,
size_t
const
size,
dwCodecHeaderPluginHandle_t
handle);
122
133
typedef
dwStatus
(*
dwCodecHeaderPlugin_getConfig
)(
void
* config,
size_t
const
configSize,
dwCodecHeaderPluginHandle_t
handle);
134
146
typedef
dwStatus
(*
dwCodecHeaderPlugin_save
)(
size_t
*
const
dataSize,
void
* data,
size_t
const
maxDataSize,
dwCodecHeaderPluginHandle_t
handle);
147
158
typedef
dwStatus
(*
dwCodecHeaderPlugin_canLoad
)(
void
const
*
const
data,
size_t
const
dataSize);
159
170
typedef
dwStatus
(*
dwCodecHeaderPlugin_load
)(
dwCodecHeaderPluginHandle_t
* handle,
void
const
*
const
data,
size_t
const
dataSize);
171
183
typedef
dwStatus
(*
dwCodecHeaderPlugin_initializeDecoder
)(dwDecoderPluginHandle_t* decoderHandle, dwDecoderPluginFunctions
const
** decoderFuncs,
dwCodecHeaderPluginHandle_t
handle,
dwContextHandle_t
ctx);
184
186
typedef
struct
dwCodecHeaderPluginFunctions
187
{
188
dwCodecHeaderPlugin_initializeHandle
initializeHandle
;
189
dwCodecHeaderPlugin_release
release
;
190
dwCodecHeaderPlugin_getCodecType
getCodecType
;
191
dwCodecHeaderPlugin_getMediaType
getMediaType
;
192
dwCodecHeaderPlugin_getMaxRawPacketSize
getMaxRawPacketSize
;
193
dwCodecHeaderPlugin_getProperties
getProperties
;
194
dwCodecHeaderPlugin_getConfig
getConfig
;
195
dwCodecHeaderPlugin_save
save
;
196
dwCodecHeaderPlugin_canLoad
canLoad
;
197
dwCodecHeaderPlugin_load
load
;
198
dwCodecHeaderPlugin_initializeDecoder
initializeDecoder
;
199
}
dwCodecHeaderPluginFunctions
;
200
201
#ifdef __cplusplus
202
}
203
#endif
204
205
#endif
// DW_SENSORS_CODEC_CODECHEADERPLUGIN_H_
dwCodecHeaderPluginFunctions::initializeDecoder
dwCodecHeaderPlugin_initializeDecoder initializeDecoder
function pointer of function used to initialize decoder.
Definition:
CodecHeaderPlugin.h:198
dwCodecHeaderPlugin_initializeDecoder
dwStatus(* dwCodecHeaderPlugin_initializeDecoder)(dwDecoderPluginHandle_t *decoderHandle, dwDecoderPluginFunctions const **decoderFuncs, dwCodecHeaderPluginHandle_t handle, dwContextHandle_t ctx)
Initialize a new handle to the Decoder managed by the plugin module.
Definition:
CodecHeaderPlugin.h:183
dwCodecHeaderPlugin_getMediaType
dwStatus(* dwCodecHeaderPlugin_getMediaType)(dwMediaType *const mediaType, dwCodecHeaderPluginHandle_t handle)
Get the MediaType of the CodecHeader.
Definition:
CodecHeaderPlugin.h:98
dwCodecHeaderPluginFunctions::release
dwCodecHeaderPlugin_release release
function pointer of release a CodecHeader managed by the plugin module..
Definition:
CodecHeaderPlugin.h:189
dwCodecHeaderPluginFunctions::getMediaType
dwCodecHeaderPlugin_getMediaType getMediaType
function pointer of function used to get media type.
Definition:
CodecHeaderPlugin.h:191
dwCodecHeaderPluginFunctions::save
dwCodecHeaderPlugin_save save
function pointer of function used to save.
Definition:
CodecHeaderPlugin.h:195
dwCodecHeaderPluginHandle_t
void * dwCodecHeaderPluginHandle_t
CodecHeader plugin handle.
Definition:
CodecHeaderPlugin.h:53
dwCodecHeaderPlugin_getProperties
dwStatus(* dwCodecHeaderPlugin_getProperties)(void *const properties, size_t const size, dwCodecHeaderPluginHandle_t handle)
Get the properties of the CodecHeader.
Definition:
CodecHeaderPlugin.h:121
dwCodecHeaderPluginFunctions::load
dwCodecHeaderPlugin_load load
function pointer of function used to load a serialized codec header.
Definition:
CodecHeaderPlugin.h:197
dwCodecHeaderPlugin_load
dwStatus(* dwCodecHeaderPlugin_load)(dwCodecHeaderPluginHandle_t *handle, void const *const data, size_t const dataSize)
Load a serialized codec header.
Definition:
CodecHeaderPlugin.h:170
dwCodecHeaderPluginFunctions::getMaxRawPacketSize
dwCodecHeaderPlugin_getMaxRawPacketSize getMaxRawPacketSize
function pointer of function used to get the max raw packet size of the CodecHeader.
Definition:
CodecHeaderPlugin.h:192
dwCodecHeaderPlugin_getMaxRawPacketSize
dwStatus(* dwCodecHeaderPlugin_getMaxRawPacketSize)(size_t *const size, dwCodecHeaderPluginHandle_t handle)
Get the max raw packet size of the CodecHeader.
Definition:
CodecHeaderPlugin.h:108
dwCodecHeaderPlugin_release
dwStatus(* dwCodecHeaderPlugin_release)(dwCodecHeaderPluginHandle_t handle)
Release a CodecHeader managed by the plugin module.
Definition:
CodecHeaderPlugin.h:75
dwCodecHeaderPluginFunctions::initializeHandle
dwCodecHeaderPlugin_initializeHandle initializeHandle
function pointer of initialize a new handle to the CodecHeader managed by the plugin module.
Definition:
CodecHeaderPlugin.h:188
dwCodecHeaderPlugin_save
dwStatus(* dwCodecHeaderPlugin_save)(size_t *const dataSize, void *data, size_t const maxDataSize, dwCodecHeaderPluginHandle_t handle)
Serializes the codec header.
Definition:
CodecHeaderPlugin.h:146
dwCodecHeaderPluginFunctions::getCodecType
dwCodecHeaderPlugin_getCodecType getCodecType
function pointer of function used to get codec type.
Definition:
CodecHeaderPlugin.h:190
dwCodecHeaderPluginFunctions::getConfig
dwCodecHeaderPlugin_getConfig getConfig
function pointer of function used to get the config of the CodecHeader.
Definition:
CodecHeaderPlugin.h:194
dwCodecHeaderPluginFunctions::getProperties
dwCodecHeaderPlugin_getProperties getProperties
function pointer of function used to get the properties of the CodecHeader.
Definition:
CodecHeaderPlugin.h:193
dwCodecHeaderPluginFunctions::canLoad
dwCodecHeaderPlugin_canLoad canLoad
function pointer of function used to check if given data can be loaded.
Definition:
CodecHeaderPlugin.h:196
dwCodecHeaderPlugin_getCodecType
dwStatus(* dwCodecHeaderPlugin_getCodecType)(char *const mimeType, const size_t size, dwCodecHeaderPluginHandle_t handle)
Get the CodecType of the CodecHeader.
Definition:
CodecHeaderPlugin.h:87
dwCodecHeaderPlugin_getConfig
dwStatus(* dwCodecHeaderPlugin_getConfig)(void *config, size_t const configSize, dwCodecHeaderPluginHandle_t handle)
Get the config of the CodecHeader.
Definition:
CodecHeaderPlugin.h:133
dwCodecHeaderPlugin_initializeHandle
dwStatus(* dwCodecHeaderPlugin_initializeHandle)(dwCodecHeaderPluginHandle_t *handle, void *const codecConfig, void *const params)
Initialize a new handle to the CodecHeader managed by the plugin module.
Definition:
CodecHeaderPlugin.h:65
dwCodecHeaderPlugin_canLoad
dwStatus(* dwCodecHeaderPlugin_canLoad)(void const *const data, size_t const dataSize)
Check if given data can be loaded.
Definition:
CodecHeaderPlugin.h:158
dwCodecHeaderPluginFunctions
Function Table exposing plugin functions.
Definition:
CodecHeaderPlugin.h:187
Codec.h
NVIDIA DriveWorks API: Codec Methods
Context.h
NVIDIA DriveWorks API: Core Methods
dwStatus
dwStatus
Status definition.
Definition:
ErrorDefs.h:44
Status.h
NVIDIA DriveWorks API: Core Status Methods
Types.h
NVIDIA DriveWorks API: Core Types
dwMediaType
dwMediaType
Media Type for Codec.
Definition:
Codec.h:61
dwContextHandle_t
struct dwContextObject * dwContextHandle_t
Context handle.
Definition:
Context.h:86
Advance Information | Subject to Change | Prepared and Provided under NDA | Generated by NVIDIA | PR-08397-V5.0