Как можно записать / прочитать представление двоичного объекта в заданную память в CERN ROOT?
Это то, что я хочу:
- Выделить память:
buffer = malloc(buffer_size)
- Используйте CERN ROOT, чтобы записать двоичное представление объекта в
buffer
(объект некоторого пользовательского типа MyType
) - Определить, куда и сколько байтов было записано в
buffer
- Прочтите объект из
buffer
в другой части программы
Вот некоторые из моих мыслей:
const size_t buffer_size = 100'000'000;
void * buffer = malloc(buffer_size)
MyType x;
TBufferFile b(TBuffer::kWrite, buffer_size, buffer); // Is it correct buffer type to use?
b.StreamObject(&x, "MyType");
Как узнать, в каком месте b.Buffer()
или buffer
а сколько байт было написано? Как можно прочитать объект из памяти?
Большое спасибо за помощь!