Go to the documentation of this file.
24 auto&
q = _addQuery<dq::entity::All>();
32 auto&
q = _addQuery<dq::entity::Single>();
40 auto&
q = _addQuery<dq::entity::Single>();
41 toIce(
q.timestamp, timestamp);
48 auto&
q = _addQuery<dq::entity::TimeRange>();
57 auto&
q = _addQuery<dq::entity::TimeApprox>();
58 toIce(
q.timestamp, timestamp);
66 auto&
q = _addQuery<dq::entity::IndexRange>();
75 auto&
q = _addQuery<dq::entity::BeforeOrAtTime>();
76 toIce(
q.timestamp, timestamp);
85 auto&
q = _addQuery<dq::entity::BeforeTime>();
86 toIce(
q.timestamp, timestamp);
87 toIce(
q.maxEntries, maxEntries);
106 auto&
q = _addQuery<dq::provider::All>();
114 auto&
q = _addQuery<dq::provider::Single>();
122 auto&
q = _addQuery<dq::provider::Regex>();
123 q.entityNameRegex = regex;
129 const dq::EntityQuerySeq& childQueries)
const
131 query->entityQueries = childQueries;
149 auto&
q = _addQuery<dq::core::All>();
157 auto&
q = _addQuery<dq::core::Single>();
158 q.providerSegmentName = name;
165 auto&
q = _addQuery<dq::core::Regex>();
166 q.providerSegmentNameRegex = regex;
172 const dq::ProviderSegmentQuerySeq& childQueries)
const
174 query->providerSegmentQueries = childQueries;
192 auto&
q = _addQuery<dq::memory::All>();
200 auto&
q = _addQuery<dq::memory::Single>();
201 q.coreSegmentName = name;
208 auto&
q = _addQuery<dq::memory::Regex>();
209 q.coreSegmentNameRegex = regex;
215 const dq::CoreSegmentQuerySeq& childQueries)
const
217 query->coreSegmentQueries = childQueries;
EntitySelector & all() override
ProviderSegmentSelector & withNamesMatching(const std::string ®ex) override
SnapshotSelector & latest()
EntitySelector & entities()
Start specifying entities.
void _setChildQueries(armem::query::data::MemoryQueryPtr &query, const armem::query::data::CoreSegmentQuerySeq &childQueries) const override
SnapshotSelector & timeRange(Time min, Time max)
SnapshotSelector & snapshots()
Start specifying entity snapshots.
std::vector< T > max(const std::vector< T > &v1, const std::vector< T > &v2)
SnapshotSelector & all() override
CoreSegmentSelector & all() override
void _setChildQueries(armem::query::data::CoreSegmentQueryPtr &query, const armem::query::data::ProviderSegmentQuerySeq &childQueries) const override
std::vector< QueryT > _queries
SnapshotSelector & beforeTime(Time timestamp, long maxEntries=1)
void toIce(std::map< IceKeyT, IceValueT > &iceMap, const boost::container::flat_map< CppKeyT, CppValueT > &cppMap)
EntitySelector & withNamesMatching(const std::string ®ex) override
CoreSegmentSelector & withName(const std::string &name) override
SnapshotSelector & atTimeApprox(Time timestamp, Duration eps)
Represents a point in time.
armem::query::data::EntityQuerySeq buildQueries() const
EntitySelector & withName(const std::string &name) override
ProviderSegmentSelector & withName(const std::string &name) override
SnapshotSelector & atTime(Time timestamp)
CoreSegmentSelector & withNamesMatching(const std::string ®ex) override
SnapshotSelector & beforeOrAtTime(Time timestamp)
std::vector< T > min(const std::vector< T > &v1, const std::vector< T > &v2)
ProviderSegmentSelector & providerSegments()
Start specifying provider segments.
void _setChildQueries(armem::query::data::ProviderSegmentQueryPtr &query, const armem::query::data::EntityQuerySeq &childQueries) const override
SnapshotSelector & indexRange(long first, long last)
ProviderSegmentSelector & all() override
static DateTime Invalid()
void toIce(armem::query::data::Input &ice, const QueryInput &input)