NVIDIA DRIVE OS Linux SDK API Reference

5.1.15.2 Release
For Test and Development only
nvmedia_iofst_nvscisync.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019-2020, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
16 #ifndef NVMEDIA_IOFST_NVSCISYNC_H
17 #define NVMEDIA_IOFST_NVSCISYNC_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include "nvmedia_core.h"
24 #include "nvscisync.h"
25 #include "nvmedia_iofst.h"
26 
37 #define NVMEDIA_IOFST_NVSCISYNC_VERSION_MAJOR 1
38 
39 #define NVMEDIA_IOFST_NVSCISYNC_VERSION_MINOR 2
40 
45 #define NVMEDIA_IOFST_MAX_PRENVSCISYNCFENCES (3U)
46 
59 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
62  NvMediaVersion *version
63 );
64 
89 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
92  const NvMediaIOFST *iofst,
93  NvSciSyncAttrList attrlist,
95 );
96 
97 
129 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
132  const NvMediaIOFST *iofst,
133  NvMediaNvSciSyncObjType syncobjtype,
134  NvSciSyncObj nvscisync
135 );
136 
161 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
164  const NvMediaIOFST *iofst,
165  NvSciSyncObj nvscisync
166 );
167 
190 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
193  const NvMediaIOFST *iofst,
194  NvSciSyncObj nvscisyncEOF
195 );
196 
236 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
239  const NvMediaIOFST *iofst,
240  const NvSciSyncFence *prenvscisyncfence
241 );
242 
282 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
285  const NvMediaIOFST *iofst,
286  NvSciSyncObj eofnvscisyncobj,
287  NvSciSyncFence *eofnvscisyncfence
288 );
289 
314 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
317  const NvMediaIOFST *iofst,
318  const NvSciSyncObj nvscisyncSOF
319 );
320 
352 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
355  const NvMediaIOFST *iofst,
356  const NvSciSyncObj sofnvscisyncobj,
357  NvSciSyncFence *sofnvscisyncfence
358 );
359 
360 /*
361  * \defgroup history_nvmedia_iofst_nvscisync History
362  * Provides change history for the NvMedia IOFST NvSciSync API
363  *
364  * \section history_nvmedia_iofst_nvscisync Version History
365  *
366  * <b> Version 1.0 </b> April 03, 2019
367  * - Initial release
368  *
369  * <b> Version 1.1 </b> July 15, 2019
370  * - Add new API NvMediaIOFSTSetNvSciSyncObjforSOF and NvMediaIOFSTGetSOFNvSciSyncFence
371  *
372  * <b> Version 1.2 </b> October 5, 2019
373  * - Fix MISRA violations 8.13
374  * - Add Coverity Code annotations to suppress partial 8.7 violations
375  */
378 #ifdef __cplusplus
379 }; /* extern "C" */
380 #endif
381 
382 #endif /* NVMEDIA_IOFST_NVSCISYNC_H */
NvMediaIOFSTFillNvSciSyncAttrList
NvMediaStatus NvMediaIOFSTFillNvSciSyncAttrList(const NvMediaIOFST *iofst, NvSciSyncAttrList attrlist, NvMediaNvSciSyncClientType clienttype)
Fills the NvMediaIOFST specific NvSciSync attributes.
NvMediaNvSciSyncObjType
NvMediaNvSciSyncObjType
Defines NvMedia NvSciSyncObj types.
Definition: nvmedia_core.h:271
NvMediaIOFSTNvSciSyncGetVersion
NvMediaStatus NvMediaIOFSTNvSciSyncGetVersion(NvMediaVersion *version)
Returns the version information for the NvMediaIOFST NvSciSync library.
NvMediaIOFSTRegisterNvSciSyncObj
NvMediaStatus NvMediaIOFSTRegisterNvSciSyncObj(const NvMediaIOFST *iofst, NvMediaNvSciSyncObjType syncobjtype, NvSciSyncObj nvscisync)
Registers an NvSciSyncObj with NvMediaIOFST.
NvSciSyncAttrList
struct NvSciSyncAttrListRec * NvSciSyncAttrList
A container constituting an NvSciSyncAttrList which contains:
Definition: nvscisync.h:295
nvscisync.h
NVIDIA Software Communications Interface (SCI) : NvSciSync
NvMediaVersion
Holds NvMedia version information.
Definition: nvmedia_core.h:237
nvmedia_core.h
NVIDIA Media Interface: Core
NvMediaStatus
NvMediaStatus
Defines all possible error codes.
Definition: nvmedia_core.h:180
NvMediaIOFSTInsertPreNvSciSyncFence
NvMediaStatus NvMediaIOFSTInsertPreNvSciSyncFence(const NvMediaIOFST *iofst, const NvSciSyncFence *prenvscisyncfence)
Sets an NvSciSyncFence as a prefence for an NvMediaIOFSTProcessFrame() operation.
NvSciSyncFence
Defines the opaque NvSciSyncFence.
Definition: nvscisync.h:227
NvMediaIOFSTSetNvSciSyncObjforSOF
NvMediaStatus NvMediaIOFSTSetNvSciSyncObjforSOF(const NvMediaIOFST *iofst, const NvSciSyncObj nvscisyncSOF)
Specifies the NvSciSyncObj to be used for an SOF NvSciSyncFence.
NvMediaIOFSTGetEOFNvSciSyncFence
NvMediaStatus NvMediaIOFSTGetEOFNvSciSyncFence(const NvMediaIOFST *iofst, NvSciSyncObj eofnvscisyncobj, NvSciSyncFence *eofnvscisyncfence)
Gets EOF NvSciSyncFence for an NvMediaIOFSTProcessFrame() operation.
NvMediaIOFSTSetNvSciSyncObjforEOF
NvMediaStatus NvMediaIOFSTSetNvSciSyncObjforEOF(const NvMediaIOFST *iofst, NvSciSyncObj nvscisyncEOF)
Specifies the NvSciSyncObj to be used for an EOF NvSciSyncFence.
NvMediaIOFSTGetSOFNvSciSyncFence
NvMediaStatus NvMediaIOFSTGetSOFNvSciSyncFence(const NvMediaIOFST *iofst, const NvSciSyncObj sofnvscisyncobj, NvSciSyncFence *sofnvscisyncfence)
Gets SOF NvSciSyncFence for an NvMediaIOFSTProcessFrame() operation.
NvMediaIOFST
Holds an OFST object created by NvMediaIOFSTCreate.
Definition: nvmedia_iofst.h:70
NvSciSyncObj
struct NvSciSyncObjRec * NvSciSyncObj
A Synchronization Object is a container holding the reconciled NvSciSyncAttrList defining constraints...
Definition: nvscisync.h:282
NvMediaIOFSTUnregisterNvSciSyncObj
NvMediaStatus NvMediaIOFSTUnregisterNvSciSyncObj(const NvMediaIOFST *iofst, NvSciSyncObj nvscisync)
Unregisters an NvSciSyncObj with NvMediaIOFST.
nvmedia_iofst.h
NVIDIA Media Interface: NvMedia Image OpticalFlow/StereoDisparity (OFST) Estimator API
NvMediaNvSciSyncClientType
NvMediaNvSciSyncClientType
NvMedia NvSciSync Client Type.
Definition: nvmedia_core.h:258