NVIDIA DRIVE OS Linux SDK API Reference

5.1.12.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvmedia_icp_nvscisync.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2019, 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_ICP_NVSCISYNC_H
17 #define NVMEDIA_ICP_NVSCISYNC_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include "nvmedia_core.h"
24 #include "nvscisync.h"
25 #include "nvmedia_icp.h"
26 
38 #define NVMEDIA_ICP_NVSCISYNC_VERSION_MAJOR 1
39 
40 #define NVMEDIA_ICP_NVSCISYNC_VERSION_MINOR 0
41 
44 #define NVMEDIA_ICP_MAX_PRENVSCISYNCFENCES (3)
45 
55  NvMediaVersion *version
56 );
57 
82  NvMediaICP *icp,
83  NvSciSyncAttrList attrlist,
85 );
86 
116  NvMediaICP *icp,
117  NvMediaNvSciSyncObjType syncobjtype,
118  NvSciSyncObj syncobj,
119  uint32_t channelId
120 );
121 
143  NvMediaICP *icp,
144  NvSciSyncObj syncobj,
145  uint32_t channelId
146 );
147 
170  NvMediaICP *icp,
171  NvSciSyncObj nvscisyncEOF,
172  uint32_t channelId
173 );
174 
213  NvMediaICP *icp,
214  const NvSciSyncObj eofnvscisyncobj,
215  uint32_t channelId,
216  NvSciSyncFence *eofnvscisyncfence
217 );
218 
240  NvMediaICP *icp,
241  NvSciSyncObj nvscisyncSOF,
242  uint32_t channelId
243 );
244 
245 
283  NvMediaICP *icp,
284  const NvSciSyncObj sofnvscisyncobj,
285  uint32_t channelId,
286  NvSciSyncFence *sofnvscisyncfence
287 );
288 
289 
328  NvMediaICP *icp,
329  const NvSciSyncFence *prenvscisyncfence,
330  uint32_t channelId
331 );
332 
333 
334 /*
335  * \defgroup history_nvmedia_icp_nvscisync History
336  * Provides change history for the NvMedia ICP NvSciSync API
337  *
338  * \section history_nvmedia_icp_nvscisync Version History
339  *
340  * <b> Version 1.0 </b> March 11, 2019
341  * - Initial release
342  *
343  */
345 #ifdef __cplusplus
346 }; /* extern "C" */
347 #endif
348 
349 #endif /* NVMEDIA_ICP_NVSCISYNC_H */
NvMediaNvSciSyncObjType
Defines NvMedia NvSciSyncObj types.
Definition: nvmedia_core.h:260
struct NvMediaICP NvMediaICP
Holds an image capture object per virtual group.
Definition: nvmedia_icp.h:305
struct NvSciSyncAttrListRec * NvSciSyncAttrList
Holds a pointer to an opaque NvSciSync attribute list.
Definition: nvscisync.h:182
Holds NvMedia version information.
Definition: nvmedia_core.h:226
NvMediaStatus NvMediaICPGetSOFNvSciSyncFence(NvMediaICP *icp, const NvSciSyncObj sofnvscisyncobj, uint32_t channelId, NvSciSyncFence *sofnvscisyncfence)
Gets SOF NvSciSyncFence for an NvMediaFeedImageGroup() operation.
NvMediaNvSciSyncClientType
Definitions ****************** SOFFence - Start of frame NvSciSyncFence.
Definition: nvmedia_core.h:247
NVIDIA Media Interface: Core
NvMediaStatus
Defines all possible error codes.
Definition: nvmedia_core.h:169
NVIDIA Media Interface: Image Capture Processing
NvMediaStatus NvMediaICPSetNvSciSyncObjforEOF(NvMediaICP *icp, NvSciSyncObj nvscisyncEOF, uint32_t channelId)
Set NvSciSyncObj to be used for a EOF NvSciSyncFence.
NvMediaStatus NvMediaICPRegisterNvSciSyncObj(NvMediaICP *icp, NvMediaNvSciSyncObjType syncobjtype, NvSciSyncObj syncobj, uint32_t channelId)
Registers an NvSciSyncObj with NvMediaICP.
NvMediaStatus NvMediaICPUnregisterNvSciSyncObj(NvMediaICP *icp, NvSciSyncObj syncobj, uint32_t channelId)
Unregisters an NvSciSyncObj with NvMediaICP.
NvMediaStatus NvMediaICPNvSciSyncGetVersion(NvMediaVersion *version)
Returns version information for the NvMedia ICP NvSciSync library.
NvMediaStatus NvMediaICPSetNvSciSyncObjforSOF(NvMediaICP *icp, NvSciSyncObj nvscisyncSOF, uint32_t channelId)
Sets the NvSciSyncObj to be used for a SOF NvSciSyncFence.
NvMediaStatus NvMediaICPFillNvSciSyncAttrList(NvMediaICP *icp, NvSciSyncAttrList attrlist, NvMediaNvSciSyncClientType clienttype)
Fills the NvMediaICP specific NvSciSync attributes.
struct NvSciSyncObjRec * NvSciSyncObj
Holds a pointer to an opaque NvSciSync object.
Definition: nvscisync.h:173
Defines the opaque NvSciSyncFence.
Definition: nvscisync.h:140
NVIDIA Software Communications Interface (SCI) : NvSciSync
NvMediaStatus NvMediaICPInsertPreNvSciSyncFence(NvMediaICP *icp, const NvSciSyncFence *prenvscisyncfence, uint32_t channelId)
Sets an NvSciSyncFence as a prefence for an NvMediaICPFeedImageGroup() operation. ...
NvMediaStatus NvMediaICPGetEOFNvSciSyncFence(NvMediaICP *icp, const NvSciSyncObj eofnvscisyncobj, uint32_t channelId, NvSciSyncFence *eofnvscisyncfence)
Gets EOFNvSciSyncFence for a NvMediaICPFeedImageGroup() operation.