CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/RecoVertex/ConfigurableVertexReco/interface/ConfigurableAnnealing.h

Go to the documentation of this file.
00001 #ifndef ConfigurableAnnealing_H
00002 #define ConfigurableAnnealing_H
00003 
00004 #include "RecoVertex/VertexTools/interface/AnnealingSchedule.h"
00005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00006 #include <vector>
00007 
00008 class ConfigurableAnnealing : public AnnealingSchedule {
00014 public:
00015   ConfigurableAnnealing( const edm::ParameterSet & );
00016   ~ConfigurableAnnealing();
00017   ConfigurableAnnealing( const ConfigurableAnnealing & );
00018   void anneal();
00019   void resetAnnealing();
00020   double phi ( double chi2 ) const;
00021   double weight ( double chi2 ) const;
00022   double cutoff() const;
00023   double currentTemp() const;
00024   double initialTemp() const;
00025   bool isAnnealed() const;
00026   void debug() const;
00027 
00028   ConfigurableAnnealing * clone() const;
00029 
00030 private:
00031   AnnealingSchedule * theImpl;
00032 };
00033 
00034 #endif