EntityQueryProcessorBase.h
Go to the documentation of this file.
1#pragma once
2
4
6
8{
9
10 template <class _EntityT, class _ResultEntityT>
11 class EntityQueryProcessorBase : public base::EntityQueryProcessorBase<_EntityT, _ResultEntityT>
12 {
13 protected:
15
16 public:
17 using EntityT = typename Base::EntityT;
21
22 public:
23 virtual ~EntityQueryProcessorBase() = default;
24
25 using Base::process;
26
27
28 protected:
29 // default addResultSnapshot method. Always copies the data
30 void
31 addResultSnapshot(ResultEntityT& result, const EntitySnapshotT& snapshot) const override
32 {
34 snapshot.loadAllReferences(s);
35 result.addSnapshot(s);
36 }
37 };
38} // namespace armarx::armem::server::query_proc::ltm::detail
virtual void process(ResultEntityT &result, const armem::query::data::EntityQuery &query, const EntityT &entity) const override
Process the query and populate result.
void addResultSnapshot(ResultEntityT &result, const EntitySnapshotT &snapshot) const override
base::EntityQueryProcessorBase< _EntityT, _ResultEntityT > Base