#ifndef CLUSTER_NORMALIZED_BASE_HH
# define CLUSTER_NORMALIZED_BASE_HH

# include "DeviceClassifier.hh"

class NormalizedBase :public DeviceClassifier {
public:
  virtual ~NormalizedBase() {}

protected:
  NormalizedBase(ArgList const &args);
  virtual dist_type distance(StateVector const &a, StateVector const &b) const =0;

private:
  StateVector m_avg, m_sd;
  std::vector<StateVector> m_clusters;

  void classify(StateVector &v, std::vector<cluster_type> &winners, dist_type &dist);
}; // NormalizedBase

#endif // CLUSTER_NORMALIZED_BASE_HH 
