Spec-Zone.ru › PointCloudLibrary

DeviceMemory класс Подробнее...

#include </__w/1/s/gpu/containers/include/pcl/gpu/containers/device_memory.h>

Inheritance graph
[легенда]

Публичные члены-функции

DeviceMemory ()
Пустой конструктор. Подробнее...
~DeviceMemory ()
Деструктор. Подробнее...
DeviceMemory (std::size_t sizeBytes_arg)
Выделяет внутренний буфер в памяти GPU. Подробнее...
DeviceMemory (void *ptr_arg, std::size_t sizeBytes_arg)
Инициализирует с выделенным пользователем буфером. Подробнее...
DeviceMemory (const DeviceMemory &other_arg)
Конструктор копирования. Подробнее...
DeviceMemory & operator= (const DeviceMemory &other_arg)
Оператор присваивания. Подробнее...
void create (std::size_t sizeBytes_arg)
Выделяет внутренний буфер в памяти GPU. Подробнее...
void release ()
Уменьшает счетчик ссылок и освобождает внутренний буфер при необходимости. Подробнее...
void copyTo (DeviceMemory &other) const
Выполняет копирование данных. Подробнее...
void upload (const void *host_ptr_arg, std::size_t sizeBytes_arg)
Загружает данные во внутренний буфер в памяти GPU. Подробнее...
bool upload (const void *host_ptr_arg, std::size_t device_begin_byte_offset, std::size_t num_bytes)
Загружает данные из памяти процессора в массив устройства. Подробнее...
void download (void *host_ptr_arg) const
Загружает данные из внутреннего буфера в память процессора. Подробнее...
bool download (void *host_ptr_arg, std::size_t device_begin_byte_offset, std::size_t num_bytes) const
Загружает данные из внутреннего буфера в память процессора. Подробнее...
void swap (DeviceMemory &other_arg)
Выполняет обмен данными, указанными с помощью другой памяти устройства. Подробнее...
template<class T >
T * ptr ()
Возвращает указатель на внутренний буфер в памяти GPU. Подробнее...
template<class T >
const T * ptr () const
Возвращает постоянный указатель на внутренний буфер в памяти GPU. Подробнее...
template<class U >
operator PtrSz< U > () const
Преобразование в PtrSz для передачи ядрам функций. Подробнее...
bool empty () const
Возвращает true, если не выделено, иначе false. Подробнее...
std::size_t sizeBytes () const

Подробное описание

DeviceMemory класс

Примечание
Это класс-контейнер BLOB со счетом ссылок для памяти GPU.
Автор
Anatoly Baksheev

Определение в строке 54 файла device_memory.h.

Документация конструктора и деструктора

DeviceMemory() [1/4]

pcl::gpu::DeviceMemory::DeviceMemory ( )

Пустой конструктор.

~DeviceMemory()

pcl::gpu::DeviceMemory::~DeviceMemory ( )

Деструктор.

DeviceMemory() [2/4]

pcl::gpu::DeviceMemory::DeviceMemory ( std::size_t sizeBytes_arg )

Выделяет внутренний буфер в памяти GPU.

Parameters
sizeBytes_arg объем памяти для выделения

DeviceMemory() [3/4]

pcl::gpu::DeviceMemory::DeviceMemory ( void * ptr_arg,
std::size_t sizeBytes_arg
)

Инициализируется с выделенным пользователем буфером.

Подсчет ссылок отключен в этом случае.

Parameters
ptr_arg указатель на буфер
sizeBytes_arg размер буфера

DeviceMemory() [4/4]

pcl::gpu::DeviceMemory::DeviceMemory ( const DeviceMemory & other_arg )

Конструктор копирования.

Просто увеличивает счетчик ссылок.

Документация функций-членов

copyTo()

void pcl::gpu::DeviceMemory::copyTo ( DeviceMemory & other ) const

Выполняет копирование данных.

Если размер назначения отличается, он будет перевыделен.

Parameters
other контейнер назначения

Ссылки на pcl::gpu::DeviceArray< T >::copyTo().

create()

void pcl::gpu::DeviceMemory::create ( std::size_t sizeBytes_arg )

Выделяет внутренний буфер в памяти GPU.

