make_inmemory_preallocated_data_storage

Материал из CAMaaS preliminary wiki
Версия от 06:16, 6 августа 2017; Андрей Чусов (обсуждение | вклад) (Новая страница: «{{DISPLAYTITLE:make_inmemory_preallocated_data_storage}} {{function_begin |InMemoryDataStorageOwn make_inmemory_preallocated_data_storage(void* pBuffer, std::size…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску
InMemoryDataStorageOwn make_inmemory_preallocated_data_storage(void* pBuffer, std::size_t cbBuffer); //1
template <class T, class Alloc>
   InMemoryDataStorageOwn make_inmemory_preallocated_data_storage(const /*неопределенный_тип*/<T>& buff); //2
template <class Container>
   InMemoryDataStorageOwn make_inmemory_preallocated_data_storage(Container& cont); //3

Создает накопитель данных на основе заранее выделенного буфера памяти, заданного C++ объектом. Делегирует вызов функции CreateInMemoryPreallocatedBinaryDataStorage.

  1. Создает объект InMemoryDataStorageOwn над реализацией интерфейса IInMemoryDataStorage над указанным буфером и разделяет владение им с клиентом.
  2. Аналогична, но, принимая на вход результат вызова функций own_buffer, переносит владение буфером на созданный объект.
  3. Создает аналогичный объект, разделяющий владение буфером с контейнером C++, реализующим методы data и size.
Параметры
[in]pBufferБуфер данных объемом cbBuffer байт, над которым определяется интерфейс IInMemoryDataStorage.
cbBufferРазмер буфера pBuffer, в байтах.
buffРезультат вызова функции own_buffer над буфером, владение которым переносится на создаваемый объект типа InMemoryDataStorageOwn.
contКонтейнер с методами data и size, которым определен входной буфер.
Возвращаемое значение:
Объект InMemoryDataStorageOwn.
См. также
IInMemoryDataStorage.
InMemoryDataStorageOwn.