PendingConversion.h
Go to the documentation of this file.
1#pragma once
2
3#include <map>
4#include <string>
5#include <vector>
6
9
11{
12 /**
13 * @brief Holds snapshots and metadata for deferred conversion in async thread
14 * This allows us to defer the expensive toMemory() conversion until the async storage thread
15 *
16 * This struct is shared between MemoryBase (interface) and BufferedMemoryMixin (implementation)
17 * to avoid coupling the base interface to specific storage implementations.
18 */
20 {
21 std::string memoryName;
22 std::vector<wm::EntitySnapshot> snapshots;
23
24 // Metadata needed for toMemory() conversion
26 {
27 std::string coreSegmentName;
29 std::map<std::string, aron::type::ObjectPtr> providerSegmentAronTypes; // provider name -> aron type
30 };
31 std::vector<SegmentMetadata> segmentMetadata;
32 };
33} // namespace armarx::armem::server::ltm::detail::mixin
std::shared_ptr< Object > ObjectPtr
Definition Object.h:36
Holds snapshots and metadata for deferred conversion in async thread This allows us to defer the expe...