NVIDIA DRIVE OS Linux SDK API Reference

5.2.3 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 
38 #define NVMEDIA_IOFST_NVSCISYNC_VERSION_MAJOR 1
39 
40 #define NVMEDIA_IOFST_NVSCISYNC_VERSION_MINOR 2
41 
46 #define NVMEDIA_IOFST_MAX_PRENVSCISYNCFENCES (3U)
47 
66 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
69  NvMediaVersion *version
70 );
71 
105 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
108  const NvMediaIOFST *iofst,
109  NvSciSyncAttrList attrlist,
110  NvMediaNvSciSyncClientType clienttype
111 );
112 
149 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
152  const NvMediaIOFST *iofst,
153  NvMediaNvSciSyncObjType syncobjtype,
154  NvSciSyncObj nvscisync
155 );
156 
187 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
190  const NvMediaIOFST *iofst,
191  NvSciSyncObj nvscisync
192 );
193 
223 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
226  const NvMediaIOFST *iofst,
227  NvSciSyncObj nvscisyncEOF
228 );
229 
276 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
279  const NvMediaIOFST *iofst,
280  const NvSciSyncFence *prenvscisyncfence
281 );
282 
328 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
331  const NvMediaIOFST *iofst,
332  NvSciSyncObj eofnvscisyncobj,
333  NvSciSyncFence *eofnvscisyncfence
334 );
335 
369 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
372  const NvMediaIOFST *iofst,
373  const NvSciSyncObj nvscisyncSOF
374 );
375 
414 // coverity[misra_c_2012_rule_8_7_violation : FALSE]
417  const NvMediaIOFST *iofst,
418  const NvSciSyncObj sofnvscisyncobj,
419  NvSciSyncFence *sofnvscisyncfence
420 );
421 
422 /*
423  * \defgroup history_nvmedia_iofst_nvscisync History
424  * Provides change history for the NvMedia IOFST NvSciSync API
425  *
426  * \section history_nvmedia_iofst_nvscisync Version History
427  *
428  * <b> Version 1.0 </b> April 03, 2019
429  * - Initial release
430  *
431  * <b> Version 1.1 </b> July 15, 2019
432  * - Add new API NvMediaIOFSTSetNvSciSyncObjforSOF and NvMediaIOFSTGetSOFNvSciSyncFence
433  *
434  * <b> Version 1.2 </b> October 5, 2019
435  * - Fix MISRA violations 8.13
436  * - Add Coverity Code annotations to suppress partial 8.7 violations
437  */
440 #ifdef __cplusplus
441 }; /* extern "C" */
442 #endif
443 
444 #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:308
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:234
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 and returned by NvMediaIOFSTCreate().
Definition: nvmedia_iofst.h:90
NvSciSyncObj
struct NvSciSyncObjRec * NvSciSyncObj
A Synchronization Object is a container holding the reconciled NvSciSyncAttrList defining constraints...
Definition: nvscisync.h:289
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