Processors.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <map>
4 #include <mutex>
5 #include <optional>
6 #include <string>
7 
9 
13 #include "extractor/Extractor.h"
14 #include "filter/Filter.h"
15 
17 {
18  /// all necessary classes to filter and convert an entry of the ltm to some other format(s)
19  class Processors
20  {
21  public:
22  Processors() = default;
23 
24  void configure(const nlohmann::json& config);
25 
26  std::map<std::string, processor::SnapshotFilter::FilterStatistics> getSnapshotFilterStatistics();
27 
28  /**
29  * @brief resetFilterStatisticsForNewEpisode runs resetFilterStatisticsForNewEpisode on all
30  * snapshot filters
31  */
33 
34  public:
35  // Unique Memory Filters
36  std::vector<std::unique_ptr<processor::MemoryFilter>> memFilters;
37 
38  // Unique Snapshot filters
39  std::vector<std::unique_ptr<processor::SnapshotFilter>> snapFilters;
40 
41  // Special Extractors
42  std::vector<std::unique_ptr<processor::Extractor>> extractors;
43 
44  // Special Converters
45  std::vector<std::unique_ptr<processor::DataConverter>> converters;
46 
47  // Default converters
50  };
51 } // namespace armarx::armem::server::ltm
armarx::armem::server::ltm::processor::converter::data::object::JsonConverter
Definition: JsonConverter.h:11
armarx::armem::server::ltm::Processors::resetFilterStatisticsForNewEpisode
void resetFilterStatisticsForNewEpisode()
resetFilterStatisticsForNewEpisode runs resetFilterStatisticsForNewEpisode on all snapshot filters
Definition: Processors.cpp:84
Converter.h
MemoryID.h
armarx::armem::server::ltm::Processors::Processors
Processors()=default
JsonConverter.h
armarx::armem::server::ltm::Processors::snapFilters
std::vector< std::unique_ptr< processor::SnapshotFilter > > snapFilters
Definition: Processors.h:39
Extractor.h
armarx::armem::server::ltm::processor::converter::type::object::JsonConverter
Definition: JsonConverter.h:11
armarx::armem::server::ltm::Processors::memFilters
std::vector< std::unique_ptr< processor::MemoryFilter > > memFilters
Definition: Processors.h:36
armarx::armem::server::ltm
Definition: forward_declarations.h:20
armarx::armem::server::ltm::Processors::getSnapshotFilterStatistics
std::map< std::string, processor::SnapshotFilter::FilterStatistics > getSnapshotFilterStatistics()
Definition: Processors.cpp:60
armarx::armem::server::ltm::Processors::extractors
std::vector< std::unique_ptr< processor::Extractor > > extractors
Definition: Processors.h:42
JsonConverter.h
armarx::armem::server::ltm::Processors::defaultObjectConverter
processor::converter::data::object::JsonConverter defaultObjectConverter
Definition: Processors.h:48
armarx::armem::server::ltm::Processors::configure
void configure(const nlohmann::json &config)
Definition: Processors.cpp:16
armarx::armem::server::ltm::Processors
all necessary classes to filter and convert an entry of the ltm to some other format(s)
Definition: Processors.h:19
armarx::armem::server::ltm::Processors::defaultTypeConverter
processor::converter::type::object::JsonConverter defaultTypeConverter
Definition: Processors.h:49
armarx::armem::server::ltm::Processors::converters
std::vector< std::unique_ptr< processor::DataConverter > > converters
Definition: Processors.h:45
Filter.h