6 #ifndef KNOWROB_DATA_DRIVEN_REASONER_H 
    7 #define KNOWROB_DATA_DRIVEN_REASONER_H 
   20     class DataDrivenReasoner : 
public Reasoner {
 
   66         void emit(
const std::shared_ptr<reasoner::Event> &event);
 
  105         std::chrono::duration<double> 
updateInterval_ = std::chrono::seconds(1);
 
  109         std::chrono::time_point<std::chrono::high_resolution_clock> 
lastUpdate_;
 
void processRetraction(const std::vector< TriplePtr > &triples)
bool hasFeature(Feature feature) const
void setUpdateInterval(double intervalInSeconds)
void emit(const std::shared_ptr< reasoner::Event > &event)
void observe(const std::string &queryString, const BindingsHandler &handler)
std::shared_ptr< ThreadPool::Runner > updateRunner_
void processInvalidation()
void enableFeature(Feature feature)
auto updateInterval() const
void processAssertion(const std::vector< TriplePtr > &triples)
std::chrono::duration< double > updateInterval_
std::set< TriplePtr > inferredTriples_
void observe(const std::shared_ptr< GraphQuery > &query, const BindingsHandler &handler)
void setReasonerOrigin(const std::vector< TriplePtr > &triples)
std::chrono::time_point< std::chrono::high_resolution_clock > lastUpdate_
void processReplacement(const std::vector< TriplePtr > &triples)
std::function< void(const BindingsPtr &)> BindingsHandler
std::shared_ptr< DataDrivenReasoner > DataDrivenReasonerPtr