DeviceMemory класс Подробнее...
#include </__w/1/s/gpu/containers/include/pcl/gpu/containers/device_memory.h>
Публичные члены-функции | |
| 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.
Определение в строке 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 >()
| 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]
| inline |
Возвращает указатель на внутренний буфер в памяти GPU.
Определение в строке 47 файла device_memory.hpp.
ptr() [2/2]
| 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
