47#ifndef DW_IMAGE_IMAGESTREAMER_H_
48#define DW_IMAGE_IMAGESTREAMER_H_
188DW_DEPRECATED(
"The cross process streamer is deprecated and will be removed in the next version. The dwChannel can be used instead for cross process image streaming")
214DW_DEPRECATED("The EGL based cross process streamer is deprecated and will be removed in the next version.")
NVIDIA DriveWorks API: Core Methods
NVIDIA DriveWorks API: Core Exports
int64_t dwTime_t
Specifies a timestamp unit, in microseconds.
struct dwContextObject * dwContextHandle_t
Context handle.
#define DW_DEPRECATED(msg)
dwStatus
Status definition.
struct dwImageObject * dwImageHandle_t
dwImageType
Specifies the image type.
Defines the properties of the image.
const char * parameters
Array to additional parameters provided to cross-process image streamer creation.
dwImageStreamerCrossProcessMode mode
Operation mode of the cross-process image streamer.
DW_API_PUBLIC dwStatus dwImageStreamer_initializeCrossProcessEGL(dwImageStreamerHandle_t *streamer, dwImageProperties const *from, dwImageType to, dwImageStreamerCrossProcessModeParams params, dwContextHandle_t ctx)
Creates a variant of the cross process streamer based on EGL.
DW_API_PUBLIC dwStatus dwImageStreamer_getCUDAStream(cudaStream_t *stream, dwImageStreamerHandle_t streamer)
Get CUDA stream used by the image streamer.
struct dwImageStreamerObject * dwImageStreamerHandle_t
DW_API_PUBLIC dwStatus dwImageStreamer_getOutputProperties(dwImageProperties *props, dwImageStreamerHandle_t const streamer)
Get image properties of the image received from the streamer.
DW_API_PUBLIC dwStatus dwImageStreamer_release(dwImageStreamerHandle_t streamer)
Releases the image streamer.
DW_API_PUBLIC dwStatus dwImageStreamer_initializeCrossProcess(dwImageStreamerHandle_t *streamer, const dwImageProperties *from, dwImageType to, dwImageStreamerCrossProcessModeParams params, dwContextHandle_t ctx)
Creates and initializes the image streamer capable of moving images between different API types acros...
dwImageStreamerCrossProcessMode
DW_API_PUBLIC dwStatus dwImageStreamer_initialize(dwImageStreamerHandle_t *streamer, const dwImageProperties *from, dwImageType to, dwContextHandle_t ctx)
Creates and initializes the image streamer capable of moving images between different API types.
DW_API_PUBLIC dwStatus dwImageStreamer_setCUDAStream(cudaStream_t stream, dwImageStreamerHandle_t streamer)
Sets the CUDA stream for CUDA related streaming operations such as post and receive.
DW_API_PUBLIC dwStatus dwImageStreamer_consumerReturn(dwImageHandle_t *image, dwImageStreamerHandle_t const streamer)
Return the received image back to the producer.
DW_API_PUBLIC dwStatus dwImageStreamer_consumerReceive(dwImageHandle_t *image, dwTime_t const timeoutUs, dwImageStreamerHandle_t const streamer)
Receive a pointer to a dwImageHandle_t from the streamer, acting as a consumer.
DW_API_PUBLIC dwStatus dwImageStreamer_producerReturn(dwImageHandle_t *const image, dwTime_t const timeoutUs, dwImageStreamerHandle_t const streamer)
The producer streamer waits for the image sent to be returned by the consumer.
DW_API_PUBLIC dwStatus dwImageStreamer_producerSend(dwImageHandle_t image, dwImageStreamerHandle_t const streamer)
Sends an image through the streamer acting as the producer.
@ DW_IMAGE_STREAMER_CROSS_PROCESS_CONSUMER
@ DW_IMAGE_STREAMER_CROSS_PROCESS_PRODUCER
Sets of parameters for cross-process image streamer creation.
NVIDIA DriveWorks API: Image Conversion and Streaming Functionality