EntityQueryProcessorBase.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 #include "../../base/EntityQueryProcessorBase.h"
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
armarx::armem::server::query_proc::base::EntityQueryProcessorBase::ResultEntityT
_ResultEntityT ResultEntityT
Definition: EntityQueryProcessorBase.h:36
armarx::armem::server::query_proc::ltm::detail::EntityQueryProcessorBase::~EntityQueryProcessorBase
virtual ~EntityQueryProcessorBase()=default
armarx::armem::server::query_proc::base::BaseQueryProcessorBase< armem::server::ltm::Entity, armem::wm::Entity, armem::query::data::EntityQuery >
armarx::armem::server::ltm::Entity
A memory storing data in mongodb (needs 'armarx memory start' to start the mongod instance)
Definition: Entity.h:14
armarx::armem::server::query_proc::base::EntityQueryProcessorBase< armem::server::ltm::Entity, armem::wm::Entity >::ResultSnapshotT
typename ResultEntityT::EntitySnapshotT ResultSnapshotT
Definition: EntityQueryProcessorBase.h:37
armarx::armem::server::query_proc::base::EntityQueryProcessorBase
Definition: EntityQueryProcessorBase.h:25
armarx::armem::server::query_proc::base::EntityQueryProcessorBase::process
virtual void process(ResultEntityT &result, const armem::query::data::EntityQuery &query, const EntityT &entity) const override
Process the query and populate result.
Definition: EntityQueryProcessorBase.h:44
armarx::armem::base::EntityBase::addSnapshot
EntitySnapshotT & addSnapshot(const Time &timestamp)
Add a snapshot at the given time.
Definition: EntityBase.h:629
armarx::armem::server::query_proc::ltm::detail::EntityQueryProcessorBase
Definition: EntityQueryProcessorBase.h:11
armarx::armem::server::query_proc::base::EntityQueryProcessorBase< armem::server::ltm::Entity, armem::wm::Entity >::EntitySnapshotT
typename EntityT::EntitySnapshotT EntitySnapshotT
Definition: EntityQueryProcessorBase.h:34
armarx::armem::server::query_proc::ltm::detail::EntityQueryProcessorBase::addResultSnapshot
void addResultSnapshot(ResultEntityT &result, const EntitySnapshotT &snapshot) const override
Definition: EntityQueryProcessorBase.h:31
armarx::armem::server::query_proc::ltm::detail
Definition: CoreSegmentQueryProcessorBase.h:5
armarx::armem::wm::Entity
Client-side working memory entity.
Definition: memory_definitions.h:93
Logging.h
armarx::armem::server::query_proc::base::EntityQueryProcessorBase::EntityT
_EntityT EntityT
Definition: EntityQueryProcessorBase.h:33
armarx::ctrlutil::s
double s(double t, double s0, double v0, double a0, double j)
Definition: CtrlUtil.h:33