00001 #ifndef PhysicsTools_MVATrainer_Interceptor_h 00002 #define PhysicsTools_MVATrainer_Interceptor_h 00003 00004 #include <vector> 00005 #include <string> 00006 00007 #include "PhysicsTools/MVAComputer/interface/Calibration.h" 00008 #include "PhysicsTools/MVAComputer/interface/Variable.h" 00009 00010 namespace PhysicsTools { 00011 00012 // forward declaration 00013 class MVAComputer; 00014 00015 namespace Calibration { 00016 00017 class Interceptor : public VarProcessor { 00018 public: 00019 virtual std::string getInstanceName() const { return "Interceptor"; } 00020 virtual std::vector<PhysicsTools::Variable::Flags> 00021 configure(const PhysicsTools::MVAComputer *computer, 00022 unsigned int n, const std::vector< 00023 PhysicsTools::Variable::Flags> &flags) = 0; 00024 virtual double intercept(const std::vector<double> *values) const = 0; 00025 }; 00026 00027 } // namespace Calibration 00028 } // namespace PhysicsTools 00029 00030 #endif // PhysicsTools_MVATrainer_Interceptor_h