Data Structures

Overview

// structs

struct cv::cuda::EventAccessor;
struct cv::cuda::StreamAccessor;

// classes

class cv::cuda::BufferPool;
class cv::cuda::Event;
class cv::cuda::GpuMat;
class cv::cuda::HostMem;
class cv::cuda::Stream;

// global functions

void
cv::cuda::createContinuous(
    int rows,
    int cols,
    int type,
    OutputArray arr
    );

void
cv::cuda::ensureSizeIsEnough(
    int rows,
    int cols,
    int type,
    OutputArray arr
    );

void
cv::cuda::registerPageLocked(Mat& m);

void
cv::cuda::setBufferPoolConfig(
    int deviceId,
    size_t stackSize,
    int stackCount
    );

void
cv::cuda::setBufferPoolUsage(bool on);

void
cv::cuda::unregisterPageLocked(Mat& m);

Detailed Documentation

Global Functions

void
cv::cuda::createContinuous(
    int rows,
    int cols,
    int type,
    OutputArray arr
    )

Creates a continuous matrix.

Matrix is called continuous if its elements are stored continuously, that is, without gaps at the end of each row.

Parameters:

rows Row count.
cols Column count.
type Type of the matrix.
arr Destination matrix. This parameter changes only if it has a proper type and area (\(\texttt{rows} \times \texttt{cols}\)).
void
cv::cuda::ensureSizeIsEnough(
    int rows,
    int cols,
    int type,
    OutputArray arr
    )

Ensures that the size of a matrix is big enough and the matrix has a proper type.

The function does not reallocate memory if the matrix has proper attributes already.

Parameters:

rows Minimum desired number of rows.
cols Minimum desired number of columns.
type Desired matrix type.
arr Destination matrix.
void
cv::cuda::registerPageLocked(Mat& m)

Page-locks the memory of matrix and maps it for the device(s).

Parameters:

m Input matrix.
void
cv::cuda::setBufferPoolUsage(bool on)

BufferPool management (must be called before Stream creation)

void
cv::cuda::unregisterPageLocked(Mat& m)

Unmaps the memory of matrix and makes it pageable again.

Parameters:

m Input matrix.