22 #ifndef ROOT_TMVA_IPruneTool
23 #define ROOT_TMVA_IPruneTool
43 PruningInfo( ) : QualityIndex(0), PruneStrength(0), PruneSequence(0) {}
44 PruningInfo( Double_t q, Double_t alpha, std::vector<DecisionTreeNode*> sequence );
45 Double_t QualityIndex;
46 Double_t PruneStrength;
47 std::vector<DecisionTreeNode*> PruneSequence;
50 inline PruningInfo::PruningInfo( Double_t q, Double_t alpha, std::vector<DecisionTreeNode*> sequence )
51 : QualityIndex(q), PruneStrength(alpha), PruneSequence(sequence) {}
74 typedef std::vector<const Event*> EventSample;
77 virtual ~IPruneTool();
82 virtual PruningInfo* CalculatePruningInfo( DecisionTree* dt,
const EventSample* testEvents = NULL,
83 Bool_t isAutomatic = kFALSE ) = 0;
88 inline void SetPruneStrength( Double_t alpha ) { fPruneStrength = alpha; }
90 inline Double_t GetPruneStrength( )
const {
return fPruneStrength; }
94 inline void SetAutomatic( ) { fPruneStrength = -1.0; };
95 inline Bool_t IsAutomatic( )
const {
return fPruneStrength <= 0.0; }
101 Double_t fPruneStrength;
107 inline IPruneTool::IPruneTool( ) :
112 inline IPruneTool::~IPruneTool( ) {}