Если внутренний буфер был создан ранее, функция пересоздает его с новым размером. Если новые и старые размеры равны, она ничего не делает.

Parameters
sizeBytes_arg размер буфера

download() [1/2]

void pcl::gpu::DeviceMemory::download ( void * host_ptr_arg ) const

Загружает данные из внутреннего буфера в оперативную память.

Parameters
host_ptr_arg указатель на буфер для загрузки

Ссылки на pcl::gpu::DeviceArray< T >::download().

download() [2/2]

bool pcl::gpu::DeviceMemory::download ( void * host_ptr_arg,
std::size_t device_begin_byte_offset,
std::size_t num_bytes
) const

Загружает данные из внутреннего буфера в оперативную память.

Returns
true, если загрузка успешна
Parameters
host_ptr_arg указатель на буфер для загрузки
device_begin_byte_offset первая позиция байта для загрузки
num_bytes количество байтов для загрузки

empty()

bool pcl::gpu::DeviceMemory::empty ( ) const

Возвращает true, если не выделено, иначе false.

Ссылки на pcl::gpu::kinfuLS::StandaloneMarchingCubes< PointT >::convertTrianglesToMesh().

operator PtrSz< U >()

template<class U >
pcl::gpu::DeviceMemory::operator PtrSz< U >
inline

Преобразование в PtrSz для передачи в функции ядра.

Определение в строке 60 файла device_memory.hpp.

Ссылки на pcl::gpu::DevPtr< T >::data и pcl::gpu::PtrSz< T >::size.

operator=()

DeviceMemory& pcl::gpu::DeviceMemory::operator= ( const DeviceMemory & other_arg )

Оператор присваивания.

Просто увеличивает счетчик ссылок.

Ссылки на pcl::gpu::DeviceArray< T >::operator=().

ptr() [1/2]

template<class T >
T * pcl::gpu::DeviceMemory::ptr
inline

Возвращает указатель на внутренний буфер в памяти GPU.

Определение в строке 47 файла device_memory.hpp.

ptr() [2/2]

template<class T >
const T * pcl::gpu::DeviceMemory::ptr
inline

Возвращает постоянный указатель на внутренний буфер в памяти GPU.

Определение в строке 54 файла device_memory.hpp.

release()

void pcl::gpu::DeviceMemory::release ( )

Уменьшает счетчик ссылок и освобождает внутренний буфер, если это необходимо.

sizeBytes()

std::size_t pcl::gpu::DeviceMemory::sizeBytes ( ) const

Используется в pcl::gpu::AsyncCopy< T >::download() и pcl::gpu::TextureBinder::TextureBinder().

swap()

void pcl::gpu::DeviceMemory::swap ( DeviceMemory & other_arg )

Производит обмен данными, на которые указывает другой фрагмент памяти устройства.

Parameters
other_arg фрагмент памяти устройства для обмена

Используется в pcl::gpu::DeviceArray< T >::swap().

upload() [1/2]

bool pcl::gpu::DeviceMemory::upload ( const void * host_ptr_arg,
std::size_t device_begin_byte_offset,
std::size_t num_bytes
)

Загружает данные из памяти процессора в массив устройства.

Примечание
Этот перегруз никогда не выделяет память в отличие от другого метода upload.
Возвращает
true, если загрузка прошла успешно
Parameters
host_ptr_arg указатель на загружаемый буфер
device_begin_byte_offset первая байтовая позиция для загрузки
num_bytes количество загружаемых байтов

upload() [2/2]

void pcl::gpu::DeviceMemory::upload ( const void * host_ptr_arg,
std::size_t sizeBytes_arg
)

Загружает данные во внутренний буфер в памяти GPU.

Вызывает create() внутри, чтобы убедиться, что размер внутреннего буфера достаточен.

Parameters
host_ptr_arg указатель на загружаемый буфер
sizeBytes_arg размер буфера

Используется в pcl::gpu::DeviceArray< float4 >::release() и pcl::gpu::DeviceArray< T >::upload().


The documentation for this class was generated from the following files:
  • /__w/1/s/gpu/containers/include/pcl/gpu/containers/device_memory.h
  • /__w/1/s/gpu/containers/include/pcl/gpu/containers/impl/device_memory.hpp

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1gpu_1_1_device_memory.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API