Defines the core Context methods of the SDK.
Data Structures | |
struct | dwContextParameters |
A set of parameters that is passed to the SDK to create the context. More... | |
struct | dwCustomizedFileFunctions |
Data structure representing a customize FileStream that can be passed in. More... | |
Typedefs | |
typedef struct dwContextObject const * | dwConstContextHandle_t |
typedef struct dwContextObject * | dwContextHandle_t |
Context handle. More... | |
typedef void * | dwCustomizedFileHandle |
FileStream function pointers handle. More... | |
typedef struct dwVisualizationContextObject const * | dwVisualizationConstContextHandle_t |
typedef struct dwVisualizationContextObject * | dwVisualizationContextHandle_t |
Context handle. More... | |
Functions | |
DW_API_PUBLIC dwStatus | dwContext_advanceTime (dwTime_t newTime, dwContextHandle_t context) |
Advances the virtual time to newTime. More... | |
DW_API_PUBLIC dwStatus | dwContext_getCUDAProperties (int32_t *driverVersion, int32_t *apiVersion, dwContextHandle_t context) |
Returns Driver and Runtime API version of CUDA on the current machine. More... | |
DW_API_PUBLIC dwStatus | dwContext_getCurrentTime (dwTime_t *time, dwContextHandle_t context) |
Returns the current timestamp. More... | |
DW_API_PUBLIC dwStatus | dwContext_getDataPath (const char8_t **dataPath, dwContextHandle_t context) |
Gets the data path of the library that contains the driveworks context. More... | |
DW_API_PUBLIC dwStatus | dwContext_getDLAEngineCount (int32_t *count, dwContextHandle_t context) |
Get the available DLA engines count. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUArchitecture (const char8_t **architecture, dwContextHandle_t context) |
Returns the architecture for the currently selected CUDA device. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUAttribute (int32_t *value, cudaDeviceAttr attribute, int32_t deviceNum, dwContextHandle_t context) |
Returns the value of the selected CUDA attribute for the specific CUDA device. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUCount (int32_t *count, dwContextHandle_t context) |
Get the available GPU devices count. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUDeviceCurrent (int32_t *deviceNumber, dwContextHandle_t context) |
Returns the currently selected GPU device. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUDeviceType (dwGPUDeviceType *deviceType, int32_t deviceNum, dwContextHandle_t context) |
Returns the device type of the input GPU number. More... | |
DW_API_PUBLIC dwStatus | dwContext_getGPUProperties (cudaDeviceProp *properties, int32_t deviceNum, dwContextHandle_t context) |
Returns the properties for the specific CUDA device. More... | |
DW_API_PUBLIC dwStatus | dwContext_getPVAEngineCount (uint32_t *count, dwContextHandle_t context) |
Get the available PVA engines count. More... | |
DW_API_PUBLIC dwStatus | dwContext_getUseVirtualTime (bool *useVirtualTime, dwContextHandle_t context) |
Check if in virtual time mode. More... | |
DW_API_PUBLIC dwStatus | dwContext_isTimePTPSynchronized (bool *flag, dwContextHandle_t context) |
Check if the used time source inside the context is synchronized over PTP. More... | |
DW_API_PUBLIC dwStatus | dwContext_selectGPUDevice (int32_t deviceNumber, dwContextHandle_t context) |
Selects a GPU device, if available. More... | |
DW_API_PUBLIC dwStatus | dwContext_setCustomFileFunctions (dwContextHandle_t context, dwCustomizedFileFunctions *fileFunctionPtr) |
Set the customized fileStream function pointers in context. More... | |
DW_API_PUBLIC dwStatus | dwGetLastError (const char8_t **errorMsg) |
Retrieves the last error encountered. More... | |
DW_API_PUBLIC dwStatus | dwInitialize (dwContextHandle_t *context, dwVersion header_version, const dwContextParameters *params) |
Creates and initializes an SDK context. More... | |
DW_API_PUBLIC dwStatus | dwRelease (dwContextHandle_t context) |
Releases the context. More... | |
DW_VIZ_API_PUBLIC dwStatus | dwVisualizationGetDWContext (dwContextHandle_t *dwctx, dwVisualizationContextHandle_t context) |
Return DW context associated with this visualization library. More... | |
DW_VIZ_API_PUBLIC dwStatus | dwVisualizationInitialize (dwVisualizationContextHandle_t *vizContext, dwContextHandle_t ctx) |
Creates and initializes a Visualization SDK context. More... | |
DW_VIZ_API_PUBLIC dwStatus | dwVisualizationRelease (dwVisualizationContextHandle_t context) |
Releases the context. More... | |
struct dwContextParameters |
Data Fields | ||
---|---|---|
const char8_t * | dataPath |
Path where all DriveWorks related data required during runtime are stored. If path is set to NULL, then a data folder is looked for in typical install locations in relation to the current driveworks library install location. |
bool | enableCudaTaskGraph | if true, Cuda task-graph will be used where possible. |
bool | enablePVA |
if true, PVA platform will be enabled.
|
bool | skipCudaInit |
if true will skip CUDA initialization in the context
|
bool | useVirtualTime |
if true, the context's time source will be a virtual clock. This clock must be advanced manually, see dwContext_advanceTime |
typedef struct dwContextObject const* dwConstContextHandle_t |
typedef struct dwContextObject* dwContextHandle_t |
typedef void* dwCustomizedFileHandle |
typedef struct dwVisualizationContextObject const* dwVisualizationConstContextHandle_t |
Definition at line 68 of file Visualization.h.
typedef struct dwVisualizationContextObject* dwVisualizationContextHandle_t |
Context handle.
Definition at line 67 of file Visualization.h.
DW_API_PUBLIC dwStatus dwContext_advanceTime | ( | dwTime_t | newTime, |
dwContextHandle_t | context | ||
) |
Advances the virtual time to newTime.
DW_API_PUBLIC dwStatus dwContext_getCUDAProperties | ( | int32_t * | driverVersion, |
int32_t * | apiVersion, | ||
dwContextHandle_t | context | ||
) |
Returns Driver and Runtime API version of CUDA on the current machine.
[out] | driverVersion | Driver version. |
[out] | apiVersion | Runtime API version. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getCurrentTime | ( | dwTime_t * | time, |
dwContextHandle_t | context | ||
) |
Returns the current timestamp.
Timestamps from the same context are guaranteed to be in sync. The returned time represents the absolute time as received through system time source. On POSIX based systems, the time is measured using CLOCK_MONOTONIC time source. On Windows based systems, the returned time is relative to the epoch, i.e., 31std dec, 1969.
[out] | time | A pointer to the return time to a given location, in [us]. |
[in] | context | Specifies the context. |
DW_API_PUBLIC dwStatus dwContext_getDataPath | ( | const char8_t ** | dataPath, |
dwContextHandle_t | context | ||
) |
Gets the data path of the library that contains the driveworks context.
[out] | dataPath | Path to the Driveworks data. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getDLAEngineCount | ( | int32_t * | count, |
dwContextHandle_t | context | ||
) |
Get the available DLA engines count.
[out] | count | The number of DLA engines available. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUArchitecture | ( | const char8_t ** | architecture, |
dwContextHandle_t | context | ||
) |
Returns the architecture for the currently selected CUDA device.
[out] | architecture | A string containing the architecture. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUAttribute | ( | int32_t * | value, |
cudaDeviceAttr | attribute, | ||
int32_t | deviceNum, | ||
dwContextHandle_t | context | ||
) |
Returns the value of the selected CUDA attribute for the specific CUDA device.
[out] | value | Integer representing the value of the requested attribute. |
[in] | attribute | Specifies the attribute requested. |
[in] | deviceNum | Specifies the device number. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUCount | ( | int32_t * | count, |
dwContextHandle_t | context | ||
) |
Get the available GPU devices count.
[out] | count | The number of GPU devices available. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUDeviceCurrent | ( | int32_t * | deviceNumber, |
dwContextHandle_t | context | ||
) |
Returns the currently selected GPU device.
If no device is selected, will return -1.
[out] | deviceNumber | The number of GPU device. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUDeviceType | ( | dwGPUDeviceType * | deviceType, |
int32_t | deviceNum, | ||
dwContextHandle_t | context | ||
) |
Returns the device type of the input GPU number.
[out] | deviceType | The type of GPU device. |
[in] | deviceNum | Specifies the device number. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getGPUProperties | ( | cudaDeviceProp * | properties, |
int32_t | deviceNum, | ||
dwContextHandle_t | context | ||
) |
Returns the properties for the specific CUDA device.
[out] | properties | A struct containing the properties. |
[in] | deviceNum | Specifies the device number. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getPVAEngineCount | ( | uint32_t * | count, |
dwContextHandle_t | context | ||
) |
Get the available PVA engines count.
[out] | count | The number of PVA engines available. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_getUseVirtualTime | ( | bool * | useVirtualTime, |
dwContextHandle_t | context | ||
) |
Check if in virtual time mode.
[out] | useVirtualTime | boolean for if virtual time is used. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_isTimePTPSynchronized | ( | bool * | flag, |
dwContextHandle_t | context | ||
) |
Check if the used time source inside the context is synchronized over PTP.
PTP synchronization is available starting from PDK 4.1.6.4 and provides a solution to synchronize multiple NVIDIA DRIVE boxes to a common clock base. All sensor readings as well as the 'dwContext_getCurrentTime()' method will be based on the same time source.
[out] | flag | Return true if PTP synchronized time is used. |
[in] | context | Specifies the context. |
DW_API_PUBLIC dwStatus dwContext_selectGPUDevice | ( | int32_t | deviceNumber, |
dwContextHandle_t | context | ||
) |
Selects a GPU device, if available.
Note that the selected gpu is valid for the current thread
[in] | deviceNumber | The number of GPU device. |
[in] | context | Specifies the context handle. |
DW_API_PUBLIC dwStatus dwContext_setCustomFileFunctions | ( | dwContextHandle_t | context, |
dwCustomizedFileFunctions * | fileFunctionPtr | ||
) |
Set the customized fileStream function pointers in context.
[in] | context | handle |
[in] | fileFunctionPtr | dwCustomizedFileFunctions pointer to be passed into context |
DW_API_PUBLIC dwStatus dwGetLastError | ( | const char8_t ** | errorMsg | ) |
Retrieves the last error encountered.
When a DriveWorks function reports an error, this error is stored internally. It can later be retrieved by this function. After calling this function, the error is reset and future calls will return 'DW_SUCCESS' until another error is encountered.
Error information is thread local. Each thread has its own last error and an error encountered in one thread will not be visible in another thread.
[out] | errorMsg | A pointer to a pointer to a string containing a description of the last error encountered. Can be NULL to just reset last error. |
DW_API_PUBLIC dwStatus dwInitialize | ( | dwContextHandle_t * | context, |
dwVersion | header_version, | ||
const dwContextParameters * | params | ||
) |
Creates and initializes an SDK context.
The context is required for initialization of the SDK modules.
[out] | context | A pointer to the context handler is returned here. |
[in] | header_version | Specifies current driveworks API version (usually DW_VERSION). |
[in] | params | A pointer with a set of parameters to create the SDK. Can be NULL for a default set of parameters. |
DW_API_PUBLIC dwStatus dwRelease | ( | dwContextHandle_t | context | ) |
Releases the context.
Any module created with this context must be released before the context can be released.
[in] | context | The context to be released. |
DW_VIZ_API_PUBLIC dwStatus dwVisualizationGetDWContext | ( | dwContextHandle_t * | dwctx, |
dwVisualizationContextHandle_t | context | ||
) |
Return DW context associated with this visualization library.
[out] | dwctx | Context of the DW SDK as given through dwVisualizationInitialize() |
[in] | context | Handle to existing dwVisualization context, created with dwInitialize. |
DW_VIZ_API_PUBLIC dwStatus dwVisualizationInitialize | ( | dwVisualizationContextHandle_t * | vizContext, |
dwContextHandle_t | ctx | ||
) |
Creates and initializes a Visualization SDK context.
The context is required for initialization of the Visualization SDK modules.
[out] | vizContext | A pointer to the context handler is returned here. |
[in] | ctx | Handle to existing DW SDK context, created with dwInitialize. |
dwGLInitialize
will happen DW_VIZ_API_PUBLIC dwStatus dwVisualizationRelease | ( | dwVisualizationContextHandle_t | context | ) |
Releases the context.
Any module created with this context must be released before the context can be released.
[in] | context | The context to be released. |