//===-- rosa/agent/StateDetector.hpp ----------------------------*- C++ -*-===//
//
//                                 The RoSA Framework
//
//===----------------------------------------------------------------------===//
///
/// \file rosa/agent/StateDetector.hpp
///
/// \author Maximilian Götzinger (maximilian.goetzinger@tuwien.ac.at)
///
/// \date 2019
///
/// \brief Definition of *state detection* *functionality*.
///
//===----------------------------------------------------------------------===//

#ifndef ROSA_AGENT_STATEDETECTOR_HPP
#define ROSA_AGENT_STATEDETECTOR_HPP

#include "rosa/agent/Functionality.h"

namespace rosa {
namespace agent {
	
/// A special \c rosa::Agent with its own state. XXX
template <typename D> class StateDetector : public Functionality {
	
private:
  unsigned int discreteAveragePartitionCounter;
  vector<States> DetectedStates;
  bool stateIsValid;
  bool stateIsValidAfterReentrance;
  PartialFunction<D, D> ConfidenceSimilarToSample;
  
public:
    
	
	
};	
	
	
} // End namespace agent
} // End namespace rosa

#endif // ROSA_AGENT_STATEDETECTOR_HPP