3#include <RobotAPI/libraries/armem_vision/aron/OccupancyGrid.aron.generated.h>
12 const std::string& frame,
13 const std::string& providerName,
16 std::lock_guard g{writeMutex};
20 if (not result.success)
31 const auto entityID = providerId.withEntityName(frame).withTimestamp(iceTimestamp);
34 update.entityID = entityID;
36 arondto::OccupancyGrid aronGrid;
40 auto dict = aronGrid.toAron();
43 update.instancesData = {dict};
44 update.referencedTime = iceTimestamp;
46 ARMARX_DEBUG <<
"Committing " << update <<
" at time " << iceTimestamp;
62 return "mem.vision.occupancy_grid.";
65 armarx::armem::client::util::SimpleWriterBase::SimpleWriterBase::Properties
69 return SimpleWriterBase::Properties{.memoryName =
"Vision",
70 .coreSegmentName =
"OccupancyGrid"};
data::AddSegmentResult addSegment(const std::string &coreSegmentName, const std::string &providerSegmentName, bool clearWhenExists=false) const
CommitResult commit(const Commit &commit) const
Writes a Commit to the memory.
const Properties & properties() const
armem::client::Writer & memoryWriter()
Properties defaultProperties() const override
std::string propertyPrefix() const override
bool store(const OccupancyGrid &grid, const std::string &frame, const std::string &providerName, const std::int64_t ×tamp)
static Duration MicroSeconds(std::int64_t microSeconds)
Constructs a duration in microseconds.
#define ARMARX_ERROR
The logging level for unexpected behaviour, that must be fixed.
#define ARMARX_DEBUG
The logging level for output that is only interesting while debugging.
void toAron(arondto::OccupancyGrid &dto, const OccupancyGrid &bo)
armarx::core::time::DateTime Time
Result of an EntityUpdate.
An update of an entity for a specific point in time.