SpecializedProviderSegment.h
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4
7
11
13
15{
16 /**
17 * @brief A base class for provider segments
18 */
19 class SpecializedProviderSegment : public detail::SegmentBase<server::wm::ProviderSegment>
20 {
22
23 public:
26 const std::string& defaultProviderSegmentName = "",
27 const std::string& defaultCoreSegmentName = "",
28 aron::type::ObjectPtr providerSegmentAronType = nullptr,
29 aron::type::ObjectPtr coreSegmentAronType = nullptr,
30 int defaultMaxHistorySize = 10,
31 const std::vector<PredictionEngine>& providerSegmentPredictionEngines = {},
32 const std::vector<PredictionEngine>& coreSegmentPredictionEngines = {});
33
34 virtual ~SpecializedProviderSegment() override;
35
37 const std::string& prefix = "") override;
38 virtual void init() override;
39
40 void setDefaultProviderSegmentName(const std::string& providerSegmentName);
41 void setDefaultMaxHistorySize(int64_t maxHistorySize);
43 void setPredictionEngines(const std::vector<PredictionEngine>& predictionEngines);
44
47
48
49 public:
51 std::vector<PredictionEngine> predictionEngines;
53
55 {
56 std::string segmentName;
58 /// Threshold for warning about unlimited history growth (0 to disable)
60 /// Max snapshots to remove per truncate() call (0 for unlimited)
62 };
63
65 };
66} // namespace armarx::armem::server::segment
Helps connecting a Memory server to the Ice interface.
virtual void defineProperties(armarx::PropertyDefinitionsPtr defs, const std::string &prefix="") override
void setDefaultProviderSegmentName(const std::string &providerSegmentName)
void setPredictionEngines(const std::vector< PredictionEngine > &predictionEngines)
SpecializedProviderSegment(MemoryToIceAdapter &iceMemory, const std::string &defaultProviderSegmentName="", const std::string &defaultCoreSegmentName="", aron::type::ObjectPtr providerSegmentAronType=nullptr, aron::type::ObjectPtr coreSegmentAronType=nullptr, int defaultMaxHistorySize=10, const std::vector< PredictionEngine > &providerSegmentPredictionEngines={}, const std::vector< PredictionEngine > &coreSegmentPredictionEngines={})
A base class for memory servers to manage their segments.
std::shared_ptr< Object > ObjectPtr
Definition Object.h:36
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
size_t truncateMaxBatchSize
Max snapshots to remove per truncate() call (0 for unlimited)
size_t unlimitedHistoryWarningThreshold
Threshold for warning about unlimited history growth (0 to disable)