BasicFunctionMinimum.h   BasicFunctionMinimum.h 
// @(#)root/minuit2:$Id: BasicFunctionMinimum.h 23654 2008-05-06 07:30:34Z moneta $ // @(#)root/minuit2:$Id: BasicFunctionMinimum.h 38738 2011-04-05 13:54:46Z moneta $
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
* * * *
**********************************************************************/ **********************************************************************/
#ifndef ROOT_Minuit2_BasicFunctionMinimum #ifndef ROOT_Minuit2_BasicFunctionMinimum
#define ROOT_Minuit2_BasicFunctionMinimum #define ROOT_Minuit2_BasicFunctionMinimum
skipping to change at line 70 skipping to change at line 70
fErrorDef = min.fErrorDef; fErrorDef = min.fErrorDef;
fAboveMaxEdm = min.fAboveMaxEdm; fAboveMaxEdm = min.fAboveMaxEdm;
fReachedCallLimit = min.fReachedCallLimit; fReachedCallLimit = min.fReachedCallLimit;
fUserState = min.fUserState; fUserState = min.fUserState;
return *this; return *this;
} }
~BasicFunctionMinimum() {} ~BasicFunctionMinimum() {}
/// add latest minimization state (for example add Hesse result after Mi grad) /// add latest minimization state (for example add Hesse result after Mi grad)
void Add(const MinimumState& state) { void Add(const MinimumState& state ) {
fStates.push_back(state); fStates.push_back(state);
// LM : update also the user state // LM : update also the user state
fUserState = MnUserParameterState(State(), Up(), Seed().Trafo()); fUserState = MnUserParameterState(State(), Up(), Seed().Trafo());
// reset maxedm flag. If new state has edm over max other method must
be used
fAboveMaxEdm = false;
}
///Add a new state and flag that edm is above maximum
void Add(const MinimumState& state, MnAboveMaxEdm) {
Add(state);
fAboveMaxEdm = true;
} }
const MinimumSeed& Seed() const {return fSeed;} const MinimumSeed& Seed() const {return fSeed;}
const std::vector<MinimumState>& States() const {return fStates;} const std::vector<MinimumState>& States() const {return fStates;}
// user representation of state at Minimum // user representation of state at Minimum
const MnUserParameterState& UserState() const { const MnUserParameterState& UserState() const {
if(!fUserState.IsValid()) if(!fUserState.IsValid())
fUserState = MnUserParameterState(State(), Up(), Seed().Trafo()); fUserState = MnUserParameterState(State(), Up(), Seed().Trafo());
return fUserState; return fUserState;
 End of changes. 3 change blocks. 
2 lines changed or deleted 11 lines changed or added


 BayesianCalculator.h   BayesianCalculator.h 
// @(#)root/roostats:$Id: BayesianCalculator.h 37084 2010-11-29 21:37:13Z m oneta $ // @(#)root/roostats:$Id: BayesianCalculator.h 38933 2011-04-19 20:15:51Z m oneta $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_BayesianCalculator #ifndef ROOSTATS_BayesianCalculator
skipping to change at line 111 skipping to change at line 111
void SetShortestInterval() { fLeftSideFraction = -1; } void SetShortestInterval() { fLeftSideFraction = -1; }
// set the precision of the Root Finder // set the precision of the Root Finder
void SetBrfPrecision( double precision ) { fBrfPrecision = precision; } void SetBrfPrecision( double precision ) { fBrfPrecision = precision; }
// use directly the approximate posterior function obtained by binnin g it in nbins // use directly the approximate posterior function obtained by binnin g it in nbins
// by default the cdf is used by integrating the posterior // by default the cdf is used by integrating the posterior
// if a value of nbin <= 0 the cdf function will be used // if a value of nbin <= 0 the cdf function will be used
void SetScanOfPosterior(int nbin = 100) { fNScanBins = nbin; } void SetScanOfPosterior(int nbin = 100) { fNScanBins = nbin; }
// set the integration type (possible type are) // set the number of iterations when running a MC integration algorit
// 1D: adaptive, gauss, nonadaptive hm
// multidim: adaptive, vegas, miser, plain. These last 3 are based on // If not set use default algorithmic values
MC integration // In case of ToyMC sampling of the nuisance the value is 100
// In case of using the GSL MCintegrations types the default value is
// defined in ROOT::Math::IntegratorMultiDimOptions::DefaultNCalls()
virtual void SetNumIters(Int_t numIters) { fNumIterations = numIters
; }
// set the integration type (possible type are) :
// 1D integration ( used when only one nuisance and when the posterio
r is scanned):
// adaptive , gauss, nonadaptive
// multidim:
// ADAPTIVE, adaptive numerical integration
// niter defines here the max numnber of function
calls - can be reduced to make it faster
// but the required tolerance will not be reached
// VEGAS MC integration method based on importance sampling -
niter is number of calls + extra parameter
// can be configured using IntegratorMultiDimOptions
class
// MISER MC integration method based on stratified sampling
// See also http://en.wikipedia.org/wiki/Monte_Carlo_i
ntegration for VEGAS and MISER description
// PLAIN simple MC integration method, niter defines number
of calls
//
// Extra integration types are:
//
// TOYMC:
// evaluate posterior by generating toy MC for the nuisance par
ameters. It is a MC
// integration, where the function is sampled according to the
nuisance. It is convenient to use when all
// the nuisance are uncorrelated and it is efficient to generat
e them
// The toy are generated by default for each poi values
// (this method has been proposed and provided by J.P Chou)
// 1-TOYMC : same method as before but in this case the toys are
generated for each poi value
//
// ROOFIT:
// use roofit default integration methods which will produce a
nested integral (not reccomended for more
// than 1 nuisance parameters)
//
// if type = 0 use default specified via class IntegratorMultiDimOpti ons::SetDefaultIntegrator // if type = 0 use default specified via class IntegratorMultiDimOpti ons::SetDefaultIntegrator
void SetIntegrationType(const char * type); void SetIntegrationType(const char * type);
// return the mode (most probable value of the posterior function) // return the mode (most probable value of the posterior function)
double GetMode() const; double GetMode() const;
// force the nuisance pdf when using the toy mc sampling
void ForceNuisancePdf(RooAbsPdf & pdf) { fNuisancePdf = &pdf; }
protected: protected:
void ClearAll() const; void ClearAll() const;
void ApproximatePosterior() const; void ApproximatePosterior() const;
void ComputeIntervalFromApproxPosterior(double c1, double c2) const; void ComputeIntervalFromApproxPosterior(double c1, double c2) const;
void ComputeIntervalFromCdf(double c1, double c2) const; void ComputeIntervalFromCdf(double c1, double c2) const;
void ComputeIntervalUsingRooFit(double c1, double c2) const; void ComputeIntervalUsingRooFit(double c1, double c2) const;
void ComputeShortestInterval() const; void ComputeShortestInterval() const;
private: private:
// plan to replace the above: return a SimpleInterval integrating // plan to replace the above: return a SimpleInterval integrating
// over all other parameters except the one specified as argument // over all other parameters except the one specified as argument
//virtual SimpleInterval* GetInterval( RooRealVar* parameter ) const { return 0; } //virtual SimpleInterval* GetInterval( RooRealVar* parameter ) const { return 0; }
RooAbsData* fData; RooAbsData* fData; // data set
RooAbsPdf* fPdf; RooAbsPdf* fPdf; // model pdf (could conta
RooArgSet fPOI; in the nuisance pdf as constraint term)
RooAbsPdf* fPriorPOI; RooArgSet fPOI; // POI
RooAbsPdf* fPriorPOI; // prior pdf for POI
RooAbsPdf* fNuisancePdf; // nuisance pdf (needed wh
en using nuisance sampling technique)
RooArgSet fNuisanceParameters; RooArgSet fNuisanceParameters;
mutable RooAbsPdf* fProductPdf; // internal pointer to m odel * prior mutable RooAbsPdf* fProductPdf; // internal pointer to m odel * prior
mutable RooAbsReal* fLogLike; // internal pointer to l og likelihood function mutable RooAbsReal* fLogLike; // internal pointer to l og likelihood function
mutable RooAbsReal* fLikelihood; // internal pointer to l ikelihood function mutable RooAbsReal* fLikelihood; // internal pointer to l ikelihood function
mutable RooAbsReal* fIntegratedLikelihood; // integrated likelihood function, i.e - unnormalized posterior function mutable RooAbsReal* fIntegratedLikelihood; // integrated likelihood function, i.e - unnormalized posterior function
mutable RooAbsPdf* fPosteriorPdf; // normalized (on the p oi) posterior pdf mutable RooAbsPdf* fPosteriorPdf; // normalized (on the p oi) posterior pdf
mutable ROOT::Math::IGenFunction * fPosteriorFunction; // function representing the posterior mutable ROOT::Math::IGenFunction * fPosteriorFunction; // function representing the posterior
mutable TF1 * fApproxPosterior; // TF1 representing the scanned po sterior function mutable TF1 * fApproxPosterior; // TF1 representing the scanned po sterior function
mutable Double_t fLower; // computer lower interval bound mutable Double_t fLower; // computer lower interval bound
mutable Double_t fUpper; // upper interval bound mutable Double_t fUpper; // upper interval bound
mutable Double_t fNLLMin; // minimum value of Nll mutable Double_t fNLLMin; // minimum value of Nll
double fSize; // size used for getting the interval double fSize; // size used for getting the interval
double fLeftSideFraction; // fraction of probability content on le ft side of interval double fLeftSideFraction; // fraction of probability content on le ft side of interval
double fBrfPrecision; // root finder precision double fBrfPrecision; // root finder precision
int fNScanBins; // number of bins to scan, if = -1 no scan mutable int fNScanBins; // number of bins to scan, if = -1
is done (default) no scan is done (default)
int fNumIterations; // number of iterations (when using ToyMC)
mutable Bool_t fValidInterval; mutable Bool_t fValidInterval;
TString fIntegrationType; TString fIntegrationType;
protected: protected:
ClassDef(BayesianCalculator,1) // BayesianCalculator class ClassDef(BayesianCalculator,1) // BayesianCalculator class
}; };
} }
 End of changes. 5 change blocks. 
11 lines changed or deleted 61 lines changed or added


 BinarySearchTree.h   BinarySearchTree.h 
// @(#)root/tmva $Id: BinarySearchTree.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: BinarySearchTree.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : BinarySearchTree * * Class : BinarySearchTree *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* BinarySearchTree incl. volume Search method * * BinarySearchTree incl. volume Search method *
skipping to change at line 122 skipping to change at line 122
// Create the search tree from the event collection // Create the search tree from the event collection
// using ONLY the variables specified in "theVars" // using ONLY the variables specified in "theVars"
Double_t Fill( const std::vector<TMVA::Event*>& events, const std::ve ctor<Int_t>& theVars, Int_t theType = -1 ); Double_t Fill( const std::vector<TMVA::Event*>& events, const std::ve ctor<Int_t>& theVars, Int_t theType = -1 );
// create the search tree from the events in a TTree // create the search tree from the events in a TTree
// using ALL the variables specified included in the Event // using ALL the variables specified included in the Event
Double_t Fill( const std::vector<TMVA::Event*>& events, Int_t theType = -1 ); Double_t Fill( const std::vector<TMVA::Event*>& events, Int_t theType = -1 );
void NormalizeTree (); void NormalizeTree ();
void CalcStatistics( TMVA::Node* n = 0 ); void CalcStatistics( TMVA::Node* n = 0, Int_t signalClass=0 );
void Clear ( TMVA::Node* n = 0 ); void Clear ( TMVA::Node* n = 0 );
// access to mean for signal and background for each variable // access to mean for signal and background for each variable
Float_t Mean(Types::ESBType sb, UInt_t var ) { return fMeans[sb==Type s::kSignal?0:1][var]; } Float_t Mean(Types::ESBType sb, UInt_t var ) { return fMeans[sb==Type s::kSignal?0:1][var]; }
// access to RMS for signal and background for each variable // access to RMS for signal and background for each variable
Float_t RMS(Types::ESBType sb, UInt_t var ) { return fRMS[sb==Types:: kSignal?0:1][var]; } Float_t RMS(Types::ESBType sb, UInt_t var ) { return fRMS[sb==Types:: kSignal?0:1][var]; }
// access to Minimum for signal and background for each variable // access to Minimum for signal and background for each variable
Float_t Min(Types::ESBType sb, UInt_t var ) { return fMin[sb==Types:: kSignal?0:1][var]; } Float_t Min(Types::ESBType sb, UInt_t var ) { return fMin[sb==Types:: kSignal?0:1][var]; }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 BinarySearchTreeNode.h   BinarySearchTreeNode.h 
// @(#)root/tmva $Id: BinarySearchTreeNode.h 33928 2010-06-15 16:19:31Z ste lzer $ // @(#)root/tmva $Id: BinarySearchTreeNode.h 38719 2011-04-04 12:22:28Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Classes: Node, NodeID * * Classes: Node, NodeID *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Node for the BinarySearch * * Node for the BinarySearch *
skipping to change at line 62 skipping to change at line 62
class Event; class Event;
// a class used to identify a Node; (needed for recursive reading from t ext file) // a class used to identify a Node; (needed for recursive reading from t ext file)
// (currently it is NOT UNIQUE... but could eventually made it // (currently it is NOT UNIQUE... but could eventually made it
// a node in the tree structure // a node in the tree structure
class BinarySearchTreeNode : public Node { class BinarySearchTreeNode : public Node {
public: public:
// constructor of a node for the search tree // constructor of a node for the search tree
BinarySearchTreeNode( const Event* e = NULL ); BinarySearchTreeNode( const Event* e = NULL, UInt_t signalClass=0 );
// constructor of a daughter node as a daughter of 'p' // constructor of a daughter node as a daughter of 'p'
BinarySearchTreeNode( BinarySearchTreeNode* parent, char pos ); BinarySearchTreeNode( BinarySearchTreeNode* parent, char pos );
// copy constructor // copy constructor
BinarySearchTreeNode ( const BinarySearchTreeNode &n, BinarySearchTreeNode ( const BinarySearchTreeNode &n,
BinarySearchTreeNode* parent = NULL); BinarySearchTreeNode* parent = NULL);
// destructor // destructor
virtual ~BinarySearchTreeNode (); virtual ~BinarySearchTreeNode ();
skipping to change at line 92 skipping to change at line 92
virtual Bool_t EqualsMe ( const Event& ) const; virtual Bool_t EqualsMe ( const Event& ) const;
// set index of variable used for discrimination at this node // set index of variable used for discrimination at this node
inline void SetSelector( Short_t i) { fSelector = i; } inline void SetSelector( Short_t i) { fSelector = i; }
// return index of variable used for discrimination at this node // return index of variable used for discrimination at this node
inline Short_t GetSelector() const { return fSelector; } inline Short_t GetSelector() const { return fSelector; }
const std::vector<Float_t> & GetEventV() const { return fEventV; } const std::vector<Float_t> & GetEventV() const { return fEventV; }
Float_t GetWeight() const { return fWeight; } Float_t GetWeight() const { return fWeight; }
Bool_t IsSignal() const { return (fClass == 0) UInt_t GetClass() const { return fClass; }
; } // Bool_t IsSignal() const { return (fClass ==
fSignalClass); }
const std::vector<Float_t> & GetTargets() const { return fTargets; } const std::vector<Float_t> & GetTargets() const { return fTargets; }
// printout of the node // printout of the node
virtual void Print( std::ostream& os ) const; virtual void Print( std::ostream& os ) const;
// recursive printout of the node and it daughters // recursive printout of the node and it daughters
virtual void PrintRec( std::ostream& os ) const; virtual void PrintRec( std::ostream& os ) const;
virtual void AddAttributesToNode(void* node) const; virtual void AddAttributesToNode(void* node) const;
skipping to change at line 114 skipping to change at line 115
private: private:
// Read the data block // Read the data block
virtual void ReadAttributes(void* node, UInt_t tmva_Version_Code = TM VA_VERSION_CODE ); virtual void ReadAttributes(void* node, UInt_t tmva_Version_Code = TM VA_VERSION_CODE );
virtual Bool_t ReadDataRecord( std::istream& is, UInt_t tmva_Version_ Code = TMVA_VERSION_CODE ); virtual Bool_t ReadDataRecord( std::istream& is, UInt_t tmva_Version_ Code = TMVA_VERSION_CODE );
virtual void ReadContent(std::stringstream& s); virtual void ReadContent(std::stringstream& s);
std::vector<Float_t> fEventV; std::vector<Float_t> fEventV;
std::vector<Float_t> fTargets; std::vector<Float_t> fTargets;
Float_t fWeight; Float_t fWeight;
// Float_t fIsSignal; UInt_t fClass;
UInt_t fClass;
Short_t fSelector; // index of variable used in node select ion (decision tree) Short_t fSelector; // index of variable used in node select ion (decision tree)
ClassDef(BinarySearchTreeNode,0) // Node for the BinarySearchTree ClassDef(BinarySearchTreeNode,0) // Node for the BinarySearchTree
}; };
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 4 change blocks. 
6 lines changed or deleted 6 lines changed or added


 BinaryTree.h   BinaryTree.h 
// @(#)root/tmva $Id: BinaryTree.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: BinaryTree.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Eckhard vo
n Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : BinaryTree * * Class : BinaryTree *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* BinaryTree: A base class for BinarySearch- or Decision-Trees * * BinaryTree: A base class for BinarySearch- or Decision-Trees *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_BinaryTree #ifndef ROOT_TMVA_BinaryTree
#define ROOT_TMVA_BinaryTree #define ROOT_TMVA_BinaryTree
#ifndef ROOT_TMVA_Version #ifndef ROOT_TMVA_Version
 End of changes. 4 change blocks. 
3 lines changed or deleted 6 lines changed or added


 Chebyshev.h   Chebyshev.h 
// @(#)root/mathmore:$Id: Chebyshev.h 21503 2007-12-19 17:34:54Z moneta $ // @(#)root/mathmore:$Id: Chebyshev.h 38026 2011-02-10 11:46:12Z rdm $
// Authors: L. Moneta, A. Zsenei 08/2005 // Authors: L. Moneta, A. Zsenei 08/2005
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2004 ROOT Foundation, CERN/PH-SFT * * Copyright (c) 2004 ROOT Foundation, CERN/PH-SFT *
* * * *
* This library is free software; you can redistribute it and/or * * This library is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License * * modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 * * as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. * * of the License, or (at your option) any later version. *
skipping to change at line 54 skipping to change at line 54
#ifndef ROOT_Math_IFunctionfwd #ifndef ROOT_Math_IFunctionfwd
#include "Math/IFunctionfwd.h" #include "Math/IFunctionfwd.h"
#endif #endif
#ifndef ROOT_Math_GSLFunctionAdapter #ifndef ROOT_Math_GSLFunctionAdapter
#include "Math/GSLFunctionAdapter.h" #include "Math/GSLFunctionAdapter.h"
#endif #endif
#include <memory> #include <memory>
#include <cstddef>
namespace ROOT { namespace ROOT {
namespace Math { namespace Math {
class GSLChebSeries; class GSLChebSeries;
class GSLFunctionWrapper; class GSLFunctionWrapper;
//_________________________________________________________________________ ___ //_________________________________________________________________________ ___
/** /**
Class describing a Chebyshev series which can be used to approximate a Class describing a Chebyshev series which can be used to approximate a
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 Class.h   Class.h 
skipping to change at line 62 skipping to change at line 62
const char *Name() ; const char *Name() ;
const char *Fullname(); const char *Fullname();
const char *Title() ; const char *Title() ;
int Size() ; int Size() ;
long Property(); long Property();
int NDataMembers(); int NDataMembers();
int NMethods(); int NMethods();
long IsBase(const char *classname); long IsBase(const char *classname);
long IsBase(G__ClassInfo& a); long IsBase(G__ClassInfo& a);
void* DynamicCast(G__ClassInfo& to, void* obj); void* DynamicCast(G__ClassInfo& to, void* obj);
long Tagnum() const { return(tagnum); } int Tagnum() const { return(tagnum); }
G__ClassInfo EnclosingClass() ; G__ClassInfo EnclosingClass() ;
G__ClassInfo EnclosingSpace() ; G__ClassInfo EnclosingSpace() ;
struct G__friendtag* GetFriendInfo(); struct G__friendtag* GetFriendInfo();
void SetGlobalcomp(int globalcomp); void SetGlobalcomp(G__SIGNEDCHAR_T globalcomp);
void SetProtectedAccess(int protectedaccess); void SetProtectedAccess(int protectedaccess);
#ifdef G__OLDIMPLEMENTATION1218_YET #ifdef G__OLDIMPLEMENTATION1218_YET
int IsValid() { return 0<=tagnum && tagnum<G__struct.alltag ? 1 : 0; } int IsValid() { return 0<=tagnum && tagnum<G__struct.alltag ? 1 : 0; }
#else #else
int IsValid(); int IsValid();
#endif #endif
int IsLoaded(); int IsLoaded();
int SetFilePos(const char *fname); int SetFilePos(const char *fname);
int Next(); int Next();
int Linkage(); int Linkage();
const char *FileName() ; const char *FileName() ;
int LineNumber() ; int LineNumber() ;
int IsTmplt(); int IsTmplt();
const char* TmpltName(); const char* TmpltName();
const char* TmpltArg(); const char* TmpltArg();
protected: protected:
long tagnum; // class,struct,union,enum key for cint dictionary int tagnum; // class,struct,union,enum key for cint dictionary
long class_property; // cache value (expensive to get) long class_property; // cache value (expensive to get)
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
// Following things have to be added for ROOT // Following things have to be added for ROOT
/////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////
public: public:
void SetDefFile(char *deffilein); void SetDefFile(char *deffilein);
void SetDefLine(int deflinein); void SetDefLine(int deflinein);
void SetImpFile(char *impfilein); void SetImpFile(char *impfilein);
void SetImpLine(int implinein); void SetImpLine(int implinein);
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 ClassBuilder.h   ClassBuilder.h 
// @(#)root/reflex:$Id: ClassBuilder.h 32228 2010-02-05 16:13:09Z axel $ // @(#)root/reflex:$Id: ClassBuilder.h 38267 2011-03-01 18:49:15Z pcanal $
// Author: Stefan Roiser 2004 // Author: Stefan Roiser 2004
// Copyright CERN, CH-1211 Geneva 23, 2004-2010, All rights reserved. // Copyright CERN, CH-1211 Geneva 23, 2004-2010, All rights reserved.
// //
// Permission to use, copy, modify, and distribute this software for any // Permission to use, copy, modify, and distribute this software for any
// purpose is hereby granted without fee, provided that this copyright and // purpose is hereby granted without fee, provided that this copyright and
// permissions notice appear in all copies and derivatives. // permissions notice appear in all copies and derivatives.
// //
// This software is provided "as is" without express or implied warranty. // This software is provided "as is" without express or implied warranty.
skipping to change at line 26 skipping to change at line 26
#include "Reflex/Kernel.h" #include "Reflex/Kernel.h"
#include "Reflex/Tools.h" #include "Reflex/Tools.h"
#include "Reflex/Member.h" #include "Reflex/Member.h"
#include "Reflex/Callback.h" #include "Reflex/Callback.h"
#include "Reflex/Builder/TypeBuilder.h" #include "Reflex/Builder/TypeBuilder.h"
// Forward declaration for 'friendship' purpose. // Forward declaration for 'friendship' purpose.
namespace Cint { namespace Internal {} } namespace Cint { namespace Internal {} }
namespace Reflex { namespace Reflex {
/* Helper class to avoid compiler warning about casting function pointer
** to void pointer.
*/
class BuilderFunc2Void {
typedef void (*funcptr_t)();
union funcptr_and_voidptr {
typedef void (*funcptr_t)();
funcptr_and_voidptr(void *val) : _read(val) {}
void *_read;
funcptr_t _write;
};
funcptr_and_voidptr _tmp;
public:
template <typename T>
BuilderFunc2Void( T vfp ) : _tmp(0) {
_tmp._write = ( funcptr_t )vfp;
}
operator void*() const {
return _tmp._read;
}
};
// forward declarations // forward declarations
class Class; class Class;
class ClassBuilder; class ClassBuilder;
class OnDemandBuilderForScope; class OnDemandBuilderForScope;
template <typename C> class ClassBuilderT; template <typename C> class ClassBuilderT;
/** /**
* @class ClassBuilderImpl ClassBuilder.h Reflex/Builder/ClassBuilder.h * @class ClassBuilderImpl ClassBuilder.h Reflex/Builder/ClassBuilder.h
* @author Stefan Roiser * @author Stefan Roiser
 End of changes. 2 change blocks. 
1 lines changed or deleted 29 lines changed or added


 Config.h   Config.h 
// @(#)root/tmva $Id: Config.h 33931 2010-06-15 16:49:02Z stelzer $ // @(#)root/tmva $Id: Config.h 38719 2011-04-04 12:22:28Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Fredrik Tegenfeldt, Helge Voss // Author: Andreas Hoecker, Joerg Stelzer, Fredrik Tegenfeldt, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Config * * Class : Config *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* GLobal configuration settings (singleton) * * GLobal configuration settings (singleton) *
skipping to change at line 87 skipping to change at line 87
// publicly accessible global settings // publicly accessible global settings
class VariablePlotting { class VariablePlotting {
// data collection class to configure plotting of variables // data collection class to configure plotting of variables
public: public:
Float_t fTimesRMS; Float_t fTimesRMS;
Int_t fNbins1D; Int_t fNbins1D;
Int_t fNbins2D; Int_t fNbins2D;
Int_t fMaxNumOfAllowedVariablesForScatterPlots; Int_t fMaxNumOfAllowedVariablesForScatterPlots;
Int_t fNbinsMVAoutput;
Int_t fNbinsXOfROCCurve; Int_t fNbinsXOfROCCurve;
} fVariablePlotting; // Customisable plotting properties } fVariablePlotting; // Customisable plotting properties
// for file names and similar // for file names and similar
class IONames { class IONames {
public: public:
TString fWeightFileDir; TString fWeightFileDir;
TString fWeightFileExtension; TString fWeightFileExtension;
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 CrossEntropy.h   CrossEntropy.h 
// @(#)root/tmva $Id: CrossEntropy.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: CrossEntropy.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : CrossEntropy * * Class : CrossEntropy *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: Implementation of the CrossEntropy as separation criterion * * Description: Implementation of the CrossEntropy as separation criterion *
* * * *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 DataInputHandler.h   DataInputHandler.h 
// @(#)root/tmva $Id: DataInputHandler.h 33928 2010-06-15 16:19:31Z stelzer $ // @(#)root/tmva $Id: DataInputHandler.h 38475 2011-03-17 10:46:00Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : DataInputHandler * * Class : DataInputHandler *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Contains all the data information * * Contains all the data information *
skipping to change at line 69 skipping to change at line 69
class TreeInfo { class TreeInfo {
public: public:
TreeInfo( TTree* tr, const TString& className, Double_t weight=1.0, T ypes::ETreeType tt = Types::kMaxTreeType, Bool_t own=kFALSE ) TreeInfo( TTree* tr, const TString& className, Double_t weight=1.0, T ypes::ETreeType tt = Types::kMaxTreeType, Bool_t own=kFALSE )
: fTree(tr), fClassName(className), fWeight(weight), fTreeType(tt) , fOwner(own) {} : fTree(tr), fClassName(className), fWeight(weight), fTreeType(tt) , fOwner(own) {}
~TreeInfo() { if (fOwner) delete fTree; } ~TreeInfo() { if (fOwner) delete fTree; }
TTree* GetTree() const { return fTree; } TTree* GetTree() const { return fTree; }
Double_t GetWeight() const { return fWeight; } Double_t GetWeight() const { return fWeight; }
UInt_t GetEntries() const { return fTree->GetEntries(); } UInt_t GetEntries() const { if( !fTree ) return 0; else r eturn fTree->GetEntries(); }
Types::ETreeType GetTreeType() const { return fTreeType; } Types::ETreeType GetTreeType() const { return fTreeType; }
const TString& GetClassName() const { return fClassName; } const TString& GetClassName() const { return fClassName; }
private: private:
TTree* fTree; //! pointer to the tree TTree* fTree; //! pointer to the tree
TString fClassName;//! name of the class the tree belongs to TString fClassName;//! name of the class the tree belongs to
Double_t fWeight; //! weight for the tree Double_t fWeight; //! weight for the tree
Types::ETreeType fTreeType; //! tree is for training/testing/both Types::ETreeType fTreeType; //! tree is for training/testing/both
Bool_t fOwner; //! true if created from file Bool_t fOwner; //! true if created from file
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 DataMbr.h   DataMbr.h 
skipping to change at line 55 skipping to change at line 55
long Handle() { return(handle); } long Handle() { return(handle); }
int Index() { return ((int)index); } int Index() { return ((int)index); }
const char *Name(); const char *Name();
const char *Title(); const char *Title();
G__TypeInfo* Type(); G__TypeInfo* Type();
long Property(); long Property();
long Offset() ; long Offset() ;
int Bitfield(); int Bitfield();
int ArrayDim() ; int ArrayDim() ;
int MaxIndex(int dim) ; long MaxIndex(int dim) ;
G__ClassInfo* MemberOf(); G__ClassInfo* MemberOf();
void SetGlobalcomp(int globalcomp); void SetGlobalcomp(G__SIGNEDCHAR_T globalcomp);
int IsValid(); int IsValid();
int SetFilePos(const char* fname); int SetFilePos(const char* fname);
int Next(); int Next();
int Prev(); int Prev();
enum error_code { VALID, NOT_INT, NOT_DEF, IS_PRIVATE, UNKNOWN }; enum error_code { VALID, NOT_INT, NOT_DEF, IS_PRIVATE, UNKNOWN };
const char *ValidArrayIndex(int *errnum = 0, char **errstr = 0); const char *ValidArrayIndex(int *errnum = 0, char **errstr = 0);
const char *FileName(); const char *FileName();
int LineNumber(); int LineNumber();
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 DataSet.h   DataSet.h 
// @(#)root/tmva $Id: DataSet.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: DataSet.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : DataSet * * Class : DataSet *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Contains all the data information * * Contains all the data information *
skipping to change at line 92 skipping to change at line 92
public: public:
DataSet(const DataSetInfo&); DataSet(const DataSetInfo&);
virtual ~DataSet(); virtual ~DataSet();
void AddEvent( Event *, Types::ETreeType ); void AddEvent( Event *, Types::ETreeType );
Long64_t GetNEvents( Types::ETreeType type = Types::kMaxTreeType ) c onst; Long64_t GetNEvents( Types::ETreeType type = Types::kMaxTreeType ) c onst;
Long64_t GetNTrainingEvents() const { return GetNEvents (Types::kTraining); } Long64_t GetNTrainingEvents() const { return GetNEvents (Types::kTraining); }
Long64_t GetNTestEvents() const { return GetNEvents (Types::kTesting); } Long64_t GetNTestEvents() const { return GetNEvents (Types::kTesting); }
Event* GetEvent() const; Event* GetEvent() const; // returns event w
Event* GetEvent ( Long64_t ievt ) const { fCurrentEventIdx ithout transformations
= ievt; return GetEvent(); } Event* GetEvent ( Long64_t ievt ) const { fCurrentEventIdx
= ievt; return GetEvent(); } // returns event without transformations
Event* GetTrainingEvent( Long64_t ievt ) const { return GetEvent(i evt, Types::kTraining); } Event* GetTrainingEvent( Long64_t ievt ) const { return GetEvent(i evt, Types::kTraining); }
Event* GetTestEvent ( Long64_t ievt ) const { return GetEvent(i evt, Types::kTesting); } Event* GetTestEvent ( Long64_t ievt ) const { return GetEvent(i evt, Types::kTesting); }
Event* GetEvent ( Long64_t ievt, Types::ETreeType type ) co nst { Event* GetEvent ( Long64_t ievt, Types::ETreeType type ) co nst {
fCurrentTreeIdx = TreeIndex(type); fCurrentEventIdx = ievt; return GetEvent(); fCurrentTreeIdx = TreeIndex(type); fCurrentEventIdx = ievt; return GetEvent();
} }
UInt_t GetNVariables() const; UInt_t GetNVariables() const;
UInt_t GetNTargets() const; UInt_t GetNTargets() const;
UInt_t GetNSpectators() const; UInt_t GetNSpectators() const;
 End of changes. 2 change blocks. 
4 lines changed or deleted 5 lines changed or added


 DecisionTree.h   DecisionTree.h 
// @(#)root/tmva $Id: DecisionTree.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: DecisionTree.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Jan Therha
ag, Eckhard von Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : DecisionTree * * Class : DecisionTree *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Implementation of a Decision Tree * * Implementation of a Decision Tree *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://mva.sourceforge.net/license.txt) * * (http://mva.sourceforge.net/license.txt) *
* * * *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_DecisionTree #ifndef ROOT_TMVA_DecisionTree
#define ROOT_TMVA_DecisionTree #define ROOT_TMVA_DecisionTree
skipping to change at line 192 skipping to change at line 195
void SetTreeID(Int_t treeID){fTreeID = treeID;}; void SetTreeID(Int_t treeID){fTreeID = treeID;};
Int_t GetTreeID(){return fTreeID;}; Int_t GetTreeID(){return fTreeID;};
Bool_t DoRegression() const { return fAnalysisType == Types::kRegress ion; } Bool_t DoRegression() const { return fAnalysisType == Types::kRegress ion; }
void SetAnalysisType (Types::EAnalysisType t) { fAnalysisType = t;} void SetAnalysisType (Types::EAnalysisType t) { fAnalysisType = t;}
Types::EAnalysisType GetAnalysisType ( void ) { return fAnalysisType; } Types::EAnalysisType GetAnalysisType ( void ) { return fAnalysisType; }
inline void SetUseFisherCuts(Bool_t t=kTRUE) { fUseFisherCuts = t;} inline void SetUseFisherCuts(Bool_t t=kTRUE) { fUseFisherCuts = t;}
inline void SetMinLinCorrForFisher(Double_t min){fMinLinCorrForFisher = min;} inline void SetMinLinCorrForFisher(Double_t min){fMinLinCorrForFisher = min;}
inline void SetUseExclusiveVars(Bool_t t=kTRUE){fUseExclusiveVars = t ;} inline void SetUseExclusiveVars(Bool_t t=kTRUE){fUseExclusiveVars = t ;}
inline void SetPairNegWeightsInNode(){fPairNegWeightsInNode=kTRUE;}
private: private:
// utility functions // utility functions
// calculate the Purity out of the number of sig and bkg events colle cted // calculate the Purity out of the number of sig and bkg events colle cted
// from individual samples. // from individual samples.
// calculates the purity S/(S+B) of a given event sample // calculates the purity S/(S+B) of a given event sample
Double_t SamplePurity(EventList eventSample); Double_t SamplePurity(EventList eventSample);
skipping to change at line 231 skipping to change at line 235
Bool_t fRandomisedTree; // choose at each node splitting a random set of variables Bool_t fRandomisedTree; // choose at each node splitting a random set of variables
Int_t fUseNvars; // the number of variables used in randomi sed trees; Int_t fUseNvars; // the number of variables used in randomi sed trees;
Bool_t fUsePoissonNvars; // use "fUseNvars" not as fixed number bu t as mean of a possion distr. in each split Bool_t fUsePoissonNvars; // use "fUseNvars" not as fixed number bu t as mean of a possion distr. in each split
TRandom3 *fMyTrandom; // random number generator for randomised trees TRandom3 *fMyTrandom; // random number generator for randomised trees
std::vector< Double_t > fVariableImportance; // the relative importan ce of the different variables std::vector< Double_t > fVariableImportance; // the relative importan ce of the different variables
UInt_t fNNodesMax; // max # of nodes UInt_t fNNodesMax; // max # of nodes
UInt_t fMaxDepth; // max depth UInt_t fMaxDepth; // max depth
UInt_t fClass; // class which is treated as signal when b UInt_t fSigClass; // class which is treated as signal when b
uilding the tree uilding the tree
Bool_t fPairNegWeightsInNode; // randomly pair miscl. ev. with n
eg. and pos. weights in node and don't boost them
static const Int_t fgDebugLevel = 0; // debug level determining some printout/control plots etc. static const Int_t fgDebugLevel = 0; // debug level determining some printout/control plots etc.
Int_t fTreeID; // just an ID number given to the tree.. ma kes debugging easier as tree knows who he is. Int_t fTreeID; // just an ID number given to the tree.. ma kes debugging easier as tree knows who he is.
Types::EAnalysisType fAnalysisType; // kClassification(=0=false) o r kRegression(=1=true) Types::EAnalysisType fAnalysisType; // kClassification(=0=false) o r kRegression(=1=true)
ClassDef(DecisionTree,0) // implementation of a Decisio n Tree ClassDef(DecisionTree,0) // implementation of a Decisio n Tree
}; };
} // namespace TMVA } // namespace TMVA
 End of changes. 6 change blocks. 
6 lines changed or deleted 14 lines changed or added


 DecisionTreeNode.h   DecisionTreeNode.h 
// @(#)root/tmva $Id: DecisionTreeNode.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: DecisionTreeNode.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Eckhard vo n Toerne // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Eckhard vo n Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : DecisionTreeNode * * Class : DecisionTreeNode *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Node for the Decision Tree * * Node for the Decision Tree *
skipping to change at line 329 skipping to change at line 329
Float_t GetSampleMax(UInt_t ivar) const; Float_t GetSampleMax(UInt_t ivar) const;
void SetSampleMin(UInt_t ivar, Float_t xmin); void SetSampleMin(UInt_t ivar, Float_t xmin);
void SetSampleMax(UInt_t ivar, Float_t xmax); void SetSampleMax(UInt_t ivar, Float_t xmax);
static bool fgIsTraining; // static variable to flag training phase i n which we need fTrainInfo static bool fgIsTraining; // static variable to flag training phase i n which we need fTrainInfo
protected: protected:
static MsgLogger* fgLogger; // static because there is a huge numb er of nodes... static MsgLogger* fgLogger; // static because there is a huge numb er of nodes...
std::vector<Double_t> fFisherCoeff; // the other fisher coef f (offset at the last element std::vector<Double_t> fFisherCoeff; // the fisher coeff (off set at the last element)
Float_t fCutValue; // cut value appplied on this node to disc riminate bkg against sig Float_t fCutValue; // cut value appplied on this node to disc riminate bkg against sig
Bool_t fCutType; // true: if event variable > cutValue ==> signal , false otherwise Bool_t fCutType; // true: if event variable > cutValue ==> signal , false otherwise
Short_t fSelector; // index of variable used in node selectio n (decision tree) Short_t fSelector; // index of variable used in node selectio n (decision tree)
Float_t fResponse; // response value in case of regression Float_t fResponse; // response value in case of regression
Float_t fRMS; // response RMS of the regression node Float_t fRMS; // response RMS of the regression node
Int_t fNodeType; // Type of node: -1 == Bkg-leaf, 1 == Sign al-leaf, 0 = internal Int_t fNodeType; // Type of node: -1 == Bkg-leaf, 1 == Sign al-leaf, 0 = internal
Float_t fPurity; // the node purity Float_t fPurity; // the node purity
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 Event.h   Event.h 
// @(#)root/tmva $Id: Event.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: Event.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ja
n Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Event * * Class : Event *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Event container * * Event container *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* LAPP, Annecy, France * * U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://mva.sourceforge.net/license.txt) * * (http://mva.sourceforge.net/license.txt) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_Event #ifndef ROOT_TMVA_Event
#define ROOT_TMVA_Event #define ROOT_TMVA_Event
#include <iosfwd> #include <iosfwd>
skipping to change at line 79 skipping to change at line 80
explicit Event( const std::vector<Float_t*>*&, UInt_t nvar ); explicit Event( const std::vector<Float_t*>*&, UInt_t nvar );
~Event(); ~Event();
// accessors // accessors
Bool_t IsDynamic() const {return fDynamic; } Bool_t IsDynamic() const {return fDynamic; }
Double_t GetWeight() const { return fWeight*fBoostWeight; } Double_t GetWeight() const { return fWeight*fBoostWeight; }
Double_t GetOriginalWeight() const { return fWeight; } Double_t GetOriginalWeight() const { return fWeight; }
Double_t GetBoostWeight() const { return TMath::Max(Double_t(0.000 1),fBoostWeight); } Double_t GetBoostWeight() const { return TMath::Max(Double_t(0.000 1),fBoostWeight); }
UInt_t GetClass() const { return fClass; } UInt_t GetClass() const { return fClass; }
UInt_t GetNVariables() const; UInt_t GetNVariables() const;
UInt_t GetNTargets() const; UInt_t GetNTargets() const;
UInt_t GetNSpectators() const; UInt_t GetNSpectators() const;
const std::vector<UInt_t>* GetVariableArrangement() const { return fV Float_t GetValue( UInt_t ivar) const;
ariableArrangement; }
Float_t GetValue( UInt_t ivar) const;
const std::vector<Float_t>& GetValues() const; const std::vector<Float_t>& GetValues() const;
Float_t GetTarget( UInt_t itgt ) const { return fTargets.at(itgt); } Float_t GetTarget( UInt_t itgt ) const { return fTargets.at(itgt); }
std::vector<Float_t>& GetTargets() const { return fTargets; } std::vector<Float_t>& GetTargets() const { return fTargets; }
Float_t GetSpectator( UInt_t ivar) const; Float_t GetSpectator( UInt_t ivar) const;
std::vector<Float_t>& GetSpectators() const { return fSpectators; } std::vector<Float_t>& GetSpectators() const { return fSpectators; }
void ScaleWeight ( Double_t s ) { fWeight*=s; } void ScaleWeight ( Double_t s ) { fWeight*=s; }
void SetWeight ( Double_t w ) { fWeight=w; } void SetWeight ( Double_t w ) { fWeight=w; }
void SetBoostWeight ( Double_t w ) { fBoostWeight=w; } void SetBoostWeight ( Double_t w ) { fDoNotBoost ? fDoNotB
void ScaleBoostWeight ( Double_t s ) { fBoostWeight *= s; } oost = kFALSE : fBoostWeight=w; }
void SetClass ( UInt_t t ) { fClass=t; } void ScaleBoostWeight ( Double_t s ) { fDoNotBoost ? fDoNotB
void SetVal ( UInt_t ivar, Float_t val ); oost = kFALSE : fBoostWeight *= s; }
void SetTarget ( UInt_t itgt, Float_t value ); void SetClass ( UInt_t t ) { fClass=t; }
void SetSpectator ( UInt_t ivar, Float_t value ); void SetVal ( UInt_t ivar, Float_t val );
void SetVariableArrangement( std::vector<UInt_t>* const m ) const; void SetTarget ( UInt_t itgt, Float_t value );
void SetSpectator ( UInt_t ivar, Float_t value );
static void ClearDynamicVariables(); void SetDoNotBoost () { fDoNotBoost = kTRUE; }
static void ClearDynamicVariables() {}
void CopyVarValues( const Event& other ); void CopyVarValues( const Event& other );
void Print ( std::ostream & o ) const; void Print ( std::ostream & o ) const;
private: private:
mutable std::vector<Float_t> fValues; // the event va mutable std::vector<Float_t> fValues; // the event values
lues mutable std::vector<Float_t*>* fValuesDynamic; // the event values
mutable std::vector<Float_t*>* fValuesDynamic; // the event val mutable std::vector<Float_t> fTargets; // target values for
ues regression
mutable std::vector<Float_t> fTargets; // target value mutable std::vector<Float_t> fSpectators; // "visisting" varia
s for regression bles not used in MVAs
mutable std::vector<Float_t> fSpectators; // "visisting"
variables which are never used for any calculation
mutable std::vector<UInt_t>* fVariableArrangement; // needed for M
ethodCategories, where we can train on other than the main variables
UInt_t fClass; // signal or backgro und type: signal=1, background=0 UInt_t fClass; // class number
Double_t fWeight; // event weight (pro duct of global and individual weights) Double_t fWeight; // event weight (pro duct of global and individual weights)
Double_t fBoostWeight; // internal weight t o be set by boosting algorithm Double_t fBoostWeight; // internal weight t o be set by boosting algorithm
Bool_t fDynamic; // is set when the d ynamic values are taken Bool_t fDynamic; // is set when the d ynamic values are taken
Bool_t fDoNotBoost; // mark event as no t to be boosted (used to compensate for events with negative event weights
}; };
} }
#endif #endif
 End of changes. 15 change blocks. 
37 lines changed or deleted 35 lines changed or added


 Factory.h   Factory.h 
// @(#)root/tmva $Id: Factory.h 37535 2010-12-10 22:40:29Z evt $ // @(#)root/tmva $Id: Factory.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka
i Voss i Voss, Eckhard von Toerne, Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Factory * * Class : Factory *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* This is the main MVA steering class: it creates (books) all MVA met hods, * * This is the main MVA steering class: it creates (books) all MVA met hods, *
* and guides them through the training, testing and evaluation phases . * * and guides them through the training, testing and evaluation phases . *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <stelzer@cern.ch> - DESY, Germany * * Joerg Stelzer <stelzer@cern.ch> - DESY, Germany *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_Factory #ifndef ROOT_TMVA_Factory
#define ROOT_TMVA_Factory #define ROOT_TMVA_Factory
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
 End of changes. 4 change blocks. 
4 lines changed or deleted 9 lines changed or added


 FastAllocString.h   FastAllocString.h 
skipping to change at line 55 skipping to change at line 55
// use by a G__FastAllocString object requesting a same of smaller size // use by a G__FastAllocString object requesting a same of smaller size
// buffer. This class is optimized for both speed and low memory // buffer. This class is optimized for both speed and low memory
// use despite the reservoir. // use despite the reservoir.
// //
class class
#ifndef __CINT__ #ifndef __CINT__
G__EXPORT G__EXPORT
#endif #endif
G__FastAllocString { G__FastAllocString {
public: public:
G__FastAllocString(int reqsize = 1024): fBuf(0), fCapacity(reqsize) { G__FastAllocString(size_t reqsize = 1024): fBuf(0), fCapacity(reqsize) {
// GetBuf takes as parameter the size in bytes // GetBuf takes as parameter the size in bytes
// and modify the parameter (fBucket) to hold the // and modify the parameter (fBucket) to hold the
// bucket number. // bucket number.
fBuf = GetBuf(fCapacity); fBuf = GetBuf(fCapacity);
} }
G__FastAllocString(const char* s); G__FastAllocString(const char* s);
G__FastAllocString(const G__FastAllocString&); G__FastAllocString(const G__FastAllocString&);
~G__FastAllocString(); ~G__FastAllocString();
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 FeldmanCousins.h   FeldmanCousins.h 
// @(#)root/roostats:$Id: FeldmanCousins.h 37403 2010-12-08 15:59:22Z monet a $ // @(#)root/roostats:$Id: FeldmanCousins.h 38599 2011-03-24 08:37:05Z monet a $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_FeldmanCousins #ifndef ROOSTATS_FeldmanCousins
skipping to change at line 74 skipping to change at line 74
// specify the parameters of interest in the interval // specify the parameters of interest in the interval
virtual void SetParameters(const RooArgSet& /*set*/) { virtual void SetParameters(const RooArgSet& /*set*/) {
cout << "DEPRECATED, use ModelConfig" << endl; cout << "DEPRECATED, use ModelConfig" << endl;
} }
// specify the nuisance parameters (eg. the rest of the parameters) // specify the nuisance parameters (eg. the rest of the parameters)
virtual void SetNuisanceParameters(const RooArgSet& /*set*/) { virtual void SetNuisanceParameters(const RooArgSet& /*set*/) {
cout << "DEPRECATED, use ModelConfig" << endl; cout << "DEPRECATED, use ModelConfig" << endl;
} }
// User-defined set of points to test
void SetParameterPointsToTest(RooAbsData& pointsToTest) {
fPointsToTest = &pointsToTest;
}
// User-defined set of points to test
void SetPOIPointsToTest(RooAbsData& poiToTest) {
fPOIToTest = &poiToTest;
}
// set the size of the test (rate of Type I error) ( Eg. 0.05 for a 9 5% Confidence Interval) // set the size of the test (rate of Type I error) ( Eg. 0.05 for a 9 5% Confidence Interval)
virtual void SetTestSize(Double_t size) {fSize = size;} virtual void SetTestSize(Double_t size) {fSize = size;}
// set the confidence level for the interval (eg. 0.95 for a 95% Conf idence Interval) // set the confidence level for the interval (eg. 0.95 for a 95% Conf idence Interval)
virtual void SetConfidenceLevel(Double_t cl) {fSize = 1.-cl;} virtual void SetConfidenceLevel(Double_t cl) {fSize = 1.-cl;}
virtual void SetModel(const ModelConfig &); virtual void SetModel(const ModelConfig &);
RooAbsData* GetPointsToScan() { RooAbsData* GetPointsToScan() {
if(!fPointsToTest) CreateParameterPoints(); if(!fPointsToTest) CreateParameterPoints();
return fPointsToTest; return fPointsToTest;
skipping to change at line 127 skipping to change at line 137
/* /*
RooAbsPdf * fPdf; // common PDF RooAbsPdf * fPdf; // common PDF
RooArgSet fPOI; // RooArgSet specifying parameters of interest for i nterval RooArgSet fPOI; // RooArgSet specifying parameters of interest for i nterval
RooArgSet fNuisParams;// RooArgSet specifying nuisance parameters fo r interval RooArgSet fNuisParams;// RooArgSet specifying nuisance parameters fo r interval
RooArgSet fObservables;// RooArgSet specifying nuisance parameters f or interval RooArgSet fObservables;// RooArgSet specifying nuisance parameters f or interval
*/ */
mutable ToyMCSampler* fTestStatSampler; // the test statistic sampler mutable ToyMCSampler* fTestStatSampler; // the test statistic sampler
mutable RooAbsData* fPointsToTest; // points to perform the construct ion mutable RooAbsData* fPointsToTest; // points to perform the construct ion
mutable RooAbsData* fPOIToTest; // value of POI points to perform the construction
mutable ConfidenceBelt* fConfBelt; mutable ConfidenceBelt* fConfBelt;
Bool_t fAdaptiveSampling; // controls use of adaptive sampling algori thm Bool_t fAdaptiveSampling; // controls use of adaptive sampling algori thm
Double_t fAdditionalNToysFactor; // give user ability to ask for more toys Double_t fAdditionalNToysFactor; // give user ability to ask for more toys
Int_t fNbins; // number of samples per variable Int_t fNbins; // number of samples per variable
Bool_t fFluctuateData; // tell ToyMCSampler to fluctuate number of e ntries in dataset Bool_t fFluctuateData; // tell ToyMCSampler to fluctuate number of e ntries in dataset
Bool_t fDoProfileConstruction; // instead of full construction over n uisance parametrs, do profile Bool_t fDoProfileConstruction; // instead of full construction over n uisance parametrs, do profile
Bool_t fSaveBeltToFile; // controls use if ConfidenceBelt should be s aved to a TFile Bool_t fSaveBeltToFile; // controls use if ConfidenceBelt should be s aved to a TFile
Bool_t fCreateBelt; // controls use if ConfidenceBelt should be saved to a TFile Bool_t fCreateBelt; // controls use if ConfidenceBelt should be saved to a TFile
protected: protected:
ClassDef(FeldmanCousins,1) // Interface for tools setting limits (p roducing confidence intervals) ClassDef(FeldmanCousins,2) // Interface for tools setting limits (p roducing confidence intervals)
}; };
} }
#endif #endif
 End of changes. 4 change blocks. 
2 lines changed or deleted 13 lines changed or added


 FunctionMinimum.h   FunctionMinimum.h 
// @(#)root/minuit2:$Id: FunctionMinimum.h 23654 2008-05-06 07:30:34Z monet a $ // @(#)root/minuit2:$Id: FunctionMinimum.h 38738 2011-04-05 13:54:46Z monet a $
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
* * * *
**********************************************************************/ **********************************************************************/
#ifndef ROOT_Minuit2_FunctionMinimum #ifndef ROOT_Minuit2_FunctionMinimum
#define ROOT_Minuit2_FunctionMinimum #define ROOT_Minuit2_FunctionMinimum
skipping to change at line 61 skipping to change at line 61
/// copy constructo /// copy constructo
FunctionMinimum(const FunctionMinimum& min) : fData(min.fData) {} FunctionMinimum(const FunctionMinimum& min) : fData(min.fData) {}
FunctionMinimum& operator=(const FunctionMinimum& min) { FunctionMinimum& operator=(const FunctionMinimum& min) {
fData = min.fData; fData = min.fData;
return *this; return *this;
} }
~FunctionMinimum() {} ~FunctionMinimum() {}
// why not // add new state
void Add(const MinimumState& state) {fData->Add(state);} void Add(const MinimumState& state) {fData->Add(state);}
// add new state
void Add(const MinimumState& state, MnAboveMaxEdm) {fData->Add(state,Bas
icFunctionMinimum::MnAboveMaxEdm());}
const MinimumSeed& Seed() const {return fData->Seed();} const MinimumSeed& Seed() const {return fData->Seed();}
const std::vector<ROOT::Minuit2::MinimumState>& States() const {return f Data->States();} const std::vector<ROOT::Minuit2::MinimumState>& States() const {return f Data->States();}
// user representation of state at Minimum // user representation of state at Minimum
const MnUserParameterState& UserState() const { const MnUserParameterState& UserState() const {
return fData->UserState(); return fData->UserState();
} }
const MnUserParameters& UserParameters() const { const MnUserParameters& UserParameters() const {
return fData->UserParameters(); return fData->UserParameters();
} }
 End of changes. 3 change blocks. 
2 lines changed or deleted 6 lines changed or added


 G__ci.h   G__ci.h 
skipping to change at line 1712 skipping to change at line 1712
public: public:
template <typename T> template <typename T>
G__func2void( T vfp ) : _tmp(0) { G__func2void( T vfp ) : _tmp(0) {
_tmp._write = ( funcptr_t )vfp; _tmp._write = ( funcptr_t )vfp;
} }
operator void* () const { operator void* () const {
return _tmp._read; return _tmp._read;
} }
}; };
#elif !__CINT__ #elif !defined(__CINT__)
typedef union { typedef union {
void *_read; void *_read;
void (*_write)(); void (*_write)();
} funcptr_and_voidptr; } funcptr_and_voidptr;
#endif /* __cplusplus && ! __CINT__*/ #endif /* __cplusplus && ! __CINT__*/
#endif /* __MAKECINT__ */ #endif /* __MAKECINT__ */
/************************************************************************** /**************************************************************************
* endif #ifndef G__MAKECINT * endif #ifndef G__MAKECINT
**************************************************************************/ **************************************************************************/
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 G__ci_fproto.h   G__ci_fproto.h 
skipping to change at line 80 skipping to change at line 80
*************************************************************************/ *************************************************************************/
/************************************************************************* /*************************************************************************
* interface method setup functions * interface method setup functions
*************************************************************************/ *************************************************************************/
G__DECL_API(25, int, G__defined_tagname, (G__CONST char* tagname,int noerro r)) G__DECL_API(25, int, G__defined_tagname, (G__CONST char* tagname,int noerro r))
G__DECL_API(26, struct G__Definedtemplateclass *,G__defined_templateclass, (G__CONST char *name)) G__DECL_API(26, struct G__Definedtemplateclass *,G__defined_templateclass, (G__CONST char *name))
G__DECL_API(27, int, G__deleteglobal, (void* p)) G__DECL_API(27, int, G__deleteglobal, (void* p))
G__DECL_API(269, int, G__resetglobalvar, (void* p))
G__DECL_API(28, int, G__deletevariable, (G__CONST char* varname)) G__DECL_API(28, int, G__deletevariable, (G__CONST char* varname))
G__DECL_API(29, int, G__optimizemode, (int optimizemode)) G__DECL_API(29, int, G__optimizemode, (int optimizemode))
G__DECL_API(30, int, G__getoptimizemode, (void)) G__DECL_API(30, int, G__getoptimizemode, (void))
G__DECL_API(31, G__value, G__string2type_body, (G__CONST char *typenamin,in t noerror)) G__DECL_API(31, G__value, G__string2type_body, (G__CONST char *typenamin,in t noerror))
G__DECL_API(32, G__value, G__string2type, (G__CONST char *typenamin)) G__DECL_API(32, G__value, G__string2type, (G__CONST char *typenamin))
G__DECL_API(33, void*, G__findsym, (G__CONST char *fname)) G__DECL_API(33, void*, G__findsym, (G__CONST char *fname))
G__DECL_API(34, int, G__IsInMacro, (void)) G__DECL_API(34, int, G__IsInMacro, (void))
G__DECL_API(35, void, G__storerewindposition, (void)) G__DECL_API(35, void, G__storerewindposition, (void))
G__DECL_API(36, void, G__rewinddictionary, (void)) G__DECL_API(36, void, G__rewinddictionary, (void))
skipping to change at line 158 skipping to change at line 159
G__DECL_API(65, int, G__gettempfilenum, (void)) G__DECL_API(65, int, G__gettempfilenum, (void))
G__DECL_API(66, void, G__LockCpp, (void)) G__DECL_API(66, void, G__LockCpp, (void))
G__DECL_API(67, void, G__set_sym_underscore, (int x)) G__DECL_API(67, void, G__set_sym_underscore, (int x))
G__DECL_API(68, int, G__get_sym_underscore, (void)) G__DECL_API(68, int, G__get_sym_underscore, (void))
G__DECL_API(69, void*, G__get_errmsgcallback, (void)) G__DECL_API(69, void*, G__get_errmsgcallback, (void))
G__DECL_API(70, void, G__mask_errmsg, (char* msg)) G__DECL_API(70, void, G__mask_errmsg, (char* msg))
G__DECL_API(71, int, G__main, (int argc,char **argv)) G__DECL_API(71, int, G__main, (int argc,char **argv))
G__DECL_API(72, void, G__setothermain, (int othermain)) G__DECL_API(72, void, G__setothermain, (int othermain))
G__DECL_API(73, void, G__exit, (int rtn)) G__DECL_API(73, void, G__exit, (int rtn))
G__DECL_API(74, int, G__getnumbaseclass, (int tagnum)) G__DECL_API(74, int, G__getnumbaseclass, (int tagnum))
G__DECL_API(75, void, G__setnewtype, (int globalcomp,G__CONST char* comment ,int nindex)) G__DECL_API(75, void, G__setnewtype, (char globalcomp,G__CONST char* commen t,int nindex))
G__DECL_API(76, void, G__setnewtypeindex, (int j,int type_index)) G__DECL_API(76, void, G__setnewtypeindex, (int j,int type_index))
G__DECL_API(77, void, G__resetplocal, (void)) G__DECL_API(77, void, G__resetplocal, (void))
G__DECL_API(78, long, G__getgvp, (void)) G__DECL_API(78, long, G__getgvp, (void))
G__DECL_API(79, void, G__resetglobalenv, (void)) G__DECL_API(79, void, G__resetglobalenv, (void))
G__DECL_API(80, void, G__lastifuncposition, (void)) G__DECL_API(80, void, G__lastifuncposition, (void))
G__DECL_API(81, void, G__resetifuncposition, (void)) G__DECL_API(81, void, G__resetifuncposition, (void))
G__DECL_API(82, void, G__setnull, (G__value* result)) G__DECL_API(82, void, G__setnull, (G__value* result))
G__DECL_API(83, long, G__getstructoffset, (void)) G__DECL_API(83, long, G__getstructoffset, (void))
G__DECL_API(84, int, G__getaryconstruct, (void)) G__DECL_API(84, int, G__getaryconstruct, (void))
G__DECL_API(85, long, G__gettempbufpointer, (void)) G__DECL_API(85, long, G__gettempbufpointer, (void))
skipping to change at line 357 skipping to change at line 358
,void *userparam)) ,void *userparam))
#else #else
G__DECL_API(232, int, G__usermemfunc_setup, (char *funcname,int hash,int (* funcp)(),int type, G__DECL_API(232, int, G__usermemfunc_setup, (char *funcname,int hash,int (* funcp)(),int type,
int tagnum,int typenum,int reftype, int tagnum,int typenum,int reftype,
int para_nu,int ansi,int accessin,int isconst, int para_nu,int ansi,int accessin,int isconst,
char *paras, char *comment char *paras, char *comment
,void *userparam)) ,void *userparam))
#endif #endif
G__DECL_API(233, char, *G__fulltagname, (int tagnum,int mask_dollar)) G__DECL_API(233, char, *G__fulltagname, (int tagnum,int mask_dollar))
G__DECL_API(234, void, G__loadlonglong, (int* ptag,int* ptype,int which)) G__DECL_API(234, void, G__loadlonglong, (int* ptag,int* ptype,int which))
G__DECL_API(235, int, G__isanybase, (int basetagnum,int derivedtagnum,long pobject)) G__DECL_API(235, long, G__isanybase, (int basetagnum,int derivedtagnum,long pobject))
G__DECL_API(236, int, G__pop_tempobject, (void)) G__DECL_API(236, int, G__pop_tempobject, (void))
G__DECL_API(263, int, G__pop_tempobject_nodel, (void)) G__DECL_API(263, int, G__pop_tempobject_nodel, (void))
G__DECL_API(237, const char*, G__stripfilename, (const char* filename)) G__DECL_API(237, const char*, G__stripfilename, (const char* filename))
/*********************************************************************** /***********************************************************************
* Native long long support * Native long long support
***********************************************************************/ ***********************************************************************/
G__DECL_API(238, G__int64, G__expr_strtoll, (const char *nptr,char **endptr , register int base)) G__DECL_API(238, G__int64, G__expr_strtoll, (const char *nptr,char **endptr , register int base))
G__DECL_API(239, G__uint64, G__expr_strtoull, (const char *nptr, char **end ptr, register int base)) G__DECL_API(239, G__uint64, G__expr_strtoull, (const char *nptr, char **end ptr, register int base))
skipping to change at line 404 skipping to change at line 405
G__DECL_API(266, int, G__memfunc_setup2, (G__CONST char *funcname,int hash, G__CONST char *mangled_name, \ G__DECL_API(266, int, G__memfunc_setup2, (G__CONST char *funcname,int hash, G__CONST char *mangled_name, \
G__InterfaceMethod funcp,int type ,int tagnum,int typenum, \ G__InterfaceMethod funcp,int type ,int tagnum,int typenum, \
int reftype,int para_nu,int ansi, int access,int isconst, \ int reftype,int para_nu,int ansi, int access,int isconst, \
G__CONST char *paras,G__CONST cha r *comment)) G__CONST char *paras,G__CONST cha r *comment))
#endif /* G__TRUEP2F */ #endif /* G__TRUEP2F */
G__DECL_API(267, int, G__memfunc_para_setup, (int ifn,int type,int tagnum,i nt typenum,int reftype, \ G__DECL_API(267, int, G__memfunc_para_setup, (int ifn,int type,int tagnum,i nt typenum,int reftype, \
G__value *para_default,char * para_def,char *para_name)) G__value *para_default,char * para_def,char *para_name))
G__DECL_API(268, struct G__ifunc_table_internal*, G__get_ifunc_internal, (s truct G__ifunc_table* iref)) G__DECL_API(268, struct G__ifunc_table_internal*, G__get_ifunc_internal, (s truct G__ifunc_table* iref))
#define G__NUMBER_OF_API_FUNCTIONS 269 #define G__NUMBER_OF_API_FUNCTIONS 270
G__DUMMYTOCHECKFORDUPLICATES(G__NUMBER_OF_API_FUNCTIONS) G__DUMMYTOCHECKFORDUPLICATES(G__NUMBER_OF_API_FUNCTIONS)
 End of changes. 4 change blocks. 
3 lines changed or deleted 4 lines changed or added


 HelperOps.h   HelperOps.h 
// @(#)root/smatrix:$Id: HelperOps.h 34742 2010-08-06 09:25:40Z moneta $ // @(#)root/smatrix:$Id: HelperOps.h 38791 2011-04-11 09:32:49Z moneta $
// Authors: J. Palacios 2006 // Authors: J. Palacios 2006
#ifndef ROOT_Math_HelperOps #ifndef ROOT_Math_HelperOps
#define ROOT_Math_HelperOps 1 #define ROOT_Math_HelperOps 1
// Include files // Include files
/** @class HelperOps HelperOps.h Math/HelperOps.h /** @class HelperOps HelperOps.h Math/HelperOps.h
* *
* *
skipping to change at line 541 skipping to change at line 541
if (check) assert( begin + R::kSize == end); if (check) assert( begin + R::kSize == end);
// copy directly the elements // copy directly the elements
std::copy(begin, end, lhs.fRep.Array() ); std::copy(begin, end, lhs.fRep.Array() );
} }
} }
}; // struct AssignItr }; // struct AssignItr
/** /**
Specialized structure for assignment to a symmetrix matrix from itera tor. Specialized structure for assignment to a symmetrix matrix from itera tor.
Optionally a check isdone that iterator size Optionally a check is done that iterator size
is the same as the matrix size is the same as the matrix size
*/ */
template <class T, unsigned int D1, unsigned int D2> template <class T, unsigned int D1, unsigned int D2>
struct AssignItr<T, D1, D2, MatRepSym<T,D1> > { struct AssignItr<T, D1, D2, MatRepSym<T,D1> > {
template<class Iterator> template<class Iterator>
static void Evaluate(SMatrix<T,D1,D2,MatRepSym<T,D1> >& lhs, Iterator begin, Iterator end, bool , bool lower, bool check = true) { static void Evaluate(SMatrix<T,D1,D2,MatRepSym<T,D1> >& lhs, Iterator begin, Iterator end, bool , bool lower, bool check = true) {
if (lower) { if (lower) {
if (check) { if (check) {
const int size = MatRepSym<T,D1>::kSize; assert(begin+ static_cast<const int>( MatRepSym<T,D1>::kSize
assert( begin + size == end); ) == end);
} }
std::copy(begin, end, lhs.fRep.Array() ); std::copy(begin, end, lhs.fRep.Array() );
} }
else { else {
Iterator itr = begin; Iterator itr = begin;
for (unsigned int i = 0; i < D1; ++i) for (unsigned int i = 0; i < D1; ++i)
for (unsigned int j = i; j <D2; ++j) { for (unsigned int j = i; j <D2; ++j) {
if (itr != end) if (itr != end)
lhs(i,j) = *itr++; lhs(i,j) = *itr++;
else else
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 Hepevt.h   Hepevt.h 
/* @(#)root/eg:$Id: Hepevt.h 30815 2009-10-20 13:49:22Z rdm $ */ /* @(#)root/eg:$Id: Hepevt.h 38170 2011-02-21 11:18:32Z rdm $ */
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_Hepevt #ifndef ROOT_Hepevt
skipping to change at line 25 skipping to change at line 25
#include "Rtypes.h" #include "Rtypes.h"
#endif #endif
extern "C" { extern "C" {
#ifndef __CFORTRAN_LOADED #ifndef __CFORTRAN_LOADED
#include "cfortran.h" #include "cfortran.h"
#endif #endif
typedef struct { typedef struct {
Int_t nevhep; Int_t nevhep;
Int_t nhep; Int_t nhep;
Int_t isthep[4000]; Int_t isthep[4000];
Int_t idhep[4000]; Int_t idhep[4000];
Int_t jmohep[4000][2]; Int_t jmohep[4000][2];
Int_t jdahep[4000][2]; Int_t jdahep[4000][2];
Double_t phep[4000][5]; Double_t phep[4000][5];
Double_t vhep[4000][4]; Double_t vhep[4000][4];
} HEPEVT_DEF; } HEPEVT_DEF;
#define HEPEVT COMMON_BLOCK(HEPEVT,hepevt) #define HEPEVT COMMON_BLOCK(HEPEVT,hepevt)
COMMON_BLOCK_DEF(HEPEVT_DEF,HEPEVT); COMMON_BLOCK_DEF(HEPEVT_DEF,HEPEVT);
HEPEVT_DEF HEPEVT; HEPEVT_DEF HEPEVT;
} }
 End of changes. 2 change blocks. 
9 lines changed or deleted 9 lines changed or added


 HypoTestResult.h   HypoTestResult.h 
// @(#)root/roostats:$Id: HypoTestResult.h 36602 2010-11-11 16:52:13Z monet a $ // @(#)root/roostats:$Id: HypoTestResult.h 38933 2011-04-19 20:15:51Z monet a $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke, S ven Kreiss // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke, S ven Kreiss
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_HypoTestResult #ifndef ROOSTATS_HypoTestResult
skipping to change at line 118 skipping to change at line 118
cout << " - CL_b: " << CLb() << " +/- " << CLbError() << std::e ndl; cout << " - CL_b: " << CLb() << " +/- " << CLbError() << std::e ndl;
if(HasTestStatisticData() && fAltDistr) if(HasTestStatisticData() && fAltDistr)
cout << " - CL_s+b: " << CLsplusb() << " +/- " << CLsplusbError () << std::endl; cout << " - CL_s+b: " << CLsplusb() << " +/- " << CLsplusbError () << std::endl;
if(HasTestStatisticData() && fAltDistr && fNullDistr) if(HasTestStatisticData() && fAltDistr && fNullDistr)
cout << " - CL_s: " << CLs() << " +/- " << CLsError() << std:: endl; cout << " - CL_s: " << CLs() << " +/- " << CLsError() << std:: endl;
return; return;
} }
private: private:
void UpdatePValue(const SamplingDistribution* distr, Double_t *pvalue , Bool_t pIsRightTail); void UpdatePValue(const SamplingDistribution* distr, Double_t &pvalue , Double_t &perror, Bool_t pIsRightTail);
protected: protected:
mutable Double_t fNullPValue; // p-value for the null hypothesis (sma ll number means disfavored) mutable Double_t fNullPValue; // p-value for the null hypothesis (sma ll number means disfavored)
mutable Double_t fAlternatePValue; // p-value for the alternate hypot hesis (small number means disfavored) mutable Double_t fAlternatePValue; // p-value for the alternate hypot hesis (small number means disfavored)
mutable Double_t fNullPValueError; // error of p-value for the null h
ypothesis (small number means disfavored)
mutable Double_t fAlternatePValueError; // error of p-value for the a
lternate hypothesis (small number means disfavored)
Double_t fTestStatisticData; // result of the test statistic evaluate d on data Double_t fTestStatisticData; // result of the test statistic evaluate d on data
SamplingDistribution *fNullDistr; SamplingDistribution *fNullDistr;
SamplingDistribution *fAltDistr; SamplingDistribution *fAltDistr;
Bool_t fPValueIsRightTail; Bool_t fPValueIsRightTail;
ClassDef(HypoTestResult,1) // Base class to represent results of a h ypothesis test ClassDef(HypoTestResult,1) // Base class to represent results of a h ypothesis test
}; };
} }
 End of changes. 3 change blocks. 
2 lines changed or deleted 6 lines changed or added


 Interval.h   Interval.h 
// @(#)root/tmva $Id: Interval.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: Interval.h 38943 2011-04-20 08:03:25Z evt $
// Author: Peter Speckmayer // Author: Peter Speckmayer
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Interval * * Class : Interval *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Generic range definition (used, eg, in genetic algorithm) * * Generic range definition (used, eg, in genetic algorithm) *
skipping to change at line 87 skipping to change at line 87
Double_t GetRndm( TRandom3& ) const; Double_t GetRndm( TRandom3& ) const;
Double_t GetElement( Int_t position ) const; Double_t GetElement( Int_t position ) const;
Double_t GetStepSize() const; Double_t GetStepSize() const;
void SetMax( Double_t m ) { fMax = m; } void SetMax( Double_t m ) { fMax = m; }
void SetMin( Double_t m ) { fMin = m; } void SetMin( Double_t m ) { fMin = m; }
private: private:
Double_t fMin, fMax; // the constraints of the Interval Double_t fMin, fMax; // the constraints of the Interval
Int_t fNbins; // when >0 : number of bins (discrete interva l); when =0 continuous interval Int_t fNbins; // when >0 : number of bins (discrete interva l); when ==0 continuous interval
static MsgLogger* fgLogger; // message logger static MsgLogger* fgLogger; // message logger
MsgLogger& Log() const { return *fgLogger; } MsgLogger& Log() const { return *fgLogger; }
ClassDef(Interval,0) // Interval definition, continous and discret e ClassDef(Interval,0) // Interval definition, continous and discret e
}; };
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 MethodANNBase.h   MethodANNBase.h 
// @(#)root/tmva $Id: MethodANNBase.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodANNBase.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Matt Jachowski // Author: Andreas Hoecker, Peter Speckmayer, Matt Jachowski, Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodANNBase * * Class : MethodANNBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Artificial neural network base class for the discrimination of sign al * * Artificial neural network base class for the discrimination of sign al *
* from background. * * from background. *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Matt Jachowski <jachowski@stanford.edu> - Stanford University, US A * * Matt Jachowski <jachowski@stanford.edu> - Stanford University, US A *
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany *
* * * *
* Small changes (regression): * * Small changes (regression): *
* Krzysztof Danielowski <danielow@cern.ch> - IFJ PAN & AGH, Poland * * Krzysztof Danielowski <danielow@cern.ch> - IFJ PAN & AGH, Poland *
* Kamil Kraszewski <kalq@cern.ch> - IFJ PAN & UJ , Poland * * Kamil Kraszewski <kalq@cern.ch> - IFJ PAN & UJ , Poland *
* Maciej Kruk <mkruk@cern.ch> - IFJ PAN & AGH, Poland * * Maciej Kruk <mkruk@cern.ch> - IFJ PAN & AGH, Poland *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodANNBase #ifndef ROOT_TMVA_MethodANNBase
#define ROOT_TMVA_MethodANNBase #define ROOT_TMVA_MethodANNBase
 End of changes. 3 change blocks. 
3 lines changed or deleted 4 lines changed or added


 MethodBDT.h   MethodBDT.h 
// @(#)root/tmva $Id: MethodBDT.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: MethodBDT.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Jan Therha
ag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodBDT (Boosted Decision Trees) * * Class : MethodBDT (Boosted Decision Trees) *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Analysis of Boosted Decision Trees * * Analysis of Boosted Decision Trees *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* Doug Schouten <dschoute@sfu.ca> - Simon Fraser U., Canada * * Doug Schouten <dschoute@sfu.ca> - Simon Fraser U., Canada *
* Jan Therhaag <jan.therhaag@cern.ch> - U. of Bonn, Germany * * Jan Therhaag <jan.therhaag@cern.ch> - U. of Bonn, Germany *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodBDT #ifndef ROOT_TMVA_MethodBDT
#define ROOT_TMVA_MethodBDT #define ROOT_TMVA_MethodBDT
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 112 skipping to change at line 113
void ReadWeightsFromXML(void* parent); void ReadWeightsFromXML(void* parent);
// write method specific histos to target file // write method specific histos to target file
void WriteMonitoringHistosToFile( void ) const; void WriteMonitoringHistosToFile( void ) const;
// calculate the MVA value // calculate the MVA value
Double_t GetMvaValue( Double_t* err = 0, Double_t* errUpper = 0); Double_t GetMvaValue( Double_t* err = 0, Double_t* errUpper = 0);
private: private:
Double_t GetMvaValue( Double_t* err, Double_t* errUpper, UInt_t useNT rees ); Double_t GetMvaValue( Double_t* err, Double_t* errUpper, UInt_t useNT rees );
Double_t PrivateGetMvaValue( TMVA::Event& ev, Double_t* err=0, Double
_t* errUpper=0, UInt_t useNTrees=0 );
void BoostMonitor(Int_t iTree);
public: public:
const std::vector<Float_t>& GetMulticlassValues(); const std::vector<Float_t>& GetMulticlassValues();
// regression response // regression response
const std::vector<Float_t>& GetRegressionValues(); const std::vector<Float_t>& GetRegressionValues();
// apply the boost algorithm to a tree in the collection // apply the boost algorithm to a tree in the collection
Double_t Boost( std::vector<TMVA::Event*>, DecisionTree *dt, Int_t iT ree, UInt_t cls = 0); Double_t Boost( std::vector<TMVA::Event*>, DecisionTree *dt, Int_t iT ree, UInt_t cls = 0);
skipping to change at line 159 skipping to change at line 162
void MakeClassSpecific( std::ostream&, const TString& ) const; void MakeClassSpecific( std::ostream&, const TString& ) const;
// header and auxiliary classes // header and auxiliary classes
void MakeClassSpecificHeader( std::ostream&, const TString& ) const; void MakeClassSpecificHeader( std::ostream&, const TString& ) const;
void MakeClassInstantiateNode( DecisionTreeNode *n, std::ostream& fou t, void MakeClassInstantiateNode( DecisionTreeNode *n, std::ostream& fou t,
const TString& className ) const; const TString& className ) const;
void GetHelpMessage() const; void GetHelpMessage() const;
virtual Bool_t IsSignalLike() { return GetMvaValue() > 0;}
protected: protected:
void DeclareCompatibilityOptions(); void DeclareCompatibilityOptions();
private: private:
// Init used in the various constructors // Init used in the various constructors
void Init( void ); void Init( void );
void PreProcessNegativeEventWeights();
// boosting algorithm (adaptive boosting) // boosting algorithm (adaptive boosting)
Double_t AdaBoost( std::vector<TMVA::Event*>, DecisionTree *dt ); Double_t AdaBoost( std::vector<TMVA::Event*>, DecisionTree *dt );
// boosting as a random re-weighting // boosting as a random re-weighting
Double_t Bagging( std::vector<TMVA::Event*>, Int_t iTree ); Double_t Bagging( std::vector<TMVA::Event*>, Int_t iTree );
// boosting special for regression // boosting special for regression
Double_t RegBoost( std::vector<TMVA::Event*>, DecisionTree *dt ); Double_t RegBoost( std::vector<TMVA::Event*>, DecisionTree *dt );
// adaboost adapted to regression // adaboost adapted to regression
skipping to change at line 235 skipping to change at line 239
TString fPruneMethodS; // prune method op tion String TString fPruneMethodS; // prune method op tion String
Double_t fPruneStrength; // a parameter to set the "amount" of pruning..needs to be adjusted Double_t fPruneStrength; // a parameter to set the "amount" of pruning..needs to be adjusted
Bool_t fPruneBeforeBoost;// flag to prune b efore boosting Bool_t fPruneBeforeBoost;// flag to prune b efore boosting
Double_t fFValidationEvents; // fraction o f events to use for pruning Double_t fFValidationEvents; // fraction o f events to use for pruning
Bool_t fAutomatic; // use user given prune strength or automatically determined one using a validation sample Bool_t fAutomatic; // use user given prune strength or automatically determined one using a validation sample
Bool_t fRandomisedTrees; // choose a random subset of possible cut variables at each node during training Bool_t fRandomisedTrees; // choose a random subset of possible cut variables at each node during training
UInt_t fUseNvars; // the number of v ariables used in the randomised tree splitting UInt_t fUseNvars; // the number of v ariables used in the randomised tree splitting
Bool_t fUsePoissonNvars; // use "fUseNvars" not as fixed number but as mean of a possion distr. in each split Bool_t fUsePoissonNvars; // use "fUseNvars" not as fixed number but as mean of a possion distr. in each split
UInt_t fUseNTrainEvents; // number of rando mly picked training events used in randomised (and bagged) trees UInt_t fUseNTrainEvents; // number of rando mly picked training events used in randomised (and bagged) trees
Double_t fSampleSizeFraction; // relative siz Double_t fSampleSizeFraction; // relative
e of bagged event sample to original sample size size of bagged event sample to original sample size
TString fNegWeightTreatment; // variable
that holds the option of how to treat negative event weights in training
Bool_t fNoNegWeightsInTraining; // ignore n egative event weights in the training Bool_t fNoNegWeightsInTraining; // ignore n egative event weights in the training
Bool_t fInverseBoostNegWeights; // boost ev
. with neg. weights with 1/boostweight rathre than boostweight
Bool_t fPairNegWeightsGlobal; // pair ev.
with neg. and pos. weights in traning sample and "annihilate" them
Bool_t fPairNegWeightsInNode; // randomly
pair miscl. ev. with neg. and pos. weights in node and don't boost them
Bool_t fTrainWithNegWeights; // yes there a
re negative event weights and we don't ignore them
Bool_t fDoBoostMonitor; //create control pl
ot with ROC integral vs tree number
//some histograms for monitoring //some histograms for monitoring
TTree* fMonitorNtuple; // monitoring ntup le TTree* fMonitorNtuple; // monitoring ntup le
Int_t fITree; // ntuple var: ith tree Int_t fITree; // ntuple var: ith tree
Double_t fBoostWeight; // ntuple var: boo st weight Double_t fBoostWeight; // ntuple var: boo st weight
Double_t fErrorFraction; // ntuple var: mis classification error fraction Double_t fErrorFraction; // ntuple var: mis classification error fraction
std::vector<Double_t> fVariableImportance; // the relative importance of the different variables std::vector<Double_t> fVariableImportance; // the relative importance of the different variables
// debugging flags // debugging flags
 End of changes. 8 change blocks. 
6 lines changed or deleted 24 lines changed or added


 MethodBase.h   MethodBase.h 
// @(#)root/tmva $Id: MethodBase.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodBase.h 38719 2011-04-04 12:22:28Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka
i Voss i Voss, Eckhard von Toerne, Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodBase * * Class : MethodBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Virtual base class for all MVA method * * Virtual base class for all MVA method *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* LAPP, Annecy, France * * U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodBase #ifndef ROOT_TMVA_MethodBase
#define ROOT_TMVA_MethodBase #define ROOT_TMVA_MethodBase
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 77 skipping to change at line 79
#include "TMVA/TransformationHandler.h" #include "TMVA/TransformationHandler.h"
#endif #endif
#ifndef ROOT_TMVA_OptimizeConfigParameters #ifndef ROOT_TMVA_OptimizeConfigParameters
#include "TMVA/OptimizeConfigParameters.h" #include "TMVA/OptimizeConfigParameters.h"
#endif #endif
class TGraph; class TGraph;
class TTree; class TTree;
class TDirectory; class TDirectory;
class TSpline; class TSpline;
class TH1F;
class TH1D;
namespace TMVA { namespace TMVA {
class Ranking; class Ranking;
class PDF; class PDF;
class TSpline1; class TSpline1;
class MethodCuts; class MethodCuts;
class MethodBoost; class MethodBoost;
class DataSetInfo; class DataSetInfo;
class MethodBase : virtual public IMethod, public Configurable { class MethodBase : virtual public IMethod, public Configurable {
friend class Factory;
public: public:
enum EWeightFileType { kROOT=0, kTEXT }; enum EWeightFileType { kROOT=0, kTEXT };
// default constructur // default constructur
MethodBase( const TString& jobName, MethodBase( const TString& jobName,
Types::EMVA methodType, Types::EMVA methodType,
const TString& methodTitle, const TString& methodTitle,
DataSetInfo& dsi, DataSetInfo& dsi,
const TString& theOption = "", const TString& theOption = "",
skipping to change at line 272 skipping to change at line 278
// variables (and private menber functions) for the Evaluation: // variables (and private menber functions) for the Evaluation:
// get the effiency. It fills a histogram for efficiency/vs/bkg // get the effiency. It fills a histogram for efficiency/vs/bkg
// and returns the one value fo the efficiency demanded for // and returns the one value fo the efficiency demanded for
// in the TString argument. (Watch the string format) // in the TString argument. (Watch the string format)
virtual Double_t GetEfficiency( const TString&, Types::ETreeType, Dou ble_t& err ); virtual Double_t GetEfficiency( const TString&, Types::ETreeType, Dou ble_t& err );
virtual Double_t GetTrainingEfficiency(const TString& ); virtual Double_t GetTrainingEfficiency(const TString& );
virtual std::vector<Float_t> GetMulticlassEfficiency( std::vector<std ::vector<Float_t> >& purity ); virtual std::vector<Float_t> GetMulticlassEfficiency( std::vector<std ::vector<Float_t> >& purity );
virtual std::vector<Float_t> GetMulticlassTrainingEfficiency(std::vec tor<std::vector<Float_t> >& purity ); virtual std::vector<Float_t> GetMulticlassTrainingEfficiency(std::vec tor<std::vector<Float_t> >& purity );
virtual Double_t GetSignificance() const; virtual Double_t GetSignificance() const;
virtual Double_t GetROCIntegral(TH1F *histS, TH1F *histB) const;
// virtual Double_t GetROCIntegral(TH1D *histS, TH1D *histB) con
st;
virtual Double_t GetROCIntegral(PDF *pdfS=0, PDF *pdfB=0) const; virtual Double_t GetROCIntegral(PDF *pdfS=0, PDF *pdfB=0) const;
virtual Double_t GetMaximumSignificance( Double_t SignalEvents, Doubl e_t BackgroundEvents, virtual Double_t GetMaximumSignificance( Double_t SignalEvents, Doubl e_t BackgroundEvents,
Double_t& optimal_significan ce_value ) const; Double_t& optimal_significan ce_value ) const;
virtual Double_t GetSeparation( TH1*, TH1* ) const; virtual Double_t GetSeparation( TH1*, TH1* ) const;
virtual Double_t GetSeparation( PDF* pdfS = 0, PDF* pdfB = 0 ) const; virtual Double_t GetSeparation( PDF* pdfS = 0, PDF* pdfB = 0 ) const;
virtual void GetRegressionDeviation(UInt_t tgtNum, Types::ETreeType t ype, Double_t& stddev,Double_t& stddev90Percent ) const; virtual void GetRegressionDeviation(UInt_t tgtNum, Types::ETreeType t ype, Double_t& stddev,Double_t& stddev90Percent ) const;
// ---------- public accessors -------------------------------------- --------- // ---------- public accessors -------------------------------------- ---------
// classifier naming (a lot of names ... aren't they ;-) // classifier naming (a lot of names ... aren't they ;-)
skipping to change at line 313 skipping to change at line 321
const TString& GetInputTitle( Int_t i ) const { return DataInfo().G etVariableInfo(i).GetTitle(); } const TString& GetInputTitle( Int_t i ) const { return DataInfo().G etVariableInfo(i).GetTitle(); }
// normalisation and limit accessors // normalisation and limit accessors
Double_t GetMean( Int_t ivar ) const { return GetTransformati onHandler().GetMean(ivar); } Double_t GetMean( Int_t ivar ) const { return GetTransformati onHandler().GetMean(ivar); }
Double_t GetRMS ( Int_t ivar ) const { return GetTransformati onHandler().GetRMS(ivar); } Double_t GetRMS ( Int_t ivar ) const { return GetTransformati onHandler().GetRMS(ivar); }
Double_t GetXmin( Int_t ivar ) const { return GetTransformati onHandler().GetMin(ivar); } Double_t GetXmin( Int_t ivar ) const { return GetTransformati onHandler().GetMin(ivar); }
Double_t GetXmax( Int_t ivar ) const { return GetTransformati onHandler().GetMax(ivar); } Double_t GetXmax( Int_t ivar ) const { return GetTransformati onHandler().GetMax(ivar); }
// sets the minimum requirement on the MVA output to declare an event signal-like // sets the minimum requirement on the MVA output to declare an event signal-like
Double_t GetSignalReferenceCut() const { return fSignalRefere nceCut; } Double_t GetSignalReferenceCut() const { return fSignalRefere nceCut; }
Double_t GetSignalReferenceCutOrientation() const { return fS ignalReferenceCutOrientation; }
// sets the minimum requirement on the MVA output to declare an event signal-like // sets the minimum requirement on the MVA output to declare an event signal-like
void SetSignalReferenceCut( Double_t cut ) { fSignalRefer enceCut = cut; } void SetSignalReferenceCut( Double_t cut ) { fSignalRefer enceCut = cut; }
void SetSignalReferenceCutOrientation( Double_t cutOrient ation ) { fSignalReferenceCutOrientation = cutOrientation; }
// pointers to ROOT directories // pointers to ROOT directories
TDirectory* BaseDir() const; TDirectory* BaseDir() const;
TDirectory* MethodBaseDir() const; TDirectory* MethodBaseDir() const;
void SetMethodDir ( TDirectory* methodDir ) { fBaseDir = fMethodBaseDir = methodDir; } void SetMethodDir ( TDirectory* methodDir ) { fBaseDir = fMethodBaseDir = methodDir; }
void SetBaseDir( TDirectory* methodDir ){ fBaseDir = meth odDir; } void SetBaseDir( TDirectory* methodDir ){ fBaseDir = meth odDir; }
void SetMethodBaseDir( TDirectory* methodDir ){ fMethodBa seDir = methodDir; } void SetMethodBaseDir( TDirectory* methodDir ){ fMethodBa seDir = methodDir; }
// the TMVA version can be obtained and checked using // the TMVA version can be obtained and checked using
// if (GetTrainingTMVAVersionCode()>TMVA_VERSION(3,7,2)) {...} // if (GetTrainingTMVAVersionCode()>TMVA_VERSION(3,7,2)) {...}
// or // or
// if (GetTrainingROOTVersionCode()>ROOT_VERSION(5,15,5)) {...} // if (GetTrainingROOTVersionCode()>ROOT_VERSION(5,15,5)) {...}
UInt_t GetTrainingTMVAVersionCode() const { return fTMVAT rainingVersion; } UInt_t GetTrainingTMVAVersionCode() const { return fTMVAT rainingVersion; }
UInt_t GetTrainingROOTVersionCode() const { return fROOTT rainingVersion; } UInt_t GetTrainingROOTVersionCode() const { return fROOTT rainingVersion; }
TString GetTrainingTMVAVersionString() const; TString GetTrainingTMVAVersionString() const;
TString GetTrainingROOTVersionString() const; TString GetTrainingROOTVersionString() const;
TransformationHandler& GetTransformationHandler() { return fTr TransformationHandler& GetTransformationHandler(Bool_t takeRer
ansformation; } outedIfAvailable=true)
const TransformationHandler& GetTransformationHandler() const { retu {
rn fTransformation; } if(fTransformationPointer && takeReroutedIfAvailable) return *f
TransformationPointer; else return fTransformation;
}
const TransformationHandler& GetTransformationHandler(Bool_t takeRer
outedIfAvailable=true) const
{
if(fTransformationPointer && takeReroutedIfAvailable) return *f
TransformationPointer; else return fTransformation;
}
void RerouteTransformationHandler (TransformationHandler*
fTargetTransformation) { fTransformationPointer=fTargetTransformation; }
// ---------- event accessors --------------------------------------- --------- // ---------- event accessors --------------------------------------- ---------
// returns reference to data set // returns reference to data set
DataSetInfo& DataInfo() const { return fDataSetInfo; } DataSetInfo& DataInfo() const { return fDataSetInfo; }
mutable const Event* fTmpEvent; //! temporary event when testing on a different DataSet than the own one mutable const Event* fTmpEvent; //! temporary event when testing on a different DataSet than the own one
// event reference and update // event reference and update
UInt_t GetNEvents () const { return Data()->GetNEvents (); } UInt_t GetNEvents () const { return Data()->GetNEvents (); }
skipping to change at line 358 skipping to change at line 376
const Event* GetEvent ( Long64_t ievt , Types::ETreeType t ype ) const; const Event* GetEvent ( Long64_t ievt , Types::ETreeType t ype ) const;
const Event* GetTrainingEvent( Long64_t ievt ) const; const Event* GetTrainingEvent( Long64_t ievt ) const;
const Event* GetTestingEvent ( Long64_t ievt ) const; const Event* GetTestingEvent ( Long64_t ievt ) const;
const std::vector<TMVA::Event*>& GetEventCollection( Types::ETreeType type ); const std::vector<TMVA::Event*>& GetEventCollection( Types::ETreeType type );
// ---------- public auxiliary methods ------------------------------ --------- // ---------- public auxiliary methods ------------------------------ ---------
// this method is used to decide whether an event is signal- or backg round-like // this method is used to decide whether an event is signal- or backg round-like
// the reference cut "xC" is taken to be where // the reference cut "xC" is taken to be where
// Int_[-oo,xC] { PDF_S(x) dx } = Int_[xC,+oo] { PDF_B(x) dx } // Int_[-oo,xC] { PDF_S(x) dx } = Int_[xC,+oo] { PDF_B(x) dx }
virtual Bool_t IsSignalLike() { return GetMvaValue() > GetSign virtual Bool_t IsSignalLike();
alReferenceCut() ? kTRUE : kFALSE; } virtual Bool_t IsSignalLike(Double_t mvaVal);
DataSet* Data() const { return DataInfo().GetDataSet(); } DataSet* Data() const { return DataInfo().GetDataSet(); }
Bool_t HasMVAPdfs() const { return fHasMVAPdfs; } Bool_t HasMVAPdfs() const { return fHasMVAPdfs; }
virtual void SetAnalysisType( Types::EAnalysisType type ) { fAnalysisType = type; } virtual void SetAnalysisType( Types::EAnalysisType type ) { fAnalysisType = type; }
Types::EAnalysisType GetAnalysisType() const { return fAnalysisType; } Types::EAnalysisType GetAnalysisType() const { return fAnalysisType; }
Bool_t DoRegression() const { return fAnalysisType == Types::kRegression; } Bool_t DoRegression() const { return fAnalysisType == Types::kRegression; }
Bool_t DoMulticlass() const { return fAnalysisType == Types::kMulticlass; } Bool_t DoMulticlass() const { return fAnalysisType == Types::kMulticlass; }
// setter method for suppressing writing to XML and writing of standa lone classes // setter method for suppressing writing to XML and writing of standa lone classes
skipping to change at line 477 skipping to change at line 496
// fill test tree with classification or regression results // fill test tree with classification or regression results
virtual void AddClassifierOutput ( Types::ETreeType type ); virtual void AddClassifierOutput ( Types::ETreeType type );
virtual void AddClassifierOutputProb( Types::ETreeType type ); virtual void AddClassifierOutputProb( Types::ETreeType type );
virtual void AddRegressionOutput ( Types::ETreeType type ); virtual void AddRegressionOutput ( Types::ETreeType type );
virtual void AddMulticlassOutput ( Types::ETreeType type ); virtual void AddMulticlassOutput ( Types::ETreeType type );
private: private:
void AddInfoItem( void* gi, const TString& name, const TS tring& value) const; void AddInfoItem( void* gi, const TString& name, const TS tring& value) const;
void CreateVariableTransforms(const TString& trafoDefinit
ion ); static void CreateVariableTransforms(const TString& trafoDefinit
ion,
TMVA::DataSetInfo& dataInfo,
TMVA::TransformationHandler&
transformationHandler,
TMVA::MsgLogger& log );
// ========== class members ========================================= ========= // ========== class members ========================================= =========
protected: protected:
// direct accessors // direct accessors
Ranking* fRanking; // pointer to ranking ob ject (created by derived classifiers) Ranking* fRanking; // pointer to ranking ob ject (created by derived classifiers)
std::vector<TString>* fInputVars; // vector of input varia bles used in MVA std::vector<TString>* fInputVars; // vector of input varia bles used in MVA
// histogram binning // histogram binning
Int_t fNbins; // number of bins in rep Int_t fNbins; // number of bins in inp
resentative histograms ut variable histograms
Int_t fNbinsMVAoutput; // number of bins in MVA
output histograms
Int_t fNbinsH; // number of bins in eva luation histograms Int_t fNbinsH; // number of bins in eva luation histograms
Types::EAnalysisType fAnalysisType; // method-mode : true -- > regression, false --> classification Types::EAnalysisType fAnalysisType; // method-mode : true -- > regression, false --> classification
std::vector<Float_t>* fRegressionReturnVal; // holds the return-valu es for the regression std::vector<Float_t>* fRegressionReturnVal; // holds the return-valu es for the regression
std::vector<Float_t>* fMulticlassReturnVal; // holds the return-valu es for the multiclass classification std::vector<Float_t>* fMulticlassReturnVal; // holds the return-valu es for the multiclass classification
private: private:
// MethodCuts redefines some of the evaluation variables and histogra ms -> must access private members // MethodCuts redefines some of the evaluation variables and histogra ms -> must access private members
friend class MethodCuts; friend class MethodCuts;
Bool_t fDisableWriting; //! set to true in order to s uppress writing to XML Bool_t fDisableWriting; //! set to true in order to s uppress writing to XML
// data sets // data sets
DataSetInfo& fDataSetInfo; //! the data set information ( sometimes needed) DataSetInfo& fDataSetInfo; //! the data set information ( sometimes needed)
Double_t fSignalReferenceCut; // minimum requirement on the MVA output to declare an event signal-like Double_t fSignalReferenceCut; // minimum requirement on the MVA output to declare an event signal-like
Double_t fSignalReferenceCutOrientation; // minimum requirem ent on the MVA output to declare an event signal-like
Types::ESBType fVariableTransformType; // this is the event type ( sig or bgd) assumed for variable transform Types::ESBType fVariableTransformType; // this is the event type ( sig or bgd) assumed for variable transform
// naming and versioning // naming and versioning
TString fJobName; // name of job -> user defined , appears in weight files TString fJobName; // name of job -> user defined , appears in weight files
TString fMethodName; // name of the method (set in derived class) TString fMethodName; // name of the method (set in derived class)
Types::EMVA fMethodType; // type of method (set in deri ved class) Types::EMVA fMethodType; // type of method (set in deri ved class)
TString fTestvar; // variable used in evaluation , etc (mostly the MVA) TString fTestvar; // variable used in evaluation , etc (mostly the MVA)
UInt_t fTMVATrainingVersion; // TMVA version used for train ing UInt_t fTMVATrainingVersion; // TMVA version used for train ing
UInt_t fROOTTrainingVersion; // ROOT version used for train ing UInt_t fROOTTrainingVersion; // ROOT version used for train ing
Bool_t fConstructedFromWeightFile; // is it obtained from w eight file? Bool_t fConstructedFromWeightFile; // is it obtained from w eight file?
skipping to change at line 537 skipping to change at line 562
TString fWeightFile; // weight file name TString fWeightFile; // weight file name
private: private:
TH1* fEffS; // efficiency histogram for ro otfinder TH1* fEffS; // efficiency histogram for ro otfinder
PDF* fDefaultPDF; // default PDF definitions PDF* fDefaultPDF; // default PDF definitions
PDF* fMVAPdfS; // signal MVA PDF PDF* fMVAPdfS; // signal MVA PDF
PDF* fMVAPdfB; // background MVA PDF PDF* fMVAPdfB; // background MVA PDF
TH1F* fmvaS; // PDFs of MVA distribution (s
ignal)
TH1F* fmvaB; // PDFs of MVA distribution (b
ackground)
PDF* fSplS; // PDFs of MVA distribution (s ignal) PDF* fSplS; // PDFs of MVA distribution (s ignal)
PDF* fSplB; // PDFs of MVA distribution (b ackground) PDF* fSplB; // PDFs of MVA distribution (b ackground)
TSpline* fSpleffBvsS; // splines for signal eff. ver sus background eff. TSpline* fSpleffBvsS; // splines for signal eff. ver sus background eff.
PDF* fSplTrainS; // PDFs of training MVA distri bution (signal) PDF* fSplTrainS; // PDFs of training MVA distri bution (signal)
PDF* fSplTrainB; // PDFs of training MVA distri bution (background) PDF* fSplTrainB; // PDFs of training MVA distri bution (background)
TSpline* fSplTrainEffBvsS; // splines for training signal eff. versus background eff. TSpline* fSplTrainEffBvsS; // splines for training signal eff. versus background eff.
private: private:
skipping to change at line 558 skipping to change at line 585
Double_t fMeanS; // mean (signal) Double_t fMeanS; // mean (signal)
Double_t fMeanB; // mean (background) Double_t fMeanB; // mean (background)
Double_t fRmsS; // RMS (signal) Double_t fRmsS; // RMS (signal)
Double_t fRmsB; // RMS (background) Double_t fRmsB; // RMS (background)
Double_t fXmin; // minimum (signal and backgro und) Double_t fXmin; // minimum (signal and backgro und)
Double_t fXmax; // maximum (signal and backgro und) Double_t fXmax; // maximum (signal and backgro und)
// variable preprocessing // variable preprocessing
TString fVarTransformString; // labels variable tra nsform method TString fVarTransformString; // labels variable tra nsform method
TransformationHandler fTransformation; // the list of transfo TransformationHandler* fTransformationPointer; // pointer to the res
rmations t of transformations
TransformationHandler fTransformation; // the list of transf
ormations
// help and verbosity // help and verbosity
Bool_t fVerbose; // verbose flag Bool_t fVerbose; // verbose flag
TString fVerbosityLevelString; // verbosity level (user inp ut string) TString fVerbosityLevelString; // verbosity level (user inp ut string)
EMsgType fVerbosityLevel; // verbosity level EMsgType fVerbosityLevel; // verbosity level
Bool_t fHelp; // help flag Bool_t fHelp; // help flag
Bool_t fHasMVAPdfs; // MVA Pdfs are created for this classifier Bool_t fHasMVAPdfs; // MVA Pdfs are created for this classifier
Bool_t fIgnoreNegWeightsInTraining;// If true, events with negative weights are not used in training Bool_t fIgnoreNegWeightsInTraining;// If true, events with negative weights are not used in training
 End of changes. 16 change blocks. 
17 lines changed or deleted 55 lines changed or added


 MethodBoost.h   MethodBoost.h 
// @(#)root/tmva $Id: MethodBoost.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodBoost.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss,Or Cohen // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss,Or Cohen, J
an Therhaag, Eckhard von Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodCompositeBase * * Class : MethodCompositeBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Virtual base class for all MVA method * * Virtual base class for all MVA method *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland
* *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * Peter Speckmayer <Peter.Speckmazer@cern.ch> - CERN, Switzerland
* *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, Ger * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland
many * *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canad * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, G
a * ermany *
* Or Cohen <orcohenor@gmail.com> - Weizmann Inst., Israe * Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
l * *
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany * Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
* *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* LAPP, Annecy, France * * U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodBoost #ifndef ROOT_TMVA_MethodBoost
#define ROOT_TMVA_MethodBoost #define ROOT_TMVA_MethodBoost
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 121 skipping to change at line 121
void Init(); void Init();
void InitHistos(); void InitHistos();
void CheckSetup(); void CheckSetup();
// the option handling methods // the option handling methods
void DeclareOptions(); void DeclareOptions();
void ProcessOptions(); void ProcessOptions();
MethodBoost* SetStage( Types::EBoostStage stage ) { fBoostStage = sta ge; return this; } MethodBoost* SetStage( Types::EBoostStage stage ) { fBoostStage = sta ge; return this; }
//training a single classifier // training a single classifier
void SingleTrain(); void SingleTrain();
//calculating a boosting weight from the classifier, storing it in th e next one // calculating a boosting weight from the classifier, storing it in t he next one
void SingleBoost(); void SingleBoost();
// calculate weight of single method // calculate weight of single method
void CalcMethodWeight(); void CalcMethodWeight();
// return ROC integral on training/testing sample // return ROC integral on training/testing sample
Double_t GetBoostROCIntegral(Bool_t, Types::ETreeType, Bool_t CalcOve rlapIntergral=kFALSE); Double_t GetBoostROCIntegral(Bool_t, Types::ETreeType, Bool_t CalcOve rlapIntergral=kFALSE);
//writing the monitoring histograms and tree to a file // writing the monitoring histograms and tree to a file
void WriteMonitoringHistosToFile( void ) const; void WriteMonitoringHistosToFile( void ) const;
// write evaluation histograms into target file // write evaluation histograms into target file
virtual void WriteEvaluationHistosToFile(Types::ETreeType treetype); virtual void WriteEvaluationHistosToFile(Types::ETreeType treetype);
// performs the MethodBase testing + testing of each boosted classifi er // performs the MethodBase testing + testing of each boosted classifi er
virtual void TestClassification(); virtual void TestClassification();
//finding the MVA to cut between sig and bgd according to fMVACutPerc ,fMVACutType // finding the MVA to cut between sig and bgd according to fMVACutPer c,fMVACutType
void FindMVACut(); void FindMVACut();
//setting all the boost weights to 1 // setting all the boost weights to 1
void ResetBoostWeights(); void ResetBoostWeights();
//creating the vectors of histogram for monitoring MVA response of ea ch classifier // creating the vectors of histogram for monitoring MVA response of e ach classifier
void CreateMVAHistorgrams(); void CreateMVAHistorgrams();
// calculate MVA values of current trained method on training // calculate MVA values of current trained method on training
// sample // sample
void CalcMVAValues(); void CalcMVAValues();
//Number of times the classifier is boosted (set by the user) Int_t fBoostNum; // Number of times the classi
Int_t fBoostNum; fier is boosted
// string specifying the boost type (AdaBoost / Bagging ) TString fBoostType; // string specifying the boos
TString fBoostType; t type
TString fMethodWeightType; // string specifying the boos
t type
Double_t fMethodError; // estimation of the level er
ror of the classifier
// analysing the train datase
t
Double_t fOrigMethodError; // estimation of the level er
ror of the classifier
// analysing the train datase
t (with unboosted weights)
Double_t fBoostWeight; // the weight used to boost t
he next classifier
TString fTransformString; // min and max values for the
classifier response
Bool_t fDetailedMonitoring; // produce detailed monitorin
g histograms (boost-wise)
Double_t fADABoostBeta; // ADA boost parameter, defau
lt is 1
UInt_t fRandomSeed; // seed for random number gen
erator used for bagging
TString fBoostedMethodName; // details of the boosted c
lassifier
TString fBoostedMethodTitle; // title
TString fBoostedMethodOptions; // options
// string specifying the boost type ( ByError,Average,LastMethod ) std::vector<TH1*>* fMonitorHist; // histograms to monitor va
TString fMethodWeightType; lues during the boosting
Bool_t fMonitorBoostedMethod; // monitor the MVA response
of every classifier
//estimation of the level error of the classifier analysing the train // MVA output from each classifier over the training hist, using orig
dataset nal events weights
Double_t fMethodError;
//estimation of the level error of the classifier analysing the train
dataset (with unboosted weights)
Double_t fOrigMethodError;
//the weight used to boost the next classifier
Double_t fBoostWeight;
// min and max values for the classifier response
TString fTransformString;
//ADA boost parameter, default is 1
Double_t fADABoostBeta;
// seed for random number generator used for bagging
UInt_t fRandomSeed;
// details of the boosted classifier
TString fBoostedMethodName;
TString fBoostedMethodTitle;
TString fBoostedMethodOptions;
// histograms to monitor values during the boosting
std::vector<TH1*>* fMonitorHist;
//whether to monitor the MVA response of every classifier using the
Bool_t fMonitorBoostedMethod;
//MVA output from each classifier over the training hist, using orign
al events weights
std::vector< TH1* > fTrainSigMVAHist; std::vector< TH1* > fTrainSigMVAHist;
std::vector< TH1* > fTrainBgdMVAHist; std::vector< TH1* > fTrainBgdMVAHist;
//MVA output from each classifier over the training hist, using boost ed events weights // MVA output from each classifier over the training hist, using boos ted events weights
std::vector< TH1* > fBTrainSigMVAHist; std::vector< TH1* > fBTrainSigMVAHist;
std::vector< TH1* > fBTrainBgdMVAHist; std::vector< TH1* > fBTrainBgdMVAHist;
//MVA output from each classifier over the testing hist // MVA output from each classifier over the testing hist
std::vector< TH1* > fTestSigMVAHist; std::vector< TH1* > fTestSigMVAHist;
std::vector< TH1* > fTestBgdMVAHist; std::vector< TH1* > fTestBgdMVAHist;
// tree to monitor values during the boosting TTree* fMonitorTree; // tree to monitor values du
TTree* fMonitorTree; ring the boosting
Types::EBoostStage fBoostStage; // stage of the boosting
// the stage of the boosting Int_t fDefaultHistNum; // number of histogram filled
Types::EBoostStage fBoostStage; for every type of boosted classifier
Bool_t fRecalculateMVACut; // whether to recalculate the
//the number of histogram filled for every type of boosted classifier MVA cut at every boosting step
Int_t fDefaultHistNum; Double_t fROC_training; // roc integral of last train
ed method (on training sample)
//whether to recalculate the MVA cut at every boosting step
Bool_t fRecalculateMVACut;
// roc integral of last trained method (on training sample)
Double_t fROC_training;
// overlap integral of mva distributions for signal and // overlap integral of mva distributions for signal and
// background (training sample) // background (training sample)
Double_t fOverlap_integral; Double_t fOverlap_integral;
// mva values for the last trained method (on training sample) std::vector<Float_t> *fMVAvalues; // mva values for the last tr
std::vector<Float_t> *fMVAvalues; ained method
DataSetManager* fDataSetManager; // DSMTEST DataSetManager* fDataSetManager; // DSMTEST
friend class Factory; // DSMTEST friend class Factory; // DSMTEST
friend class Reader; // DSMTEST friend class Reader; // DSMTEST
protected: protected:
// get help message text // get help message text
void GetHelpMessage() const; void GetHelpMessage() const;
ClassDef(MethodBoost,0) ClassDef(MethodBoost,0)
}; };
} }
 End of changes. 19 change blocks. 
82 lines changed or deleted 76 lines changed or added


 MethodCategory.h   MethodCategory.h 
// @(#)root/tmva $Id: MethodCategory.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodCategory.h 38475 2011-03-17 10:46:00Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss,Or Cohen // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss,Or Cohen
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodCompositeBase * * Class : MethodCompositeBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Virtual base class for all MVA method * * Virtual base class for all MVA method *
skipping to change at line 96 skipping to change at line 96
const TString& theVariables, const TString& theVariables,
Types::EMVA theMethod, Types::EMVA theMethod,
const TString& theTitle, const TString& theTitle,
const TString& theOptions); const TString& theOptions);
void AddWeightsXMLTo( void* parent ) const; void AddWeightsXMLTo( void* parent ) const;
void ReadWeightsFromXML( void* wghtnode ); void ReadWeightsFromXML( void* wghtnode );
Double_t GetMvaValue( Double_t* err=0, Double_t* errUpper = 0 ); Double_t GetMvaValue( Double_t* err=0, Double_t* errUpper = 0 );
// regression response
virtual const std::vector<Float_t>& GetRegressionValues();
virtual void MakeClass( const TString& = TString("") ) const {}; virtual void MakeClass( const TString& = TString("") ) const {};
private : private :
// initializing mostly monitoring tools of the category process // initializing mostly monitoring tools of the category process
void Init(); void Init();
// the option handling methods // the option handling methods
void DeclareOptions(); void DeclareOptions();
void ProcessOptions(); void ProcessOptions();
 End of changes. 2 change blocks. 
1 lines changed or deleted 4 lines changed or added


 MethodHMatrix.h   MethodHMatrix.h 
// @(#)root/tmva $Id: MethodHMatrix.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodHMatrix.h 38475 2011-03-17 10:46:00Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodHMatrix * * Class : MethodHMatrix *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* H-Matrix method, which is implemented as a simple comparison of * * H-Matrix method, which is implemented as a simple comparison of *
skipping to change at line 112 skipping to change at line 112
// get help message text // get help message text
void GetHelpMessage() const; void GetHelpMessage() const;
private: private:
// the option handling methods // the option handling methods
void DeclareOptions(); void DeclareOptions();
void ProcessOptions(); void ProcessOptions();
// returns chi2 estimator for given type (signal or background) // returns chi2 estimator for given type (signal or background)
Double_t GetChi2( Event* e, Types::ESBType ) const; Double_t GetChi2( Types::ESBType );
Double_t GetChi2( Types::ESBType ) const;
// compute correlation matrices // compute correlation matrices
void ComputeCovariance( Bool_t, TMatrixD* ); void ComputeCovariance( Bool_t, TMatrixD* );
// arrays of input evt vs. variable // arrays of input evt vs. variable
TMatrixD* fInvHMatrixS; // inverse H-matrix (signal) TMatrixD* fInvHMatrixS; // inverse H-matrix (signal)
TMatrixD* fInvHMatrixB; // inverse H-matrix (background) TMatrixD* fInvHMatrixB; // inverse H-matrix (background)
TVectorD* fVecMeanS; // vector of mean values (signal) TVectorD* fVecMeanS; // vector of mean values (signal)
TVectorD* fVecMeanB; // vector of mean values (background) TVectorD* fVecMeanB; // vector of mean values (background)
 End of changes. 2 change blocks. 
3 lines changed or deleted 2 lines changed or added


 MethodLD.h   MethodLD.h 
skipping to change at line 19 skipping to change at line 19
* Description: * * Description: *
* Linear Discriminant (Simple Linear Regression) * * Linear Discriminant (Simple Linear Regression) *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Krzysztof Danielowski <danielow@cern.ch> - IFJ PAN & AGH, Poland * * Krzysztof Danielowski <danielow@cern.ch> - IFJ PAN & AGH, Poland *
* Kamil Kraszewski <kalq@cern.ch> - IFJ PAN & UJ, Poland * * Kamil Kraszewski <kalq@cern.ch> - IFJ PAN & UJ, Poland *
* Maciej Kruk <mkruk@cern.ch> - IFJ PAN & AGH, Poland * * Maciej Kruk <mkruk@cern.ch> - IFJ PAN & AGH, Poland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerla nd * * Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerla nd *
* Jan Therhaag <therhaag@physik.uni-bonn.de> - Uni Bonn, Ger many * * Jan Therhaag <therhaag@physik.uni-bonn.de> - Uni Bonn, Ger many *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2008-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* PAN, Poland * * PAN, Poland *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
* * * *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodLD #ifndef ROOT_TMVA_MethodLD
#define ROOT_TMVA_MethodLD #define ROOT_TMVA_MethodLD
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 MethodLikelihood.h   MethodLikelihood.h 
// @(#)root/tmva $Id: MethodLikelihood.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodLikelihood.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss, Peter Spec
kmayer, Eckhard von Toerne, Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodLikelihood * * Class : MethodLikelihood *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Likelihood analysis ("non-parametric approach") * * Likelihood analysis ("non-parametric approach") *
* Also implemented is a "diagonalized likelihood approach", * * Also implemented is a "diagonalized likelihood approach", *
* which improves over the uncorrelated likelihood ansatz by transform ing * * which improves over the uncorrelated likelihood ansatz by transform ing *
* linearly the input variables into a diagonal space, using the squar e-root * * linearly the input variables into a diagonal space, using the squar e-root *
* of the covariance matrix. This approach can be chosen by inserting * * of the covariance matrix. This approach can be chosen by inserting *
* the letter "D" into the option string. * * the letter "D" into the option string. *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German * Peter Speckmayer <Peter.Speckmazer@cern.ch> - CERN, Switzerland
y * *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland
*
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, G
ermany *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodLikelihood #ifndef ROOT_TMVA_MethodLikelihood
#define ROOT_TMVA_MethodLikelihood #define ROOT_TMVA_MethodLikelihood
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
 End of changes. 5 change blocks. 
5 lines changed or deleted 15 lines changed or added


 MethodMLP.h   MethodMLP.h 
// @(#)root/tmva $Id: MethodMLP.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodMLP.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Matt Jachowski // Author: Krzysztof Danielowski, Andreas Hoecker, Matt Jachowski, Kamil Kr
aszewski, Maciej Kruk, Peter Speckmayer, Joerg Stelzer, Eckhard von Toerne,
Jan Therhaag, Jiahang Zhong
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodMLP * * Class : MethodMLP *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* ANN Multilayer Perceptron class for the discrimination of signal * * ANN Multilayer Perceptron class for the discrimination of signal *
* from background. BFGS implementation based on TMultiLayerPerceptro n * * from background. BFGS implementation based on TMultiLayerPerceptro n *
* class from ROOT (http://root.cern.ch). * * class from ROOT (http://root.cern.ch). *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Krzysztof Danielowski <danielow@cern.ch> - IFJ & AGH, Poland * * Krzysztof Danielowski <danielow@cern.ch> - IFJ & AGH, Poland *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerlan d *
* Matt Jachowski <jachowski@stanford.edu> - Stanford Universit y, USA * * Matt Jachowski <jachowski@stanford.edu> - Stanford Universit y, USA *
* Kamil Kraszewski <kalq@cern.ch> - IFJ & UJ, Poland * * Kamil Kraszewski <kalq@cern.ch> - IFJ & UJ, Poland *
* Maciej Kruk <mkruk@cern.ch> - IFJ & AGH, Poland * * Maciej Kruk <mkruk@cern.ch> - IFJ & AGH, Poland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerlan
d *
* Joerg Stelzer <stelzer@cern.ch> - DESY, Germany
*
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* Jiahang Zhong <Jiahang.Zhong@cern.ch> - Academia Sinica, T
aipei *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada
*
* MPI-K Heidelberg, Germany
*
* U. of Bonn, Germany
*
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodMLP #ifndef ROOT_TMVA_MethodMLP
#define ROOT_TMVA_MethodMLP #define ROOT_TMVA_MethodMLP
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 115 skipping to change at line 122
void Train() { Train(NumCycles()); } void Train() { Train(NumCycles()); }
// for GA // for GA
Double_t ComputeEstimator ( std::vector<Double_t>& parameters ); Double_t ComputeEstimator ( std::vector<Double_t>& parameters );
Double_t EstimatorFunction( std::vector<Double_t>& parameters ); Double_t EstimatorFunction( std::vector<Double_t>& parameters );
enum ETrainingMethod { kBP=0, kBFGS, kGA }; enum ETrainingMethod { kBP=0, kBFGS, kGA };
enum EBPTrainingMode { kSequential=0, kBatch }; enum EBPTrainingMode { kSequential=0, kBatch };
bool HasInverseHessian() { return fCalculateErrors; } bool HasInverseHessian() { return fCalculateErrors; }
Double_t GetMvaValueAsymError( Double_t* errUpper, Double_t* errLower ); Double_t GetMvaValue( Double_t* err=0, Double_t* errUpper=0 );
protected: protected:
// make ROOT-independent C++ class for classifier response (classifie r-specific implementation) // make ROOT-independent C++ class for classifier response (classifie r-specific implementation)
void MakeClassSpecific( std::ostream&, const TString& ) const; void MakeClassSpecific( std::ostream&, const TString& ) const;
// get help message text // get help message text
void GetHelpMessage() const; void GetHelpMessage() const;
private: private:
skipping to change at line 221 skipping to change at line 228
Int_t fTestRate; // test for overtraining performed a t each #th epochs Int_t fTestRate; // test for overtraining performed a t each #th epochs
Bool_t fEpochMon; // create and fill epoch-wise monito ring histograms (makes outputfile big!) Bool_t fEpochMon; // create and fill epoch-wise monito ring histograms (makes outputfile big!)
// genetic algorithm variables // genetic algorithm variables
Int_t fGA_nsteps; // GA settings: number of steps Int_t fGA_nsteps; // GA settings: number of steps
Int_t fGA_preCalc; // GA settings: number of pre-calc s teps Int_t fGA_preCalc; // GA settings: number of pre-calc s teps
Int_t fGA_SC_steps; // GA settings: SC_steps Int_t fGA_SC_steps; // GA settings: SC_steps
Int_t fGA_SC_rate; // GA settings: SC_rate Int_t fGA_SC_rate; // GA settings: SC_rate
Double_t fGA_SC_factor; // GA settings: SC_factor Double_t fGA_SC_factor; // GA settings: SC_factor
// regression, storage of deviations
std::vector<std::pair<Float_t,Float_t> >* fDeviationsFromTargets; //
deviation from the targets, event weight
Float_t fWeightRange; // suppress outliers for the estimat
or calculation
#ifdef MethodMLP_UseMinuit__ #ifdef MethodMLP_UseMinuit__
// minuit variables -- commented out because they rely on a static po inter // minuit variables -- commented out because they rely on a static po inter
Int_t fNumberOfWeights; // Minuit: number of weights Int_t fNumberOfWeights; // Minuit: number of weights
static MethodMLP* fgThis; // Minuit: this pointer static MethodMLP* fgThis; // Minuit: this pointer
#endif #endif
// debugging flags // debugging flags
static const Int_t fgPRINT_ESTIMATOR_INC = 10; // debug flags static const Int_t fgPRINT_ESTIMATOR_INC = 10; // debug flags
static const Bool_t fgPRINT_SEQ = kFALSE; // debug flags static const Bool_t fgPRINT_SEQ = kFALSE; // debug flags
static const Bool_t fgPRINT_BATCH = kFALSE; // debug flags static const Bool_t fgPRINT_BATCH = kFALSE; // debug flags
 End of changes. 7 change blocks. 
5 lines changed or deleted 29 lines changed or added


 MethodPDEFoam.h   MethodPDEFoam.h 
// @(#)root/tmva $Id: MethodPDEFoam.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodPDEFoam.h 38475 2011-03-17 10:46:00Z evt $
// Author: Tancredi Carli, Dominik Dannheim, Alexander Voigt // Author: Tancredi Carli, Dominik Dannheim, Alexander Voigt
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate Data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate Data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodPDEFoam * * Class : MethodPDEFoam *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* The PDEFoam method is an extension of the PDERS method, which divid es * * The PDEFoam method is an extension of the PDERS method, which divid es *
* the multi-dimensional phase space in a finite number of hyper-recta ngles * * the multi-dimensional phase space in a finite number of hyper-recta ngles *
* (cells) of constant event density. This "foam" of cells is filled w ith * * (cells) of constant event density. This "foam" of cells is filled w ith *
* averaged probability-density information sampled from a training ev ent * * averaged probability-density information sampled from a training ev ent *
* sample. * * sample. *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Tancredi Carli - CERN, Switzerland * * Tancredi Carli - CERN, Switzerland *
* Dominik Dannheim - CERN, Switzerland * * Dominik Dannheim - CERN, Switzerland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland *
* Alexander Voigt - CERN, Switzerland * * Alexander Voigt - TU Dresden, Germany *
* * * *
* Original author of the TFoam implementation: * * Original author of the TFoam implementation: *
* S. Jadach - Institute of Nuclear Physics, Cracow, Poland * * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2008, 2010: *
* CERN, Switzerland * * CERN, Switzerland *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MethodPDEFoam #ifndef ROOT_TMVA_MethodPDEFoam
#define ROOT_TMVA_MethodPDEFoam #define ROOT_TMVA_MethodPDEFoam
skipping to change at line 74 skipping to change at line 74
#endif #endif
#ifndef ROOT_TMVA_MethodBase #ifndef ROOT_TMVA_MethodBase
#include "TMVA/MethodBase.h" #include "TMVA/MethodBase.h"
#endif #endif
#ifndef ROOT_TMVA_PDEFoam #ifndef ROOT_TMVA_PDEFoam
#include "TMVA/PDEFoam.h" #include "TMVA/PDEFoam.h"
#endif #endif
#ifndef ROOT_TMVA_PDEFoamDecisionTree
#include "TMVA/PDEFoamDecisionTree.h"
#endif
#ifndef ROOT_TMVA_PDEFoamEvent
#include "TMVA/PDEFoamEvent.h"
#endif
#ifndef ROOT_TMVA_PDEFoamDiscriminant
#include "TMVA/PDEFoamDiscriminant.h"
#endif
#ifndef ROOT_TMVA_PDEFoamTarget
#include "TMVA/PDEFoamTarget.h"
#endif
#ifndef ROOT_TMVA_PDEFoamMultiTarget
#include "TMVA/PDEFoamMultiTarget.h"
#endif
#ifndef ROOT_TMVA_PDEFoamDensityBase
#include "TMVA/PDEFoamDensityBase.h"
#endif
#ifndef ROOT_TMVA_PDEFoamTargetDensity
#include "TMVA/PDEFoamTargetDensity.h"
#endif
#ifndef ROOT_TMVA_PDEFoamEventDensity
#include "TMVA/PDEFoamEventDensity.h"
#endif
#ifndef ROOT_TMVA_PDEFoamDiscriminantDensity
#include "TMVA/PDEFoamDiscriminantDensity.h"
#endif
#ifndef ROOT_TMVA_PDEFoamDecisionTreeDensity
#include "TMVA/PDEFoamDecisionTreeDensity.h"
#endif
#ifndef ROOT_TMVA_PDEFoamKernelBase
#include "TMVA/PDEFoamKernelBase.h"
#endif
#ifndef ROOT_TMVA_PDEFoamKernelTrivial
#include "TMVA/PDEFoamKernelTrivial.h"
#endif
#ifndef ROOT_TMVA_PDEFoamKernelLinN
#include "TMVA/PDEFoamKernelLinN.h"
#endif
#ifndef ROOT_TMVA_PDEFoamKernelGauss
#include "TMVA/PDEFoamKernelGauss.h"
#endif
namespace TMVA { namespace TMVA {
// kernel types
enum EKernel { kNone=0, kGaus=1, kLinN=2 };
class MethodPDEFoam : public MethodBase { class MethodPDEFoam : public MethodBase {
public: public:
MethodPDEFoam( const TString& jobName, MethodPDEFoam( const TString& jobName,
const TString& methodTitle, const TString& methodTitle,
DataSetInfo& dsi, DataSetInfo& dsi,
const TString& theOption = "PDEFoam", const TString& theOption = "PDEFoam",
TDirectory* theTargetDir = 0 ); TDirectory* theTargetDir = 0 );
skipping to change at line 100 skipping to change at line 148
virtual ~MethodPDEFoam( void ); virtual ~MethodPDEFoam( void );
virtual Bool_t HasAnalysisType( Types::EAnalysisType type, UInt_t num berClasses, UInt_t numberTargets ); virtual Bool_t HasAnalysisType( Types::EAnalysisType type, UInt_t num berClasses, UInt_t numberTargets );
// training methods // training methods
void Train( void ); void Train( void );
void TrainMonoTargetRegression( void ); // Regression output: one value void TrainMonoTargetRegression( void ); // Regression output: one value
void TrainMultiTargetRegression( void ); // Regression output: any number of values void TrainMultiTargetRegression( void ); // Regression output: any number of values
void TrainSeparatedClassification( void ); // Classification: one foa m for Sig, one for Bg void TrainSeparatedClassification( void ); // Classification: one foa m for Sig, one for Bg
void TrainUnifiedClassification( void ); // Classification: one foa m for Signal and Bg void TrainUnifiedClassification( void ); // Classification: one foa m for Signal and Bg
void TrainMultiClassification(); // Classification: one foa m for every class
using MethodBase::ReadWeightsFromStream; using MethodBase::ReadWeightsFromStream;
// write weights to stream // write weights to stream
void AddWeightsXMLTo( void* parent ) const; void AddWeightsXMLTo( void* parent ) const;
// read weights from stream // read weights from stream
void ReadWeightsFromStream( std::istream & i ); void ReadWeightsFromStream( std::istream & i );
void ReadWeightsFromXML ( void* wghtnode ); void ReadWeightsFromXML ( void* wghtnode );
// write/read pure foams to/from file // write/read pure foams to/from file
void WriteFoamsToFile() const; void WriteFoamsToFile() const;
void ReadFoamsFromFile(); void ReadFoamsFromFile();
// calculate the MVA value // calculate the MVA value
Double_t GetMvaValue( Double_t* err = 0, Double_t* errUpper = 0 ); Double_t GetMvaValue( Double_t* err = 0, Double_t* errUpper = 0 );
// calculate multiclass MVA values
const std::vector<Float_t>& GetMulticlassValues();
// regression procedure // regression procedure
virtual const std::vector<Float_t>& GetRegressionValues(); virtual const std::vector<Float_t>& GetRegressionValues();
// reset the method
virtual void Reset();
// ranking of input variables // ranking of input variables
const Ranking* CreateRanking() { return 0; } const Ranking* CreateRanking();
// get number of cuts in every dimension, starting at cell
void GetNCuts(PDEFoamCell *cell, std::vector<UInt_t> &nCuts);
// helper functions to convert enum types to UInt_t and back // helper functions to convert enum types to UInt_t and back
EKernel GetKernel( void ) { return fKernel; } EKernel GetKernel( void ) { return fKernel; }
UInt_t KernelToUInt(EKernel ker) const { return UInt_t(ker); } UInt_t KernelToUInt(EKernel ker) const { return UInt_t(ker); }
EKernel UIntToKernel(UInt_t iker); EKernel UIntToKernel(UInt_t iker);
UInt_t TargetSelectionToUInt(ETargetSelection ts) const { return UInt _t(ts); } UInt_t TargetSelectionToUInt(ETargetSelection ts) const { return UInt _t(ts); }
ETargetSelection UIntToTargetSelection(UInt_t its); ETargetSelection UIntToTargetSelection(UInt_t its);
protected: protected:
skipping to change at line 144 skipping to change at line 202
// get help message text // get help message text
void GetHelpMessage() const; void GetHelpMessage() const;
// calculate Xmin and Xmax for Foam // calculate Xmin and Xmax for Foam
void CalcXminXmax(); void CalcXminXmax();
// Set Xmin, Xmax in foam with index 'foam_index' // Set Xmin, Xmax in foam with index 'foam_index'
void SetXminXmax(TMVA::PDEFoam*); void SetXminXmax(TMVA::PDEFoam*);
// Set foam options // create foam and set foam options
void InitFoam(TMVA::PDEFoam*, EFoamType); PDEFoam* InitFoam(TString, EFoamType, UInt_t cls=0);
// create pdefoam kernel
PDEFoamKernelBase* CreatePDEFoamKernel();
// delete all trained foams
void DeleteFoams();
// fill variable names into foam // fill variable names into foam
void FillVariableNamesToFoam() const; void FillVariableNamesToFoam() const;
private: private:
// the option handling methods // the option handling methods
void DeclareOptions(); void DeclareOptions();
void DeclareCompatibilityOptions(); void DeclareCompatibilityOptions();
void ProcessOptions(); void ProcessOptions();
// nice output // nice output
void PrintCoefficients( void ); void PrintCoefficients( void );
// Square function (fastest implementation) // Square function (fastest implementation)
template<typename T> T Sqr(T x) const { return x*x; } template<typename T> T Sqr(T x) const { return x*x; }
// options to be used // options to be used
Bool_t fSigBgSeparated; // Separate Sig and Bg, or not Bool_t fSigBgSeparated; // Separate Sig and Bg, or not
Double_t fFrac; // Fraction used for calc of Xmin, Xm Float_t fFrac; // Fraction used for calc of Xmin, Xm
ax ax
Double_t fDiscrErrCut; // cut on discrimant error Float_t fDiscrErrCut; // cut on discrimant error
Float_t fVolFrac; // inverse volume fraction (used for Float_t fVolFrac; // volume fraction (used for density
density calculation during buildup) calculation during buildup)
Float_t fVolFracInv; // volume fraction (used for density
calculation during buildup)
Int_t fnCells; // Number of Cells (1000) Int_t fnCells; // Number of Cells (1000)
Int_t fnActiveCells; // Number of active cells Int_t fnActiveCells; // Number of active cells
Int_t fnSampl; // Number of MC events per cell in bu ild-up (1000) Int_t fnSampl; // Number of MC events per cell in bu ild-up (1000)
Int_t fnBin; // Number of bins in build-up (100) Int_t fnBin; // Number of bins in build-up (100)
Int_t fEvPerBin; // Maximum events (equiv.) per bin in buid-up (1000) Int_t fEvPerBin; // Maximum events (equiv.) per bin in buid-up (1000)
Bool_t fCompress; // compress foam output file Bool_t fCompress; // compress foam output file
Bool_t fMultiTargetRegression; // do regression on multible ta rgets Bool_t fMultiTargetRegression; // do regression on multible ta rgets
UInt_t fNmin; // minimal number of events in cell n ecessary to split cell" UInt_t fNmin; // minimal number of events in cell n ecessary to split cell"
Bool_t fCutNmin; // Keep for bw compatibility: Grabbin g cell with maximal RMS to split next (TFoam default) Bool_t fCutNmin; // Keep for bw compatibility: Grabbin g cell with maximal RMS to split next (TFoam default)
UInt_t fMaxDepth; // maximum depth of cell tree UInt_t fMaxDepth; // maximum depth of cell tree
TString fKernelStr; // Kernel for GetMvaValue() (option s tring) TString fKernelStr; // Kernel for GetMvaValue() (option s tring)
EKernel fKernel; // Kernel for GetMvaValue() EKernel fKernel; // Kernel for GetMvaValue()
PDEFoamKernelBase *fKernelEstimator;// Kernel estimator
TString fTargetSelectionStr; // method of selecting the target (only mulit target regr.) TString fTargetSelectionStr; // method of selecting the target (only mulit target regr.)
ETargetSelection fTargetSelection; // method of selecting the target (only mulit target regr.) ETargetSelection fTargetSelection; // method of selecting the target (only mulit target regr.)
Bool_t fFillFoamWithOrigWeights; // fill the foam with boost w eights Bool_t fFillFoamWithOrigWeights; // fill the foam with boost w eights
Bool_t fUseYesNoCell; // return -1 or 1 for bg or signal li ke event Bool_t fUseYesNoCell; // return -1 or 1 for bg or signal li ke event
TString fDTLogic; // use DT algorithm to split cells TString fDTLogic; // use DT algorithm to split cells
EDTSeparation fDTSeparation; // enum which specifies the separatio n to use for the DT logic EDTSeparation fDTSeparation; // enum which specifies the separatio n to use for the DT logic
Bool_t fPeekMax; // peek up cell with max. driver inte gral for split Bool_t fPeekMax; // BACKWARDS COMPATIBILITY: peek up c ell with max. driver integral for split
std::vector<Double_t> fXmin, fXmax; // range for histograms and foams std::vector<Float_t> fXmin, fXmax; // range for histograms and foams
// foams and densities // foams and densities
// foam[0]=signal, if Sig and BG are Seperated; else foam[0]=signal/b g // foam[0]=signal, if Sig and BG are Seperated; else foam[0]=signal/b g
// foam[1]=background, if Sig and BG are Seperated; else it is not us ed // foam[1]=background, if Sig and BG are Seperated; else it is not us ed
std::vector<PDEFoam*> fFoam; std::vector<PDEFoam*> fFoam;
// default initialisation called by all constructors // default initialisation called by all constructors
void Init( void ); void Init( void );
ClassDef(MethodPDEFoam,0) // Analysis of PDEFoam discriminant (PDEFoa m or Mahalanobis approach) ClassDef(MethodPDEFoam,0) // Multi-dimensional probability density es timator using TFoam (PDE-Foam)
}; };
} // namespace TMVA } // namespace TMVA
#endif // MethodPDEFoam_H #endif // MethodPDEFoam_H
 End of changes. 15 change blocks. 
16 lines changed or deleted 79 lines changed or added


 MethodSVM.h   MethodSVM.h 
// @(#)root/tmva $Id: MethodSVM.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MethodSVM.h 38719 2011-04-04 12:22:28Z evt $
// Author: Marcin Wolter, Andrzej Zemla // Author: Marcin Wolter, Andrzej Zemla
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MethodSVM * * Class : MethodSVM *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Support Vector Machine * * Support Vector Machine *
skipping to change at line 115 skipping to change at line 115
// get help message text // get help message text
void GetHelpMessage() const; void GetHelpMessage() const;
private: private:
// the option handling methods // the option handling methods
void DeclareOptions(); void DeclareOptions();
void DeclareCompatibilityOptions(); void DeclareCompatibilityOptions();
void ProcessOptions(); void ProcessOptions();
Float_t fCost; // cost value Float_t fCost; // cost value
Float_t fTolerance; // tolerance parameter Float_t fTolerance; // tolerance para
UInt_t fMaxIter; // max number of iteration meter
UShort_t fNSubSets; // nr of subsets, default 1 UInt_t fMaxIter; // max number of
Float_t fBparm; // free plane coefficient iteration
Float_t fGamma; // RBF Kernel parameter UShort_t fNSubSets; // nr of subsets,
SVWorkingSet* fWgSet; // svm working set default 1
std::vector<TMVA::SVEvent*>* fInputData; // vector of training Float_t fBparm; // free plane coe
data in SVM format fficient
std::vector<TMVA::SVEvent*>* fSupportVectors; // contains support ve Float_t fGamma; // RBF Kernel par
ctors ameter
SVKernelFunction* fSVKernelFunction; // kernel function SVWorkingSet* fWgSet; // svm working se
t
std::vector<TMVA::SVEvent*>* fInputData; // vector of trai
ning data in SVM format
std::vector<TMVA::SVEvent*>* fSupportVectors; // contains suppo
rt vectors
SVKernelFunction* fSVKernelFunction; // kernel functio
n
TVectorD* fMinVars; // for normalization //is i TVectorD* fMinVars; // for normalizat
t still needed?? ion //is it still needed??
TVectorD* fMaxVars; // for normalization //is i TVectorD* fMaxVars; // for normalizat
t still needed?? ion //is it still needed??
// for backward compatibility // for backward compatibility
TString fTheKernel; // kernel name TString fTheKernel; // kernel name
Float_t fDoubleSigmaSquared; // for RBF Kernel Float_t fDoubleSigmaSquared; // for RBF Kernel
Int_t fOrder; // for Polynomial Kernel ( polynomi Int_t fOrder; // for Polynomial
al order ) Kernel ( polynomial order )
Float_t fTheta; // for Sigmoidal Kernel Float_t fTheta; // for Sigmoidal
Float_t fKappa; // for Sigmoidal Kernel Kernel
Float_t fKappa; // for Sigmoidal
Kernel
ClassDef(MethodSVM,0) // Support Vector Machine ClassDef(MethodSVM,0) // Support Vector Machine
}; };
} // namespace TMVA } // namespace TMVA
#endif // MethodSVM_H #endif // MethodSVM_H
 End of changes. 4 change blocks. 
23 lines changed or deleted 32 lines changed or added


 MinuitParameter.h   MinuitParameter.h 
// @(#)root/minuit2:$Id: MinuitParameter.h 24400 2008-06-20 07:28:49Z monet a $ // @(#)root/minuit2:$Id: MinuitParameter.h 38242 2011-02-28 11:07:54Z monet a $
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
* * * *
**********************************************************************/ **********************************************************************/
#ifndef ROOT_Minuit2_MinuitParameter #ifndef ROOT_Minuit2_MinuitParameter
#define ROOT_Minuit2_MinuitParameter #define ROOT_Minuit2_MinuitParameter
skipping to change at line 37 skipping to change at line 37
possible interactions: Fix/release, set/remove limits, set Value/error; possible interactions: Fix/release, set/remove limits, set Value/error;
From version 5.20: use string to store the name to avoid limitation of From version 5.20: use string to store the name to avoid limitation of
name length of 20 characters name length of 20 characters
*/ */
class MinuitParameter { class MinuitParameter {
public: public:
//default constructor standard with value/error = 0
MinuitParameter() :
fNum(0), fValue(0), fError(0.), fConst(false), fFix(false),
fLoLimit(0.), fUpLimit(0.), fLoLimValid(false), fUpLimValid(false),
fName("")
{}
//constructor for constant Parameter //constructor for constant Parameter
MinuitParameter(unsigned int num, const std::string & name, double val) : MinuitParameter(unsigned int num, const std::string & name, double val) :
fNum(num), fValue(val), fError(0.), fConst(true), fFix(false), fNum(num), fValue(val), fError(0.), fConst(true), fFix(false),
fLoLimit(0.), fUpLimit(0.), fLoLimValid(false), fUpLimValid(false), fLoLimit(0.), fUpLimit(0.), fLoLimValid(false), fUpLimValid(false),
fName(name) fName(name)
{} {}
//constructor for standard Parameter //constructor for standard Parameter
MinuitParameter(unsigned int num, const std::string & name, double val, double err) : MinuitParameter(unsigned int num, const std::string & name, double val, double err) :
fNum(num), fValue(val), fError(err), fConst(false), fFix(false), fNum(num), fValue(val), fError(err), fConst(false), fFix(false),
fLoLimit(0.), fUpLimit(0.), fLoLimValid(false), fUpLimValid(false), fLoLimit(0.), fUpLimit(0.), fLoLimValid(false), fUpLimValid(false),
fName(name) fName(name)
{} {}
//constructor for limited Parameter //constructor for limited Parameter
MinuitParameter(unsigned int num, const std::string & name, double val, double err, MinuitParameter(unsigned int num, const std::string & name, double val, double err,
 End of changes. 3 change blocks. 
2 lines changed or deleted 9 lines changed or added


 MnPrint.h   MnPrint.h 
// @(#)root/minuit2:$Id: MnPrint.h 34256 2010-06-30 21:07:32Z moneta $ // @(#)root/minuit2:$Id: MnPrint.h 38953 2011-04-20 09:58:40Z moneta $
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT *
* * * *
**********************************************************************/ **********************************************************************/
#ifndef ROOT_Minuit2_MnPrint #ifndef ROOT_Minuit2_MnPrint
#define ROOT_Minuit2_MnPrint #define ROOT_Minuit2_MnPrint
skipping to change at line 67 skipping to change at line 67
class MnMachinePrecision; class MnMachinePrecision;
std::ostream& operator<<(std::ostream&, const MnMachinePrecision&); std::ostream& operator<<(std::ostream&, const MnMachinePrecision&);
class MinosError; class MinosError;
std::ostream& operator<<(std::ostream&, const MinosError&); std::ostream& operator<<(std::ostream&, const MinosError&);
class ContoursError; class ContoursError;
std::ostream& operator<<(std::ostream&, const ContoursError&); std::ostream& operator<<(std::ostream&, const ContoursError&);
// class define static print level values
class MnPrint {
public:
// set print level and return the previous one
static int SetLevel(int level);
// return current level
static int Level();
// print current minimization state
static void PrintState(std::ostream & os, const MinimumState &, const ch
ar * msg, int iter = -1);
};
} // namespace Minuit2 } // namespace Minuit2
} // namespace ROOT } // namespace ROOT
// macro to report messages // macro to report messages
#ifndef USE_ROOT_ERROR #ifndef USE_ROOT_ERROR
#ifndef MNLOG #ifndef MNLOG
#define MN_OS std::cerr #define MN_OS std::cerr
 End of changes. 2 change blocks. 
1 lines changed or deleted 17 lines changed or added


 MsgLogger.h   MsgLogger.h 
// @(#)root/tmva $Id: MsgLogger.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: MsgLogger.h 38609 2011-03-24 16:06:32Z evt $
// Author: Attila Krasznahorkay // Author: Attila Krasznahorkay, Andreas Hoecker, Joerg Stelzer, Eckhard vo
n Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : MsgLogger * * Class : MsgLogger *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* TMVA output logger class producing nicely formatted log messages * * TMVA output logger class producing nicely formatted log messages *
* * * *
* Author: * * Author: *
* Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - CERN, Switzer land * * Attila Krasznahorkay <Attila.Krasznahorkay@cern.ch> - CERN, Switzer land *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland
*
* Joerg Stelzer <stelzer@cern.ch> - DESY, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_MsgLogger #ifndef ROOT_TMVA_MsgLogger
#define ROOT_TMVA_MsgLogger #define ROOT_TMVA_MsgLogger
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
 End of changes. 5 change blocks. 
3 lines changed or deleted 12 lines changed or added


 Node.h   Node.h 
// @(#)root/tmva $Id: Node.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: Node.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Classes: Node * * Classes: Node *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Node for the BinarySearch or Decision Trees * * Node for the BinarySearch or Decision Trees *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 NumEventsTestStat.h   NumEventsTestStat.h 
// @(#)root/roostats:$Id: NumEventsTestStat.h 36222 2010-10-09 18:27:06Z wo uter $ // @(#)root/roostats:$Id: NumEventsTestStat.h 37983 2011-02-04 16:03:47Z mo neta $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_NumEventsTestStat #ifndef ROOSTATS_NumEventsTestStat
skipping to change at line 42 skipping to change at line 42
#include "RooStats/SamplingDistribution.h" #include "RooStats/SamplingDistribution.h"
#include "RooStats/TestStatistic.h" #include "RooStats/TestStatistic.h"
#include "RooRealVar.h" #include "RooRealVar.h"
namespace RooStats { namespace RooStats {
class NumEventsTestStat : public TestStatistic{ class NumEventsTestStat : public TestStatistic{
public: public:
NumEventsTestStat() : fPdf(0) { }
NumEventsTestStat(RooAbsPdf& pdf) { NumEventsTestStat(RooAbsPdf& pdf) {
fPdf = &pdf; fPdf = &pdf;
} }
virtual ~NumEventsTestStat() { virtual ~NumEventsTestStat() {
// delete fRand; // delete fRand;
// delete fTestStatistic; // delete fTestStatistic;
} }
// Main interface to evaluate the test statistic on a dataset // Main interface to evaluate the test statistic on a dataset
virtual Double_t Evaluate(RooAbsData& data, RooArgSet& /*paramsOfInter est*/) { virtual Double_t Evaluate(RooAbsData& data, RooArgSet& /*paramsOfInter est*/) {
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 PDEFoam.h   PDEFoam.h 
// @(#)root/tmva $Id: PDEFoam.h 38943 2011-04-20 08:03:25Z evt $
// Author: S. Jadach, Tancredi Carli, Dominik Dannheim, Alexander Voigt
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Classes: PDEFoam * * Classes: PDEFoam *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Class for PDEFoam object * * Class for PDEFoam object *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* S. Jadach - Institute of Nuclear Physics, Cracow, Poland * * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
* Tancredi Carli - CERN, Switzerland * * Tancredi Carli - CERN, Switzerland *
* Dominik Dannheim - CERN, Switzerland * * Dominik Dannheim - CERN, Switzerland *
* Alexander Voigt - CERN, Switzerland * * Alexander Voigt - TU Dresden, Germany *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2008, 2010: *
* CERN, Switzerland * * CERN, Switzerland *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_PDEFoam #ifndef ROOT_TMVA_PDEFoam
#define ROOT_TMVA_PDEFoam #define ROOT_TMVA_PDEFoam
skipping to change at line 63 skipping to change at line 65
#ifndef ROOT_TObject #ifndef ROOT_TObject
#include "TObject.h" #include "TObject.h"
#endif #endif
#ifndef ROOT_TRandom3 #ifndef ROOT_TRandom3
#include "TRandom3.h" #include "TRandom3.h"
#endif #endif
namespace TMVA { namespace TMVA {
class PDEFoamCell; class PDEFoamCell;
class PDEFoamVect; class PDEFoamVect;
class PDEFoamDistr; class PDEFoamDensityBase;
class PDEFoamKernelBase;
class PDEFoam; class PDEFoam;
enum EFoamType { kSeparate, kDiscr, kMonoTarget, kMultiTarget }; // separation types
enum EDTSeparation { kFoam, kGiniIndex, kMisClassificationError,
kCrossEntropy, kGiniIndexWithLaplace, kSdivSqrtSplus
B };
// foam types
enum EFoamType { kSeparate, kDiscr, kMonoTarget, kMultiTarget, kMultiCla
ss };
// enum type for possible foam cell values
// kValue : cell value who's rms is minimized
// kValueError : error on kValue
// kValueDensity : volume density of kValue
// kMeanValue : mean sampling value (saved in fIntegral)
// kRms : rms of sampling distribution (saved in fDriver)
// kRmsOvMean : rms/mean of sampling distribution (saved in
// fDriver and fIntegral)
enum ECellValue { kValue, kValueError, kValueDensity, kMeanValue,
kRms, kRmsOvMean, kCellVolume };
} }
#ifndef ROOT_TMVA_PDEFoamDistr #ifndef ROOT_TMVA_PDEFoamDensityBase
#include "TMVA/PDEFoamDistr.h" #include "TMVA/PDEFoamDensityBase.h"
#endif #endif
#ifndef ROOT_TMVA_PDEFoamVect #ifndef ROOT_TMVA_PDEFoamVect
#include "TMVA/PDEFoamVect.h" #include "TMVA/PDEFoamVect.h"
#endif #endif
#ifndef ROOT_TMVA_PDEFoamCell #ifndef ROOT_TMVA_PDEFoamCell
#include "TMVA/PDEFoamCell.h" #include "TMVA/PDEFoamCell.h"
#endif #endif
#ifndef ROOT_TMVA_PDEFoamKernelBase
#include "TMVA/PDEFoamKernelBase.h"
#endif
namespace TMVA { namespace TMVA {
enum EKernel { kNone=0, kGaus=1, kLinN=2 };
enum ETargetSelection { kMean=0, kMpv=1 };
enum ECellType { kAll, kActive, kInActive };
// enum type for possible foam cell values
// kNev : number of events (saved in cell element 0)
// kDiscriminator : discriminator (saved in cell element 0)
// kDiscriminatorError : error on discriminator (saved in cell element 1
)
// kTarget0 : target 0 (saved in cell element 0)
// kTargetError : error on target 0 (saved in cell element 1)
// kMeanValue : mean sampling value (saved in fIntegral)
// kRms : rms of sampling distribution (saved in fDriver)
// kRmsOvMean : rms/mean of sampling distribution (saved in
// fDriver and fIntegral)
// kDensity : number of events/cell volume
enum ECellValue { kNev, kDiscriminator, kDiscriminatorError, kTarget0,
kTarget0Error, kMeanValue, kRms, kRmsOvMean, kDensity
};
// separation quantity to use (kFoam: use PDEFoam algorithm)
enum EDTSeparation { kFoam, kGiniIndex, kMisClassificationError,
kCrossEntropy };
}
namespace TMVA {
std::ostream& operator<< ( std::ostream& os, const PDEFoam& pdefoam );
std::istream& operator>> ( std::istream& istr, PDEFoam& pdefoam );
class PDEFoam : public TObject { class PDEFoam : public TObject {
protected: protected:
// COMPONENTS // // COMPONENTS //
//-------------- Input parameters //-------------- Input parameters
TString fName; // Name of a given instance of the FOAM cl ass TString fName; // Name of a given instance of the FOAM cl ass
Int_t fDim; // Dimension of the integration/simulation space Int_t fDim; // Dimension of the integration/simulation space
Int_t fNCells; // Maximum number of cells Int_t fNCells; // Maximum number of cells
//------------------- //-------------------
Int_t fNBin; // No. of bins in the edge histogram for c ell MC exploration Int_t fNBin; // No. of bins in the edge histogram for c ell MC exploration
skipping to change at line 133 skipping to change at line 129
Int_t fLastCe; // Index of the last cell Int_t fLastCe; // Index of the last cell
PDEFoamCell **fCells; // [fNCells] Array of ALL cells PDEFoamCell **fCells; // [fNCells] Array of ALL cells
//------------------ M.C. generation---------------------------- //------------------ M.C. generation----------------------------
TObjArray *fHistEdg; // Histograms of wt, one for each cell edg e TObjArray *fHistEdg; // Histograms of wt, one for each cell edg e
Double_t *fRvec; // [fDim] random number vector from r.n. g enerator fDim+1 maximum elements Double_t *fRvec; // [fDim] random number vector from r.n. g enerator fDim+1 maximum elements
//----------- Procedures //----------- Procedures
TRandom3 *fPseRan; // Pointer to user-defined generator of ps eudorandom numbers TRandom3 *fPseRan; // Pointer to user-defined generator of ps eudorandom numbers
//---------- working space for CELL exploration ------------- //---------- working space for CELL exploration -------------
Double_t *fAlpha; // [fDim] Internal parameters of the hyper rectangle Double_t *fAlpha; // [fDim] Internal parameters of the hyper rectangle
// --------- PDE-Foam specific variables // --------- PDE-Foam specific variables
EFoamType fFoamType; // type of foam EFoamType fFoamType; // BACKWARDS COMPATIBILITY: type of foam
Double_t *fXmin; // [fDim] minimum for variable transform Double_t *fXmin; // [fDim] minimum for variable transform
Double_t *fXmax; // [fDim] maximum for variable transform Double_t *fXmax; // [fDim] maximum for variable transform
UInt_t fNElements; // number of variables in every cell UInt_t fNElements; // BACKWARDS COMPATIBILITY: number of variab les in every cell
UInt_t fNmin; // minimal number of events in cell to split cell UInt_t fNmin; // minimal number of events in cell to split cell
UInt_t fMaxDepth; // maximum depth of cell tree UInt_t fMaxDepth; // maximum depth of cell tree
Float_t fVolFrac; // volume fraction (with respect to total ph Float_t fVolFrac; // BACKWARDS COMPATIBILITY: volume fraction
ase space (with respect to total phase space
Bool_t fFillFoamWithOrigWeights; // fill the foam with boost or orig. Bool_t fFillFoamWithOrigWeights; // BACKWARDS COMPATIBILITY: fill the
weights foam with boost or orig. weights
EDTSeparation fDTSeparation; // split cells according to decision tre EDTSeparation fDTSeparation; // BACKWARDS COMPATIBILITY: split cells
e logic according to decision tree logic
Bool_t fPeekMax; // peek up cell with max. driver integral fo Bool_t fPeekMax; // BACKWARDS COMPATIBILITY: peek up cell wit
r split h max. driver integral for split
PDEFoamDistr *fDistr; //! distribution of training events PDEFoamDensityBase *fDistr; //! distribution of training events
Timer *fTimer; // timer for graphical output Timer *fTimer; // timer for graphical output
TObjArray *fVariableNames;// collection of all variable names TObjArray *fVariableNames;// collection of all variable names
mutable MsgLogger* fLogger; //! message logger mutable MsgLogger* fLogger; //! message logger
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// METHODS // // METHODS //
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
private:
// Square function (fastest implementation)
template<typename T> T Sqr(T x) const { return x*x; }
PDEFoamDistr* GetDistr() const { assert(fDistr); return fDistr; }
protected: protected:
// ---------- TMVA console output // ---------- TMVA console output
void OutputGrow(Bool_t finished = false ); // nice TMVA console outpu t void OutputGrow(Bool_t finished = false ); // nice TMVA console outpu t
// ---------- Weighting functions for kernels
Float_t WeightGaus(PDEFoamCell*, std::vector<Float_t>&, UInt_t dim=0)
;
Double_t WeightLinNeighbors( std::vector<Float_t> &txvec, ECellValue
cv,
Int_t dim1=-1, Int_t dim2=-1,
Bool_t TreatEmptyCells=kFALSE );
// ---------- Foam build-up functions // ---------- Foam build-up functions
// Internal foam initialization functions // Internal foam initialization functions
void InitCells(); // Initialisation of all foam cel ls void InitCells(); // Initialisation of all foam cel ls
Int_t CellFill(Int_t, PDEFoamCell*);// Allocates new empty cell and r eturn its index Int_t CellFill(Int_t, PDEFoamCell*);// Allocates new empty cell and r eturn its index
void Explore(PDEFoamCell *Cell); // Exploration of the new cell, d virtual void Explore(PDEFoamCell *Cell); // Exploration of the new ce
etermine <wt>, wtMax etc. ll, determine <wt>, wtMax etc.
void DTExplore(PDEFoamCell *Cell); // Exploration of the new cell ac
cording to decision tree logic
void Varedu(Double_t [], Int_t&, Double_t&,Double_t&); // Determines the best edge, variace reduction void Varedu(Double_t [], Int_t&, Double_t&,Double_t&); // Determines the best edge, variace reduction
void MakeAlpha(); // Provides random point inside hyperre ctangle void MakeAlpha(); // Provides random point inside hyperre ctangle
void Grow(); // build up foam void Grow(); // build up foam
Long_t PeekMax(); // peek cell with max. driver integral Long_t PeekMax(); // peek cell with max. driver integral
Long_t PeekLast(); // peek last created cell
Int_t Divide(PDEFoamCell *); // Divide iCell into two daughters; iCe ll retained, taged as inactive Int_t Divide(PDEFoamCell *); // Divide iCell into two daughters; iCe ll retained, taged as inactive
Double_t Eval(Double_t *xRand, Double_t &event_density); // evaluate distribution on point 'xRand' Double_t Eval(Double_t *xRand, Double_t &event_density); // evaluate distribution on point 'xRand'
Float_t GetSeparation(Float_t s, Float_t b); // calculate separation
// ---------- Cell value access functions // ---------- Cell value access functions
// low level functions to access a certain cell value // low level functions to access a certain cell value
Double_t GetCellElement(PDEFoamCell *cell, UInt_t i); // get Element 'i' in cell 'cell' Double_t GetCellElement(const PDEFoamCell *cell, UInt_t i) const; // get Element 'i' in cell 'cell'
void SetCellElement(PDEFoamCell *cell, UInt_t i, Double_t value); // set Element 'i' in cell 'cell' to value 'value' void SetCellElement(PDEFoamCell *cell, UInt_t i, Double_t value); // set Element 'i' in cell 'cell' to value 'value'
// helper functions to access cell data
Double_t GetCellValue(PDEFoamCell*, ECellValue);
// specific function used during evaluation; determines, whether a ce ll value is undefined // specific function used during evaluation; determines, whether a ce ll value is undefined
Bool_t CellValueIsUndefined( PDEFoamCell* ); virtual Bool_t CellValueIsUndefined( PDEFoamCell* );
// finds cell according to given event variables // finds cell according to given event variables
PDEFoamCell* FindCell(std::vector<Float_t>&); //! PDEFoamCell* FindCell(const std::vector<Float_t>&) const ;
std::vector<TMVA::PDEFoamCell*> FindCells(std::vector<Float_t>&); //! std::vector<TMVA::PDEFoamCell*> FindCells(const std::vector<Float_t>&
) const;
std::vector<TMVA::PDEFoamCell*> FindCells(const std::map<Int_t,Float_
t>&) const;
void FindCells(const std::map<Int_t, Float_t>&, PDEFoamCell*, std::ve
ctor<PDEFoamCell*> &) const;
// find cells, which fit a given event vector // get internal density
void FindCellsRecursive(std::vector<Float_t>&, PDEFoamCell*, PDEFoamDensityBase* GetDistr() const { assert(fDistr); return fDistr;
std::vector<PDEFoamCell*> &); }
// calculates the mean/ mpv target values for a given event 'tvals' // Square function (fastest implementation)
std::vector<Float_t> GetCellTargets( std::vector<Float_t> &tvals, ETa template<typename T> T Sqr(T x) const { return x*x; }
rgetSelection ts );
// get number of events in cell during foam build-up
Double_t GetBuildUpCellEvents(PDEFoamCell* cell);
PDEFoam(const PDEFoam&); // Copy Constructor NOT USED PDEFoam(const PDEFoam&); // Copy Constructor NOT USED
// ---------- Public functions ---------------------------------- // ---------- Public functions ----------------------------------
public: public:
PDEFoam(); // Default constructor (used only by ROOT streamer) PDEFoam(); // Default constructor (used only by ROOT streamer)
PDEFoam(const TString&); // Principal user-defined constructor PDEFoam(const TString&); // Principal user-defined constructor
virtual ~PDEFoam(); // Default destructor virtual ~PDEFoam(); // Default destructor
// ---------- Foam creation functions // ---------- Foam creation functions
void Init(); // initialize PDEFoamDistr void Initialize(){}; // initialize the PDEFoam
void FillBinarySearchTree( const Event* ev, Bool_t NoNegWeights=kFALS void FillBinarySearchTree( const Event* ev ); // fill event into BST
E );
void Create(); // build-up foam void Create(); // build-up foam
// function to fill created cell with given value // function to fill created cell with given value
void FillFoamCells(const Event* ev, Bool_t NoNegWeights=kFALSE); virtual void FillFoamCells(const Event* ev, Float_t wt);
// functions to calc discriminators/ mean targets for every cell // remove all cell elements
// using filled cell values void ResetCellElements();
void CalcCellDiscr();
void CalcCellTarget();
// init TObject pointer on cells // function to call after foam is grown
void ResetCellElements(Bool_t allcells = false); virtual void Finalize(){};
// ---------- Getters and Setters // ---------- Getters and Setters
void SetDim(Int_t kDim); // Sets dimension of cubical space void SetDim(Int_t kDim); // Sets dimension of cubical space
void SetnCells(Long_t nCells){fNCells =nCells;} // Sets maximum numb er of cells void SetnCells(Long_t nCells){fNCells =nCells;} // Sets maximum numb er of cells
void SetnSampl(Long_t nSampl){fNSampl =nSampl;} // Sets no of MC eve nts in cell exploration void SetnSampl(Long_t nSampl){fNSampl =nSampl;} // Sets no of MC eve nts in cell exploration
void SetnBin(Int_t nBin){fNBin = nBin;} // Sets no of bins i n histogs in cell exploration void SetnBin(Int_t nBin){fNBin = nBin;} // Sets no of bins i n histogs in cell exploration
void SetEvPerBin(Int_t EvPerBin){fEvPerBin =EvPerBin;} // Sets max. n o. of effective events per bin void SetEvPerBin(Int_t EvPerBin){fEvPerBin =EvPerBin;} // Sets max. n o. of effective events per bin
void SetInhiDiv(Int_t, Int_t ); // Set inhibition of cell division al ong certain edge void SetInhiDiv(Int_t, Int_t ); // Set inhibition of cell division al ong certain edge
void SetNElements(UInt_t numb){fNElements = numb;} // init every cell void SetDensity(PDEFoamDensityBase *dens) { fDistr = dens; }
element (TVectorD*)
void SetVolumeFraction(Float_t vfr){fVolFrac = vfr;} // set VolFrac
void SetFoamType(EFoamType ft); // set foam type
void SetFillFoamWithOrigWeights(Bool_t new_val){fFillFoamWithOrigWeig
hts=new_val;}
void SetDTSeparation(EDTSeparation new_val){fDTSeparation=new_val;}
void SetPeekMax(Bool_t new_val){ fPeekMax = new_val; }
// coverity[ -tainted_data_return ] // coverity[ -tainted_data_return ]
Int_t GetTotDim() const {return fDim; } // Get total dimension Int_t GetTotDim() const {return fDim; } // Get total dimension
TString GetFoamName() const {return fName; } // Get name of foam TString GetFoamName() const {return fName; } // Get name of foam
UInt_t GetNElements() const {return fNElements; } // returns number
of elements, saved on every cell
Float_t GetVolumeFraction() const {return fVolFrac;} // get VolFrac
from PDEFoam
EFoamType GetFoamType() const {return fFoamType;}; // get foam t
ype
UInt_t GetNActiveCells() const {return fNoAct;}; // returns numbe r of active cells UInt_t GetNActiveCells() const {return fNoAct;}; // returns numbe r of active cells
UInt_t GetNInActiveCells() const {return GetNCells()-GetNActiveCell s();}; // returns number of not active cells UInt_t GetNInActiveCells() const {return GetNCells()-GetNActiveCell s();}; // returns number of not active cells
UInt_t GetNCells() const {return fNCells;}; // returns nu mber of cells UInt_t GetNCells() const {return fNCells;}; // returns nu mber of cells
PDEFoamCell* GetRootCell() const {return fCells[0];}; // get pointe r to root cell PDEFoamCell* GetRootCell() const {return fCells[0];}; // get pointe r to root cell
// Getters and Setters for user cut options // Getters and Setters for user cut options
void SetNmin(UInt_t val) { fNmin=val; } void SetNmin(UInt_t val) { fNmin=val; }
UInt_t GetNmin() { return fNmin; } UInt_t GetNmin() { return fNmin; }
Bool_t GetFillFoamWithOrigWeights() const { return fFillFoamWithOri gWeights; }
void SetMaxDepth(UInt_t maxdepth) { fMaxDepth = maxdepth; } void SetMaxDepth(UInt_t maxdepth) { fMaxDepth = maxdepth; }
UInt_t GetMaxDepth() const { return fMaxDepth; } UInt_t GetMaxDepth() const { return fMaxDepth; }
// Getters and Setters for foam boundaries // Getters and Setters for foam boundaries
void SetXmin(Int_t idim, Double_t wmin); void SetXmin(Int_t idim, Double_t wmin);
void SetXmax(Int_t idim, Double_t wmax); void SetXmax(Int_t idim, Double_t wmax);
Double_t GetXmin(Int_t idim) const {return fXmin[idim];} Double_t GetXmin(Int_t idim) const {return fXmin[idim];}
Double_t GetXmax(Int_t idim) const {return fXmax[idim];} Double_t GetXmax(Int_t idim) const {return fXmax[idim];}
// Getters and Setters for variable names // Getters and Setters for variable names
skipping to change at line 287 skipping to change at line 253
TObjString* GetVariableName(Int_t idx) {return dynamic_cast<TObjStrin g*>(fVariableNames->At(idx));} TObjString* GetVariableName(Int_t idx) {return dynamic_cast<TObjStrin g*>(fVariableNames->At(idx));}
// Delete the fDistr object, which contains the binary search // Delete the fDistr object, which contains the binary search
// tree // tree
void DeleteBinarySearchTree(); void DeleteBinarySearchTree();
// ---------- Transformation functions for event variables into foam boundaries // ---------- Transformation functions for event variables into foam boundaries
// reason: foam allways has boundaries [0, 1] // reason: foam allways has boundaries [0, 1]
Float_t VarTransform(Int_t idim, Float_t x) const; // transform [xmin , xmax] --> [0, 1] Float_t VarTransform(Int_t idim, Float_t x) const; // transform [xmin , xmax] --> [0, 1]
std::vector<Float_t> VarTransform(std::vector<Float_t> &invec) const; std::vector<Float_t> VarTransform(const std::vector<Float_t> &invec) const;
Float_t VarTransformInvers(Int_t idim, Float_t x) const; // transform [0, 1] --> [xmin, xmax] Float_t VarTransformInvers(Int_t idim, Float_t x) const; // transform [0, 1] --> [xmin, xmax]
std::vector<Float_t> VarTransformInvers(std::vector<Float_t> &invec) const; std::vector<Float_t> VarTransformInvers(const std::vector<Float_t> &i nvec) const;
// ---------- Debug functions // ---------- Debug functions
void CheckAll(Int_t); // Checks correctness of the entire data s tructure in the FOAM object void CheckAll(Int_t); // Checks correctness of the entire data s tructure in the FOAM object
void PrintCell(Long_t iCell=0); // Print content of cell void PrintCell(Long_t iCell=0); // Print content of cell
void PrintCells(); // Prints content of all cells void PrintCells(); // Prints content of all cells
void CheckCells(Bool_t remove_empty_cells=false); // check all
cells with respect to critical values
void RemoveEmptyCell(Int_t iCell); // removes iCell if its volume
is zero
void PrintCellElements(); // print all cells with its el
ements
// Message logger // Message logger
MsgLogger& Log() const { return *fLogger; } MsgLogger& Log() const { return *fLogger; }
// ---------- Foam output
friend std::ostream& operator<< ( std::ostream& os, const PDEFoam& pd
efoam );
friend std::istream& operator>> ( std::istream& istr, PDEFoam& pd
efoam );
void ReadStream(istream &); // read foam from stream
void PrintStream(ostream &) const; // write foam from stream
void ReadXML( void* parent ); // read foam variables from xml
void AddXMLTo( void* parent ); // write foam variables to xml
// ---------- Foam projection methods // ---------- Foam projection methods
// project foam to two-dimensional histogram // project foam to two-dimensional histogram
TH2D* Project2(Int_t idim1, Int_t idim2, const char *opt="cell_value" virtual TH2D* Project2(Int_t idim1, Int_t idim2, ECellValue cell_valu
, e=kValue,
const char *ker="kNone", UInt_t maxbins=50); PDEFoamKernelBase *kernel=NULL, UInt_t maxbins=
50);
// helper function for Project2()
Double_t GetProjectionCellValue( PDEFoamCell* cell,
Int_t idim1, Int_t idim2, ECellValue
cv );
// Project one-dimensional foam to a 1-dim histogram // Project one-dimensional foam to a 1-dim histogram
TH1D* Draw1Dim(const char *opt, Int_t nbin); TH1D* Draw1Dim(ECellValue cell_value, Int_t nbin, PDEFoamKernelBase * kernel=NULL);
// Generates C++ code (root macro) for drawing foam with boxes (only 2-dim!) // Generates C++ code (root macro) for drawing foam with boxes (only 2-dim!)
void RootPlot2dim( const TString& filename, TString opt, void RootPlot2dim( const TString& filename, TString opt,
Bool_t CreateCanvas = kTRUE, Bool_t colors = kTRUE Bool_t CreateCanvas = kTRUE, Bool_t colors = kTRUE
, );
Bool_t log_colors = kFALSE );
// ---------- Foam evaluation functions // ---------- Foam evaluation functions
// get cell value for a given event // get cell value for a given event
Double_t GetCellValue(std::vector<Float_t>&, ECellValue); virtual Float_t GetCellValue( const std::vector<Float_t>& xvec, ECell
Value cv, PDEFoamKernelBase* );
// helper functions to access cell data with kernel
Double_t GetCellDiscr(std::vector<Float_t> &xvec, EKernel kernel=kNon
e);
Double_t GetCellDensity(std::vector<Float_t> &xvec, EKernel kernel=kN
one);
// calc mean cell value of neighbor cells // get cell values for a given (incomplete) event vector
Double_t GetAverageNeighborsValue(std::vector<Float_t> &txvec, ECellV virtual std::vector<Float_t> GetCellValue( const std::map<Int_t,Float
alue cv); _t>& xvec, ECellValue cv );
// returns regression value (mono target regression) // get cell value stored in a foam cell
Double_t GetCellRegValue0(std::vector<Float_t>&, EKernel kernel=kNone virtual Float_t GetCellValue( const PDEFoamCell* cell, ECellValue cv
); );
// returns regression value i, given all variables (multi target regr // ---------- friend classes
ession) friend class PDEFoamKernelBase;
std::vector<Float_t> GetProjectedRegValue(std::vector<Float_t> &vals, friend class PDEFoamKernelTrivial;
EKernel kernel=kNone, ETargetSelection ts=kMean); friend class PDEFoamKernelLinN;
friend class PDEFoamKernelGauss;
// ---------- ROOT class definition // ---------- ROOT class definition
ClassDef(PDEFoam,5) // Tree of PDEFoamCells ClassDef(PDEFoam,6) // Tree of PDEFoamCells
}; // end of PDEFoam }; // end of PDEFoam
} // namespace TMVA } // namespace TMVA
// ---------- Inline functions // ---------- Inline functions
//_____________________________________________________________________ //_____________________________________________________________________
inline Float_t TMVA::PDEFoam::VarTransform(Int_t idim, Float_t x) const inline Float_t TMVA::PDEFoam::VarTransform(Int_t idim, Float_t x) const
{ {
// transform variable x from [xmin, xmax] --> [0, 1] // transform variable x from [xmin, xmax] --> [0, 1]
return (x-fXmin[idim])/(fXmax[idim]-fXmin[idim]); return (x-fXmin[idim])/(fXmax[idim]-fXmin[idim]);
} }
//_____________________________________________________________________ //_____________________________________________________________________
inline std::vector<Float_t> TMVA::PDEFoam::VarTransform(std::vector<Float_t > &invec) const inline std::vector<Float_t> TMVA::PDEFoam::VarTransform(const std::vector<F loat_t> &invec) const
{ {
// transform vector invec from [xmin, xmax] --> [0, 1] // transform vector invec from [xmin, xmax] --> [0, 1]
std::vector<Float_t> outvec; std::vector<Float_t> outvec;
for(UInt_t i=0; i<invec.size(); i++) for(UInt_t i=0; i<invec.size(); i++)
outvec.push_back(VarTransform(i, invec.at(i))); outvec.push_back(VarTransform(i, invec.at(i)));
return outvec; return outvec;
} }
//_____________________________________________________________________ //_____________________________________________________________________
inline Float_t TMVA::PDEFoam::VarTransformInvers(Int_t idim, Float_t x) con st inline Float_t TMVA::PDEFoam::VarTransformInvers(Int_t idim, Float_t x) con st
{ {
// transform variable x from [0, 1] --> [xmin, xmax] // transform variable x from [0, 1] --> [xmin, xmax]
return x*(fXmax[idim]-fXmin[idim]) + fXmin[idim]; return x*(fXmax[idim]-fXmin[idim]) + fXmin[idim];
} }
//_____________________________________________________________________ //_____________________________________________________________________
inline std::vector<Float_t> TMVA::PDEFoam::VarTransformInvers(std::vector<F loat_t> &invec) const inline std::vector<Float_t> TMVA::PDEFoam::VarTransformInvers(const std::ve ctor<Float_t> &invec) const
{ {
// transform vector invec from [0, 1] --> [xmin, xmax] // transform vector invec from [0, 1] --> [xmin, xmax]
std::vector<Float_t> outvec; std::vector<Float_t> outvec;
for(UInt_t i=0; i<invec.size(); i++) for(UInt_t i=0; i<invec.size(); i++)
outvec.push_back(VarTransformInvers(i, invec.at(i))); outvec.push_back(VarTransformInvers(i, invec.at(i)));
return outvec; return outvec;
} }
#endif #endif
 End of changes. 42 change blocks. 
158 lines changed or deleted 91 lines changed or added


 PDEFoamCell.h   PDEFoamCell.h 
// @(#)root/tmva $Id: PDEFoamCell.h 38475 2011-03-17 10:46:00Z evt $
// Author: S. Jadach, Tancredi Carli, Dominik Dannheim, Alexander Voigt
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Classes: PDEFoamCell * * Classes: PDEFoamCell *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Objects of this class are hyperrectangular cells organized in * * Objects of this class are hyperrectangular cells organized in *
* the binary tree. Special algoritm for encoding relalive * * the binary tree. Special algoritm for encoding relalive *
* positioning of the cells saves total memory allocation needed * * positioning of the cells saves total memory allocation needed *
* for the system of cells. * * for the system of cells. *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* S. Jadach - Institute of Nuclear Physics, Cracow, Poland * * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
* Tancredi Carli - CERN, Switzerland * * Tancredi Carli - CERN, Switzerland *
* Dominik Dannheim - CERN, Switzerland * * Dominik Dannheim - CERN, Switzerland *
* Alexander Voigt - CERN, Switzerland * * Alexander Voigt - TU Dresden, Germany *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2008: *
* CERN, Switzerland * * CERN, Switzerland *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
skipping to change at line 106 skipping to change at line 108
void SetStat(Int_t Stat){ fStatus=Stat;} // Set Status void SetStat(Int_t Stat){ fStatus=Stat;} // Set Status
PDEFoamCell* GetPare() const { return (PDEFoamCell*) fParent.GetObjec t(); } // Get Pointer to parent cell PDEFoamCell* GetPare() const { return (PDEFoamCell*) fParent.GetObjec t(); } // Get Pointer to parent cell
PDEFoamCell* GetDau0() const { return (PDEFoamCell*) fDaught0.GetObje ct(); } // Get Pointer to 1-st daughter vertex PDEFoamCell* GetDau0() const { return (PDEFoamCell*) fDaught0.GetObje ct(); } // Get Pointer to 1-st daughter vertex
PDEFoamCell* GetDau1() const { return (PDEFoamCell*) fDaught1.GetObje ct(); } // Get Pointer to 2-nd daughter vertex PDEFoamCell* GetDau1() const { return (PDEFoamCell*) fDaught1.GetObje ct(); } // Get Pointer to 2-nd daughter vertex
void SetDau0(PDEFoamCell* Daug){ fDaught0 = Daug;} // Set point er to 1-st daughter void SetDau0(PDEFoamCell* Daug){ fDaught0 = Daug;} // Set point er to 1-st daughter
void SetDau1(PDEFoamCell* Daug){ fDaught1 = Daug;} // Set point er to 2-nd daughter void SetDau1(PDEFoamCell* Daug){ fDaught1 = Daug;} // Set point er to 2-nd daughter
void SetPare(PDEFoamCell* Pare){ fParent = Pare;} // Set point er to parent void SetPare(PDEFoamCell* Pare){ fParent = Pare;} // Set point er to parent
void SetSerial(Int_t Serial){ fSerial=Serial;} // Set serial number void SetSerial(Int_t Serial){ fSerial=Serial;} // Set serial number
Int_t GetSerial() const { return fSerial;} // Get serial number Int_t GetSerial() const { return fSerial;} // Get serial number
UInt_t GetDepth(); // Get depth i n binary tree UInt_t GetDepth(); // Get depth i n binary tree
UInt_t GetTreeDepth(UInt_t depth=0); // Get depth o f binary tree
//--- other --- //--- other ---
void Print(Option_t *option) const ; // Prints cell content void Print(Option_t *option) const ; // Prints cell content
//--- getter and setter for user variable --- //--- getter and setter for user variable ---
void SetElement(TObject* fobj){ fElement = fobj; } // Set user va riable void SetElement(TObject* fobj){ fElement = fobj; } // Set user va riable
TObject* GetElement() const { return fElement; } // Get pointer to user varibale TObject* GetElement() const { return fElement; } // Get pointer to user varibale
///////////////////////////////////////////////////////////////////// /////// ///////////////////////////////////////////////////////////////////// ///////
ClassDef(PDEFoamCell,1) //Single cell of FOAM ClassDef(PDEFoamCell,2) //Single cell of FOAM
}; // end of PDEFoamCell }; // end of PDEFoamCell
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 4 change blocks. 
2 lines changed or deleted 5 lines changed or added


 PDEFoamVect.h   PDEFoamVect.h 
// @(#)root/tmva $Id: PDEFoamVect.h 38475 2011-03-17 10:46:00Z evt $
// Author: S. Jadach, Tancredi Carli, Dominik Dannheim, Alexander Voigt
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Classes: PDEFoamVect * * Classes: PDEFoamVect *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Auxiliary class PDEFoamVect of n-dimensional vector, with dynamic * * Auxiliary class PDEFoamVect of n-dimensional vector, with dynamic *
* allocation used for the cartesian geometry of the PDEFoam cells * * allocation used for the cartesian geometry of the PDEFoam cells *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* S. Jadach - Institute of Nuclear Physics, Cracow, Poland * * S. Jadach - Institute of Nuclear Physics, Cracow, Poland *
* Tancredi Carli - CERN, Switzerland * * Tancredi Carli - CERN, Switzerland *
* Dominik Dannheim - CERN, Switzerland * * Dominik Dannheim - CERN, Switzerland *
* Alexander Voigt - CERN, Switzerland * * Alexander Voigt - TU Dresden, Germany *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2008: *
* CERN, Switzerland * * CERN, Switzerland *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
skipping to change at line 66 skipping to change at line 68
////////////////////////// OTHER METHODS /////////////////////// /////////// ////////////////////////// OTHER METHODS /////////////////////// ///////////
PDEFoamVect& operator+=( const PDEFoamVect& ); // +=; add vector u+ =v (FAST) PDEFoamVect& operator+=( const PDEFoamVect& ); // +=; add vector u+ =v (FAST)
PDEFoamVect& operator-=( const PDEFoamVect& ); // +=; add vector u+ =v (FAST) PDEFoamVect& operator-=( const PDEFoamVect& ); // +=; add vector u+ =v (FAST)
PDEFoamVect& operator*=( const Double_t& ); // *=; mult. by scal ar v*=x (FAST) PDEFoamVect& operator*=( const Double_t& ); // *=; mult. by scal ar v*=x (FAST)
PDEFoamVect operator+ ( const PDEFoamVect& ); // +; u=v+s, NEVER USE IT, SLOW!!! PDEFoamVect operator+ ( const PDEFoamVect& ); // +; u=v+s, NEVER USE IT, SLOW!!!
PDEFoamVect operator- ( const PDEFoamVect& ); // -; u=v-s, NEVER USE IT, SLOW!!! PDEFoamVect operator- ( const PDEFoamVect& ); // -; u=v-s, NEVER USE IT, SLOW!!!
void Print(Option_t *option) const; // Prints vector void Print(Option_t *option) const; // Prints vector
Int_t GetDim() const { return fDim; } // Returns dimension Int_t GetDim() const { return fDim; } // Returns dimension
Double_t GetCoord(Int_t i) const { return fCoords[i]; } // Return s coordinate Double_t GetCoord(Int_t i) const { return fCoords[i]; } // Return s coordinate
ClassDef(PDEFoamVect,1) //n-dimensional vector with dynamical allocat ion ClassDef(PDEFoamVect,2) //n-dimensional vector with dynamical allocat ion
}; // end of PDEFoamVect }; // end of PDEFoamVect
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 3 change blocks. 
2 lines changed or deleted 4 lines changed or added


 PDF.h   PDF.h 
// @(#)root/tmva $Id: PDF.h 33928 2010-06-15 16:19:31Z stelzer $ // @(#)root/tmva $Id: PDF.h 38609 2011-03-24 16:06:32Z evt $
// Author: Asen Christov, Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai V // Author: Asen Christov, Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai V
oss oss , Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : PDF * * Class : PDF *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* PDF wrapper for histograms; uses user-defined spline interpolation * * PDF wrapper for histograms; uses user-defined spline interpolation *
* and kernel density estimation * * and kernel density estimation *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Asen Christov <christov@physik.uni-freiburg.de> - Freiburg U., Ge rmany * * Asen Christov <christov@physik.uni-freiburg.de> - Freiburg U., Ge rmany *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* Freiburg U., Germany * * Freiburg U., Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_PDF #ifndef ROOT_TMVA_PDF
#define ROOT_TMVA_PDF #define ROOT_TMVA_PDF
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 88 skipping to change at line 90
explicit PDF( const TString& name, const TH1* theHist, explicit PDF( const TString& name, const TH1* theHist,
KDEKernel::EKernelType ktype, KDEKernel::EKernelIter ki ter, KDEKernel::EKernelBorder KDEKernel::EKernelType ktype, KDEKernel::EKernelIter ki ter, KDEKernel::EKernelBorder
kborder, Float_t FineFactor, Bool_t norm=kTRUE ); kborder, Float_t FineFactor, Bool_t norm=kTRUE );
explicit PDF( const TString& name, const TString& options, const TStr ing& suffix = "", PDF* defaultPDF = 0, Bool_t norm=kTRUE); explicit PDF( const TString& name, const TString& options, const TStr ing& suffix = "", PDF* defaultPDF = 0, Bool_t norm=kTRUE);
virtual ~PDF(); virtual ~PDF();
//creates the pdf after the definitions have been stored in //creates the pdf after the definitions have been stored in
void BuildPDF (const TH1* theHist); void BuildPDF (const TH1* theHist);
// returns probability density at given abscissa // returns probability density at given abscissa
Double_t GetVal( Double_t x ) const; Double_t GetVal ( Double_t x ) const;
Double_t GetValInverse( Double_t y, Bool_t isMonotonouslyIncreasingFu
nction=kFALSE ) const;
void AddXMLTo( void* parent ); void AddXMLTo( void* parent );
void ReadXML( void* pdfnode ); void ReadXML( void* pdfnode );
// histogram underlying the PDF // histogram underlying the PDF
TH1* GetPDFHist() const { return fPDFHist; } TH1* GetPDFHist() const { return fPDFHist; }
TH1* GetOriginalHist() const { return fHistOriginal; } TH1* GetOriginalHist() const { return fHistOriginal; }
TH1* GetSmoothedHist() const { return fHist; } TH1* GetSmoothedHist() const { return fHist; }
TH1* GetNSmoothHist() const { return fNSmoothHist; } TH1* GetNSmoothHist() const { return fNSmoothHist; }
skipping to change at line 147 skipping to change at line 150
void FillHistToGraph(); void FillHistToGraph();
Double_t GetIntegral() const; Double_t GetIntegral() const;
Double_t GetPdfHistBinWidth() const { Double_t GetPdfHistBinWidth() const {
TH1* h = GetPDFHist(); TH1* h = GetPDFHist();
return (fPDFHist) ? (h->GetXaxis()->GetXmax() - h->GetXaxis()->Get Xmin())/h->GetNbinsX() : 1; return (fPDFHist) ? (h->GetXaxis()->GetXmax() - h->GetXaxis()->Get Xmin())/h->GetNbinsX() : 1;
} }
// do we use the original histogram as reference ? // do we use the original histogram as reference ?
Bool_t UseHistogram() const { return fUseHistogram; } Bool_t UseHistogram() const { return fUseHistogram; }
void FindBinInverse( const TH1* histogram, Int_t& lowerBin, Int_t& hi
gherBin, Double_t& lowerBinValue, Double_t& higherBinValue,
Double_t y, Bool_t isMonotonouslyIncreasingFuncti
on=kFALSE ) const;
void BuildSplinePDF(); void BuildSplinePDF();
// flag that indicates that no splines are produced and no smoothing // flag that indicates that no splines are produced and no smoothing
// is applied, i.e., the original histogram is used as reference // is applied, i.e., the original histogram is used as reference
// this is useful for discrete variables // this is useful for discrete variables
Bool_t fUseHistogram; // spline0 uses histogram as reference Bool_t fUseHistogram; // spline0 uses histogram as reference
// static configuration variables ---------------------------- // static configuration variables ----------------------------
// to increase computation speed, the final PDF is filled in // to increase computation speed, the final PDF is filled in
// a high-binned histogram; "GetValue" then returns the histogram // a high-binned histogram; "GetValue" then returns the histogram
 End of changes. 6 change blocks. 
5 lines changed or deleted 14 lines changed or added


 ParameterSettings.h   ParameterSettings.h 
// @(#)root/mathcore:$Id: ParameterSettings.h 25486 2008-09-22 12:43:03Z mo neta $ // @(#)root/mathcore:$Id: ParameterSettings.h 37706 2011-01-05 08:54:28Z mo neta $
// Author: L. Moneta Thu Sep 21 16:21:48 2006 // Author: L. Moneta Thu Sep 21 16:21:48 2006
/********************************************************************** /**********************************************************************
* * * *
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * * Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT *
* * * *
* * * *
**********************************************************************/ **********************************************************************/
// Header file for class ParameterSettings // Header file for class ParameterSettings
skipping to change at line 104 skipping to change at line 104
/// copy constructor and assignment operators (leave them to the compile r) /// copy constructor and assignment operators (leave them to the compile r)
public: public:
/// return parameter value /// return parameter value
double Value() const { return fValue; } double Value() const { return fValue; }
/// return step size /// return step size
double StepSize() const { return fStepSize; } double StepSize() const { return fStepSize; }
/// return lower limit value /// return lower limit value
double LowerLimit() const {return fLowerLimit;} double LowerLimit() const {return fLowerLimit;}
/// return lower limit value /// return upper limit value
double UpperLimit() const {return fUpperLimit;} double UpperLimit() const {return fUpperLimit;}
/// check if is fixed /// check if is fixed
bool IsFixed() const { return fFix; } bool IsFixed() const { return fFix; }
/// check if parameter has lower limit /// check if parameter has lower limit
bool HasLowerLimit() const {return fHasLowerLimit; } bool HasLowerLimit() const {return fHasLowerLimit; }
/// check if parameter has upper limit /// check if parameter has upper limit
bool HasUpperLimit() const {return fHasUpperLimit; } bool HasUpperLimit() const {return fHasUpperLimit; }
/// check if is bound /// check if is bound
bool IsBound() const { return fHasLowerLimit || fHasUpperLimit; } bool IsBound() const { return fHasLowerLimit || fHasUpperLimit; }
/// check if is double bound (upper AND lower limit) /// check if is double bound (upper AND lower limit)
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 PiecewiseInterpolation.h   PiecewiseInterpolation.h 
skipping to change at line 16 skipping to change at line 16
* WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
* DK, David Kirkby, UC Irvine, dkirkby@uci.edu * * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
* * * *
* Copyright (c) 2000-2005, Regents of the University of California * * Copyright (c) 2000-2005, Regents of the University of California *
* and Stanford University. All rights reserved. * * and Stanford University. All rights reserved. *
* * * *
* Redistribution and use in source and binary forms, * * Redistribution and use in source and binary forms, *
* with or without modification, are permitted according to the terms * * with or without modification, are permitted according to the terms *
* listed in LICENSE (http://roofit.sourceforge.net/license.txt) * * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
************************************************************************** ***/ ************************************************************************** ***/
#ifndef ROO_ADDITION #ifndef ROO_PIECEWISEINTERPOLATION
#define ROO_ADDITION #define ROO_PIECEWISEINTERPOLATION
#include "RooAbsReal.h" #include "RooAbsReal.h"
#include "RooRealProxy.h" #include "RooRealProxy.h"
#include "RooListProxy.h" #include "RooListProxy.h"
#include "RooObjCacheManager.h"
class RooRealVar; class RooRealVar;
class RooArgList ; class RooArgList ;
class PiecewiseInterpolation : public RooAbsReal { class PiecewiseInterpolation : public RooAbsReal {
public: public:
PiecewiseInterpolation() ; PiecewiseInterpolation() ;
PiecewiseInterpolation(const char *name, const char *title, const RooAbsR eal& nominal, const RooArgList& lowSet, const RooArgList& highSet, const Ro oArgList& paramSet, Bool_t takeOwnerShip=kFALSE) ; PiecewiseInterpolation(const char *name, const char *title, const RooAbsR eal& nominal, const RooArgList& lowSet, const RooArgList& highSet, const Ro oArgList& paramSet, Bool_t takeOwnerShip=kFALSE) ;
virtual ~PiecewiseInterpolation() ; virtual ~PiecewiseInterpolation() ;
skipping to change at line 44 skipping to change at line 46
virtual TObject* clone(const char* newname) const { return new PiecewiseI nterpolation(*this, newname); } virtual TObject* clone(const char* newname) const { return new PiecewiseI nterpolation(*this, newname); }
// virtual Double_t defaultErrorLevel() const ; // virtual Double_t defaultErrorLevel() const ;
// void printMetaArgs(ostream& os) const ; // void printMetaArgs(ostream& os) const ;
const RooArgList& lowList() const { return _lowSet ; } const RooArgList& lowList() const { return _lowSet ; }
const RooArgList& highList() const { return _highSet ; } const RooArgList& highList() const { return _highSet ; }
const RooArgList& paramList() const { return _paramSet ; } const RooArgList& paramList() const { return _paramSet ; }
virtual Bool_t forceAnalyticalInt(const RooAbsArg&) const { return kTRUE
; }
Int_t getAnalyticalIntegralWN(RooArgSet& allVars, RooArgSet& analVars, co
nst RooArgSet* normSet,const char* rangeName=0) const ;
Double_t analyticalIntegralWN(Int_t code, const RooArgSet* normSet, const
char* rangeName=0) const ;
void setPositiveDefinite(bool flag=true){_positiveDefinite=flag;}
protected: protected:
class CacheElem : public RooAbsCacheElement {
public:
CacheElem() {} ;
virtual ~CacheElem() {} ;
virtual RooArgList containedArgs(Action) {
RooArgList ret(_funcIntList) ;
ret.add(_lowIntList);
ret.add(_highIntList);
return ret ;
}
RooArgList _funcIntList ;
RooArgList _lowIntList ;
RooArgList _highIntList ;
// will want vector<RooRealVar*> for low and high also
} ;
mutable RooObjCacheManager _normIntMgr ; // The integration cache manager
RooRealProxy _nominal; // The nominal value RooRealProxy _nominal; // The nominal value
RooArgList _ownedList ; // List of owned components RooArgList _ownedList ; // List of owned components
RooListProxy _lowSet ; // Low-side variation RooListProxy _lowSet ; // Low-side variation
RooListProxy _highSet ; // High-side varaition RooListProxy _highSet ; // High-side varaition
RooListProxy _paramSet ; // interpolation parameters RooListProxy _paramSet ; // interpolation parameters
mutable TIterator* _paramIter ; //! Iterator over paramSet mutable TIterator* _paramIter ; //! Iterator over paramSet
mutable TIterator* _lowIter ; //! Iterator over lowSet mutable TIterator* _lowIter ; //! Iterator over lowSet
mutable TIterator* _highIter ; //! Iterator over highSet mutable TIterator* _highIter ; //! Iterator over highSet
Bool_t _positiveDefinite; // protect against negative and 0 bins.
Double_t evaluate() const; Double_t evaluate() const;
ClassDef(PiecewiseInterpolation,1) // Sum of RooAbsReal objects ClassDef(PiecewiseInterpolation,2) // Sum of RooAbsReal objects
}; };
#endif #endif
 End of changes. 6 change blocks. 
3 lines changed or deleted 32 lines changed or added


 ProfileLikelihoodTestStat.h   ProfileLikelihoodTestStat.h 
// @(#)root/roostats:$Id: ProfileLikelihoodTestStat.h 36602 2010-11-11 16:5 2:13Z moneta $ // @(#)root/roostats:$Id: ProfileLikelihoodTestStat.h 38599 2011-03-24 08:3 7:05Z moneta $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_ProfileLikelihoodTestStat #ifndef ROOSTATS_ProfileLikelihoodTestStat
skipping to change at line 63 skipping to change at line 63
class ProfileLikelihoodTestStat : public TestStatistic{ class ProfileLikelihoodTestStat : public TestStatistic{
public: public:
ProfileLikelihoodTestStat() { ProfileLikelihoodTestStat() {
// Proof constructor. Do not use. // Proof constructor. Do not use.
fPdf = 0; fPdf = 0;
fProfile = 0; fProfile = 0;
fNll = 0; fNll = 0;
fCachedBestFitParams = 0; fCachedBestFitParams = 0;
fLastData = 0; fLastData = 0;
fOneSided = false;
} }
ProfileLikelihoodTestStat(RooAbsPdf& pdf) { ProfileLikelihoodTestStat(RooAbsPdf& pdf) {
fPdf = &pdf; fPdf = &pdf;
fProfile = 0; fProfile = 0;
fNll = 0; fNll = 0;
fCachedBestFitParams = 0; fCachedBestFitParams = 0;
fLastData = 0; fLastData = 0;
fOneSided = false;
} }
virtual ~ProfileLikelihoodTestStat() { virtual ~ProfileLikelihoodTestStat() {
// delete fRand; // delete fRand;
// delete fTestStatistic; // delete fTestStatistic;
if(fProfile) delete fProfile; if(fProfile) delete fProfile;
if(fNll) delete fNll; if(fNll) delete fNll;
if(fCachedBestFitParams) delete fCachedBestFitParams; if(fCachedBestFitParams) delete fCachedBestFitParams;
} }
void SetOneSided(Bool_t flag=true) {fOneSided = flag;}
// Main interface to evaluate the test statistic on a dataset // Main interface to evaluate the test statistic on a dataset
virtual Double_t Evaluate(RooAbsData& data, RooArgSet& paramsOfInteres t) { virtual Double_t Evaluate(RooAbsData& data, RooArgSet& paramsOfInteres t) {
if (!&data) { if (!&data) {
cout << "problem with data" << endl; cout << "problem with data" << endl;
return 0 ; return 0 ;
} }
RooRealVar* firstPOI = (RooRealVar*) paramsOfInterest.first();
double initial_mu_value = firstPOI->getVal();
//paramsOfInterest.getRealValue(firstPOI->GetName());
RooFit::MsgLevel msglevel = RooMsgService::instance().globalKillBelo w(); RooFit::MsgLevel msglevel = RooMsgService::instance().globalKillBelo w();
RooMsgService::instance().setGlobalKillBelow(RooFit::FATAL); RooMsgService::instance().setGlobalKillBelow(RooFit::FATAL);
// simple // simple
RooAbsReal* nll = fPdf->createNLL(data, RooFit::CloneData(kFALSE)); RooAbsReal* nll = fPdf->createNLL(data, RooFit::CloneData(kFALSE));
RooAbsReal* profile = nll->createProfile(paramsOfInterest); RooAbsReal* profile = nll->createProfile(paramsOfInterest);
// make sure we set the variables attached to this nll // make sure we set the variables attached to this nll
RooArgSet* attachedSet = nll->getVariables(); RooArgSet* attachedSet = nll->getVariables();
*attachedSet = paramsOfInterest; *attachedSet = paramsOfInterest;
// fPdf->setEvalErrorLoggingMode(RooAbsReal::CountErrors);
// profile->setEvalErrorLoggingMode(RooAbsReal::CountErrors);
// ((RooProfileLL*)profile)->nll().setEvalErrorLoggingMode(Roo
AbsReal::CountErrors);
// nll->setEvalErrorLoggingMode(RooAbsReal::CountErrors);
double ret = profile->getVal(); double ret = profile->getVal();
// cout <<"eval errors pdf = "<<fPdf->numEvalErrors() << endl;
// cout <<"eval errors profile = "<<profile->numEvalErrors() <
< endl;
// cout <<"eval errors profile->nll = "<<((RooProfileLL*)profi
le)->nll().numEvalErrors() << endl;
// cout <<"eval errors nll = "<<nll->numEvalErrors() << endl;
// if(profile->numEvalErrors()>0)
// cout <<"eval errors = "<<profile->numEvalErrors() <
< endl;
// paramsOfInterest.Print("v"); // paramsOfInterest.Print("v");
// cout << "ret = " << ret << endl;
if(fOneSided){
double fit_favored_mu = ((RooProfileLL*) profile)->bestFitObs().get
RealValue(firstPOI->GetName()) ;
if( fit_favored_mu > initial_mu_value)
// cout <<"fit-favored_mu, initial value" << fit_favored_mu << "
" << initial_mu_value<<endl;
ret = 0 ;
}
delete attachedSet; delete attachedSet;
delete nll; delete nll;
nll = 0; nll = 0;
delete profile; delete profile;
RooMsgService::instance().setGlobalKillBelow(msglevel); RooMsgService::instance().setGlobalKillBelow(msglevel);
// cout << "ret = " << ret << endl;
//////////////////////////////////////////////////////
// return here and forget about the following code // return here and forget about the following code
return ret; return ret;
//////////////////////////////////////////////////////////
// OLD version with some handling for local minima // OLD version with some handling for local minima
// (not used right now) // (not used right now)
/////////////////////////////////////////////////////////
bool needToRebuild = true; // try to avoid rebuilding if possible bool needToRebuild = true; // try to avoid rebuilding if possible
if (fLastData == &data) // simple pointer comparison for now (note NLL makes COPY of data) if (fLastData == &data) // simple pointer comparison for now (note NLL makes COPY of data)
needToRebuild = false; needToRebuild = false;
else fLastData = &data; // keep a copy of pointer to original data else fLastData = &data; // keep a copy of pointer to original data
// pointer comparison causing problems. See multiple datasets wit h same value of pointer // pointer comparison causing problems. See multiple datasets wit h same value of pointer
// but actually a new dataset // but actually a new dataset
needToRebuild = true; needToRebuild = true;
skipping to change at line 266 skipping to change at line 294
// const bool PValueIsRightTail(void) { return false; } // overw rites default // const bool PValueIsRightTail(void) { return false; } // overw rites default
private: private:
RooProfileLL* fProfile; RooProfileLL* fProfile;
RooAbsPdf* fPdf; RooAbsPdf* fPdf;
RooNLLVar* fNll; RooNLLVar* fNll;
const RooArgSet* fCachedBestFitParams; const RooArgSet* fCachedBestFitParams;
RooAbsData* fLastData; RooAbsData* fLastData;
// Double_t fLastMLE; // Double_t fLastMLE;
Bool_t fOneSided;
protected: protected:
ClassDef(ProfileLikelihoodTestStat,1) // implements the profile lik elihood ratio as a test statistic to be used with several tools ClassDef(ProfileLikelihoodTestStat,2) // implements the profile lik elihood ratio as a test statistic to be used with several tools
}; };
} }
#endif #endif
 End of changes. 14 change blocks. 
3 lines changed or deleted 38 lines changed or added


 RConfigOptions.h   RConfigOptions.h 
#ifndef ROOT_RConfigOptions #ifndef ROOT_RConfigOptions
#define ROOT_RConfigOptions #define ROOT_RConfigOptions
#define R__CONFIGUREOPTIONS "QTDIR=/afs/cern.ch/sw/lcg/external/qt/4.6.3/ #define R__CONFIGUREOPTIONS "QTDIR=/afs/cern.ch/sw/lcg/external/qt/4.6.3p
i686-slc5-gcc43-opt PYTHONDIR=/afs/cern.ch/sw/lcg/external/Python/2.6.5/i68 2/i686-slc5-gcc43-opt PYTHONDIR=/afs/cern.ch/sw/lcg/external/Python/2.6.5/i
6-slc5-gcc43-opt linux --fail-on-missing --enable-cintex --enable-explicitl 686-slc5-gcc43-opt linux --fail-on-missing --enable-builtin-pcre --enable-c
ink --enable-gdml --enable-genvector --enable-krb5 --enable-mathmore --enab intex --enable-explicitlink --enable-gdml --enable-genvector --enable-krb5
le-minuit2 --enable-mysql --enable-oracle --enable-python --enable-qt --ena --enable-mathmore --enable-minuit2 --enable-mysql --enable-oracle --enable-
ble-qtgsi --enable-reflex --enable-roofit --enable-table --enable-unuran -- python --enable-qt --enable-qtgsi --enable-reflex --enable-roofit --enable-
with-castor-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-g table --enable-unuran --with-castor-incdir=/afs/cern.ch/sw/lcg/external/cas
cc43-opt/usr/include/shift --with-castor-libdir=/afs/cern.ch/sw/lcg/externa tor/2.1.8-10/i686-slc5-gcc43-opt/usr/include/shift --with-castor-libdir=/af
l/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --with-cern-libdir=/afs/cern. s/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --wit
ch/sw/lcg/external/cernlib/2006a/i686-slc5-gcc43-opt/lib --with-dcap-libdir h-cern-libdir=/afs/cern.ch/sw/lcg/external/cernlib/2006a/i686-slc5-gcc43-op
=/afs/cern.ch/sw/lcg/external/dcache_client/1.9.3p1/i686-slc5-gcc43-opt/dca t/lib --with-dcap-libdir=/afs/cern.ch/sw/lcg/external/dcache_client/1.9.3p1
p/lib --with-dcap-incdir=/afs/cern.ch/sw/lcg/external/dcache_client/1.9.3p1 /i686-slc5-gcc43-opt/dcap/lib --with-dcap-incdir=/afs/cern.ch/sw/lcg/extern
/i686-slc5-gcc43-opt/dcap/include --with-fftw3-incdir=/afs/cern.ch/sw/lcg/e al/dcache_client/1.9.3p1/i686-slc5-gcc43-opt/dcap/include --with-fftw3-incd
xternal/fftw3/3.1.2/i686-slc5-gcc43-opt/include --with-fftw3-libdir=/afs/ce ir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/include --w
rn.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/lib --with-gccxml=/af ith-fftw3-libdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-o
s/cern.ch/sw/lcg/external/gccxml/0.9.0_20100114/i686-slc5-gcc43-opt/bin --w pt/lib --with-gccxml=/afs/cern.ch/sw/lcg/external/gccxml/0.9.0_20100114/i68
ith-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-2/i686-slc5-g 6-slc5-gcc43-opt/bin --with-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/g
cc43-opt/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11 fal/1.11.8-2/i686-slc5-gcc43-opt/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg
.8-2/i686-slc5-gcc43-opt/include --with-gsl-incdir=/afs/cern.ch/sw/lcg/exte /external/Grid/gfal/1.11.8-2/i686-slc5-gcc43-opt/include --with-gsl-incdir=
rnal/GSL/1.10/i686-slc5-gcc43-opt/include --with-gsl-libdir=/afs/cern.ch/sw /afs/cern.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/include --with-gs
/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/lib --with-mysql-incdir=/afs/cer l-libdir=/afs/cern.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/lib --wi
n.ch/sw/lcg/external/mysql/5.1.45/i686-slc5-gcc43-opt/include/mysql --with- th-mysql-incdir=/afs/cern.ch/sw/lcg/external/mysql/5.1.45/i686-slc5-gcc43-o
mysql-libdir=/afs/cern.ch/sw/lcg/external/mysql/5.1.45/i686-slc5-gcc43-opt/ pt/include/mysql --with-mysql-libdir=/afs/cern.ch/sw/lcg/external/mysql/5.1
lib/mysql --with-oracle-incdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1 .45/i686-slc5-gcc43-opt/lib/mysql --with-oracle-incdir=/afs/cern.ch/sw/lcg/
.0p2/i686-slc5-gcc43-opt/include --with-oracle-libdir=/afs/cern.ch/sw/lcg/e external/oracle/11.2.0.1.0p2/i686-slc5-gcc43-opt/include --with-oracle-libd
xternal/oracle/11.2.0.1.0p2/i686-slc5-gcc43-opt/lib --with-rfio-incdir=/afs ir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0p2/i686-slc5-gcc43-opt/lib
/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/include/sh --with-rfio-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-
ift --with-rfio-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-sl gcc43-opt/usr/include/shift --with-rfio-libdir=/afs/cern.ch/sw/lcg/external
c5-gcc43-opt/usr/lib --with-pythia6-libdir=/afs/cern.ch/sw/lcg/external/MCG /castor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --with-pythia6-libdir=/afs/cer
enerators/pythia6/421.2/i686-slc5-gcc43-opt/lib --with-pythia8-incdir=/afs/ n.ch/sw/lcg/external/MCGenerators/pythia6/424.2/i686-slc5-gcc43-opt/lib --w
cern.ch/sw/lcg/external/MCGenerators/pythia8/130/i686-slc5-gcc43-opt/includ ith-pythia8-incdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/145/i6
e --with-pythia8-libdir=/afs/cern.ch/sw/lcg/external/MCGenerators/pythia8/1 86-slc5-gcc43-opt/include --with-pythia8-libdir=/afs/cern.ch/sw/lcg/externa
30/i686-slc5-gcc43-opt/lib --with-gviz-incdir=/afs/cern.ch/sw/lcg/external/ l/MCGenerators/pythia8/145/i686-slc5-gcc43-opt/lib --with-gviz-incdir=/afs/
graphviz/2.24.0/i686-slc5-gcc43-opt/include/graphviz --with-gviz-libdir=/af cern.ch/sw/lcg/external/graphviz/2.24.0/i686-slc5-gcc43-opt/include/graphvi
s/cern.ch/sw/lcg/external/graphviz/2.24.0/i686-slc5-gcc43-opt/lib" z --with-gviz-libdir=/afs/cern.ch/sw/lcg/external/graphviz/2.24.0/i686-slc5
#define R__CONFIGUREFEATURES "asimage astiff builtin_afterimage builtin_ft -gcc43-opt/lib"
gl builtin_glew builtin_pcre castor cintex editline dcache exceptions expli #define R__CONFIGUREFEATURES "asimage astiff builtin_afterimage builtin_ft
citlink fftw3 gviz gdml genvector gfal krb5 ldap mathmore memstat minuit2 m gl builtin_glew builtin_pcre castor cintex editline dcache exceptions expli
ysql opengl oracle pgsql pythia8 python qt qtgsi reflex roofit rfio shadowp citlink fftw3 gviz gdml genvector gfal krb5 ldap mathmore memstat minuit2 m
w shared ssl table tmva unuran x11 xft xml xrootd thread" ysql opengl oracle pythia8 python qt qtgsi reflex roofit rfio shadowpw shar
ed ssl table tmva unuran x11 xft xml xrootd thread"
#endif #endif
 End of changes. 1 change blocks. 
40 lines changed or deleted 41 lines changed or added


 RVersion.h   RVersion.h 
skipping to change at line 17 skipping to change at line 17
* These macros can be used in the following way: * These macros can be used in the following way:
* *
* #if ROOT_VERSION_CODE >= ROOT_VERSION(2,23,4) * #if ROOT_VERSION_CODE >= ROOT_VERSION(2,23,4)
* #include <newheader.h> * #include <newheader.h>
* #else * #else
* #include <oldheader.h> * #include <oldheader.h>
* #endif * #endif
* *
*/ */
#define ROOT_RELEASE "5.28/00" #define ROOT_RELEASE "5.29/02"
#define ROOT_RELEASE_DATE "Dec 14 2010" #define ROOT_RELEASE_DATE "Apr 21 2011"
#define ROOT_RELEASE_TIME "08:34:00" #define ROOT_RELEASE_TIME "14:56:23"
#define ROOT_SVN_REVISION 37583 #define ROOT_SVN_REVISION 39003
#define ROOT_SVN_BRANCH "trunk" #define ROOT_SVN_BRANCH "trunk"
#define ROOT_VERSION_CODE 334848 #define ROOT_VERSION_CODE 335106
#define ROOT_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) #define ROOT_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
#define ROOT_FULL_VERSION_CODE 85787136
#define ROOT_FULL_VERSION(a,b,c,p) (((a) << 24) + ((b) << 16) + ((c) << 8)
+ (p))
#endif #endif
 End of changes. 3 change blocks. 
5 lines changed or deleted 8 lines changed or added


 Reader.h   Reader.h 
// @(#)root/tmva $Id: Reader.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: Reader.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ka
i Voss i Voss, Eckhard von Toerne, Jan Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Reader * * Class : Reader *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Reader class to be used in the user application to interpret the tr ained * * Reader class to be used in the user application to interpret the tr ained *
* MVAs in an analysis context * * MVAs in an analysis context *
* * * *
* Authors (alphabetical order): * * Authors (alphabetical order): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://ttmva.sourceforge.net/LICENSE) * * (http://ttmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_Reader #ifndef ROOT_TMVA_Reader
#define ROOT_TMVA_Reader #define ROOT_TMVA_Reader
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
 End of changes. 4 change blocks. 
4 lines changed or deleted 9 lines changed or added


 Results.h   Results.h 
// @(#)root/tmva $Id: Results.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: Results.h 38475 2011-03-17 10:46:00Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Results * * Class : Results *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Base-class for result-vectors * * Base-class for result-vectors *
skipping to change at line 55 skipping to change at line 55
#endif #endif
#ifndef ROOT_TMVA_Types #ifndef ROOT_TMVA_Types
#include "TMVA/Types.h" #include "TMVA/Types.h"
#endif #endif
#ifndef ROOT_TMVA_DataSetInfo #ifndef ROOT_TMVA_DataSetInfo
#include "TMVA/DataSetInfo.h" #include "TMVA/DataSetInfo.h"
#endif #endif
class TH1; class TH1;
class TGraph;
namespace TMVA { namespace TMVA {
class DataSet; class DataSet;
class MsgLogger; class MsgLogger;
class Results { class Results {
public: public:
skipping to change at line 79 skipping to change at line 80
void Store( TObject* obj, const char* alias=0 ); void Store( TObject* obj, const char* alias=0 );
void SetTreeType( Types::ETreeType type ) { fTreeType = type; } void SetTreeType( Types::ETreeType type ) { fTreeType = type; }
// getters // getters
Types::ETreeType GetTreeType() const { return fTreeType; } Types::ETreeType GetTreeType() const { return fTreeType; }
const DataSetInfo* GetDataSetInfo() const { return fDsi; } const DataSetInfo* GetDataSetInfo() const { return fDsi; }
DataSet* GetDataSet() const { return fDsi->GetDataSet( ); } DataSet* GetDataSet() const { return fDsi->GetDataSet( ); }
TList* GetStorage() const { return fStorage; } TList* GetStorage() const { return fStorage; }
TObject* GetObject(const TString & alias) const; TObject* GetObject(const TString & alias) const;
TH1* GetHist(const TString & alias) const; TH1* GetHist(const TString & alias) const;
TGraph* GetGraph(const TString & alias) const;
virtual Types::EAnalysisType GetAnalysisType() { return Types::kNoAn alysisType; } virtual Types::EAnalysisType GetAnalysisType() { return Types::kNoAn alysisType; }
// delete all stored data // delete all stored data
void Delete(); void Delete();
virtual const std::vector< Float_t >& operator [] ( Int_t ievt ) con st = 0; virtual const std::vector< Float_t >& operator [] ( Int_t ievt ) con st = 0;
private: private:
Types::ETreeType fTreeType; //! tree type for this res ult Types::ETreeType fTreeType; //! tree type for this res ult
const DataSetInfo* fDsi; //! a pointer to the datas etinfo-object const DataSetInfo* fDsi; //! a pointer to the datas etinfo-object
 End of changes. 3 change blocks. 
1 lines changed or deleted 3 lines changed or added


 ResultsMulticlass.h   ResultsMulticlass.h 
// @(#)root/tmva $Id: ResultsMulticlass.h 36966 2010-11-26 09:50:13Z evt $ // @(#)root/tmva $Id: ResultsMulticlass.h 38609 2011-03-24 16:06:32Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ja
n Therhaag
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : ResultsMulticlass * * Class : ResultsMulticlass *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Base-class for result-vectors * * Base-class for result-vectors *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland * * Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* * * *
* Copyright (c) 2006: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_ResultsMulticlass #ifndef ROOT_TMVA_ResultsMulticlass
#define ROOT_TMVA_ResultsMulticlass #define ROOT_TMVA_ResultsMulticlass
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
 End of changes. 4 change blocks. 
3 lines changed or deleted 6 lines changed or added


 RooAbsPdf.h   RooAbsPdf.h 
skipping to change at line 97 skipping to change at line 97
RooDataHist *generateBinned(const RooArgSet &whatVars, Double_t nEvents, const RooCmdArg& arg1, RooDataHist *generateBinned(const RooArgSet &whatVars, Double_t nEvents, const RooCmdArg& arg1,
const RooCmdArg& arg2=RooCmdArg::none(), const RooCmdArg& arg3=RooCmdArg::none(), const RooCmdArg& arg2=RooCmdArg::none(), const RooCmdArg& arg3=RooCmdArg::none(),
const RooCmdArg& arg4=RooCmdArg::none(), const RooCmdArg& arg5=RooCmdArg::none()) ; const RooCmdArg& arg4=RooCmdArg::none(), const RooCmdArg& arg5=RooCmdArg::none()) ;
RooDataHist *generateBinned(const RooArgSet &whatVars, RooDataHist *generateBinned(const RooArgSet &whatVars,
const RooCmdArg& arg1=RooCmdArg::none(),const RooCmdArg& arg2=RooCmdArg::none(), const RooCmdArg& arg1=RooCmdArg::none(),const RooCmdArg& arg2=RooCmdArg::none(),
const RooCmdArg& arg3=RooCmdArg::none(),const RooCmdArg& arg4=RooCmdArg::none(), const RooCmdArg& arg3=RooCmdArg::none(),const RooCmdArg& arg4=RooCmdArg::none(),
const RooCmdArg& arg5=RooCmdArg::none(),const RooCmdArg& arg6=RooCmdArg::none()) ; const RooCmdArg& arg5=RooCmdArg::none(),const RooCmdArg& arg6=RooCmdArg::none()) ;
RooDataHist *generateBinned(const RooArgSet &whatVars, Double_t nEvents, Bool_t expectedData=kFALSE, Bool_t extended=kFALSE) const; RooDataHist *generateBinned(const RooArgSet &whatVars, Double_t nEvents, Bool_t expectedData=kFALSE, Bool_t extended=kFALSE) const;
virtual RooDataSet* generateSimGlobal(const RooArgSet& whatVars, Int_t nE
vents) ;
virtual RooPlot* plotOn(RooPlot* frame, virtual RooPlot* plotOn(RooPlot* frame,
const RooCmdArg& arg1=RooCmdArg::none(), const Roo CmdArg& arg2=RooCmdArg::none(), const RooCmdArg& arg1=RooCmdArg::none(), const Roo CmdArg& arg2=RooCmdArg::none(),
const RooCmdArg& arg3=RooCmdArg::none(), const Roo CmdArg& arg4=RooCmdArg::none(), const RooCmdArg& arg3=RooCmdArg::none(), const Roo CmdArg& arg4=RooCmdArg::none(),
const RooCmdArg& arg5=RooCmdArg::none(), const Roo CmdArg& arg6=RooCmdArg::none(), const RooCmdArg& arg5=RooCmdArg::none(), const Roo CmdArg& arg6=RooCmdArg::none(),
const RooCmdArg& arg7=RooCmdArg::none(), const Roo CmdArg& arg8=RooCmdArg::none(), const RooCmdArg& arg7=RooCmdArg::none(), const Roo CmdArg& arg8=RooCmdArg::none(),
const RooCmdArg& arg9=RooCmdArg::none(), const Roo CmdArg& arg10=RooCmdArg::none() const RooCmdArg& arg9=RooCmdArg::none(), const Roo CmdArg& arg10=RooCmdArg::none()
) const { ) const {
return RooAbsReal::plotOn(frame,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8 ,arg9,arg10) ; return RooAbsReal::plotOn(frame,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8 ,arg9,arg10) ;
} }
 End of changes. 1 change blocks. 
0 lines changed or deleted 3 lines changed or added


 RooFactoryWSTool.h   RooFactoryWSTool.h 
/************************************************************************** *** /************************************************************************** ***
* Project: RooFit * * Project: RooFit *
* Package: RooFitCore * * Package: RooFitCore *
* File: $Id: RooFactoryWSTool.h 34064 2010-06-22 15:05:19Z wouter $ * File: $Id: RooFactoryWSTool.h 38906 2011-04-18 20:05:25Z wouter $
* Authors: * * Authors: *
* WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
* DK, David Kirkby, UC Irvine, dkirkby@uci.edu * * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
* * * *
* Copyright (c) 2000-2005, Regents of the University of California * * Copyright (c) 2000-2005, Regents of the University of California *
* and Stanford University. All rights reserved. * * and Stanford University. All rights reserved. *
* * * *
* Redistribution and use in source and binary forms, * * Redistribution and use in source and binary forms, *
* with or without modification, are permitted according to the terms * * with or without modification, are permitted according to the terms *
* listed in LICENSE (http://roofit.sourceforge.net/license.txt) * * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
skipping to change at line 155 skipping to change at line 155
class SpecialsIFace : public IFace { class SpecialsIFace : public IFace {
public: public:
virtual ~SpecialsIFace() {} ; virtual ~SpecialsIFace() {} ;
std::string create(RooFactoryWSTool& ft, const char* typeName, const ch ar* instanceName, std::vector<std::string> args) ; std::string create(RooFactoryWSTool& ft, const char* typeName, const ch ar* instanceName, std::vector<std::string> args) ;
} ; } ;
static void registerSpecial(const char* typeName, RooFactoryWSTool::IFace * iface) ; static void registerSpecial(const char* typeName, RooFactoryWSTool::IFace * iface) ;
void logError() { _errorCount++ ; } void logError() { _errorCount++ ; }
const char* autoClassNamePostFix() const { return _autoClassPostFix.c_str
() ; }
void setAutoClassNamePostFix(const char* pfix) { _autoClassPostFix = pfix
; }
protected: protected:
Bool_t checkSyntax(const char* arg) ; Bool_t checkSyntax(const char* arg) ;
std::string varTag(std::string& func, std::vector<std::string>& args) ; std::string varTag(std::string& func, std::vector<std::string>& args) ;
std::stack<std::string> _autoNamePrefix ; std::stack<std::string> _autoNamePrefix ;
std::map<std::string,std::string> _typeAliases ; std::map<std::string,std::string> _typeAliases ;
static void checkIndex(UInt_t index) ; static void checkIndex(UInt_t index) ;
skipping to change at line 192 skipping to change at line 195
static std::map<std::string,IFace*>& hooks() ; static std::map<std::string,IFace*>& hooks() ;
static std::map<std::string,IFace*>* _hooks ; static std::map<std::string,IFace*>* _hooks ;
RooWorkspace* _ws ; //! Associated workspace RooWorkspace* _ws ; //! Associated workspace
void clearError() { _errorCount = 0 ; } void clearError() { _errorCount = 0 ; }
Int_t errorCount() { return _errorCount ; } Int_t errorCount() { return _errorCount ; }
Int_t _errorCount ; // Error counter for a given expression processing Int_t _errorCount ; // Error counter for a given expression processing
std::string _autoClassPostFix ;
RooFactoryWSTool(const RooFactoryWSTool&) ; RooFactoryWSTool(const RooFactoryWSTool&) ;
ClassDef(RooFactoryWSTool,0) // RooFit class code and instance factory ClassDef(RooFactoryWSTool,0) // RooFit class code and instance factory
} ; } ;
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 8 lines changed or added


 RooNDKeysPdf.h   RooNDKeysPdf.h 
/************************************************************************** *** /************************************************************************** ***
* Project: RooFit * * Project: RooFit *
* Package: RooFitModels * * Package: RooFitModels *
* File: $Id: RooNDKeysPdf.h 30854 2009-10-23 15:23:44Z wouter $ * File: $Id: RooNDKeysPdf.h 37727 2011-01-06 13:56:56Z wouter $
* Authors: * * Authors: *
* Max Baak, CERN, mbaak@cern.ch * * Max Baak, CERN, mbaak@cern.ch *
* * * *
* Copyright (c) 2000-2005, Regents of the University of California * * Copyright (c) 2000-2005, Regents of the University of California *
* and Stanford University. All rights reserved. * * and Stanford University. All rights reserved. *
* * * *
* Redistribution and use in source and binary forms, * * Redistribution and use in source and binary forms, *
* with or without modification, are permitted according to the terms * * with or without modification, are permitted according to the terms *
* listed in LICENSE (http://roofit.sourceforge.net/license.txt) * * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
************************************************************************** ***/ ************************************************************************** ***/
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 RooPoisson.h   RooPoisson.h 
skipping to change at line 32 skipping to change at line 32
RooPoisson(const RooPoisson& other, const char* name=0) ; RooPoisson(const RooPoisson& other, const char* name=0) ;
virtual TObject* clone(const char* newname) const { return new RooPoisson (*this,newname); } virtual TObject* clone(const char* newname) const { return new RooPoisson (*this,newname); }
inline virtual ~RooPoisson() { } inline virtual ~RooPoisson() { }
Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, cons t char* rangeName=0) const ; Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, cons t char* rangeName=0) const ;
Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ; Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ;
Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const; Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const;
void generateEvent(Int_t code); void generateEvent(Int_t code);
void setNoRounding(bool flag = kTRUE){_noRounding = flag;}
void protectNegativeMean(bool flag = kTRUE){_protectNegative = flag;}
protected: protected:
RooRealProxy x ; RooRealProxy x ;
RooRealProxy mean ; RooRealProxy mean ;
Bool_t _noRounding ; Bool_t _noRounding ;
Bool_t _protectNegative ;
Double_t evaluate() const ; Double_t evaluate() const ;
Double_t evaluate(Double_t k) const; Double_t evaluate(Double_t k) const;
private: private:
ClassDef(RooPoisson,2) // A Poisson PDF ClassDef(RooPoisson,3) // A Poisson PDF
}; };
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 5 lines changed or added


 RooSimultaneous.h   RooSimultaneous.h 
skipping to change at line 81 skipping to change at line 81
// Backward compatibility function // Backward compatibility function
virtual RooPlot *plotOn(RooPlot *frame, Option_t* drawOptions, Double_t s caleFactor=1.0, virtual RooPlot *plotOn(RooPlot *frame, Option_t* drawOptions, Double_t s caleFactor=1.0,
ScaleType stype=Relative, const RooAbsData* projDa ta=0, const RooArgSet* projSet=0, ScaleType stype=Relative, const RooAbsData* projDa ta=0, const RooArgSet* projSet=0,
Double_t precision=1e-3, Bool_t shiftToZero=kFALSE , const RooArgSet* projDataSet=0, Double_t precision=1e-3, Bool_t shiftToZero=kFALSE , const RooArgSet* projDataSet=0,
Double_t rangeLo=0, Double_t rangeHi=0, RooCurve:: WingMode wmode=RooCurve::Extended) const; Double_t rangeLo=0, Double_t rangeHi=0, RooCurve:: WingMode wmode=RooCurve::Extended) const;
RooAbsPdf* getPdf(const char* catName) const ; RooAbsPdf* getPdf(const char* catName) const ;
const RooAbsCategoryLValue& indexCat() const { return (RooAbsCategoryLVal ue&) _indexCat.arg() ; } const RooAbsCategoryLValue& indexCat() const { return (RooAbsCategoryLVal ue&) _indexCat.arg() ; }
virtual RooDataSet* generateSimGlobal(const RooArgSet& whatVars, Int_t nE
vents) ;
protected: protected:
void initialize(RooAbsCategoryLValue& inIndexCat, std::map<std::string,Ro oAbsPdf*> pdfMap) ; void initialize(RooAbsCategoryLValue& inIndexCat, std::map<std::string,Ro oAbsPdf*> pdfMap) ;
virtual RooPlot* plotOn(RooPlot* frame, RooLinkedList& cmdList) const ; virtual RooPlot* plotOn(RooPlot* frame, RooLinkedList& cmdList) const ;
virtual void selectNormalization(const RooArgSet* depSet=0, Bool_t force= kFALSE) ; virtual void selectNormalization(const RooArgSet* depSet=0, Bool_t force= kFALSE) ;
virtual void selectNormalizationRange(const char* rangeName=0, Bool_t for ce=kFALSE) ; virtual void selectNormalizationRange(const char* rangeName=0, Bool_t for ce=kFALSE) ;
mutable RooSetProxy _plotCoefNormSet ; mutable RooSetProxy _plotCoefNormSet ;
const TNamed* _plotCoefNormRange ; const TNamed* _plotCoefNormRange ;
 End of changes. 1 change blocks. 
0 lines changed or deleted 3 lines changed or added


 RootFinder.h   RootFinder.h 
// @(#)root/tmva $Id: RootFinder.h 29195 2009-06-24 10:39:49Z brun $ // @(#)root/mathmore:$Id: RootFinder.h 33942 2010-06-16 13:12:17Z moneta $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Authors: L. Moneta, A. Zsenei 08/2005
/************************************************************************** /**********************************************************************
******** * *
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * Copyright (c) 2004 ROOT Foundation, CERN/PH-SFT *
* * *
* Package: TMVA * This library is free software; you can redistribute it and/or *
* * modify it under the terms of the GNU General Public License *
* Class : RootFinder * as published by the Free Software Foundation; either version 2 *
* * of the License, or (at your option) any later version. *
* Web : http://tmva.sourceforge.net * *
* * This library is distributed in the hope that it will be useful, *
* * but WITHOUT ANY WARRANTY; without even the implied warranty of *
* * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
* Description: * General Public License for more details. *
* * *
* Root finding using Brents algorithm * You should have received a copy of the GNU General Public License *
* * along with this library (see file COPYING); if not, write *
* (translated from CERNLIB function RZERO) * to the Free Software Foundation, Inc., 59 Temple Place, Suite *
* * 330, Boston, MA 02111-1307 USA, or contact the author. *
* * *
* **********************************************************************/
* Authors (alphabetical):
* // Header file for class RootFinder
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland //
* // Created by: moneta at Sun Nov 14 16:59:55 2004
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German //
y * // Last update: Sun Nov 14 16:59:55 2004
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada //
* #ifndef ROOT_Math_RootFinder
* #define ROOT_Math_RootFinder
*
* Copyright (c) 2005:
*
* CERN, Switzerland
*
* U. of Victoria, Canada
*
* MPI-K Heidelberg, Germany
*
*
*
* Redistribution and use in source and binary forms, with or without
*
* modification, are permitted according to the terms listed in LICENSE
*
* (http://tmva.sourceforge.net/LICENSE)
*
**************************************************************************
********/
#ifndef ROOT_TMVA_RootFinder
#define ROOT_TMVA_RootFinder
//////////////////////////////////////////////////////////////////////////
// //
// RootFinder //
// //
// Root finding using Brents algorithm //
// (translated from CERNLIB function RZERO) //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TObject #ifndef ROOT_Math_IFunctionfwd
#include "TObject.h" #include "Math/IFunctionfwd.h"
#endif #endif
namespace TMVA { #ifndef ROOT_Math_IRootFinderMethod
#include "Math/IRootFinderMethod.h"
class MsgLogger; #endif
class RootFinder : public TObject {
public:
RootFinder( Double_t (*rootVal)( Double_t ),
Double_t rootMin, Double_t rootMax,
Int_t maxIterations = 100,
Double_t absTolerance = 0.0 );
virtual ~RootFinder( void );
// returns the root of the function
Double_t Root( Double_t refValue );
private: /**
@defgroup RootFinders One-dimensional Root-Finding algorithms
Various implementation esists in MathCore and MathMore
The user interacts with a proxy class ROOT::Math::RootFinder which creat
es behing
the choosen algorithms which are implemented using the ROOT::Math::IRoot
FinderMethod interface
@ingroup NumAlgo
*/
namespace ROOT {
namespace Math {
//_________________________________________________________________________
____________
/**
User Class to find the Root of one dimensional functions.
The GSL Methods are implemented in MathMore and they are loaded au
tomatically
via the plug-in manager
The possible types of Root-finding algorithms are:
<ul>
<li>Root Bracketing Algorithms which do not require function deriv
atives
<ol>
<li>RootFinder::kBRENT (default method implemented in MathCore)
<li>RootFinder::kGSL_BISECTION
<li>RootFinder::kGSL_FALSE_POS
<li>RootFinder::kGSL_BRENT
</ol>
<li>Root Finding Algorithms using Derivatives
<ol>
<li>RootFinder::kGSL_NEWTON
<li>RootFinder::kGSL_SECANT
<li>RootFinder::kGSL_STEFFENSON
</ol>
</ul>
This class does not cupport copying
@ingroup RootFinders
*/
class RootFinder {
public:
enum EType { kBRENT, // Methods
from MathCore
kGSL_BISECTION, kGSL_FALSE_POS, kGSL_BRENT, // GSL Nor
mal
kGSL_NEWTON, kGSL_SECANT, kGSL_STEFFENSON // GSL Der
ivatives
};
/**
Construct a Root-Finder algorithm
*/
RootFinder(RootFinder::EType type = RootFinder::kBRENT);
virtual ~RootFinder();
private:
// usually copying is non trivial, so we make this unaccessible
RootFinder(const RootFinder & ) {}
RootFinder & operator = (const RootFinder & rhs)
{
if (this == &rhs) return *this; // time saving self-test
return *this;
}
public:
bool SetMethod(RootFinder::EType type = RootFinder::kBRENT);
/**
Provide to the solver the function and the initial search inter
val [xlow, xup]
for algorithms not using derivatives (bracketing algorithms)
The templated function f must be of a type implementing the \a
operator() method,
<em> double operator() ( double x ) </em>
Returns non zero if interval is not valid (i.e. does not contai
ns a root)
*/
bool SetFunction( const IGenFunction & f, double xlow, double xup)
{
return fSolver->SetFunction( f, xlow, xup);
}
/**
Provide to the solver the function and an initial estimate of t
he root,
for algorithms using derivatives.
The templated function f must be of a type implementing the \a
operator()
and the \a Gradient() methods.
<em> double operator() ( double x ) </em>
Returns non zero if starting point is not valid
*/
bool SetFunction( const IGradFunction & f, double xstart) {
return fSolver->SetFunction( f, xstart);
}
template<class Function, class Derivative>
bool Solve(Function &f, Derivative &d, double start,
int maxIter = 100, double absTol = 1E-8, double relTol =
1E-10);
template<class Function>
bool Solve(Function &f, double min, double max,
int maxIter = 100, double absTol = 1E-8, double relTol =
1E-10);
/**
Compute the roots iterating until the estimate of the Root is
within the required tolerance returning
the iteration Status
*/
bool Solve( int maxIter = 100, double absTol = 1E-8, double relTol
= 1E-10) {
return fSolver->Solve( maxIter, absTol, relTol );
}
/**
Return the number of iteration performed to find the Root.
*/
int Iterations() const {
return fSolver->Iterations();
}
/**
Perform a single iteration and return the Status
*/
int Iterate() {
return fSolver->Iterate();
}
/**
Return the current and latest estimate of the Root
*/
double Root() const {
return fSolver->Root();
}
/**
Return the status of the last estimate of the Root
= 0 OK, not zero failure
*/
int Status() const {
return fSolver->Status();
}
/**
Return the current and latest estimate of the lower value of th
e Root-finding interval (for bracketing algorithms)
*/
/* double XLower() const { */
/* return fSolver->XLower(); */
/* } */
/**
Return the current and latest estimate of the upper value of th
e Root-finding interval (for bracketing algorithms)
*/
/* double XUpper() const { */
/* return fSolver->XUpper(); */
/* } */
/**
Get Name of the Root-finding solver algorithm
*/
const char * Name() const {
return fSolver->Name();
}
protected:
private:
IRootFinderMethod* fSolver; // type of algorithm to be used
Double_t fRootMin; // minimum root value };
Double_t fRootMax; // maximum root value
Int_t fMaxIter; // maximum number of iterations
Double_t fAbsTol; // absolute tolerance deviation
// function pointer } // namespace Math
Double_t (*fGetRootVal)( Double_t ); } // namespace ROOT
mutable MsgLogger* fLogger; //! message logger #ifndef ROOT_Math_WrappedFunction
MsgLogger& Log() const { return *fLogger; } #include "Math/WrappedFunction.h"
#endif
ClassDef(RootFinder,0) // Root finding using Brents algorithm #ifndef ROOT_Math_Functor
}; #include "Math/Functor.h"
#endif
} // namespace TMVA template<class Function, class Derivative>
bool ROOT::Math::RootFinder::Solve(Function &f, Derivative &d, double start
,
int maxIter, double absTol, double relTol
)
{
if (!fSolver) return false;
ROOT::Math::GradFunctor1D wf(f, d);
bool ret = fSolver->SetFunction(wf, start);
if (!ret) return false;
return Solve(maxIter, absTol, relTol);
}
template<class Function>
bool ROOT::Math::RootFinder::Solve(Function &f, double min, double max,
int maxIter, double absTol, double relTol
)
{
if (!fSolver) return false;
ROOT::Math::WrappedFunction<Function &> wf(f);
bool ret = fSolver->SetFunction(wf, min, max);
if (!ret) return false;
return Solve(maxIter, absTol, relTol);
}
#endif #endif /* ROOT_Math_RootFinder */
 End of changes. 11 change blocks. 
92 lines changed or deleted 254 lines changed or added


 SVEvent.h   SVEvent.h 
// @(#)root/tmva $Id: SVEvent.h 37252 2010-12-04 09:57:53Z evt $ // @(#)root/tmva $Id: SVEvent.h 38719 2011-04-04 12:22:28Z evt $
// Author: Andrzej Zemla // Author: Andrzej Zemla
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : SVEvent * * Class : SVEvent *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Event class for Support Vector Machine * * Event class for Support Vector Machine *
skipping to change at line 47 skipping to change at line 47
namespace TMVA namespace TMVA
{ {
class Event; class Event;
class SVEvent { class SVEvent {
public: public:
SVEvent(); SVEvent();
SVEvent( const Event*, Float_t ); SVEvent( const Event*, Float_t, Bool_t isSignal = kFALSE );
SVEvent( const std::vector<Float_t>*, Float_t alpha, Int_t typeFlag, UInt_t ns ); SVEvent( const std::vector<Float_t>*, Float_t alpha, Int_t typeFlag, UInt_t ns );
SVEvent( const std::vector<Float_t>* svector, Float_t alpha, Float_t alpha_p, Int_t typeFlag); SVEvent( const std::vector<Float_t>* svector, Float_t alpha, Float_t alpha_p, Int_t typeFlag);
virtual ~SVEvent(); virtual ~SVEvent();
void SetAlpha ( Float_t alpha ) { fAlpha = alpha; } void SetAlpha ( Float_t alpha ) { fAlpha = alpha; }
void SetAlpha_p ( Float_t alpha ) { fAlpha_p = alpha; } void SetAlpha_p ( Float_t alpha ) { fAlpha_p = alpha; }
void SetErrorCache ( Float_t err_cache ) { fErrorCache = err_cach e; } void SetErrorCache ( Float_t err_cache ) { fErrorCache = err_cach e; }
void SetIsShrinked ( Int_t isshrinked ) { fIsShrinked = isshrink ed; } void SetIsShrinked ( Int_t isshrinked ) { fIsShrinked = isshrink ed; }
void SetLine ( Float_t* line ) { fLine = line; } void SetLine ( Float_t* line ) { fLine = line; }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 SamplingDistribution.h   SamplingDistribution.h 
// @(#)root/roostats:$Id: SamplingDistribution.h 36604 2010-11-11 16:58:54Z moneta $ // @(#)root/roostats:$Id: SamplingDistribution.h 38933 2011-04-19 20:15:51Z moneta $
/************************************************************************* /*************************************************************************
* Project: RooStats * * Project: RooStats *
* Package: RooFit/RooStats * * Package: RooFit/RooStats *
* Authors: * * Authors: *
* Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke * * Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke *
************************************************************************* *************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
skipping to change at line 66 skipping to change at line 66
// together with the inverse based on sampling variation // together with the inverse based on sampling variation
Double_t InverseCDF(Double_t pvalue, Double_t sigmaVariaton, Double_t& inverseVariation); Double_t InverseCDF(Double_t pvalue, Double_t sigmaVariaton, Double_t& inverseVariation);
// merge two sampling distributions // merge two sampling distributions
void Add(const SamplingDistribution* other); void Add(const SamplingDistribution* other);
// size of samples // size of samples
Int_t GetSize() const{return fSamplingDist.size();} Int_t GetSize() const{return fSamplingDist.size();}
// Get test statistics values // Get test statistics values
std::vector<Double_t> GetSamplingDistribution() const {return fSampling Dist;} const std::vector<Double_t> & GetSamplingDistribution() const {return f SamplingDist;}
// Get the sampling weights // Get the sampling weights
std::vector<Double_t> GetSampleWeights() const {return fSampleWeights;} const std::vector<Double_t> & GetSampleWeights() const {return fSampleW eights;}
const TString GetVarName() const {return fVarName;} const TString GetVarName() const {return fVarName;}
// numerical integral in these limits // numerical integral in these limits
Double_t Integral(Double_t low, Double_t high, Bool_t normalize = kTRUE Double_t Integral(Double_t low, Double_t high, Bool_t normalize = kTRUE
) const; , Bool_t lowClosed = kTRUE, Bool_t highClosed = kFALSE) const;
// numerical integral in these limits including error estimation
Double_t IntegralAndError(Double_t & error, Double_t low, Double_t high
, Bool_t normalize = kTRUE,
Bool_t lowClosed = kTRUE, Bool_t highClosed =
kFALSE) const;
// calculate CDF as a special case of Integral(...) with lower limit eq ual to -inf // calculate CDF as a special case of Integral(...) with lower limit eq ual to -inf
Double_t CDF(Double_t x) const; Double_t CDF(Double_t x) const;
private: private:
std::vector<Double_t> fSamplingDist; // vector of points for the sampli ng distribution std::vector<Double_t> fSamplingDist; // vector of points for the sampli ng distribution
std::vector<Double_t> fSampleWeights; // vector of weights for the samp les std::vector<Double_t> fSampleWeights; // vector of weights for the samp les
// store a RooRealVar that this distribution corresponds to? // store a RooRealVar that this distribution corresponds to?
TString fVarName; TString fVarName;
 End of changes. 4 change blocks. 
5 lines changed or deleted 11 lines changed or added


 SdivSqrtSplusB.h   SdivSqrtSplusB.h 
// @(#)root/tmva $Id: SdivSqrtSplusB.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: SdivSqrtSplusB.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : SdivSqrtSplusB * * Class : SdivSqrtSplusB *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: Implementation of the SdivSqrtSplusB as separation criterio n * * Description: Implementation of the SdivSqrtSplusB as separation criterio n *
* S/sqrt(S + B) * * S/sqrt(S + B) *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 SeparationBase.h   SeparationBase.h 
// @(#)root/tmva $Id: SeparationBase.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: SeparationBase.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : SeparationBase * * Class : SeparationBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: An interface to different separation critiera useded in var ious * * Description: An interface to different separation critiera useded in var ious *
* training algorithms, as there are: * * training algorithms, as there are: *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 SimpleLikelihoodRatioTestStat.h   SimpleLikelihoodRatioTestStat.h 
// @(#)root/roostats:$Id: SimpleLikelihoodRatioTestStat.h 36602 2010-11-11 16:52:13Z moneta $ // @(#)root/roostats:$Id: SimpleLikelihoodRatioTestStat.h 38947 2011-04-20 08:23:25Z moneta $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOSTATS_SimpleLikelihoodRatioTestStat #ifndef ROOSTATS_SimpleLikelihoodRatioTestStat
#define ROOSTATS_SimpleLikelihoodRatioTestStat #define ROOSTATS_SimpleLikelihoodRatioTestStat
skipping to change at line 33 skipping to change at line 33
#ifndef ROOT_Rtypes #ifndef ROOT_Rtypes
#include "Rtypes.h" #include "Rtypes.h"
#endif #endif
#ifndef ROO_NLL_VAR #ifndef ROO_NLL_VAR
#include "RooNLLVar.h" #include "RooNLLVar.h"
#endif #endif
#include "RooStats/TestStatistic.h" #include "RooStats/TestStatistic.h"
#include "RooWorkspace.h"
namespace RooStats { namespace RooStats {
class SimpleLikelihoodRatioTestStat : public TestStatistic { class SimpleLikelihoodRatioTestStat : public TestStatistic {
public: public:
//__________________________________ //__________________________________
SimpleLikelihoodRatioTestStat() : SimpleLikelihoodRatioTestStat() :
fNullPdf(NULL), fAltPdf(NULL) fNullPdf(NULL), fAltPdf(NULL)
skipping to change at line 157 skipping to change at line 158
RooFit::MsgLevel msglevel = RooMsgService::instance().globalKillBe low(); RooFit::MsgLevel msglevel = RooMsgService::instance().globalKillBe low();
RooMsgService::instance().setGlobalKillBelow(RooFit::FATAL); RooMsgService::instance().setGlobalKillBelow(RooFit::FATAL);
RooAbsReal *nll; RooAbsReal *nll;
nll = fNullPdf->createNLL(data, RooFit::CloneData(kFALSE)); nll = fNullPdf->createNLL(data, RooFit::CloneData(kFALSE));
// make sure we set the variables attached to this nll // make sure we set the variables attached to this nll
RooArgSet* attachedSet = nll->getVariables(); RooArgSet* attachedSet = nll->getVariables();
*attachedSet = *fNullParameters; *attachedSet = *fNullParameters;
*attachedSet = nullPOI; *attachedSet = nullPOI;
double nullNLL = nll->getVal(); double nullNLL = nll->getVal();
delete nll; delete nll;
delete attachedSet; delete attachedSet;
nll = fAltPdf->createNLL(data, RooFit::CloneData(kFALSE)); nll = fAltPdf->createNLL(data, RooFit::CloneData(kFALSE));
// make sure we set the variables attached to this nll // make sure we set the variables attached to this nll
attachedSet = nll->getVariables(); attachedSet = nll->getVariables();
*attachedSet = *fAltParameters; *attachedSet = *fAltParameters;
double altNLL = nll->getVal(); double altNLL = nll->getVal();
delete nll; delete nll;
delete attachedSet; delete attachedSet;
RooMsgService::instance().setGlobalKillBelow(msglevel); RooMsgService::instance().setGlobalKillBelow(msglevel);
return nullNLL - altNLL; return nullNLL - altNLL;
} }
virtual const TString GetVarName() const { virtual const TString GetVarName() const {
return "log(L(#mu_{1}) / L(#mu_{0}))"; return "log(L(#mu_{1}) / L(#mu_{0}))";
} }
private: private:
RooWorkspace w; RooWorkspace w;
RooAbsPdf* fNullPdf; RooAbsPdf* fNullPdf;
RooAbsPdf* fAltPdf; RooAbsPdf* fAltPdf;
RooArgSet* fNullParameters; RooArgSet* fNullParameters;
RooArgSet* fAltParameters; RooArgSet* fAltParameters;
bool fFirstEval; bool fFirstEval;
protected: protected:
ClassDef(SimpleLikelihoodRatioTestStat,1) ClassDef(SimpleLikelihoodRatioTestStat,1)
 End of changes. 5 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TAttMarker.h   TAttMarker.h 
// @(#)root/base:$Id: TAttMarker.h 27860 2009-03-18 08:36:17Z brun $ // @(#)root/base:$Id: TAttMarker.h 38648 2011-03-29 08:02:56Z couet $
// Author: Rene Brun 12/05/95 // Author: Rene Brun 12/05/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 61 skipping to change at line 61
virtual void SetMarkerSize(Size_t msize=1) { fMarkerSize = msize ;} virtual void SetMarkerSize(Size_t msize=1) { fMarkerSize = msize ;}
ClassDef(TAttMarker,2); //Marker attributes ClassDef(TAttMarker,2); //Marker attributes
}; };
enum EMarkerStyle {kDot=1, kPlus, kStar, kCircle=4, kMultiply=5, enum EMarkerStyle {kDot=1, kPlus, kStar, kCircle=4, kMultiply=5,
kFullDotSmall=6, kFullDotMedium=7, kFullDotLarge=8, kFullDotSmall=6, kFullDotMedium=7, kFullDotLarge=8,
kFullCircle=20, kFullSquare=21, kFullTriangleUp=22, kFullCircle=20, kFullSquare=21, kFullTriangleUp=22,
kFullTriangleDown=23, kOpenCircle=24, kOpenSquare=25, kFullTriangleDown=23, kOpenCircle=24, kOpenSquare=25,
kOpenTriangleUp=26, kOpenDiamond=27, kOpenCross=28, kOpenTriangleUp=26, kOpenDiamond=27, kOpenCross=28,
kFullStar=29, kOpenStar=30}; kFullStar=29, kOpenStar=30, kOpenTriangleDown=32,
kFullDiamond=33, kFullCross=34};
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 3 lines changed or added


 TBranch.h   TBranch.h 
// @(#)root/tree:$Id: TBranch.h 37168 2010-12-02 02:34:55Z pcanal $ // @(#)root/tree:$Id: TBranch.h 38801 2011-04-11 20:10:24Z pcanal $
// Author: Rene Brun 12/01/96 // Author: Rene Brun 12/01/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 37 skipping to change at line 37
#endif #endif
#ifndef ROOT_TObjArray #ifndef ROOT_TObjArray
#include "TObjArray.h" #include "TObjArray.h"
#endif #endif
#ifndef ROOT_TAttFill #ifndef ROOT_TAttFill
#include "TAttFill.h" #include "TAttFill.h"
#endif #endif
#ifndef ROOT_TDataType
#include "TDataType.h"
#endif
class TTree; class TTree;
class TBasket; class TBasket;
class TLeaf; class TLeaf;
class TBrowser; class TBrowser;
class TDirectory; class TDirectory;
class TFile; class TFile;
class TClonesArray; class TClonesArray;
const Int_t kDoNotProcess = BIT(10); // Active bit for branches const Int_t kDoNotProcess = BIT(10); // Active bit for branches
const Int_t kIsClone = BIT(11); // to indicate a TBranchClones const Int_t kIsClone = BIT(11); // to indicate a TBranchClones
const Int_t kBranchObject = BIT(12); // branch is a TObject* const Int_t kBranchObject = BIT(12); // branch is a TObject*
const Int_t kBranchAny = BIT(17); // branch is an object* const Int_t kBranchAny = BIT(17); // branch is an object*
const Int_t kMapObject = kBranchObject | kBranchAny; const Int_t kMapObject = kBranchObject | kBranchAny;
class TBranch : public TNamed , public TAttFill { class TBranch : public TNamed , public TAttFill {
protected: protected:
// TBranch status bits // TBranch status bits
enum { kAutoDelete = BIT(15) }; enum EStatusBits {
kAutoDelete = BIT(15),
kDoNotUseBufferMap = BIT(22) // If set, at least one of the entry in
the branch will use the buffer's map of classname and objects.
};
static Int_t fgCount; //! branch counter static Int_t fgCount; //! branch counter
Int_t fCompress; // (=1 branch is compressed, 0 otherwise) Int_t fCompress; // (=1 branch is compressed, 0 otherwise)
Int_t fBasketSize; // Initial Size of Basket Buffer Int_t fBasketSize; // Initial Size of Basket Buffer
Int_t fEntryOffsetLen; // Initial Length of fEntryOffset table i n the basket buffers Int_t fEntryOffsetLen; // Initial Length of fEntryOffset table i n the basket buffers
Int_t fWriteBasket; // Last basket number written Int_t fWriteBasket; // Last basket number written
Long64_t fEntryNumber; // Current entry number (last one filled in this branch) Long64_t fEntryNumber; // Current entry number (last one filled in this branch)
Int_t fOffset; // Offset of this branch Int_t fOffset; // Offset of this branch
Int_t fMaxBaskets; // Maximum number of Baskets so far Int_t fMaxBaskets; // Maximum number of Baskets so far
Int_t fNBaskets; //! Number of baskets in memory Int_t fNBaskets; //! Number of baskets in memory
Int_t fSplitLevel; // Branch split level Int_t fSplitLevel; // Branch split level
Int_t fNleaves; //! Number of leaves Int_t fNleaves; //! Number of leaves
Int_t fReadBasket; //! Current basket number when reading Int_t fReadBasket; //! Current basket number when reading
Long64_t fReadEntry; //! Current entry number when reading Long64_t fReadEntry; //! Current entry number when reading
Long64_t fFirstBasketEntry;//! First entry in the current basket.
Long64_t fNextBasketEntry; //! Next entry that will requires us to go
to the next basket
TBasket *fCurrentBasket; //! Pointer to the current basket.
Long64_t fEntries; // Number of entries Long64_t fEntries; // Number of entries
Long64_t fFirstEntry; // Number of the first entry in this bran ch Long64_t fFirstEntry; // Number of the first entry in this bran ch
Long64_t fTotBytes; // Total number of bytes in all leaves be fore compression Long64_t fTotBytes; // Total number of bytes in all leaves be fore compression
Long64_t fZipBytes; // Total number of bytes in all leaves af ter compression Long64_t fZipBytes; // Total number of bytes in all leaves af ter compression
TObjArray fBranches; //-> List of Branches of this branch TObjArray fBranches; //-> List of Branches of this branch
TObjArray fLeaves; //-> List of leaves of this branch TObjArray fLeaves; //-> List of leaves of this branch
TObjArray fBaskets; //-> List of baskets of this branch TObjArray fBaskets; //-> List of baskets of this branch
Int_t *fBasketBytes; //[fMaxBaskets] Lenght of baskets on file Int_t *fBasketBytes; //[fMaxBaskets] Lenght of baskets on file
Long64_t *fBasketEntry; //[fMaxBaskets] Table of first entry in ea ck basket Long64_t *fBasketEntry; //[fMaxBaskets] Table of first entry in ea ck basket
Long64_t *fBasketSeek; //[fMaxBaskets] Addresses of baskets on fi le Long64_t *fBasketSeek; //[fMaxBaskets] Addresses of baskets on fi le
skipping to change at line 94 skipping to change at line 104
TDirectory *fDirectory; //! Pointer to directory where this branch buffers are stored TDirectory *fDirectory; //! Pointer to directory where this branch buffers are stored
TString fFileName; // Name of file where buffers are stored ("" if in same file as Tree header) TString fFileName; // Name of file where buffers are stored ("" if in same file as Tree header)
TBuffer *fEntryBuffer; //! Buffer used to directly pass the conte nt without streaming TBuffer *fEntryBuffer; //! Buffer used to directly pass the conte nt without streaming
TList *fBrowsables; //! List of TVirtualBranchBrowsables used for Browse() TList *fBrowsables; //! List of TVirtualBranchBrowsables used for Browse()
Bool_t fSkipZip; //! After being read, the buffer will not be unziped. Bool_t fSkipZip; //! After being read, the buffer will not be unziped.
typedef void (TBranch::*ReadLeaves_t)(TBuffer &b); typedef void (TBranch::*ReadLeaves_t)(TBuffer &b);
ReadLeaves_t fReadLeaves; //! Pointer to the ReadLeaves implementati on to use. ReadLeaves_t fReadLeaves; //! Pointer to the ReadLeaves implementati on to use.
void ReadLeavesImpl(TBuffer &b); void ReadLeavesImpl(TBuffer &b);
void ReadLeaves0Impl(TBuffer &b);
void ReadLeaves1Impl(TBuffer &b);
void ReadLeaves2Impl(TBuffer &b);
void SetSkipZip(Bool_t skip = kTRUE) { fSkipZip = skip; } void SetSkipZip(Bool_t skip = kTRUE) { fSkipZip = skip; }
void Init(const char *name, const char *leaflist, Int_t compress); void Init(const char *name, const char *leaflist, Int_t compress);
TBasket *GetFreshBasket(); TBasket *GetFreshBasket();
Int_t WriteBasket(TBasket* basket, Int_t where); Int_t WriteBasket(TBasket* basket, Int_t where);
TString GetRealFileName() const; TString GetRealFileName() const;
private: private:
skipping to change at line 141 skipping to change at line 154
virtual Int_t GetBasketSize() const {return fBasketSize;} virtual Int_t GetBasketSize() const {return fBasketSize;}
virtual TList *GetBrowsables(); virtual TList *GetBrowsables();
virtual const char* GetClassName() const; virtual const char* GetClassName() const;
virtual Int_t GetCompressionLevel() const {return fCompress;} virtual Int_t GetCompressionLevel() const {return fCompress;}
TDirectory *GetDirectory() const {return fDirectory;} TDirectory *GetDirectory() const {return fDirectory;}
virtual Int_t GetEntry(Long64_t entry=0, Int_t getall = 0); virtual Int_t GetEntry(Long64_t entry=0, Int_t getall = 0);
virtual Int_t GetEntryExport(Long64_t entry, Int_t getall, TClonesAr ray *list, Int_t n); virtual Int_t GetEntryExport(Long64_t entry, Int_t getall, TClonesAr ray *list, Int_t n);
Int_t GetEntryOffsetLen() const { return fEntryOffsetLen; } Int_t GetEntryOffsetLen() const { return fEntryOffsetLen; }
Int_t GetEvent(Long64_t entry=0) {return GetEntry(entry);} Int_t GetEvent(Long64_t entry=0) {return GetEntry(entry);}
const char *GetIconName() const; const char *GetIconName() const;
virtual Int_t GetExpectedType(TClass *&clptr,EDataType &type);
virtual TLeaf *GetLeaf(const char *name) const; virtual TLeaf *GetLeaf(const char *name) const;
virtual TFile *GetFile(Int_t mode=0); virtual TFile *GetFile(Int_t mode=0);
const char *GetFileName() const {return fFileName.Data();} const char *GetFileName() const {return fFileName.Data();}
Int_t GetOffset() const {return fOffset;} Int_t GetOffset() const {return fOffset;}
Int_t GetReadBasket() const {return fReadBasket;} Int_t GetReadBasket() const {return fReadBasket;}
Long64_t GetReadEntry() const {return fReadEntry;} Long64_t GetReadEntry() const {return fReadEntry;}
Int_t GetWriteBasket() const {return fWriteBasket;} Int_t GetWriteBasket() const {return fWriteBasket;}
Long64_t GetTotalSize(Option_t *option="") const; Long64_t GetTotalSize(Option_t *option="") const;
Long64_t GetTotBytes(Option_t *option="") const; Long64_t GetTotBytes(Option_t *option="") const;
Long64_t GetZipBytes(Option_t *option="") const; Long64_t GetZipBytes(Option_t *option="") const;
 End of changes. 6 change blocks. 
2 lines changed or deleted 18 lines changed or added


 TBranchElement.h   TBranchElement.h 
// @(#)root/tree:$Id: TBranchElement.h 36061 2010-10-04 16:05:51Z pcanal $ // @(#)root/tree:$Id: TBranchElement.h 38757 2011-04-07 04:22:58Z pcanal $
// Author: Rene Brun 14/01/2001 // Author: Rene Brun 14/01/2001
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 30 skipping to change at line 30
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TBranch #ifndef ROOT_TBranch
#include "TBranch.h" #include "TBranch.h"
#endif #endif
#ifndef ROOT_TClassRef #ifndef ROOT_TClassRef
#include "TClassRef.h" #include "TClassRef.h"
#endif #endif
#ifndef ROOT_TTree
#include "TTree.h"
#endif
#ifndef ROOT_TError
#include "TError.h"
#endif
#include <vector> #include <vector>
class TFolder; class TFolder;
class TStreamerInfo; class TStreamerInfo;
class TVirtualCollectionProxy; class TVirtualCollectionProxy;
class TVirtualCollectionIterators; class TVirtualCollectionIterators;
class TVirtualCollectionPtrIterators; class TVirtualCollectionPtrIterators;
class TVirtualArray; class TVirtualArray;
namespace TStreamerInfoActions { class TActionSequence; } namespace TStreamerInfoActions { class TActionSequence; }
skipping to change at line 61 skipping to change at line 69
kCache = BIT(18), // Need to pushd/pop fOnfileObject. kCache = BIT(18), // Need to pushd/pop fOnfileObject.
kOwnOnfileObj = BIT(19), // We are the owner of fOnfileObject. kOwnOnfileObj = BIT(19), // We are the owner of fOnfileObject.
kAddressSet = BIT(20), // The addressing set have been called for this branch kAddressSet = BIT(20), // The addressing set have been called for this branch
kMakeClass = BIT(21), // This branch has been switched to using the MakeClass Mode kMakeClass = BIT(21), // This branch has been switched to using the MakeClass Mode
kDecomposedObj= BIT(21) // More explicit alias for kMakeClass. kDecomposedObj= BIT(21) // More explicit alias for kMakeClass.
}; };
// Data Members // Data Members
protected: protected:
TString fClassName; // Class name of referenced ob ject TString fClassName; // Class name of referenced ob ject
TString fTargetClassName; //! Name of the target in-mem ory class
TString fParentName; // Name of parent class TString fParentName; // Name of parent class
TString fClonesName; // Name of class in TClonesArr ay (if any) TString fClonesName; // Name of class in TClonesArr ay (if any)
TVirtualCollectionProxy *fCollProxy; //! collection interface (if an y) TVirtualCollectionProxy *fCollProxy; //! collection interface (if an y)
UInt_t fCheckSum; // CheckSum of class UInt_t fCheckSum; // CheckSum of class
Int_t fClassVersion; // Version number of class Int_t fClassVersion; // Version number of class
Int_t fID; // element serial number in fI nfo Int_t fID; // element serial number in fI nfo
Int_t fType; // branch type Int_t fType; // branch type
Int_t fStreamerType; // branch streamer type Int_t fStreamerType; // branch streamer type
Int_t fMaximum; // Maximum entries for a TClon esArray or variable array Int_t fMaximum; // Maximum entries for a TClon esArray or variable array
Int_t fSTLtype; //! STL container type Int_t fSTLtype; //! STL container type
Int_t fNdata; //! Number of data in this bran ch Int_t fNdata; //! Number of data in this bran ch
TBranchElement *fBranchCount; // pointer to primary branchco unt branch TBranchElement *fBranchCount; // pointer to primary branchco unt branch
TBranchElement *fBranchCount2; // pointer to secondary branch count branch TBranchElement *fBranchCount2; // pointer to secondary branch count branch
TStreamerInfo *fInfo; //! Pointer to StreamerInfo TStreamerInfo *fInfo; //! Pointer to StreamerInfo
char *fObject; //! Pointer to object at *fAddr ess char *fObject; //! Pointer to object at *fAddr ess
TVirtualArray *fOnfileObject; //! Place holder for the onfile representation of data members. TVirtualArray *fOnfileObject; //! Place holder for the onfile representation of data members.
Bool_t fInit; //! Initialization flag for bra nch assignment Bool_t fInit; //! Initialization flag for bra nch assignment
Bool_t fInitOffsets; //! Initialization flag to not endlessly recalculate offsets Bool_t fInitOffsets; //! Initialization flag to not endlessly recalculate offsets
TClassRef fTargetClass; //! Reference to the target in- memory class
TClassRef fCurrentClass; //! Reference to current (trans ient) class definition TClassRef fCurrentClass; //! Reference to current (trans ient) class definition
TClassRef fParentClass; //! Reference to class definiti on in fParentName TClassRef fParentClass; //! Reference to class definiti on in fParentName
TClassRef fBranchClass; //! Reference to class definiti on in fClassName TClassRef fBranchClass; //! Reference to class definiti on in fClassName
TClassRef fClonesClass; //! Reference to class definiti on in fClonesName
Int_t *fBranchOffset; //! Sub-Branch offsets with res pect to current transient class Int_t *fBranchOffset; //! Sub-Branch offsets with res pect to current transient class
Int_t fBranchID; //! ID number assigned by a TRe fTable. Int_t fBranchID; //! ID number assigned by a TRe fTable.
std::vector<Int_t> fIDs; //! List of the serial number o f all the StreamerInfo to be used. std::vector<Int_t> fIDs; //! List of the serial number o f all the StreamerInfo to be used.
TStreamerInfoActions::TActionSequence *fReadActionSequence; //! Set of actions to be executed to extract the data from the basket. TStreamerInfoActions::TActionSequence *fReadActionSequence; //! Set of actions to be executed to extract the data from the basket.
TVirtualCollectionIterators *fIterators; //! holds the ite rators when the branch is of fType==4. TVirtualCollectionIterators *fIterators; //! holds the ite rators when the branch is of fType==4.
TVirtualCollectionPtrIterators *fPtrIterators; //! holds the ite rators when the branch is of fType==4 and it is a split collection of point ers. TVirtualCollectionPtrIterators *fPtrIterators; //! holds the ite rators when the branch is of fType==4 and it is a split collection of point ers.
// Not implemented // Not implemented
private: private:
TBranchElement(const TBranchElement&); // not implemented TBranchElement(const TBranchElement&); // not implemented
skipping to change at line 105 skipping to change at line 114
static void SwitchContainer(TObjArray *); static void SwitchContainer(TObjArray *);
// Implementation use only functions. // Implementation use only functions.
protected: protected:
void BuildTitle(const char* name); void BuildTitle(const char* name);
virtual void InitializeOffsets(); virtual void InitializeOffsets();
virtual void InitInfo(); virtual void InitInfo();
Bool_t IsMissingCollection() const; Bool_t IsMissingCollection() const;
TClass *GetCurrentClass(); // Class referenced by trans ient description TClass *GetCurrentClass(); // Class referenced by trans ient description
TClass *GetParentClass(); // Class referenced by fParen tName TClass *GetParentClass(); // Class referenced by fParen tName
TStreamerInfo *GetInfoImp() const;
void ReleaseObject(); void ReleaseObject();
void SetBranchCount(TBranchElement* bre); void SetBranchCount(TBranchElement* bre);
void SetBranchCount2(TBranchElement* bre) { fBranchC ount2 = bre; } void SetBranchCount2(TBranchElement* bre) { fBranchC ount2 = bre; }
Int_t Unroll(const char* name, TClass* cltop, TClass* cl, char* ptr, Int_t basketsize, Int_t splitlevel, Int_t btype); Int_t Unroll(const char* name, TClass* cltop, TClass* cl, char* ptr, Int_t basketsize, Int_t splitlevel, Int_t btype);
void ValidateAddress() const; inline void ValidateAddress() const;
void Init(TTree *tree, TBranch *parent, const char* name, TStreamerInfo* sinfo, Int_t id, char* pointer, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t btype = 0); void Init(TTree *tree, TBranch *parent, const char* name, TStreamerInfo* sinfo, Int_t id, char* pointer, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t btype = 0);
void Init(TTree *tree, TBranch *parent, const char* name, TClonesArray* clones, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t compress = -1 ); void Init(TTree *tree, TBranch *parent, const char* name, TClonesArray* clones, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t compress = -1 );
void Init(TTree *tree, TBranch *parent, const char* name, TVirtualCollec tionProxy* cont, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t comp ress = -1); void Init(TTree *tree, TBranch *parent, const char* name, TVirtualCollec tionProxy* cont, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t comp ress = -1);
void ReadLeavesImpl(TBuffer& b); void ReadLeavesImpl(TBuffer& b);
void ReadLeavesMakeClass(TBuffer& b); void ReadLeavesMakeClass(TBuffer& b);
void ReadLeavesCollection(TBuffer& b); void ReadLeavesCollection(TBuffer& b);
void ReadLeavesCollectionSplitPtrMember(TBuffer& b); void ReadLeavesCollectionSplitPtrMember(TBuffer& b);
void ReadLeavesCollectionSplitVectorPtrMember(TBuffer& b); void ReadLeavesCollectionSplitVectorPtrMember(TBuffer& b);
skipping to change at line 153 skipping to change at line 163
virtual Int_t Fill(); virtual Int_t Fill();
virtual void FillLeaves(TBuffer& b); virtual void FillLeaves(TBuffer& b);
virtual TBranch *FindBranch(const char *name); virtual TBranch *FindBranch(const char *name);
virtual TLeaf *FindLeaf(const char *name); virtual TLeaf *FindLeaf(const char *name);
virtual char *GetAddress() const; virtual char *GetAddress() const;
TBranchElement *GetBranchCount() const { return fBranchCount; } TBranchElement *GetBranchCount() const { return fBranchCount; }
TBranchElement *GetBranchCount2() const { return fBranchCount2; } TBranchElement *GetBranchCount2() const { return fBranchCount2; }
Int_t *GetBranchOffset() const { return fBranchOffset; } Int_t *GetBranchOffset() const { return fBranchOffset; }
UInt_t GetCheckSum() { return fCheckSum; } UInt_t GetCheckSum() { return fCheckSum; }
virtual const char *GetClassName() const { return fClassName.Data() ; } virtual const char *GetClassName() const { return fClassName.Data() ; }
virtual TClass *GetClass() const { return fBranchClass; }
virtual const char *GetClonesName() const { return fClonesName.Data (); } virtual const char *GetClonesName() const { return fClonesName.Data (); }
TVirtualCollectionProxy *GetCollectionProxy(); TVirtualCollectionProxy *GetCollectionProxy();
virtual Int_t GetEntry(Long64_t entry = 0, Int_t getall = 0); virtual Int_t GetEntry(Long64_t entry = 0, Int_t getall = 0);
virtual Int_t GetExpectedType(TClass *&clptr,EDataType &type) ;
const char *GetIconName() const; const char *GetIconName() const;
Int_t GetID() const { return fID; } Int_t GetID() const { return fID; }
TStreamerInfo *GetInfo() const; TStreamerInfo *GetInfo() const;
Bool_t GetMakeClass() const; Bool_t GetMakeClass() const;
char *GetObject() const; char *GetObject() const;
virtual const char *GetParentName() const { return fParentName.Data (); } virtual const char *GetParentName() const { return fParentName.Data (); }
virtual Int_t GetMaximum() const; virtual Int_t GetMaximum() const;
Int_t GetNdata() const { return fNdata; } Int_t GetNdata() const { return fNdata; }
Int_t GetType() const { return fType; } Int_t GetType() const { return fType; }
Int_t GetStreamerType() const { return fStreamerType; } Int_t GetStreamerType() const { return fStreamerType; }
virtual TString GetTargetClassName() { return fTargetClassName; } virtual TClass *GetTargetClass() { return fTargetClass; }
virtual const char *GetTypeName() const; virtual const char *GetTypeName() const;
Double_t GetValue(Int_t i, Int_t len, Bool_t subarr = kF ALSE) const; Double_t GetValue(Int_t i, Int_t len, Bool_t subarr = kF ALSE) const;
virtual void *GetValuePointer() const; virtual void *GetValuePointer() const;
Int_t GetClassVersion() { return fClassVersion; } Int_t GetClassVersion() { return fClassVersion; }
Bool_t IsBranchFolder() const { return TestBit(kBranch Folder); } Bool_t IsBranchFolder() const { return TestBit(kBranch Folder); }
Bool_t IsFolder() const; Bool_t IsFolder() const;
virtual Bool_t IsObjectOwner() const { return TestBit(kDeleteO bject); } virtual Bool_t IsObjectOwner() const { return TestBit(kDeleteO bject); }
virtual Bool_t Notify() { if (fAddress) { ResetAddress(); } re turn 1; } virtual Bool_t Notify() { if (fAddress) { ResetAddress(); } re turn 1; }
virtual void Print(Option_t* option = "") const; virtual void Print(Option_t* option = "") const;
void PrintValue(Int_t i) const; void PrintValue(Int_t i) const;
skipping to change at line 189 skipping to change at line 201
virtual void ResetDeleteObject(); virtual void ResetDeleteObject();
virtual void SetAddress(void* addobj); virtual void SetAddress(void* addobj);
virtual Bool_t SetMakeClass(Bool_t decomposeObj = kTRUE); virtual Bool_t SetMakeClass(Bool_t decomposeObj = kTRUE);
virtual void SetObject(void *objadd); virtual void SetObject(void *objadd);
virtual void SetBasketSize(Int_t buffsize); virtual void SetBasketSize(Int_t buffsize);
virtual void SetBranchFolder() { SetBit(kBranchFolder); } virtual void SetBranchFolder() { SetBit(kBranchFolder); }
virtual void SetClassName(const char* name) { fClassName = n ame; } virtual void SetClassName(const char* name) { fClassName = n ame; }
virtual void SetOffset(Int_t offset); virtual void SetOffset(Int_t offset);
inline void SetParentClass(TClass* clparent); inline void SetParentClass(TClass* clparent);
virtual void SetParentName(const char* name) { fParentName = name; } virtual void SetParentName(const char* name) { fParentName = name; }
virtual void SetTargetClassName(const char *name); virtual void SetTargetClass(const char *name);
virtual void SetupAddresses(); virtual void SetupAddresses();
virtual void SetType(Int_t btype) { fType = btype; } virtual void SetType(Int_t btype) { fType = btype; }
virtual void UpdateFile(); virtual void UpdateFile();
ClassDef(TBranchElement,9) // Branch in case of an object ClassDef(TBranchElement,9) // Branch in case of an object
}; };
inline void TBranchElement::SetParentClass(TClass* clparent) inline void TBranchElement::SetParentClass(TClass* clparent)
{ {
fParentClass = clparent; fParentClass = clparent;
fParentName = clparent ? clparent->GetName() : ""; fParentName = clparent ? clparent->GetName() : "";
} }
inline void TBranchElement::ValidateAddress() const
{
// Check to see if the user changed the object pointer without telling u
s.
if (fID < 0) {
// We are a top-level branch.
if (!fTree->GetMakeClass() && fAddress && (*((char**) fAddress) != fO
bject)) {
// The semantics of fAddress and fObject are violated.
// Assume the user changed the pointer on us.
// Note: The cast is here because we want to be able to
// be called from the constant get functions.
// FIXME: Disable the check/warning TTree until we add a missing i
nterface.
if (TestBit(kDeleteObject)) {
// This should never happen!
Error("ValidateAddress", "We owned an object whose address chan
ged! our ptr: %p new ptr: %p", fObject, *((char**) fAddress));
const_cast<TBranchElement*>(this)->ResetBit(kDeleteObject);
}
const_cast<TBranchElement*>(this)->SetAddress(fAddress);
}
}
}
#endif // ROOT_TBranchElement #endif // ROOT_TBranchElement
 End of changes. 12 change blocks. 
5 lines changed or deleted 44 lines changed or added


 TBranchObject.h   TBranchObject.h 
// @(#)root/tree:$Id: TBranchObject.h 37168 2010-12-02 02:34:55Z pcanal $ // @(#)root/tree:$Id: TBranchObject.h 38059 2011-02-13 21:12:16Z pcanal $
// Author: Rene Brun 11/02/96 // Author: Rene Brun 11/02/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 47 skipping to change at line 47
TBranchObject(); TBranchObject();
TBranchObject(TBranch *parent, const char *name, const char *classname, void *addobj, Int_t basketsize=32000, Int_t splitlevel = 0, Int_t compress= -1, Bool_t isptrptr = kTRUE); TBranchObject(TBranch *parent, const char *name, const char *classname, void *addobj, Int_t basketsize=32000, Int_t splitlevel = 0, Int_t compress= -1, Bool_t isptrptr = kTRUE);
TBranchObject(TTree *tree, const char *name, const char *classname, void *addobj, Int_t basketsize=32000, Int_t splitlevel = 0, Int_t compress=-1, Bool_t isptrptr = kTRUE); TBranchObject(TTree *tree, const char *name, const char *classname, void *addobj, Int_t basketsize=32000, Int_t splitlevel = 0, Int_t compress=-1, Bool_t isptrptr = kTRUE);
virtual ~TBranchObject(); virtual ~TBranchObject();
virtual void Browse(TBrowser *b); virtual void Browse(TBrowser *b);
virtual Int_t Fill(); virtual Int_t Fill();
virtual const char* GetClassName() const { return fClassName.Data(); }; virtual const char* GetClassName() const { return fClassName.Data(); };
virtual const char* GetObjClassName() { return fClassName.Data(); }; virtual const char* GetObjClassName() { return fClassName.Data(); };
virtual Int_t GetEntry(Long64_t entry=0, Int_t getall = 0); virtual Int_t GetEntry(Long64_t entry=0, Int_t getall = 0);
virtual Int_t GetExpectedType(TClass *&clptr,EDataType &type);
Bool_t IsFolder() const; Bool_t IsFolder() const;
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual void Reset(Option_t *option=""); virtual void Reset(Option_t *option="");
virtual void SetAddress(void *addobj); virtual void SetAddress(void *addobj);
virtual void SetAutoDelete(Bool_t autodel=kTRUE); virtual void SetAutoDelete(Bool_t autodel=kTRUE);
virtual void SetBasketSize(Int_t buffsize); virtual void SetBasketSize(Int_t buffsize);
virtual void SetupAddresses(); virtual void SetupAddresses();
virtual void UpdateAddress(); virtual void UpdateAddress();
ClassDef(TBranchObject,1); //Branch in case of an object ClassDef(TBranchObject,1); //Branch in case of an object
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TBranchRef.h   TBranchRef.h 
// @(#)root/tree:$Id: TBranchRef.h 37275 2010-12-04 21:32:11Z pcanal $ // @(#)root/tree:$Id: TBranchRef.h 38854 2011-04-14 18:03:34Z pcanal $
// Author: Rene Brun 19/08/2004 // Author: Rene Brun 19/08/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 32 skipping to change at line 32
#ifndef ROOT_TBranch #ifndef ROOT_TBranch
#include "TBranch.h" #include "TBranch.h"
#endif #endif
#ifndef ROOT_TRefTable #ifndef ROOT_TRefTable
#include "TRefTable.h" #include "TRefTable.h"
#endif #endif
class TTree; class TTree;
class TBranchRef : public TBranch { class TBranchRef : public TBranch {
private:
Long64_t fRequestedEntry; //! Cursor indicating which entry is being
requested.
protected: protected:
TRefTable *fRefTable; // pointer to the TRefTable TRefTable *fRefTable; // pointer to the TRefTable
void ReadLeavesImpl(TBuffer &b); void ReadLeavesImpl(TBuffer &b);
public: public:
TBranchRef(); TBranchRef();
TBranchRef(TTree *tree); TBranchRef(TTree *tree);
virtual ~TBranchRef(); virtual ~TBranchRef();
virtual void Clear(Option_t *option=""); virtual void Clear(Option_t *option="");
virtual Int_t Fill(); virtual Int_t Fill();
virtual void FillLeaves(TBuffer &b); virtual void FillLeaves(TBuffer &b);
TRefTable *GetRefTable() const {return fRefTable;} TRefTable *GetRefTable() const {return fRefTable;}
virtual Bool_t Notify(); virtual Bool_t Notify();
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual void Reset(Option_t *option=""); virtual void Reset(Option_t *option="");
virtual Int_t SetParent(const TObject* obj, Int_t branchID); virtual Int_t SetParent(const TObject* obj, Int_t branchID);
virtual void SetReadEntry(Long64_t entry) {fReadEntry = entry;} virtual void SetRequestedEntry(Long64_t entry) {fRequestedEntry = ent ry;}
ClassDef(TBranchRef,1); //to support referenced objects on other branch es ClassDef(TBranchRef,1); //to support referenced objects on other branch es
}; };
#endif #endif
 End of changes. 4 change blocks. 
3 lines changed or deleted 6 lines changed or added


 TBrowserImp.h   TBrowserImp.h 
// @(#)root/base:$Id: TBrowserImp.h 30884 2009-10-27 12:26:33Z rdm $ // @(#)root/base:$Id: TBrowserImp.h 37996 2011-02-07 15:33:10Z rdm $
// Author: Fons Rademakers 15/11/95 // Author: Fons Rademakers 15/11/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 54 skipping to change at line 54
TBrowserImp(TBrowser *b, const char *title, UInt_t width, UInt_t height, Option_t *opt = ""); TBrowserImp(TBrowser *b, const char *title, UInt_t width, UInt_t height, Option_t *opt = "");
TBrowserImp(TBrowser *b, const char *title, Int_t x, Int_t y, UInt_t wid th, UInt_t height, Option_t *opt = ""); TBrowserImp(TBrowser *b, const char *title, Int_t x, Int_t y, UInt_t wid th, UInt_t height, Option_t *opt = "");
virtual ~TBrowserImp() { } virtual ~TBrowserImp() { }
virtual void Add(TObject *, const char *, Int_t) { } virtual void Add(TObject *, const char *, Int_t) { }
virtual void AddCheckBox(TObject *, Bool_t = kFALSE) { } virtual void AddCheckBox(TObject *, Bool_t = kFALSE) { }
virtual void CheckObjectItem(TObject *, Bool_t = kFALSE) { } virtual void CheckObjectItem(TObject *, Bool_t = kFALSE) { }
virtual void RemoveCheckBox(TObject *) { } virtual void RemoveCheckBox(TObject *) { }
virtual void BrowseObj(TObject *) { } virtual void BrowseObj(TObject *) { }
TBrowser *Browser() const { return fBrowser; } TBrowser *Browser() const { return fBrowser; }
virtual void CloseTabs() { }
virtual void ExecuteDefaultAction(TObject *) { } virtual void ExecuteDefaultAction(TObject *) { }
virtual void Iconify() { } virtual void Iconify() { }
virtual void RecursiveRemove(TObject *) { } virtual void RecursiveRemove(TObject *) { }
virtual void Refresh(Bool_t = kFALSE) { } virtual void Refresh(Bool_t = kFALSE) { }
virtual void Show() { } virtual void Show() { }
virtual void SetDrawOption(Option_t *option=""); virtual void SetDrawOption(Option_t *option="");
virtual Option_t *GetDrawOption() const { return 0; } virtual Option_t *GetDrawOption() const { return 0; }
virtual Long_t ExecPlugin(const char *, const char *, const char *, I nt_t, Int_t) { return 0; } virtual Long_t ExecPlugin(const char *, const char *, const char *, I nt_t, Int_t) { return 0; }
virtual void SetStatusText(const char *, Int_t) { } virtual void SetStatusText(const char *, Int_t) { }
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TBuffer.h   TBuffer.h 
// @(#)root/base:$Id: TBuffer.h 36061 2010-10-04 16:05:51Z pcanal $ // @(#)root/base:$Id: TBuffer.h 37809 2011-01-19 11:07:41Z rdm $
// Author: Rene Brun, Philippe Canal, Fons Rademakers 04/05/96 // Author: Rene Brun, Philippe Canal, Fons Rademakers 04/05/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 56 skipping to change at line 56
Int_t fBufSize; //Size of buffer Int_t fBufSize; //Size of buffer
char *fBuffer; //Buffer used to store objects char *fBuffer; //Buffer used to store objects
char *fBufCur; //Current position in buffer char *fBufCur; //Current position in buffer
char *fBufMax; //End of buffer char *fBufMax; //End of buffer
TObject *fParent; //Pointer to parent object owning this buffer TObject *fParent; //Pointer to parent object owning this buffer
ReAllocCharFun_t fReAllocFunc; //! Realloc function to be used when ex tending the buffer. ReAllocCharFun_t fReAllocFunc; //! Realloc function to be used when ex tending the buffer.
CacheList_t fCacheStack; //Stack of pointers to the cache where to temporarily store the value of 'missing' data members CacheList_t fCacheStack; //Stack of pointers to the cache where to temporarily store the value of 'missing' data members
// Default ctor // Default ctor
TBuffer() : TObject(), fMode(0), fVersion(0), fBufSize(0), fBuffer(0), TBuffer() : TObject(), fMode(0), fVersion(0), fBufSize(0), fBuffer(0),
fBufCur(0), fBufMax(0), fParent(0), fReAllocFunc(0) {} fBufCur(0), fBufMax(0), fParent(0), fReAllocFunc(0), fCacheStack(0,(TV irtualArray*)0) {}
// TBuffer objects cannot be copied or assigned // TBuffer objects cannot be copied or assigned
TBuffer(const TBuffer &); // not implemented TBuffer(const TBuffer &); // not implemented
void operator=(const TBuffer &); // not implemented void operator=(const TBuffer &); // not implemented
Int_t Read(const char *name) { return TObject::Read(name); } Int_t Read(const char *name) { return TObject::Read(name); }
Int_t Write(const char *name, Int_t opt, Int_t bufs) Int_t Write(const char *name, Int_t opt, Int_t bufs)
{ return TObject::Write(name, opt, bufs); } { return TObject::Write(name, opt, bufs); }
Int_t Write(const char *name, Int_t opt, Int_t bufs) const Int_t Write(const char *name, Int_t opt, Int_t bufs) const
{ return TObject::Write(name, opt, bufs); } { return TObject::Write(name, opt, bufs); }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TChain.h   TChain.h 
// @(#)root/tree:$Id: TChain.h 33354 2010-05-03 19:46:03Z pcanal $ // @(#)root/tree:$Id: TChain.h 37957 2011-02-02 21:17:37Z pcanal $
// Author: Rene Brun 03/02/97 // Author: Rene Brun 03/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 124 skipping to change at line 124
virtual Int_t LoadBaskets(Long64_t maxmemory); virtual Int_t LoadBaskets(Long64_t maxmemory);
virtual Long64_t LoadTree(Long64_t entry); virtual Long64_t LoadTree(Long64_t entry);
void Lookup(Bool_t force = kFALSE); void Lookup(Bool_t force = kFALSE);
virtual void Loop(Option_t *option="", Long64_t nentries=kBigNumber , Long64_t firstentry=0); // *MENU* virtual void Loop(Option_t *option="", Long64_t nentries=kBigNumber , Long64_t firstentry=0); // *MENU*
virtual void ls(Option_t *option="") const; virtual void ls(Option_t *option="") const;
virtual Long64_t Merge(const char *name, Option_t *option = ""); virtual Long64_t Merge(const char *name, Option_t *option = "");
virtual Long64_t Merge(TCollection *list, Option_t *option = ""); virtual Long64_t Merge(TCollection *list, Option_t *option = "");
virtual Long64_t Merge(TFile *file, Int_t basketsize, Option_t *option= ""); virtual Long64_t Merge(TFile *file, Int_t basketsize, Option_t *option= "");
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual Long64_t Process(const char *filename, Option_t *option="", Lon g64_t nentries=kBigNumber, Long64_t firstentry=0); // *MENU* virtual Long64_t Process(const char *filename, Option_t *option="", Lon g64_t nentries=kBigNumber, Long64_t firstentry=0); // *MENU*
#ifndef __CINT__ #if defined(__CINT__)
virtual Long64_t Process(TSelector *selector, Option_t *option="", Lon #if defined(R__MANUAL_DICT)
g64_t nentries=kBigNumber, Long64_t firstentry=0); virtual Long64_t Process(void* selector, Option_t* option = "", Long64_
t nentries = kBigNumber, Long64_t firstentry = 0);
#endif
#else
virtual Long64_t Process(TSelector* selector, Option_t* option = "", Lo
ng64_t nentries = kBigNumber, Long64_t firstentry = 0);
#endif #endif
virtual void RecursiveRemove(TObject *obj); virtual void RecursiveRemove(TObject *obj);
virtual void Reset(Option_t *option=""); virtual void Reset(Option_t *option="");
virtual void ResetBranchAddress(TBranch *); virtual void ResetBranchAddress(TBranch *);
virtual void ResetBranchAddresses(); virtual void ResetBranchAddresses();
virtual Long64_t Scan(const char *varexp="", const char *selection="", Option_t *option="", Long64_t nentries=1000000000, Long64_t firstentry=0); // *MENU* virtual Long64_t Scan(const char *varexp="", const char *selection="", Option_t *option="", Long64_t nentries=1000000000, Long64_t firstentry=0); // *MENU*
virtual void SetAutoDelete(Bool_t autodel=kTRUE); virtual void SetAutoDelete(Bool_t autodel=kTRUE);
virtual Int_t SetBranchAddress(const char *bname,void *add, TBranch **ptr = 0); virtual Int_t SetBranchAddress(const char *bname,void *add, TBranch **ptr = 0);
virtual Int_t SetBranchAddress(const char *bname,void *add, TBranch **ptr, TClass *realClass, EDataType datatype, Bool_t isptr); virtual Int_t SetBranchAddress(const char *bname,void *add, TBranch **ptr, TClass *realClass, EDataType datatype, Bool_t isptr);
virtual Int_t SetBranchAddress(const char *bname,void *add, TClass * realClass, EDataType datatype, Bool_t isptr); virtual Int_t SetBranchAddress(const char *bname,void *add, TClass * realClass, EDataType datatype, Bool_t isptr);
 End of changes. 2 change blocks. 
4 lines changed or deleted 9 lines changed or added


 TChainIndex.h   TChainIndex.h 
// @(#)root/treeplayer:$Id: TChainIndex.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/treeplayer:$Id: TChainIndex.h 38496 2011-03-18 10:04:01Z pcanal $
// Author: Marek Biskup 07/06/2005 // Author: Marek Biskup 07/06/2005
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 68 skipping to change at line 68
std::pair<TVirtualIndex*, Int_t> GetSubTreeIndex(Int_t major, Int_t mino r) const; std::pair<TVirtualIndex*, Int_t> GetSubTreeIndex(Int_t major, Int_t mino r) const;
void ReleaseSubTreeIndex(TVirtualIndex* index, Int_t treeNo) const; void ReleaseSubTreeIndex(TVirtualIndex* index, Int_t treeNo) const;
void DeleteIndices(); void DeleteIndices();
public: public:
TChainIndex(); TChainIndex();
TChainIndex(const TTree *T, const char *majorname, const char *minorname ); TChainIndex(const TTree *T, const char *majorname, const char *minorname );
virtual ~TChainIndex(); virtual ~TChainIndex();
virtual void Append(const TVirtualIndex *, Bool_t delaySort = kFALSE); virtual void Append(const TVirtualIndex *, Bool_t delaySort = kFALSE);
virtual Int_t GetEntryNumberFriend(const TTree *T); virtual Long64_t GetEntryNumberFriend(const TTree *parent);
virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const; virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const;
virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const; virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const;
const char *GetMajorName() const {return fMajorName.Data() ;} const char *GetMajorName() const {return fMajorName.Data() ;}
const char *GetMinorName() const {return fMinorName.Data() ;} const char *GetMinorName() const {return fMinorName.Data() ;}
virtual Long64_t GetN() const {return fEntries.size();} virtual Long64_t GetN() const {return fEntries.size();}
virtual TTreeFormula *GetMajorFormulaParent(const TTree *T); virtual TTreeFormula *GetMajorFormulaParent(const TTree *parent);
virtual TTreeFormula *GetMinorFormulaParent(const TTree *T); virtual TTreeFormula *GetMinorFormulaParent(const TTree *parent);
virtual void UpdateFormulaLeaves(const TTree *parent); virtual void UpdateFormulaLeaves(const TTree *parent);
virtual void SetTree(const TTree *T); virtual void SetTree(const TTree *T);
ClassDef(TChainIndex,1) //A Tree Index with majorname and minorname. ClassDef(TChainIndex,1) //A Tree Index with majorname and minorname.
}; };
#endif #endif
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 TCint.h   TCint.h 
// @(#)root/meta:$Id: TCint.h 34701 2010-08-02 20:10:24Z pcanal $ // @(#)root/meta:$Id: TCint.h 38517 2011-03-18 20:20:16Z pcanal $
// Author: Fons Rademakers 01/03/96 // Author: Fons Rademakers 01/03/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 114 skipping to change at line 114
Int_t UnloadLibraryMap(const char *library); Int_t UnloadLibraryMap(const char *library);
Long_t ProcessLine(const char *line, EErrorCode *error = 0); Long_t ProcessLine(const char *line, EErrorCode *error = 0);
Long_t ProcessLineAsynch(const char *line, EErrorCode *error = 0); Long_t ProcessLineAsynch(const char *line, EErrorCode *error = 0);
Long_t ProcessLineSynch(const char *line, EErrorCode *error = 0); Long_t ProcessLineSynch(const char *line, EErrorCode *error = 0);
void PrintIntro(); void PrintIntro();
void SetGetline(char*(*getlineFunc)(const char* prompt), void SetGetline(char*(*getlineFunc)(const char* prompt),
void (*histaddFunc)(char* line)); void (*histaddFunc)(char* line));
void Reset(); void Reset();
void ResetAll(); void ResetAll();
void ResetGlobals(); void ResetGlobals();
void ResetGlobalVar(void *obj);
void RewindDictionary(); void RewindDictionary();
Int_t DeleteGlobal(void *obj); Int_t DeleteGlobal(void *obj);
void SaveContext(); void SaveContext();
void SaveGlobalsContext(); void SaveGlobalsContext();
void UpdateListOfGlobals(); void UpdateListOfGlobals();
void UpdateListOfGlobalFunctions(); void UpdateListOfGlobalFunctions();
void UpdateListOfTypes(); void UpdateListOfTypes();
void SetClassInfo(TClass *cl, Bool_t reload = kFALSE); void SetClassInfo(TClass *cl, Bool_t reload = kFALSE);
Bool_t CheckClassInfo(const char *name, Bool_t autoload = kTRUE); Bool_t CheckClassInfo(const char *name, Bool_t autoload = kTRUE);
Long_t Calc(const char *line, EErrorCode *error = 0); Long_t Calc(const char *line, EErrorCode *error = 0);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TClass.h   TClass.h 
// @(#)root/meta:$Id: TClass.h 37287 2010-12-05 04:14:11Z pcanal $ // @(#)root/meta:$Id: TClass.h 37702 2011-01-04 17:07:52Z pcanal $
// Author: Rene Brun 07/01/95 // Author: Rene Brun 07/01/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 159 skipping to change at line 159
// Various implementation for TClass::Stramer // Various implementation for TClass::Stramer
void StreamerExternal(void *object, TBuffer &b, const TClass *onfile_cla ss) const; void StreamerExternal(void *object, TBuffer &b, const TClass *onfile_cla ss) const;
void StreamerTObject(void *object, TBuffer &b, const TClass *onfile_clas s) const; void StreamerTObject(void *object, TBuffer &b, const TClass *onfile_clas s) const;
void StreamerTObjectInitialized(void *object, TBuffer &b, const TClass * onfile_class) const; void StreamerTObjectInitialized(void *object, TBuffer &b, const TClass * onfile_class) const;
void StreamerTObjectEmulated(void *object, TBuffer &b, const TClass *onf ile_class) const; void StreamerTObjectEmulated(void *object, TBuffer &b, const TClass *onf ile_class) const;
void StreamerInstrumented(void *object, TBuffer &b, const TClass *onfile _class) const; void StreamerInstrumented(void *object, TBuffer &b, const TClass *onfile _class) const;
void StreamerStreamerInfo(void *object, TBuffer &b, const TClass *onfile _class) const; void StreamerStreamerInfo(void *object, TBuffer &b, const TClass *onfile _class) const;
void StreamerDefault(void *object, TBuffer &b, const TClass *onfile_clas s) const; void StreamerDefault(void *object, TBuffer &b, const TClass *onfile_clas s) const;
static IdMap_t *fgIdMap; //Map from typeid to TClass pointer static IdMap_t *GetIdMap(); //Map from typeid to TClass pointer
static ENewType fgCallingNew; //Intent of why/how TClass::New() i s called static ENewType fgCallingNew; //Intent of why/how TClass::New() i s called
static Int_t fgClassCount; //provides unique id for a each cla ss static Int_t fgClassCount; //provides unique id for a each cla ss
//stored in TObject::fUniqueID //stored in TObject::fUniqueID
// Internal status bits // Internal status bits
enum { kLoading = BIT(14) }; enum { kLoading = BIT(14) };
// Internal streamer type. // Internal streamer type.
enum {kDefault=0, kEmulated=1, kTObject=2, kInstrumented=4, kForeign=8, kExternal=16}; enum {kDefault=0, kEmulated=1, kTObject=2, kInstrumented=4, kForeign=8, kExternal=16};
// When a new class is created, we need to be able to find // When a new class is created, we need to be able to find
// if there are any existing classes that have the same name // if there are any existing classes that have the same name
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TClassEdit.h   TClassEdit.h 
// @(#)root/base:$Id: TClassEdit.h 33299 2010-04-29 14:43:56Z rdm $ // @(#)root/base:$Id: TClassEdit.h 38309 2011-03-04 17:14:19Z pcanal $
// Author: Victor Perev 10/04/2003 // Author: Victor Perev 10/04/2003
// Philippe Canal 05/2004 // Philippe Canal 05/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2003, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2003, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 44 skipping to change at line 44
enum EModType { enum EModType {
kNone = 0, kNone = 0,
kDropTrailStar = 1<<0, kDropTrailStar = 1<<0,
kDropDefaultAlloc = 1<<1, kDropDefaultAlloc = 1<<1,
kDropAlloc = 1<<2, kDropAlloc = 1<<2,
kInnerClass = 1<<3, kInnerClass = 1<<3,
kInnedMostClass = 1<<4, kInnedMostClass = 1<<4,
kDropStlDefault = 1<<5, /* implies kDropDefaultAlloc */ kDropStlDefault = 1<<5, /* implies kDropDefaultAlloc */
kDropComparator = 1<<6, /* if the class has a comparator, drops BOT H the comparator and the Allocator */ kDropComparator = 1<<6, /* if the class has a comparator, drops BOT H the comparator and the Allocator */
kDropAllDefault = 1<<7, /* Drop default template parameter even in non STL classes */ kDropAllDefault = 1<<7, /* Drop default template parameter even in non STL classes */
kLong64 = 1<<8 /* replace all 'long long' with Long64_t. * kLong64 = 1<<8, /* replace all 'long long' with Long64_t. *
/ /
kDropStd = 1<<9 /* Drop any std:: */
}; };
enum ESTLType { enum ESTLType {
kNotSTL = 0, kNotSTL = 0,
kVector = 1, kVector = 1,
kList = 2, kList = 2,
kDeque = 3, kDeque = 3,
kMap = 4, kMap = 4,
kMultiMap = 5, kMultiMap = 5,
kSet = 6, kSet = 6,
 End of changes. 2 change blocks. 
3 lines changed or deleted 4 lines changed or added


 TClonesArray.h   TClonesArray.h 
// @(#)root/cont:$Id: TClonesArray.h 33807 2010-06-10 07:23:32Z brun $ // @(#)root/cont:$Id: TClonesArray.h 38515 2011-03-18 16:57:21Z rdm $
// Author: Rene Brun 11/02/96 // Author: Rene Brun 11/02/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 70 skipping to change at line 70
void AddAt(TObject *, Int_t) { MayNotUse("AddAt"); } void AddAt(TObject *, Int_t) { MayNotUse("AddAt"); }
void AddAtAndExpand(TObject *, Int_t) { MayNotUse("AddAtAndE xpand"); } void AddAtAndExpand(TObject *, Int_t) { MayNotUse("AddAtAndE xpand"); }
Int_t AddAtFree(TObject *) { MayNotUse("AddAtFree"); return 0 ; } Int_t AddAtFree(TObject *) { MayNotUse("AddAtFree"); return 0 ; }
void AddAfter(const TObject *, TObject *) { MayNotUse("AddAf ter"); } void AddAfter(const TObject *, TObject *) { MayNotUse("AddAf ter"); }
void AddBefore(const TObject *, TObject *) { MayNotUse("AddB efore"); } void AddBefore(const TObject *, TObject *) { MayNotUse("AddB efore"); }
void BypassStreamer(Bool_t bypass=kTRUE); void BypassStreamer(Bool_t bypass=kTRUE);
Bool_t CanBypassStreamer() const { return TestBit(kBypassStrea mer); } Bool_t CanBypassStreamer() const { return TestBit(kBypassStrea mer); }
void SetClass(const char *classname,Int_t size=1000); void SetClass(const char *classname,Int_t size=1000);
void SetClass(const TClass *cl,Int_t size=1000); void SetClass(const TClass *cl,Int_t size=1000);
void AbsorbObjects(TClonesArray* tc); void AbsorbObjects(TClonesArray *tc);
void AbsorbObjects(TClonesArray *tc, Int_t idx1, Int_t idx2)
;
void MultiSort(Int_t nTCs, TClonesArray** tcs, Int_t upto = kMaxInt); void MultiSort(Int_t nTCs, TClonesArray** tcs, Int_t upto = kMaxInt);
virtual TObject *RemoveAt(Int_t idx); virtual TObject *RemoveAt(Int_t idx);
virtual TObject *Remove(TObject *obj); virtual TObject *Remove(TObject *obj);
virtual void RemoveRange(Int_t idx1, Int_t idx2); virtual void RemoveRange(Int_t idx1, Int_t idx2);
virtual void Sort(Int_t upto = kMaxInt); virtual void Sort(Int_t upto = kMaxInt);
TObject *New(Int_t idx); TObject *New(Int_t idx);
TObject *AddrAt(Int_t idx); TObject *AddrAt(Int_t idx);
TObject *&operator[](Int_t idx); TObject *&operator[](Int_t idx);
TObject *operator[](Int_t idx) const; TObject *operator[](Int_t idx) const;
 End of changes. 2 change blocks. 
2 lines changed or deleted 4 lines changed or added


 TEfficiency.h   TEfficiency.h 
skipping to change at line 29 skipping to change at line 29
#endif #endif
#ifndef ROOT_TAttMarker #ifndef ROOT_TAttMarker
#include "TAttMarker.h" #include "TAttMarker.h"
#endif #endif
class TCollection; class TCollection;
class TF1; class TF1;
class TGraphAsymmErrors; class TGraphAsymmErrors;
class TH1; class TH1;
class TH2;
class TList; class TList;
//|TEfficiency //|TEfficiency
//------------------------ //------------------------
class TEfficiency: public TNamed, public TAttLine, public TAttFill, public TAttMarker class TEfficiency: public TNamed, public TAttLine, public TAttFill, public TAttMarker
{ {
public: public:
//enumaration type for different statistic options for calculating co nfidence intervals //enumaration type for different statistic options for calculating co nfidence intervals
//kF* ... frequentist methods; kB* ... bayesian methods //kF* ... frequentist methods; kB* ... bayesian methods
skipping to change at line 61 skipping to change at line 62
Double_t fBeta_alpha; //global parameter for prior b eta distribution (default = 1) Double_t fBeta_alpha; //global parameter for prior b eta distribution (default = 1)
Double_t fBeta_beta; //global parameter for prior b eta distribution (default = 1) Double_t fBeta_beta; //global parameter for prior b eta distribution (default = 1)
std::vector<std::pair<Double_t, Double_t> > fBeta_bin_params; // par ameter for prior beta distribution different bin by bin std::vector<std::pair<Double_t, Double_t> > fBeta_bin_params; // par ameter for prior beta distribution different bin by bin
// (defaul t vector is empty) // (defaul t vector is empty)
Double_t (*fBoundary)(Int_t,Int_t,Double_t,Bool_t); //!pointer to a method calculating the boundaries of confidence intervals Double_t (*fBoundary)(Int_t,Int_t,Double_t,Bool_t); //!pointer to a method calculating the boundaries of confidence intervals
Double_t fConfLevel; //confidence level (default = 0.95) Double_t fConfLevel; //confidence level (default = 0.95)
TDirectory* fDirectory; //!pointer to directory holdin g this TEfficiency object TDirectory* fDirectory; //!pointer to directory holdin g this TEfficiency object
TList* fFunctions; //->pointer to list of functio ns TList* fFunctions; //->pointer to list of functio ns
TGraphAsymmErrors* fPaintGraph; //!temporary graph for paintin g TGraphAsymmErrors* fPaintGraph; //!temporary graph for paintin g
TH1* fPaintHisto; //!temporary histogram for pai nting TH2* fPaintHisto; //!temporary histogram for pai nting
TH1* fPassedHistogram; //histogram for events which p assed certain criteria TH1* fPassedHistogram; //histogram for events which p assed certain criteria
EStatOption fStatisticOption; //defines how the confidence i ntervals are determined EStatOption fStatisticOption; //defines how the confidence i ntervals are determined
TH1* fTotalHistogram; //histogram for total number o f events TH1* fTotalHistogram; //histogram for total number o f events
Double_t fWeight; //weight for all events (defau lt = 1) Double_t fWeight; //weight for all events (defau lt = 1)
enum{ enum{
kIsBayesian = BIT(14), //bayesian statistics are used kIsBayesian = BIT(14), //bayesian statistics are used
kPosteriorMode = BIT(15), //use posterior mean for best estimate (Bayesian statistics) kPosteriorMode = BIT(15), //use posterior mean for best estimate (Bayesian statistics)
kShortestInterval = BIT(16), // use shortest interval kShortestInterval = BIT(16), // use shortest interval
kUseBinPrior = BIT(17) // use a different prior for each bin kUseBinPrior = BIT(17) // use a different prior for each bin
skipping to change at line 98 skipping to change at line 99
TEfficiency(const char* name,const char* title,Int_t nbinsx, TEfficiency(const char* name,const char* title,Int_t nbinsx,
Double_t xlow,Double_t xup,Int_t nbinsy,Double_t ylow, Double_t xlow,Double_t xup,Int_t nbinsy,Double_t ylow,
Double_t yup,Int_t nbinsz,Double_t zlow,Double_t zup); Double_t yup,Int_t nbinsz,Double_t zlow,Double_t zup);
TEfficiency(const char* name,const char* title,Int_t nbinsx, TEfficiency(const char* name,const char* title,Int_t nbinsx,
const Double_t* xbins,Int_t nbinsy,const Double_t* ybins, const Double_t* xbins,Int_t nbinsy,const Double_t* ybins,
Int_t nbinsz,const Double_t* zbins); Int_t nbinsz,const Double_t* zbins);
TEfficiency(const TEfficiency& heff); TEfficiency(const TEfficiency& heff);
~TEfficiency(); ~TEfficiency();
void Add(const TEfficiency& rEff) {*this += rEff;} void Add(const TEfficiency& rEff) {*this += rEff;}
void Draw(Option_t* opt); virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
void Draw(Option_t* opt = "");
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
void Fill(Bool_t bPassed,Double_t x,Double_t y=0,Double_t z= 0); void Fill(Bool_t bPassed,Double_t x,Double_t y=0,Double_t z= 0);
Int_t FindFixBin(Double_t x,Double_t y=0,Double_t z=0) const; Int_t FindFixBin(Double_t x,Double_t y=0,Double_t z=0) const;
Int_t Fit(TF1* f1,Option_t* opt=""); Int_t Fit(TF1* f1,Option_t* opt="");
// use trick of -1 to return global parameters // use trick of -1 to return global parameters
Double_t GetBetaAlpha(Int_t bin = -1) const {return (fBeta_bin_p arams.size() > (UInt_t)bin) ? fBeta_bin_params[bin].first : fBeta_alpha;} Double_t GetBetaAlpha(Int_t bin = -1) const {return (fBeta_bin_p arams.size() > (UInt_t)bin) ? fBeta_bin_params[bin].first : fBeta_alpha;}
Double_t GetBetaBeta(Int_t bin = -1) const {return (fBeta_bin_p arams.size() > (UInt_t)bin) ? fBeta_bin_params[bin].second : fBeta_beta;} Double_t GetBetaBeta(Int_t bin = -1) const {return (fBeta_bin_p arams.size() > (UInt_t)bin) ? fBeta_bin_params[bin].second : fBeta_beta;}
Double_t GetConfidenceLevel() const {return fConfLevel;} Double_t GetConfidenceLevel() const {return fConfLevel;}
TH1* GetCopyPassedHisto() const; TH1* GetCopyPassedHisto() const;
TH1* GetCopyTotalHisto() const; TH1* GetCopyTotalHisto() const;
Int_t GetDimension() const; Int_t GetDimension() const;
TDirectory* GetDirectory() const {return fDirectory;} TDirectory* GetDirectory() const {return fDirectory;}
Double_t GetEfficiency(Int_t bin) const; Double_t GetEfficiency(Int_t bin) const;
Double_t GetEfficiencyErrorLow(Int_t bin) const; Double_t GetEfficiencyErrorLow(Int_t bin) const;
Double_t GetEfficiencyErrorUp(Int_t bin) const; Double_t GetEfficiencyErrorUp(Int_t bin) const;
Int_t GetGlobalBin(Int_t binx,Int_t biny=0,Int_t binz=0) cons t; Int_t GetGlobalBin(Int_t binx,Int_t biny=0,Int_t binz=0) cons t;
TGraphAsymmErrors* GetPaintedGraph() const { return fPaintGraph; }
TH2* GetPaintedHistogram() const { return fPaintHisto; }
TList* GetListOfFunctions() const {return fFunctions;} TList* GetListOfFunctions() const {return fFunctions;}
const TH1* GetPassedHistogram() const {return fPassedHistogram;} const TH1* GetPassedHistogram() const {return fPassedHistogram;}
EStatOption GetStatisticOption() const {return fStatisticOption;} EStatOption GetStatisticOption() const {return fStatisticOption;}
const TH1* GetTotalHistogram() const {return fTotalHistogram;} const TH1* GetTotalHistogram() const {return fTotalHistogram;}
Double_t GetWeight() const {return fWeight;} Double_t GetWeight() const {return fWeight;}
void Merge(TCollection* list); void Merge(TCollection* list);
TEfficiency& operator+=(const TEfficiency& rhs); TEfficiency& operator+=(const TEfficiency& rhs);
TEfficiency& operator=(const TEfficiency& rhs); TEfficiency& operator=(const TEfficiency& rhs);
void Paint(Option_t* opt); void Paint(Option_t* opt);
void SavePrimitive(ostream& out,Option_t* opt=""); void SavePrimitive(ostream& out,Option_t* opt="");
 End of changes. 4 change blocks. 
2 lines changed or deleted 7 lines changed or added


 TError.h   TError.h 
// @(#)root/base:$Id: TError.h 35549 2010-09-21 14:18:04Z rdm $ // @(#)root/base:$Id: TError.h 38832 2011-04-13 17:54:49Z rdm $
// Author: Fons Rademakers 29/07/95 // Author: Fons Rademakers 29/07/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 90 skipping to change at line 90
#endif #endif
; ;
extern void Fatal(const char *location, const char *msgfmt, ...) extern void Fatal(const char *location, const char *msgfmt, ...)
#if defined(__GNUC__) && !defined(__CINT__) #if defined(__GNUC__) && !defined(__CINT__)
__attribute__((format(printf, 2, 3))) __attribute__((format(printf, 2, 3)))
#endif #endif
; ;
extern void AbstractMethod(const char *method); extern void AbstractMethod(const char *method);
extern void MayNotUse(const char *method); extern void MayNotUse(const char *method);
extern void Obsolete(const char *function, const char *asOfVers, const char *removedFromVers);
R__EXTERN const char *kAssertMsg; R__EXTERN const char *kAssertMsg;
R__EXTERN const char *kCheckMsg; R__EXTERN const char *kCheckMsg;
#define R__ASSERT(e) \ #define R__ASSERT(e) \
do { \ do { \
if (!(e)) ::Fatal("", kAssertMsg, _QUOTE_(e), __LINE__, __FILE__); \ if (!(e)) ::Fatal("", kAssertMsg, _QUOTE_(e), __LINE__, __FILE__); \
} while (0) } while (0)
#define R__CHECK(e) \ #define R__CHECK(e) \
do { \ do { \
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TEveCalo.h   TEveCalo.h 
// @(#)root/eve:$Id: TEveCalo.h 35074 2010-08-30 15:18:02Z matevz $ // @(#)root/eve:$Id: TEveCalo.h 38721 2011-04-04 13:37:12Z matevz $
// Author: Matevz Tadel 2007 // Author: Matevz Tadel 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 194 skipping to change at line 194
}; };
/************************************************************************** / /************************************************************************** /
/************************************************************************** / /************************************************************************** /
class TEveCalo2D : public TEveCaloViz, class TEveCalo2D : public TEveCaloViz,
public TEveProjected public TEveProjected
{ {
friend class TEveCalo2DGL; friend class TEveCalo2DGL;
public:
typedef std::vector<TEveCaloData::vCellId_t*> vBinCells_t; typedef std::vector<TEveCaloData::vCellId_t*> vBinCells_t;
typedef std::vector<TEveCaloData::vCellId_t*>::iterator vBinCells_i; typedef std::vector<TEveCaloData::vCellId_t*>::iterator vBinCells_i;
private: private:
TEveCalo2D(const TEveCalo2D&); // Not implemented TEveCalo2D(const TEveCalo2D&); // Not implemented
TEveCalo2D& operator=(const TEveCalo2D&); // Not implemented TEveCalo2D& operator=(const TEveCalo2D&); // Not implemented
TEveProjection::EPType_e fOldProjectionType; TEveProjection::EPType_e fOldProjectionType;
void CellSelectionChangedInternal(TEveCaloData::vCellId_t& cells, std::v ector<TEveCaloData::vCellId_t*>& cellLists); void CellSelectionChangedInternal(TEveCaloData::vCellId_t& cells, std::v ector<TEveCaloData::vCellId_t*>& cellLists);
skipping to change at line 231 skipping to change at line 232
virtual void SetProjection(TEveProjectionManager* proj, TEveProjectable* model); virtual void SetProjection(TEveProjectionManager* proj, TEveProjectable* model);
virtual void UpdateProjection(); virtual void UpdateProjection();
virtual void ComputeBBox(); virtual void ComputeBBox();
virtual void CellSelectionChanged(); virtual void CellSelectionChanged();
virtual void SetScaleAbs(Bool_t); virtual void SetScaleAbs(Bool_t);
virtual Float_t GetValToHeight() const; virtual Float_t GetValToHeight() const;
const TEveCalo2D::vBinCells_t& GetBinLists() const { return fCellLists;
}
ClassDef(TEveCalo2D, 0); // Class for visualization of projected calorim eter event data. ClassDef(TEveCalo2D, 0); // Class for visualization of projected calorim eter event data.
}; };
/************************************************************************** / /************************************************************************** /
/************************************************************************** / /************************************************************************** /
class TEveCaloLego : public TEveCaloViz class TEveCaloLego : public TEveCaloViz
{ {
friend class TEveCaloLegoGL; friend class TEveCaloLegoGL;
friend class TEveCaloLegoOverlay; friend class TEveCaloLegoOverlay;
 End of changes. 3 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TEvePathMark.h   TEvePathMark.h 
// @(#)root/eve:$Id: TEvePathMark.h 32933 2010-04-09 17:28:46Z matevz $ // @(#)root/eve:$Id: TEvePathMark.h 38721 2011-04-04 13:37:12Z matevz $
// Author: Matevz Tadel 2010 // Author: Matevz Tadel 2010
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 45 skipping to change at line 45
TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, TT time=0) : TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, TT time=0) :
fType(type), fV(v), fP(), fE(), fTime(time) {} fType(type), fV(v), fP(), fE(), fTime(time) {}
TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT< TT>& p, TT time=0) : TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT< TT>& p, TT time=0) :
fType(type), fV(v), fP(p), fE(), fTime(time) {} fType(type), fV(v), fP(p), fE(), fTime(time) {}
TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT< TT>& p, const TEveVectorT<TT>& e, TT time=0) : TEvePathMarkT(EType_e type, const TEveVectorT<TT>& v, const TEveVectorT< TT>& p, const TEveVectorT<TT>& e, TT time=0) :
fType(type), fV(v), fP(p), fE(e), fTime(time) {} fType(type), fV(v), fP(p), fE(e), fTime(time) {}
template <typename OO>
TEvePathMarkT(const TEvePathMarkT<OO>& pm) :
fType((EType_e)pm.fType), fV(pm.fV), fP(pm.fP), fE(pm.fE), fTime(pm.f
Time) {}
const char* TypeName(); const char* TypeName();
ClassDefNV(TEvePathMarkT, 1); // Template for a special point on a track : position/momentum reference, daughter creation or decay. ClassDefNV(TEvePathMarkT, 1); // Template for a special point on a track : position/momentum reference, daughter creation or decay.
}; };
typedef TEvePathMarkT<Float_t> TEvePathMark; typedef TEvePathMarkT<Float_t> TEvePathMark;
typedef TEvePathMarkT<Float_t> TEvePathMarkF; typedef TEvePathMarkT<Float_t> TEvePathMarkF;
typedef TEvePathMarkT<Double_t> TEvePathMarkD; typedef TEvePathMarkT<Double_t> TEvePathMarkD;
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 6 lines changed or added


 TEveProjections.h   TEveProjections.h 
// @(#)root/eve:$Id: TEveProjections.h 35221 2010-09-10 11:46:37Z matevz $ // @(#)root/eve:$Id: TEveProjections.h 38721 2011-04-04 13:37:12Z matevz $
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 57 skipping to change at line 57
}; };
typedef std::vector<PreScaleEntry_t> vPreScale_t; typedef std::vector<PreScaleEntry_t> vPreScale_t;
typedef std::vector<PreScaleEntry_t>::iterator vPreScale_i; typedef std::vector<PreScaleEntry_t>::iterator vPreScale_i;
protected: protected:
EPType_e fType; // type EPType_e fType; // type
EGeoMode_e fGeoMode; // strategy of polygon projection (w hat to try first) EGeoMode_e fGeoMode; // strategy of polygon projection (w hat to try first)
TString fName; // name TString fName; // name
TEveVector fCenter; // center of distortion TEveVector fCenter; // center of distortionprivate:
TEveVector fZeroPosVal; // projected origin (0, 0, 0)
bool fDisplaceOrigin; // displace point before projection
Bool_t fUsePreScale; // use pre-scaling Bool_t fUsePreScale; // use pre-scaling
vPreScale_t fPreScales[3]; // scaling before the distortion vPreScale_t fPreScales[3]; // scaling before the distortion
Float_t fDistortion; // distortion Float_t fDistortion; // distortion
Float_t fFixR; // radius from which scaling remains constant Float_t fFixR; // radius from which scaling remains constant
Float_t fFixZ; // z-coordinate from which scaling r emains constant Float_t fFixZ; // z-coordinate from which scaling r emains constant
Float_t fPastFixRFac; // relative scaling factor beyond fF ixR as 10^x Float_t fPastFixRFac; // relative scaling factor beyond fF ixR as 10^x
Float_t fPastFixZFac; // relative scaling factor beyond fF ixZ as 10^x Float_t fPastFixZFac; // relative scaling factor beyond fF ixZ as 10^x
Float_t fScaleR; // scale factor to keep projected ra dius at fFixR fixed Float_t fScaleR; // scale factor to keep projected ra dius at fFixR fixed
Float_t fScaleZ; // scale factor to keep projected z- coordinate at fFixZ fixed Float_t fScaleZ; // scale factor to keep projected z- coordinate at fFixZ fixed
Float_t fPastFixRScale; // relative scaling beyond fFixR Float_t fPastFixRScale; // relative scaling beyond fFixR
Float_t fPastFixZScale; // relative scaling beyond fFixZ Float_t fPastFixZScale; // relative scaling beyond fFixZ
Float_t fMaxTrackStep; // maximum distance between two poin ts on a track Float_t fMaxTrackStep; // maximum distance between two poin ts on a track
TEveVector fLowLimit; // convergence of point +infinity
TEveVector fUpLimit; // convergence of point -infinity
void PreScaleVariable(Int_t dim, Float_t& v); void PreScaleVariable(Int_t dim, Float_t& v);
public: public:
TEveProjection(); TEveProjection();
virtual ~TEveProjection() {} virtual ~TEveProjection() {}
virtual Bool_t Is2D() const = 0; virtual Bool_t Is2D() const = 0;
virtual Bool_t Is3D() const = 0; virtual Bool_t Is3D() const = 0;
virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Flo at_t d, EPProc_e p = kPP_Full) = 0; virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Flo at_t d, EPProc_e p = kPP_Full) = 0;
skipping to change at line 99 skipping to change at line 97
void ProjectPointdv(Double_t* v, Float_t d); void ProjectPointdv(Double_t* v, Float_t d);
void ProjectVector(TEveVector& v, Float_t d); void ProjectVector(TEveVector& v, Float_t d);
void ProjectPointfv(const TEveTrans* t, const Float_t* p , Float_t* v, Float_t d); void ProjectPointfv(const TEveTrans* t, const Float_t* p , Float_t* v, Float_t d);
void ProjectPointdv(const TEveTrans* t, const Double_t* p , Double_t* v, Float_t d); void ProjectPointdv(const TEveTrans* t, const Double_t* p , Double_t* v, Float_t d);
void ProjectVector(const TEveTrans* t, TEveVector& v, Flo at_t d); void ProjectVector(const TEveTrans* t, TEveVector& v, Flo at_t d);
const Char_t* GetName() const { return fName.Data(); } const Char_t* GetName() const { return fName.Data(); }
void SetName(const Char_t* txt) { fName = txt; } void SetName(const Char_t* txt) { fName = txt; }
virtual void SetCenter(TEveVector& v) { fCenter = v; UpdateLimi virtual void SetCenter(TEveVector& v) { fCenter = v; }
t(); } virtual Float_t* GetProjectedCenter();
virtual Float_t* GetProjectedCenter() { return fCenter.Arr(); }
void SetDisplaceOrigin(bool);
Bool_t GetDisplaceOrigin() const { return fDisplaceOrigin;
}
void SetType(EPType_e t) { fType = t; } void SetType(EPType_e t) { fType = t; }
EPType_e GetType() const { return fType; } EPType_e GetType() const { return fType; }
void SetGeoMode(EGeoMode_e m) { fGeoMode = m; } void SetGeoMode(EGeoMode_e m) { fGeoMode = m; }
EGeoMode_e GetGeoMode() const { return fGeoMode; } EGeoMode_e GetGeoMode() const { return fGeoMode; }
virtual void UpdateLimit();
Bool_t GetUsePreScale() const { return fUsePreScale; } Bool_t GetUsePreScale() const { return fUsePreScale; }
void SetUsePreScale(Bool_t x) { fUsePreScale = x; } void SetUsePreScale(Bool_t x) { fUsePreScale = x; }
void PreScalePoint(Float_t& x, Float_t& y); void PreScalePoint(Float_t& x, Float_t& y);
void PreScalePoint(Float_t& x, Float_t& y, Float_t& z); void PreScalePoint(Float_t& x, Float_t& y, Float_t& z);
void AddPreScaleEntry(Int_t coord, Float_t max_val, Float_t scale); void AddPreScaleEntry(Int_t coord, Float_t max_val, Float_t scale);
void ChangePreScaleEntry(Int_t coord, Int_t entry, Float_t new_scale ); void ChangePreScaleEntry(Int_t coord, Int_t entry, Float_t new_scale );
void ClearPreScales(); void ClearPreScales();
void SetDistortion(Float_t d); void SetDistortion(Float_t d);
skipping to change at line 140 skipping to change at line 139
void SetMaxTrackStep(Float_t x) { fMaxTrackStep = TMath::Max(x, 1.0f ); } void SetMaxTrackStep(Float_t x) { fMaxTrackStep = TMath::Max(x, 1.0f ); }
virtual Bool_t HasSeveralSubSpaces() const { return kFALSE; } virtual Bool_t HasSeveralSubSpaces() const { return kFALSE; }
virtual Bool_t AcceptSegment(TEveVector&, TEveVector&, Float_t /*to lerance*/) const { return kTRUE; } virtual Bool_t AcceptSegment(TEveVector&, TEveVector&, Float_t /*to lerance*/) const { return kTRUE; }
virtual Int_t SubSpaceId(const TEveVector&) const { return 0; } virtual Int_t SubSpaceId(const TEveVector&) const { return 0; }
virtual Bool_t IsOnSubSpaceBoundrary(const TEveVector&) const { ret urn kFALSE; } virtual Bool_t IsOnSubSpaceBoundrary(const TEveVector&) const { ret urn kFALSE; }
virtual void BisectBreakPoint(TEveVector& vL, TEveVector& vR, Flo at_t eps_sqr=1e-10f); virtual void BisectBreakPoint(TEveVector& vL, TEveVector& vR, Flo at_t eps_sqr=1e-10f);
virtual void SetDirectionalVector(Int_t screenAxis, TEveVector& v ec); virtual void SetDirectionalVector(Int_t screenAxis, TEveVector& v ec);
// utils to draw axis // utils to draw axis
TEveVector GetOrthogonalCenter(int idx, TEveVector& out);
virtual Float_t GetValForScreenPos(Int_t ax, Float_t value); virtual Float_t GetValForScreenPos(Int_t ax, Float_t value);
virtual Float_t GetScreenVal(Int_t ax, Float_t value); virtual Float_t GetScreenVal(Int_t ax, Float_t value);
Float_t GetLimit(Int_t i, Bool_t pos) { return pos ? fUpLimi Float_t GetScreenVal(Int_t i, Float_t x, TEveVector& dirVec,
t[i] : fLowLimit[i]; } TEveVector& oCenter);
Float_t GetLimit(Int_t i, Bool_t pos);
static Float_t fgEps; // resolution of projected points static Float_t fgEps; // resolution of projected points
static Float_t fgEpsSqr; // square of resolution of projected point s static Float_t fgEpsSqr; // square of resolution of projected point s
ClassDef(TEveProjection, 0); // Base for specific classes that implement non-linear projections. ClassDef(TEveProjection, 0); // Base for specific classes that implement non-linear projections.
}; };
//========================================================================= ===== //========================================================================= =====
// TEveRhoZProjection // TEveRhoZProjection
//========================================================================= ===== //========================================================================= =====
skipping to change at line 168 skipping to change at line 169
public: public:
TEveRhoZProjection(); TEveRhoZProjection();
virtual ~TEveRhoZProjection() {} virtual ~TEveRhoZProjection() {}
virtual Bool_t Is2D() const { return kTRUE; } virtual Bool_t Is2D() const { return kTRUE; }
virtual Bool_t Is3D() const { return kFALSE; } virtual Bool_t Is3D() const { return kFALSE; }
virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Flo at_t d, EPProc_e proc = kPP_Full); virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Flo at_t d, EPProc_e proc = kPP_Full);
virtual void SetCenter(TEveVector& center); virtual void SetCenter(TEveVector& v);
virtual Float_t* GetProjectedCenter() { return fProjectedCenter.Arr() ; } virtual Float_t* GetProjectedCenter() { return fProjectedCenter.Arr() ; }
virtual void UpdateLimit();
virtual Bool_t HasSeveralSubSpaces() const { return kTRUE; } virtual Bool_t HasSeveralSubSpaces() const { return kTRUE; }
virtual Bool_t AcceptSegment(TEveVector& v1, TEveVector& v2, Float_ t tolerance) const; virtual Bool_t AcceptSegment(TEveVector& v1, TEveVector& v2, Float_ t tolerance) const;
virtual Int_t SubSpaceId(const TEveVector& v) const; virtual Int_t SubSpaceId(const TEveVector& v) const;
virtual Bool_t IsOnSubSpaceBoundrary(const TEveVector& v) const; virtual Bool_t IsOnSubSpaceBoundrary(const TEveVector& v) const;
virtual void SetDirectionalVector(Int_t screenAxis, TEveVector& v ec); virtual void SetDirectionalVector(Int_t screenAxis, TEveVector& v ec);
ClassDef(TEveRhoZProjection, 0); // Rho/Z non-linear projection. ClassDef(TEveRhoZProjection, 0); // Rho/Z non-linear projection.
}; };
//========================================================================= ===== //========================================================================= =====
skipping to change at line 218 skipping to change at line 217
virtual ~TEve3DProjection() {} virtual ~TEve3DProjection() {}
virtual Bool_t Is2D() const { return kFALSE; } virtual Bool_t Is2D() const { return kFALSE; }
virtual Bool_t Is3D() const { return kTRUE; } virtual Bool_t Is3D() const { return kTRUE; }
virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Float_t d, EPProc_e proc = kPP_Full); virtual void ProjectPoint(Float_t& x, Float_t& y, Float_t& z, Float_t d, EPProc_e proc = kPP_Full);
ClassDef(TEve3DProjection, 0); // 3D scaling "projection" ClassDef(TEve3DProjection, 0); // 3D scaling "projection"
}; };
// AMT: temporary workaround till root pactches are integrated in CMSSW
#define TEVEPROJECTIONS_DISPLACE_ORIGIN_MODE
#endif #endif
 End of changes. 10 change blocks. 
16 lines changed or deleted 18 lines changed or added


 TEveTrack.h   TEveTrack.h 
// @(#)root/eve:$Id: TEveTrack.h 33864 2010-06-14 09:47:19Z matevz $ // @(#)root/eve:$Id: TEveTrack.h 38721 2011-04-04 13:37:12Z matevz $
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TEveTrack #ifndef ROOT_TEveTrack
#define ROOT_TEveTrack #define ROOT_TEveTrack
#include <vector> #include <vector>
#include "TEveVector.h" #include "TEveVector.h"
#include "TEvePathMark.h" #include "TEvePathMark.h"
#include "TEveVSDStructs.h"
#include "TEveElement.h" #include "TEveElement.h"
#include "TEveLine.h" #include "TEveLine.h"
#include "TPolyMarker3D.h" #include "TPolyMarker3D.h"
#include "TMarker.h" #include "TMarker.h"
class TEveTrackPropagator; class TEveTrackPropagator;
class TEveTrackList; class TEveTrackList;
class TEveRecTrack;
class TEveMCTrack; class TEveMCTrack;
class TParticle; class TParticle;
class TEveTrack : public TEveLine class TEveTrack : public TEveLine
{ {
friend class TEveTrackPropagator; friend class TEveTrackPropagator;
friend class TEveTrackList; friend class TEveTrackList;
friend class TEveTrackGL; friend class TEveTrackGL;
private: private:
TEveTrack& operator=(const TEveTrack&); // Not implemented TEveTrack& operator=(const TEveTrack&); // Not implemented
public: public:
typedef std::vector<TEvePathMark> vPathMark_t; typedef std::vector<TEvePathMarkD> vPathMark_t;
typedef vPathMark_t::iterator vPathMark_i; typedef vPathMark_t::iterator vPathMark_i;
typedef vPathMark_t::const_iterator vPathMark_ci; typedef vPathMark_t::const_iterator vPathMark_ci;
// Deprecated -- to be removed. // Deprecated -- to be removed.
enum EBreakProjectedTracks_e { kBPTDefault, kBPTAlways, kBPTNever }; enum EBreakProjectedTracks_e { kBPTDefault, kBPTAlways, kBPTNever };
protected: protected:
TEveVector fV; // Starting vertex TEveVectorD fV; // Starting vertex
TEveVector fP; // Starting momentum TEveVectorD fP; // Starting momentum
TEveVector fPEnd; // Momentum at the last point of extrapo TEveVectorD fPEnd; // Momentum at the last point of extrapo
lation lation
Double_t fBeta; // Relativistic beta factor Double_t fBeta; // Relativistic beta factor
Int_t fPdg; // PDG code Int_t fPdg; // PDG code
Int_t fCharge; // Charge in units of e0 Int_t fCharge; // Charge in units of e0
Int_t fLabel; // Simulation label Int_t fLabel; // Simulation label
Int_t fIndex; // Reconstruction index Int_t fIndex; // Reconstruction index
Int_t fStatus; // Status-word, user-defined. Int_t fStatus; // Status-word, user-defined.
Bool_t fLockPoints; // Lock points that are currently in - d o nothing in MakeTrack(). Bool_t fLockPoints; // Lock points that are currently in - d o nothing in MakeTrack().
vPathMark_t fPathMarks; // TEveVector of known points along the track vPathMark_t fPathMarks; // TEveVector of known points along the track
Int_t fLastPMIdx; //!Last path-mark index tried in track-p ropagation. Int_t fLastPMIdx; //!Last path-mark index tried in track-p ropagation.
TEveTrackPropagator *fPropagator; // Pointer to shared render-style TEveTrackPropagator *fPropagator; // Pointer to shared render-style
public: public:
TEveTrack(); TEveTrack();
TEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop=0); TEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop=0);
TEveTrack(TEveMCTrack* t, TEveTrackPropagator* prop=0); TEveTrack(TEveMCTrack* t, TEveTrackPropagator* prop=0);
TEveTrack(TEveRecTrack* t, TEveTrackPropagator* prop=0); TEveTrack(TEveRecTrack* t, TEveTrackPropagator* prop=0);
TEveTrack(TEveRecTrackD* t, TEveTrackPropagator* prop=0);
TEveTrack(const TEveTrack& t); TEveTrack(const TEveTrack& t);
virtual ~TEveTrack(); virtual ~TEveTrack();
virtual void ComputeBBox(); virtual void ComputeBBox();
virtual void SetStdTitle(); virtual void SetStdTitle();
virtual void SetTrackParams(const TEveTrack& t); virtual void SetTrackParams(const TEveTrack& t);
virtual void SetPathMarks (const TEveTrack& t); virtual void SetPathMarks (const TEveTrack& t);
virtual void MakeTrack(Bool_t recurse=kTRUE); virtual void MakeTrack(Bool_t recurse=kTRUE);
TEveTrackPropagator* GetPropagator() const { return fPropagator; } TEveTrackPropagator* GetPropagator() const { return fPropagator; }
Int_t GetLastPMIdx() const { return fLastPMIdx; } Int_t GetLastPMIdx() const { return fLastPMIdx; }
void SetPropagator(TEveTrackPropagator* prop); void SetPropagator(TEveTrackPropagator* prop);
void SetAttLineAttMarker(TEveTrackList* tl); void SetAttLineAttMarker(TEveTrackList* tl);
const TEveVector& GetVertex() const { return fV; } const TEveVectorD& GetVertex() const { return fV; }
const TEveVector& GetMomentum() const { return fP; } const TEveVectorD& GetMomentum() const { return fP; }
const TEveVector& GetEndMomentum() const { return fPEnd; } const TEveVectorD& GetEndMomentum() const { return fPEnd; }
Int_t GetPdg() const { return fPdg; } Int_t GetPdg() const { return fPdg; }
void SetPdg(Int_t pdg) { fPdg = pdg; } void SetPdg(Int_t pdg) { fPdg = pdg; }
Int_t GetCharge() const { return fCharge; } Int_t GetCharge() const { return fCharge; }
void SetCharge(Int_t chg) { fCharge = chg; } void SetCharge(Int_t chg) { fCharge = chg; }
Int_t GetLabel() const { return fLabel; } Int_t GetLabel() const { return fLabel; }
void SetLabel(Int_t lbl) { fLabel = lbl; } void SetLabel(Int_t lbl) { fLabel = lbl; }
Int_t GetIndex() const { return fIndex; } Int_t GetIndex() const { return fIndex; }
void SetIndex(Int_t idx) { fIndex = idx; } void SetIndex(Int_t idx) { fIndex = idx; }
Int_t GetStatus() const { return fStatus; } Int_t GetStatus() const { return fStatus; }
void SetStatus(Int_t idx) { fStatus = idx; } void SetStatus(Int_t idx) { fStatus = idx; }
void AddPathMark(const TEvePathMark& pm) { fPathMarks.push_back(pm); } void AddPathMark(const TEvePathMarkD& pm) { fPathMarks.push_back(pm); }
void AddPathMark(const TEvePathMark& pm) { fPathMarks.push_back(pm); }
void SortPathMarksByTime(); void SortPathMarksByTime();
vPathMark_t& RefPathMarks() { return fPathMarks; } vPathMark_t& RefPathMarks() { return fPathMarks; }
const vPathMark_t& RefPathMarks() const { return fPathMarks; } const vPathMark_t& RefPathMarks() const { return fPathMarks; }
void PrintPathMarks(); // *MENU* void PrintPathMarks(); // *MENU*
void SetLockPoints(Bool_t l) { fLockPoints = l; } void SetLockPoints(Bool_t l) { fLockPoints = l; }
Bool_t GetLockPoints() const { return fLockPoints; } Bool_t GetLockPoints() const { return fLockPoints; }
//------------------------------------------------------------------- //-------------------------------------------------------------------
skipping to change at line 131 skipping to change at line 134
virtual TClass* ProjectedClass(const TEveProjection* p) const; virtual TClass* ProjectedClass(const TEveProjection* p) const;
// These functions are deprecated -- use TEveTrackPropagator functions. // These functions are deprecated -- use TEveTrackPropagator functions.
// Will be removed after 5.28. // Will be removed after 5.28.
Bool_t ShouldBreakTrack() const; Bool_t ShouldBreakTrack() const;
UChar_t GetBreakProjectedTracks() const; UChar_t GetBreakProjectedTracks() const;
void SetBreakProjectedTracks(UChar_t bt); void SetBreakProjectedTracks(UChar_t bt);
static Bool_t GetDefaultBreakProjectedTracks(); static Bool_t GetDefaultBreakProjectedTracks();
static void SetDefaultBreakProjectedTracks(Bool_t bt); static void SetDefaultBreakProjectedTracks(Bool_t bt);
ClassDef(TEveTrack, 1); // Track with given vertex, momentum and optiona l referece-points (path-marks) along its path. ClassDef(TEveTrack, 0); // Track with given vertex, momentum and optiona l referece-points (path-marks) along its path.
}; };
/************************************************************************** ****/ /************************************************************************** ****/
// TEveTrackList // TEveTrackList
/************************************************************************** ****/ /************************************************************************** ****/
class TEveTrackList : public TEveElementList, class TEveTrackList : public TEveElementList,
public TAttMarker, public TAttMarker,
public TAttLine public TAttLine
{ {
skipping to change at line 156 skipping to change at line 159
TEveTrackList& operator=(const TEveTrackList&); // Not implemented TEveTrackList& operator=(const TEveTrackList&); // Not implemented
protected: protected:
TEveTrackPropagator* fPropagator; // Basic track rendering parameters, not enforced to elements. TEveTrackPropagator* fPropagator; // Basic track rendering parameters, not enforced to elements.
Bool_t fRecurse; // Recurse when propagating marker/lin e/etc attributes to tracks. Bool_t fRecurse; // Recurse when propagating marker/lin e/etc attributes to tracks.
Bool_t fRnrLine; // Render track as line. Bool_t fRnrLine; // Render track as line.
Bool_t fRnrPoints; // Render track as points. Bool_t fRnrPoints; // Render track as points.
Float_t fMinPt; // Minimum track pT for display select Double_t fMinPt; // Minimum track pTfor display selecti
ion. on.
Float_t fMaxPt; // Maximum track pT for display select Double_t fMaxPt; // Maximum track pTfor display selecti
ion. on.
Float_t fLimPt; // Highest track pT in the container. Double_t fLimPt; // Highest track pT in the container.
Float_t fMinP; // Minimum track p for display selecti Double_t fMinP; // Minimum track pfor display selectio
on. n.
Float_t fMaxP; // Maximum track p for display selecti Double_t fMaxP; // Maximum track pfor display selectio
on. n.
Float_t fLimP; // Highest track p in the container. Double_t fLimP; // Highest track p in the container.
void FindMomentumLimits(TEveElement* el, Bool_t recurse=kTRUE); void FindMomentumLimits(TEveElement* el, Bool_t recurse=kTRUE);
Float_t RoundMomentumLimit(Float_t x); Double_t RoundMomentumLimit(Double_t x);
void SanitizeMinMaxCuts(); void SanitizeMinMaxCuts();
public: public:
TEveTrackList(TEveTrackPropagator* prop=0); TEveTrackList(TEveTrackPropagator* prop=0);
TEveTrackList(const char* name, TEveTrackPropagator* prop=0); TEveTrackList(const char* name, TEveTrackPropagator* prop=0);
virtual ~TEveTrackList(); virtual ~TEveTrackList();
void MakeTracks(Bool_t recurse=kTRUE); void MakeTracks(Bool_t recurse=kTRUE);
void FindMomentumLimits(Bool_t recurse=kTRUE); void FindMomentumLimits(Bool_t recurse=kTRUE);
void SetPropagator(TEveTrackPropagator* prop); void SetPropagator(TEveTrackPropagator* prop);
skipping to change at line 206 skipping to change at line 209
virtual void SetMarkerStyle(Style_t s, TEveElement* el); virtual void SetMarkerStyle(Style_t s, TEveElement* el);
void SetRnrLine(Bool_t rnr); void SetRnrLine(Bool_t rnr);
void SetRnrLine(Bool_t rnr, TEveElement* el); void SetRnrLine(Bool_t rnr, TEveElement* el);
Bool_t GetRnrLine() const { return fRnrLine; } Bool_t GetRnrLine() const { return fRnrLine; }
void SetRnrPoints(Bool_t r); void SetRnrPoints(Bool_t r);
void SetRnrPoints(Bool_t r, TEveElement* el); void SetRnrPoints(Bool_t r, TEveElement* el);
Bool_t GetRnrPoints() const { return fRnrPoints; } Bool_t GetRnrPoints() const { return fRnrPoints; }
void SelectByPt(Float_t min_pt, Float_t max_pt); void SelectByPt(Double_t min_pt, Double_t max_pt);
void SelectByPt(Float_t min_pt, Float_t max_pt, TEveElement* el); void SelectByPt(Double_t min_pt, Double_t max_pt, TEveElement* el);
void SelectByP (Float_t min_p, Float_t max_p); void SelectByP (Double_t min_p, Double_t max_p);
void SelectByP (Float_t min_p, Float_t max_p, TEveElement* el); void SelectByP (Double_t min_p, Double_t max_p, TEveElement* el);
Float_t GetMinPt() const { return fMinPt; } Double_t GetMinPt() const { return fMinPt; }
Float_t GetMaxPt() const { return fMaxPt; } Double_t GetMaxPt() const { return fMaxPt; }
Float_t GetLimPt() const { return fLimPt; } Double_t GetLimPt() const { return fLimPt; }
Float_t GetMinP() const { return fMinP; } Double_t GetMinP() const { return fMinP; }
Float_t GetMaxP() const { return fMaxP; } Double_t GetMaxP() const { return fMaxP; }
Float_t GetLimP() const { return fLimP; } Double_t GetLimP() const { return fLimP; }
//------------------------------------------------------------------- //-------------------------------------------------------------------
TEveTrack* FindTrackByLabel(Int_t label); // *MENU* TEveTrack* FindTrackByLabel(Int_t label); // *MENU*
TEveTrack* FindTrackByIndex(Int_t index); // *MENU* TEveTrack* FindTrackByIndex(Int_t index); // *MENU*
virtual void CopyVizParams(const TEveElement* el); virtual void CopyVizParams(const TEveElement* el);
virtual void WriteVizParams(ostream& out, const TString& var); virtual void WriteVizParams(ostream& out, const TString& var);
virtual TClass* ProjectedClass(const TEveProjection* p) const; virtual TClass* ProjectedClass(const TEveProjection* p) const;
 End of changes. 11 change blocks. 
37 lines changed or deleted 40 lines changed or added


 TEveTrackPropagator.h   TEveTrackPropagator.h 
// @(#)root/eve:$Id: TEveTrackPropagator.h 33627 2010-05-27 19:19:58Z matev z $ // @(#)root/eve:$Id: TEveTrackPropagator.h 38739 2011-04-05 14:16:41Z matev z $
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 40 skipping to change at line 40
{ {
protected: protected:
Bool_t fFieldConstant; Bool_t fFieldConstant;
public: public:
TEveMagField(): fFieldConstant(kFALSE){} TEveMagField(): fFieldConstant(kFALSE){}
virtual ~TEveMagField(){} virtual ~TEveMagField(){}
virtual Bool_t IsConst() const {return fFieldConstant;}; virtual Bool_t IsConst() const {return fFieldConstant;};
virtual void PrintField(Float_t x, Float_t y, Float_t z) const virtual void PrintField(Double_t x, Double_t y, Double_t z) const
{ {
TEveVector b = GetField(x, y, z); TEveVector b = GetField(x, y, z);
printf("v(%f, %f, %f) B(%f, %f, %f) \n", x, y, z, b.fX, b.fY, b.fZ); printf("v(%f, %f, %f) B(%f, %f, %f) \n", x, y, z, b.fX, b.fY, b.fZ);
} }
virtual TEveVector GetField(const TEveVector &v) const { return GetField TEveVectorD GetFieldD(const TEveVectorD &v) const { return GetFieldD(v.f
(v.fX, v.fY, v.fZ);} X, v.fY, v.fZ); }
virtual TEveVector GetField(Float_t x, Float_t y, Float_t z) const = 0;
// Track propgator uses only GetFieldD() and GetMaxFieldMagD(). Have to
keep/reuse
// GetField() and GetMaxFieldMag() because of backward compatibility.
virtual TEveVectorD GetFieldD(Double_t x, Double_t y, Double_t z) const
{ return GetField(x, y, z); }
virtual Double_t GetMaxFieldMagD() const { return GetMaxFieldMag(); } //
not abstract because of backward compatibility
virtual TEveVector GetField(Float_t, Float_t, Float_t) const { return TE
veVector(); }
virtual Float_t GetMaxFieldMag() const { return 4; } // not abstract bec ause of backward compatibility virtual Float_t GetMaxFieldMag() const { return 4; } // not abstract bec ause of backward compatibility
ClassDef(TEveMagField, 0); // Abstract interface to magnetic field ClassDef(TEveMagField, 0); // Abstract interface to magnetic field
}; };
//========================================================================= ===== //========================================================================= =====
// TEveMagFieldConst // TEveMagFieldConst
//========================================================================= ===== //========================================================================= =====
class TEveMagFieldConst : public TEveMagField class TEveMagFieldConst : public TEveMagField
{ {
protected: protected:
TEveVector fB; TEveVectorD fB;
public: public:
TEveMagFieldConst(Float_t x, Float_t y, Float_t z) : TEveMagField(), fB( x, y, z) TEveMagFieldConst(Double_t x, Double_t y, Double_t z) : TEveMagField(), fB(x, y, z)
{ fFieldConstant = kTRUE; } { fFieldConstant = kTRUE; }
virtual ~TEveMagFieldConst() {} virtual ~TEveMagFieldConst() {}
using TEveMagField::GetField; using TEveMagField::GetField;
virtual TEveVector GetField(Float_t /*x*/, Float_t /*y*/, Float_t /*z*/) virtual TEveVectorD GetFieldD(Double_t /*x*/, Double_t /*y*/, Double_t /
const { return fB; } *z*/) const { return fB; }
virtual Float_t GetMaxFieldMag() const { return fB.Mag(); }; virtual Double_t GetMaxFieldMagD() const { return fB.Mag(); };
ClassDef(TEveMagFieldConst, 0); // Interface to constant magnetic field. ClassDef(TEveMagFieldConst, 0); // Interface to constant magnetic field.
}; };
//========================================================================= ===== //========================================================================= =====
// TEveMagFieldDuo // TEveMagFieldDuo
//========================================================================= ===== //========================================================================= =====
class TEveMagFieldDuo : public TEveMagField class TEveMagFieldDuo : public TEveMagField
{ {
protected: protected:
TEveVector fBIn; TEveVectorD fBIn;
TEveVector fBOut; TEveVectorD fBOut;
Float_t fR2; Double_t fR2;
public: public:
TEveMagFieldDuo(Float_t r, Float_t bIn, Float_t bOut) : TEveMagField(), TEveMagFieldDuo(Double_t r, Double_t bIn, Double_t bOut) : TEveMagField( ),
fBIn(0,0,bIn), fBOut(0,0,bOut), fR2(r*r) fBIn(0,0,bIn), fBOut(0,0,bOut), fR2(r*r)
{ {
fFieldConstant = kFALSE; fFieldConstant = kFALSE;
} }
virtual ~TEveMagFieldDuo() {} virtual ~TEveMagFieldDuo() {}
using TEveMagField::GetField; using TEveMagField::GetField;
virtual TEveVector GetField(Float_t x, Float_t y, Float_t /*z*/) const virtual TEveVectorD GetFieldD(Double_t x, Double_t y, Double_t /*z*/) co nst
{ return ((x*x+y*y)<fR2) ? fBIn : fBOut; } { return ((x*x+y*y)<fR2) ? fBIn : fBOut; }
virtual Float_t GetMaxFieldMag() const
{ Float_t b1 = fBIn.Mag(), b2 = fBOut.Mag(); return b1 > b2 ? b1 : b2; } virtual Double_t GetMaxFieldMagD() const
{ Double_t b1 = fBIn.Mag(), b2 = fBOut.Mag(); return b1 > b2 ? b1 : b2;
}
ClassDef(TEveMagFieldDuo, 0); // Interface to magnetic field with two di fferent values depending of radius. ClassDef(TEveMagFieldDuo, 0); // Interface to magnetic field with two di fferent values depending of radius.
}; };
//========================================================================= ===== //========================================================================= =====
// TEveTrackPropagator // TEveTrackPropagator
//========================================================================= ===== //========================================================================= =====
class TEveTrackPropagator : public TEveElementList, class TEveTrackPropagator : public TEveElementList,
public TEveRefBackPtr public TEveRefBackPtr
{ {
friend class TEveTrackPropagatorSubEditor; friend class TEveTrackPropagatorSubEditor;
public: public:
enum EStepper_e { kHelix, kRungeKutta };
enum EProjTrackBreaking_e { kPTB_Break, kPTB_UseFirstPointPos, kPTB_UseL
astPointPos };
protected:
struct Helix_t struct Helix_t
{ {
Int_t fCharge; // Charge of tracked particle. Int_t fCharge; // Charge of tracked particle.
Float_t fMaxAng; // Maximum step angle. Double_t fMaxAng; // Maximum step angle.
Float_t fMaxStep; // Maximum allowed step size. Double_t fMaxStep; // Maximum allowed step size.
Float_t fDelta; // Maximum error in the middle of the step. Double_t fDelta; // Maximum error in the middle of the step.
Float_t fPhi; // Accumulated angle to check fMaxOrbs by propagat Double_t fPhi; // Accumulated angle to check fMaxOrbs by propaga
or. tor.
Bool_t fValid; // Corner case pT~0 or B~0, possible in variable m Bool_t fValid; // Corner case pT~0 or B~0, possible in variable
ag field. mag field.
// ---------------------------------------------------------------- // ----------------------------------------------------------------
// helix parameters // helix parameters
Float_t fLam; // Momentum ratio pT/pZ. Double_t fLam; // Momentum ratio pT/pZ.
Float_t fR; // Helix radius in cm. Double_t fR; // Helix radius in cm.
Float_t fPhiStep; // Caluclated from fMinAng and fDelta. Double_t fPhiStep; // Caluclated from fMinAng and fDelta.
Float_t fSin, fCos; // Current sin/cos(phistep). Double_t fSin, fCos; // Current sin/cos(phistep).
// Runge-Kutta parameters // Runge-Kutta parameters
Float_t fRKStep; // Step for Runge-Kutta. Double_t fRKStep; // Step for Runge-Kutta.
// cached // cached
TEveVector fB; // Current magnetic field, cached. TEveVectorD fB; // Current magnetic field, cached.
TEveVector fE1, fE2, fE3; // Base vectors: E1 -> B dir, E2->pT dir, E TEveVectorD fE1, fE2, fE3; // Base vectors: E1 -> B dir, E2->pT dir,
3 = E1xE2. E3 = E1xE2.
TEveVector fPt, fPl; // Transverse and longitudinal momentum. TEveVectorD fPt, fPl; // Transverse and longitudinal momentum.
Float_t fPtMag; // Magnitude of pT. Double_t fPtMag; // Magnitude of pT.
Float_t fPlMag; // Momentum parallel to mag field. Double_t fPlMag; // Momentum parallel to mag field.
Float_t fLStep; // Transverse step arc-length in cm. Double_t fLStep; // Transverse step arc-length in cm.
// ---------------------------------------------------------------- // ----------------------------------------------------------------
Helix_t(); Helix_t();
void UpdateCommon(const TEveVector & p, const TEveVector& b); void UpdateCommon(const TEveVectorD & p, const TEveVectorD& b);
void UpdateHelix(const TEveVector & p, const TEveVector& b, Bool_t fu void UpdateHelix (const TEveVectorD & p, const TEveVectorD& b, Bool_t
ll_update, Bool_t enforce_max_step); full_update, Bool_t enforce_max_step);
void UpdateRK (const TEveVector & p, const TEveVector& b); void UpdateRK (const TEveVectorD & p, const TEveVectorD& b);
void Step(const TEveVector4& v, const TEveVector& p, TEveVector4& vOu t, TEveVector& pOut); void Step(const TEveVector4D& v, const TEveVectorD& p, TEveVector4D& vOut, TEveVectorD& pOut);
Float_t GetStep() { return fLStep * TMath::Sqrt(1 + fLam*fLam); } Double_t GetStep() { return fLStep * TMath::Sqrt(1 + fLam*fLam); }
Float_t GetStep2() { return fLStep * fLStep * (1 + fLam*fLam); } Double_t GetStep2() { return fLStep * fLStep * (1 + fLam*fLam); }
}; };
enum EStepper_e { kHelix, kRungeKutta };
enum EProjTrackBreaking_e { kPTB_Break, kPTB_UseFirstPointPos, kPTB_UseL
astPointPos };
private: private:
TEveTrackPropagator(const TEveTrackPropagator&); // Not imple mented TEveTrackPropagator(const TEveTrackPropagator&); // Not imple mented
TEveTrackPropagator& operator=(const TEveTrackPropagator&); // Not imple mented TEveTrackPropagator& operator=(const TEveTrackPropagator&); // Not imple mented
protected: protected:
EStepper_e fStepper; EStepper_e fStepper;
TEveMagField* fMagFieldObj; TEveMagField* fMagFieldObj;
Bool_t fOwnMagFiledObj; Bool_t fOwnMagFiledObj;
// Track extrapolation limits // Track extrapolation limits
Float_t fMaxR; // Max radius for track extrapo Double_t fMaxR; // Max radius for track extrap
lation olation
Float_t fMaxZ; // Max z-coordinate for track e Double_t fMaxZ; // Max z-coordinate for track
xtrapolation. extrapolation.
Int_t fNMax; // Max steps Int_t fNMax; // Max steps
// Helix limits // Helix limits
Float_t fMaxOrbs; // Maximal angular path of trac ks' orbits (1 ~ 2Pi). Double_t fMaxOrbs; // Maximal angular path of tra cks' orbits (1 ~ 2Pi).
// Path-mark / first-vertex control // Path-mark / first-vertex control
Bool_t fEditPathMarks; // Show widgets for path-mark c ontrol in GUI editor. Bool_t fEditPathMarks; // Show widgets for path-mark c ontrol in GUI editor.
Bool_t fFitDaughters; // Pass through daughter creati on points when extrapolating a track. Bool_t fFitDaughters; // Pass through daughter creati on points when extrapolating a track.
Bool_t fFitReferences; // Pass through given track-ref erences when extrapolating a track. Bool_t fFitReferences; // Pass through given track-ref erences when extrapolating a track.
Bool_t fFitDecay; // Pass through decay point whe n extrapolating a track. Bool_t fFitDecay; // Pass through decay point whe n extrapolating a track.
Bool_t fFitCluster2Ds; // Pass through 2D-clusters whe n extrapolating a track. Bool_t fFitCluster2Ds; // Pass through 2D-clusters whe n extrapolating a track.
Bool_t fRnrDaughters; // Render daughter path-marks. Bool_t fRnrDaughters; // Render daughter path-marks.
Bool_t fRnrReferences; // Render track-reference path- marks. Bool_t fRnrReferences; // Render track-reference path- marks.
Bool_t fRnrDecay; // Render decay path-marks. Bool_t fRnrDecay; // Render decay path-marks.
skipping to change at line 198 skipping to change at line 207
TMarker fFVAtt; // Marker attributes for fits v ertex. TMarker fFVAtt; // Marker attributes for fits v ertex.
// Handling of discontinuities in projections // Handling of discontinuities in projections
UChar_t fProjTrackBreaking; // Handling of projected-tr ack breaking. UChar_t fProjTrackBreaking; // Handling of projected-tr ack breaking.
Bool_t fRnrPTBMarkers; // Render break-points on t racks. Bool_t fRnrPTBMarkers; // Render break-points on t racks.
TMarker fPTBAtt; // Marker attributes for tr ack break-points. TMarker fPTBAtt; // Marker attributes for tr ack break-points.
// ---------------------------------------------------------------- // ----------------------------------------------------------------
// Propagation, state of current track // Propagation, state of current track
std::vector<TEveVector4> fPoints; // Calculated point. std::vector<TEveVector4D> fPoints; // Calculated point.
TEveVector fV; // Start vertex. TEveVectorD fV; // Start vertex.
Helix_t fH; // Helix. Helix_t fH; // Helix.
void RebuildTracks(); void RebuildTracks();
void Update(const TEveVector4& v, const TEveVector& p, Bool_t full_up void Update(const TEveVector4D& v, const TEveVectorD& p, Bool_t full_
date=kFALSE, Bool_t enforce_max_step=kFALSE); update=kFALSE, Bool_t enforce_max_step=kFALSE);
void Step(const TEveVector4 &v, const TEveVector &p, TEveVector4 &vOu void Step(const TEveVector4D &v, const TEveVectorD &p, TEveVector4D &
t, TEveVector &pOut); vOut, TEveVectorD &pOut);
Bool_t LoopToVertex(TEveVector& v, TEveVector& p); Bool_t LoopToVertex(TEveVectorD& v, TEveVectorD& p);
void LoopToBounds(TEveVector& p); void LoopToBounds(TEveVectorD& p);
Bool_t LineToVertex (TEveVector& v); Bool_t LineToVertex (TEveVectorD& v);
void LineToBounds (TEveVector& p); void LineToBounds (TEveVectorD& p);
void StepRungeKutta(Double_t step, Double_t* vect, Double_t* vout); void StepRungeKutta(Double_t step, Double_t* vect, Double_t* vout);
Bool_t HelixIntersectPlane(const TEveVector& p, const TEveVector& point Bool_t HelixIntersectPlane(const TEveVectorD& p, const TEveVectorD& poi
, const TEveVector& normal, nt, const TEveVectorD& normal,
TEveVector& itsect); TEveVectorD&itsect);
Bool_t LineIntersectPlane(const TEveVector& p, const TEveVector& point, Bool_t LineIntersectPlane(const TEveVectorD& p, const TEveVectorD& poin
const TEveVector& normal, t, const TEveVectorD& normal,
TEveVector& itsect); TEveVectorD& itsect);
Bool_t PointOverVertex(const TEveVector4& v0, const TEveVector4& v, Floa t_t* p=0); Bool_t PointOverVertex(const TEveVector4D& v0, const TEveVector4D& v, Do uble_t* p=0);
public: public:
TEveTrackPropagator(const char* n="TEveTrackPropagator", const char* t=" ", TEveTrackPropagator(const char* n="TEveTrackPropagator", const char* t=" ",
TEveMagField* field=0, Bool_t own_field=kTRUE); TEveMagField* field=0, Bool_t own_field=kTRUE);
virtual ~TEveTrackPropagator(); virtual ~TEveTrackPropagator();
virtual void OnZeroRefCount(); virtual void OnZeroRefCount();
virtual void CheckReferenceCount(const TEveException& eh="TEveElement::C heckReferenceCount "); virtual void CheckReferenceCount(const TEveException& eh="TEveElement::C heckReferenceCount ");
virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw=kF ALSE); virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw=kF ALSE);
// propagation // propagation
void InitTrack(TEveVector& v, Int_t charge); void InitTrack(const TEveVectorD& v, Int_t charge);
void ResetTrack(); void ResetTrack();
void GoToBounds(TEveVector& p); void GoToBounds(TEveVectorD& p);
Bool_t GoToVertex(TEveVector& v, TEveVector& p); Bool_t GoToVertex(TEveVectorD& v, TEveVectorD& p);
// TEveVectorF wrappers
void InitTrack(const TEveVectorF& v, Int_t charge);
void GoToBounds(TEveVectorF& p);
Bool_t GoToVertex(TEveVectorF& v, TEveVectorF&p);
Bool_t IntersectPlane(const TEveVector& p, const TEveVector& point, cons Bool_t IntersectPlane(const TEveVectorD& p, const TEveVectorD& point, co
t TEveVector& normal, nst TEveVectorD& normal,
TEveVector& itsect); TEveVectorD& itsect);
void FillPointSet(TEvePointSet* ps) const; void FillPointSet(TEvePointSet* ps) const;
void SetStepper(EStepper_e s) { fStepper = s; } void SetStepper(EStepper_e s) { fStepper = s; }
void SetMagField(Float_t bX, Float_t bY, Float_t bZ); void SetMagField(Double_t bX, Double_t bY, Double_t bZ);
void SetMagField(Float_t b) { SetMagField(0.f, 0.f, b); } void SetMagField(Double_t b) { SetMagField(0, 0, b); }
void SetMagFieldObj(TEveMagField* field, Bool_t own_field=kTRUE); void SetMagFieldObj(TEveMagField* field, Bool_t own_field=kTRUE);
void SetMaxR(Float_t x); void SetMaxR(Double_t x);
void SetMaxZ(Float_t x); void SetMaxZ(Double_t x);
void SetMaxOrbs(Float_t x); void SetMaxOrbs(Double_t x);
void SetMinAng(Float_t x); void SetMinAng(Double_t x);
void SetMaxAng(Float_t x); void SetMaxAng(Double_t x);
void SetMaxStep(Float_t x); void SetMaxStep(Double_t x);
void SetDelta(Float_t x); void SetDelta(Double_t x);
void SetEditPathMarks(Bool_t x) { fEditPathMarks = x; } void SetEditPathMarks(Bool_t x) { fEditPathMarks = x; }
void SetRnrDaughters(Bool_t x); void SetRnrDaughters(Bool_t x);
void SetRnrReferences(Bool_t x); void SetRnrReferences(Bool_t x);
void SetRnrDecay(Bool_t x); void SetRnrDecay(Bool_t x);
void SetRnrCluster2Ds(Bool_t x); void SetRnrCluster2Ds(Bool_t x);
void SetFitDaughters(Bool_t x); void SetFitDaughters(Bool_t x);
void SetFitReferences(Bool_t x); void SetFitReferences(Bool_t x);
void SetFitDecay(Bool_t x); void SetFitDecay(Bool_t x);
void SetFitCluster2Ds(Bool_t x); void SetFitCluster2Ds(Bool_t x);
void SetRnrFV(Bool_t x); void SetRnrFV(Bool_t x);
void SetProjTrackBreaking(UChar_t x); void SetProjTrackBreaking(UChar_t x);
void SetRnrPTBMarkers(Bool_t x); void SetRnrPTBMarkers(Bool_t x);
TEveVector GetMagField(Float_t x, Float_t y, Float_t z) { return fMagFie TEveVectorD GetMagField(Double_t x, Double_t y, Double_t z) { return fMa
ldObj->GetField(x, y, z); } gFieldObj->GetField(x, y, z); }
void PrintMagField(Float_t x, Float_t y, Float_t z) const; void PrintMagField(Double_t x, Double_t y, Double_t z) const;
EStepper_e GetStepper() const { return fStepper;} EStepper_e GetStepper() const { return fStepper;}
Float_t GetMaxR() const { return fMaxR; } Double_t GetMaxR() const { return fMaxR; }
Float_t GetMaxZ() const { return fMaxZ; } Double_t GetMaxZ() const { return fMaxZ; }
Float_t GetMaxOrbs() const { return fMaxOrbs; } Double_t GetMaxOrbs() const { return fMaxOrbs; }
Float_t GetMinAng() const; Double_t GetMinAng() const;
Float_t GetMaxAng() const { return fH.fMaxAng; } Double_t GetMaxAng() const { return fH.fMaxAng; }
Float_t GetMaxStep() const { return fH.fMaxStep; } Double_t GetMaxStep() const { return fH.fMaxStep; }
Float_t GetDelta() const { return fH.fDelta; } Double_t GetDelta() const { return fH.fDelta; }
Bool_t GetEditPathMarks() const { return fEditPathMarks; } Bool_t GetEditPathMarks() const { return fEditPathMarks; }
Bool_t GetRnrDaughters() const { return fRnrDaughters; } Bool_t GetRnrDaughters() const { return fRnrDaughters; }
Bool_t GetRnrReferences() const { return fRnrReferences; } Bool_t GetRnrReferences() const { return fRnrReferences; }
Bool_t GetRnrDecay() const { return fRnrDecay; } Bool_t GetRnrDecay() const { return fRnrDecay; }
Bool_t GetRnrCluster2Ds() const { return fRnrCluster2Ds; } Bool_t GetRnrCluster2Ds() const { return fRnrCluster2Ds; }
Bool_t GetFitDaughters() const { return fFitDaughters; } Bool_t GetFitDaughters() const { return fFitDaughters; }
Bool_t GetFitReferences() const { return fFitReferences; } Bool_t GetFitReferences() const { return fFitReferences; }
Bool_t GetFitDecay() const { return fFitDecay; } Bool_t GetFitDecay() const { return fFitDecay; }
Bool_t GetFitCluster2Ds() const { return fFitCluster2Ds; } Bool_t GetFitCluster2Ds() const { return fFitCluster2Ds; }
Bool_t GetRnrFV() const { return fRnrFV; } Bool_t GetRnrFV() const { return fRnrFV; }
UChar_t GetProjTrackBreaking() const { return fProjTrackBreaking; } UChar_t GetProjTrackBreaking() const { return fProjTrackBreaking; }
Bool_t GetRnrPTBMarkers() const { return fRnrPTBMarkers; } Bool_t GetRnrPTBMarkers() const { return fRnrPTBMarkers; }
TMarker& RefPMAtt() { return fPMAtt; } TMarker& RefPMAtt() { return fPMAtt; }
TMarker& RefFVAtt() { return fFVAtt; } TMarker& RefFVAtt() { return fFVAtt; }
TMarker& RefPTBAtt() { return fPTBAtt; } TMarker& RefPTBAtt() { return fPTBAtt; }
static Bool_t IsOutsideBounds(const TEveVector& point, Float_t maxRsqr, Float_t maxZ); static Bool_t IsOutsideBounds(const TEveVectorD& point, Double_t maxRsqr , Double_t maxZ);
static Float_t fgDefMagField; // Default value for constant static Double_t fgDefMagField; // Default value for constant
solenoid magnetic field. solenoid magnetic field.
static const Float_t fgkB2C; // Constant for conversion of static const Double_t fgkB2C; // Constant for conversion of
momentum to curvature. momentum to curvature.
static TEveTrackPropagator fgDefault; // Default track propagator. static TEveTrackPropagator fgDefault; // Default track propagator.
static Float_t fgEditorMaxR; // Max R that can be set in GU static Double_t fgEditorMaxR; // Max R that can be set in G
I editor. UI editor.
static Float_t fgEditorMaxZ; // Max Z that can be set in GU static Double_t fgEditorMaxZ; // Max Z that can be set in G
I editor. UI editor.
ClassDef(TEveTrackPropagator, 0); // Calculates path of a particle takin g into account special path-marks and imposed boundaries. ClassDef(TEveTrackPropagator, 0); // Calculates path of a particle takin g into account special path-marks and imposed boundaries.
}; };
//_________________________________________________________________________ _____ //_________________________________________________________________________ _____
inline Bool_t TEveTrackPropagator::IsOutsideBounds(const TEveVector& point, inline Bool_t TEveTrackPropagator::IsOutsideBounds(const TEveVectorD& point
Float_t maxRsq ,
r, Double_t maxRs
Float_t maxZ) qr,
Double_t maxZ)
{ {
// Return true if point% is outside of cylindrical bounds detrmined by // Return true if point% is outside of cylindrical bounds detrmined by
// square radius and z. // square radius and z.
return TMath::Abs(point.fZ) > maxZ || return TMath::Abs(point.fZ) > maxZ ||
point.fX*point.fX + point.fY*point.fY > maxRsqr; point.fX*point.fX + point.fY*point.fY > maxRsqr;
} }
//_________________________________________________________________________ _____ //_________________________________________________________________________ _____
inline Bool_t TEveTrackPropagator::PointOverVertex(const TEveVector4 &v0, inline Bool_t TEveTrackPropagator::PointOverVertex(const TEveVector4D &v0,
const TEveVector4 &v, const TEveVector4D &v,
Float_t *p) Double_t *p)
{ {
static const Float_t kMinPl = 1e-5; static const Double_t kMinPl = 1e-5;
TEveVector dv; dv.Sub(v0, v); TEveVectorD dv; dv.Sub(v0, v);
Float_t dotV; Double_t dotV;
if (TMath::Abs(fH.fPlMag) > kMinPl) if (TMath::Abs(fH.fPlMag) > kMinPl)
{ {
// Use longitudinal momentum to determine crossing point. // Use longitudinal momentum to determine crossing point.
// Works ok for spiraling helices, also for loopers. // Works ok for spiraling helices, also for loopers.
dotV = fH.fE1.Dot(dv); dotV = fH.fE1.Dot(dv);
if (fH.fPlMag < 0) if (fH.fPlMag < 0)
dotV = -dotV; dotV = -dotV;
} }
 End of changes. 43 change blocks. 
118 lines changed or deleted 138 lines changed or added


 TEveVSDStructs.h   TEveVSDStructs.h 
// @(#)root/eve:$Id: TEveVSDStructs.h 31517 2009-12-03 11:56:23Z matevz $ // @(#)root/eve:$Id: TEveVSDStructs.h 38721 2011-04-04 13:37:12Z matevz $
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 123 skipping to change at line 123
TEveCluster() : fDetId(0), fSubdetId(0), fV() { fLabel[0] = fLabel[1] = fLabel[2] = 0; } TEveCluster() : fDetId(0), fSubdetId(0), fV() { fLabel[0] = fLabel[1] = fLabel[2] = 0; }
virtual ~TEveCluster() {} virtual ~TEveCluster() {}
ClassDef(TEveCluster, 1); // Reconstructed cluster (also used in VSD). ClassDef(TEveCluster, 1); // Reconstructed cluster (also used in VSD).
}; };
/************************************************************************** ****/ /************************************************************************** ****/
// TEveRecTrack // TEveRecTrack
/************************************************************************** ****/ /************************************************************************** ****/
template <typename TT>
class TEveRecTrack : public TObject class TEveRecTrackT : public TObject
{ {
public: public:
Int_t fLabel; // Label of the track. Int_t fLabel; // Label of the track.
Int_t fIndex; // Index of the track (in some source array). Int_t fIndex; // Index of the track (in some source arra
Int_t fStatus; // Status as exported from reconstruction. y).
Int_t fSign; // Charge of the track. Int_t fStatus; // Status as exported from reconstruction.
TEveVector fV; // Start vertex from reconstruction. Int_t fSign; // Charge of the track.
TEveVector fP; // Reconstructed momentum at start vertex. TEveVectorT<TT> fV; // Start vertex from reconstruction.
Float_t fBeta; // Relativistic beta factor. TEveVectorT<TT> fP; // Reconstructed momentum at start vertex.
TT fBeta; // Relativistic beta factor.
// PID data missing // PID data missing
TEveRecTrack() : fLabel(-1), fIndex(-1), fStatus(0), fSign(0), fV(), fP( TEveRecTrackT() : fLabel(-1), fIndex(-1), fStatus(0), fSign(0), fV(), fP
), fBeta(0) {} (), fBeta(0) {}
virtual ~TEveRecTrack() {} virtual ~TEveRecTrackT() {}
Float_t Pt() { return fP.Perp(); } Float_t Pt() { return fP.Perp(); }
ClassDef(TEveRecTrack, 1); // Reconstructed track (also used in VSD). ClassDef(TEveRecTrackT, 1); // Template for reconstructed track (also us ed in VSD).
}; };
typedef TEveRecTrackT<Float_t> TEveRecTrack;
typedef TEveRecTrackT<Float_t> TEveRecTrackF;
typedef TEveRecTrackT<Double_t> TEveRecTrackD;
/************************************************************************** ****/ /************************************************************************** ****/
// TEveRecKink // TEveRecKink
/************************************************************************** ****/ /************************************************************************** ****/
class TEveRecKink : public TObject class TEveRecKink : public TObject
{ {
public: public:
TEveVector fVKink; // Kink vertex: reconstructed position of t he kink TEveVector fVKink; // Kink vertex: reconstructed position of t he kink
TEveVector fPMother; // Momentum of the mother track TEveVector fPMother; // Momentum of the mother track
 End of changes. 6 change blocks. 
14 lines changed or deleted 19 lines changed or added


 TEventIter.h   TEventIter.h 
// @(#)root/proofplayer:$Id: TEventIter.h 30859 2009-10-24 14:53:07Z ganis $ // @(#)root/proofplayer:$Id: TEventIter.h 38810 2011-04-12 16:22:59Z ganis $
// Author: Maarten Ballintijn 07/01/02 // Author: Maarten Ballintijn 07/01/02
// Modified: Long Tran-Thanh 04/09/07 (Addition of TEventIterUnit) // Modified: Long Tran-Thanh 04/09/07 (Addition of TEventIterUnit)
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2001, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2001, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 82 skipping to change at line 82
Int_t LoadDir(); // Load the directory pointed to by fElem Int_t LoadDir(); // Load the directory pointed to by fElem
public: public:
TEventIter(); TEventIter();
TEventIter(TDSet *dset, TSelector *sel, Long64_t first, Long64_t num); TEventIter(TDSet *dset, TSelector *sel, Long64_t first, Long64_t num);
virtual ~TEventIter(); virtual ~TEventIter();
virtual Long64_t GetCacheSize() = 0; virtual Long64_t GetCacheSize() = 0;
virtual Int_t GetLearnEntries() = 0; virtual Int_t GetLearnEntries() = 0;
virtual Long64_t GetNextEvent() = 0; virtual Long64_t GetNextEvent() = 0;
virtual void InvalidatePacket();
virtual void StopProcess(Bool_t abort); virtual void StopProcess(Bool_t abort);
static TEventIter *Create(TDSet *dset, TSelector *sel, Long64_t first, L ong64_t num); static TEventIter *Create(TDSet *dset, TSelector *sel, Long64_t first, L ong64_t num);
ClassDef(TEventIter,0) // Event iterator used by TProofPlayer's ClassDef(TEventIter,0) // Event iterator used by TProofPlayer's
}; };
//------------------------------------------------------------------------ //------------------------------------------------------------------------
class TEventIterUnit : public TEventIter { class TEventIterUnit : public TEventIter {
skipping to change at line 142 skipping to change at line 143
class TEventIterTree : public TEventIter { class TEventIterTree : public TEventIter {
private: private:
TString fTreeName; // name of the tree object to iterate over TString fTreeName; // name of the tree object to iterate over
TTree *fTree; // tree we are iterating over TTree *fTree; // tree we are iterating over
TTreeCache *fTreeCache; // instance of the tree cache for the tree TTreeCache *fTreeCache; // instance of the tree cache for the tree
Bool_t fTreeCacheIsLearning; // Whether cache is in learning phase Bool_t fTreeCacheIsLearning; // Whether cache is in learning phase
Bool_t fUseTreeCache; // Control usage of the tree cache Bool_t fUseTreeCache; // Control usage of the tree cache
Long64_t fCacheSize; // Cache size Long64_t fCacheSize; // Cache size
Bool_t fUseParallelUnzip; // Control usage of parallel unzip Bool_t fUseParallelUnzip; // Control usage of parallel unzip
Bool_t fDontCacheFiles; // Control OS caching of read files (Mac Os X only)
TList *fFileTrees; // Files && Trees currently open TList *fFileTrees; // Files && Trees currently open
// Auxilliary class to keep track open files and loaded trees // Auxilliary class to keep track open files and loaded trees
class TFileTree : public TNamed { class TFileTree : public TNamed {
public: public:
Bool_t fUsed; Bool_t fUsed;
Bool_t fIsLocal; Bool_t fIsLocal;
TFile *fFile; TFile *fFile;
TList *fTrees; TList *fTrees;
TFileTree(const char *name, TFile *f, Bool_t islocal); TFileTree(const char *name, TFile *f, Bool_t islocal);
 End of changes. 3 change blocks. 
1 lines changed or deleted 3 lines changed or added


 TFileCollection.h   TFileCollection.h 
// @(#)root/base:$Id: TFileCollection.h 36629 2010-11-12 14:46:35Z brun $ // @(#)root/base:$Id: TFileCollection.h 38735 2011-04-05 09:41:14Z rdm $
// Author: Jan Fiete Grosse-Oetringhaus 01/06/07 // Author: Jan Fiete Grosse-Oetringhaus 01/06/07
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 106 skipping to change at line 106
Long64_t GetTotalEntries(const char *tree) const; Long64_t GetTotalEntries(const char *tree) const;
TFileInfoMeta *GetMetaData(const char *meta = 0) const; TFileInfoMeta *GetMetaData(const char *meta = 0) const;
void SetDefaultMetaData(const char *meta); void SetDefaultMetaData(const char *meta);
Bool_t AddMetaData(TObject *meta); Bool_t AddMetaData(TObject *meta);
void RemoveMetaData(const char *meta = 0); void RemoveMetaData(const char *meta = 0);
TFileCollection *GetStagedSubset(); TFileCollection *GetStagedSubset();
TFileCollection *GetFilesOnServer(const char *server); TFileCollection *GetFilesOnServer(const char *server);
TMap *GetFilesPerServer(const char *exclude = 0); TMap *GetFilesPerServer(const char *exclude = 0, Bool_t curro nly = kFALSE);
ClassDef(TFileCollection, 3) // Collection of TFileInfo objects ClassDef(TFileCollection, 3) // Collection of TFileInfo objects
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TFractionFitter.h   TFractionFitter.h 
// @(#)root/hist:$Id: TFractionFitter.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/hist:$Id: TFractionFitter.h 38775 2011-04-08 08:27:27Z moneta $
// Author: Frank Filthaut filthaut@hef.kun.nl 20/05/2002 // Author: Frank Filthaut F.Filthaut@science.ru.nl 20/05/2002
#ifndef ROOT_TFractionFitter #ifndef ROOT_TFractionFitter
#define ROOT_TFractionFitter #define ROOT_TFractionFitter
#ifndef ROOT_TVirtualFitter #ifndef ROOT_TVirtualFitter
# include "TVirtualFitter.h" # include "TVirtualFitter.h"
#endif #endif
#ifndef ROOT_TObjArray #ifndef ROOT_TObjArray
# include "TObjArray.h" # include "TObjArray.h"
#endif #endif
#include <vector>
class TH1; class TH1;
/////////////////////////////////////////////////////////////////////////// //// /////////////////////////////////////////////////////////////////////////// ////
// TFractionFitter // TFractionFitter
// //
// Fits MC fractions to data histogram (a la HMCMLL, see R. Barlow and C. B eeston, // Fits MC fractions to data histogram (a la HMCMLL, see R. Barlow and C. B eeston,
// Comp. Phys. Comm. 77 (1993) 219-228, and http://www.hep.man.ac.uk/~roger /hfrac.f). // Comp. Phys. Comm. 77 (1993) 219-228, and http://www.hep.man.ac.uk/~roger /hfrac.f).
// //
/////////////////////////////////////////////////////////////////////////// //// /////////////////////////////////////////////////////////////////////////// ////
class TFractionFitter: public TObject { class TFractionFitter: public TObject {
public: public:
TFractionFitter(); TFractionFitter();
TFractionFitter(TH1* data, TObjArray *MCs); TFractionFitter(TH1* data, TObjArray *MCs, Option_t *option="");
virtual ~TFractionFitter(); virtual ~TFractionFitter();
TVirtualFitter* GetFitter() const; TVirtualFitter* GetFitter() const;
void ErrorAnalysis(Double_t UP); void ErrorAnalysis(Double_t UP);
void SetRangeX(Int_t low, Int_t high); void SetRangeX(Int_t low, Int_t high);
void ReleaseRangeX(); void ReleaseRangeX();
void SetRangeY(Int_t low, Int_t high); void SetRangeY(Int_t low, Int_t high);
void ReleaseRangeY(); void ReleaseRangeY();
void SetRangeZ(Int_t low, Int_t high); void SetRangeZ(Int_t low, Int_t high);
void ReleaseRangeZ(); void ReleaseRangeZ();
void ExcludeBin(Int_t bin);
void IncludeBin(Int_t bin);
void Constrain(Int_t parm, Double_t low, Double_t high); void Constrain(Int_t parm, Double_t low, Double_t high);
void UnConstrain(Int_t parm); void UnConstrain(Int_t parm);
void SetData(TH1 *data); void SetData(TH1 *data);
void SetMC(Int_t parm, TH1 *MC); void SetMC(Int_t parm, TH1 *MC);
void SetWeight(Int_t parm, TH1* weight); void SetWeight(Int_t parm, TH1* weight);
Int_t Fit(); Int_t Fit();
void GetResult(Int_t parm, Double_t& value, Double_t& error) const; void GetResult(Int_t parm, Double_t& value, Double_t& error) const;
TH1* GetPlot(); TH1* GetPlot();
skipping to change at line 67 skipping to change at line 70
TH1* GetMCPrediction(Int_t parm) const; TH1* GetMCPrediction(Int_t parm) const;
private: private:
void CheckParNo(Int_t parm) const; void CheckParNo(Int_t parm) const;
void CheckConsistency(); void CheckConsistency();
void FindPrediction(int bin, double* fractions, double& Ti, int& k0, dou ble& Aki) const; void FindPrediction(int bin, double* fractions, double& Ti, int& k0, dou ble& Aki) const;
void ComputeFCN(Int_t& npar, Double_t* gin, Double_t& f, Double_t* par, Int_t flag); void ComputeFCN(Int_t& npar, Double_t* gin, Double_t& f, Double_t* par, Int_t flag);
void GetRanges(Int_t& minX, Int_t& maxX, Int_t& minY, Int_t& maxY, void GetRanges(Int_t& minX, Int_t& maxX, Int_t& minY, Int_t& maxY,
Int_t& minZ, Int_t& maxZ) const; Int_t& minZ, Int_t& maxZ) const;
void ComputeChisquareLambda(); void ComputeChisquareLambda();
bool IsExcluded(Int_t bin) const;
protected: protected:
Bool_t fFitDone; // flags whether a valid fit has been per formed Bool_t fFitDone; // flags whether a valid fit has been per formed
Int_t fLowLimitX; // first bin in X dimension Int_t fLowLimitX; // first bin in X dimension
Int_t fHighLimitX; // last bin in X dimension Int_t fHighLimitX; // last bin in X dimension
Int_t fLowLimitY; // first bin in Y dimension Int_t fLowLimitY; // first bin in Y dimension
Int_t fHighLimitY; // last bin in Y dimension Int_t fHighLimitY; // last bin in Y dimension
Int_t fLowLimitZ; // first bin in Z dimension Int_t fLowLimitZ; // first bin in Z dimension
Int_t fHighLimitZ; // last bin in Z dimension Int_t fHighLimitZ; // last bin in Z dimension
std::vector<Int_t> fExcludedBins; // bins excluded from the fit
Int_t fNpfits; // Number of points used in the fit Int_t fNpfits; // Number of points used in the fit
Int_t fNDF; // Number of degrees of freedom in the fi t Int_t fNDF; // Number of degrees of freedom in the fi t
Double_t fChisquare; // Template fit chisquare Double_t fChisquare; // Template fit chisquare
TObjArray fAji; // array of pointers to predictions of re al template distributions TObjArray fAji; // array of pointers to predictions of re al template distributions
// Histograms // Histograms
TH1* fData; // pointer to the "data" histogram to be fitted to TH1* fData; // pointer to the "data" histogram to be fitted to
TObjArray fMCs; // array of pointers to template histogra ms TObjArray fMCs; // array of pointers to template histogra ms
 End of changes. 6 change blocks. 
3 lines changed or deleted 8 lines changed or added


 TGButton.h   TGButton.h 
// @(#)root/gui:$Id: TGButton.h 23115 2008-04-10 13:35:37Z rdm $ // @(#)root/gui:$Id: TGButton.h 38844 2011-04-14 12:35:01Z bellenot $
// Author: Fons Rademakers 06/01/98 // Author: Fons Rademakers 06/01/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TGButton #ifndef ROOT_TGButton
#define ROOT_TGButton #define ROOT_TGButton
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TGButton, TGTextButton, TGPictureButton, TGCheckButton and // // TGButton, TGTextButton, TGPictureButton, TGCheckButton TGRadioButton //
// TGRadioButton // // and TGSplitButton //
// // // //
// This header defines all GUI button widgets. // // This header defines all GUI button widgets. //
// // // //
// TGButton is a button abstract base class. It defines general button // // TGButton is a button abstract base class. It defines general button //
// behaviour. // // behaviour. //
// // // //
// Selecting a text or picture button will generate the event: // // Selecting a text or picture button will generate the event: //
// kC_COMMAND, kCM_BUTTON, button id, user data. // // kC_COMMAND, kCM_BUTTON, button id, user data. //
// // // //
// Selecting a check button will generate the event: // // Selecting a check button will generate the event: //
skipping to change at line 83 skipping to change at line 83
protected: protected:
UInt_t fTWidth; // button width UInt_t fTWidth; // button width
UInt_t fTHeight; // button height UInt_t fTHeight; // button height
EButtonState fState; // button state EButtonState fState; // button state
Bool_t fStayDown; // true if button has to stay down Bool_t fStayDown; // true if button has to stay down
GContext_t fNormGC; // graphics context used for drawing button GContext_t fNormGC; // graphics context used for drawing button
void *fUserData; // pointer to user data structure void *fUserData; // pointer to user data structure
TGToolTip *fTip; // tool tip associated with button TGToolTip *fTip; // tool tip associated with button
TGButtonGroup *fGroup; // button group this button belongs to TGButtonGroup *fGroup; // button group this button belongs to
Pixel_t fBgndColor; // actual background color
Pixel_t fHighColor; // highlight color
UInt_t fStyle; // button style (modern or classic)
virtual void SetToggleButton(Bool_t) { } virtual void SetToggleButton(Bool_t) { }
virtual void EmitSignals(Bool_t wasUp); virtual void EmitSignals(Bool_t wasUp);
static const TGGC *fgDefaultGC; static const TGGC *fgDefaultGC;
static const TGGC *fgHibckgndGC; static const TGGC *fgHibckgndGC;
static Window_t fgReleaseBtn; // the last released button static Window_t fgReleaseBtn; // the last released button
private: private:
skipping to change at line 116 skipping to change at line 119
virtual void SetUserData(void *userData) { fUserData = userData; } virtual void SetUserData(void *userData) { fUserData = userData; }
virtual void *GetUserData() const { return fUserData; } virtual void *GetUserData() const { return fUserData; }
virtual void SetToolTipText(const char *text, Long_t delayms = 4 00); //*MENU* virtual void SetToolTipText(const char *text, Long_t delayms = 4 00); //*MENU*
virtual TGToolTip *GetToolTip() const { return fTip; } virtual TGToolTip *GetToolTip() const { return fTip; }
virtual void SetState(EButtonState state, Bool_t emit = kFALSE); virtual void SetState(EButtonState state, Bool_t emit = kFALSE);
virtual EButtonState GetState() const { return fState; } virtual EButtonState GetState() const { return fState; }
virtual void AllowStayDown(Bool_t a) { fStayDown = a; } virtual void AllowStayDown(Bool_t a) { fStayDown = a; }
virtual void SetGroup(TGButtonGroup *gr); virtual void SetGroup(TGButtonGroup *gr);
TGButtonGroup *GetGroup() const { return fGroup; } TGButtonGroup *GetGroup() const { return fGroup; }
virtual Bool_t IsDown() const { return !(fOptions & kRaisedFrame); } virtual Bool_t IsDown() const;// { return !(fOptions & kRaisedFram e); }
virtual void SetDown(Bool_t on = kTRUE, Bool_t emit = kFALSE); virtual void SetDown(Bool_t on = kTRUE, Bool_t emit = kFALSE);
virtual Bool_t IsOn() const { return IsDown(); } virtual Bool_t IsOn() const { return IsDown(); }
virtual void SetOn(Bool_t on = kTRUE, Bool_t emit = kFALSE) { S etDown(on, emit); } virtual void SetOn(Bool_t on = kTRUE, Bool_t emit = kFALSE) { S etDown(on, emit); }
virtual Bool_t IsToggleButton() const { return kFALSE; } virtual Bool_t IsToggleButton() const { return kFALSE; }
virtual Bool_t IsExclusiveToggle() const { return kFALSE; } virtual Bool_t IsExclusiveToggle() const { return kFALSE; }
virtual void Toggle(Bool_t emit = kFALSE) { SetDown(IsDown() ? k FALSE : kTRUE, emit); } virtual void Toggle(Bool_t emit = kFALSE) { SetDown(IsDown() ? k FALSE : kTRUE, emit); }
virtual void SetEnabled(Bool_t e = kTRUE); //*TOGGLE* *GETTER=Is Enabled virtual void SetEnabled(Bool_t e = kTRUE); //*TOGGLE* *GETTER=Is Enabled
virtual UInt_t GetStyle() const { return fStyle; }
virtual void SetStyle(UInt_t newstyle);
virtual void SetStyle(const char *style);
virtual void SavePrimitive(ostream &out, Option_t *option = ""); virtual void SavePrimitive(ostream &out, Option_t *option = "");
GContext_t GetNormGC() const { return fNormGC; } GContext_t GetNormGC() const { return fNormGC; }
virtual void Pressed() { Emit("Pressed()"); } // *SIGNAL* virtual void Pressed() { Emit("Pressed()"); } // *SIGNAL*
virtual void Released() { Emit("Released()"); } // *SIGNAL* virtual void Released() { Emit("Released()"); } // *SIGNAL*
virtual void Clicked() { Emit("Clicked()"); } // *SIGNAL* virtual void Clicked() { Emit("Clicked()"); } // *SIGNAL*
virtual void Toggled(Bool_t on) { Emit("Toggled(Bool_t)", on); } // *SI GNAL* virtual void Toggled(Bool_t on) { Emit("Toggled(Bool_t)", on); } // *SI GNAL*
 End of changes. 5 change blocks. 
4 lines changed or deleted 10 lines changed or added


 TGClient.h   TGClient.h 
// @(#)root/gui:$Id: TGClient.h 25391 2008-09-12 12:40:48Z rdm $ // @(#)root/gui:$Id: TGClient.h 38843 2011-04-14 12:13:31Z bellenot $
// Author: Fons Rademakers 27/12/97 // Author: Fons Rademakers 27/12/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 79 skipping to change at line 79
TGMimeTypes *fMimeTypeList; // mimetype list TGMimeTypes *fMimeTypeList; // mimetype list
Colormap_t fDefaultColormap; // default colormap Colormap_t fDefaultColormap; // default colormap
Bool_t fGlobalNeedRedraw; // true if at least one window needs to be redrawn Bool_t fGlobalNeedRedraw; // true if at least one window needs to be redrawn
Bool_t fForceRedraw; // redraw widgets as soon as possible Bool_t fForceRedraw; // redraw widgets as soon as possible
THashList *fWlist; // list of frames THashList *fWlist; // list of frames
TList *fPlist; // list of popup windows used in Hand leMaskEvent() TList *fPlist; // list of popup windows used in Hand leMaskEvent()
TList *fUWHandlers; // list of event handlers for unknown windows TList *fUWHandlers; // list of event handlers for unknown windows
TList *fIdleHandlers; // list of idle handlers TList *fIdleHandlers; // list of idle handlers
EGEventType fWaitForEvent; // event to wait for EGEventType fWaitForEvent; // event to wait for
Window_t fWaitForWindow; // window in which to wait for event Window_t fWaitForWindow; // window in which to wait for event
UInt_t fStyle; // GUI style (modern or classic)
TGClient(const TGClient&); // not implemented TGClient(const TGClient&); // not implemented
TGClient& operator=(const TGClient&); // not implemented TGClient& operator=(const TGClient&); // not implemented
Bool_t ProcessOneEvent(); Bool_t ProcessOneEvent();
Bool_t ProcessIdleEvent(); Bool_t ProcessIdleEvent();
Bool_t DoRedraw(); Bool_t DoRedraw();
public: public:
TGClient(const char *dpyName = 0); TGClient(const char *dpyName = 0);
skipping to change at line 150 skipping to change at line 151
TGGCPool *GetGCPool() const { return fGCPool; } TGGCPool *GetGCPool() const { return fGCPool; }
TGGC *GetGC(GCValues_t *values, Bool_t rw = kFALSE); TGGC *GetGC(GCValues_t *values, Bool_t rw = kFALSE);
void FreeGC(const TGGC *gc); void FreeGC(const TGGC *gc);
void FreeGC(GContext_t gc); void FreeGC(GContext_t gc);
TGFontPool *GetFontPool() const { return fFontPool; } TGFontPool *GetFontPool() const { return fFontPool; }
TGFont *GetFont(const char *font, Bool_t fixedDefault = kTRUE); TGFont *GetFont(const char *font, Bool_t fixedDefault = kTRUE);
TGFont *GetFont(const TGFont *font); TGFont *GetFont(const TGFont *font);
void FreeFont(const TGFont *font); void FreeFont(const TGFont *font);
UInt_t GetStyle() const { return fStyle; }
void SetStyle(UInt_t newstyle) { fStyle = newstyle; }
void SetStyle(const char *style);
Colormap_t GetDefaultColormap() const { return fDefaultColormap; } Colormap_t GetDefaultColormap() const { return fDefaultColormap; }
TGMimeTypes *GetMimeTypeList() const { return fMimeTypeList; } TGMimeTypes *GetMimeTypeList() const { return fMimeTypeList; }
THashList *GetListOfWindows() const { return fWlist; } THashList *GetListOfWindows() const { return fWlist; }
TList *GetListOfPopups() const { return fPlist; } TList *GetListOfPopups() const { return fPlist; }
ClassDef(TGClient,0) // Class making connection to display server ClassDef(TGClient,0) // Class making connection to display server
}; };
R__EXTERN TGClient *gClient; R__EXTERN TGClient *gClient;
 End of changes. 3 change blocks. 
1 lines changed or deleted 6 lines changed or added


 TGFrame.h   TGFrame.h 
// @(#)root/gui:$Id: TGFrame.h 25391 2008-09-12 12:40:48Z rdm $ // @(#)root/gui:$Id: TGFrame.h 38064 2011-02-14 13:54:40Z bellenot $
// Author: Fons Rademakers 03/01/98 // Author: Fons Rademakers 03/01/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 533 skipping to change at line 533
TGMainFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1, TGMainFrame(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
UInt_t options = kVerticalFrame); UInt_t options = kVerticalFrame);
virtual ~TGMainFrame(); virtual ~TGMainFrame();
virtual Bool_t HandleKey(Event_t *event); virtual Bool_t HandleKey(Event_t *event);
virtual Bool_t HandleClientMessage(Event_t *event); virtual Bool_t HandleClientMessage(Event_t *event);
virtual Bool_t HandleSelection(Event_t *event); virtual Bool_t HandleSelection(Event_t *event);
virtual Bool_t HandleSelectionRequest(Event_t *event); virtual Bool_t HandleSelectionRequest(Event_t *event);
virtual Bool_t HandleButton(Event_t *event); virtual Bool_t HandleButton(Event_t *event);
virtual Bool_t HandleMotion(Event_t *event); virtual Bool_t HandleMotion(Event_t *event);
virtual Bool_t SaveFrameAsCodeOrImage();
virtual void SendCloseMessage(); virtual void SendCloseMessage();
virtual void CloseWindow(); //*SIGNAL* virtual void CloseWindow(); //*SIGNAL*
void DontCallClose(); void DontCallClose();
void SetWindowName(const char *name = 0); void SetWindowName(const char *name = 0);
void SetIconName(const char *name); void SetIconName(const char *name);
const TGPicture *SetIconPixmap(const char *iconName); const TGPicture *SetIconPixmap(const char *iconName);
void SetIconPixmap(char **xpm_array); void SetIconPixmap(char **xpm_array);
void SetClassHints(const char *className, const char *resourceName); void SetClassHints(const char *className, const char *resourceName);
void SetMWMHints(UInt_t value, UInt_t funcs, UInt_t input); void SetMWMHints(UInt_t value, UInt_t funcs, UInt_t input);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TGHtml.h   TGHtml.h 
skipping to change at line 61 skipping to change at line 61
//---------------------------------------------------------------------- //----------------------------------------------------------------------
#define HTML_RELIEF_FLAT 0 #define HTML_RELIEF_FLAT 0
#define HTML_RELIEF_SUNKEN 1 #define HTML_RELIEF_SUNKEN 1
#define HTML_RELIEF_RAISED 2 #define HTML_RELIEF_RAISED 2
//#define TABLE_TRIM_BLANK 1 //#define TABLE_TRIM_BLANK 1
// Debug must be turned on for testing to work. // Debug must be turned on for testing to work.
//#define DEBUG
#define DEBUG
#define CANT_HAPPEN \ #define CANT_HAPPEN \
fprintf(stderr, \ fprintf(stderr, \
"Unplanned behavior in the HTML Widget in file %s line %d\n", \ "Unplanned behavior in the HTML Widget in file %s line %d\n", \
__FILE__, __LINE__) __FILE__, __LINE__)
#define UNTESTED \ #define UNTESTED \
fprintf(stderr, \ fprintf(stderr, \
"Untested code executed in the HTML Widget in file %s line %d\n", \ "Untested code executed in the HTML Widget in file %s line %d\n", \
__FILE__, __LINE__) __FILE__, __LINE__)
 End of changes. 1 change blocks. 
2 lines changed or deleted 1 lines changed or added


 TGLBoxPainter.h   TGLBoxPainter.h 
// @(#)root/gl:$Id$ // @(#)root/gl:$Id$
// Author: Timur Pocheptsov 31/08/2006 // Author: Timur Pocheptsov 31/08/2006
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TGLBoxPainter #ifndef ROOT_TGLBoxPainter
#define ROOT_TGLBoxPainter #define ROOT_TGLBoxPainter
#include <vector>
#ifndef ROOT_TGLPlotPainter #ifndef ROOT_TGLPlotPainter
#include "TGLPlotPainter.h" #include "TGLPlotPainter.h"
#endif #endif
#ifndef ROOT_TGLQuadric #ifndef ROOT_TGLQuadric
#include "TGLQuadric.h" #include "TGLQuadric.h"
#endif #endif
#ifndef ROOT_TString #ifndef ROOT_TString
#include "TString.h" #include "TString.h"
#endif #endif
#ifndef ROOT_TGLUtil #ifndef ROOT_TGLUtil
#include "TGLUtil.h" #include "TGLUtil.h"
#endif #endif
//TGLScenePad creates box painter
//for the case TPad has poly marker and
//empty TH3 inside.
//Now it's up to box painter to do everything
//correctly.
class TPolyMarker3D;
class TGLPlotCamera; class TGLPlotCamera;
class TAxis; class TAxis;
class TH1; class TH1;
class TGLBoxPainter : public TGLPlotPainter { class TGLBoxPainter : public TGLPlotPainter {
private: private:
TGLTH3Slice fXOZSlice; TGLTH3Slice fXOZSlice;
TGLTH3Slice fYOZSlice; TGLTH3Slice fYOZSlice;
TGLTH3Slice fXOYSlice; TGLTH3Slice fXOYSlice;
skipping to change at line 50 skipping to change at line 58
kBox1 //spheres, not boxes kBox1 //spheres, not boxes
}; };
mutable EBoxType fType; mutable EBoxType fType;
TString fPlotInfo; TString fPlotInfo;
Rgl::Range_t fMinMaxVal; Rgl::Range_t fMinMaxVal;
mutable TGLQuadric fQuadric; mutable TGLQuadric fQuadric;
const TPolyMarker3D *fPolymarker; //Polymarker from TTree.
std::vector<Double_t> fPMPoints; //Cache for polymarker's points.
TGLBoxPainter(const TGLBoxPainter &); TGLBoxPainter(const TGLBoxPainter &);
TGLBoxPainter &operator = (const TGLBoxPainter &); TGLBoxPainter &operator = (const TGLBoxPainter &);
public: public:
TGLBoxPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coor d); TGLBoxPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coor d);
TGLBoxPainter(TH1 *hist, TPolyMarker3D * pm,
TGLPlotCamera *camera, TGLPlotCoordinates *coord);
char *GetPlotInfo(Int_t px, Int_t py); char *GetPlotInfo(Int_t px, Int_t py);
Bool_t InitGeometry(); Bool_t InitGeometry();
void StartPan(Int_t px, Int_t py); void StartPan(Int_t px, Int_t py);
void Pan(Int_t px, Int_t py); void Pan(Int_t px, Int_t py);
void AddOption(const TString &stringOption); void AddOption(const TString &stringOption);
void ProcessEvent(Int_t event, Int_t px, Int_t py); void ProcessEvent(Int_t event, Int_t px, Int_t py);
private: private:
//Overriders //Overriders
void InitGL()const; void InitGL()const;
void DeInitGL()const; void DeInitGL()const;
void DrawPlot()const; void DrawPlot()const;
//Special type of TH3:
void DrawCloud()const;
void SetPlotColor()const; void SetPlotColor()const;
void DrawSectionXOZ()const; void DrawSectionXOZ()const;
void DrawSectionYOZ()const; void DrawSectionYOZ()const;
void DrawSectionXOY()const; void DrawSectionXOY()const;
void DrawPalette()const; void DrawPalette()const;
void DrawPaletteAxis()const; void DrawPaletteAxis()const;
 End of changes. 6 change blocks. 
1 lines changed or deleted 17 lines changed or added


 TGLPlot3D.h   TGLPlot3D.h 
// @(#)root/gl:$Id: TGLPlot3D.h 33579 2010-05-19 12:43:08Z rdm $ // @(#)root/gl:$Id: TGLPlot3D.h 38817 2011-04-13 09:32:44Z couet $
// Author: Matevz Tadel 2007 // Author: Matevz Tadel 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TGLPlot3D #ifndef ROOT_TGLPlot3D
#define ROOT_TGLPlot3D #define ROOT_TGLPlot3D
#include "TGLObject.h" #include "TGLObject.h"
#include "TGLPlotPainter.h" #include "TGLPlotPainter.h"
class TVirtualPad; class TVirtualPad;
class TPolyMarker3D;
class TH3;
class TGLPlot3D : public TGLObject class TGLPlot3D : public TGLObject
{ {
private: private:
TGLPlot3D(const TGLPlot3D&); // Not implemented TGLPlot3D(const TGLPlot3D&); // Not implemented
TGLPlot3D& operator=(const TGLPlot3D&); // Not implemented TGLPlot3D& operator=(const TGLPlot3D&); // Not implemented
protected: protected:
TGLPlotPainter *fPlotPainter; TGLPlotPainter *fPlotPainter;
TGLPlotCoordinates fCoord; TGLPlotCoordinates fCoord;
skipping to change at line 40 skipping to change at line 42
void SetPainter(TGLPlotPainter* p); void SetPainter(TGLPlotPainter* p);
static TGLPlot3D* InstantiatePlot(TObject* obj); static TGLPlot3D* InstantiatePlot(TObject* obj);
public: public:
TGLPlot3D(); TGLPlot3D();
virtual ~TGLPlot3D(); virtual ~TGLPlot3D();
virtual Bool_t KeepDuringSmartRefresh() const { return kFALSE; } virtual Bool_t KeepDuringSmartRefresh() const { return kFALSE; }
static TGLPlot3D* CreatePlot(TH3 *h, TPolyMarker3D *pm);
static TGLPlot3D* CreatePlot(TObject* obj, const Option_t* opt, TVirtual Pad* pad); static TGLPlot3D* CreatePlot(TObject* obj, const Option_t* opt, TVirtual Pad* pad);
static TGLPlot3D* CreatePlot(TObject* obj, const Option_t* opt, Bool_t l ogx, Bool_t logy, Bool_t logz); static TGLPlot3D* CreatePlot(TObject* obj, const Option_t* opt, Bool_t l ogx, Bool_t logy, Bool_t logz);
ClassDef(TGLPlot3D, 0); // Short description. ClassDef(TGLPlot3D, 0); // Short description.
}; };
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 4 lines changed or added


 TGLPlotPainter.h   TGLPlotPainter.h 
// @(#)root/gl:$Id: TGLPlotPainter.h 36773 2010-11-19 12:26:30Z couet $ // @(#)root/gl:$Id: TGLPlotPainter.h 38817 2011-04-13 09:32:44Z couet $
// Author: Timur Pocheptsov 14/06/2006 // Author: Timur Pocheptsov 14/06/2006
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 196 skipping to change at line 196
}; };
} }
class TGLPlotPainter : public TVirtualGLPainter { class TGLPlotPainter : public TVirtualGLPainter {
friend class Rgl::PlotTranslation; friend class Rgl::PlotTranslation;
private: private:
const TColor *fPadColor; const TColor *fPadColor;
protected: protected:
const Float_t *fPhysicalShapeColor;
Double_t fPadPhi; Double_t fPadPhi;
Double_t fPadTheta; Double_t fPadTheta;
TH1 *fHist; TH1 *fHist;
TAxis *fXAxis; TAxis *fXAxis;
TAxis *fYAxis; TAxis *fYAxis;
TAxis *fZAxis; TAxis *fZAxis;
TGLPlotCoordinates *fCoord; TGLPlotCoordinates *fCoord;
TGLPlotCamera *fCamera; TGLPlotCamera *fCamera;
TGLSelectionBuffer fSelection; TGLSelectionBuffer fSelection;
skipping to change at line 238 skipping to change at line 240
public: public:
/* TGLPlotPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *c oord, Int_t context, /* TGLPlotPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *c oord, Int_t context,
Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSel ectable); Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSel ectable);
TGLPlotPainter(TGLPlotCamera *camera, Int_t context);*/ TGLPlotPainter(TGLPlotCamera *camera, Int_t context);*/
TGLPlotPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coo rd, TGLPlotPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coo rd,
Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSel ectable); Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSel ectable);
TGLPlotPainter(TGL5DDataSet *data, TGLPlotCamera *camera, TGLPlotCoordin ates *coord); TGLPlotPainter(TGL5DDataSet *data, TGLPlotCamera *camera, TGLPlotCoordin ates *coord);
TGLPlotPainter(TGLPlotCamera *camera); TGLPlotPainter(TGLPlotCamera *camera);
const TGLPlotBox& RefBackBox() const { return fBackBox; } const TGLPlotBox& RefBackBox() const { return fBackBox; }
void SetPhysicalShapeColor(const Float_t *rgba)
{
fPhysicalShapeColor = rgba;
}
virtual void InitGL()const = 0; virtual void InitGL()const = 0;
virtual void DeInitGL()const = 0; virtual void DeInitGL()const = 0;
virtual void DrawPlot()const = 0; virtual void DrawPlot()const = 0;
virtual void Paint(); virtual void Paint();
//Checks, if mouse cursor is above plot. //Checks, if mouse cursor is above plot.
virtual Bool_t PlotSelected(Int_t px, Int_t py); virtual Bool_t PlotSelected(Int_t px, Int_t py);
//Init geometry does plot's specific initialization. //Init geometry does plot's specific initialization.
virtual Bool_t InitGeometry() = 0; virtual Bool_t InitGeometry() = 0;
skipping to change at line 408 skipping to change at line 414
TGLPlotCoordinates(const TGLPlotCoordinates &); TGLPlotCoordinates(const TGLPlotCoordinates &);
TGLPlotCoordinates &operator = (const TGLPlotCoordinates &); TGLPlotCoordinates &operator = (const TGLPlotCoordinates &);
ClassDef(TGLPlotCoordinates, 0)//Auxilary class, holds plot dimensions. ClassDef(TGLPlotCoordinates, 0)//Auxilary class, holds plot dimensions.
}; };
class TGLLevelPalette; class TGLLevelPalette;
namespace Rgl { namespace Rgl {
void DrawPalette(const TGLPlotCamera * camera, const TGLLevelPalette & pale void DrawPalette(const TGLPlotCamera *camera, const TGLLevelPalette &palett
tte); e);
void DrawPaletteAxis(const TGLPlotCamera * camera, const Range_t & minMax, void DrawPalette(const TGLPlotCamera *camera, const TGLLevelPalette &palett
Bool_t logZ); e,
const std::vector<Double_t> &levels);
void DrawPaletteAxis(const TGLPlotCamera *camera, const Range_t &minMax, Bo
ol_t logZ);
//Polygonal histogram (TH2Poly) is slightly stretched along x and y. //Polygonal histogram (TH2Poly) is slightly stretched along x and y.
extern const Double_t gH2PolyScaleXY; extern const Double_t gH2PolyScaleXY;
} }
#endif #endif
 End of changes. 4 change blocks. 
5 lines changed or deleted 14 lines changed or added


 TGLScenePad.h   TGLScenePad.h 
// @(#)root/gl:$Id: TGLScenePad.h 36884 2010-11-23 17:52:08Z matevz $ // @(#)root/gl:$Id: TGLScenePad.h 38817 2011-04-13 09:32:44Z couet $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TGLScenePad #ifndef ROOT_TGLScenePad
#define ROOT_TGLScenePad #define ROOT_TGLScenePad
skipping to change at line 25 skipping to change at line 25
#endif #endif
#ifndef ROOT_TVirtualViewer3D #ifndef ROOT_TVirtualViewer3D
#include "TVirtualViewer3D.h" #include "TVirtualViewer3D.h"
#endif #endif
#ifndef ROOT_CsgOps #ifndef ROOT_CsgOps
#include "CsgOps.h" #include "CsgOps.h"
#endif #endif
class TGLViewer; class TGLViewer;
class TGLFaceSet; class TGLFaceSet;
class TList;
class TGLScenePad : public TVirtualViewer3D, public TGLScene { class TGLScenePad : public TVirtualViewer3D, public TGLScene {
private: private:
TGLScenePad(const TGLScenePad&); // Not implemented TGLScenePad(const TGLScenePad&); // Not implemented
TGLScenePad& operator=(const TGLScenePad&); // Not implemented TGLScenePad& operator=(const TGLScenePad&); // Not implemented
protected: protected:
TVirtualPad* fPad; TVirtualPad* fPad;
skipping to change at line 46 skipping to change at line 47
Bool_t fInternalPIDs; //! using internal physical I Ds Bool_t fInternalPIDs; //! using internal physical I Ds
UInt_t fNextInternalPID; //! next internal physical ID (from 1 - 0 reserved) UInt_t fNextInternalPID; //! next internal physical ID (from 1 - 0 reserved)
UInt_t fLastPID; //! last physical ID that was processed in AddObject() UInt_t fLastPID; //! last physical ID that was processed in AddObject()
Int_t fAcceptedPhysicals; Int_t fAcceptedPhysicals;
Int_t ValidateObjectBuffer(const TBuffer3D& buffer, Bool_t includeRaw) const; Int_t ValidateObjectBuffer(const TBuffer3D& buffer, Bool_t includeRaw) const;
TGLLogicalShape* CreateNewLogical(const TBuffer3D & buffer) const; TGLLogicalShape* CreateNewLogical(const TBuffer3D & buffer) const;
TGLPhysicalShape* CreateNewPhysical(UInt_t physicalID, const TBuffer3D& buffer, TGLPhysicalShape* CreateNewPhysical(UInt_t physicalID, const TBuffer3D& buffer,
const TGLLogicalShape& logical) con st; const TGLLogicalShape& logical) con st;
void ComposePolymarker(const TList *padPrimitives);
// Composite shape specific // Composite shape specific
typedef std::pair<UInt_t, RootCsg::TBaseMesh*> CSPart_t; typedef std::pair<UInt_t, RootCsg::TBaseMesh*> CSPart_t;
mutable TGLFaceSet *fComposite; //! Paritally created composite mutable TGLFaceSet *fComposite; //! Paritally created composite
UInt_t fCSLevel; UInt_t fCSLevel;
std::vector<CSPart_t> fCSTokens; std::vector<CSPart_t> fCSTokens;
RootCsg::TBaseMesh* BuildComposite(); RootCsg::TBaseMesh* BuildComposite();
TGLLogicalShape* AttemptDirectRenderer(TObject* id); TGLLogicalShape* AttemptDirectRenderer(TObject* id);
Bool_t fSmartRefresh; //! cache logicals during scene rebuilds Bool_t fSmartRefresh; //! cache logicals during scene rebuilds
public: public:
TGLScenePad(TVirtualPad* pad); TGLScenePad(TVirtualPad* pad);
virtual ~TGLScenePad() {} virtual ~TGLScenePad() {}
TVirtualPad* GetPad() const { return fPad; } TVirtualPad* GetPad() const { return fPad; }
// void SetPad(TVirtualPad* p) { fPad = p; /* also need to drop contents */ } // void SetPad(TVirtualPad* p) { fPad = p; /* also need to drop contents */ }
// Histo import and Sub-pad traversal // Histo import and Sub-pad traversal
void AddHistoPhysical(TGLLogicalShape* log); void AddHistoPhysical(TGLLogicalShape* log, const Float_t *histColor = 0 );
void SubPadPaint(TVirtualPad* pad); void SubPadPaint(TVirtualPad* pad);
// PadPaint wrapper for calls from TGLViewer: // PadPaint wrapper for calls from TGLViewer:
virtual void PadPaintFromViewer(TGLViewer* viewer); virtual void PadPaintFromViewer(TGLViewer* viewer);
Bool_t GetSmartRefresh() const { return fSmartRefresh; } Bool_t GetSmartRefresh() const { return fSmartRefresh; }
void SetSmartRefresh(Bool_t smart_ref) { fSmartRefresh = smart_ref; } void SetSmartRefresh(Bool_t smart_ref) { fSmartRefresh = smart_ref; }
// TVirtualViewer3D interface // TVirtualViewer3D interface
 End of changes. 4 change blocks. 
2 lines changed or deleted 4 lines changed or added


 TGLUtil.h   TGLUtil.h 
// @(#)root/gl:$Id: TGLUtil.h 36624 2010-11-12 12:17:06Z couet $ // @(#)root/gl:$Id: TGLUtil.h 38817 2011-04-13 09:32:44Z couet $
// Author: Richard Maunder 25/05/2005 // Author: Richard Maunder 25/05/2005
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 82 skipping to change at line 82
enum EGLPlotType { enum EGLPlotType {
kGLLegoPlot, kGLLegoPlot,
kGLSurfacePlot, kGLSurfacePlot,
kGLBoxPlot, kGLBoxPlot,
kGLTF3Plot, kGLTF3Plot,
kGLStackPlot, kGLStackPlot,
kGLParametricPlot, kGLParametricPlot,
kGLIsoPlot, kGLIsoPlot,
kGL5D, kGL5D,
kGLTH3Composition, kGLTH3Composition,
kGLVoxel,
kGLDefaultPlot kGLDefaultPlot
}; };
// TODO: Split these into own h/cxx files - too long now! // TODO: Split these into own h/cxx files - too long now!
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TGLVertex3 // // TGLVertex3 //
// // // //
// 3 component (x/y/z) vertex class // // 3 component (x/y/z) vertex class //
skipping to change at line 1002 skipping to change at line 1003
static Float_t LineWidth(); static Float_t LineWidth();
static void BeginExtendPickRegion(Float_t scale); static void BeginExtendPickRegion(Float_t scale);
static void EndExtendPickRegion(); static void EndExtendPickRegion();
static void RenderPolyMarkers(const TAttMarker& marker, Char_t transp, static void RenderPolyMarkers(const TAttMarker& marker, Char_t transp,
Float_t* p, Int_t n, Float_t* p, Int_t n,
Int_t pick_radius=0, Bool_t selection=kFAL SE, Int_t pick_radius=0, Bool_t selection=kFAL SE,
Bool_t sec_selection=kFALSE); Bool_t sec_selection=kFALSE);
static void RenderPolyMarkers(const TAttMarker &marker, const std::vecto
r<Double_t> &points,
Double_t dX, Double_t dY, Double_t dZ);
static void RenderPoints(const TAttMarker& marker, static void RenderPoints(const TAttMarker& marker,
Float_t* p, Int_t n, Float_t* p, Int_t n,
Int_t pick_radius=0, Bool_t selection=kFALSE, Int_t pick_radius=0, Bool_t selection=kFALSE,
Bool_t sec_selection=kFALSE); Bool_t sec_selection=kFALSE);
static void RenderPoints(const TAttMarker& marker,
const std::vector<Double_t> &points);
static void RenderCrosses(const TAttMarker& marker, static void RenderCrosses(const TAttMarker& marker,
Float_t* p, Int_t n, Float_t* p, Int_t n,
Bool_t sec_selection=kFALSE); Bool_t sec_selection=kFALSE);
static void RenderCrosses(const TAttMarker& marker,
const std::vector<Double_t> &points,
Double_t dX, Double_t dY, Double_t dZ);
static void RenderPolyLine(const TAttLine& aline, Char_t transp, static void RenderPolyLine(const TAttLine& aline, Char_t transp,
Float_t* p, Int_t n, Float_t* p, Int_t n,
Int_t pick_radius=0, Bool_t selection=kFALSE) ; Int_t pick_radius=0, Bool_t selection=kFALSE) ;
static void BeginAttLine(const TAttLine& aline, Char_t transp, static void BeginAttLine(const TAttLine& aline, Char_t transp,
Int_t pick_radius=0, Bool_t selection=kFALSE); Int_t pick_radius=0, Bool_t selection=kFALSE);
static void EndAttLine(Int_t pick_radius=0, Bool_t selection=kFALSE); static void EndAttLine(Int_t pick_radius=0, Bool_t selection=kFALSE);
// TODO: These draw routines should take LOD hints // TODO: These draw routines should take LOD hints
static void SetDrawColors(const UChar_t rgba[4]); static void SetDrawColors(const UChar_t rgba[4]);
skipping to change at line 1205 skipping to change at line 1216
void DrawQuadFilled(const Double_t *v0, const Double_t *v1, void DrawQuadFilled(const Double_t *v0, const Double_t *v1,
const Double_t *v2, const Double_t *v3, const Double_t *v2, const Double_t *v3,
const Double_t *normal); const Double_t *normal);
void DrawSmoothFace(const TGLVertex3 &v1, const TGLVertex3 &v2, void DrawSmoothFace(const TGLVertex3 &v1, const TGLVertex3 &v2,
const TGLVertex3 &v3, const TGLVector3 &norm1, const TGLVertex3 &v3, const TGLVector3 &norm1,
const TGLVector3 &norm2, const TGLVector3 &norm3); const TGLVector3 &norm2, const TGLVector3 &norm3);
void DrawBoxFront(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMa x, void DrawBoxFront(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMa x,
Double_t zMin, Double_t zMax, Int_t fp); Double_t zMin, Double_t zMax, Int_t fp);
void DrawTransparentBox(Double_t xMin, Double_t xMax, Double_t yMin, Double
_t yMax,
Double_t zMin, Double_t zMax, Int_t fp);
void DrawBoxFrontTextured(Double_t xMin, Double_t xMax, Double_t yMin, void DrawBoxFrontTextured(Double_t xMin, Double_t xMax, Double_t yMin,
Double_t yMax, Double_t zMin, Double_t zMax, Double_t yMax, Double_t zMin, Double_t zMax,
Double_t tMin, Double_t tMax, Int_t front); Double_t tMin, Double_t tMax, Int_t front);
#ifndef __CINT__ #ifndef __CINT__
void DrawTrapezoidTextured(const Double_t ver[][2], Double_t zMin, Double_t zMax, void DrawTrapezoidTextured(const Double_t ver[][2], Double_t zMin, Double_t zMax,
Double_t tMin, Double_t tMax); Double_t tMin, Double_t tMax);
void DrawTrapezoidTextured(const Double_t ver[][3], Double_t texMin, Double _t texMax); void DrawTrapezoidTextured(const Double_t ver[][3], Double_t texMin, Double _t texMax);
void DrawTrapezoidTextured2(const Double_t ver[][2], Double_t zMin, Double_ t zMax, void DrawTrapezoidTextured2(const Double_t ver[][2], Double_t zMin, Double_ t zMax,
Double_t tMin, Double_t tMax); Double_t tMin, Double_t tMax);
 End of changes. 6 change blocks. 
1 lines changed or deleted 17 lines changed or added


 TGListTree.h   TGListTree.h 
// @(#)root/gui:$Id: TGListTree.h 25229 2008-08-25 15:14:34Z bellenot $ // @(#)root/gui:$Id: TGListTree.h 38753 2011-04-06 13:14:08Z bellenot $
// Author: Fons Rademakers 25/02/98 // Author: Fons Rademakers 25/02/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 238 skipping to change at line 238
TGListTreeItem *fFirst; // pointer to first item in list TGListTreeItem *fFirst; // pointer to first item in list
TGListTreeItem *fLast; // pointer to last item in list TGListTreeItem *fLast; // pointer to last item in list
TGListTreeItem *fSelected; // pointer to selected item in list TGListTreeItem *fSelected; // pointer to selected item in list
TGListTreeItem *fCurrent; // pointer to current item in list TGListTreeItem *fCurrent; // pointer to current item in list
TGListTreeItem *fBelowMouse; // pointer to item below mouses cursor TGListTreeItem *fBelowMouse; // pointer to item below mouses cursor
Int_t fHspacing; // horizontal spacing between items Int_t fHspacing; // horizontal spacing between items
Int_t fVspacing; // vertical spacing between items Int_t fVspacing; // vertical spacing between items
Int_t fIndent; // number of pixels indentation Int_t fIndent; // number of pixels indentation
Int_t fMargin; // number of pixels margin from left s ide Int_t fMargin; // number of pixels margin from left s ide
Pixel_t fGrayPixel; // gray draw color Pixel_t fGrayPixel; // gray draw color
GContext_t fActiveGC; // activated (selected) drawing contex t
GContext_t fDrawGC; // icon drawing context GContext_t fDrawGC; // icon drawing context
GContext_t fLineGC; // dashed line drawing context GContext_t fLineGC; // dashed line drawing context
GContext_t fHighlightGC; // highlighted icon drawing context GContext_t fHighlightGC; // highlighted icon drawing context
FontStruct_t fFont; // font used to draw item text FontStruct_t fFont; // font used to draw item text
UInt_t fDefw; // default list width UInt_t fDefw; // default list width
UInt_t fDefh; // default list height UInt_t fDefh; // default list height
Int_t fExposeTop; // top y postion of visible region Int_t fExposeTop; // top y postion of visible region
Int_t fExposeBottom; // bottom y position of visible region Int_t fExposeBottom; // bottom y position of visible region
TGToolTip *fTip; // tooltip shown when moving over list items TGToolTip *fTip; // tooltip shown when moving over list items
TGListTreeItem *fTipItem; // item for which tooltip is set TGListTreeItem *fTipItem; // item for which tooltip is set
skipping to change at line 265 skipping to change at line 266
Bool_t fUserControlled; // let user decides what is the behavi our on events Bool_t fUserControlled; // let user decides what is the behavi our on events
Bool_t fEventHandled; // flag used from user code to bypass standard event handling Bool_t fEventHandled; // flag used from user code to bypass standard event handling
UInt_t fLastEventState; // modifier state of the last keyboard event UInt_t fLastEventState; // modifier state of the last keyboard event
EColorMarkupMode fColorMode; // if/how to render item's main color EColorMarkupMode fColorMode; // if/how to render item's main color
ECheckMode fCheckMode; // how to propagate check properties t hrough the tree ECheckMode fCheckMode; // how to propagate check properties t hrough the tree
GContext_t fColorGC; // drawing context for main item color GContext_t fColorGC; // drawing context for main item color
static Pixel_t fgGrayPixel; static Pixel_t fgGrayPixel;
static const TGFont *fgDefaultFont; static const TGFont *fgDefaultFont;
static TGGC *fgActiveGC;
static TGGC *fgDrawGC; static TGGC *fgDrawGC;
static TGGC *fgLineGC; static TGGC *fgLineGC;
static TGGC *fgHighlightGC; static TGGC *fgHighlightGC;
static TGGC *fgColorGC; static TGGC *fgColorGC;
static const TGPicture *fgOpenPic; // icon for open item static const TGPicture *fgOpenPic; // icon for open item
static const TGPicture *fgClosedPic; // icon for closed item static const TGPicture *fgClosedPic; // icon for closed item
static const TGPicture *fgCheckedPic; // icon for checked item static const TGPicture *fgCheckedPic; // icon for checked item
static const TGPicture *fgUncheckedPic; // icon for unchecked item static const TGPicture *fgUncheckedPic; // icon for unchecked item
static Pixel_t GetGrayPixel(); static Pixel_t GetGrayPixel();
static FontStruct_t GetDefaultFontStruct(); static FontStruct_t GetDefaultFontStruct();
static const TGGC &GetActiveGC();
static const TGGC &GetDrawGC(); static const TGGC &GetDrawGC();
static const TGGC &GetLineGC(); static const TGGC &GetLineGC();
static const TGGC &GetHighlightGC(); static const TGGC &GetHighlightGC();
static const TGGC &GetColorGC(); static const TGGC &GetColorGC();
void Draw(Handle_t id, Int_t yevent, Int_t hevent); void Draw(Handle_t id, Int_t yevent, Int_t hevent);
void Draw(Option_t * ="") { MayNotUse("Draw(Option_t*)"); } void Draw(Option_t * ="") { MayNotUse("Draw(Option_t*)"); }
Int_t DrawChildren(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_t xroot); Int_t DrawChildren(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_t xroot);
void DrawItem(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_ t *xroot, void DrawItem(Handle_t id, TGListTreeItem *item, Int_t x, Int_t y, Int_ t *xroot,
UInt_t *retwidth, UInt_t *retheight); UInt_t *retwidth, UInt_t *retheight);
 End of changes. 4 change blocks. 
1 lines changed or deleted 4 lines changed or added


 TGMenu.h   TGMenu.h 
// @(#)root/gui:$Id: TGMenu.h 31295 2009-11-18 20:29:26Z rdm $ // @(#)root/gui:$Id: TGMenu.h 38843 2011-04-14 12:13:31Z bellenot $
// Author: Fons Rademakers 09/01/98 // Author: Fons Rademakers 09/01/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 TGResourcePool.h   TGResourcePool.h 
// @(#)root/gui:$Id: TGResourcePool.h 23115 2008-04-10 13:35:37Z rdm $ // @(#)root/gui:$Id: TGResourcePool.h 38843 2011-04-14 12:13:31Z bellenot $
// Author: Fons Rademakers 19/5/2003 // Author: Fons Rademakers 19/5/2003
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2003, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2003, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 44 skipping to change at line 44
class TGPicture; class TGPicture;
class TGMimeTypes; class TGMimeTypes;
class TGResourcePool : public TGObject { class TGResourcePool : public TGObject {
private: private:
Pixel_t fBackColor; // default background color Pixel_t fBackColor; // default background color
Pixel_t fForeColor; // default foreground color Pixel_t fForeColor; // default foreground color
Pixel_t fHilite; // default hilite color Pixel_t fHilite; // default hilite color
Pixel_t fShadow; // default shadow color Pixel_t fShadow; // default shadow color
Pixel_t fHighLightColor; // highlight color
Pixel_t fSelBackColor; // default selection background colo r Pixel_t fSelBackColor; // default selection background colo r
Pixel_t fSelForeColor; // default selection foreground colo r Pixel_t fSelForeColor; // default selection foreground colo r
Pixel_t fDocBackColor; // default document background color Pixel_t fDocBackColor; // default document background color
Pixel_t fDocForeColor; // default document foreground color Pixel_t fDocForeColor; // default document foreground color
Pixel_t fTipBackColor; // default tip background color Pixel_t fTipBackColor; // default tip background color
Pixel_t fTipForeColor; // default tip foreground color Pixel_t fTipForeColor; // default tip foreground color
Pixel_t fWhite; // white color index Pixel_t fWhite; // white color index
Pixel_t fBlack; // black color index Pixel_t fBlack; // black color index
TGFontPool *fFontPool; // font pool manager TGFontPool *fFontPool; // font pool manager
skipping to change at line 117 skipping to change at line 118
// Color values... // Color values...
Pixel_t GetWhiteColor() const { return fWhite; } Pixel_t GetWhiteColor() const { return fWhite; }
Pixel_t GetBlackColor() const { return fBlack; } Pixel_t GetBlackColor() const { return fBlack; }
Pixel_t GetFrameFgndColor() const { return fForeColor; } Pixel_t GetFrameFgndColor() const { return fForeColor; }
Pixel_t GetFrameBgndColor() const { return fBackColor; } Pixel_t GetFrameBgndColor() const { return fBackColor; }
Pixel_t GetFrameHiliteColor() const { return fHilite; } Pixel_t GetFrameHiliteColor() const { return fHilite; }
Pixel_t GetFrameShadowColor() const { return fShadow; } Pixel_t GetFrameShadowColor() const { return fShadow; }
Pixel_t GetHighLightColor() const { return fHighLightColor; }
Pixel_t GetDocumentFgndColor() const { return fDocForeColor; } Pixel_t GetDocumentFgndColor() const { return fDocForeColor; }
Pixel_t GetDocumentBgndColor() const { return fDocBackColor; } Pixel_t GetDocumentBgndColor() const { return fDocBackColor; }
Pixel_t GetSelectedFgndColor() const { return fSelForeColor; } Pixel_t GetSelectedFgndColor() const { return fSelForeColor; }
Pixel_t GetSelectedBgndColor() const { return fSelBackColor; } Pixel_t GetSelectedBgndColor() const { return fSelBackColor; }
Pixel_t GetTipFgndColor() const { return fTipForeColor; } Pixel_t GetTipFgndColor() const { return fTipForeColor; }
Pixel_t GetTipBgndColor() const { return fTipBackColor; } Pixel_t GetTipBgndColor() const { return fTipBackColor; }
// Fonts... // Fonts...
 End of changes. 3 change blocks. 
1 lines changed or deleted 4 lines changed or added


 TGScrollBar.h   TGScrollBar.h 
// @(#)root/gui:$Id: TGScrollBar.h 23115 2008-04-10 13:35:37Z rdm $ // @(#)root/gui:$Id: TGScrollBar.h 38845 2011-04-14 12:47:50Z bellenot $
// Author: Fons Rademakers 10/01/98 // Author: Fons Rademakers 10/01/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 54 skipping to change at line 54
class TTimer; class TTimer;
class TGScrollBarElement : public TGFrame { class TGScrollBarElement : public TGFrame {
private: private:
TGScrollBarElement(const TGScrollBarElement&); // Not implemented TGScrollBarElement(const TGScrollBarElement&); // Not implemented
TGScrollBarElement& operator=(const TGScrollBarElement&); // Not impleme nted TGScrollBarElement& operator=(const TGScrollBarElement&); // Not impleme nted
protected: protected:
Int_t fState; // state of scrollbar element (button up or do Int_t fState; // state of scrollbar element (button up o
wn) r down)
const TGPicture *fPic; // picture in scrollbar element const TGPicture *fPic; // picture in scrollbar element
const TGPicture *fPicN; // picture for normal state of scrollbar eleme const TGPicture *fPicN; // picture for normal state of scrollbar e
nt lement
const TGPicture *fPicD; // picture for disabled state of scrollbar ele const TGPicture *fPicD; // picture for disabled state of scrollbar
ment element
Pixel_t fBgndColor; // background color
Pixel_t fHighColor; // highlight color
Int_t fStyle; // modern or classic style
public: public:
TGScrollBarElement(const TGWindow *p = 0, const TGPicture *pic = 0, TGScrollBarElement(const TGWindow *p = 0, const TGPicture *pic = 0,
UInt_t w = 1, UInt_t h = 1, UInt_t w = 1, UInt_t h = 1,
UInt_t options = kRaisedFrame | kDoubleBorder, UInt_t options = kRaisedFrame | kDoubleBorder,
Pixel_t back = GetDefaultFrameBackground()); Pixel_t back = GetDefaultFrameBackground());
virtual ~TGScrollBarElement(); virtual ~TGScrollBarElement();
virtual void SetState(Int_t state); virtual void SetState(Int_t state);
virtual void DrawBorder(); virtual void DrawBorder();
virtual void SetEnabled(Bool_t on = kTRUE); virtual void SetEnabled(Bool_t on = kTRUE);
virtual Bool_t IsEnabled() const { return !(fState & kButtonDisabled); } virtual Bool_t IsEnabled() const { return !(fState & kButtonDisabled); }
virtual Bool_t HandleCrossing(Event_t *event);
ClassDef(TGScrollBarElement,0) // Scrollbar element (head, tail, slider ) ClassDef(TGScrollBarElement,0) // Scrollbar element (head, tail, slider )
}; };
class TGScrollBar : public TGFrame, public TGWidget { class TGScrollBar : public TGFrame, public TGWidget {
private: private:
TGScrollBar(const TGScrollBar&); // Not implemented TGScrollBar(const TGScrollBar&); // Not implemented
TGScrollBar& operator=(const TGScrollBar&); // Not implemented TGScrollBar& operator=(const TGScrollBar&); // Not implemented
skipping to change at line 99 skipping to change at line 103
Int_t fSliderRange; // logical slider range Int_t fSliderRange; // logical slider range
Int_t fSmallInc; // Small Increment in the sliding al gorithm Int_t fSmallInc; // Small Increment in the sliding al gorithm
TGScrollBarElement *fHead; // head button of scrollbar TGScrollBarElement *fHead; // head button of scrollbar
TGScrollBarElement *fTail; // tail button of scrollbar TGScrollBarElement *fTail; // tail button of scrollbar
TGScrollBarElement *fSlider; // slider TGScrollBarElement *fSlider; // slider
const TGPicture *fHeadPic; // picture in head (up or left arrow ) const TGPicture *fHeadPic; // picture in head (up or left arrow )
const TGPicture *fTailPic; // picture in tail (down or right ar row) const TGPicture *fTailPic; // picture in tail (down or right ar row)
TTimer *fRepeat; // repeat rate timer (when mouse sta ys pressed) TTimer *fRepeat; // repeat rate timer (when mouse sta ys pressed)
Window_t fSubw; // sub window in which mouse is pres sed Window_t fSubw; // sub window in which mouse is pres sed
Bool_t fAccelerated; // kFALSE - normal, kTRUE - accelera ted Bool_t fAccelerated; // kFALSE - normal, kTRUE - accelera ted
Pixel_t fBgndColor; // background color
Pixel_t fHighColor; // highlight color
static Pixmap_t fgBckgndPixmap; static Pixmap_t fgBckgndPixmap;
static Int_t fgScrollBarWidth; static Int_t fgScrollBarWidth;
public: public:
static Pixmap_t GetBckgndPixmap(); static Pixmap_t GetBckgndPixmap();
static Int_t GetScrollBarWidth(); static Int_t GetScrollBarWidth();
TGScrollBar(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1, TGScrollBar(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1,
UInt_t options = kChildFrame, UInt_t options = kChildFrame,
Pixel_t back = GetDefaultFrameBackground()); Pixel_t back = GetDefaultFrameBackground());
virtual ~TGScrollBar(); virtual ~TGScrollBar();
void GrabPointer(Bool_t grab) { fGrabPointer = grab; } void GrabPointer(Bool_t grab) { fGrabPointer = grab; }
virtual void DrawBorder() { } virtual void DrawBorder() { }
virtual Bool_t HandleButton(Event_t *event) = 0; virtual Bool_t HandleButton(Event_t *event) = 0;
virtual Bool_t HandleCrossing(Event_t *event);
virtual Bool_t HandleMotion(Event_t *event) = 0; virtual Bool_t HandleMotion(Event_t *event) = 0;
virtual Bool_t HandleTimer(TTimer *t); virtual Bool_t HandleTimer(TTimer *t);
virtual void Layout() = 0; virtual void Layout() = 0;
virtual void SetRange(Int_t range, Int_t page_size) = 0; virtual void SetRange(Int_t range, Int_t page_size) = 0;
virtual void SetPosition(Int_t pos) = 0; virtual void SetPosition(Int_t pos) = 0;
virtual Int_t GetPosition() const { return fPos; } virtual Int_t GetPosition() const { return fPos; }
virtual Int_t GetPageSize() const { return fPsize; } virtual Int_t GetPageSize() const { return fPsize; }
virtual Int_t GetRange() const { return fRange; } virtual Int_t GetRange() const { return fRange; }
virtual void Resize(UInt_t w = 0, UInt_t h = 0) { TGFrame::Resize(w, h) ; SetRange(fRange, fPsize); } virtual void Resize(UInt_t w = 0, UInt_t h = 0) { TGFrame::Resize(w, h) ; SetRange(fRange, fPsize); }
 End of changes. 5 change blocks. 
8 lines changed or deleted 15 lines changed or added


 TGX11.h   TGX11.h 
// @(#)root/x11:$Id: TGX11.h 32427 2010-03-01 18:25:58Z rdm $ // @(#)root/x11:$Id: TGX11.h 37734 2011-01-07 09:53:54Z rdm $
// Author: Rene Brun, Olivier Couet, Fons Rademakers 28/11/94 // Author: Rene Brun, Olivier Couet, Fons Rademakers 28/11/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 37 skipping to change at line 37
#if !defined(__CINT__) #if !defined(__CINT__)
#include <X11/Xlib.h> #include <X11/Xlib.h>
#include <X11/Xutil.h> #include <X11/Xutil.h>
#include <X11/Xatom.h> #include <X11/Xatom.h>
#include <X11/cursorfont.h> #include <X11/cursorfont.h>
#include <X11/keysym.h> #include <X11/keysym.h>
#include <X11/xpm.h> #include <X11/xpm.h>
#ifdef Status
// Convert Status from a CPP macro to a typedef:
typedef Status X11Status_t;
#undef Status
typedef X11Status_t Status;
#endif
#ifdef None
// Convert None from a CPP macro to a static const int:
static const unsigned long gX11None = None;
#undef None
static const unsigned long None = gX11None;
#endif
#else #else
typedef unsigned long XID; typedef unsigned long XID;
typedef XID Drawable; typedef XID Drawable;
typedef XID Cursor; typedef XID Cursor;
typedef XID Colormap; typedef XID Colormap;
typedef XID Window; typedef XID Window;
struct GC; struct GC;
struct Display; struct Display;
 End of changes. 2 change blocks. 
1 lines changed or deleted 15 lines changed or added


 TGenCollectionProxy.h   TGenCollectionProxy.h 
// @(#)root/io:$Id: TGenCollectionProxy.h 36061 2010-10-04 16:05:51Z pcanal $ // @(#)root/io:$Id: TGenCollectionProxy.h 38934 2011-04-19 20:26:28Z pcanal $
// Author: Markus Frank 28/10/04 // Author: Markus Frank 28/10/04
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TGenCollectionProxy #ifndef ROOT_TGenCollectionProxy
skipping to change at line 191 skipping to change at line 191
::operator delete(p); ::operator delete(p);
} }
} }
set( b.ReadObjectAny(v->fType) ); set( b.ReadObjectAny(v->fType) );
} }
void read_tstring_pointer(Bool_t vsn3, TBuffer& b) { void read_tstring_pointer(Bool_t vsn3, TBuffer& b) {
TString* s = (TString*)ptr(); TString* s = (TString*)ptr();
if ( vsn3 ) { if ( vsn3 ) {
if ( !s ) s = new TString(); if ( !s ) s = new TString();
s->Replace(0, s->Length(), 0, 0); else s->Clear();
s->Streamer(b); s->Streamer(b);
set(s); set(s);
return; return;
} }
if ( s ) delete s; if ( s ) delete s;
set( b.ReadObjectAny(TString::Class()) ); set( b.ReadObjectAny(TString::Class()) );
} }
void write_tstring_pointer(TBuffer& b) { void write_tstring_pointer(TBuffer& b) {
b.WriteObjectAny(ptr(), TString::Class()); b.WriteObjectAny(ptr(), TString::Class());
} }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TGenPhaseSpace.h   TGenPhaseSpace.h 
// @(#)root/physics:$Id: TGenPhaseSpace.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/physics:$Id: TGenPhaseSpace.h 38051 2011-02-11 14:30:29Z brun $
// Author: Rene Brun , Valerio Filippini 06/09/2000 // Author: Rene Brun , Valerio Filippini 06/09/2000
/////////////////////////////////////////////////////////////////////////// //// /////////////////////////////////////////////////////////////////////////// ////
// // // //
// Phase Space Generator, based on the GENBOD routine of CERNLIB // // Phase Space Generator, based on the GENBOD routine of CERNLIB //
// // // //
/////////////////////////////////////////////////////////////////////////// //// /////////////////////////////////////////////////////////////////////////// ////
#ifndef ROOT_TGenPhaseSpace #ifndef ROOT_TGenPhaseSpace
#define ROOT_TGenPhaseSpace #define ROOT_TGenPhaseSpace
skipping to change at line 31 skipping to change at line 31
Double_t fWtMax; // maximum weigth Double_t fWtMax; // maximum weigth
TLorentzVector fDecPro[18]; //kinematics of the generated particles TLorentzVector fDecPro[18]; //kinematics of the generated particles
Double_t PDK(Double_t a, Double_t b, Double_t c); Double_t PDK(Double_t a, Double_t b, Double_t c);
public: public:
TGenPhaseSpace() {} TGenPhaseSpace() {}
TGenPhaseSpace(const TGenPhaseSpace &gen); TGenPhaseSpace(const TGenPhaseSpace &gen);
virtual ~TGenPhaseSpace() {} virtual ~TGenPhaseSpace() {}
Bool_t SetDecay(TLorentzVector &P, Int_t nt, Double_t *mass, Op tion_t *opt=""); Bool_t SetDecay(TLorentzVector &P, Int_t nt, const Double_t *ma ss, Option_t *opt="");
Double_t Generate(); Double_t Generate();
TLorentzVector *GetDecay(Int_t n); TLorentzVector *GetDecay(Int_t n);
Int_t GetNt() const { return fNt;} Int_t GetNt() const { return fNt;}
Double_t GetWtMax() const { return fWtMax;} Double_t GetWtMax() const { return fWtMax;}
ClassDef(TGenPhaseSpace,1) //Simple Phase Space Generator ClassDef(TGenPhaseSpace,1) //Simple Phase Space Generator
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TGeoNavigator.h   TGeoNavigator.h 
// @(#)root/geom:$Id: TGeoNavigator.h 31002 2009-11-06 09:27:30Z brun $ // @(#)root/geom:$Id: TGeoNavigator.h 38790 2011-04-10 07:55:05Z agheata $
// Author: Mihaela Gheata 30/05/07 // Author: Mihaela Gheata 30/05/07
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 151 skipping to change at line 151
Bool_t IsStepExiting() const {return fIsStepExiti ng;} Bool_t IsStepExiting() const {return fIsStepExiti ng;}
Bool_t IsOutside() const {return fIsOutside;} Bool_t IsOutside() const {return fIsOutside;}
Bool_t IsOnBoundary() const {return fIsOnBoundar y;} Bool_t IsOnBoundary() const {return fIsOnBoundar y;}
Bool_t IsNullStep() const {return fIsNullStep; } Bool_t IsNullStep() const {return fIsNullStep; }
void SetCheckingOverlaps(Bool_t flag=kTRUE) {fSearchOv erlaps = flag;} void SetCheckingOverlaps(Bool_t flag=kTRUE) {fSearchOv erlaps = flag;}
void SetOutside(Bool_t flag=kTRUE) {fIsOutside = flag; } void SetOutside(Bool_t flag=kTRUE) {fIsOutside = flag; }
//--- modeler state getters/setters //--- modeler state getters/setters
void DoBackupState(); void DoBackupState();
void DoRestoreState(); void DoRestoreState();
Int_t GetNodeId() const {return fCache->GetNo deId();} Int_t GetNodeId() const {return fCache->GetNo deId();}
Int_t GetNextDaughterIndex() const {return fNextDaughte rIndex;}
TGeoNode *GetNextNode() const {return fNextNode;} TGeoNode *GetNextNode() const {return fNextNode;}
TGeoNode *GetMother(Int_t up=1) const {return fCache->GetMo ther(up);} TGeoNode *GetMother(Int_t up=1) const {return fCache->GetMo ther(up);}
TGeoHMatrix *GetMotherMatrix(Int_t up=1) const {return fCache- >GetMotherMatrix(up);} TGeoHMatrix *GetMotherMatrix(Int_t up=1) const {return fCache- >GetMotherMatrix(up);}
TGeoHMatrix *GetHMatrix(); TGeoHMatrix *GetHMatrix();
TGeoHMatrix *GetCurrentMatrix() const {return fCache->GetCu rrentMatrix();} TGeoHMatrix *GetCurrentMatrix() const {return fCache->GetCu rrentMatrix();}
TGeoNode *GetCurrentNode() const {return fCurrentNode; } TGeoNode *GetCurrentNode() const {return fCurrentNode; }
Int_t GetCurrentNodeId() const {return fCache->GetCu rrentNodeId();} Int_t GetCurrentNodeId() const {return fCache->GetCu rrentNodeId();}
const Double_t *GetCurrentPoint() const {return fPoint;} const Double_t *GetCurrentPoint() const {return fPoint;}
const Double_t *GetCurrentDirection() const {return fDirection;} const Double_t *GetCurrentDirection() const {return fDirection;}
TGeoVolume *GetCurrentVolume() const {return fCurrentNode->Ge tVolume();} TGeoVolume *GetCurrentVolume() const {return fCurrentNode->Ge tVolume();}
skipping to change at line 178 skipping to change at line 179
void SetCurrentPoint(const Double_t *point) {memcpy(fP oint,point,3*sizeof(Double_t));} void SetCurrentPoint(const Double_t *point) {memcpy(fP oint,point,3*sizeof(Double_t));}
void SetCurrentPoint(Double_t x, Double_t y, Double_t z) { void SetCurrentPoint(Double_t x, Double_t y, Double_t z) {
fPoint[0]=x; fPoint[1]=y; fPoint[2]=z;} fPoint[0]=x; fPoint[1]=y; fPoint[2]=z;}
void SetLastPoint(Double_t x, Double_t y, Double_t z) { void SetLastPoint(Double_t x, Double_t y, Double_t z) {
fLastPoint[0]=x; fLastPoint[1]=y; fLast Point[2]=z;} fLastPoint[0]=x; fLastPoint[1]=y; fLast Point[2]=z;}
void SetCurrentDirection(const Double_t *dir) {memcpy( fDirection,dir,3*sizeof(Double_t));} void SetCurrentDirection(const Double_t *dir) {memcpy( fDirection,dir,3*sizeof(Double_t));}
void SetCurrentDirection(Double_t nx, Double_t ny, Dou ble_t nz) { void SetCurrentDirection(Double_t nx, Double_t ny, Dou ble_t nz) {
fDirection[0]=nx; fDirection[1]=ny; fDi rection[2]=nz;} fDirection[0]=nx; fDirection[1]=ny; fDi rection[2]=nz;}
// void SetNormalChecked(Double_t norm) {fNormalChecked =norm;} // void SetNormalChecked(Double_t norm) {fNormalChecked =norm;}
void SetCldirChecked(Double_t *dir) {memcpy(fCldirChec ked, dir, 3*sizeof(Double_t));} void SetCldirChecked(Double_t *dir) {memcpy(fCldirChec ked, dir, 3*sizeof(Double_t));}
void SetLastSafetyForPoint(Double_t safe, const Double _t *point) {fLastSafety=safe; memcpy(fLastPoint,point,3*sizeof(Double_t));}
//--- point/vector reference frame conversion //--- point/vector reference frame conversion
void LocalToMaster(const Double_t *local, Double_t *ma ster) const {fCache->LocalToMaster(local, master);} void LocalToMaster(const Double_t *local, Double_t *ma ster) const {fCache->LocalToMaster(local, master);}
void LocalToMasterVect(const Double_t *local, Double_t *master) const {fCache->LocalToMasterVect(local, master);} void LocalToMasterVect(const Double_t *local, Double_t *master) const {fCache->LocalToMasterVect(local, master);}
void LocalToMasterBomb(const Double_t *local, Double_t *master) const {fCache->LocalToMasterBomb(local, master);} void LocalToMasterBomb(const Double_t *local, Double_t *master) const {fCache->LocalToMasterBomb(local, master);}
void MasterToLocal(const Double_t *master, Double_t *l ocal) const {fCache->MasterToLocal(master, local);} void MasterToLocal(const Double_t *master, Double_t *l ocal) const {fCache->MasterToLocal(master, local);}
void MasterToLocalVect(const Double_t *master, Double_ t *local) const {fCache->MasterToLocalVect(master, local);} void MasterToLocalVect(const Double_t *master, Double_ t *local) const {fCache->MasterToLocalVect(master, local);}
void MasterToLocalBomb(const Double_t *master, Double_ t *local) const {fCache->MasterToLocalBomb(master, local);} void MasterToLocalBomb(const Double_t *master, Double_ t *local) const {fCache->MasterToLocalBomb(master, local);}
void MasterToTop(const Double_t *master, Double_t *top ) const; void MasterToTop(const Double_t *master, Double_t *top ) const;
void TopToMaster(const Double_t *top, Double_t *master ) const; void TopToMaster(const Double_t *top, Double_t *master ) const;
 End of changes. 3 change blocks. 
1 lines changed or deleted 3 lines changed or added


 TGraph.h   TGraph.h 
// @(#)root/hist:$Id: TGraph.h 36493 2010-11-03 13:01:36Z couet $ // @(#)root/hist:$Id: TGraph.h 38549 2011-03-21 19:26:04Z pcanal $
// Author: Rene Brun, Olivier Couet 12/12/94 // Author: Rene Brun, Olivier Couet 12/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 175 skipping to change at line 175
virtual void Paint(Option_t *chopt=""); virtual void Paint(Option_t *chopt="");
void PaintGraph(Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt); void PaintGraph(Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt);
void PaintGrapHist(Int_t npoints, const Double_t *x, co nst Double_t *y, Option_t *chopt); void PaintGrapHist(Int_t npoints, const Double_t *x, co nst Double_t *y, Option_t *chopt);
virtual void PaintStats(TF1 *fit); virtual void PaintStats(TF1 *fit);
virtual void Print(Option_t *chopt="") const; virtual void Print(Option_t *chopt="") const;
virtual void RecursiveRemove(TObject *obj); virtual void RecursiveRemove(TObject *obj);
virtual Int_t RemovePoint(); // *MENU* virtual Int_t RemovePoint(); // *MENU*
virtual Int_t RemovePoint(Int_t ipoint); virtual Int_t RemovePoint(Int_t ipoint);
virtual void SavePrimitive(ostream &out, Option_t *option = "") ; virtual void SavePrimitive(ostream &out, Option_t *option = "") ;
virtual void SetEditable(Bool_t editable=kTRUE); // *TOGGLE* *G ETTER=GetEditable virtual void SetEditable(Bool_t editable=kTRUE); // *TOGGLE* *G ETTER=GetEditable
virtual void SetHistogram(TH1 *h) {fHistogram = (TH1F*)h;} virtual void SetHistogram(TH1F *h) {fHistogram = h;}
virtual void SetMaximum(Double_t maximum=-1111); // *MENU* virtual void SetMaximum(Double_t maximum=-1111); // *MENU*
virtual void SetMinimum(Double_t minimum=-1111); // *MENU* virtual void SetMinimum(Double_t minimum=-1111); // *MENU*
virtual void Set(Int_t n); virtual void Set(Int_t n);
virtual void SetPoint(Int_t i, Double_t x, Double_t y); virtual void SetPoint(Int_t i, Double_t x, Double_t y);
virtual void SetTitle(const char *title=""); // *MENU* virtual void SetTitle(const char *title=""); // *MENU*
virtual void Sort(Bool_t (*greater)(const TGraph*, Int_t, Int_t )=&TGraph::CompareX, virtual void Sort(Bool_t (*greater)(const TGraph*, Int_t, Int_t )=&TGraph::CompareX,
Bool_t ascending=kTRUE, Int_t low=0, Int_t hi gh=-1111); Bool_t ascending=kTRUE, Int_t low=0, Int_t hi gh=-1111);
virtual void UseCurrentStyle(); virtual void UseCurrentStyle();
void Zero(Int_t &k,Double_t AZ,Double_t BZ,Double_t E2, Double_t &X,Double_t &Y,Int_t maxiterations); void Zero(Int_t &k,Double_t AZ,Double_t BZ,Double_t E2, Double_t &X,Double_t &Y,Int_t maxiterations);
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TH1.h   TH1.h 
// @(#)root/hist:$Id: TH1.h 35227 2010-09-10 14:29:14Z moneta $ // @(#)root/hist:$Id: TH1.h 38629 2011-03-25 15:47:54Z moneta $
// Author: Rene Brun 26/12/94 // Author: Rene Brun 26/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 117 skipping to change at line 117
public: public:
static Int_t FitOptionsMake(Option_t *option, Foption_t &Foption); static Int_t FitOptionsMake(Option_t *option, Foption_t &Foption);
private: private:
Int_t AxisChoice(Option_t *axis) const; Int_t AxisChoice(Option_t *axis) const;
void Build(); void Build();
TH1& operator=(const TH1&); // Not implemented TH1& operator=(const TH1&); // Not implemented
static bool CheckConsistency(const TH1* h1, const TH1* h2);
protected: protected:
TH1(); TH1();
TH1(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double _t xup); TH1(const char *name,const char *title,Int_t nbinsx,Double_t xlow,Double _t xup);
TH1(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins ); TH1(const char *name,const char *title,Int_t nbinsx,const Float_t *xbins );
TH1(const char *name,const char *title,Int_t nbinsx,const Double_t *xbin s); TH1(const char *name,const char *title,Int_t nbinsx,const Double_t *xbin s);
virtual void Copy(TObject &hnew) const; virtual void Copy(TObject &hnew) const;
virtual Int_t BufferFill(Double_t x, Double_t w); virtual Int_t BufferFill(Double_t x, Double_t w);
virtual Bool_t FindNewAxisLimits(const TAxis* axis, const Double_t poi nt, Double_t& newMin, Double_t &newMax); virtual Bool_t FindNewAxisLimits(const TAxis* axis, const Double_t poi nt, Double_t& newMin, Double_t &newMax);
virtual void SavePrimitiveHelp(ostream &out, const char *hname, Opti on_t *option = ""); virtual void SavePrimitiveHelp(ostream &out, const char *hname, Opti on_t *option = "");
static Bool_t RecomputeAxisLimits(TAxis& destAxis, const TAxis& anAxi s); static Bool_t RecomputeAxisLimits(TAxis& destAxis, const TAxis& anAxi s);
static Bool_t SameLimitsAndNBins(const TAxis& axis1, const TAxis& axi s2); static Bool_t SameLimitsAndNBins(const TAxis& axis1, const TAxis& axi s2);
virtual Double_t DoIntegral(Int_t ix1, Int_t ix2, Int_t iy1, Int_t iy2, Int_t iz1, Int_t iz2, Double_t & err, virtual Double_t DoIntegral(Int_t ix1, Int_t ix2, Int_t iy1, Int_t iy2, Int_t iz1, Int_t iz2, Double_t & err,
Option_t * opt, Bool_t doerr = kFALSE) const ; Option_t * opt, Bool_t doerr = kFALSE) const ;
static bool CheckAxisLimits(const TAxis* a1, const TAxis* a2);
static bool CheckBinLimits(const TAxis* a1, const TAxis* a2);
static bool CheckEqualAxes(const TAxis* a1, const TAxis* a2);
static bool CheckConsistentSubAxes(const TAxis *a1, Int_t firstBin1, Int
_t lastBin1, const TAxis *a2, Int_t firstBin2=0, Int_t lastBin2=0);
static bool CheckConsistency(const TH1* h1, const TH1* h2);
public: public:
// TH1 status bits // TH1 status bits
enum { enum {
kNoStats = BIT(9), // don't draw stats box kNoStats = BIT(9), // don't draw stats box
kUserContour = BIT(10), // user specified contour levels kUserContour = BIT(10), // user specified contour levels
kCanRebin = BIT(11), // can rebin axis kCanRebin = BIT(11), // can rebin axis
kLogX = BIT(15), // X-axis in log scale kLogX = BIT(15), // X-axis in log scale
kIsZoomed = BIT(16), // bit set when zooming on Y axis kIsZoomed = BIT(16), // bit set when zooming on Y axis
kNoTitle = BIT(17), // don't draw the histogram title kNoTitle = BIT(17), // don't draw the histogram title
kIsAverage = BIT(18) // Bin contents are average (used by Add) kIsAverage = BIT(18) // Bin contents are average (used by Add)
skipping to change at line 347 skipping to change at line 351
virtual void SetLabelFont(Style_t font=62, Option_t *axis="X"); virtual void SetLabelFont(Style_t font=62, Option_t *axis="X");
virtual void SetLabelOffset(Float_t offset=0.005, Option_t *axis="X" ); virtual void SetLabelOffset(Float_t offset=0.005, Option_t *axis="X" );
virtual void SetLabelSize(Float_t size=0.02, Option_t *axis="X"); virtual void SetLabelSize(Float_t size=0.02, Option_t *axis="X");
virtual void SetMaximum(Double_t maximum=-1111); // *MENU* virtual void SetMaximum(Double_t maximum=-1111); // *MENU*
virtual void SetMinimum(Double_t minimum=-1111); // *MENU* virtual void SetMinimum(Double_t minimum=-1111); // *MENU*
virtual void SetName(const char *name); // *MENU* virtual void SetName(const char *name); // *MENU*
virtual void SetNameTitle(const char *name, const char *title); virtual void SetNameTitle(const char *name, const char *title);
virtual void SetNdivisions(Int_t n=510, Option_t *axis="X"); virtual void SetNdivisions(Int_t n=510, Option_t *axis="X");
virtual void SetNormFactor(Double_t factor=1) {fNormFactor = factor; } virtual void SetNormFactor(Double_t factor=1) {fNormFactor = factor; }
virtual void SetStats(Bool_t stats=kTRUE); virtual void SetStats(Bool_t stats=kTRUE); // *MENU*
virtual void SetOption(Option_t *option=" ") {fOption = option;} virtual void SetOption(Option_t *option=" ") {fOption = option;}
virtual void SetTickLength(Float_t length=0.02, Option_t *axis="X"); virtual void SetTickLength(Float_t length=0.02, Option_t *axis="X");
virtual void SetTitleFont(Style_t font=62, Option_t *axis="X"); virtual void SetTitleFont(Style_t font=62, Option_t *axis="X");
virtual void SetTitleOffset(Float_t offset=1, Option_t *axis="X"); virtual void SetTitleOffset(Float_t offset=1, Option_t *axis="X");
virtual void SetTitleSize(Float_t size=0.02, Option_t *axis="X"); virtual void SetTitleSize(Float_t size=0.02, Option_t *axis="X");
virtual void SetTitle(const char *title); // *MENU* virtual void SetTitle(const char *title); // *MENU*
virtual void SetXTitle(const char *title) {fXaxis.SetTitle(title);} virtual void SetXTitle(const char *title) {fXaxis.SetTitle(title);}
virtual void SetYTitle(const char *title) {fYaxis.SetTitle(title);} virtual void SetYTitle(const char *title) {fYaxis.SetTitle(title);}
virtual void SetZTitle(const char *title) {fZaxis.SetTitle(title);} virtual void SetZTitle(const char *title) {fZaxis.SetTitle(title);}
virtual TH1 *ShowBackground(Int_t niter=20, Option_t *option="same") ; // *MENU* virtual TH1 *ShowBackground(Int_t niter=20, Option_t *option="same") ; // *MENU*
 End of changes. 4 change blocks. 
4 lines changed or deleted 9 lines changed or added


 TH2Poly.h   TH2Poly.h 
// @(#)root/hist:$Id: TH2Poly.h 37434 2010-12-09 12:56:54Z couet $ // @(#)root/hist:$Id: TH2Poly.h 37945 2011-02-02 15:35:05Z couet $
// Author: Olivier Couet, Deniz Gunceler // Author: Olivier Couet, Deniz Gunceler
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 81 skipping to change at line 81
public: public:
TH2Poly(); TH2Poly();
TH2Poly(const char *name,const char *title, Double_t xlow, Double_t xup, Double_t ylow, Double_t yup); TH2Poly(const char *name,const char *title, Double_t xlow, Double_t xup, Double_t ylow, Double_t yup);
TH2Poly(const char *name,const char *title, Int_t nX, Double_t xlow, Dou ble_t xup, Int_t nY, Double_t ylow, Double_t yup); TH2Poly(const char *name,const char *title, Int_t nX, Double_t xlow, Dou ble_t xup, Int_t nY, Double_t ylow, Double_t yup);
virtual ~TH2Poly(); virtual ~TH2Poly();
Int_t AddBin(TObject *poly); Int_t AddBin(TObject *poly);
Int_t AddBin(Int_t n, const Double_t *x, const Double_t *y); Int_t AddBin(Int_t n, const Double_t *x, const Double_t *y);
Int_t AddBin(Double_t x1, Double_t y1, Double_t x2, Double_t y2) ; Int_t AddBin(Double_t x1, Double_t y1, Double_t x2, Double_t y2) ;
virtual void Add(const TH1 *h1, Double_t c1);
virtual void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c
2=1);
virtual void Add(TF1 *h1, Double_t c1=1, Option_t *option="");
void ClearBinContents(); // Clears the content o f all bins void ClearBinContents(); // Clears the content o f all bins
void ChangePartition(Int_t n, Int_t m); // Sets the number of p artition cells to another value void ChangePartition(Int_t n, Int_t m); // Sets the number of p artition cells to another value
virtual TH1 *DrawCopy(Option_t *option="") const; virtual TH1 *DrawCopy(Option_t *option="") const;
Int_t Fill(Double_t x,Double_t y); Int_t Fill(Double_t x,Double_t y);
Int_t Fill(Double_t x,Double_t y, Double_t w); Int_t Fill(Double_t x,Double_t y, Double_t w);
Int_t Fill(const char* name, Double_t w); Int_t Fill(const char* name, Double_t w);
void FillN(Int_t ntimes, const Double_t* x, const Double_t* y, c onst Double_t* w, Int_t stride = 1); void FillN(Int_t ntimes, const Double_t* x, const Double_t* y, c onst Double_t* w, Int_t stride = 1);
Int_t Fill(Double_t){return -1;} //M ayNotUse Int_t Fill(Double_t){return -1;} //M ayNotUse
Int_t Fill(Double_t , const char *, Double_t){return -1;} //M ayNotUse Int_t Fill(Double_t , const char *, Double_t){return -1;} //M ayNotUse
Int_t Fill(const char *, Double_t , Double_t ){return -1;} //M ayNotUse Int_t Fill(const char *, Double_t , Double_t ){return -1;} //M ayNotUse
skipping to change at line 116 skipping to change at line 119
Double_t GetMaximum(Double_t maxval) const; Double_t GetMaximum(Double_t maxval) const;
Double_t GetMinimum() const; Double_t GetMinimum() const;
Double_t GetMinimum(Double_t minval) const; Double_t GetMinimum(Double_t minval) const;
Bool_t GetNewBinAdded() const{return fNewBinAdded;} Bool_t GetNewBinAdded() const{return fNewBinAdded;}
Int_t GetNumberOfBins() const{return fNcells;} Int_t GetNumberOfBins() const{return fNcells;}
void Honeycomb(Double_t xstart, Double_t ystart, Double_t a, Int _t k, Int_t s); // Bins the histogram using a honeycomb structure void Honeycomb(Double_t xstart, Double_t ystart, Double_t a, Int _t k, Int_t s); // Bins the histogram using a honeycomb structure
Double_t Integral(Option_t* option = "") const; Double_t Integral(Option_t* option = "") const;
Double_t Integral(Int_t, Int_t, const Option_t*) const{return 0;} //MayNotUse Double_t Integral(Int_t, Int_t, const Option_t*) const{return 0;} //MayNotUse
Double_t Integral(Int_t, Int_t, Int_t, Int_t, const Option_t*) const {return 0;} //MayNotUse Double_t Integral(Int_t, Int_t, Int_t, Int_t, const Option_t*) const {return 0;} //MayNotUse
Double_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, const Op tion_t*) const{return 0;} //MayNotUse Double_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, const Op tion_t*) const{return 0;} //MayNotUse
void Reset(Option_t *option);
void SavePrimitive(ostream& out, Option_t* option = ""); void SavePrimitive(ostream& out, Option_t* option = "");
void SetBinContent(Int_t bin, Double_t content); void SetBinContent(Int_t bin, Double_t content);
void SetBinContent(Int_t, Int_t, Double_t){return;} // MayNotUse void SetBinContent(Int_t, Int_t, Double_t){return;} // MayNotUse
void SetBinContent(Int_t, Int_t, Int_t, Double_t){return;} // MayNotUse void SetBinContent(Int_t, Int_t, Int_t, Double_t){return;} // MayNotUse
void SetBinContentChanged(Bool_t flag){fBinContentChanged = flag ;} void SetBinContentChanged(Bool_t flag){fBinContentChanged = flag ;}
void SetFloat(Bool_t flag = true); void SetFloat(Bool_t flag = true);
void SetNewBinAdded(Bool_t flag){fNewBinAdded = flag;} void SetNewBinAdded(Bool_t flag){fNewBinAdded = flag;}
protected: protected:
TList *fBins; //List of bins. TList *fBins; //List of bins.
 End of changes. 3 change blocks. 
1 lines changed or deleted 6 lines changed or added


 TH3.h   TH3.h 
// @(#)root/hist:$Id: TH3.h 29899 2009-08-25 12:51:00Z moneta $ // @(#)root/hist:$Id: TH3.h 37961 2011-02-03 10:44:09Z moneta $
// Author: Rene Brun 27/10/95 // Author: Rene Brun 27/10/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 112 skipping to change at line 112
virtual Long64_t Merge(TCollection *list); virtual Long64_t Merge(TCollection *list);
TH1D *ProjectionX(const char *name="_px", Int_t firstybin=0, Int_t lastybin=-1, Int_t firstzbin=0, TH1D *ProjectionX(const char *name="_px", Int_t firstybin=0, Int_t lastybin=-1, Int_t firstzbin=0,
Int_t lastzbin=-1, Option_t *option="") con st; // *MENU* Int_t lastzbin=-1, Option_t *option="") con st; // *MENU*
TH1D *ProjectionY(const char *name="_py", Int_t firstxbin=0, Int_t lastxbin=-1, Int_t firstzbin=0, TH1D *ProjectionY(const char *name="_py", Int_t firstxbin=0, Int_t lastxbin=-1, Int_t firstzbin=0,
Int_t lastzbin=-1, Option_t *option="") con st; // *MENU* Int_t lastzbin=-1, Option_t *option="") con st; // *MENU*
TH1D *ProjectionZ(const char *name="_pz", Int_t firstxbin=0, Int_t lastxbin=-1, Int_t firstybin=0, TH1D *ProjectionZ(const char *name="_pz", Int_t firstxbin=0, Int_t lastxbin=-1, Int_t firstybin=0,
Int_t lastybin=-1, Option_t *option="") con st; // *MENU* Int_t lastybin=-1, Option_t *option="") con st; // *MENU*
TH1 *Project3D(Option_t *option="x") const; // *MENU* TH1 *Project3D(Option_t *option="x") const; // *MENU*
TProfile2D *Project3DProfile(Option_t *option="xy") const; // *MENU * TProfile2D *Project3DProfile(Option_t *option="xy") const; // *MENU *
virtual void PutStats(Double_t *stats); virtual void PutStats(Double_t *stats);
virtual TH3 *RebinX(Int_t ngroup, const char *newname);
virtual TH3 *RebinY(Int_t ngroup, const char *newname);
virtual TH3 *RebinZ(Int_t ngroup, const char *newname);
virtual TH3 *Rebin3D(Int_t nxgroup, Int_t nygroup, Int_t nzgroup, co
nst char *newname);
virtual void Reset(Option_t *option=""); virtual void Reset(Option_t *option="");
virtual void SetShowProjection(const char *option="xy",Int_t nbins=1 ); // *MENU* virtual void SetShowProjection(const char *option="xy",Int_t nbins=1 ); // *MENU*
protected: protected:
TH1D *DoProject1D(const char* name, const char * title, TAxis* pr ojX, TH1D *DoProject1D(const char* name, const char * title, TAxis* pr ojX,
bool computeErrors, bool originalRange, bool computeErrors, bool originalRange,
bool useUF, bool useOF) const; bool useUF, bool useOF) const;
TH2D *DoProject2D(const char* name, const char * title, TAxis* pr ojX, TAxis* projY, TH2D *DoProject2D(const char* name, const char * title, TAxis* pr ojX, TAxis* projY,
bool computeErrors, bool originalRange, bool computeErrors, bool originalRange,
bool useUF, bool useOF) const; bool useUF, bool useOF) const;
 End of changes. 2 change blocks. 
1 lines changed or deleted 6 lines changed or added


 TH3GL.h   TH3GL.h 
// @(#)root/gl:$Id: TH3GL.h 33579 2010-05-19 12:43:08Z rdm $ // @(#)root/gl:$Id: TH3GL.h 38817 2011-04-13 09:32:44Z couet $
// Author: Matevz Tadel 2007 // Author: Matevz Tadel 2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TH3GL #ifndef ROOT_TH3GL
#define ROOT_TH3GL #define ROOT_TH3GL
#include "TGLPlot3D.h" #include "TGLPlot3D.h"
#include <TGLUtil.h> #include <TGLUtil.h>
#include <TGLAxisPainter.h> #include <TGLAxisPainter.h>
class TPolyMarker3D;
class TGLRnrCtx; class TGLRnrCtx;
class TH3; class TH3;
class TAxis; class TAxis;
class TH3; class TH3;
class TH3GL : public TGLPlot3D class TH3GL : public TGLPlot3D
{ {
private: private:
TH3GL(const TH3GL&); // Not implemented TH3GL(const TH3GL&); // Not implemented
TH3GL& operator=(const TH3GL&); // Not implemented TH3GL& operator=(const TH3GL&); // Not implemented
protected: protected:
TH3 *fM; // Model object dynamic-casted to TH2. TH3 *fM; // Model object dynamic-casted to TH3.
public: public:
TH3GL(); TH3GL();
TH3GL(TH3 *h, TPolyMarker3D *pm);
virtual ~TH3GL(); virtual ~TH3GL();
virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0);
virtual void SetBBox(); virtual void SetBBox();
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
// To support two-level selection // To support two-level selection
// virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } // virtual Bool_t SupportsSecondarySelect() const { return kTRUE; }
// virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & r ec); // virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & r ec);
 End of changes. 4 change blocks. 
2 lines changed or deleted 4 lines changed or added


 TInterpreter.h   TInterpreter.h 
// @(#)root/meta:$Id: TInterpreter.h 34701 2010-08-02 20:10:24Z pcanal $ // @(#)root/meta:$Id: TInterpreter.h 38517 2011-03-18 20:20:16Z pcanal $
// Author: Fons Rademakers 01/03/96 // Author: Fons Rademakers 01/03/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 90 skipping to change at line 90
virtual Int_t UnloadAllSharedLibraryMaps() = 0; virtual Int_t UnloadAllSharedLibraryMaps() = 0;
virtual Int_t UnloadLibraryMap(const char *library) = 0; virtual Int_t UnloadLibraryMap(const char *library) = 0;
virtual Long_t ProcessLine(const char *line, EErrorCode *error = 0) = 0; virtual Long_t ProcessLine(const char *line, EErrorCode *error = 0) = 0;
virtual Long_t ProcessLineSynch(const char *line, EErrorCode *error = 0) = 0; virtual Long_t ProcessLineSynch(const char *line, EErrorCode *error = 0) = 0;
virtual void PrintIntro() = 0; virtual void PrintIntro() = 0;
virtual void SetGetline(char*(*getlineFunc)(const char* prompt), virtual void SetGetline(char*(*getlineFunc)(const char* prompt),
void (*histaddFunc)(char* line)) = 0; void (*histaddFunc)(char* line)) = 0;
virtual void Reset() = 0; virtual void Reset() = 0;
virtual void ResetAll() = 0; virtual void ResetAll() = 0;
virtual void ResetGlobals() = 0; virtual void ResetGlobals() = 0;
virtual void ResetGlobalVar(void *obj) = 0;
virtual void RewindDictionary() = 0; virtual void RewindDictionary() = 0;
virtual Int_t DeleteGlobal(void *obj) = 0; virtual Int_t DeleteGlobal(void *obj) = 0;
virtual void SaveContext() = 0; virtual void SaveContext() = 0;
virtual void SaveGlobalsContext() = 0; virtual void SaveGlobalsContext() = 0;
virtual void UpdateListOfGlobals() = 0; virtual void UpdateListOfGlobals() = 0;
virtual void UpdateListOfGlobalFunctions() = 0; virtual void UpdateListOfGlobalFunctions() = 0;
virtual void UpdateListOfTypes() = 0; virtual void UpdateListOfTypes() = 0;
virtual void SetClassInfo(TClass *cl, Bool_t reload = kFALSE) = 0; virtual void SetClassInfo(TClass *cl, Bool_t reload = kFALSE) = 0;
virtual Bool_t CheckClassInfo(const char *name, Bool_t autoload = kTRU E) = 0; virtual Bool_t CheckClassInfo(const char *name, Bool_t autoload = kTRU E) = 0;
virtual Long_t Calc(const char *line, EErrorCode* error = 0) = 0; virtual Long_t Calc(const char *line, EErrorCode* error = 0) = 0;
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TKey.h   TKey.h 
// @(#)root/io:$Id: TKey.h 35225 2010-09-10 12:44:37Z pcanal $ // @(#)root/io:$Id: TKey.h 38345 2011-03-09 17:41:42Z pcanal $
// Author: Rene Brun 28/12/94 // Author: Rene Brun 28/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 108 skipping to change at line 108
Bool_t IsFolder() const; Bool_t IsFolder() const;
virtual void Keep(); virtual void Keep();
virtual void ls(Option_t *option="") const; virtual void ls(Option_t *option="") const;
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual Int_t Read(TObject *obj); virtual Int_t Read(TObject *obj);
virtual TObject *ReadObj(); virtual TObject *ReadObj();
virtual TObject *ReadObjWithBuffer(char *bufferRead); virtual TObject *ReadObjWithBuffer(char *bufferRead);
virtual void *ReadObjectAny(const TClass *expectedClass); virtual void *ReadObjectAny(const TClass *expectedClass);
virtual void ReadBuffer(char *&buffer); virtual void ReadBuffer(char *&buffer);
void ReadKeyBuffer(char *&buffer); void ReadKeyBuffer(char *&buffer);
virtual void ReadFile(); virtual Bool_t ReadFile();
virtual void SetBuffer() { fBuffer = new char[fNbytes];} virtual void SetBuffer() { fBuffer = new char[fNbytes];}
virtual void SetParent(const TObject *parent); virtual void SetParent(const TObject *parent);
void SetMotherDir(TDirectory* dir) { fMotherDir = dir; } void SetMotherDir(TDirectory* dir) { fMotherDir = dir; }
virtual Int_t Sizeof() const; virtual Int_t Sizeof() const;
virtual Int_t WriteFile(Int_t cycle=1, TFile* f = 0); virtual Int_t WriteFile(Int_t cycle=1, TFile* f = 0);
ClassDef(TKey,4); //Header description of a logical record on file. ClassDef(TKey,4); //Header description of a logical record on file.
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TKeySQL.h   TKeySQL.h 
// @(#)root/sql:$Id: TKeySQL.h 26606 2008-12-02 20:36:09Z pcanal $ // @(#)root/sql:$Id: TKeySQL.h 38346 2011-03-09 17:41:58Z pcanal $
// Author: Sergey Linev 20/11/2005 // Author: Sergey Linev 20/11/2005
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 72 skipping to change at line 72
virtual Long64_t GetSeekKey() const { return GetDBObjId() > 0 ? GetDBO bjId() : 0; } virtual Long64_t GetSeekKey() const { return GetDBObjId() > 0 ? GetDBO bjId() : 0; }
virtual Long64_t GetSeekPdir() const { return GetDBDirId() > 0 ? GetDBD irId() : 0; } virtual Long64_t GetSeekPdir() const { return GetDBDirId() > 0 ? GetDBD irId() : 0; }
virtual void Keep() {} virtual void Keep() {}
virtual Int_t Read(TObject* obj); virtual Int_t Read(TObject* obj);
virtual TObject *ReadObj(); virtual TObject *ReadObj();
virtual TObject *ReadObjWithBuffer(char *bufferRead); virtual TObject *ReadObjWithBuffer(char *bufferRead);
virtual void *ReadObjectAny(const TClass *expectedClass); virtual void *ReadObjectAny(const TClass *expectedClass);
virtual void ReadBuffer(char *&) {} virtual void ReadBuffer(char *&) {}
virtual void ReadFile() {} virtual Bool_t ReadFile() { return kTRUE; }
virtual void SetBuffer() { fBuffer = 0; } virtual void SetBuffer() { fBuffer = 0; }
virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; } virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; }
ClassDef(TKeySQL,1) // a special TKey for SQL data base ClassDef(TKeySQL,1) // a special TKey for SQL data base
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TKeyXML.h   TKeyXML.h 
// @(#)root/xml:$Id: TKeyXML.h 26606 2008-12-02 20:36:09Z pcanal $ // @(#)root/xml:$Id: TKeyXML.h 38346 2011-03-09 17:41:58Z pcanal $
// Author: Sergey Linev 10.05.2004 // Author: Sergey Linev 10.05.2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 57 skipping to change at line 57
virtual void Keep() {} virtual void Keep() {}
//virtual void ls(Option_t* ="") const; //virtual void ls(Option_t* ="") const;
//virtual void Print(Option_t* ="") const {} //virtual void Print(Option_t* ="") const {}
virtual Int_t Read(TObject* tobj); virtual Int_t Read(TObject* tobj);
virtual TObject *ReadObj(); virtual TObject *ReadObj();
virtual TObject *ReadObjWithBuffer(char *bufferRead); virtual TObject *ReadObjWithBuffer(char *bufferRead);
virtual void *ReadObjectAny(const TClass *expectedClass); virtual void *ReadObjectAny(const TClass *expectedClass);
virtual void ReadBuffer(char *&) {} virtual void ReadBuffer(char *&) {}
virtual void ReadFile() {} virtual Bool_t ReadFile() { return kTRUE; }
virtual void SetBuffer() { fBuffer = 0; } virtual void SetBuffer() { fBuffer = 0; }
virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; } virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; }
// TKeyXML specific methods // TKeyXML specific methods
XMLNodePointer_t KeyNode() const { return fKeyNode; } XMLNodePointer_t KeyNode() const { return fKeyNode; }
Long64_t GetKeyId() const { return fKeyId; } Long64_t GetKeyId() const { return fKeyId; }
Bool_t IsSubdir() const { return fSubdir; } Bool_t IsSubdir() const { return fSubdir; }
void SetSubir() { fSubdir = kTRUE; } void SetSubir() { fSubdir = kTRUE; }
void UpdateObject(TObject* obj); void UpdateObject(TObject* obj);
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TMath.h   TMath.h 
// @(#)root/mathcore:$Id: TMath.h 36792 2010-11-19 16:53:42Z rdm $ // @(#)root/mathcore:$Id: TMath.h 38578 2011-03-23 14:01:53Z moneta $
// Authors: Rene Brun, Anna Kreshuk, Eddy Offermann, Fons Rademakers 29/0 7/95 // Authors: Rene Brun, Anna Kreshuk, Eddy Offermann, Fons Rademakers 29/0 7/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 34 skipping to change at line 34
#ifndef ROOT_Rtypes #ifndef ROOT_Rtypes
#include "Rtypes.h" #include "Rtypes.h"
#endif #endif
#ifndef ROOT_TMathBase #ifndef ROOT_TMathBase
#include "TMathBase.h" #include "TMathBase.h"
#endif #endif
#include "TError.h" #include "TError.h"
#include <algorithm> #include <algorithm>
#include <limits>
namespace TMath { namespace TMath {
/* ************************* */ /* ************************* */
/* * Fundamental constants * */ /* * Fundamental constants * */
/* ************************* */ /* ************************* */
inline Double_t Pi() { return 3.14159265358979323846; } inline Double_t Pi() { return 3.14159265358979323846; }
inline Double_t TwoPi() { return 2.0 * Pi(); } inline Double_t TwoPi() { return 2.0 * Pi(); }
inline Double_t PiOver2() { return Pi() / 2.0; } inline Double_t PiOver2() { return Pi() / 2.0; }
skipping to change at line 167 skipping to change at line 168
Double_t Factorial(Int_t i); Double_t Factorial(Int_t i);
inline Double_t Power(Double_t x, Double_t y); inline Double_t Power(Double_t x, Double_t y);
inline Double_t Log(Double_t x); inline Double_t Log(Double_t x);
Double_t Log2(Double_t x); Double_t Log2(Double_t x);
inline Double_t Log10(Double_t x); inline Double_t Log10(Double_t x);
Int_t Nint(Float_t x); Int_t Nint(Float_t x);
Int_t Nint(Double_t x); Int_t Nint(Double_t x);
inline Int_t Finite(Double_t x); inline Int_t Finite(Double_t x);
inline Int_t IsNaN(Double_t x); inline Int_t IsNaN(Double_t x);
inline Double_t QuietNaN();
inline Double_t SignalingNaN();
inline Double_t Infinity();
template <typename T>
struct Limits {
inline static T Min();
inline static T Max();
inline static T Epsilon();
};
// Some integer math // Some integer math
Long_t Hypot(Long_t x, Long_t y); // sqrt(px*px + py*py) Long_t Hypot(Long_t x, Long_t y); // sqrt(px*px + py*py)
// Comparing floating points // Comparing floating points
inline Bool_t AreEqualAbs(Double_t af, Double_t bf, Double_t epsilon) { inline Bool_t AreEqualAbs(Double_t af, Double_t bf, Double_t epsilon) {
//return kTRUE if absolute difference between af and bf is less than epsilon //return kTRUE if absolute difference between af and bf is less than epsilon
return TMath::Abs(af-bf) < epsilon; return TMath::Abs(af-bf) < epsilon;
} }
inline Bool_t AreEqualRel(Double_t af, Double_t bf, Double_t relPrec) { inline Bool_t AreEqualRel(Double_t af, Double_t bf, Double_t relPrec) {
//return kTRUE if relative difference between af and bf is less than relPrec //return kTRUE if relative difference between af and bf is less than relPrec
skipping to change at line 492 skipping to change at line 504
// from math.h // from math.h
{ return isnan(x); } { return isnan(x); }
#else #else
// from cmath // from cmath
{ return std::isnan(x); } { return std::isnan(x); }
#endif #endif
#else #else
{ return isnan(x); } { return isnan(x); }
#endif #endif
//--------wrapper to numeric_limits
//_________________________________________________________________________
___
inline Double_t TMath::QuietNaN() {
// returns a quiet NaN as defined by IEEE 754
// see http://en.wikipedia.org/wiki/NaN#Quiet_NaN
return std::numeric_limits<Double_t>::quiet_NaN();
}
//_________________________________________________________________________
___
inline Double_t TMath::SignalingNaN() {
// returns a signaling NaN as defined by IEEE 754
// see http://en.wikipedia.org/wiki/NaN#Signaling_NaN
return std::numeric_limits<Double_t>::signaling_NaN();
}
inline Double_t TMath::Infinity() {
// returns an infinity as defined by the IEEE standard
return std::numeric_limits<Double_t>::infinity();
}
template<typename T>
inline T TMath::Limits<T>::Min() {
// returns maximum representation for type T
return (std::numeric_limits<T>::min)(); //N.B. use this signature to
avoid class with macro min() on Windows
}
template<typename T>
inline T TMath::Limits<T>::Max() {
// returns minimum double representation
return (std::numeric_limits<T>::max)(); //N.B. use this signature to av
oid class with macro max() on Windows
}
template<typename T>
inline T TMath::Limits<T>::Epsilon() {
// returns minimum double representation
return std::numeric_limits<T>::epsilon();
}
//-------- Advanced ------------- //-------- Advanced -------------
template <typename T> inline T TMath::NormCross(const T v1[3],const T v2[3] ,T out[3]) template <typename T> inline T TMath::NormCross(const T v1[3],const T v2[3] ,T out[3])
{ {
// Calculate the Normalized Cross Product of two vectors // Calculate the Normalized Cross Product of two vectors
return Normalize(Cross(v1,v2,out)); return Normalize(Cross(v1,v2,out));
} }
template <typename T> template <typename T>
T TMath::MinElement(Long64_t n, const T *a) { T TMath::MinElement(Long64_t n, const T *a) {
 End of changes. 4 change blocks. 
1 lines changed or deleted 55 lines changed or added


 TMatrixDLazy.h   TMatrixDLazy.h 
// @(#)root/matrix:$Id: TMatrixDLazy.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/matrix:$Id: TMatrixDLazy.h 38487 2011-03-17 17:00:01Z pcanal $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TMatrixDLazy #ifndef ROOT_TMatrixDLazy
#define ROOT_TMatrixDLazy #define ROOT_TMatrixDLazy
skipping to change at line 29 skipping to change at line 29
// TMatrixTSymLazy <Double_t> // // TMatrixTSymLazy <Double_t> //
// THaarMatrixT <Double_t> // // THaarMatrixT <Double_t> //
// THilbertMatrixT <Double_t> // // THilbertMatrixT <Double_t> //
// THilbertMatrixTSym<Double_t> // // THilbertMatrixTSym<Double_t> //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TMatrixTLazy #ifndef ROOT_TMatrixTLazy
#include "TMatrixTLazy.h" #include "TMatrixTLazy.h"
#endif #endif
#ifndef ROOT_TMatrixDfwd
#include "TMatrixDfwd.h"
#endif
#ifndef ROOT_TMatrixDSymfwd
#include "TMatrixDSymfwd.h"
#endif
typedef TMatrixTLazy <Double_t> TMatrixDLazy; typedef TMatrixTLazy <Double_t> TMatrixDLazy;
typedef TMatrixTSymLazy <Double_t> TMatrixDSymLazy; typedef TMatrixTSymLazy <Double_t> TMatrixDSymLazy;
typedef THaarMatrixT <Double_t> THaarMatrixD; typedef THaarMatrixT <Double_t> THaarMatrixD;
typedef THilbertMatrixT <Double_t> THilbertMatrixD; typedef THilbertMatrixT <Double_t> THilbertMatrixD;
typedef THilbertMatrixTSym<Double_t> THilbertMatrixDSym; typedef THilbertMatrixTSym<Double_t> THilbertMatrixDSym;
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 7 lines changed or added


 TMatrixFBase.h   TMatrixFBase.h 
// @(#)root/matrix:$Id: TMatrixFBase.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/matrix:$Id: TMatrixFBase.h 38486 2011-03-17 16:39:06Z pcanal $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TMatrixFBasefwd #ifndef ROOT_TMatrixFBase
#define ROOT_TMatrixFBasefwd #define ROOT_TMatrixFBase
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TMatrixFBase // // TMatrixFBase //
// // // //
// Instantation of TMatrixTBase<Float_t> // // Instantation of TMatrixTBase<Float_t> //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TMatrixTBase #ifndef ROOT_TMatrixTBase
 End of changes. 2 change blocks. 
3 lines changed or deleted 3 lines changed or added


 TMatrixFLazy.h   TMatrixFLazy.h 
// @(#)root/matrix:$Id: TMatrixFLazy.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/matrix:$Id: TMatrixFLazy.h 38487 2011-03-17 17:00:01Z pcanal $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TMatrixFLazy #ifndef ROOT_TMatrixFLazy
#define ROOT_TMatrixFLazy #define ROOT_TMatrixFLazy
skipping to change at line 29 skipping to change at line 29
// TMatrixTSymLazy <Float_t> // // TMatrixTSymLazy <Float_t> //
// THaarMatrixT <Float_t> // // THaarMatrixT <Float_t> //
// THilbertMatrixT <Float_t> // // THilbertMatrixT <Float_t> //
// THilbertMatrixTSym<Float_t> // // THilbertMatrixTSym<Float_t> //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TMatrixTLazy #ifndef ROOT_TMatrixTLazy
#include "TMatrixTLazy.h" #include "TMatrixTLazy.h"
#endif #endif
#ifndef ROOT_TMatrixFfwd
#include "TMatrixFfwd.h"
#endif
#ifndef ROOT_TMatrixFSymfwd
#include "TMatrixFSymfwd.h"
#endif
typedef TMatrixTLazy <Float_t> TMatrixFLazy; typedef TMatrixTLazy <Float_t> TMatrixFLazy;
typedef TMatrixTSymLazy <Float_t> TMatrixFSymLazy; typedef TMatrixTSymLazy <Float_t> TMatrixFSymLazy;
typedef THaarMatrixT <Float_t> THaarMatrixF; typedef THaarMatrixT <Float_t> THaarMatrixF;
typedef THilbertMatrixT <Float_t> THilbertMatrixF; typedef THilbertMatrixT <Float_t> THilbertMatrixF;
typedef THilbertMatrixTSym<Float_t> THilbertMatrixFSym; typedef THilbertMatrixTSym<Float_t> THilbertMatrixFSym;
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 7 lines changed or added


 TObject.h   TObject.h 
// @(#)root/base:$Id: TObject.h 34221 2010-06-30 10:23:33Z rdm $ // @(#)root/base:$Id: TObject.h 38832 2011-04-13 17:54:49Z rdm $
// Author: Rene Brun 26/12/94 // Author: Rene Brun 26/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 202 skipping to change at line 202
#endif #endif
; ;
virtual void Fatal(const char *method, const char *msgfmt, ...) cons t virtual void Fatal(const char *method, const char *msgfmt, ...) cons t
#if defined(__GNUC__) && !defined(__CINT__) #if defined(__GNUC__) && !defined(__CINT__)
__attribute__((format(printf, 3, 4))) /* 1 is the this pointer */ __attribute__((format(printf, 3, 4))) /* 1 is the this pointer */
#endif #endif
; ;
void AbstractMethod(const char *method) const; void AbstractMethod(const char *method) const;
void MayNotUse(const char *method) const; void MayNotUse(const char *method) const;
void Obsolete(const char *method, const char *asOfVers, const char * removedFromVers) const;
//---- static functions //---- static functions
static Long_t GetDtorOnly(); static Long_t GetDtorOnly();
static void SetDtorOnly(void *obj); static void SetDtorOnly(void *obj);
static Bool_t GetObjectStat(); static Bool_t GetObjectStat();
static void SetObjectStat(Bool_t stat); static void SetObjectStat(Bool_t stat);
ClassDef(TObject,1) //Basic ROOT object ClassDef(TObject,1) //Basic ROOT object
}; };
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TPacketizerAdaptive.h   TPacketizerAdaptive.h 
// @(#)root/proofplayer:$Id: TPacketizerAdaptive.h 35196 2010-09-08 11:44:3 4Z ganis $ // @(#)root/proofplayer:$Id: TPacketizerAdaptive.h 38810 2011-04-12 16:22:5 9Z ganis $
// Author: Jan Iwaszkiewicz 11/12/06 // Author: Jan Iwaszkiewicz 11/12/06
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 84 skipping to change at line 84
Long_t fMaxSlaveCnt; // maximum number of workers per fil enode (Long_t to avoid Long_t fMaxSlaveCnt; // maximum number of workers per fil enode (Long_t to avoid
// warnings from backward compatibil ity support) // warnings from backward compatibil ity support)
Int_t fPacketAsAFraction; // used to calculate the packet size Int_t fPacketAsAFraction; // used to calculate the packet size
// fPacketSize = fTotalEntries / (fP acketAsAFraction * nslaves) // fPacketSize = fTotalEntries / (fP acketAsAFraction * nslaves)
// fPacketAsAFraction can be interpr eted as follows: // fPacketAsAFraction can be interpr eted as follows:
// assuming all slaves have equal pr ocessing rate, packet size // assuming all slaves have equal pr ocessing rate, packet size
// is (#events processed by 1 slave) / fPacketSizeAsAFraction. // is (#events processed by 1 slave) / fPacketSizeAsAFraction.
// It can be set with PROOF_PacketAs AFraction in input list. // It can be set with PROOF_PacketAs AFraction in input list.
Int_t fStrategy; // 0 means the classic and 1 (defaul t) - the adaptive strategy Int_t fStrategy; // 0 means the classic and 1 (defaul t) - the adaptive strategy
Int_t fTryReassign; // Controls attempts to reassign pac kets (0 == no reassignment)
TPacketizerAdaptive(); TPacketizerAdaptive();
TPacketizerAdaptive(const TPacketizerAdaptive&); // no implementation , will generate TPacketizerAdaptive(const TPacketizerAdaptive&); // no implementation , will generate
void InitStats(); // initialise the st ats void InitStats(); // initialise the st ats
void operator=(const TPacketizerAdaptive&); // error on accident al usage void operator=(const TPacketizerAdaptive&); // error on accident al usage
TFileNode *NextNode(); TFileNode *NextNode();
void RemoveUnAllocNode(TFileNode *); void RemoveUnAllocNode(TFileNode *);
TFileNode *NextActiveNode(); TFileNode *NextActiveNode();
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TPacketizerMulti.h   TPacketizerMulti.h 
// $Id: TPacketizerMulti.h 32204 2010-02-03 19:17:40Z ganis $ // $Id: TPacketizerMulti.h 38810 2011-04-12 16:22:59Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TPacketizerMulti #ifndef ROOT_TPacketizerMulti
#define ROOT_TPacketizerMulti #define ROOT_TPacketizerMulti
skipping to change at line 65 skipping to change at line 65
TList *input, TProofProgressStatus *st); TList *input, TProofProgressStatus *st);
virtual ~TPacketizerMulti(); virtual ~TPacketizerMulti();
TDSetElement *GetNextPacket(TSlave *wrk, TMessage *r); TDSetElement *GetNextPacket(TSlave *wrk, TMessage *r);
Int_t GetEstEntriesProcessed(Float_t f, Long64_t &ent, Long64_t &byte s, Long64_t &calls) Int_t GetEstEntriesProcessed(Float_t f, Long64_t &ent, Long64_t &byte s, Long64_t &calls)
{ if (fCurrent) return fCurrent->GetEstEntriesProcessed (f,ent,bytes,calls); { if (fCurrent) return fCurrent->GetEstEntriesProcessed (f,ent,bytes,calls);
return 1; } return 1; }
Float_t GetCurrentRate(Bool_t &all) { all = kTRUE; Float_t GetCurrentRate(Bool_t &all) { all = kTRUE;
return (fCurrent? fCurrent->GetCu rrentRate(all) : 0.); } return (fCurrent? fCurrent->GetCu rrentRate(all) : 0.); }
void StopProcess(Bool_t abort) { if (fCurrent) fCurrent->StopProcess void StopProcess(Bool_t abort, Bool_t stoptimer = kFALSE) {
(abort); if (fCurrent) fCurrent->StopProcess
TVirtualPacketizer::StopProcess(abo (abort, stoptimer);
rt); } TVirtualPacketizer::StopProcess(abo
rt, stoptimer); }
void MarkBad(TSlave *wrk, TProofProgressStatus *st, TList **missing) void MarkBad(TSlave *wrk, TProofProgressStatus *st, TList **missing)
{ if (fCurrent) fCurrent->MarkBad(wrk, st, missing); re turn; } { if (fCurrent) fCurrent->MarkBad(wrk, st, missing); re turn; }
Int_t AddProcessed(TSlave *wrk, TProofProgressStatus *st, Double_t la t, TList **missing) Int_t AddProcessed(TSlave *wrk, TProofProgressStatus *st, Double_t la t, TList **missing)
{ if (fCurrent) return fCurrent->AddProcessed(wrk, st, lat, missing); { if (fCurrent) return fCurrent->AddProcessed(wrk, st, lat, missing);
return -1; } return -1; }
Int_t GetActiveWorkers() { if (fCurrent) return fCurrent->GetActiveWo rkers(); return 0; } Int_t GetActiveWorkers() { if (fCurrent) return fCurrent->GetActiveWo rkers(); return 0; }
ClassDef(TPacketizerMulti,0) //Generate work packets for parallel proce ssing ClassDef(TPacketizerMulti,0) //Generate work packets for parallel proce ssing
}; };
 End of changes. 2 change blocks. 
5 lines changed or deleted 6 lines changed or added


 TParameter.h   TParameter.h 
// @(#)root/base:$Id: TParameter.h 20877 2007-11-19 11:17:07Z rdm $ // @(#)root/base:$Id: TParameter.h 38395 2011-03-12 12:29:40Z rdm $
// Author: Maarten Ballintijn 21/06/2004 // Author: Maarten Ballintijn 21/06/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 23 skipping to change at line 23
#define ROOT_TParameter #define ROOT_TParameter
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TParameter<AParamType> // // TParameter<AParamType> //
// // // //
// Named parameter, streamable and storable. // // Named parameter, streamable and storable. //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_Riostream
#include "Riostream.h"
#endif
#ifndef ROOT_TClass
#include "TClass.h"
#endif
#ifndef ROOT_TObject #ifndef ROOT_TObject
#include "TObject.h" #include "TObject.h"
#endif #endif
#ifndef ROOT_TCollection
#include "TCollection.h"
#endif
#ifndef ROOT_TString #ifndef ROOT_TString
#include "TString.h" #include "TString.h"
#endif #endif
#ifndef ROOT_TROOT
#include "TROOT.h"
#endif
template <class AParamType> template <class AParamType>
class TParameter : public TObject { class TParameter : public TObject {
public:
enum EStatusBits { kMultiply = BIT(16) }; // Use multiplication while me
rging
private: private:
TString fName; TString fName;
AParamType fVal; AParamType fVal;
public: public:
TParameter() { /* leave fVal uninitialized */ } TParameter() { /* leave fVal uninitialized */ }
TParameter(const char *name, const AParamType &val) TParameter(const char *name, const AParamType &val)
: fName(name), fVal(val) { } : fName(name), fVal(val) { ResetBit(kMultiply); }
TParameter(const char *name, const AParamType &val, char mergemode)
: fName(name), fVal(val) { SetMergeMode(mergemode); }
~TParameter() { } ~TParameter() { }
const char *GetName() const { return fName; } const char *GetName() const { return fName; }
const AParamType &GetVal() const { return fVal; } const AParamType &GetVal() const { return fVal; }
void SetVal(const AParamType &val) { fVal = val; } void SetVal(const AParamType &val) { fVal = val; }
void SetMergeMode(char mergemode = '+') { ResetBit(kMultipl
y);
if (mergemode ==
'*') SetBit(kMultiply); }
virtual void ls(Option_t *) const {
// Print this parameter content
TROOT::IndentLevel();
cout << "OBJ: " << IsA()->GetName() << "\t" << fName << " = " << fVal
<< endl;
}
virtual void Print(Option_t *) const {
// Print this parameter content
TROOT::IndentLevel();
cout << IsA()->GetName() << "\t" << fName << " = " << fVal << endl;
}
virtual Int_t Merge(TCollection *in);
ClassDef(TParameter,1) //Named templated parameter type ClassDef(TParameter,2) //Named templated parameter type
}; };
template <class AParamType>
inline Int_t TParameter<AParamType>::Merge(TCollection *in) {
// Merge objects in the list.
// Returns the number of objects that were in the list.
TIter nxo(in);
Int_t n = 0;
while (TObject *o = nxo()) {
TParameter<AParamType> *c = dynamic_cast<TParameter<AParamType> *>(o)
;
if (c) {
if (TestBit(kMultiply))
fVal *= c->GetVal();
else
fVal += c->GetVal();
n++;
}
}
return n;
}
// Specialization of Merge for Bool_t
template <>
inline Int_t TParameter<Bool_t>::Merge(TCollection *in)
{
// Merge bool objects in the list.
// Returns the number of objects that were in the list.
TIter nxo(in);
Int_t n = 0;
while (TObject *o = nxo()) {
TParameter<Bool_t> *c = dynamic_cast<TParameter<Bool_t> *>(o);
if (c) {
if (TestBit(TParameter::kMultiply))
fVal &= (Bool_t) c->GetVal();
else
fVal |= (Bool_t) c->GetVal();
n++;
}
}
return n;
}
#endif #endif
 End of changes. 9 change blocks. 
3 lines changed or deleted 87 lines changed or added


 TPerfStats.h   TPerfStats.h 
// @(#)root/proofplayer:$Id: TPerfStats.h 30965 2009-11-04 11:15:25Z ganis $ // @(#)root/proofplayer:$Id: TPerfStats.h 38709 2011-04-01 16:27:30Z ganis $
// Author: Kristjan Gulbrandsen 11/05/04 // Author: Kristjan Gulbrandsen 11/05/04
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 27 skipping to change at line 27
// TPerfStats // // TPerfStats //
// // // //
// Provides the interface for the PROOF internal performance measurment // // Provides the interface for the PROOF internal performance measurment //
// and event tracing. // // and event tracing. //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TObject #ifndef ROOT_TObject
#include "TObject.h" #include "TObject.h"
#endif #endif
#ifndef ROOT_TObjArray
#include "TObjArray.h"
#endif
#ifndef ROOT_TTimeStamp #ifndef ROOT_TTimeStamp
#include "TTimeStamp.h" #include "TTimeStamp.h"
#endif #endif
#ifndef ROOT_TString #ifndef ROOT_TString
#include "TString.h" #include "TString.h"
#endif #endif
#ifndef ROOT_TVirtualPerfStats #ifndef ROOT_TVirtualPerfStats
#include "TVirtualPerfStats.h" #include "TVirtualPerfStats.h"
#endif #endif
class TTree; class TTree;
class TH1D; class TH1D;
class TH2D; class TH2D;
class TList; class TList;
class TVirtualMonitoringWriter;
class TPerfEvent : public TObject { class TPerfEvent : public TObject {
public: public:
TString fEvtNode; // node on which the event was generated TString fEvtNode; // node on which the event was generated
TTimeStamp fTimeStamp; // time offset from start of r un TTimeStamp fTimeStamp; // time offset from start of r un
TVirtualPerfStats::EEventType fType; TVirtualPerfStats::EEventType fType;
TString fSlaveName; TString fSlaveName;
TString fNodeName; TString fNodeName;
TString fFileName; TString fFileName;
skipping to change at line 98 skipping to change at line 100
Long64_t fTotEvents; //!total number of events processed Long64_t fTotEvents; //!total number of events processed
Long64_t fNumEvents; //!total number of events to be processed Long64_t fNumEvents; //!total number of events to be processed
Int_t fSlaves; //!number of active slaves Int_t fSlaves; //!number of active slaves
Bool_t fDoHist; //!Fill histos Bool_t fDoHist; //!Fill histos
Bool_t fDoTrace; //!Trace details in master Bool_t fDoTrace; //!Trace details in master
Bool_t fDoTraceRate; //!Trace processing rate in master Bool_t fDoTraceRate; //!Trace processing rate in master
Bool_t fDoSlaveTrace; //!Full tracing in workers Bool_t fDoSlaveTrace; //!Full tracing in workers
Bool_t fDoQuota; //!Save stats on SQL server for quota mana gement Bool_t fDoQuota; //!Save stats on SQL server for quota mana gement
TVirtualMonitoringWriter *fMonitoringWriter; //!Monitoring engine Bool_t fMonitorPerPacket; //!Whether to send the full entry per
each packet
Int_t fMonitorInfo; //!Controls what information to monitor
TObjArray fMonitoringWriters; //!Monitoring engines
TString fDataSet; //!Dataset string
Int_t fDataSetLen; //!Maximum size of the dataset string fDat
aSet
Int_t fDataSetSize; //!# of files in the dataset
TList *fOutput; //!Saved pointer to the output list
static Long_t fgVirtMemMax; //! Max virtual memory used by this proce
ss
static Long_t fgResMemMax; //! Max resident memory used by this proc
ess
TPerfStats(TList *input, TList *output); TPerfStats(TList *input, TList *output);
void WriteQueryLog(); void WriteQueryLog();
public: public:
virtual ~TPerfStats() {} virtual ~TPerfStats() {}
void SimpleEvent(EEventType type); void SimpleEvent(EEventType type);
void PacketEvent(const char *slave, const char *slavename, const char *f ilename, void PacketEvent(const char *slave, const char *slavename, const char *f ilename,
Long64_t eventsprocessed, Double_t latency, Long64_t eventsprocessed, Double_t latency,
Double_t proctime, Double_t cputime, Long64_t bytesRead ); Double_t proctime, Double_t cputime, Long64_t bytesRead );
void FileEvent(const char *slave, const char *slavename, const char *nod ename, const char *filename, void FileEvent(const char *slave, const char *slavename, const char *nod ename, const char *filename,
Bool_t isStart); Bool_t isStart);
void FileOpenEvent(TFile *file, const char *filename, Double_t start); void FileOpenEvent(TFile *file, const char *filename, Double_t start);
void FileReadEvent(TFile *file, Int_t len, Double_t start); void FileReadEvent(TFile *file, Int_t len, Double_t start);
void FileUnzipEvent(TFile *file, Long64_t pos, Double_t start, Int_t com plen, Int_t objlen);
void RateEvent(Double_t proctime, Double_t deltatime, void RateEvent(Double_t proctime, Double_t deltatime,
Long64_t eventsprocessed, Long64_t bytesRead); Long64_t eventsprocessed, Long64_t bytesRead);
void SetBytesRead(Long64_t num); void SetBytesRead(Long64_t num);
Long64_t GetBytesRead() const; Long64_t GetBytesRead() const;
void SetNumEvents(Long64_t num) { fNumEvents = num; } void SetNumEvents(Long64_t num) { fNumEvents = num; }
Long64_t GetNumEvents() const { return fNumEvents; } Long64_t GetNumEvents() const { return fNumEvents; }
static void Start(TList *input, TList *output); static void Start(TList *input, TList *output);
static void Stop(); static void Stop();
static void Setup(TList *input); static void Setup(TList *input);
static void SetMemValues();
ClassDef(TPerfStats,0) // Class for collecting PROOF statistics ClassDef(TPerfStats,0) // Class for collecting PROOF statistics
}; };
#endif #endif
 End of changes. 6 change blocks. 
3 lines changed or deleted 22 lines changed or added


 TProof.h   TProof.h 
// @(#)root/proof:$Id: TProof.h 37396 2010-12-08 13:12:00Z rdm $ // @(#)root/proof:$Id: TProof.h 38819 2011-04-13 10:17:21Z ganis $
// Author: Fons Rademakers 13/02/97 // Author: Fons Rademakers 13/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 53 skipping to change at line 53
#endif #endif
#ifndef ROOT_TSysEvtHandler #ifndef ROOT_TSysEvtHandler
#include "TSysEvtHandler.h" #include "TSysEvtHandler.h"
#endif #endif
#ifndef ROOT_TThread #ifndef ROOT_TThread
#include "TThread.h" #include "TThread.h"
#endif #endif
#ifndef ROOT_TUrl #ifndef ROOT_TUrl
#include "TUrl.h" #include "TUrl.h"
#endif #endif
#ifndef ROOT_TProofOutputList
#include "TProofOutputList.h"
#endif
#include <map> #include <map>
#ifdef R__GLOBALSTL #ifdef R__GLOBALSTL
namespace std { using ::map; } namespace std { using ::map; }
#endif #endif
#define CANNOTUSE(x) Info(x,"Not manager: cannot use this method") #define CANNOTUSE(x) Info(x,"Not manager: cannot use this method")
class TChain; class TChain;
skipping to change at line 127 skipping to change at line 130
// 21 -> 22: Add support for switching from sync to async while running ('C trl-Z' functionality) // 21 -> 22: Add support for switching from sync to async while running ('C trl-Z' functionality)
// 22 -> 23: New dataset features (default tree name; classification per fi leserver) // 22 -> 23: New dataset features (default tree name; classification per fi leserver)
// 23 -> 24: Merging optimization // 23 -> 24: Merging optimization
// 24 -> 25: Handling of 'data' dir; group information // 24 -> 25: Handling of 'data' dir; group information
// 25 -> 26: Use new TProofProgressInfo class // 25 -> 26: Use new TProofProgressInfo class
// 26 -> 27: Use new file for updating the session status // 26 -> 27: Use new file for updating the session status
// 27 -> 28: Support for multi-datasets, fix global pack dirs, fix AskStati stics, // 27 -> 28: Support for multi-datasets, fix global pack dirs, fix AskStati stics,
// package download, dataset caching // package download, dataset caching
// 28 -> 29: Support for config parameters in EnablePackage, idle-timeout // 28 -> 29: Support for config parameters in EnablePackage, idle-timeout
// 29 -> 30: Add information about data dir in TSlaveInfo // 29 -> 30: Add information about data dir in TSlaveInfo
// 30 -> 31: Development cycle 5.29
// 31 -> 32: New log path trasmission
// PROOF magic constants // PROOF magic constants
const Int_t kPROOF_Protocol = 30; // protocol versi on number const Int_t kPROOF_Protocol = 32; // protocol versi on number
const Int_t kPROOF_Port = 1093; // IANA registere d PROOF port const Int_t kPROOF_Port = 1093; // IANA registere d PROOF port
const char* const kPROOF_ConfFile = "proof.conf"; // default config file const char* const kPROOF_ConfFile = "proof.conf"; // default config file
const char* const kPROOF_ConfDir = "/usr/local/root"; // default c onfig dir const char* const kPROOF_ConfDir = "/usr/local/root"; // default c onfig dir
const char* const kPROOF_WorkDir = ".proof"; // default workin g directory const char* const kPROOF_WorkDir = ".proof"; // default workin g directory
const char* const kPROOF_CacheDir = "cache"; // file cache dir , under WorkDir const char* const kPROOF_CacheDir = "cache"; // file cache dir , under WorkDir
const char* const kPROOF_PackDir = "packages"; // package dir, u nder WorkDir const char* const kPROOF_PackDir = "packages"; // package dir, u nder WorkDir
const char* const kPROOF_PackDownloadDir = "downloaded"; // subdir with do wnloaded PARs, under PackDir const char* const kPROOF_PackDownloadDir = "downloaded"; // subdir with do wnloaded PARs, under PackDir
const char* const kPROOF_QueryDir = "queries"; // query dir, und er WorkDir const char* const kPROOF_QueryDir = "queries"; // query dir, und er WorkDir
const char* const kPROOF_DataSetDir = "datasets"; // dataset dir, u nder WorkDir const char* const kPROOF_DataSetDir = "datasets"; // dataset dir, u nder WorkDir
const char* const kPROOF_DataDir = "data"; // dir for produc ed data, under WorkDir const char* const kPROOF_DataDir = "data"; // dir for produc ed data, under WorkDir
const char* const kPROOF_CacheLockFile = "proof-cache-lock-"; // cache lock file const char* const kPROOF_CacheLockFile = "proof-cache-lock-"; // cache lock file
const char* const kPROOF_PackageLockFile = "proof-package-lock-"; // packag e lock file const char* const kPROOF_PackageLockFile = "proof-package-lock-"; // packag e lock file
const char* const kPROOF_QueryLockFile = "proof-query-lock-"; // query lock file const char* const kPROOF_QueryLockFile = "proof-query-lock-"; // query lock file
const char* const kPROOF_TerminateWorker = "+++ terminating +++"; // signal worker termination in MarkBad const char* const kPROOF_TerminateWorker = "+++ terminating +++"; // signal worker termination in MarkBad
const char* const kPROOF_WorkerIdleTO = "+++ idle-timeout +++"; // signa l worker idle timeout in MarkBad const char* const kPROOF_WorkerIdleTO = "+++ idle-timeout +++"; // signa l worker idle timeout in MarkBad
const char* const kPROOF_InputDataFile = "inputdata.root"; // Defaul t input data file name const char* const kPROOF_InputDataFile = "inputdata.root"; // Defaul t input data file name
const char* const kPROOF_MissingFiles = "MissingFiles"; // Missingfile list name
#ifndef R__WIN32 #ifndef R__WIN32
const char* const kCP = "/bin/cp -fp"; const char* const kCP = "/bin/cp -fp";
const char* const kRM = "/bin/rm -rf"; const char* const kRM = "/bin/rm -rf";
const char* const kLS = "/bin/ls -l"; const char* const kLS = "/bin/ls -l";
const char* const kUNTAR = "%s -c %s/%s | (cd %s; tar xf -)"; const char* const kUNTAR = "%s -c %s/%s | (cd %s; tar xf -)";
const char* const kUNTAR2 = "%s -c %s | (cd %s; tar xf -)"; const char* const kUNTAR2 = "%s -c %s | (cd %s; tar xf -)";
const char* const kUNTAR3 = "%s -c %s | (tar xf -)"; const char* const kUNTAR3 = "%s -c %s | (tar xf -)";
const char* const kGUNZIP = "gunzip"; const char* const kGUNZIP = "gunzip";
#else #else
skipping to change at line 536 skipping to change at line 542
Bool_t fEndMaster; //true for a master in direct contact only with workers Bool_t fEndMaster; //true for a master in direct contact only with workers
TString fPackageDir; //package directory (used on client) TString fPackageDir; //package directory (used on client)
THashList *fGlobalPackageDirList;//list of directories containing g lobal packages libs THashList *fGlobalPackageDirList;//list of directories containing g lobal packages libs
TProofLockPath *fPackageLock; //package lock TProofLockPath *fPackageLock; //package lock
TList *fEnabledPackagesOnClient; //list of packages enabled on client TList *fEnabledPackagesOnClient; //list of packages enabled on client
TList *fInputData; //Input data objects sent over via fil e TList *fInputData; //Input data objects sent over via fil e
TString fInputDataFile; //File with input data objects TString fInputDataFile; //File with input data objects
TProofOutputList fOutputList; // TList implementation filtering ls(.
..) and Print(...)
PrintProgress_t fPrintProgress; //Function function to display progres s info in batch mode PrintProgress_t fPrintProgress; //Function function to display progres s info in batch mode
TVirtualMutex *fCloseMutex; // Avoid crashes in MarkBad or alike w hile closing TVirtualMutex *fCloseMutex; // Avoid crashes in MarkBad or alike w hile closing
TList *fLoadedMacros; // List of loaded macros (just file na mes) TList *fLoadedMacros; // List of loaded macros (just file na mes)
static TList *fgProofEnvList; // List of TNameds defining environmen t static TList *fgProofEnvList; // List of TNameds defining environmen t
// variables to pass to proofserv // variables to pass to proofserv
Bool_t fMergersSet; // Indicates, if the following variabl es have been initialized properly Bool_t fMergersSet; // Indicates, if the following variabl es have been initialized properly
Int_t fMergersCount; Int_t fMergersCount;
skipping to change at line 641 skipping to change at line 649
Int_t BroadcastRaw(const void *buffer, Int_t length, ESlaves list = k Active); Int_t BroadcastRaw(const void *buffer, Int_t length, ESlaves list = k Active);
Int_t Collect(const TSlave *sl, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE); Int_t Collect(const TSlave *sl, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE);
Int_t Collect(TMonitor *mon, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE); Int_t Collect(TMonitor *mon, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE);
Int_t CollectInputFrom(TSocket *s, Int_t endtype = -1, Bool_t deacton fail = kFALSE); Int_t CollectInputFrom(TSocket *s, Int_t endtype = -1, Bool_t deacton fail = kFALSE);
Int_t HandleInputMessage(TSlave *wrk, TMessage *m, Bool_t deactonfail = kFALSE); Int_t HandleInputMessage(TSlave *wrk, TMessage *m, Bool_t deactonfail = kFALSE);
void HandleSubmerger(TMessage *mess, TSlave *sl); void HandleSubmerger(TMessage *mess, TSlave *sl);
void SetMonitor(TMonitor *mon = 0, Bool_t on = kTRUE); void SetMonitor(TMonitor *mon = 0, Bool_t on = kTRUE);
void ReleaseMonitor(TMonitor *mon); void ReleaseMonitor(TMonitor *mon);
void FindUniqueSlaves(); virtual void FindUniqueSlaves();
TSlave *FindSlave(TSocket *s) const; TSlave *FindSlave(TSocket *s) const;
TList *GetListOfSlaves() const { return fSlaves; } TList *GetListOfSlaves() const { return fSlaves; }
TList *GetListOfInactiveSlaves() const { return fInactiveSlaves; } TList *GetListOfInactiveSlaves() const { return fInactiveSlaves; }
TList *GetListOfUniqueSlaves() const { return fUniqueSlaves; } TList *GetListOfUniqueSlaves() const { return fUniqueSlaves; }
TList *GetListOfBadSlaves() const { return fBadSlaves; } TList *GetListOfBadSlaves() const { return fBadSlaves; }
Int_t GetNumberOfSlaves() const; Int_t GetNumberOfSlaves() const;
Int_t GetNumberOfActiveSlaves() const; Int_t GetNumberOfActiveSlaves() const;
Int_t GetNumberOfInactiveSlaves() const; Int_t GetNumberOfInactiveSlaves() const;
Int_t GetNumberOfUniqueSlaves() const; Int_t GetNumberOfUniqueSlaves() const;
Int_t GetNumberOfBadSlaves() const; Int_t GetNumberOfBadSlaves() const;
skipping to change at line 726 skipping to change at line 734
Int_t Collect(ESlaves list = kActive, Long_t timeout = -1, Int_t endt ype = -1, Bool_t deactonfail = kFALSE); Int_t Collect(ESlaves list = kActive, Long_t timeout = -1, Int_t endt ype = -1, Bool_t deactonfail = kFALSE);
Int_t Collect(TList *slaves, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE); Int_t Collect(TList *slaves, Long_t timeout = -1, Int_t endtype = -1, Bool_t deactonfail = kFALSE);
void SetDSet(TDSet *dset) { fDSet = dset; } void SetDSet(TDSet *dset) { fDSet = dset; }
virtual void ValidateDSet(TDSet *dset); virtual void ValidateDSet(TDSet *dset);
TPluginHandler *GetProgressDialog() const { return fProgressDialog; } TPluginHandler *GetProgressDialog() const { return fProgressDialog; }
Int_t AssertPath(const char *path, Bool_t writable); Int_t AssertPath(const char *path, Bool_t writable);
Int_t GetSandbox(TString &sb, Bool_t assert = kFALSE, const char *rc = 0 );
void PrepareInputDataFile(TString &dataFile); void PrepareInputDataFile(TString &dataFile);
virtual void SendInputDataFile(); virtual void SendInputDataFile();
Int_t SendFile(const char *file, Int_t opt = (kBinary | kForward | kCp | kCpBin), Int_t SendFile(const char *file, Int_t opt = (kBinary | kForward | kCp | kCpBin),
const char *rfile = 0, TSlave *sl = 0); const char *rfile = 0, TSlave *sl = 0);
static void *SlaveStartupThread(void *arg); static void *SlaveStartupThread(void *arg);
static Int_t AssertDataSet(TDSet *dset, TList *input, static Int_t AssertDataSet(TDSet *dset, TList *input,
TDataSetManager *mgr, TString &emsg); TDataSetManager *mgr, TString &emsg);
 End of changes. 8 change blocks. 
3 lines changed or deleted 13 lines changed or added


 TProofLite.h   TProofLite.h 
// @(#)root/proof:$Id: TProofLite.h 33692 2010-06-01 11:15:30Z ganis $ // @(#)root/proof:$Id: TProofLite.h 38348 2011-03-09 19:01:38Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TProofLite #ifndef ROOT_TProofLite
#define ROOT_TProofLite #define ROOT_TProofLite
skipping to change at line 52 skipping to change at line 52
private: private:
Int_t fNWorkers; // Number of workers Int_t fNWorkers; // Number of workers
TString fSandbox; // PROOF sandbox root dir TString fSandbox; // PROOF sandbox root dir
TString fCacheDir; // Directory containing cache of user files TString fCacheDir; // Directory containing cache of user files
TString fQueryDir; // Directory containing query results and status TString fQueryDir; // Directory containing query results and status
TString fDataSetDir; // Directory containing info about known data set s TString fDataSetDir; // Directory containing info about known data set s
TString fSockPath; // UNIX socket path for communication with worker s TString fSockPath; // UNIX socket path for communication with worker s
TServerSocket *fServSock; // Server socket to accept call backs TServerSocket *fServSock; // Server socket to accept call backs
Bool_t fForkStartup; // Startup N-1 workers forking the first worker Bool_t fForkStartup; // Startup N-1 workers forking the first worker
TString fVarExp; // Internal variable to pass drawing options
TString fSelection; // Internal variable to pass drawing options
TProofLockPath *fCacheLock; // Cache dir locker TProofLockPath *fCacheLock; // Cache dir locker
TProofLockPath *fQueryLock; // Query dir locker TProofLockPath *fQueryLock; // Query dir locker
TQueryResultManager *fQMgr; // Query-result manager TQueryResultManager *fQMgr; // Query-result manager
TDataSetManager *fDataSetManager; // Dataset manager TDataSetManager *fDataSetManager; // Dataset manager
static Int_t fgWrksMax; // Max number of workers static Int_t fgWrksMax; // Max number of workers
TProofLite(const TProofLite &); // not implemented TProofLite(const TProofLite &); // not implemented
void operator=(const TProofLite &); // idem void operator=(const TProofLite &); // idem
Int_t CleanupSandbox(); Int_t CleanupSandbox();
Int_t CreateSandbox(); Int_t CreateSandbox();
void FindUniqueSlaves();
void NotifyStartUp(const char *action, Int_t done, Int_t tot); void NotifyStartUp(const char *action, Int_t done, Int_t tot);
Int_t SetProofServEnv(const char *ord); Int_t SetProofServEnv(const char *ord);
Int_t InitDataSetManager(); Int_t InitDataSetManager();
Int_t RegisterDataSets(TList *in, TList *out);
void ResolveKeywords(TString &s, const char *logfile); void ResolveKeywords(TString &s, const char *logfile);
void SendInputDataFile(); void SendInputDataFile();
protected: protected:
TProofLite() : TProof() { } // For derived classes to use TProofLite() : TProof() { } // For derived classes to use
Int_t CreateSymLinks(TList *files); Int_t CreateSymLinks(TList *files);
Int_t Init(const char *masterurl, const char *conffile, Int_t Init(const char *masterurl, const char *conffile,
const char *confdir, Int_t loglevel, const char *confdir, Int_t loglevel,
 End of changes. 4 change blocks. 
1 lines changed or deleted 6 lines changed or added


 TProofMgr.h   TProofMgr.h 
// @(#)root/proof:$Id: TProofMgr.h 30791 2009-10-19 07:07:32Z ganis $ // @(#)root/proof:$Id: TProofMgr.h 38789 2011-04-09 18:03:24Z pcanal $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TProofMgr #ifndef ROOT_TProofMgr
#define ROOT_TProofMgr #define ROOT_TProofMgr
skipping to change at line 77 skipping to change at line 77
fServType(kXProofd), fSessions(0), fUrl(), fIntHand ler(0) { } fServType(kXProofd), fSessions(0), fUrl(), fIntHand ler(0) { }
public: public:
TProofMgr(const char *url, Int_t loglevel = -1, const char *alias = ""); TProofMgr(const char *url, Int_t loglevel = -1, const char *alias = "");
virtual ~TProofMgr(); virtual ~TProofMgr();
virtual Bool_t IsLite() const { return (fServType == kProofLite); } virtual Bool_t IsLite() const { return (fServType == kProofLite); }
virtual Bool_t IsProofd() const { return (fServType == kProofd); } virtual Bool_t IsProofd() const { return (fServType == kProofd); }
virtual Bool_t IsValid() const { return kTRUE; } virtual Bool_t IsValid() const { return kTRUE; }
virtual void SetInvalid() { } virtual void SetInvalid() { }
void Close() { SetInvalid(); }
virtual TProof *AttachSession(Int_t, Bool_t = kFALSE); virtual TProof *AttachSession(Int_t, Bool_t = kFALSE);
virtual TProof *AttachSession(TProofDesc *, Bool_t = kFALSE); virtual TProof *AttachSession(TProofDesc *, Bool_t = kFALSE);
virtual TProof *CreateSession(const char * = 0, const char * = 0, In t_t = -1); virtual TProof *CreateSession(const char * = 0, const char * = 0, In t_t = -1);
virtual void DetachSession(Int_t, Option_t * = ""); virtual void DetachSession(Int_t, Option_t * = "");
virtual void DetachSession(TProof *, Option_t * = ""); virtual void DetachSession(TProof *, Option_t * = "");
virtual void DiscardSession(TProof *p); virtual void DiscardSession(TProof *p);
virtual TProofDesc *GetProofDesc(Int_t id); virtual TProofDesc *GetProofDesc(Int_t id);
virtual TProofDesc *GetProofDesc(TProof *p); virtual TProofDesc *GetProofDesc(TProof *p);
virtual Int_t GetRemoteProtocol() const { return fRemoteProtocol; } virtual Int_t GetRemoteProtocol() const { return fRemoteProtocol; }
virtual TProofLog *GetSessionLogs(Int_t = 0, const char * = 0, const ch virtual TProofLog *GetSessionLogs(Int_t = 0, const char * = 0,
ar * = "-v \"| SvcMsg\"") const char * = "-v \"| SvcMsg\"", Boo
{ return (TProofLog * l_t = kFALSE)
)0; } { return (TProofLog *)0; }
virtual const char *GetUrl() { return fUrl.GetUrl(); } virtual const char *GetUrl() { return fUrl.GetUrl(); }
virtual Bool_t MatchUrl(const char *url); virtual Bool_t MatchUrl(const char *url);
virtual TList *QuerySessions(Option_t *opt = "S"); virtual TList *QuerySessions(Option_t *opt = "S");
virtual TObjString *ReadBuffer(const char *, Long64_t, Int_t) virtual TObjString *ReadBuffer(const char *, Long64_t, Int_t)
{ return (TObjString *)0; } { return (TObjString *)0; }
virtual TObjString *ReadBuffer(const char *, const char *) virtual TObjString *ReadBuffer(const char *, const char *)
{ return (TObjString *)0; } { return (TObjString *)0; }
virtual Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); virtual Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0);
virtual void ShowWorkers(); virtual void ShowWorkers();
virtual Int_t SendMsgToUsers(const char *, const char * = 0); virtual Int_t SendMsgToUsers(const char *, const char * = 0);
 End of changes. 3 change blocks. 
5 lines changed or deleted 6 lines changed or added


 TProofMgrLite.h   TProofMgrLite.h 
// @(#)root/proofx:$Id: TProofMgrLite.h 26823 2008-12-11 09:26:32Z ganis $ // @(#)root/proofx:$Id: TProofMgrLite.h 38580 2011-03-23 15:24:54Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TProofMgrLite #ifndef ROOT_TProofMgrLite
#define ROOT_TProofMgrLite #define ROOT_TProofMgrLite
skipping to change at line 36 skipping to change at line 36
#endif #endif
class TProofMgrLite : public TProofMgr { class TProofMgrLite : public TProofMgr {
public: public:
TProofMgrLite(const char *url, Int_t loglevel = -1, const char *alias = ""); TProofMgrLite(const char *url, Int_t loglevel = -1, const char *alias = "");
virtual ~TProofMgrLite() { } virtual ~TProofMgrLite() { }
TProof *CreateSession(const char * = 0, const char * = 0, Int_t = -1 ); TProof *CreateSession(const char * = 0, const char * = 0, Int_t = -1 );
TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0,
const char *pattern = "-v | SvcMsg"); const char *pattern = "-v | SvcMsg", Bool_t r escan = kFALSE);
TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len);
TObjString *ReadBuffer(const char *file, const char *pattern); TObjString *ReadBuffer(const char *file, const char *pattern);
ClassDef(TProofMgrLite,0) // XrdProofd PROOF manager interface ClassDef(TProofMgrLite,0) // XrdProofd PROOF manager interface
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TProofOutputFile.h   TProofOutputFile.h 
// @(#)root/proof:$Id: TProofOutputFile.h 31830 2009-12-11 08:54:32Z ganis $ // @(#)root/proof:$Id: TProofOutputFile.h 38691 2011-03-31 13:01:24Z ganis $
// Author: Long Tran-Thanh 14/09/07 // Author: Long Tran-Thanh 14/09/07
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 81 skipping to change at line 81
void SetDir(const char* dir) { fDir = dir; } void SetDir(const char* dir) { fDir = dir; }
void SetWorkerOrdinal(const char* ordinal) { fWorkerOrdinal = ordinal; } void SetWorkerOrdinal(const char* ordinal) { fWorkerOrdinal = ordinal; }
void AddFile(TFileMerger *merger, const char *path); void AddFile(TFileMerger *merger, const char *path);
void NotifyError(const char *errmsg); void NotifyError(const char *errmsg);
void Unlink(const char *path); void Unlink(const char *path);
protected: protected:
public: public:
enum EStatusBits { kOutputFileNameSet = BIT(16)};
TProofOutputFile() : fDir(), fRawDir(), fFileName(), fOptionsAnchor(), f OutputFileName(), TProofOutputFile() : fDir(), fRawDir(), fFileName(), fOptionsAnchor(), f OutputFileName(),
fWorkerOrdinal(), fLocalHost(), fIsLocal(kFALSE), f Merged(kFALSE), fWorkerOrdinal(), fLocalHost(), fIsLocal(kFALSE), f Merged(kFALSE),
fRunType(kMerge), fTypeOpt(kRemote), fDataSet(0), f Merger(0) { } fRunType(kMerge), fTypeOpt(kRemote), fDataSet(0), f Merger(0) { }
TProofOutputFile(const char *path, const char *option = "M", const char *dsname = 0); TProofOutputFile(const char *path, const char *option = "M", const char *dsname = 0);
TProofOutputFile(const char *path, ERunType type, UInt_t opt = kRemote, const char *dsname = 0); TProofOutputFile(const char *path, ERunType type, UInt_t opt = kRemote, const char *dsname = 0);
virtual ~TProofOutputFile(); virtual ~TProofOutputFile();
const char *GetDir(Bool_t raw = kFALSE) const { return (raw) ? fRawDir : fDir; } const char *GetDir(Bool_t raw = kFALSE) const { return (raw) ? fRawDir : fDir; }
TFileCollection *GetFileCollection(); TFileCollection *GetFileCollection();
TFileMerger *GetFileMerger(Bool_t local = kFALSE); TFileMerger *GetFileMerger(Bool_t local = kFALSE);
skipping to change at line 110 skipping to change at line 111
Bool_t IsMerged() const { return fMerged; } Bool_t IsMerged() const { return fMerged; }
Bool_t IsRegister() const { return ((fTypeOpt & kRegister) || (fTyp eOpt & kVerify)) ? kTRUE : kFALSE; } Bool_t IsRegister() const { return ((fTypeOpt & kRegister) || (fTyp eOpt & kVerify)) ? kTRUE : kFALSE; }
Int_t AdoptFile(TFile *f); // Adopt a TFile already o pen Int_t AdoptFile(TFile *f); // Adopt a TFile already o pen
TFile* OpenFile(const char *opt); // Open a file with the sp ecified name in fFileName1 TFile* OpenFile(const char *opt); // Open a file with the sp ecified name in fFileName1
Long64_t Merge(TCollection *list); Long64_t Merge(TCollection *list);
void Print(Option_t *option = "") const; void Print(Option_t *option = "") const;
void SetOutputFileName(const char *name); void SetOutputFileName(const char *name);
void ResetFileCollection() { fDataSet = 0; } void ResetFileCollection() { fDataSet = 0; }
static Int_t AssertDir(const char *dirpath);
ClassDef(TProofOutputFile,4) // Wrapper class to steer the merging of fi les produced on workers ClassDef(TProofOutputFile,4) // Wrapper class to steer the merging of fi les produced on workers
}; };
#endif #endif
 End of changes. 3 change blocks. 
1 lines changed or deleted 4 lines changed or added


 TProofProgressStatus.h   TProofProgressStatus.h 
// @(#)root/proof:$Id: TProofProgressStatus.h 30859 2009-10-24 14:53:07Z ga nis $ // @(#)root/proof:$Id: TProofProgressStatus.h 38810 2011-04-12 16:22:59Z ga nis $
// Author: Jan Iwaszkiewicz 08/08/08 // Author: Jan Iwaszkiewicz 08/08/08
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 28 skipping to change at line 28
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TProofProgressStatus // // TProofProgressStatus //
// // // //
// Small class including processing statistics // // Small class including processing statistics //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
class TProofProgressStatus : public TObject { class TProofProgressStatus : public TObject {
public:
enum EStatusBits { kFileNotOpen = BIT(15),
kFileCorrupted = BIT(16)
};
private: private:
Long64_t fLastEntries; // Last chunck Long64_t fLastEntries; // Last chunck
Long64_t fEntries; Long64_t fEntries;
Long64_t fBytesRead; Long64_t fBytesRead;
Long64_t fReadCalls; Long64_t fReadCalls;
Double_t fLearnTime; // the time spent in learning phase Double_t fLearnTime; // the time spent in learning phase
Double_t fLastProcTime; // the wallclock time of the last addition Double_t fLastProcTime; // the wallclock time of the last addition
Double_t fProcTime; // the wallclock time Double_t fProcTime; // the wallclock time
Double_t fCPUTime; Double_t fCPUTime;
Double_t fLastUpdate; // Timestamp of last change Double_t fLastUpdate; // Timestamp of last change
 End of changes. 2 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TProofServ.h   TProofServ.h 
// @(#)root/proof:$Id: TProofServ.h 36592 2010-11-11 10:43:17Z ganis $ // @(#)root/proof:$Id: TProofServ.h 38570 2011-03-23 12:05:17Z ganis $
// Author: Fons Rademakers 16/02/97 // Author: Fons Rademakers 16/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 107 skipping to change at line 107
TString fAdminPath; //admin path for this session TString fAdminPath; //admin path for this session
TProofLockPath *fPackageLock; //package dir locker TProofLockPath *fPackageLock; //package dir locker
TProofLockPath *fCacheLock; //cache dir locker TProofLockPath *fCacheLock; //cache dir locker
TProofLockPath *fQueryLock; //query dir locker TProofLockPath *fQueryLock; //query dir locker
TString fArchivePath; //default archive path TString fArchivePath; //default archive path
TSocket *fSocket; //socket connection to client TSocket *fSocket; //socket connection to client
TProof *fProof; //PROOF talking to slave servers TProof *fProof; //PROOF talking to slave servers
TVirtualProofPlayer *fPlayer; //actual player TVirtualProofPlayer *fPlayer; //actual player
FILE *fLogFile; //log file FILE *fLogFile; //log file
Int_t fLogFileDes; //log file descriptor Int_t fLogFileDes; //log file descriptor
Long64_t fLogFileMaxSize; //max size for log files (enabled if > 0)
TList *fEnabledPackages; //list of enabled packages TList *fEnabledPackages; //list of enabled packages
Int_t fProtocol; //protocol version number Int_t fProtocol; //protocol version number
TString fOrdinal; //slave ordinal number TString fOrdinal; //slave ordinal number
Int_t fGroupId; //slave unique id in the active slave g roup Int_t fGroupId; //slave unique id in the active slave g roup
Int_t fGroupSize; //size of the active slave group Int_t fGroupSize; //size of the active slave group
Int_t fLogLevel; //debug logging level Int_t fLogLevel; //debug logging level
Int_t fNcmd; //command history number Int_t fNcmd; //command history number
Int_t fGroupPriority; //priority of group the user belongs to (0 - 100) Int_t fGroupPriority; //priority of group the user belongs to (0 - 100)
Bool_t fEndMaster; //true for a master in direct contact o nly with workers Bool_t fEndMaster; //true for a master in direct contact o nly with workers
Bool_t fMasterServ; //true if we are a master server Bool_t fMasterServ; //true if we are a master server
skipping to change at line 282 skipping to change at line 283
static Long_t GetVirtMemMax(); static Long_t GetVirtMemMax();
static Long_t GetResMemMax(); static Long_t GetResMemMax();
static Float_t GetMemHWM(); static Float_t GetMemHWM();
static Float_t GetMemStop(); static Float_t GetMemStop();
Long64_t GetMsgSizeHWM() const { return fMsgSizeHWM; } Long64_t GetMsgSizeHWM() const { return fMsgSizeHWM; }
const char *GetPrefix() const { return fPrefix; } const char *GetPrefix() const { return fPrefix; }
void FlushLogFile(); void FlushLogFile();
void TruncateLogFile(); // Called also by TDSetProxy::Next()
TProofLockPath *GetCacheLock() { return fCacheLock; } //cache dir l ocker; used by TProofPlayer TProofLockPath *GetCacheLock() { return fCacheLock; } //cache dir l ocker; used by TProofPlayer
Int_t CopyFromCache(const char *name, Bool_t cpbin); Int_t CopyFromCache(const char *name, Bool_t cpbin);
Int_t CopyToCache(const char *name, Int_t opt = 0); Int_t CopyToCache(const char *name, Int_t opt = 0);
virtual EQueryAction GetWorkers(TList *workers, Int_t &prioritychange, virtual EQueryAction GetWorkers(TList *workers, Int_t &prioritychange,
Bool_t resume = kFALSE); Bool_t resume = kFALSE);
virtual void HandleException(Int_t sig); virtual void HandleException(Int_t sig);
virtual Int_t HandleSocketInput(TMessage *mess, Bool_t all); virtual Int_t HandleSocketInput(TMessage *mess, Bool_t all);
virtual void HandleSocketInput(); virtual void HandleSocketInput();
 End of changes. 3 change blocks. 
1 lines changed or deleted 3 lines changed or added


 TROOT.h   TROOT.h 
// @(#)root/base:$Id: TROOT.h 32970 2010-04-13 16:36:38Z rdm $ // @(#)root/base:$Id: TROOT.h 38797 2011-04-11 15:11:58Z pcanal $
// Author: Rene Brun 08/12/94 // Author: Rene Brun 08/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 101 skipping to change at line 101
Bool_t fInterrupt; //True if macro should be interru pted Bool_t fInterrupt; //True if macro should be interru pted
Bool_t fEscape; //True if ESC has been pressed Bool_t fEscape; //True if ESC has been pressed
Bool_t fExecutingMacro; //True while executing a TMacro Bool_t fExecutingMacro; //True while executing a TMacro
Int_t fEditorMode; //Current Editor mode Int_t fEditorMode; //Current Editor mode
const TObject *fPrimitive; //Currently selected primitive const TObject *fPrimitive; //Currently selected primitive
TVirtualPad *fSelectPad; //Currently selected pad TVirtualPad *fSelectPad; //Currently selected pad
TCollection *fClasses; //List of classes definition TCollection *fClasses; //List of classes definition
TCollection *fTypes; //List of data types definition TCollection *fTypes; //List of data types definition
TCollection *fGlobals; //List of global variables TCollection *fGlobals; //List of global variables
TCollection *fGlobalFunctions; //List of global functions TCollection *fGlobalFunctions; //List of global functions
TSeqCollection *fClosedObjects; //List of closed objects from the list of files and sockets, so we can delete them if neededCl.
TSeqCollection *fFiles; //List of files TSeqCollection *fFiles; //List of files
TSeqCollection *fMappedFiles; //List of memory mapped files TSeqCollection *fMappedFiles; //List of memory mapped files
TSeqCollection *fSockets; //List of network sockets TSeqCollection *fSockets; //List of network sockets
TSeqCollection *fCanvases; //List of canvases TSeqCollection *fCanvases; //List of canvases
TSeqCollection *fStyles; //List of styles TSeqCollection *fStyles; //List of styles
TCollection *fFunctions; //List of analytic functions TCollection *fFunctions; //List of analytic functions
TSeqCollection *fTasks; //List of tasks TSeqCollection *fTasks; //List of tasks
TSeqCollection *fColors; //List of colors TSeqCollection *fColors; //List of colors
TSeqCollection *fGeometries; //List of geometries TSeqCollection *fGeometries; //List of geometries
TSeqCollection *fBrowsers; //List of browsers TSeqCollection *fBrowsers; //List of browsers
skipping to change at line 140 skipping to change at line 141
void ReadSvnInfo(); //Read Subversion revision number and branch name void ReadSvnInfo(); //Read Subversion revision number and branch name
void *operator new(size_t l) { return TObject::operator new(l); } void *operator new(size_t l) { return TObject::operator new(l); }
public: public:
TROOT(const char *name, const char *title, VoidFuncPtr _t *initfunc = 0); TROOT(const char *name, const char *title, VoidFuncPtr _t *initfunc = 0);
virtual ~TROOT(); virtual ~TROOT();
void AddClass(TClass *cl); void AddClass(TClass *cl);
void AddClassGenerator(TClassGenerator *gen); void AddClassGenerator(TClassGenerator *gen);
void Browse(TBrowser *b); void Browse(TBrowser *b);
Bool_t ClassSaved(TClass *cl); Bool_t ClassSaved(TClass *cl);
void CloseFiles();
virtual TObject *FindObject(const char *name) const; virtual TObject *FindObject(const char *name) const;
virtual TObject *FindObject(const TObject *obj) const; virtual TObject *FindObject(const TObject *obj) const;
virtual TObject *FindObjectAny(const char *name) const; virtual TObject *FindObjectAny(const char *name) const;
virtual TObject *FindObjectAnyFile(const char *name) const;
TObject *FindSpecialObject(const char *name, void *&where); TObject *FindSpecialObject(const char *name, void *&where);
const char *FindObjectClassName(const char *name) const; const char *FindObjectClassName(const char *name) const;
const char *FindObjectPathName(const TObject *obj) const; const char *FindObjectPathName(const TObject *obj) const;
TClass *FindSTLClass(const char *name, Bool_t load, Bool_t sil ent = kFALSE) const; TClass *FindSTLClass(const char *name, Bool_t load, Bool_t sil ent = kFALSE) const;
void ForceStyle(Bool_t force = kTRUE) { fForceStyle = force ; } void ForceStyle(Bool_t force = kTRUE) { fForceStyle = force ; }
Bool_t FromPopUp() const { return fFromPopUp; } Bool_t FromPopUp() const { return fFromPopUp; }
TPluginManager *GetPluginManager() const { return fPluginManager; } TPluginManager *GetPluginManager() const { return fPluginManager; }
TApplication *GetApplication() const { return fApplication; } TApplication *GetApplication() const { return fApplication; }
TInterpreter *GetInterpreter() const { return fInterpreter; } TInterpreter *GetInterpreter() const { return fInterpreter; }
TClass *GetClass(const char *name, Bool_t load = kTRUE, Bool_t silent = kFALSE) const; TClass *GetClass(const char *name, Bool_t load = kTRUE, Bool_t silent = kFALSE) const;
skipping to change at line 177 skipping to change at line 180
Int_t GetVersionDate() const { return fVersionDate; } Int_t GetVersionDate() const { return fVersionDate; }
Int_t GetVersionTime() const { return fVersionTime; } Int_t GetVersionTime() const { return fVersionTime; }
Int_t GetVersionInt() const { return fVersionInt; } Int_t GetVersionInt() const { return fVersionInt; }
Int_t GetVersionCode() const { return fVersionCode; } Int_t GetVersionCode() const { return fVersionCode; }
const char *GetVersion() const { return fVersion; } const char *GetVersion() const { return fVersion; }
TCollection *GetListOfClasses() const { return fClasses; } TCollection *GetListOfClasses() const { return fClasses; }
TSeqCollection *GetListOfColors() const { return fColors; } TSeqCollection *GetListOfColors() const { return fColors; }
TCollection *GetListOfTypes(Bool_t load = kFALSE); TCollection *GetListOfTypes(Bool_t load = kFALSE);
TCollection *GetListOfGlobals(Bool_t load = kFALSE); TCollection *GetListOfGlobals(Bool_t load = kFALSE);
TCollection *GetListOfGlobalFunctions(Bool_t load = kFALSE); TCollection *GetListOfGlobalFunctions(Bool_t load = kFALSE);
TSeqCollection *GetListOfClosedObjects() const { return fClosedObjects ; }
TSeqCollection *GetListOfFiles() const { return fFiles; } TSeqCollection *GetListOfFiles() const { return fFiles; }
TSeqCollection *GetListOfMappedFiles() const { return fMappedFiles; } TSeqCollection *GetListOfMappedFiles() const { return fMappedFiles; }
TSeqCollection *GetListOfSockets() const { return fSockets; } TSeqCollection *GetListOfSockets() const { return fSockets; }
TSeqCollection *GetListOfCanvases() const { return fCanvases; } TSeqCollection *GetListOfCanvases() const { return fCanvases; }
TSeqCollection *GetListOfStyles() const { return fStyles; } TSeqCollection *GetListOfStyles() const { return fStyles; }
TCollection *GetListOfFunctions() const { return fFunctions; } TCollection *GetListOfFunctions() const { return fFunctions; }
TSeqCollection *GetListOfGeometries() const { return fGeometries; } TSeqCollection *GetListOfGeometries() const { return fGeometries; }
TSeqCollection *GetListOfBrowsers() const { return fBrowsers; } TSeqCollection *GetListOfBrowsers() const { return fBrowsers; }
TSeqCollection *GetListOfSpecials() const { return fSpecials; } TSeqCollection *GetListOfSpecials() const { return fSpecials; }
TSeqCollection *GetListOfTasks() const { return fTasks; } TSeqCollection *GetListOfTasks() const { return fTasks; }
 End of changes. 5 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TRootBrowser.h   TRootBrowser.h 
// @(#)root/gui:$Id: TRootBrowser.h 30884 2009-10-27 12:26:33Z rdm $ // @(#)root/gui:$Id: TRootBrowser.h 37996 2011-02-07 15:33:10Z rdm $
// Author: Bertrand Bellenot 26/09/2007 // Author: Bertrand Bellenot 26/09/2007
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 115 skipping to change at line 115
TRootBrowser(TBrowser *b = 0, const char *name = "ROOT Browser", UInt_t width = 800, UInt_t height = 500, Option_t *opt="", Bool_t initshow=kTRUE); TRootBrowser(TBrowser *b = 0, const char *name = "ROOT Browser", UInt_t width = 800, UInt_t height = 500, Option_t *opt="", Bool_t initshow=kTRUE);
TRootBrowser(TBrowser *b, const char *name, Int_t x, Int_t y, UInt_t wid th, UInt_t height, Option_t *opt="", Bool_t initshow=kTRUE); TRootBrowser(TBrowser *b, const char *name, Int_t x, Int_t y, UInt_t wid th, UInt_t height, Option_t *opt="", Bool_t initshow=kTRUE);
virtual ~TRootBrowser(); virtual ~TRootBrowser();
void InitPlugins(Option_t *opt=""); void InitPlugins(Option_t *opt="");
void CreateBrowser(const char *name); void CreateBrowser(const char *name);
void CloneBrowser(); void CloneBrowser();
void CloseWindow(); void CloseWindow();
void CloseTab(Int_t id); void CloseTab(Int_t id);
virtual void CloseTabs();
void DoTab(Int_t id); void DoTab(Int_t id);
TGFrame *GetActFrame() const { return (TGFrame *)fEditFrame; } TGFrame *GetActFrame() const { return (TGFrame *)fEditFrame; }
TGFrame *GetToolbarFrame() const { return (TGFrame *)fToolbarFr ame; } TGFrame *GetToolbarFrame() const { return (TGFrame *)fToolbarFr ame; }
TGStatusBar *GetStatusBar() const { return fStatusBar; } TGStatusBar *GetStatusBar() const { return fStatusBar; }
TGTab *GetTabLeft() const { return fTabLeft; } TGTab *GetTabLeft() const { return fTabLeft; }
TGTab *GetTabRight() const { return fTabRight; } TGTab *GetTabRight() const { return fTabRight; }
TGTab *GetTabBottom() const { return fTabBottom; } TGTab *GetTabBottom() const { return fTabBottom; }
TGTab *GetTab(Int_t pos) const; TGTab *GetTab(Int_t pos) const;
void SetTab(Int_t pos = kRight, Int_t subpos = -1); void SetTab(Int_t pos = kRight, Int_t subpos = -1);
void SetTabTitle(const char *title, Int_t pos = kRight, Int _t subpos = -1); void SetTabTitle(const char *title, Int_t pos = kRight, Int _t subpos = -1);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TRootBrowserLite.h   TRootBrowserLite.h 
// @(#)root/gui:$Id: TRootBrowserLite.h 30884 2009-10-27 12:26:33Z rdm $ // @(#)root/gui:$Id: TRootBrowserLite.h 37996 2011-02-07 15:33:10Z rdm $
// Author: Fons Rademakers 27/02/98 // Author: Fons Rademakers 27/02/98
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 139 skipping to change at line 139
virtual void AddToTree(TObject *obj, const char *name, Int_t check = -1) ; virtual void AddToTree(TObject *obj, const char *name, Int_t check = -1) ;
virtual void AddCheckBox(TObject *obj, Bool_t check = kFALSE); virtual void AddCheckBox(TObject *obj, Bool_t check = kFALSE);
virtual void CheckObjectItem(TObject *obj, Bool_t check = kFALSE); virtual void CheckObjectItem(TObject *obj, Bool_t check = kFALSE);
virtual void RemoveCheckBox(TObject *obj); virtual void RemoveCheckBox(TObject *obj);
virtual void BrowseObj(TObject *obj); //*SIGNAL* virtual void BrowseObj(TObject *obj); //*SIGNAL*
virtual void ExecuteDefaultAction(TObject *obj); //*SIGNAL* virtual void ExecuteDefaultAction(TObject *obj); //*SIGNAL*
virtual void DoubleClicked(TObject *obj); //*SIGNAL* virtual void DoubleClicked(TObject *obj); //*SIGNAL*
virtual void Checked(TObject *obj, Bool_t check); //*SIGNAL* virtual void Checked(TObject *obj, Bool_t check); //*SIGNAL*
virtual void CloseTabs() { }
virtual void Iconify() { } virtual void Iconify() { }
virtual void RecursiveRemove(TObject *obj); virtual void RecursiveRemove(TObject *obj);
virtual void Refresh(Bool_t force = kFALSE); virtual void Refresh(Bool_t force = kFALSE);
virtual void ResizeBrowser() { } virtual void ResizeBrowser() { }
virtual void ShowToolBar(Bool_t show = kTRUE); virtual void ShowToolBar(Bool_t show = kTRUE);
virtual void ShowStatusBar(Bool_t show = kTRUE); virtual void ShowStatusBar(Bool_t show = kTRUE);
virtual void Show() { MapRaised(); } virtual void Show() { MapRaised(); }
virtual void SetDefaults(const char *iconStyle = 0, const char *sortBy = 0); virtual void SetDefaults(const char *iconStyle = 0, const char *sortBy = 0);
virtual Bool_t HandleKey(Event_t *event); virtual Bool_t HandleKey(Event_t *event);
virtual void SetStatusText(const char *txt, Int_t col); virtual void SetStatusText(const char *txt, Int_t col);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TSVDUnfold.h   TSVDUnfold.h 
skipping to change at line 61 skipping to change at line 61
class TH1D; class TH1D;
class TH2D; class TH2D;
class TSVDUnfold : public TObject { class TSVDUnfold : public TObject {
public: public:
// Constructor // Constructor
// Initialisation of unfolding // Initialisation of unfolding
// "bdat" - measured data distribution (number of events) // "bdat" - measured data distribution (number of events)
// "Bcov" - covariance matrix for measured data distribution
// "bini" - reconstructed MC distribution (number of events) // "bini" - reconstructed MC distribution (number of events)
// "xini" - truth MC distribution (number of events) // "xini" - truth MC distribution (number of events)
// "Adet" - detector response matrix (number of events) // "Adet" - detector response matrix (number of events)
TSVDUnfold( const TH1D* bdat, const TH1D* bini, const TH1D* xini, const TH2D* Adet ); TSVDUnfold( const TH1D* bdat, const TH1D* bini, const TH1D* xini, const TH2D* Adet );
TSVDUnfold( const TH1D* bdat, TH2D* Bcov, const TH1D* bini, const TH1D* xini, const TH2D* Adet );
TSVDUnfold( const TSVDUnfold& other ); TSVDUnfold( const TSVDUnfold& other );
// Destructor // Destructor
virtual ~TSVDUnfold(); virtual ~TSVDUnfold();
// Set option to normalize unfolded spectrum to unit area // Set option to normalize unfolded spectrum to unit area
// "normalize" - switch // "normalize" - switch
void SetNormalize ( Bool_t normalize ) { fNormalize = normalize; } void SetNormalize ( Bool_t normalize ) { fNormalize = normalize; }
// Do the unfolding // Do the unfolding
skipping to change at line 100 skipping to change at line 102
// Regularisation parameter // Regularisation parameter
Int_t GetKReg() const { return fKReg; } Int_t GetKReg() const { return fKReg; }
// Obtain the distribution of |d| (for determining the regularization) // Obtain the distribution of |d| (for determining the regularization)
TH1D* GetD() const; TH1D* GetD() const;
// Obtain the distribution of singular values // Obtain the distribution of singular values
TH1D* GetSV() const; TH1D* GetSV() const;
// Obtain the computed regularized covariance matrix
TH2D* GetXtau() const;
// Obtain the computed inverse of the covariance matrix
TH2D* GetXinv() const;
// Helper functions // Helper functions
static Double_t ComputeChiSquared( const TH1D& truspec, const TH1D& unfs pec, const TH2D& covmat, Double_t regpar = 0.01 ); Double_t ComputeChiSquared( const TH1D& truspec, const TH1D& unfspec );
private: private:
// Helper functions for vector and matrix operations // Helper functions for vector and matrix operations
void FillCurvatureMatrix( TMatrixD& tCurv, TMatrixD& tC ) con st; void FillCurvatureMatrix( TMatrixD& tCurv, TMatrixD& tC ) con st;
static Double_t GetCurvature ( const TVectorD& vec, const TMatrixD & curv ); static Double_t GetCurvature ( const TVectorD& vec, const TMatrixD & curv );
void InitHistos ( ); void InitHistos ( );
// Helper functions // Helper functions
static void H2V ( const TH1D* histo, TVectorD& vec ); static void H2V ( const TH1D* histo, TVectorD& vec );
static void H2Verr ( const TH1D* histo, TVectorD& vec ); static void H2Verr ( const TH1D* histo, TVectorD& vec );
static void V2H ( const TVectorD& vec, TH1D& histo ); static void V2H ( const TVectorD& vec, TH1D& histo );
static void H2M ( const TH2D* histo, TMatrixD& mat ); static void H2M ( const TH2D* histo, TMatrixD& mat );
static void M2H ( const TMatrixD& mat, TH2D& histo );
static TMatrixD MatDivVec( const TMatrixD& mat, const TVectorD& vec, Int _t zero=0 ); static TMatrixD MatDivVec( const TMatrixD& mat, const TVectorD& vec, Int _t zero=0 );
static TVectorD CompProd ( const TVectorD& vec1, const TVectorD& vec2 ); static TVectorD CompProd ( const TVectorD& vec1, const TVectorD& vec2 );
static TVectorD VecDiv ( const TVectorD& vec1, const TVe ctorD& vec2, Int_t zero = 0 ); static TVectorD VecDiv ( const TVectorD& vec1, const TVe ctorD& vec2, Int_t zero = 0 );
static void RegularisedSymMatInvert( TMatrixDSym& mat, Double_t eps = 1e-3 ); static void RegularisedSymMatInvert( TMatrixDSym& mat, Double_t eps = 1e-3 );
// Class members // Class members
Int_t fNdim; //! Truth and reconstructed dimensions Int_t fNdim; //! Truth and reconstructed dimensions
Int_t fDdim; //! Derivative for curvature matrix Int_t fDdim; //! Derivative for curvature matrix
Bool_t fNormalize; //! Normalize unfolded spectrum to 1 Bool_t fNormalize; //! Normalize unfolded spectrum to 1
Int_t fKReg; //! Regularisation parameter Int_t fKReg; //! Regularisation parameter
TH1D* fDHist; // Distribution of d (for checking regularizat TH1D* fDHist; //! Distribution of d (for checking regulariza
ion) tion)
TH1D* fSVHist; // Distribution of singular values TH1D* fSVHist; //! Distribution of singular values
TH2D* fXtau; //! Computed regularized covariance matrix
TH2D* fXinv; //! Computed inverse of covariance matrix
// Input histos // Input histos
const TH1D* fBdat; // measured distribution (data) const TH1D* fBdat; // measured distribution (data)
TH2D* fBcov; // covariance matrix of measured distribution (data)
const TH1D* fBini; // reconstructed distribution (MC) const TH1D* fBini; // reconstructed distribution (MC)
const TH1D* fXini; // truth distribution (MC) const TH1D* fXini; // truth distribution (MC)
const TH2D* fAdet; // Detector response matrix const TH2D* fAdet; // Detector response matrix
// Evaluation of covariance matrices // Evaluation of covariance matrices
TH1D* fToyhisto; //! Toy MC histogram TH1D* fToyhisto; //! Toy MC histogram
TH2D* fToymat; //! Toy MC detector response matrix TH2D* fToymat; //! Toy MC detector response matrix
Bool_t fToyMode; //! Internal switch for covariance matrix prop agation Bool_t fToyMode; //! Internal switch for covariance matrix prop agation
Bool_t fMatToyMode; //! Internal switch for evaluation of statisti cal uncertainties from response matrix Bool_t fMatToyMode; //! Internal switch for evaluation of statisti cal uncertainties from response matrix
 End of changes. 7 change blocks. 
4 lines changed or deleted 16 lines changed or added


 TSchemaRuleSet.h   TSchemaRuleSet.h 
// @(#)root/core:$Id: TSchemaRuleSet.h 32644 2010-03-17 13:58:28Z pcanal $ // @(#)root/core:$Id: TSchemaRuleSet.h 38140 2011-02-18 10:52:47Z pcanal $
// author: Lukasz Janyst <ljanyst@cern.ch> // author: Lukasz Janyst <ljanyst@cern.ch>
#ifndef ROOT_TSchemaRuleSet #ifndef ROOT_TSchemaRuleSet
#define ROOT_TSchemaRuleSet #define ROOT_TSchemaRuleSet
class TClass; class TClass;
#include "TObject.h" #include "TObject.h"
#include "TObjArray.h" #include "TObjArray.h"
#include "Rtypes.h" #include "Rtypes.h"
skipping to change at line 43 skipping to change at line 43
enum EConsistencyCheck { enum EConsistencyCheck {
kNoCheck = 0, kNoCheck = 0,
kCheckAll = 1, kCheckAll = 1,
kCheckConflict = 2 kCheckConflict = 2
}; };
TSchemaRuleSet(); TSchemaRuleSet();
virtual ~TSchemaRuleSet(); virtual ~TSchemaRuleSet();
Bool_t AddRule( TSchemaRule* rule, EConsistencyCheck Bool_t AddRule( TSchemaRule* rule, EConsistencyCheck
checkConsistency = kCheckAll ); checkConsistency = kCheckAll, TString *errmsg = 0 );
Bool_t AddRules( TSchemaRuleSet* rules, EConsistencyC Bool_t AddRules( TSchemaRuleSet* rules, EConsistencyC
heck checkConsistency = kCheckAll ); heck checkConsistency = kCheckAll, TString *errmsg = 0);
Bool_t HasRuleWithSourceClass( const TString &source) const; Bool_t HasRuleWithSourceClass( const TString &source) const;
const TObjArray* FindRules( const TString &source ) const; const TObjArray* FindRules( const TString &source ) const;
const TSchemaMatch* FindRules( const TString &source, Int_t versio n ) const; const TSchemaMatch* FindRules( const TString &source, Int_t versio n ) const;
const TSchemaMatch* FindRules( const TString &source, UInt_t check sum ) const; const TSchemaMatch* FindRules( const TString &source, UInt_t check sum ) const;
const TSchemaMatch* FindRules( const TString &source, Int_t versio n, UInt_t checksum ) const; const TSchemaMatch* FindRules( const TString &source, Int_t versio n, UInt_t checksum ) const;
TClass* GetClass(); TClass* GetClass();
UInt_t GetClassCheckSum() const; UInt_t GetClassCheckSum() const;
TString GetClassName() const; TString GetClassName() const;
Int_t GetClassVersion() const; Int_t GetClassVersion() const;
const TObjArray* GetRules() const; const TObjArray* GetRules() const;
 End of changes. 2 change blocks. 
5 lines changed or deleted 5 lines changed or added


 TSelector.h   TSelector.h 
// @(#)root/tree:$Id: TSelector.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/tree:$Id: TSelector.h 38869 2011-04-15 11:29:04Z pcanal $
// Author: Rene Brun 05/02/97 // Author: Rene Brun 05/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 76 skipping to change at line 76
virtual Bool_t Process(Long64_t /*entry*/) { return kFALSE; } virtual Bool_t Process(Long64_t /*entry*/) { return kFALSE; }
virtual void SetOption(const char *option) { fOption = option; } virtual void SetOption(const char *option) { fOption = option; }
virtual void SetObject(TObject *obj) { fObject = obj; } virtual void SetObject(TObject *obj) { fObject = obj; }
virtual void SetInputList(TList *input) { fInput = input; } virtual void SetInputList(TList *input) { fInput = input; }
virtual void SetStatus(Long64_t status) { fStatus = status; } virtual void SetStatus(Long64_t status) { fStatus = status; }
virtual TList *GetOutputList() const { return fOutput; } virtual TList *GetOutputList() const { return fOutput; }
virtual void SlaveTerminate() { } virtual void SlaveTerminate() { }
virtual void Terminate() { } virtual void Terminate() { }
virtual void Abort(const char *why, EAbort what = kAbortProcess); virtual void Abort(const char *why, EAbort what = kAbortProcess);
virtual EAbort GetAbort() const { return fAbort; } virtual EAbort GetAbort() const { return fAbort; }
virtual void ResetAbort() { fAbort = kContinue; }
static TSelector *GetSelector(const char *filename); static TSelector *GetSelector(const char *filename);
static Bool_t IsStandardDraw(const char *selec); static Bool_t IsStandardDraw(const char *selec);
ClassDef(TSelector,0) //A utility class for tree and object processing ClassDef(TSelector,0) //A utility class for tree and object processing
}; };
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TSelectorCint.h   TSelectorCint.h 
// @(#)root/tree:$Id: TSelectorCint.h 34509 2010-07-20 12:18:17Z rdm $ // @(#)root/tree:$Id: TSelectorCint.h 38871 2011-04-15 11:35:38Z pcanal $
// Author: Rene Brun 05/02/97 // Author: Rene Brun 05/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 37 skipping to change at line 37
#include "TInterpreter.h" #include "TInterpreter.h"
#endif #endif
class TSelectorCint : public TSelector { class TSelectorCint : public TSelector {
private: private:
void SetFuncProto(CallFunc_t *cf, ClassInfo_t *cl, const char* fname, void SetFuncProto(CallFunc_t *cf, ClassInfo_t *cl, const char* fname,
const char* argtype, Bool_t required = kTRUE); const char* argtype, Bool_t required = kTRUE);
protected: protected:
ClassInfo_t *fClass; //! ClassInfo_t *fClass; //!
CallFunc_t *fFuncVersion; //! CallFunc_t *fFuncVersion; //!
CallFunc_t *fFuncInit; //! CallFunc_t *fFuncInit; //!
CallFunc_t *fFuncBegin; //! CallFunc_t *fFuncBegin; //!
CallFunc_t *fFuncSlBegin; //! CallFunc_t *fFuncSlBegin; //!
CallFunc_t *fFuncNotif; //! CallFunc_t *fFuncNotif; //!
CallFunc_t *fFuncSlTerm; //! CallFunc_t *fFuncSlTerm; //!
CallFunc_t *fFuncTerm; //! CallFunc_t *fFuncTerm; //!
CallFunc_t *fFuncCut; //! CallFunc_t *fFuncCut; //!
CallFunc_t *fFuncFill; //! CallFunc_t *fFuncFill; //!
CallFunc_t *fFuncProc; //! CallFunc_t *fFuncProc; //!
CallFunc_t *fFuncOption; //! CallFunc_t *fFuncOption; //!
CallFunc_t *fFuncObj; //! CallFunc_t *fFuncObj; //!
CallFunc_t *fFuncInp; //! CallFunc_t *fFuncInp; //!
CallFunc_t *fFuncOut; //! CallFunc_t *fFuncOut; //!
CallFunc_t *fFuncGetAbort; //! CallFunc_t *fFuncAbort; //!
CallFunc_t *fFuncGetStat; //! CallFunc_t *fFuncGetAbort; //!
TSelector *fIntSelector; //Pointer to interpreted selector (if inter CallFunc_t *fFuncResetAbort; //!
preted) CallFunc_t *fFuncGetStat; //!
Bool_t fIsOwner; //True if fIntSelector shoudl be deleted wh TSelector *fIntSelector; //Pointer to interpreted selector (if int
en the this object is deleted. erpreted)
Bool_t fIsOwner; //True if fIntSelector shoudl be deleted
when the this object is deleted.
public: public:
TSelectorCint(); TSelectorCint();
virtual ~TSelectorCint(); virtual ~TSelectorCint();
virtual void Build(TSelector *iselector, ClassInfo_t *cl, Bool_t isowner = kTRUE); virtual void Build(TSelector *iselector, ClassInfo_t *cl, Bool_t isowner = kTRUE);
virtual int Version() const; virtual int Version() const;
virtual void Init(TTree *); virtual void Init(TTree *);
virtual void Begin(TTree *tree); virtual void Begin(TTree *tree);
virtual void SlaveBegin(TTree *); virtual void SlaveBegin(TTree *);
virtual Bool_t Notify(); virtual Bool_t Notify();
virtual Bool_t ProcessCut(Long64_t entry); virtual Bool_t ProcessCut(Long64_t entry);
virtual void ProcessFill(Long64_t entry); virtual void ProcessFill(Long64_t entry);
virtual Bool_t Process(Long64_t entry); virtual Bool_t Process(Long64_t entry);
virtual void SetOption(const char *option); virtual void SetOption(const char *option);
virtual void SetObject(TObject *obj); virtual void SetObject(TObject *obj);
virtual void SetInputList(TList *input); virtual void SetInputList(TList *input);
virtual TList *GetOutputList() const; virtual TList *GetOutputList() const;
virtual void SlaveTerminate(); virtual void SlaveTerminate();
virtual void Terminate(); virtual void Terminate();
virtual void Abort(const char *why, EAbort what = kAbortProcess);
virtual EAbort GetAbort() const; virtual EAbort GetAbort() const;
virtual void ResetAbort();
virtual Long64_t GetStatus() const; virtual Long64_t GetStatus() const;
virtual TClass *GetInterpretedClass() const; virtual TClass *GetInterpretedClass() const;
virtual TSelector *GetInterpretedSelector() const { return fIntSelector ; } virtual TSelector *GetInterpretedSelector() const { return fIntSelector ; }
ClassDef(TSelectorCint,0) //A utility class for tree and object process ing (interpreted version) ClassDef(TSelectorCint,0) //A utility class for tree and object process ing (interpreted version)
}; };
#endif #endif
 End of changes. 4 change blocks. 
22 lines changed or deleted 26 lines changed or added


 TSelectorDraw.h   TSelectorDraw.h 
// @(#)root/treeplayer:$Id: TSelectorDraw.h 30157 2009-09-14 20:12:53Z pcan al $ // @(#)root/treeplayer:$Id: TSelectorDraw.h 38741 2011-04-05 18:12:39Z pcan al $
// Author: Rene Brun 08/01/2003 // Author: Rene Brun 08/01/2003
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 88 skipping to change at line 88
virtual Int_t GetDimension() const {return fDimension;} virtual Int_t GetDimension() const {return fDimension;}
virtual Long64_t GetDrawFlag() const {return fDraw;} virtual Long64_t GetDrawFlag() const {return fDraw;}
TObject *GetObject() const {return fObject;} TObject *GetObject() const {return fObject;}
Int_t GetMultiplicity() const {return fMultiplicity;} Int_t GetMultiplicity() const {return fMultiplicity;}
virtual Int_t GetNfill() const {return fNfill;} virtual Int_t GetNfill() const {return fNfill;}
TH1 *GetOldHistogram() const {return fOldHistogram;} TH1 *GetOldHistogram() const {return fOldHistogram;}
TTreeFormula *GetSelect() const {return fSelect;} TTreeFormula *GetSelect() const {return fSelect;}
virtual Long64_t GetSelectedRows() const {return fSelectedRows;} virtual Long64_t GetSelectedRows() const {return fSelectedRows;}
TTree *GetTree() const {return fTree;} TTree *GetTree() const {return fTree;}
TTreeFormula *GetVar(Int_t i) const; TTreeFormula *GetVar(Int_t i) const;
// See TSelectorDraw::GetVar
TTreeFormula *GetVar1() const {return GetVar(0);} TTreeFormula *GetVar1() const {return GetVar(0);}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar2() const {return GetVar(1);} TTreeFormula *GetVar2() const {return GetVar(1);}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar3() const {return GetVar(2);} TTreeFormula *GetVar3() const {return GetVar(2);}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar4() const {return GetVar(3);} TTreeFormula *GetVar4() const {return GetVar(3);}
virtual Double_t *GetVal(Int_t i) const; virtual Double_t *GetVal(Int_t i) const;
// See TSelectorDraw::GetVal
virtual Double_t *GetV1() const {return GetVal(0);} virtual Double_t *GetV1() const {return GetVal(0);}
// See TSelectorDraw::GetVal
virtual Double_t *GetV2() const {return GetVal(1);} virtual Double_t *GetV2() const {return GetVal(1);}
// See TSelectorDraw::GetVal
virtual Double_t *GetV3() const {return GetVal(2);} virtual Double_t *GetV3() const {return GetVal(2);}
// See TSelectorDraw::GetVal
virtual Double_t *GetV4() const {return GetVal(3);} virtual Double_t *GetV4() const {return GetVal(3);}
virtual Double_t *GetW() const {return fW;} virtual Double_t *GetW() const {return fW;}
virtual Bool_t Notify(); virtual Bool_t Notify();
virtual Bool_t Process(Long64_t /*entry*/) { return kFALSE; } virtual Bool_t Process(Long64_t /*entry*/) { return kFALSE; }
virtual void ProcessFill(Long64_t entry); virtual void ProcessFill(Long64_t entry);
virtual void ProcessFillMultiple(Long64_t entry); virtual void ProcessFillMultiple(Long64_t entry);
virtual void ProcessFillObject(Long64_t entry); virtual void ProcessFillObject(Long64_t entry);
virtual void SetEstimate(Long64_t n); virtual void SetEstimate(Long64_t n);
virtual UInt_t SplitNames(const TString &varexp, std::vector<TString> &names); virtual UInt_t SplitNames(const TString &varexp, std::vector<TString> &names);
virtual void TakeAction(); virtual void TakeAction();
 End of changes. 9 change blocks. 
1 lines changed or deleted 9 lines changed or added


 TSeqCollection.h   TSeqCollection.h 
// @(#)root/cont:$Id: TSeqCollection.h 33807 2010-06-10 07:23:32Z brun $ // @(#)root/cont:$Id: TSeqCollection.h 38082 2011-02-16 00:52:04Z rdm $
// Author: Fons Rademakers 04/08/95 // Author: Fons Rademakers 04/08/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 56 skipping to change at line 56
virtual TObject *RemoveAt(Int_t idx) { return Remove(At(idx)); } virtual TObject *RemoveAt(Int_t idx) { return Remove(At(idx)); }
virtual void RemoveAfter(TObject *after) { Remove(After(after)); } virtual void RemoveAfter(TObject *after) { Remove(After(after)); }
virtual void RemoveBefore(TObject *before) { Remove(Before(before)) ; } virtual void RemoveBefore(TObject *before) { Remove(Before(before)) ; }
virtual TObject *At(Int_t idx) const = 0; virtual TObject *At(Int_t idx) const = 0;
virtual TObject *Before(const TObject *obj) const = 0; virtual TObject *Before(const TObject *obj) const = 0;
virtual TObject *After(const TObject *obj) const = 0; virtual TObject *After(const TObject *obj) const = 0;
virtual TObject *First() const = 0; virtual TObject *First() const = 0;
virtual TObject *Last() const = 0; virtual TObject *Last() const = 0;
Int_t LastIndex() const { return GetSize() - 1; } Int_t LastIndex() const { return GetSize() - 1; }
virtual Int_t GetLast() const;
virtual Int_t IndexOf(const TObject *obj) const; virtual Int_t IndexOf(const TObject *obj) const;
virtual Bool_t IsSorted() const { return fSorted; } virtual Bool_t IsSorted() const { return fSorted; }
void UnSort() { fSorted = kFALSE; } void UnSort() { fSorted = kFALSE; }
Long64_t Merge(TCollection *list); Long64_t Merge(TCollection *list);
static Int_t ObjCompare(TObject *a, TObject *b); static Int_t ObjCompare(TObject *a, TObject *b);
static void QSort(TObject **a, Int_t first, Int_t last); static void QSort(TObject **a, Int_t first, Int_t last);
static inline void QSort(TObject **a, TObject **b, Int_t first, Int_t la st) { QSort(a, 1, &b, first, last); } static inline void QSort(TObject **a, TObject **b, Int_t first, Int_t la st) { QSort(a, 1, &b, first, last); }
static void QSort(TObject **a, Int_t nBs, TObject ***b, Int_t fir st, Int_t last); static void QSort(TObject **a, Int_t nBs, TObject ***b, Int_t fir st, Int_t last);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TSlave.h   TSlave.h 
// @(#)root/proof:$Id: TSlave.h 27576 2009-02-23 12:15:26Z ganis $ // @(#)root/proof:$Id: TSlave.h 37976 2011-02-04 11:43:16Z ganis $
// Author: Fons Rademakers 14/02/97 // Author: Fons Rademakers 14/02/97
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 99 skipping to change at line 99
TSocket *fSocket; //socket to slave TSocket *fSocket; //socket to slave
TProof *fProof; //proof cluster to which slave belongs TProof *fProof; //proof cluster to which slave belongs
TFileHandler *fInput; //input handler related to this slave TFileHandler *fInput; //input handler related to this slave
Long64_t fBytesRead; //bytes read by slave (info is obtained from s lave) Long64_t fBytesRead; //bytes read by slave (info is obtained from s lave)
Float_t fRealTime; //real time spent executing commands (info obt ained from slave) Float_t fRealTime; //real time spent executing commands (info obt ained from slave)
Float_t fCpuTime; //CPU time spent executing commands (info obta ined from slave) Float_t fCpuTime; //CPU time spent executing commands (info obta ined from slave)
ESlaveType fSlaveType; //type of slave (either kMaster or kSlave) ESlaveType fSlaveType; //type of slave (either kMaster or kSlave)
Int_t fStatus; //remote return status Int_t fStatus; //remote return status
Int_t fParallel; //number of active slaves Int_t fParallel; //number of active slaves
TString fMsd; //mass storage domain of slave TString fMsd; //mass storage domain of slave
TString fSessionTag;//unique tag for ths worker process
TString fROOTVers; //ROOT version run by worker TString fROOTVers; //ROOT version run by worker
TString fArchComp; //Build architecture, compiler on worker (e.g. linux-gcc345) TString fArchComp; //Build architecture, compiler on worker (e.g. linux-gcc345)
TSlave(); TSlave();
virtual void FlushSocket() { } virtual void FlushSocket() { }
void Init(TSocket *s, Int_t stype); void Init(TSocket *s, Int_t stype);
virtual void Interrupt(Int_t type); virtual void Interrupt(Int_t type);
virtual Int_t Ping(); virtual Int_t Ping();
virtual TObjString *SendCoordinator(Int_t kind, const char *msg = 0, Int _t int2 = 0); virtual TObjString *SendCoordinator(Int_t kind, const char *msg = 0, Int _t int2 = 0);
skipping to change at line 142 skipping to change at line 143
Int_t GetProtocol() const { return fProtocol; } Int_t GetProtocol() const { return fProtocol; }
TSocket *GetSocket() const { return fSocket; } TSocket *GetSocket() const { return fSocket; }
TProof *GetProof() const { return fProof; } TProof *GetProof() const { return fProof; }
Long64_t GetBytesRead() const { return fBytesRead; } Long64_t GetBytesRead() const { return fBytesRead; }
Float_t GetRealTime() const { return fRealTime; } Float_t GetRealTime() const { return fRealTime; }
Float_t GetCpuTime() const { return fCpuTime; } Float_t GetCpuTime() const { return fCpuTime; }
Int_t GetSlaveType() const { return (Int_t)fSlaveType; } Int_t GetSlaveType() const { return (Int_t)fSlaveType; }
Int_t GetStatus() const { return fStatus; } Int_t GetStatus() const { return fStatus; }
Int_t GetParallel() const { return fParallel; } Int_t GetParallel() const { return fParallel; }
const char *GetMsd() const { return fMsd; } const char *GetMsd() const { return fMsd; }
const char *GetSessionTag() const { return fSessionTag; }
TFileHandler *GetInputHandler() const { return fInput; } TFileHandler *GetInputHandler() const { return fInput; }
void SetInputHandler(TFileHandler *ih); void SetInputHandler(TFileHandler *ih);
const char *GetArchCompiler() const { return fArchComp; } const char *GetArchCompiler() const { return fArchComp; }
const char *GetROOTVersion() const { return fROOTVers; } const char *GetROOTVersion() const { return fROOTVers; }
virtual Bool_t IsValid() const { return fSocket ? kTRUE : kFALSE; } virtual Bool_t IsValid() const { return fSocket ? kTRUE : kFALSE; }
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual Int_t SetupServ(Int_t stype, const char *conffile); virtual Int_t SetupServ(Int_t stype, const char *conffile);
virtual void SetInterruptHandler(Bool_t /* on */) { } virtual void SetInterruptHandler(Bool_t /* on */) { }
void SetArchCompiler(const char *ac) { fArchComp = ac; } void SetArchCompiler(const char *ac) { fArchComp = ac; }
void SetROOTVersion(const char *rv) { fROOTVers = rv; } void SetROOTVersion(const char *rv) { fROOTVers = rv; }
void SetSessionTag(const char *st) { fSessionTag = st; }
static void SetTXSlaveHook(TSlave_t xslavehook); static void SetTXSlaveHook(TSlave_t xslavehook);
virtual void Touch() { } virtual void Touch() { }
ClassDef(TSlave,0) //PROOF slave server ClassDef(TSlave,0) //PROOF slave server
}; };
#endif #endif
 End of changes. 4 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TSocket.h   TSocket.h 
// @(#)root/net:$Id: TSocket.h 35826 2010-09-28 09:38:08Z rdm $ // @(#)root/net:$Id: TSocket.h 38221 2011-02-25 10:26:55Z rdm $
// Author: Fons Rademakers 18/12/96 // Author: Fons Rademakers 18/12/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 81 skipping to change at line 81
class TMessage; class TMessage;
class THostAuth; class THostAuth;
class TSocket : public TNamed { class TSocket : public TNamed {
friend class TServerSocket; friend class TServerSocket;
friend class TProofServ; // to be able to call SetDescriptor(), RecvHostA uth() friend class TProofServ; // to be able to call SetDescriptor(), RecvHostA uth()
friend class TSlave; // to be able to call SendHostAuth() friend class TSlave; // to be able to call SendHostAuth()
public: public:
enum EStatusBits { kIsUnix = BIT(16) }; // set if unix socket enum EStatusBits { kIsUnix = BIT(16), // set if unix socket
kBrokenConn = BIT(17) // set if conn reset by peer or
broken
};
enum EInterest { kRead = 1, kWrite = 2 }; enum EInterest { kRead = 1, kWrite = 2 };
enum EServiceType { kSOCKD, kROOTD, kPROOFD }; enum EServiceType { kSOCKD, kROOTD, kPROOFD };
protected: protected:
TInetAddress fAddress; // remote internet address and port # TInetAddress fAddress; // remote internet address and port #
UInt_t fBytesRecv; // total bytes received over this socket UInt_t fBytesRecv; // total bytes received over this socket
UInt_t fBytesSent; // total bytes sent using this socket UInt_t fBytesSent; // total bytes sent using this socket
Int_t fCompress; // compression level from 0 (not compress ed) Int_t fCompress; // compression level from 0 (not compress ed)
// to 9 (max compression) // to 9 (max compression)
TInetAddress fLocalAddress; // local internet address and port # TInetAddress fLocalAddress; // local internet address and port #
skipping to change at line 114 skipping to change at line 116
TTimeStamp fLastUsage; // Time stamp of last usage TTimeStamp fLastUsage; // Time stamp of last usage
static ULong64_t fgBytesRecv; // total bytes received by all socket obj ects static ULong64_t fgBytesRecv; // total bytes received by all socket obj ects
static ULong64_t fgBytesSent; // total bytes sent by all socket objects static ULong64_t fgBytesSent; // total bytes sent by all socket objects
static Int_t fgClientProtocol; // client "protocol" version static Int_t fgClientProtocol; // client "protocol" version
TSocket() : fAddress(), fBytesRecv(0), fBytesSent(0), fCompress(0), TSocket() : fAddress(), fBytesRecv(0), fBytesSent(0), fCompress(0),
fLocalAddress(), fRemoteProtocol(), fSecContext(0), fService (), fLocalAddress(), fRemoteProtocol(), fSecContext(0), fService (),
fServType(kSOCKD), fSocket(-1), fTcpWindowSize(0), fUrl(), fServType(kSOCKD), fSocket(-1), fTcpWindowSize(0), fUrl(),
fBitsInfo(), fUUIDs(0), fLastUsageMtx(0), fLastUsage() { } fBitsInfo(), fUUIDs(0), fLastUsageMtx(0), fLastUsage() { }
Bool_t Authenticate(const char *user); Bool_t Authenticate(const char *user);
void SetDescriptor(Int_t desc) { fSocket = desc; } void SetDescriptor(Int_t desc) { fSocket = desc; }
void SendStreamerInfos(const TMessage &mess); void SendStreamerInfos(const TMessage &mess);
Bool_t RecvStreamerInfos(TMessage *mess); Bool_t RecvStreamerInfos(TMessage *mess);
void SendProcessIDs(const TMessage &mess); void SendProcessIDs(const TMessage &mess);
Bool_t RecvProcessIDs(TMessage *mess); Bool_t RecvProcessIDs(TMessage *mess);
private: private:
TSocket& operator=(const TSocket &); // not implemented TSocket& operator=(const TSocket &); // not implemented
skipping to change at line 189 skipping to change at line 191
void Touch() { R__LOCKGUARD2(fLastUsageMtx); fLastUsage .Set(); } void Touch() { R__LOCKGUARD2(fLastUsageMtx); fLastUsage .Set(); }
static Int_t GetClientProtocol(); static Int_t GetClientProtocol();
static ULong64_t GetSocketBytesSent(); static ULong64_t GetSocketBytesSent();
static ULong64_t GetSocketBytesRecv(); static ULong64_t GetSocketBytesRecv();
static TSocket *CreateAuthSocket(const char *user, const char *hos t, static TSocket *CreateAuthSocket(const char *user, const char *hos t,
Int_t port, Int_t size = 0, Int_t port, Int_t size = 0,
Int_t tcpwindowsize = -1, TSocket *s = 0); Int_t tcpwindowsize = -1, TSocket *s = 0, Int_t *err = 0);
static TSocket *CreateAuthSocket(const char *url, Int_t size = 0, static TSocket *CreateAuthSocket(const char *url, Int_t size = 0,
Int_t tcpwindowsize = -1, TSocket *s = 0); Int_t tcpwindowsize = -1, TSocket *s = 0, Int_t *err = 0);
static void NetError(const char *where, Int_t error); static void NetError(const char *where, Int_t error);
ClassDef(TSocket,0) //This class implements client sockets ClassDef(TSocket,0) //This class implements client sockets
}; };
#endif #endif
 End of changes. 5 change blocks. 
5 lines changed or deleted 8 lines changed or added


 TStatus.h   TStatus.h 
// @(#)root/proofplayer:$Id: TStatus.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/proofplayer:$Id: TStatus.h 38709 2011-04-01 16:27:30Z ganis $
// Author: Maarten Ballintijn 12/03/2004 // Author: Maarten Ballintijn 12/03/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 46 skipping to change at line 46
class TCollection; class TCollection;
class TStatus : public TNamed { class TStatus : public TNamed {
private: private:
typedef std::set<std::string> MsgSet_t; typedef std::set<std::string> MsgSet_t;
typedef std::set<std::string>::const_iterator MsgIter_t; typedef std::set<std::string>::const_iterator MsgIter_t;
MsgSet_t fMsgs; // list of error messages MsgSet_t fMsgs; // list of error messages
MsgIter_t fIter; //!iterator in messages MsgIter_t fIter; //!iterator in messages
Long_t fVirtMemMax; // Max virtual memory used by the worker
Long_t fResMemMax; // Max resident memory used by the worker
public: public:
TStatus(); TStatus();
virtual ~TStatus() { } virtual ~TStatus() { }
Bool_t IsOk() const { return fMsgs.empty(); } Bool_t IsOk() const { return fMsgs.empty(); }
void Add(const char *mesg); void Add(const char *mesg);
virtual Int_t Merge(TCollection *list); virtual Int_t Merge(TCollection *list);
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
void Reset(); void Reset();
const char *NextMesg(); const char *NextMesg();
ClassDef(TStatus,1); // Status class Long_t GetResMemMax() const { return fResMemMax; }
Long_t GetVirtMemMax() const { return fVirtMemMax; }
void SetMemValues(Long_t vmem = -1, Long_t rmem = -1);
ClassDef(TStatus,2); // Status class
}; };
#endif #endif
 End of changes. 3 change blocks. 
2 lines changed or deleted 9 lines changed or added


 TStreamerInfo.h   TStreamerInfo.h 
// @(#)root/io:$Id: TStreamerInfo.h 36061 2010-10-04 16:05:51Z pcanal $ // @(#)root/io:$Id: TStreamerInfo.h 38460 2011-03-16 15:28:08Z pcanal $
// Author: Rene Brun 12/10/2000 // Author: Rene Brun 12/10/2000
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 30 skipping to change at line 30
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TVirtualStreamerInfo #ifndef ROOT_TVirtualStreamerInfo
#include "TVirtualStreamerInfo.h" #include "TVirtualStreamerInfo.h"
#endif #endif
#include "TVirtualCollectionProxy.h" #include "TVirtualCollectionProxy.h"
#if (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(R__ALPHA) || \ #if (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(R__ALPHA) || \
(defined(R__MACOSX) && defined(R__GNU) && __GNUC__==3 && __GNUC_MINOR<= 3) || \ (defined(R__MACOSX) && defined(R__GNU) && __GNUC__==3 && __GNUC_MINOR__ <=3) || \
(defined(R__MACOSX) && defined(__xlC__)) (defined(R__MACOSX) && defined(__xlC__))
#define R__BROKEN_FUNCTION_TEMPLATES #define R__BROKEN_FUNCTION_TEMPLATES
#endif #endif
class TFile; class TFile;
class TClass; class TClass;
class TClonesArray; class TClonesArray;
class TDataMember; class TDataMember;
class TMemberStreamer; class TMemberStreamer;
class TStreamerElement; class TStreamerElement;
skipping to change at line 139 skipping to change at line 139
kIgnoreTObjectStreamer = BIT(13), // eventhough BIT(13) is taken up by TObject (to preserverse forward compatibility) kIgnoreTObjectStreamer = BIT(13), // eventhough BIT(13) is taken up by TObject (to preserverse forward compatibility)
kRecovered = BIT(14), kRecovered = BIT(14),
kNeedCheck = BIT(15), kNeedCheck = BIT(15),
kIsCompiled = BIT(16) kIsCompiled = BIT(16)
}; };
enum EReadWrite { enum EReadWrite {
kBase = 0, kOffsetL = 20, kOffsetP = 40, kCounter = 6, k CharStar = 7, kBase = 0, kOffsetL = 20, kOffsetP = 40, kCounter = 6, k CharStar = 7,
kChar = 1, kShort = 2, kInt = 3, kLong = 4, k Float = 5, kChar = 1, kShort = 2, kInt = 3, kLong = 4, k Float = 5,
kDouble = 8, kDouble32= 9, kDouble = 8, kDouble32= 9,
kLegacyChar = 10, // Equal to TDataType's kchar
kUChar = 11, kUShort = 12, kUInt = 13, kULong = 14, k Bits = 15, kUChar = 11, kUShort = 12, kUInt = 13, kULong = 14, k Bits = 15,
kLong64 = 16, kULong64 = 17, kBool = 18, kFloat16 = 19, kLong64 = 16, kULong64 = 17, kBool = 18, kFloat16 = 19,
kObject = 61, kAny = 62, kObjectp = 63, kObjectP = 64, k TString = 65, kObject = 61, kAny = 62, kObjectp = 63, kObjectP = 64, k TString = 65,
kTObject = 66, kTNamed = 67, kAnyp = 68, kAnyP = 69, k AnyPnoVT = 70, kTObject = 66, kTNamed = 67, kAnyp = 68, kAnyP = 69, k AnyPnoVT = 70,
kSTLp = 71, kSTLp = 71,
kSkip = 100, kSkipL = 120, kSkipP = 140, kSkip = 100, kSkipL = 120, kSkipP = 140,
kConv = 200, kConvL = 220, kConvP = 240, kConv = 200, kConvL = 220, kConvP = 240,
kSTL = 300, kSTLstring = 365, kSTL = 300, kSTLstring = 365,
kStreamer = 500, kStreamLoop = 501, kStreamer = 500, kStreamLoop = 501,
kCache = 600, // Cache the value in memory than is not part of the object but is accessible via a SchemaRule kCache = 600, // Cache the value in memory than is not part of the object but is accessible via a SchemaRule
 End of changes. 3 change blocks. 
2 lines changed or deleted 3 lines changed or added


 TString.h   TString.h 
// @(#)root/base:$Id: TString.h 34285 2010-07-01 20:37:52Z rdm $ // @(#)root/base:$Id: TString.h 39006 2011-04-21 18:05:53Z rdm $
// Author: Fons Rademakers 04/08/95 // Author: Fons Rademakers 04/08/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 30 skipping to change at line 30
// // // //
// Cannot be stored in a TCollection... use TObjString instead. // // Cannot be stored in a TCollection... use TObjString instead. //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#ifndef __CINT__ #ifndef __CINT__
#include <string.h> #include <string.h>
#include <stdio.h> #include <stdio.h>
#endif #endif
#ifndef ROOT_TRefCnt
#include "TRefCnt.h"
#endif
#ifndef ROOT_Riosfwd #ifndef ROOT_Riosfwd
#include "Riosfwd.h" #include "Riosfwd.h"
#endif #endif
#ifndef ROOT_TMathBase #ifndef ROOT_TMathBase
#include "TMathBase.h" #include "TMathBase.h"
#endif #endif
#include <stdarg.h> #include <stdarg.h>
#include <string> #include <string>
skipping to change at line 79 skipping to change at line 75
TString operator+(Long64_t i, const TString &s); TString operator+(Long64_t i, const TString &s);
TString operator+(ULong64_t i, const TString &s); TString operator+(ULong64_t i, const TString &s);
Bool_t operator==(const TString &s1, const TString &s2); Bool_t operator==(const TString &s1, const TString &s2);
Bool_t operator==(const TString &s1, const char *s2); Bool_t operator==(const TString &s1, const char *s2);
Bool_t operator==(const TSubString &s1, const TSubString &s2); Bool_t operator==(const TSubString &s1, const TSubString &s2);
Bool_t operator==(const TSubString &s1, const TString &s2); Bool_t operator==(const TSubString &s1, const TString &s2);
Bool_t operator==(const TSubString &s1, const char *s2); Bool_t operator==(const TSubString &s1, const char *s2);
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TStringRef //
// //
// This is the dynamically allocated part of a TString. //
// It maintains a reference count. It contains no public member //
// functions. //
// //
//////////////////////////////////////////////////////////////////////////
class TStringRef : public TRefCnt {
friend class TString;
friend class TStringLong;
friend class TSubString;
private:
Ssiz_t fCapacity; // Max string length (excluding null)
Ssiz_t fNchars; // String length (excluding null)
void UnLink(); // disconnect from a TStringRef, maybe delete it
Ssiz_t Length() const { return fNchars; }
Ssiz_t Capacity() const { return fCapacity; }
char *Data() const { return (char*)(this+1); }
char &operator[](Ssiz_t i) { return ((char*)(this+1))[i]; }
char operator[](Ssiz_t i) const { return ((char*)(this+1))[i]; }
Ssiz_t First(char c) const;
Ssiz_t First(const char *s) const;
UInt_t Hash() const;
UInt_t HashFoldCase() const;
Ssiz_t Last(char) const;
static TStringRef *GetRep(Ssiz_t capac, Ssiz_t nchar);
};
//////////////////////////////////////////////////////////////////////////
// //
// TSubString // // TSubString //
// // // //
// The TSubString class allows selected elements to be addressed. // // The TSubString class allows selected elements to be addressed. //
// There are no public constructors. // // There are no public constructors. //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
class TSubString { class TSubString {
friend class TStringLong; friend class TStringLong;
friend class TString; friend class TString;
skipping to change at line 174 skipping to change at line 133
int operator!() const { return fBegin == kNPOS; } int operator!() const { return fBegin == kNPOS; }
}; };
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// TString // // TString //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
class TString { class TString {
friend class TStringLong;
friend class TSubString; friend class TSubString;
friend class TStringRef;
friend TString operator+(const TString &s1, const TString &s2); friend TString operator+(const TString &s1, const TString &s2);
friend TString operator+(const TString &s, const char *cs); friend TString operator+(const TString &s, const char *cs);
friend TString operator+(const char *cs, const TString &s); friend TString operator+(const char *cs, const TString &s);
friend TString operator+(const TString &s, char c); friend TString operator+(const TString &s, char c);
friend TString operator+(const TString &s, Long_t i); friend TString operator+(const TString &s, Long_t i);
friend TString operator+(const TString &s, ULong_t i); friend TString operator+(const TString &s, ULong_t i);
friend TString operator+(const TString &s, Long64_t i); friend TString operator+(const TString &s, Long64_t i);
friend TString operator+(const TString &s, ULong64_t i); friend TString operator+(const TString &s, ULong64_t i);
friend TString operator+(char c, const TString &s); friend TString operator+(char c, const TString &s);
friend TString operator+(Long_t i, const TString &s); friend TString operator+(Long_t i, const TString &s);
friend TString operator+(ULong_t i, const TString &s); friend TString operator+(ULong_t i, const TString &s);
friend TString operator+(Long64_t i, const TString &s); friend TString operator+(Long64_t i, const TString &s);
friend TString operator+(ULong64_t i, const TString &s); friend TString operator+(ULong64_t i, const TString &s);
friend Bool_t operator==(const TString &s1, const TString &s2); friend Bool_t operator==(const TString &s1, const TString &s2);
friend Bool_t operator==(const TString &s1, const char *s2); friend Bool_t operator==(const TString &s1, const char *s2);
private: private:
static Ssiz_t fgInitialCapac; // Initial allocation Capacity #ifdef R__BYTESWAP
static Ssiz_t fgResizeInc; // Resizing increment enum { kShortMask = 0x01, kLongMask = 0x1 };
static Ssiz_t fgFreeboard; // Max empty space before reclaim #else
enum { kShortMask = 0x80, kLongMask = 0x80000000 };
void Clone(); // Make self a distinct copy #endif
void Clone(Ssiz_t nc); // Make self a distinct copy w. capacit
y nc struct LongStr_t
void FormImp(const char *fmt, va_list ap); {
Ssiz_t fCap; // Max string length (including null)
Ssiz_t fSize; // String length (excluding null)
char *fData; // Long string data
};
enum { kMinCap = (sizeof(LongStr_t) - 1)/sizeof(char) > 2 ?
(sizeof(LongStr_t) - 1)/sizeof(char) : 2 };
struct ShortStr_t
{
unsigned char fSize; // String length (excluding null)
char fData[kMinCap]; // Short string data
};
union UStr_t { LongStr_t fL; ShortStr_t fS; };
enum { kNwords = sizeof(UStr_t) / sizeof(Ssiz_t)};
struct RawStr_t
{
Ssiz_t fWords[kNwords];
};
struct Rep_t
{
union
{
LongStr_t fLong;
ShortStr_t fShort;
RawStr_t fRaw;
};
};
protected: protected:
char *fData; // ref. counted data (TStringRef is in fr #ifndef __CINT__
ont) Rep_t fRep; // String data
#endif
// Special concatenation constructor // Special concatenation constructor
TString(const char *a1, Ssiz_t n1, const char *a2, Ssiz_t n2); TString(const char *a1, Ssiz_t n1, const char *a2, Ssiz_t n2);
TStringRef *Pref() const { return (((TStringRef*) fData) - 1); }
void AssertElement(Ssiz_t nc) const; // Index in range void AssertElement(Ssiz_t nc) const; // Index in range
void Clobber(Ssiz_t nc); // Remove old contents void Clobber(Ssiz_t nc); // Remove old contents
void Cow(); // Do copy on write as ne
eded
void Cow(Ssiz_t nc); // Do copy on write as ne
eded
static Ssiz_t AdjustCapacity(Ssiz_t nc);
void InitChar(char c); // Initialize from char void InitChar(char c); // Initialize from char
enum { kAlignment = 16 };
static Ssiz_t Align(Ssiz_t s) { return (s + (kAlignment-1)) & ~(kAlignm
ent-1); }
static Ssiz_t Recommend(Ssiz_t s) { return (s < kMinCap ? kMinCap : Ali
gn(s+1)) - 1; }
static Ssiz_t AdjustCapacity(Ssiz_t nc);
private:
Bool_t IsLong() const { return Bool_t(fRep.fShort.fSize & kShort
Mask); }
#ifdef R__BYTESWAP
void SetShortSize(Ssiz_t s) { fRep.fShort.fSize = (unsigned ch
ar)(s << 1); }
Ssiz_t GetShortSize() const { return fRep.fShort.fSize >> 1; }
#else
void SetShortSize(Ssiz_t s) { fRep.fShort.fSize = (unsigned ch
ar)s; }
Ssiz_t GetShortSize() const { return fRep.fShort.fSize; }
#endif
void SetLongSize(Ssiz_t s) { fRep.fLong.fSize = s; }
Ssiz_t GetLongSize() const { return fRep.fLong.fSize; }
void SetSize(Ssiz_t s) { IsLong() ? SetLongSize(s) : SetShortS
ize(s); }
void SetLongCap(Ssiz_t s) { fRep.fLong.fCap = kLongMask | s; }
Ssiz_t GetLongCap() const { return fRep.fLong.fCap & ~kLongMask;
}
void SetLongPointer(char *p) { fRep.fLong.fData = p; }
char *GetLongPointer() { return fRep.fLong.fData; }
const char *GetLongPointer() const { return fRep.fLong.fData; }
char *GetShortPointer() { return fRep.fShort.fData; }
const char *GetShortPointer() const { return fRep.fShort.fData; }
char *GetPointer() { return IsLong() ? GetLongPointer() : GetSh
ortPointer(); }
const char *GetPointer() const { return IsLong() ? GetLongPointer() :
GetShortPointer(); }
#ifdef R__BYTESWAP
Ssiz_t MaxSize() const { return kMaxInt - 1; }
#else
Ssiz_t MaxSize() const { return (kMaxInt >> 1) - 1; }
#endif
void UnLink() const { if (IsLong()) delete [] fRep.fLong.fData
; }
void Zero() {
Ssiz_t (&a)[kNwords] = fRep.fRaw.fWords;
for (UInt_t i = 0; i < kNwords; ++i)
a[i] = 0;
}
char *Init(Ssiz_t capacity, Ssiz_t nchar);
void Clone(Ssiz_t nc); // Make self a distinct copy w. capacit
y nc
void FormImp(const char *fmt, va_list ap);
UInt_t HashCase() const;
UInt_t HashFoldCase() const;
public: public:
enum EStripType { kLeading = 0x1, kTrailing = 0x2, kBoth = 0x3 }; enum EStripType { kLeading = 0x1, kTrailing = 0x2, kBoth = 0x3 };
enum ECaseCompare { kExact, kIgnoreCase }; enum ECaseCompare { kExact, kIgnoreCase };
TString(); // Null string TString(); // Null string
explicit TString(Ssiz_t ic); // Suggested capacity explicit TString(Ssiz_t ic); // Suggested capacity
TString(const TString &s) : // Copy constructor TString(const TString &s); // Copy constructor
fData(s.fData) { Pref()->AddReference(); }
TString(const char *s); // Copy to embedded null TString(const char *s); // Copy to embedded null
TString(const char *s, Ssiz_t n); // Copy past any embedded nulls TString(const char *s, Ssiz_t n); // Copy past any embedded nulls
TString(const std::string &s); TString(const std::string &s);
TString(char c) : fData(0) { InitChar(c); } TString(char c) { InitChar(c); }
TString(char c, Ssiz_t s); TString(char c, Ssiz_t s);
TString(const TSubString &sub); TString(const TSubString &sub);
virtual ~TString(); virtual ~TString();
// ROOT I/O interface // ROOT I/O interface
virtual void FillBuffer(char *&buffer); virtual void FillBuffer(char *&buffer);
virtual void ReadBuffer(char *&buffer); virtual void ReadBuffer(char *&buffer);
virtual Int_t Sizeof() const; virtual Int_t Sizeof() const;
static TString *ReadString(TBuffer &b, const TClass *clReq); static TString *ReadString(TBuffer &b, const TClass *clReq);
static void WriteString(TBuffer &b, const TString *a); static void WriteString(TBuffer &b, const TString *a);
friend TBuffer &operator<<(TBuffer &b, const TString *obj); friend TBuffer &operator<<(TBuffer &b, const TString *obj);
// C I/O interface // C I/O interface
Bool_t Gets(FILE *fp, Bool_t chop=kTRUE); Bool_t Gets(FILE *fp, Bool_t chop=kTRUE);
void Puts(FILE *fp); void Puts(FILE *fp);
// Type conversion // Type conversion
operator const char*() const { return fData; } operator const char*() const { return GetPointer(); }
// Assignment // Assignment
TString &operator=(char s); // Replace string TString &operator=(char s); // Replace string
TString &operator=(const char *s); TString &operator=(const char *s);
TString &operator=(const TString &s); TString &operator=(const TString &s);
TString &operator=(const std::string &s); TString &operator=(const std::string &s);
TString &operator=(const TSubString &s); TString &operator=(const TSubString &s);
TString &operator+=(const char *s); // Append string TString &operator+=(const char *s); // Append string
TString &operator+=(const TString &s); TString &operator+=(const TString &s);
TString &operator+=(char c); TString &operator+=(char c);
skipping to change at line 294 skipping to change at line 325
TString &Append(const char *cs); TString &Append(const char *cs);
TString &Append(const char *cs, Ssiz_t n); TString &Append(const char *cs, Ssiz_t n);
TString &Append(const TString &s); TString &Append(const TString &s);
TString &Append(const TString &s, Ssiz_t n); TString &Append(const TString &s, Ssiz_t n);
TString &Append(char c, Ssiz_t rep = 1); // Append c rep times TString &Append(char c, Ssiz_t rep = 1); // Append c rep times
Int_t Atoi() const; Int_t Atoi() const;
Long64_t Atoll() const; Long64_t Atoll() const;
Double_t Atof() const; Double_t Atof() const;
Bool_t BeginsWith(const char *s, ECaseCompare cmp = kExact) c onst; Bool_t BeginsWith(const char *s, ECaseCompare cmp = kExact) c onst;
Bool_t BeginsWith(const TString &pat, ECaseCompare cmp = kExact) c onst; Bool_t BeginsWith(const TString &pat, ECaseCompare cmp = kExact) c onst;
Ssiz_t Capacity() const { return Pref()->Capacity(); } Ssiz_t Capacity() const { return (IsLong() ? GetLongCap() : kMinCa p) - 1; }
Ssiz_t Capacity(Ssiz_t n); Ssiz_t Capacity(Ssiz_t n);
TString &Chop(); TString &Chop();
void Clear(); void Clear();
int CompareTo(const char *cs, ECaseCompare cmp = kExact) con st; int CompareTo(const char *cs, ECaseCompare cmp = kExact) con st;
int CompareTo(const TString &st, ECaseCompare cmp = kExact) con st; int CompareTo(const TString &st, ECaseCompare cmp = kExact) con st;
Bool_t Contains(const char *pat, ECaseCompare cmp = kExact) con st; Bool_t Contains(const char *pat, ECaseCompare cmp = kExact) con st;
Bool_t Contains(const TString &pat, ECaseCompare cmp = kExact) con st; Bool_t Contains(const TString &pat, ECaseCompare cmp = kExact) con st;
Bool_t Contains(const TRegexp &pat) const; Bool_t Contains(const TRegexp &pat) const;
Bool_t Contains(TPRegexp &pat) const; Bool_t Contains(TPRegexp &pat) const;
Int_t CountChar(Int_t c) const; Int_t CountChar(Int_t c) const;
TString Copy() const; TString Copy() const;
const char *Data() const { return fData; } const char *Data() const { return GetPointer(); }
Bool_t EndsWith(const char *pat, ECaseCompare cmp = kExact) con Bool_t EndsWith(const char *pat, ECaseCompare cmp = kExact) const;
st; Ssiz_t First(char c) const;
Ssiz_t First(char c) const { return Pref()->First(c); } Ssiz_t First(const char *cs) const;
Ssiz_t First(const char *cs) const { return Pref()->First(cs); }
void Form(const char *fmt, ...) void Form(const char *fmt, ...)
#if defined(__GNUC__) && !defined(__CINT__) #if defined(__GNUC__) && !defined(__CINT__)
__attribute__((format(printf, 2, 3))) /* 1 is the this pointer */ __attribute__((format(printf, 2, 3))) /* 1 is the this pointer */
#endif #endif
; ;
UInt_t Hash(ECaseCompare cmp = kExact) const; UInt_t Hash(ECaseCompare cmp = kExact) const;
Ssiz_t Index(const char *pat, Ssiz_t i = 0, Ssiz_t Index(const char *pat, Ssiz_t i = 0,
ECaseCompare cmp = kExact) const; ECaseCompare cmp = kExact) const;
Ssiz_t Index(const TString &s, Ssiz_t i = 0, Ssiz_t Index(const TString &s, Ssiz_t i = 0,
ECaseCompare cmp = kExact) const; ECaseCompare cmp = kExact) const;
skipping to change at line 338 skipping to change at line 369
TString &Insert(Ssiz_t pos, const char *s); TString &Insert(Ssiz_t pos, const char *s);
TString &Insert(Ssiz_t pos, const char *s, Ssiz_t extent); TString &Insert(Ssiz_t pos, const char *s, Ssiz_t extent);
TString &Insert(Ssiz_t pos, const TString &s); TString &Insert(Ssiz_t pos, const TString &s);
TString &Insert(Ssiz_t pos, const TString &s, Ssiz_t extent); TString &Insert(Ssiz_t pos, const TString &s, Ssiz_t extent);
Bool_t IsAscii() const; Bool_t IsAscii() const;
Bool_t IsAlpha() const; Bool_t IsAlpha() const;
Bool_t IsAlnum() const; Bool_t IsAlnum() const;
Bool_t IsDigit() const; Bool_t IsDigit() const;
Bool_t IsFloat() const; Bool_t IsFloat() const;
Bool_t IsHex() const; Bool_t IsHex() const;
Bool_t IsNull() const { return Pref()->fNchars == 0; } Bool_t IsNull() const { return Length() == 0; }
Bool_t IsWhitespace() const { return (Length() == CountChar(' ') ); } Bool_t IsWhitespace() const { return (Length() == CountChar(' ') ); }
Ssiz_t Last(char c) const { return Pref()->Last(c); } Ssiz_t Last(char c) const;
Ssiz_t Length() const { return Pref()->fNchars; } Ssiz_t Length() const { return IsLong() ? GetLongSize() :
GetShortSize(); }
Bool_t MaybeRegexp() const; Bool_t MaybeRegexp() const;
Bool_t MaybeWildcard() const; Bool_t MaybeWildcard() const;
TString &Prepend(const char *cs); // Prepend a character string TString &Prepend(const char *cs); // Prepend a character string
TString &Prepend(const char *cs, Ssiz_t n); TString &Prepend(const char *cs, Ssiz_t n);
TString &Prepend(const TString &s); TString &Prepend(const TString &s);
TString &Prepend(const TString &s, Ssiz_t n); TString &Prepend(const TString &s, Ssiz_t n);
TString &Prepend(char c, Ssiz_t rep = 1); // Prepend c rep times TString &Prepend(char c, Ssiz_t rep = 1); // Prepend c rep times
istream &ReadFile(istream &str); // Read to EOF or null charact er istream &ReadFile(istream &str); // Read to EOF or null charact er
istream &ReadLine(istream &str, istream &ReadLine(istream &str,
Bool_t skipWhite = kTRUE); // Read to EOF or new line Bool_t skipWhite = kTRUE); // Read to EOF or new line
skipping to change at line 388 skipping to change at line 419
static Ssiz_t ResizeIncrement(Ssiz_t ri = 16); // Resizing increme nt static Ssiz_t ResizeIncrement(Ssiz_t ri = 16); // Resizing increme nt
static Ssiz_t GetInitialCapacity(); static Ssiz_t GetInitialCapacity();
static Ssiz_t GetResizeIncrement(); static Ssiz_t GetResizeIncrement();
static Ssiz_t GetMaxWaste(); static Ssiz_t GetMaxWaste();
static TString Format(const char *fmt, ...) static TString Format(const char *fmt, ...)
#if defined(__GNUC__) && !defined(__CINT__) #if defined(__GNUC__) && !defined(__CINT__)
__attribute__((format(printf, 1, 2))) __attribute__((format(printf, 1, 2)))
#endif #endif
; ;
ClassDef(TString,1) //Basic string class ClassDef(TString,2) //Basic string class
}; };
// Related global functions // Related global functions
istream &operator>>(istream &str, TString &s); istream &operator>>(istream &str, TString &s);
ostream &operator<<(ostream &str, const TString &s); ostream &operator<<(ostream &str, const TString &s);
#if defined(R__TEMPLATE_OVERLOAD_BUG) #if defined(R__TEMPLATE_OVERLOAD_BUG)
template <> template <>
#endif #endif
TBuffer &operator>>(TBuffer &buf, TString *&sp); TBuffer &operator>>(TBuffer &buf, TString *&sp);
skipping to change at line 435 skipping to change at line 466
extern int strcasecmp(const char *str1, const char *str2); extern int strcasecmp(const char *str1, const char *str2);
extern int strncasecmp(const char *str1, const char *str2, Ssiz_t n); extern int strncasecmp(const char *str1, const char *str2, Ssiz_t n);
#endif #endif
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// Inlines // // Inlines //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
inline void TStringRef::UnLink()
{ if (RemoveReference() == 0) delete [] (char*)this; }
inline void TString::Cow()
{ if (Pref()->References() > 1) Clone(); }
inline void TString::Cow(Ssiz_t nc)
{ if (Pref()->References() > 1 || Capacity() < nc) Clone(nc); }
inline TString &TString::Append(const char *cs) inline TString &TString::Append(const char *cs)
{ return Replace(Length(), 0, cs, cs ? strlen(cs) : 0); } { return Replace(Length(), 0, cs, cs ? strlen(cs) : 0); }
inline TString &TString::Append(const char *cs, Ssiz_t n) inline TString &TString::Append(const char *cs, Ssiz_t n)
{ return Replace(Length(), 0, cs, n); } { return Replace(Length(), 0, cs, n); }
inline TString &TString::Append(const TString &s) inline TString &TString::Append(const TString &s)
{ return Replace(Length(), 0, s.Data(), s.Length()); } { return Replace(Length(), 0, s.Data(), s.Length()); }
inline TString &TString::Append(const TString &s, Ssiz_t n) inline TString &TString::Append(const TString &s, Ssiz_t n)
skipping to change at line 484 skipping to change at line 506
inline TString &TString::operator+=(UShort_t i) inline TString &TString::operator+=(UShort_t i)
{ return operator+=((ULong_t) i); } { return operator+=((ULong_t) i); }
inline TString &TString::operator+=(Int_t i) inline TString &TString::operator+=(Int_t i)
{ return operator+=((Long_t) i); } { return operator+=((Long_t) i); }
inline TString &TString::operator+=(UInt_t i) inline TString &TString::operator+=(UInt_t i)
{ return operator+=((ULong_t) i); } { return operator+=((ULong_t) i); }
inline TString &TString::operator+=(Double_t f) inline TString &TString::operator+=(Double_t f)
{ char s[32]; sprintf(s, "%.17g", f); return operator+=(s); } {
char s[32];
// coverity[secure_coding] Buffer is large enough: width specified in fo
rmat
sprintf(s, "%.17g", f);
return operator+=(s);
}
inline TString &TString::operator+=(Float_t f) inline TString &TString::operator+=(Float_t f)
{ return operator+=((Double_t) f); } { return operator+=((Double_t) f); }
inline TString &TString::operator+=(Long64_t l) inline TString &TString::operator+=(Long64_t l)
{ char s[32]; sprintf(s, "%lld", l); return operator+=(s); } {
char s[32];
// coverity[secure_coding] Buffer is large enough (2^64 = 20 digits).
sprintf(s, "%lld", l);
return operator+=(s);
}
inline TString &TString::operator+=(ULong64_t ul) inline TString &TString::operator+=(ULong64_t ul)
{ char s[32]; sprintf(s, "%llu", ul); return operator+=(s); } {
char s[32];
// coverity[secure_coding] Buffer is large enough (2^64 = 20 digits).
sprintf(s, "%llu", ul);
return operator+=(s);
}
inline Bool_t TString::BeginsWith(const char *s, ECaseCompare cmp) const inline Bool_t TString::BeginsWith(const char *s, ECaseCompare cmp) const
{ return Index(s, s ? strlen(s) : (Ssiz_t)0, (Ssiz_t)0, cmp) == 0; } { return Index(s, s ? strlen(s) : (Ssiz_t)0, (Ssiz_t)0, cmp) == 0; }
inline Bool_t TString::BeginsWith(const TString &pat, ECaseCompare cmp) con st inline Bool_t TString::BeginsWith(const TString &pat, ECaseCompare cmp) con st
{ return Index(pat.Data(), pat.Length(), (Ssiz_t)0, cmp) == 0; } { return Index(pat.Data(), pat.Length(), (Ssiz_t)0, cmp) == 0; }
inline Bool_t TString::Contains(const TString &pat, ECaseCompare cmp) const inline Bool_t TString::Contains(const TString &pat, ECaseCompare cmp) const
{ return Index(pat.Data(), pat.Length(), (Ssiz_t)0, cmp) != kNPOS; } { return Index(pat.Data(), pat.Length(), (Ssiz_t)0, cmp) != kNPOS; }
skipping to change at line 579 skipping to change at line 616
inline TString &TString::ReplaceAll(const TString &s1, const char *s2) inline TString &TString::ReplaceAll(const TString &s1, const char *s2)
{ return ReplaceAll(s1.Data(), s1.Length(), s2, s2 ? strlen(s2) : 0); } { return ReplaceAll(s1.Data(), s1.Length(), s2, s2 ? strlen(s2) : 0); }
inline TString &TString::ReplaceAll(const char *s1, const TString &s2) inline TString &TString::ReplaceAll(const char *s1, const TString &s2)
{ return ReplaceAll(s1, s1 ? strlen(s1) : 0, s2.Data(), s2.Length()); } { return ReplaceAll(s1, s1 ? strlen(s1) : 0, s2.Data(), s2.Length()); }
inline TString &TString::ReplaceAll(const char *s1,const char *s2) inline TString &TString::ReplaceAll(const char *s1,const char *s2)
{ return ReplaceAll(s1, s1 ? strlen(s1) : 0, s2, s2 ? strlen(s2) : 0); } { return ReplaceAll(s1, s1 ? strlen(s1) : 0, s2, s2 ? strlen(s2) : 0); }
inline char &TString::operator()(Ssiz_t i) inline char &TString::operator()(Ssiz_t i)
{ Cow(); return fData[i]; } { return GetPointer()[i]; }
inline char TString::operator[](Ssiz_t i) const
{ AssertElement(i); return fData[i]; }
inline char TString::operator()(Ssiz_t i) const inline char TString::operator()(Ssiz_t i) const
{ return fData[i]; } { return GetPointer()[i]; }
inline char &TString::operator[](Ssiz_t i)
{ AssertElement(i); return GetPointer()[i]; }
inline char TString::operator[](Ssiz_t i) const
{ AssertElement(i); return GetPointer()[i]; }
inline const char *TSubString::Data() const inline const char *TSubString::Data() const
{ {
// Return a pointer to the beginning of the substring. Note that the // Return a pointer to the beginning of the substring. Note that the
// terminating null is in the same place as for the original // terminating null is in the same place as for the original
// TString, so this method is not appropriate for converting the // TString, so this method is not appropriate for converting the
// TSubString to a string. To do that, construct a TString from the // TSubString to a string. To do that, construct a TString from the
// TSubString. For example: // TSubString. For example:
// //
// root [0] TString s("hello world") // root [0] TString s("hello world")
skipping to change at line 608 skipping to change at line 648
// (const char* 0x857c8b8)"hello world" // (const char* 0x857c8b8)"hello world"
// root [3] TString substr(sub) // root [3] TString substr(sub)
// root [4] substr // root [4] substr
// (class TString)"hello" // (class TString)"hello"
return fStr.Data() + fBegin; return fStr.Data() + fBegin;
} }
// Access to elements of sub-string with bounds checking // Access to elements of sub-string with bounds checking
inline char TSubString::operator[](Ssiz_t i) const inline char TSubString::operator[](Ssiz_t i) const
{ AssertElement(i); return fStr.fData[fBegin+i]; } { AssertElement(i); return fStr.GetPointer()[fBegin+i]; }
inline char TSubString::operator()(Ssiz_t i) const inline char TSubString::operator()(Ssiz_t i) const
{ return fStr.fData[fBegin+i]; } { return fStr.GetPointer()[fBegin+i]; }
inline TSubString &TSubString::operator=(const TSubString &s) inline TSubString &TSubString::operator=(const TSubString &s)
{ fStr = s.fStr; fBegin = s.fBegin; fExtent = s.fExtent; return *this; } { fStr = s.fStr; fBegin = s.fBegin; fExtent = s.fExtent; return *this; }
// String Logical operators // String Logical operators
#if !defined(R__ALPHA)
inline Bool_t operator==(const TString &s1, const TString &s2) inline Bool_t operator==(const TString &s1, const TString &s2)
{ {
return ((s1.Length() == s2.Length()) && return ((s1.Length() == s2.Length()) &&
!memcmp(s1.Data(), s2.Data(), s1.Length())); !memcmp(s1.Data(), s2.Data(), s1.Length()));
} }
#endif
inline Bool_t operator!=(const TString &s1, const TString &s2) inline Bool_t operator!=(const TString &s1, const TString &s2)
{ return !(s1 == s2); } { return !(s1 == s2); }
inline Bool_t operator<(const TString &s1, const TString &s2) inline Bool_t operator<(const TString &s1, const TString &s2)
{ return s1.CompareTo(s2) < 0; } { return s1.CompareTo(s2) < 0; }
inline Bool_t operator>(const TString &s1, const TString &s2) inline Bool_t operator>(const TString &s1, const TString &s2)
{ return s1.CompareTo(s2) > 0; } { return s1.CompareTo(s2) > 0; }
 End of changes. 28 change blocks. 
97 lines changed or deleted 143 lines changed or added


 TStyle.h   TStyle.h 
// @(#)root/base:$Id: TStyle.h 30345 2009-09-22 07:17:46Z brun $ // @(#)root/base:$Id: TStyle.h 38506 2011-03-18 14:08:49Z couet $
// Author: Rene Brun 12/12/94 // Author: Rene Brun 12/12/94
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 81 skipping to change at line 81
Float_t fDateX; //X position of the date in the canvas (in NDC) Float_t fDateX; //X position of the date in the canvas (in NDC)
Float_t fDateY; //Y position of the date in the canvas (in NDC) Float_t fDateY; //Y position of the date in the canvas (in NDC)
Float_t fEndErrorSize; //Size of lines at the end of error ba rs Float_t fEndErrorSize; //Size of lines at the end of error ba rs
Float_t fErrorX; //per cent of bin width for errors alo ng X Float_t fErrorX; //per cent of bin width for errors alo ng X
Color_t fFuncColor; //function color Color_t fFuncColor; //function color
Style_t fFuncStyle; //function style Style_t fFuncStyle; //function style
Width_t fFuncWidth; //function line width Width_t fFuncWidth; //function line width
Color_t fGridColor; //grid line color (if 0 use axis line color) Color_t fGridColor; //grid line color (if 0 use axis line color)
Style_t fGridStyle; //grid line style Style_t fGridStyle; //grid line style
Width_t fGridWidth; //grid line width Width_t fGridWidth; //grid line width
Width_t fLegendBorderSize; //TLegend box border size Width_t fLegendBorderSize; //legend box border size
Color_t fLegendFillColor; //legend fill color
Style_t fLegendFont; //legend font style
Int_t fHatchesLineWidth; //hatches line width for hatch styles > 3100 Int_t fHatchesLineWidth; //hatches line width for hatch styles > 3100
Double_t fHatchesSpacing; //hatches spacing for hatch styles > 3 100 Double_t fHatchesSpacing; //hatches spacing for hatch styles > 3 100
Color_t fFrameFillColor; //pad frame fill color Color_t fFrameFillColor; //pad frame fill color
Color_t fFrameLineColor; //pad frame line color Color_t fFrameLineColor; //pad frame line color
Style_t fFrameFillStyle; //pad frame fill style Style_t fFrameFillStyle; //pad frame fill style
Style_t fFrameLineStyle; //pad frame line style Style_t fFrameLineStyle; //pad frame line style
Width_t fFrameLineWidth; //pad frame line width Width_t fFrameLineWidth; //pad frame line width
Width_t fFrameBorderSize; //pad frame border size Width_t fFrameBorderSize; //pad frame border size
Int_t fFrameBorderMode; //pad frame border mode Int_t fFrameBorderMode; //pad frame border mode
Color_t fHistFillColor; //histogram fill color Color_t fHistFillColor; //histogram fill color
skipping to change at line 200 skipping to change at line 202
Int_t GetCanvasDefX() const {return fCanvasDefX;} Int_t GetCanvasDefX() const {return fCanvasDefX;}
Int_t GetCanvasDefY() const {return fCanvasDefY;} Int_t GetCanvasDefY() const {return fCanvasDefY;}
Int_t GetColorPalette(Int_t i) const; Int_t GetColorPalette(Int_t i) const;
Int_t GetColorModelPS() const {return fColorModelPS;} Int_t GetColorModelPS() const {return fColorModelPS;}
Float_t GetDateX() const {return fDateX;} Float_t GetDateX() const {return fDateX;}
Float_t GetDateY() const {return fDateY;} Float_t GetDateY() const {return fDateY;}
const char *GetFitFormat() const {return fFitFormat.Data();} const char *GetFitFormat() const {return fFitFormat.Data();}
Int_t GetHatchesLineWidth() const {return fHatchesLineWidth;} Int_t GetHatchesLineWidth() const {return fHatchesLineWidth;}
Double_t GetHatchesSpacing() const {return fHatchesSpacing;} Double_t GetHatchesSpacing() const {return fHatchesSpacing;}
Width_t GetLegendBorderSize() const {return fLegendBorderSize ;} Width_t GetLegendBorderSize() const {return fLegendBorderSize ;}
Color_t GetLegendFillColor() const {return fLegendFillColor;}
Style_t GetLegendFont() const {return fLegendFont;}
Int_t GetNumberOfColors() const; Int_t GetNumberOfColors() const;
Color_t GetPadColor() const {return fPadColor;} Color_t GetPadColor() const {return fPadColor;}
Width_t GetPadBorderSize() const {return fPadBorderSize;} Width_t GetPadBorderSize() const {return fPadBorderSize;}
Int_t GetPadBorderMode() const {return fPadBorderMode;} Int_t GetPadBorderMode() const {return fPadBorderMode;}
Float_t GetPadBottomMargin() const {return fPadBottomMargin;} Float_t GetPadBottomMargin() const {return fPadBottomMargin;}
Float_t GetPadTopMargin() const {return fPadTopMargin;} Float_t GetPadTopMargin() const {return fPadTopMargin;}
Float_t GetPadLeftMargin() const {return fPadLeftMargin;} Float_t GetPadLeftMargin() const {return fPadLeftMargin;}
Float_t GetPadRightMargin() const {return fPadRightMargin;} Float_t GetPadRightMargin() const {return fPadRightMargin;}
Bool_t GetPadGridX() const {return fPadGridX;} Bool_t GetPadGridX() const {return fPadGridX;}
Bool_t GetPadGridY() const {return fPadGridY;} Bool_t GetPadGridY() const {return fPadGridY;}
skipping to change at line 331 skipping to change at line 335
void SetCanvasPreferGL(Bool_t prefer = kTRUE) {fCanvasPrefer GL=prefer;} void SetCanvasPreferGL(Bool_t prefer = kTRUE) {fCanvasPrefer GL=prefer;}
void SetDrawBorder(Int_t drawborder=1) {fDrawBorder = drawbo rder;} void SetDrawBorder(Int_t drawborder=1) {fDrawBorder = drawbo rder;}
void SetCanvasColor(Color_t color=19) {fCanvasColor = color; } void SetCanvasColor(Color_t color=19) {fCanvasColor = color; }
void SetCanvasBorderSize(Width_t size=1) {fCanvasBorderSize = size;} void SetCanvasBorderSize(Width_t size=1) {fCanvasBorderSize = size;}
void SetCanvasBorderMode(Int_t mode=1) {fCanvasBorderMode = mode;} void SetCanvasBorderMode(Int_t mode=1) {fCanvasBorderMode = mode;}
void SetCanvasDefH(Int_t h=500) {fCanvasDefH = h;} void SetCanvasDefH(Int_t h=500) {fCanvasDefH = h;}
void SetCanvasDefW(Int_t w=700) {fCanvasDefW = w;} void SetCanvasDefW(Int_t w=700) {fCanvasDefW = w;}
void SetCanvasDefX(Int_t topx=10) {fCanvasDefX = topx;} void SetCanvasDefX(Int_t topx=10) {fCanvasDefX = topx;}
void SetCanvasDefY(Int_t topy=10) {fCanvasDefY = topy;} void SetCanvasDefY(Int_t topy=10) {fCanvasDefY = topy;}
void SetLegendBorderSize(Width_t size=4) {fLegendBorderSize = size;} void SetLegendBorderSize(Width_t size=4) {fLegendBorderSize = size;}
void SetLegendFillColor(Color_t color=0) {fLegendFillColor =
color;}
void SetLegendFont(Style_t font=62) {fLegendFont = font;}
void SetPadColor(Color_t color=19) {fPadColor = color;} void SetPadColor(Color_t color=19) {fPadColor = color;}
void SetPadBorderSize(Width_t size=1) {fPadBorderSize = size ;} void SetPadBorderSize(Width_t size=1) {fPadBorderSize = size ;}
void SetPadBorderMode(Int_t mode=1) {fPadBorderMode = mode;} void SetPadBorderMode(Int_t mode=1) {fPadBorderMode = mode;}
void SetPadBottomMargin(Float_t margin=0.1) {fPadBottomMargi n=margin;} void SetPadBottomMargin(Float_t margin=0.1) {fPadBottomMargi n=margin;}
void SetPadTopMargin(Float_t margin=0.1) {fPadTopMargin=m argin;} void SetPadTopMargin(Float_t margin=0.1) {fPadTopMargin=m argin;}
void SetPadLeftMargin(Float_t margin=0.1) {fPadLeftMargin= margin;} void SetPadLeftMargin(Float_t margin=0.1) {fPadLeftMargin= margin;}
void SetPadRightMargin(Float_t margin=0.1) {fPadRightMargin =margin;} void SetPadRightMargin(Float_t margin=0.1) {fPadRightMargin =margin;}
void SetPadGridX(Bool_t gridx) {fPadGridX = gridx;} void SetPadGridX(Bool_t gridx) {fPadGridX = gridx;}
void SetPadGridY(Bool_t gridy) {fPadGridY = gridy;} void SetPadGridY(Bool_t gridy) {fPadGridY = gridy;}
void SetPadTickX(Int_t tickx) {fPadTickX = tickx;} void SetPadTickX(Int_t tickx) {fPadTickX = tickx;}
skipping to change at line 400 skipping to change at line 406
void SetTitleW(Float_t w=0) {fTitleW=w;} void SetTitleW(Float_t w=0) {fTitleW=w;}
void SetTitleH(Float_t h=0) {fTitleH=h;} void SetTitleH(Float_t h=0) {fTitleH=h;}
void ToggleEventStatus() { fShowEventStatus = fShowEventStat us ? 0 : 1; } void ToggleEventStatus() { fShowEventStatus = fShowEventStat us ? 0 : 1; }
void ToggleEditor() { fShowEditor = fShowEditor ? 0 : 1; } void ToggleEditor() { fShowEditor = fShowEditor ? 0 : 1; }
void ToggleToolBar() { fShowToolBar = fShowToolBar ? 0 : 1; } void ToggleToolBar() { fShowToolBar = fShowToolBar ? 0 : 1; }
void SetIsReading(Bool_t reading=kTRUE); void SetIsReading(Bool_t reading=kTRUE);
void SetPalette(Int_t ncolors=0, Int_t *colors=0); void SetPalette(Int_t ncolors=0, Int_t *colors=0);
void SavePrimitive(ostream &out, Option_t * = ""); void SavePrimitive(ostream &out, Option_t * = "");
void SaveSource(const char *filename, Option_t *option=0); void SaveSource(const char *filename, Option_t *option=0);
ClassDef(TStyle, 13); //A collection of all graphics attributes ClassDef(TStyle, 14); //A collection of all graphics attributes
}; };
R__EXTERN TStyle *gStyle; R__EXTERN TStyle *gStyle;
#endif #endif
 End of changes. 5 change blocks. 
3 lines changed or deleted 10 lines changed or added


 TTree.h   TTree.h 
// @(#)root/tree:$Id: TTree.h 37444 2010-12-09 18:12:26Z pcanal $ // @(#)root/tree:$Id: TTree.h 38741 2011-04-05 18:12:39Z pcanal $
// Author: Rene Brun 12/01/96 // Author: Rene Brun 12/01/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 154 skipping to change at line 154
protected: protected:
void AddClone(TTree*); void AddClone(TTree*);
virtual void KeepCircular(); virtual void KeepCircular();
virtual TBranch *BranchImp(const char* branchname, const char* classname , TClass* ptrClass, void* addobj, Int_t bufsize, Int_t splitlevel); virtual TBranch *BranchImp(const char* branchname, const char* classname , TClass* ptrClass, void* addobj, Int_t bufsize, Int_t splitlevel);
virtual TBranch *BranchImp(const char* branchname, TClass* ptrClass, voi d* addobj, Int_t bufsize, Int_t splitlevel); virtual TBranch *BranchImp(const char* branchname, TClass* ptrClass, voi d* addobj, Int_t bufsize, Int_t splitlevel);
virtual TBranch *BranchImpRef(const char* branchname, const char* classn ame, TClass* ptrClass, void* addobj, Int_t bufsize, Int_t splitlevel); virtual TBranch *BranchImpRef(const char* branchname, const char* classn ame, TClass* ptrClass, void* addobj, Int_t bufsize, Int_t splitlevel);
virtual TBranch *BranchImpRef(const char* branchname, TClass* ptrClass, EDataType datatype, void* addobj, Int_t bufsize, Int_t splitlevel); virtual TBranch *BranchImpRef(const char* branchname, TClass* ptrClass, EDataType datatype, void* addobj, Int_t bufsize, Int_t splitlevel);
virtual Int_t CheckBranchAddressType(TBranch* branch, TClass* ptrClas s, EDataType datatype, Bool_t ptr); virtual Int_t CheckBranchAddressType(TBranch* branch, TClass* ptrClas s, EDataType datatype, Bool_t ptr);
virtual TBranch *BronchExec(const char* name, const char* classname, voi d* addobj, Bool_t isptrptr, Int_t bufsize, Int_t splitlevel); virtual TBranch *BronchExec(const char* name, const char* classname, voi d* addobj, Bool_t isptrptr, Int_t bufsize, Int_t splitlevel);
friend TBranch *TTreeBranchImpRef(TTree *tree, const char* branchname, TClass* ptrClass, EDataType datatype, void* addobj, Int_t bufsize, Int_t sp litlevel); friend TBranch *TTreeBranchImpRef(TTree *tree, const char* branchname, TClass* ptrClass, EDataType datatype, void* addobj, Int_t bufsize, Int_t sp litlevel);
Int_t SetBranchAddressImp(TBranch *branch, void* addr, TBranch** ptr) ;
class TFriendLock { class TFriendLock {
// Helper class to prevent infinite recursion in the // Helper class to prevent infinite recursion in the
// usage of TTree Friends. Implemented in TTree.cxx. // usage of TTree Friends. Implemented in TTree.cxx.
TTree *fTree; // Pointer to the locked tree TTree *fTree; // Pointer to the locked tree
UInt_t fMethodBit; // BIT for the locked method UInt_t fMethodBit; // BIT for the locked method
Bool_t fPrevious; // Previous value of the BIT. Bool_t fPrevious; // Previous value of the BIT.
protected: protected:
TFriendLock(const TFriendLock&); TFriendLock(const TFriendLock&);
TFriendLock& operator=(const TFriendLock&); TFriendLock& operator=(const TFriendLock&);
public: public:
TFriendLock(TTree* tree, UInt_t methodbit); TFriendLock(TTree* tree, UInt_t methodbit);
~TFriendLock(); ~TFriendLock();
}; };
friend class TFriendLock; friend class TFriendLock;
// So that the index class can use TFriendLock:
friend class TTreeIndex;
friend class TChainIndex;
// use to update fFriendLockStatus // use to update fFriendLockStatus
enum ELockStatusBits { enum ELockStatusBits {
kFindBranch = BIT(0), kFindBranch = BIT(0),
kFindLeaf = BIT(1), kFindLeaf = BIT(1),
kGetAlias = BIT(2), kGetAlias = BIT(2),
kGetBranch = BIT(3), kGetBranch = BIT(3),
kGetEntry = BIT(4), kGetEntry = BIT(4),
kGetEntryWithIndex = BIT(5), kGetEntryWithIndex = BIT(5),
kGetFriend = BIT(6), kGetFriend = BIT(6),
skipping to change at line 361 skipping to change at line 365
virtual Int_t GetScanField() const { return fScanField; } virtual Int_t GetScanField() const { return fScanField; }
TTreeFormula *GetSelect() { return GetPlayer()->GetSelect() ; } TTreeFormula *GetSelect() { return GetPlayer()->GetSelect() ; }
virtual Long64_t GetSelectedRows() { return GetPlayer()->GetSelec tedRows(); } virtual Long64_t GetSelectedRows() { return GetPlayer()->GetSelec tedRows(); }
virtual Int_t GetTimerInterval() const { return fTimerInterval ; } virtual Int_t GetTimerInterval() const { return fTimerInterval ; }
virtual Long64_t GetTotBytes() const { return fTotBytes; } virtual Long64_t GetTotBytes() const { return fTotBytes; }
virtual TTree *GetTree() const { return const_cast<TTree*>(this ); } virtual TTree *GetTree() const { return const_cast<TTree*>(this ); }
virtual TVirtualIndex *GetTreeIndex() const { return fTreeIndex; } virtual TVirtualIndex *GetTreeIndex() const { return fTreeIndex; }
virtual Int_t GetTreeNumber() const { return 0; } virtual Int_t GetTreeNumber() const { return 0; }
virtual Int_t GetUpdate() const { return fUpdate; } virtual Int_t GetUpdate() const { return fUpdate; }
virtual TList *GetUserInfo(); virtual TList *GetUserInfo();
// See TSelectorDraw::GetVar
TTreeFormula *GetVar(Int_t i) { return GetPlayer()->GetVar(i) ; } TTreeFormula *GetVar(Int_t i) { return GetPlayer()->GetVar(i) ; }
// See TSelectorDraw::GetVar
TTreeFormula *GetVar1() { return GetPlayer()->GetVar1(); } TTreeFormula *GetVar1() { return GetPlayer()->GetVar1(); }
// See TSelectorDraw::GetVar
TTreeFormula *GetVar2() { return GetPlayer()->GetVar2(); } TTreeFormula *GetVar2() { return GetPlayer()->GetVar2(); }
// See TSelectorDraw::GetVar
TTreeFormula *GetVar3() { return GetPlayer()->GetVar3(); } TTreeFormula *GetVar3() { return GetPlayer()->GetVar3(); }
// See TSelectorDraw::GetVar
TTreeFormula *GetVar4() { return GetPlayer()->GetVar4(); } TTreeFormula *GetVar4() { return GetPlayer()->GetVar4(); }
// See TSelectorDraw::GetVal
virtual Double_t *GetVal(Int_t i) { return GetPlayer()->GetVal(i ); } virtual Double_t *GetVal(Int_t i) { return GetPlayer()->GetVal(i ); }
// See TSelectorDraw::GetVal
virtual Double_t *GetV1() { return GetPlayer()->GetV1(); } virtual Double_t *GetV1() { return GetPlayer()->GetV1(); }
// See TSelectorDraw::GetVal
virtual Double_t *GetV2() { return GetPlayer()->GetV2(); } virtual Double_t *GetV2() { return GetPlayer()->GetV2(); }
// See TSelectorDraw::GetVal
virtual Double_t *GetV3() { return GetPlayer()->GetV3(); } virtual Double_t *GetV3() { return GetPlayer()->GetV3(); }
// See TSelectorDraw::GetVal
virtual Double_t *GetV4() { return GetPlayer()->GetV4(); } virtual Double_t *GetV4() { return GetPlayer()->GetV4(); }
virtual Double_t *GetW() { return GetPlayer()->GetW(); } virtual Double_t *GetW() { return GetPlayer()->GetW(); }
virtual Double_t GetWeight() const { return fWeight; } virtual Double_t GetWeight() const { return fWeight; }
virtual Long64_t GetZipBytes() const { return fZipBytes; } virtual Long64_t GetZipBytes() const { return fZipBytes; }
virtual void IncrementTotalBuffers(Int_t nbytes) { fTotalBuff ers += nbytes; } virtual void IncrementTotalBuffers(Int_t nbytes) { fTotalBuff ers += nbytes; }
Bool_t IsFolder() const { return kTRUE; } Bool_t IsFolder() const { return kTRUE; }
virtual Int_t LoadBaskets(Long64_t maxmemory = 2000000000); virtual Int_t LoadBaskets(Long64_t maxmemory = 2000000000);
virtual Long64_t LoadTree(Long64_t entry); virtual Long64_t LoadTree(Long64_t entry);
virtual Long64_t LoadTreeFriend(Long64_t entry, TTree* T); virtual Long64_t LoadTreeFriend(Long64_t entry, TTree* T);
virtual Int_t MakeClass(const char* classname = 0, Option_t* o ption = ""); virtual Int_t MakeClass(const char* classname = 0, Option_t* o ption = "");
skipping to change at line 420 skipping to change at line 434
virtual Bool_t SetAlias(const char* aliasName, const char* alia sFormula); virtual Bool_t SetAlias(const char* aliasName, const char* alia sFormula);
virtual void SetAutoSave(Long64_t autos = 300000000); virtual void SetAutoSave(Long64_t autos = 300000000);
virtual void SetAutoFlush(Long64_t autof = 30000000); virtual void SetAutoFlush(Long64_t autof = 30000000);
virtual void SetBasketSize(const char* bname, Int_t buffsize = 16000); virtual void SetBasketSize(const char* bname, Int_t buffsize = 16000);
#if !defined(__CINT__) #if !defined(__CINT__)
virtual Int_t SetBranchAddress(const char *bname,void *add, TB ranch **ptr = 0); virtual Int_t SetBranchAddress(const char *bname,void *add, TB ranch **ptr = 0);
#endif #endif
virtual Int_t SetBranchAddress(const char *bname,void *add, TC lass *realClass, EDataType datatype, Bool_t isptr); virtual Int_t SetBranchAddress(const char *bname,void *add, TC lass *realClass, EDataType datatype, Bool_t isptr);
virtual Int_t SetBranchAddress(const char *bname,void *add, TB ranch **ptr, TClass *realClass, EDataType datatype, Bool_t isptr); virtual Int_t SetBranchAddress(const char *bname,void *add, TB ranch **ptr, TClass *realClass, EDataType datatype, Bool_t isptr);
template <class T> Int_t SetBranchAddress(const char *bname, T **add, TB ranch **ptr = 0) { template <class T> Int_t SetBranchAddress(const char *bname, T **add, TB ranch **ptr = 0) {
return SetBranchAddress(bname,add,ptr,TClass::GetClass(typeid(T)),TDa TClass *cl = TClass::GetClass(typeid(T));
taType::GetType(typeid(T)),true); EDataType type = kOther_t;
if (cl==0) type = TDataType::GetType(typeid(T));
return SetBranchAddress(bname,add,ptr,cl,type,true);
} }
#ifndef R__NO_CLASS_TEMPLATE_SPECIALIZATION #ifndef R__NO_CLASS_TEMPLATE_SPECIALIZATION
// This can only be used when the template overload resolution can distr inguish between // This can only be used when the template overload resolution can distr inguish between
// T* and T** // T* and T**
template <class T> Int_t SetBranchAddress(const char *bname, T *add, TBr anch **ptr = 0) { template <class T> Int_t SetBranchAddress(const char *bname, T *add, TBr anch **ptr = 0) {
return SetBranchAddress(bname,add,ptr,TClass::GetClass(typeid(T)),TDa TClass *cl = TClass::GetClass(typeid(T));
taType::GetType(typeid(T)),false); EDataType type = kOther_t;
if (cl==0) type = TDataType::GetType(typeid(T));
return SetBranchAddress(bname,add,ptr,cl,type,false);
} }
#endif #endif
virtual void SetBranchStatus(const char* bname, Bool_t status = 1, UInt_t* found = 0); virtual void SetBranchStatus(const char* bname, Bool_t status = 1, UInt_t* found = 0);
static void SetBranchStyle(Int_t style = 1); //style=0 for old branch, =1 for new branch style static void SetBranchStyle(Int_t style = 1); //style=0 for old branch, =1 for new branch style
virtual void SetCacheSize(Long64_t cachesize = -1); virtual void SetCacheSize(Long64_t cachesize = -1);
virtual void SetCacheEntryRange(Long64_t first, Long64_t last ); virtual void SetCacheEntryRange(Long64_t first, Long64_t last );
virtual void SetCacheLearnEntries(Int_t n=10); virtual void SetCacheLearnEntries(Int_t n=10);
virtual void SetChainOffset(Long64_t offset = 0) { fChainOffs et=offset; } virtual void SetChainOffset(Long64_t offset = 0) { fChainOffs et=offset; }
virtual void SetCircular(Long64_t maxEntries); virtual void SetCircular(Long64_t maxEntries);
virtual void SetDebug(Int_t level = 1, Long64_t min = 0, Long 64_t max = 9999999); // *MENU* virtual void SetDebug(Int_t level = 1, Long64_t min = 0, Long 64_t max = 9999999); // *MENU*
 End of changes. 15 change blocks. 
5 lines changed or deleted 23 lines changed or added


 TTreeCloner.h   TTreeCloner.h 
// @(#)root/tree:$Id: TTreeCloner.h 29413 2009-07-09 14:10:29Z pcanal $ // @(#)root/tree:$Id: TTreeCloner.h 37921 2011-01-31 22:20:01Z pcanal $
// Author: Philippe Canal 07/11/2005 // Author: Philippe Canal 07/11/2005
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 91 skipping to change at line 91
CompareEntry(TTreeCloner *obj) : fObject(obj) {} CompareEntry(TTreeCloner *obj) : fObject(obj) {}
bool operator()(UInt_t i1, UInt_t i2); bool operator()(UInt_t i1, UInt_t i2);
}; };
friend class CompareSeek; friend class CompareSeek;
friend class CompareEntry; friend class CompareEntry;
public: public:
enum EClonerOptions { enum EClonerOptions {
kNone = 0, kNone = 0,
kNoWarnings = BIT(1) kNoWarnings = BIT(1),
kIgnoreMissingTopLevel = BIT(2)
}; };
TTreeCloner(TTree *from, TTree *to, Option_t *method, UInt_t options = k None); TTreeCloner(TTree *from, TTree *to, Option_t *method, UInt_t options = k None);
virtual ~TTreeCloner(); virtual ~TTreeCloner();
void CloseOutWriteBaskets(); void CloseOutWriteBaskets();
UInt_t CollectBranches(TBranch *from, TBranch *to); UInt_t CollectBranches(TBranch *from, TBranch *to);
UInt_t CollectBranches(TObjArray *from, TObjArray *to); UInt_t CollectBranches(TObjArray *from, TObjArray *to);
UInt_t CollectBranches(); UInt_t CollectBranches();
void CollectBaskets(); void CollectBaskets();
 End of changes. 2 change blocks. 
2 lines changed or deleted 3 lines changed or added


 TTreeIndex.h   TTreeIndex.h 
// @(#)root/treeplayer:$Id: TTreeIndex.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/treeplayer:$Id: TTreeIndex.h 38496 2011-03-18 10:04:01Z pcanal $
// Author: Rene Brun 05/07/2004 // Author: Rene Brun 05/07/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 48 skipping to change at line 48
TTreeFormula *fMajorFormula; //! Pointer to major TreeFormula TTreeFormula *fMajorFormula; //! Pointer to major TreeFormula
TTreeFormula *fMinorFormula; //! Pointer to minor TreeFormula TTreeFormula *fMinorFormula; //! Pointer to minor TreeFormula
TTreeFormula *fMajorFormulaParent; //! Pointer to major TreeFormula in Parent tree (if any) TTreeFormula *fMajorFormulaParent; //! Pointer to major TreeFormula in Parent tree (if any)
TTreeFormula *fMinorFormulaParent; //! Pointer to minor TreeFormula in Parent tree (if any) TTreeFormula *fMinorFormulaParent; //! Pointer to minor TreeFormula in Parent tree (if any)
public: public:
TTreeIndex(); TTreeIndex();
TTreeIndex(const TTree *T, const char *majorname, const char *minorname) ; TTreeIndex(const TTree *T, const char *majorname, const char *minorname) ;
virtual ~TTreeIndex(); virtual ~TTreeIndex();
virtual void Append(const TVirtualIndex *,Bool_t delaySort = k FALSE); virtual void Append(const TVirtualIndex *,Bool_t delaySort = k FALSE);
virtual Int_t GetEntryNumberFriend(const TTree *T); virtual Long64_t GetEntryNumberFriend(const TTree *parent);
virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const; virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const;
virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const; virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const;
virtual Long64_t *GetIndexValues() const {return fIndexValues;} virtual Long64_t *GetIndexValues() const {return fIndexValues;}
virtual Long64_t *GetIndex() const {return fIndex;} virtual Long64_t *GetIndex() const {return fIndex;}
const char *GetMajorName() const {return fMajorName.Data() ;} const char *GetMajorName() const {return fMajorName.Data() ;}
const char *GetMinorName() const {return fMinorName.Data() ;} const char *GetMinorName() const {return fMinorName.Data() ;}
virtual Long64_t GetN() const {return fN;} virtual Long64_t GetN() const {return fN;}
virtual TTreeFormula *GetMajorFormula(); virtual TTreeFormula *GetMajorFormula();
virtual TTreeFormula *GetMinorFormula(); virtual TTreeFormula *GetMinorFormula();
virtual TTreeFormula *GetMajorFormulaParent(const TTree *T); virtual TTreeFormula *GetMajorFormulaParent(const TTree *parent);
virtual TTreeFormula *GetMinorFormulaParent(const TTree *T); virtual TTreeFormula *GetMinorFormulaParent(const TTree *parent);
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual void UpdateFormulaLeaves(const TTree *parent); virtual void UpdateFormulaLeaves(const TTree *parent);
virtual void SetTree(const TTree *T); virtual void SetTree(const TTree *T);
ClassDef(TTreeIndex,1); //A Tree Index with majorname and minorname. ClassDef(TTreeIndex,1); //A Tree Index with majorname and minorname.
}; };
#endif #endif
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 TTreePerfStats.h   TTreePerfStats.h 
// @(#)root/treeplayer:$Id: TTreePerfStats.h 31417 2009-11-25 14:07:51Z bru n $ // @(#)root/treeplayer:$Id: TTreePerfStats.h 38055 2011-02-11 22:06:25Z pca nal $
// Author: Rene Brun 29/10/09 // Author: Rene Brun 29/10/09
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2009, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2009, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 51 skipping to change at line 51
Int_t fTreeCacheSize; //TTreeCache buffer size Int_t fTreeCacheSize; //TTreeCache buffer size
Int_t fNleaves; //Number of leaves in the tree Int_t fNleaves; //Number of leaves in the tree
Int_t fReadCalls; //Number of read calls Int_t fReadCalls; //Number of read calls
Int_t fReadaheadSize; //Readahead cache size Int_t fReadaheadSize; //Readahead cache size
Long64_t fBytesRead; //Number of bytes read Long64_t fBytesRead; //Number of bytes read
Long64_t fBytesReadExtra;//Number of bytes (overhead) of the readah ead cache Long64_t fBytesReadExtra;//Number of bytes (overhead) of the readah ead cache
Double_t fRealNorm; //Real time scale factor for fGraphTime Double_t fRealNorm; //Real time scale factor for fGraphTime
Double_t fRealTime; //Real time Double_t fRealTime; //Real time
Double_t fCpuTime; //Cpu time Double_t fCpuTime; //Cpu time
Double_t fDiskTime; //Time spent in pure raw disk IO Double_t fDiskTime; //Time spent in pure raw disk IO
Double_t fUnzipTime; //Time spent uncompressing the data.
Double_t fCompress; //Tree compression factor Double_t fCompress; //Tree compression factor
TString fName; //name of this TTreePerfStats TString fName; //name of this TTreePerfStats
TString fHostInfo; //name of the host system, ROOT version an d date TString fHostInfo; //name of the host system, ROOT version an d date
TFile *fFile; //!pointer to the file containing the Tree TFile *fFile; //!pointer to the file containing the Tree
TTree *fTree; //!pointer to the Tree being monitored TTree *fTree; //!pointer to the Tree being monitored
TGraphErrors *fGraphIO ; //pointer to the graph with IO data TGraphErrors *fGraphIO ; //pointer to the graph with IO data
TGraphErrors *fGraphTime ; //pointer to the graph with timestamp info TGraphErrors *fGraphTime ; //pointer to the graph with timestamp info
TPaveText *fPave; //pointer to annotation pavetext TPaveText *fPave; //pointer to annotation pavetext
TStopwatch *fWatch; //TStopwatch pointer TStopwatch *fWatch; //TStopwatch pointer
TGaxis *fRealTimeAxis; //pointer to TGaxis object showing real-ti me TGaxis *fRealTimeAxis; //pointer to TGaxis object showing real-ti me
skipping to change at line 88 skipping to change at line 89
const char *GetHostInfo() const{return fHostInfo.Data();} const char *GetHostInfo() const{return fHostInfo.Data();}
const char *GetName() const{return fName.Data();} const char *GetName() const{return fName.Data();}
virtual Int_t GetNleaves() const {return fNleaves;} virtual Int_t GetNleaves() const {return fNleaves;}
virtual Long64_t GetNumEvents() const {return 0;} virtual Long64_t GetNumEvents() const {return 0;}
TPaveText *GetPave() {return fPave;} TPaveText *GetPave() {return fPave;}
virtual Int_t GetReadaheadSize() const {return fReadaheadSize;} virtual Int_t GetReadaheadSize() const {return fReadaheadSize;}
virtual Int_t GetReadCalls() const {return fReadCalls;} virtual Int_t GetReadCalls() const {return fReadCalls;}
virtual Double_t GetRealTime() const {return fRealTime;} virtual Double_t GetRealTime() const {return fRealTime;}
TStopwatch *GetStopwatch() const {return fWatch;} TStopwatch *GetStopwatch() const {return fWatch;}
virtual Int_t GetTreeCacheSize() const {return fTreeCacheSize;} virtual Int_t GetTreeCacheSize() const {return fTreeCacheSize;}
virtual Double_t GetUnzipTime() const {return fUnzipTime; }
virtual void Paint(Option_t *chopt=""); virtual void Paint(Option_t *chopt="");
virtual void Print(Option_t *option="") const; virtual void Print(Option_t *option="") const;
virtual void SimpleEvent(EEventType) {} virtual void SimpleEvent(EEventType) {}
virtual void PacketEvent(const char *, const char *, const char *, virtual void PacketEvent(const char *, const char *, const char *,
Long64_t , Double_t ,Double_t , Double_t ,Long6 4_t ) {} Long64_t , Double_t ,Double_t , Double_t ,Long6 4_t ) {}
virtual void FileEvent(const char *, const char *, const char *, con st char *, Bool_t) {} virtual void FileEvent(const char *, const char *, const char *, con st char *, Bool_t) {}
virtual void FileOpenEvent(TFile *, const char *, Double_t) {} virtual void FileOpenEvent(TFile *, const char *, Double_t) {}
virtual void FileReadEvent(TFile *file, Int_t len, Double_t start); virtual void FileReadEvent(TFile *file, Int_t len, Double_t start);
virtual void FileUnzipEvent(TFile *file, Long64_t pos, Double_t star t, Int_t complen, Int_t objlen);
virtual void RateEvent(Double_t , Double_t , Long64_t , Long64_t) {} virtual void RateEvent(Double_t , Double_t , Long64_t , Long64_t) {}
virtual void SaveAs(const char *filename="",Option_t *option="") con st; virtual void SaveAs(const char *filename="",Option_t *option="") con st;
virtual void SavePrimitive(ostream &out, Option_t *option = ""); virtual void SavePrimitive(ostream &out, Option_t *option = "");
virtual void SetBytesRead(Long64_t nbytes) {fBytesRead = nbytes;} virtual void SetBytesRead(Long64_t nbytes) {fBytesRead = nbytes;}
virtual void SetBytesReadExtra(Long64_t nbytes) {fBytesReadExtra = n bytes;} virtual void SetBytesReadExtra(Long64_t nbytes) {fBytesReadExtra = n bytes;}
virtual void SetCompress(Double_t cx) {fCompress = cx;} virtual void SetCompress(Double_t cx) {fCompress = cx;}
virtual void SetDiskTime(Double_t t) {fDiskTime = t;} virtual void SetDiskTime(Double_t t) {fDiskTime = t;}
virtual void SetNumEvents(Long64_t) {} virtual void SetNumEvents(Long64_t) {}
virtual void SetCpuTime(Double_t cptime) {fCpuTime = cptime;} virtual void SetCpuTime(Double_t cptime) {fCpuTime = cptime;}
virtual void SetGraphIO(TGraphErrors *gr) {fGraphIO = gr;} virtual void SetGraphIO(TGraphErrors *gr) {fGraphIO = gr;}
virtual void SetGraphTime(TGraphErrors *gr) {fGraphTime = gr;} virtual void SetGraphTime(TGraphErrors *gr) {fGraphTime = gr;}
virtual void SetHostInfo(const char *info) {fHostInfo = info;} virtual void SetHostInfo(const char *info) {fHostInfo = info;}
virtual void SetName(const char *name) {fName = name;} virtual void SetName(const char *name) {fName = name;}
virtual void SetNleaves(Int_t nleaves) {fNleaves = nleaves;} virtual void SetNleaves(Int_t nleaves) {fNleaves = nleaves;}
virtual void SetReadaheadSize(Int_t nbytes) {fReadaheadSize = nbytes ;} virtual void SetReadaheadSize(Int_t nbytes) {fReadaheadSize = nbytes ;}
virtual void SetReadCalls(Int_t ncalls) {fReadCalls = ncalls;} virtual void SetReadCalls(Int_t ncalls) {fReadCalls = ncalls;}
virtual void SetRealNorm(Double_t rnorm) {fRealNorm = rnorm;} virtual void SetRealNorm(Double_t rnorm) {fRealNorm = rnorm;}
virtual void SetRealTime(Double_t rtime) {fRealTime = rtime;} virtual void SetRealTime(Double_t rtime) {fRealTime = rtime;}
virtual void SetTreeCacheSize(Int_t nbytes) {fTreeCacheSize = nbytes ;} virtual void SetTreeCacheSize(Int_t nbytes) {fTreeCacheSize = nbytes ;}
virtual void SetUnzipTime(Double_t uztime) {fUnzipTime = uztime;}
ClassDef(TTreePerfStats,1) // TTree I/O performance measurement ClassDef(TTreePerfStats,1) // TTree I/O performance measurement
}; };
#endif #endif
 End of changes. 5 change blocks. 
1 lines changed or deleted 5 lines changed or added


 TTreePlayer.h   TTreePlayer.h 
// @(#)root/treeplayer:$Id: TTreePlayer.h 31561 2009-12-04 16:31:47Z brun $ // @(#)root/treeplayer:$Id: TTreePlayer.h 38741 2011-04-05 18:12:39Z pcanal $
// Author: Rene Brun 12/01/96 // Author: Rene Brun 12/01/96
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 90 skipping to change at line 90
virtual Int_t GetDimension() const {return fDimension;} virtual Int_t GetDimension() const {return fDimension;}
TH1 *GetHistogram() const {return fHistogram;} TH1 *GetHistogram() const {return fHistogram;}
virtual Long64_t GetEntries(const char *selection); virtual Long64_t GetEntries(const char *selection);
virtual Long64_t GetEntriesToProcess(Long64_t firstentry, Long64_t nent ries) const; virtual Long64_t GetEntriesToProcess(Long64_t firstentry, Long64_t nent ries) const;
virtual Int_t GetNfill() const {return fSelector->GetNfill();} virtual Int_t GetNfill() const {return fSelector->GetNfill();}
const char *GetScanFileName() const {return fScanFileName;} const char *GetScanFileName() const {return fScanFileName;}
TTreeFormula *GetSelect() const {return fSelector->GetSelect();} TTreeFormula *GetSelect() const {return fSelector->GetSelect();}
virtual Long64_t GetSelectedRows() const {return fSelectedRows;} virtual Long64_t GetSelectedRows() const {return fSelectedRows;}
TSelector *GetSelector() const {return fSelector;} TSelector *GetSelector() const {return fSelector;}
TSelector *GetSelectorFromFile() const {return fSelectorFromFile; } TSelector *GetSelectorFromFile() const {return fSelectorFromFile; }
// See TSelectorDraw::GetVar
TTreeFormula *GetVar(Int_t i) const {return fSelector->GetVar(i);}; TTreeFormula *GetVar(Int_t i) const {return fSelector->GetVar(i);};
// See TSelectorDraw::GetVar
TTreeFormula *GetVar1() const {return fSelector->GetVar1();} TTreeFormula *GetVar1() const {return fSelector->GetVar1();}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar2() const {return fSelector->GetVar2();} TTreeFormula *GetVar2() const {return fSelector->GetVar2();}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar3() const {return fSelector->GetVar3();} TTreeFormula *GetVar3() const {return fSelector->GetVar3();}
// See TSelectorDraw::GetVar
TTreeFormula *GetVar4() const {return fSelector->GetVar4();} TTreeFormula *GetVar4() const {return fSelector->GetVar4();}
// See TSelectorDraw::GetVal
virtual Double_t *GetVal(Int_t i) const {return fSelector->GetVal(i);}; virtual Double_t *GetVal(Int_t i) const {return fSelector->GetVal(i);};
// See TSelectorDraw::GetVal
virtual Double_t *GetV1() const {return fSelector->GetV1();} virtual Double_t *GetV1() const {return fSelector->GetV1();}
// See TSelectorDraw::GetVal
virtual Double_t *GetV2() const {return fSelector->GetV2();} virtual Double_t *GetV2() const {return fSelector->GetV2();}
// See TSelectorDraw::GetVal
virtual Double_t *GetV3() const {return fSelector->GetV3();} virtual Double_t *GetV3() const {return fSelector->GetV3();}
// See TSelectorDraw::GetVal
virtual Double_t *GetV4() const {return fSelector->GetV4();} virtual Double_t *GetV4() const {return fSelector->GetV4();}
virtual Double_t *GetW() const {return fSelector->GetW();} virtual Double_t *GetW() const {return fSelector->GetW();}
virtual Int_t MakeClass(const char *classname, Option_t *option); virtual Int_t MakeClass(const char *classname, Option_t *option);
virtual Int_t MakeCode(const char *filename); virtual Int_t MakeCode(const char *filename);
virtual Int_t MakeProxy(const char *classname, virtual Int_t MakeProxy(const char *classname,
const char *macrofilename = 0, const char *c utfilename = 0, const char *macrofilename = 0, const char *c utfilename = 0,
const char *option = 0, Int_t maxUnrolling = 3); const char *option = 0, Int_t maxUnrolling = 3);
TPrincipal *Principal(const char *varexp, const char *selection, O ption_t *option TPrincipal *Principal(const char *varexp, const char *selection, O ption_t *option
,Long64_t nentries, Long64_t firstentry); ,Long64_t nentries, Long64_t firstentry);
virtual Long64_t Process(const char *filename,Option_t *option, Long64_ t nentries, Long64_t firstentry); virtual Long64_t Process(const char *filename,Option_t *option, Long64_ t nentries, Long64_t firstentry);
 End of changes. 11 change blocks. 
1 lines changed or deleted 11 lines changed or added


 TVirtualDragManager.h   TVirtualDragManager.h 
skipping to change at line 48 skipping to change at line 48
TGFrame *fTarget; // drop target TGFrame *fTarget; // drop target
TGFrame *fPasteFrame; // TGFrame *fPasteFrame; //
protected: protected:
virtual void Init(); virtual void Init();
public: public:
TVirtualDragManager(); TVirtualDragManager();
virtual ~TVirtualDragManager() {} virtual ~TVirtualDragManager() {}
EDragType GetDragType() const { return fDragType; } EDragType GetEDragType() const { return fDragType; }
Bool_t IsMoveWaiting() const { return fMoveWaiting; } Bool_t IsMoveWaiting() const { return fMoveWaiting; }
Bool_t IsDragging() const { return fDragging; } Bool_t IsDragging() const { return fDragging; }
Bool_t IsDropping() const { return fDropping; } Bool_t IsDropping() const { return fDropping; }
Bool_t IsPasting() const { return fPasting; } Bool_t IsPasting() const { return fPasting; }
TGFrame *GetTarget() const { return fTarget; } TGFrame *GetTarget() const { return fTarget; }
TGFrame *GetSource() const { return fSource; } TGFrame *GetSource() const { return fSource; }
TGFrame *GetFrameUnder() const { return fFrameUnder; } TGFrame *GetFrameUnder() const { return fFrameUnder; }
TGFrame *GetPasteFrame() const { return fPasteFrame; } TGFrame *GetPasteFrame() const { return fPasteFrame; }
virtual void SetTarget(TGFrame *f) { fTarget = f; } virtual void SetTarget(TGFrame *f) { fTarget = f; }
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 TVirtualIndex.h   TVirtualIndex.h 
// @(#)root/tree:$Id: TVirtualIndex.h 20882 2007-11-19 11:31:26Z rdm $ // @(#)root/tree:$Id: TVirtualIndex.h 38496 2011-03-18 10:04:01Z pcanal $
// Author: Rene Brun 05/07/2004 // Author: Rene Brun 05/07/2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 38 skipping to change at line 38
class TVirtualIndex : public TNamed { class TVirtualIndex : public TNamed {
protected: protected:
TTree *fTree; //! pointer to Tree TTree *fTree; //! pointer to Tree
public: public:
TVirtualIndex(); TVirtualIndex();
virtual ~TVirtualIndex(); virtual ~TVirtualIndex();
virtual void Append(const TVirtualIndex *,Bool_t delaySort = k FALSE) = 0; virtual void Append(const TVirtualIndex *,Bool_t delaySort = k FALSE) = 0;
virtual Int_t GetEntryNumberFriend(const TTree * /*T*/) = 0; virtual Long64_t GetEntryNumberFriend(const TTree * /*parent*/) = 0;
virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const = 0; virtual Long64_t GetEntryNumberWithIndex(Int_t major, Int_t minor) const = 0;
virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const = 0; virtual Long64_t GetEntryNumberWithBestIndex(Int_t major, Int_t mi nor) const = 0;
virtual const char *GetMajorName() const = 0; virtual const char *GetMajorName() const = 0;
virtual const char *GetMinorName() const = 0; virtual const char *GetMinorName() const = 0;
virtual Long64_t GetN() const = 0; virtual Long64_t GetN() const = 0;
virtual TTree *GetTree() const {return fTree;} virtual TTree *GetTree() const {return fTree;}
virtual void UpdateFormulaLeaves(const TTree *parent) = 0; virtual void UpdateFormulaLeaves(const TTree *parent) = 0;
virtual void SetTree(const TTree *T) = 0; virtual void SetTree(const TTree *T) = 0;
ClassDef(TVirtualIndex,1); //Abstract interface for Tree Index ClassDef(TVirtualIndex,1); //Abstract interface for Tree Index
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TVirtualMC.h   TVirtualMC.h 
// @(#)root/vmc:$Name: $:$Id: TVirtualMC.h 34836 2010-08-18 09:52:27Z ivan a $ // @(#)root/vmc:$Name: $:$Id: TVirtualMC.h 38344 2011-03-09 17:03:14Z ivan a $
// Authors: Ivana Hrivnacova, Rene Brun, Federico Carminati 13/04/2002 // Authors: Ivana Hrivnacova, Rene Brun, Federico Carminati 13/04/2002
/************************************************************************* /*************************************************************************
* Copyright (C) 2006, Rene Brun and Fons Rademakers. * * Copyright (C) 2006, Rene Brun and Fons Rademakers. *
* Copyright (C) 2002, ALICE Experiment at CERN. * * Copyright (C) 2002, ALICE Experiment at CERN. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 74 skipping to change at line 74
// Info about supporting geometry defined via Root // Info about supporting geometry defined via Root
virtual Bool_t IsRootGeometrySupported() const { return kFALSE; } virtual Bool_t IsRootGeometrySupported() const { return kFALSE; }
// make this function =0 with next release // make this function =0 with next release
// //
// functions from GCONS // functions from GCONS
// ------------------------------------------------ // ------------------------------------------------
// //
// Return parameters for material specified by material number imat // Return parameters for material specified by material number imat
// Deprecated - replaced with GetMaterial()
virtual void Gfmate(Int_t imat, char *name, Float_t &a, Float_t &z, virtual void Gfmate(Int_t imat, char *name, Float_t &a, Float_t &z,
Float_t &dens, Float_t &radl, Float_t &absl, Float_t &dens, Float_t &radl, Float_t &absl,
Float_t* ubuf, Int_t& nbuf) = 0; Float_t* ubuf, Int_t& nbuf) = 0;
// Return parameters for material specified by material number imat // Return parameters for material specified by material number imat
// (in double precision) // (in double precision)
// Deprecated - replaced with GetMaterial()
virtual void Gfmate(Int_t imat, char *name, Double_t &a, Double_t &z, virtual void Gfmate(Int_t imat, char *name, Double_t &a, Double_t &z,
Double_t &dens, Double_t &radl, Double_t &absl, Double_t &dens, Double_t &radl, Double_t &absl,
Double_t* ubuf, Int_t& nbuf) = 0; Double_t* ubuf, Int_t& nbuf) = 0;
// Check the parameters of a tracking medium // Check the parameters of a tracking medium
// Deprecated
virtual void Gckmat(Int_t imed, char* name) = 0; virtual void Gckmat(Int_t imed, char* name) = 0;
// Define a material // Define a material
// kmat number assigned to the material // kmat number assigned to the material
// name material name // name material name
// a atomic mass in au // a atomic mass in au
// z atomic number // z atomic number
// dens density in g/cm3 // dens density in g/cm3
// absl absorption length in cm; // absl absorption length in cm;
// if >=0 it is ignored and the program // if >=0 it is ignored and the program
skipping to change at line 380 skipping to change at line 383
// Return the transformation matrix between the volume specified by // Return the transformation matrix between the volume specified by
// the path volumePath and the top or master volume. // the path volumePath and the top or master volume.
virtual Bool_t GetTransformation(const TString& volumePath, virtual Bool_t GetTransformation(const TString& volumePath,
TGeoHMatrix& matrix) = 0; TGeoHMatrix& matrix) = 0;
// Return the name of the shape (shapeType) and its parameters par // Return the name of the shape (shapeType) and its parameters par
// for the volume specified by the path volumePath . // for the volume specified by the path volumePath .
virtual Bool_t GetShape(const TString& volumePath, virtual Bool_t GetShape(const TString& volumePath,
TString& shapeType, TArrayD& par) = 0; TString& shapeType, TArrayD& par) = 0;
// Return the material parameters for the material specified by
// the material Id - NEW
virtual Bool_t GetMaterial(Int_t imat, TString& name,
Double_t& a, Double_t& z, Double_t& density,
Double_t& radl, Double_t& inter, TArrayD& pa
r);
// Return the material parameters for the volume specified by // Return the material parameters for the volume specified by
// the volumeName. // the volumeName.
virtual Bool_t GetMaterial(const TString& volumeName, virtual Bool_t GetMaterial(const TString& volumeName,
TString& name, Int_t& imat, TString& name, Int_t& imat,
Double_t& a, Double_t& z, Double_t& density, Double_t& a, Double_t& z, Double_t& density,
Double_t& radl, Double_t& inter, TArrayD& pa r) = 0; Double_t& radl, Double_t& inter, TArrayD& pa r) = 0;
// Return the medium parameters for the volume specified by the // Return the medium parameters for the volume specified by the
// volumeName. // volumeName.
virtual Bool_t GetMedium(const TString& volumeName, virtual Bool_t GetMedium(const TString& volumeName,
TString& name, Int_t& imed, TString& name, Int_t& imed,
Int_t& nmat, Int_t& isvol, Int_t& ifield, Int_t& nmat, Int_t& isvol, Int_t& ifield,
Double_t& fieldm, Double_t& tmaxfd, Double_t& stemax, Double_t& fieldm, Double_t& tmaxfd, Double_t& stemax,
Double_t& deemax, Double_t& epsil, Double_t& s tmin, Double_t& deemax, Double_t& epsil, Double_t& s tmin,
TArrayD& par) = 0; TArrayD& par) = 0;
//
// functions for drawing
// to be removed with complete move to TGeo
// ------------------------------------------------
//
// Deprecated - Geant3
virtual void DrawOneSpec(const char* name) = 0;
// Deprecated - Geant3
virtual void Gsatt(const char* name, const char* att, Int_t val) = 0;
// Deprecated - Geant3
virtual void Gdraw(const char*,Double_t theta = 30, Double_t phi = 30,
Double_t psi = 0, Double_t u0 = 10, Double_t v0 = 1
0,
Double_t ul = 0.01, Double_t vl = 0.01) = 0;
// Write out the geometry of the detector in EUCLID file format // Write out the geometry of the detector in EUCLID file format
// filnam file name - will be with the extension .euc * // filnam file name - will be with the extension .euc *
// topvol volume name of the starting node // topvol volume name of the starting node
// number copy number of topvol (relevant for gsposp) // number copy number of topvol (relevant for gsposp)
// nlevel number of levels in the tree structure // nlevel number of levels in the tree structure
// to be written out, starting from topvol // to be written out, starting from topvol
// (Geant3 only) // (Geant3 only)
// Deprecated
virtual void WriteEuclid(const char* filnam, const char* topvol, virtual void WriteEuclid(const char* filnam, const char* topvol,
Int_t number, Int_t nlevel) = 0; Int_t number, Int_t nlevel) = 0;
// Set geometry from Root (built via TGeo) // Set geometry from Root (built via TGeo)
virtual void SetRootGeometry() = 0; virtual void SetRootGeometry() = 0;
// Activate the parameters defined in tracking media // Activate the parameters defined in tracking media
// (DEEMAX, STMIN, STEMAX), which are, be default, ignored. // (DEEMAX, STMIN, STEMAX), which are, be default, ignored.
// In Geant4 case, only STEMAX is taken into account. // In Geant4 case, only STEMAX is taken into account.
// In FLUKA, all tracking media parameters are ignored. // In FLUKA, all tracking media parameters are ignored.
skipping to change at line 562 skipping to change at line 557
// Set a user phase space decay for a particle // Set a user phase space decay for a particle
// pdg particle PDG encoding // pdg particle PDG encoding
// bratios the array with branching ratios (in %) // bratios the array with branching ratios (in %)
// mode[6][3] the array with daughters particles PDG codes for eac h // mode[6][3] the array with daughters particles PDG codes for eac h
// decay channel // decay channel
virtual Bool_t SetDecayMode(Int_t pdg, Float_t bratio[6], Int_t mode[6 ][3]) = 0; virtual Bool_t SetDecayMode(Int_t pdg, Float_t bratio[6], Int_t mode[6 ][3]) = 0;
// Calculate X-sections // Calculate X-sections
// (Geant3 only) // (Geant3 only)
// Deprecated
virtual Double_t Xsec(char*, Double_t, Int_t, Int_t) = 0; virtual Double_t Xsec(char*, Double_t, Int_t, Int_t) = 0;
// //
// particle table usage // particle table usage
// ------------------------------------------------ // ------------------------------------------------
// //
// Return MC specific code from a PDG and pseudo ENDF code (pdg) // Return MC specific code from a PDG and pseudo ENDF code (pdg)
virtual Int_t IdFromPDG(Int_t pdg) const =0; virtual Int_t IdFromPDG(Int_t pdg) const =0;
skipping to change at line 655 skipping to change at line 651
virtual const char* CurrentVolName() const =0; virtual const char* CurrentVolName() const =0;
// Return the current volume off upward in the geometrical tree // Return the current volume off upward in the geometrical tree
// name and copy number' // name and copy number'
// if name=0 no name is returned // if name=0 no name is returned
virtual const char* CurrentVolOffName(Int_t off) const =0; virtual const char* CurrentVolOffName(Int_t off) const =0;
// Return the path in geometry tree for the current volume // Return the path in geometry tree for the current volume
virtual const char* CurrentVolPath() = 0; virtual const char* CurrentVolPath() = 0;
// If track is on a geometry boundary, fill the normal vector of the cro // If track is on a geometry boundary, fill the normal vector of the cro
ssing volume ssing
// surface and return true, return false otherwise // volume surface and return true, return false otherwise - NEW
virtual Bool_t CurrentBoundaryNormal(Double_t &x, Double_t &y, Double_t virtual Bool_t CurrentBoundaryNormal(
&z) const; Double_t &x, Double_t &y, Double_t &z) const;
// Return the parameters of the current material during transport // Return the parameters of the current material during transport
virtual Int_t CurrentMaterial(Float_t &a, Float_t &z, virtual Int_t CurrentMaterial(Float_t &a, Float_t &z,
Float_t &dens, Float_t &radl, Float_t &absl) const = 0; Float_t &dens, Float_t &radl, Float_t &absl) const = 0;
// Return the number of the current medium // Return the number of the current medium
virtual Int_t CurrentMedium() const = 0; virtual Int_t CurrentMedium() const = 0;
// new function (to replace GetMedium() const) // new function (to replace GetMedium() const)
// Return the number of the current event // Return the number of the current event
skipping to change at line 812 skipping to change at line 809
// Return the array of the VMC code of the processes active in the curre nt // Return the array of the VMC code of the processes active in the curre nt
// step // step
virtual Int_t StepProcesses(TArrayI &proc) const = 0; virtual Int_t StepProcesses(TArrayI &proc) const = 0;
// Return the information about the transport order needed by the stack // Return the information about the transport order needed by the stack
virtual Bool_t SecondariesAreOrdered() const = 0; virtual Bool_t SecondariesAreOrdered() const = 0;
// //
// ------------------------------------------------ // ------------------------------------------------
// Geant3 specific methods
// !!! to be removed with move to TGeo
// ------------------------------------------------
//
// Set/modify the drawing options.
// Deprecated - G3 only
virtual void Gdopt(const char*,const char*) = 0;
// This function allows subtractions (via boolean operation) of BOX shap
e
// from any part of the detector, therefore showing its inner contents
// Deprecated - G3 only
virtual void SetClipBox(const char*,Double_t=-9999,Double_t=0, Double_t=
-9999,
Double_t=0,Double_t=-9999,Double_t=0) = 0;
// Deprecated - G3 only
virtual void DefaultRange() = 0;
// Deprecated - G3 only
virtual void Gdhead(Int_t, const char*, Double_t=0) = 0;
// Deprecated - G3 only
virtual void Gdman(Double_t, Double_t, const char*) = 0;
//
// ------------------------------------------------
// Control methods // Control methods
// ------------------------------------------------ // ------------------------------------------------
// //
// Initialize MC // Initialize MC
virtual void Init() = 0; virtual void Init() = 0;
// Initialize MC physics // Initialize MC physics
virtual void BuildPhysics() = 0; virtual void BuildPhysics() = 0;
// Process one event // Process one event
// Deprecated
virtual void ProcessEvent() = 0; virtual void ProcessEvent() = 0;
// Process one run and return true if run has finished successfully, // Process one run and return true if run has finished successfully,
// return false in other cases (run aborted by user) // return false in other cases (run aborted by user)
virtual Bool_t ProcessRun(Int_t nevent) = 0; virtual Bool_t ProcessRun(Int_t nevent) = 0;
// Set switches for lego transport // Set switches for lego transport
virtual void InitLego() = 0; virtual void InitLego() = 0;
// (In)Activate collecting TGeo tracks // (In)Activate collecting TGeo tracks
virtual void SetCollectTracks(Bool_t collectTracks); virtual void SetCollectTracks(Bool_t collectTracks) = 0;
// Return the info if collecting tracks is activated // Return the info if collecting tracks is activated
virtual Bool_t IsCollectTracks() const; virtual Bool_t IsCollectTracks() const = 0;
// //
// ------------------------------------------------ // ------------------------------------------------
// Set methods // Set methods
// ------------------------------------------------ // ------------------------------------------------
// //
// Set the particle stack // Set the particle stack
virtual void SetStack(TVirtualMCStack* stack); virtual void SetStack(TVirtualMCStack* stack);
skipping to change at line 919 skipping to change at line 891
TVirtualMCStack* fStack; //! Particles stack TVirtualMCStack* fStack; //! Particles stack
TVirtualMCDecayer* fDecayer; //! External decayer TVirtualMCDecayer* fDecayer; //! External decayer
TRandom* fRandom; //! Random number generator TRandom* fRandom; //! Random number generator
TVirtualMagField* fMagField;//! Magnetic field TVirtualMagField* fMagField;//! Magnetic field
ClassDef(TVirtualMC,1) //Interface to Monte Carlo ClassDef(TVirtualMC,1) //Interface to Monte Carlo
}; };
// new functions // new functions
inline Bool_t TVirtualMC::CurrentBoundaryNormal(Double_t& /*x*/, Double_t& inline Bool_t TVirtualMC::CurrentBoundaryNormal(
/*y*/, Double_t& /*z*/) const { Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) con
// If track is on a geometry boundary, fill the normal vector of the cro st {
ssing volume // If track is on a geometry boundary, fill the normal vector of the cro
// surface and return true, return false otherwise ssing
// volume surface and return true, return false otherwise
Warning("CurrentBoundaryNormal", "New function - not yet implemented."); Warning("CurrentBoundaryNormal", "New function - not yet implemented.");
return kFALSE; return kFALSE;
} }
inline void TVirtualMC::SetCollectTracks(Bool_t /*collectTracks*/) { inline Bool_t TVirtualMC::GetMaterial(Int_t /*imat*/, TString& /*name*/,
// Activate collecting tracks Double_t& /*a*/, Double_t& /*z*/, Double_t& /*density
// Currently working only with TGeant3TGeo */,
Warning("SetCollectTracks", "New function - not yet implemented."); Double_t& /*radl*/, Double_t& /*inter*/, TArrayD& /*p
} ar*/) {
// Return the material parameters for the material specified by
inline Bool_t TVirtualMC::IsCollectTracks() const { // the material Id
// Return the info if collecting tracks is activated Warning("GetMaterial(Int_t imat, ...)", "New function - not yet implemen
Warning("IsCollectTracks", "New function - not yet implemented."); ted.");
return kFALSE; return kFALSE;
} }
R__EXTERN TVirtualMC *gMC; R__EXTERN TVirtualMC *gMC;
#endif //ROOT_TVirtualMC #endif //ROOT_TVirtualMC
 End of changes. 15 change blocks. 
66 lines changed or deleted 36 lines changed or added


 TVirtualPacketizer.h   TVirtualPacketizer.h 
// @(#)root/proofplayer:$Id: TVirtualPacketizer.h 37396 2010-12-08 13:12:00 Z rdm $ // @(#)root/proofplayer:$Id: TVirtualPacketizer.h 38810 2011-04-12 16:22:59 Z ganis $
// Author: Maarten Ballintijn 9/7/2002 // Author: Maarten Ballintijn 9/7/2002
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 130 skipping to change at line 130
virtual ~TVirtualPacketizer(); virtual ~TVirtualPacketizer();
Bool_t IsValid() const { return fValid; } Bool_t IsValid() const { return fValid; }
Long64_t GetEntriesProcessed() const { return (fProgressS tatus? fProgressStatus->GetEntries() : 0); } Long64_t GetEntriesProcessed() const { return (fProgressS tatus? fProgressStatus->GetEntries() : 0); }
virtual Int_t GetEstEntriesProcessed(Float_t, Long64_t &ent, L ong64_t &bytes, Long64_t &calls) virtual Int_t GetEstEntriesProcessed(Float_t, Long64_t &ent, L ong64_t &bytes, Long64_t &calls)
{ ent = GetEntriesProcessed(); bytes = GetBytesR ead(); calls = GetReadCalls(); return 0; } { ent = GetEntriesProcessed(); bytes = GetBytesR ead(); calls = GetReadCalls(); return 0; }
virtual Float_t GetCurrentRate(Bool_t &all) { all = kTRUE; retur n (fProgressStatus? fProgressStatus->GetCurrentRate() : 0.); } virtual Float_t GetCurrentRate(Bool_t &all) { all = kTRUE; retur n (fProgressStatus? fProgressStatus->GetCurrentRate() : 0.); }
Long64_t GetTotalEntries() const { return fTotalEntries; } Long64_t GetTotalEntries() const { return fTotalEntries; }
virtual TDSetElement *GetNextPacket(TSlave *sl, TMessage *r); virtual TDSetElement *GetNextPacket(TSlave *sl, TMessage *r);
virtual void SetInitTime(); virtual void SetInitTime();
virtual void StopProcess(Bool_t abort); virtual void StopProcess(Bool_t abort, Bool_t stoptimer = kFA LSE);
TList *GetFailedPackets() { return fFailedPackets; } TList *GetFailedPackets() { return fFailedPackets; }
void SetFailedPackets(TList *list) { fFailedPackets = list; } void SetFailedPackets(TList *list) { fFailedPackets = list; }
Long64_t GetBytesRead() const { return (fProgressStatus? fProgressS tatus->GetBytesRead() : 0); } Long64_t GetBytesRead() const { return (fProgressStatus? fProgressS tatus->GetBytesRead() : 0); }
Long64_t GetReadCalls() const { return (fProgressStatus? fProgressS tatus->GetReadCalls() : 0); } Long64_t GetReadCalls() const { return (fProgressStatus? fProgressS tatus->GetReadCalls() : 0); }
Double_t GetCumProcTime() const { return fProgressStatus->GetProcTi me(); } Double_t GetCumProcTime() const { return fProgressStatus->GetProcTi me(); }
Float_t GetInitTime() const { return fInitTime; } Float_t GetInitTime() const { return fInitTime; }
Float_t GetProcTime() const { return fProcTime; } Float_t GetProcTime() const { return fProcTime; }
TNtuple *GetProgressPerf(Bool_t steal = kFALSE) { if (steal) { TNtu ple *n = fProgressPerf; fProgressPerf = 0; return n; TNtuple *GetProgressPerf(Bool_t steal = kFALSE) { if (steal) { TNtu ple *n = fProgressPerf; fProgressPerf = 0; return n;
} else { re turn fProgressPerf;} } } else { re turn fProgressPerf;} }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TVirtualPerfStats.h   TVirtualPerfStats.h 
// @(#)root/base:$Id: TVirtualPerfStats.h 30978 2009-11-05 01:38:48Z rdm $ // @(#)root/base:$Id: TVirtualPerfStats.h 38055 2011-02-11 22:06:25Z pcanal $
// Author: Kristjan Gulbrandsen 11/05/04 // Author: Kristjan Gulbrandsen 11/05/04
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 61 skipping to change at line 61
Double_t proctime, Double_t cputime, Double_t proctime, Double_t cputime,
Long64_t bytesRead) = 0; Long64_t bytesRead) = 0;
virtual void FileEvent(const char *slave, const char *slavename, const c har *nodename, virtual void FileEvent(const char *slave, const char *slavename, const c har *nodename,
const char *filename, Bool_t isStart) = 0; const char *filename, Bool_t isStart) = 0;
virtual void FileOpenEvent(TFile *file, const char *filename, Double_t s tart) = 0; virtual void FileOpenEvent(TFile *file, const char *filename, Double_t s tart) = 0;
virtual void FileReadEvent(TFile *file, Int_t len, Double_t start) = 0; virtual void FileReadEvent(TFile *file, Int_t len, Double_t start) = 0;
virtual void FileUnzipEvent(TFile *file, Long64_t pos, Double_t start, I
nt_t complen, Int_t objlen) = 0;
virtual void RateEvent(Double_t proctime, Double_t deltatime, virtual void RateEvent(Double_t proctime, Double_t deltatime,
Long64_t eventsprocessed, Long64_t bytesRead) = 0 ; Long64_t eventsprocessed, Long64_t bytesRead) = 0 ;
virtual void SetBytesRead(Long64_t num) = 0; virtual void SetBytesRead(Long64_t num) = 0;
virtual Long64_t GetBytesRead() const = 0; virtual Long64_t GetBytesRead() const = 0;
virtual void SetNumEvents(Long64_t num) = 0; virtual void SetNumEvents(Long64_t num) = 0;
virtual Long64_t GetNumEvents() const = 0; virtual Long64_t GetNumEvents() const = 0;
static const char *EventType(EEventType type); static const char *EventType(EEventType type);
 End of changes. 2 change blocks. 
1 lines changed or deleted 4 lines changed or added


 TVirtualX.h   TVirtualX.h 
// @(#)root/base:$Id: TVirtualX.h 32427 2010-03-01 18:25:58Z rdm $ // @(#)root/base:$Id: TVirtualX.h 38781 2011-04-08 15:42:19Z rdm $
// Author: Fons Rademakers 3/12/95 // Author: Fons Rademakers 3/12/95
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 153 skipping to change at line 153
virtual void SetMarkerSize(Float_t markersize); virtual void SetMarkerSize(Float_t markersize);
virtual void SetMarkerStyle(Style_t markerstyle); virtual void SetMarkerStyle(Style_t markerstyle);
virtual void SetOpacity(Int_t percent); virtual void SetOpacity(Int_t percent);
virtual void SetRGB(Int_t cindex, Float_t r, Float_t g, Float_t b); virtual void SetRGB(Int_t cindex, Float_t r, Float_t g, Float_t b);
virtual void SetTextAlign(Short_t talign=11); virtual void SetTextAlign(Short_t talign=11);
virtual void SetTextColor(Color_t cindex); virtual void SetTextColor(Color_t cindex);
virtual Int_t SetTextFont(char *fontname, ETextSetMode mode); virtual Int_t SetTextFont(char *fontname, ETextSetMode mode);
virtual void SetTextFont(Font_t fontnumber); virtual void SetTextFont(Font_t fontnumber);
virtual void SetTextMagnitude(Float_t mgn); virtual void SetTextMagnitude(Float_t mgn);
virtual void SetTextSize(Float_t textsize); virtual void SetTextSize(Float_t textsize);
virtual void Sync(Int_t mode);
virtual void UpdateWindow(Int_t mode); virtual void UpdateWindow(Int_t mode);
virtual void Warp(Int_t ix, Int_t iy, Window_t id = 0); virtual void Warp(Int_t ix, Int_t iy, Window_t id = 0);
virtual Int_t WriteGIF(char *name); virtual Int_t WriteGIF(char *name);
virtual void WritePixmap(Int_t wid, UInt_t w, UInt_t h, char *pxnam e); virtual void WritePixmap(Int_t wid, UInt_t w, UInt_t h, char *pxnam e);
virtual Window_t GetCurrentWindow() const; virtual Window_t GetCurrentWindow() const;
virtual Int_t SupportsExtension(const char *ext) const; virtual Int_t SupportsExtension(const char *ext) const;
//---- Methods used for GUI ----- //---- Methods used for GUI -----
virtual void GetWindowAttributes(Window_t id, WindowAttributes_t &attr); virtual void GetWindowAttributes(Window_t id, WindowAttributes_t &attr);
virtual void MapWindow(Window_t id); virtual void MapWindow(Window_t id);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TXMLEngine.h   TXMLEngine.h 
// @(#)root/xml:$Id: TXMLEngine.h 36517 2010-11-05 14:43:58Z pcanal $ // @(#)root/xml:$Id: TXMLEngine.h 38266 2011-03-01 18:46:08Z rdm $
// Author: Sergey Linev 10.05.2004 // Author: Sergey Linev 10.05.2004
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
skipping to change at line 109 skipping to change at line 109
void ShiftToNext(XMLNodePointer_t &xmlnode, bool tonode = t rue); void ShiftToNext(XMLNodePointer_t &xmlnode, bool tonode = t rue);
Bool_t IsEmptyNode(XMLNodePointer_t xmlnode); Bool_t IsEmptyNode(XMLNodePointer_t xmlnode);
void SkipEmpty(XMLNodePointer_t &xmlnode); void SkipEmpty(XMLNodePointer_t &xmlnode);
void CleanNode(XMLNodePointer_t xmlnode); void CleanNode(XMLNodePointer_t xmlnode);
XMLDocPointer_t NewDoc(const char* version = "1.0"); XMLDocPointer_t NewDoc(const char* version = "1.0");
void AssignDtd(XMLDocPointer_t xmldoc, const char* dtdname, const char* rootname); void AssignDtd(XMLDocPointer_t xmldoc, const char* dtdname, const char* rootname);
void FreeDoc(XMLDocPointer_t xmldoc); void FreeDoc(XMLDocPointer_t xmldoc);
void SaveDoc(XMLDocPointer_t xmldoc, const char* filename, Int_t layout = 1); void SaveDoc(XMLDocPointer_t xmldoc, const char* filename, Int_t layout = 1);
void DocSetRootElement(XMLDocPointer_t xmldoc, XMLNodePoint er_t xmlnode); void DocSetRootElement(XMLDocPointer_t xmldoc, XMLNodePoint er_t xmlnode);
XMLNodePointer_t DocGetRootElement(XMLDocPointer_t xmldoc); XMLNodePointer_t DocGetRootElement(XMLDocPointer_t xmldoc);
XMLDocPointer_t ParseFile(const char* filename); XMLDocPointer_t ParseFile(const char* filename, Int_t maxbuf = 100000) ;
XMLDocPointer_t ParseString(const char* xmlstring); XMLDocPointer_t ParseString(const char* xmlstring);
Bool_t ValidateVersion(XMLDocPointer_t doc, const char* versi on = 0); Bool_t ValidateVersion(XMLDocPointer_t doc, const char* versi on = 0);
Bool_t ValidateDocument(XMLDocPointer_t, Bool_t = kFALSE) { r eturn kFALSE; } // obsolete Bool_t ValidateDocument(XMLDocPointer_t, Bool_t = kFALSE) { r eturn kFALSE; } // obsolete
void SaveSingleNode(XMLNodePointer_t xmlnode, TString* res, Int_t layout = 1); void SaveSingleNode(XMLNodePointer_t xmlnode, TString* res, Int_t layout = 1);
XMLNodePointer_t ReadSingleNode(const char* src); XMLNodePointer_t ReadSingleNode(const char* src);
ClassDef(TXMLEngine,1); // ROOT XML I/O parser, user by TXMLFile to re ad/write xml files ClassDef(TXMLEngine,1); // ROOT XML I/O parser, user by TXMLFile to re ad/write xml files
}; };
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 TXProofMgr.h   TXProofMgr.h 
// @(#)root/proofx:$Id: TXProofMgr.h 30171 2009-09-15 13:43:12Z ganis $ // @(#)root/proofx:$Id: TXProofMgr.h 38580 2011-03-23 15:24:54Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TXProofMgr #ifndef ROOT_TXProofMgr
#define ROOT_TXProofMgr #define ROOT_TXProofMgr
skipping to change at line 72 skipping to change at line 72
Bool_t IsValid() const { return fSocket; } Bool_t IsValid() const { return fSocket; }
void SetInvalid(); void SetInvalid();
TProof *AttachSession(Int_t id, Bool_t gui = kFALSE) TProof *AttachSession(Int_t id, Bool_t gui = kFALSE)
{ return TProofMgr::AttachSession(id, gui); } { return TProofMgr::AttachSession(id, gui); }
TProof *AttachSession(TProofDesc *d, Bool_t gui = kFALSE); TProof *AttachSession(TProofDesc *d, Bool_t gui = kFALSE);
void DetachSession(Int_t, Option_t * = ""); void DetachSession(Int_t, Option_t * = "");
void DetachSession(TProof *, Option_t * = ""); void DetachSession(TProof *, Option_t * = "");
TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0,
const char *pattern = "-v \"| SvcMsg\""); const char *pattern = "-v \"| SvcMsg\"",
Bool_t rescan = kFALSE);
Bool_t MatchUrl(const char *url); Bool_t MatchUrl(const char *url);
void ShowROOTVersions(); void ShowROOTVersions();
TList *QuerySessions(Option_t *opt = "S"); TList *QuerySessions(Option_t *opt = "S");
TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len);
TObjString *ReadBuffer(const char *file, const char *pattern); TObjString *ReadBuffer(const char *file, const char *pattern);
Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0);
Int_t SendMsgToUsers(const char *msg, const char *usr = 0); Int_t SendMsgToUsers(const char *msg, const char *usr = 0);
void SetROOTVersion(const char *tag); void SetROOTVersion(const char *tag);
void ShowWorkers(); void ShowWorkers();
 End of changes. 2 change blocks. 
2 lines changed or deleted 3 lines changed or added


 TXSlave.h   TXSlave.h 
// @(#)root/proofx:$Id: TXSlave.h 25734 2008-10-07 22:40:37Z ganis $ // @(#)root/proofx:$Id: TXSlave.h 38580 2011-03-23 15:24:54Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TXSlave #ifndef ROOT_TXSlave
#define ROOT_TXSlave #define ROOT_TXSlave
skipping to change at line 43 skipping to change at line 43
class TXSlave : public TSlave, public TXHandler { class TXSlave : public TSlave, public TXHandler {
friend class TProof; friend class TProof;
friend class TXProofMgr; friend class TXProofMgr;
private: private:
Bool_t fValid; Bool_t fValid;
TSignalHandler *fIntHandler; //interrupt signal handler (ctrl-c) TSignalHandler *fIntHandler; //interrupt signal handler (ctrl-c)
void Init(const char *host, Int_t stype); void Init(const char *host, Int_t stype);
void ParseBuffer();
// Static methods // Static methods
static Int_t GetProofdProtocol(TSocket *s); static Int_t GetProofdProtocol(TSocket *s);
protected: protected:
void FlushSocket(); void FlushSocket();
void Interrupt(Int_t type); void Interrupt(Int_t type);
Int_t Ping(); Int_t Ping();
TObjString *SendCoordinator(Int_t kind, const char *msg = 0, Int_t int2 = 0); TObjString *SendCoordinator(Int_t kind, const char *msg = 0, Int_t int2 = 0);
Int_t SendGroupPriority(const char *grp, Int_t priority); Int_t SendGroupPriority(const char *grp, Int_t priority);
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 TXSocket.h   TXSocket.h 
// @(#)root/proofx:$Id: TXSocket.h 34428 2010-07-15 12:35:34Z ganis $ // @(#)root/proofx:$Id: TXSocket.h 38538 2011-03-21 14:13:29Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TXSocket #ifndef ROOT_TXSocket
#define ROOT_TXSocket #define ROOT_TXSocket
skipping to change at line 100 skipping to change at line 100
TString fBuffer; // Container for exchanging informat ion TString fBuffer; // Container for exchanging informat ion
TObject *fReference; // Generic object reference of this socket TObject *fReference; // Generic object reference of this socket
TXHandler *fHandler; // Handler of asynchronous events (i nput, error) TXHandler *fHandler; // Handler of asynchronous events (i nput, error)
XrdProofConn *fConn; // instance of the underlying connec tion module XrdProofConn *fConn; // instance of the underlying connec tion module
// Asynchronous messages // Asynchronous messages
TSemaphore fASem; // Control access to conn async msg queue TSemaphore fASem; // Control access to conn async msg queue
TMutex *fAMtx; // To protect async msg queue TMutex *fAMtx; // To protect async msg queue
Bool_t fAWait; // kTRUE if waiting at the async msg queue
std::list<TXSockBuf *> fAQue; // list of asynchronous messages std::list<TXSockBuf *> fAQue; // list of asynchronous messages
Int_t fByteLeft; // bytes left in the first buffer Int_t fByteLeft; // bytes left in the first buffer
Int_t fByteCur; // current position in the first buf fer Int_t fByteCur; // current position in the first buf fer
TXSockBuf *fBufCur; // current read buffer TXSockBuf *fBufCur; // current read buffer
TSemaphore fAsynProc; // Control actions while processing async messages TSemaphore fAsynProc; // Control actions while processing async messages
// Interrupts // Interrupts
TMutex *fIMtx; // To protect interrupt queue TMutex *fIMtx; // To protect interrupt queue
kXR_int32 fILev; // Highest received interrupt kXR_int32 fILev; // Highest received interrupt
skipping to change at line 213 skipping to change at line 214
ESendRecvOptions opt = kDefault); ESendRecvOptions opt = kDefault);
// Interrupts // Interrupts
Int_t SendInterrupt(Int_t type); Int_t SendInterrupt(Int_t type);
Int_t GetInterrupt(Bool_t &forward); Int_t GetInterrupt(Bool_t &forward);
// Urgent message // Urgent message
void SendUrgent(Int_t type, Int_t int1, Int_t int2); void SendUrgent(Int_t type, Int_t int1, Int_t int2);
// Interrupt the low level socket // Interrupt the low level socket
void SetInterrupt() { fRDInterrupt = kTRUE; inline void SetInterrupt(Bool_t i = kTRUE) { R__LOCKGUARD(fAMtx)
if (fConn) fConn->SetInterrupt(); } ;
fRDInterrupt = i;
if (i && fConn) fConn->SetInterrupt
();
if (i && fAWait) fASem.Post(); }
inline Bool_t IsInterrupt() { R__LOCKGUARD(fAMtx); return fRDInte
rrupt; }
// Set / Check async msg queue waiting status
inline void SetAWait(Bool_t w = kTRUE) { R__LOCKGUARD(fAMtx); fA
Wait = w; }
inline Bool_t IsAWait() { R__LOCKGUARD(fAMtx); return fAWait; }
// Flush the asynchronous queue // Flush the asynchronous queue
Int_t Flush(); Int_t Flush();
// Ping the counterpart // Ping the counterpart
Bool_t Ping(const char *ord = 0); Bool_t Ping(const char *ord = 0);
// Request remote touch of the admin file associated with this connectio n // Request remote touch of the admin file associated with this connectio n
void RemoteTouch(); void RemoteTouch();
// Propagate a Ctrl-C // Propagate a Ctrl-C
 End of changes. 3 change blocks. 
3 lines changed or deleted 14 lines changed or added


 TXUnixSocket.h   TXUnixSocket.h 
// @(#)root/proofx:$Id: TXUnixSocket.h 24719 2008-07-09 07:07:25Z ganis $ // @(#)root/proofx:$Id: TXUnixSocket.h 38922 2011-04-19 13:15:05Z ganis $
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
#ifndef ROOT_TXUnixSocket #ifndef ROOT_TXUnixSocket
#define ROOT_TXUnixSocket #define ROOT_TXUnixSocket
skipping to change at line 37 skipping to change at line 37
class TXHandler; class TXHandler;
class TXUnixSocket : public TXSocket { class TXUnixSocket : public TXSocket {
friend class TXProofServ; friend class TXProofServ;
private: private:
std::list<Int_t> fClientIDs; std::list<Int_t> fClientIDs;
public: public:
TXUnixSocket(const char *u, TXUnixSocket(const char *u, Int_t psid = -1, Char_t ver = -1,
Int_t psid = -1, Char_t ver = -1, TXHandler *handler = 0); TXHandler *handler = 0, int fd = -1);
virtual ~TXUnixSocket() { fSessionID = -1; } virtual ~TXUnixSocket() { fSessionID = -1; }
Int_t GetClientID() const { return (fClientIDs.size() > 0) ? fClientIDs. front() : -1; } Int_t GetClientID() const { return (fClientIDs.size() > 0) ? fClientIDs. front() : -1; }
Int_t GetClientIDSize() const { return fClientIDs.size(); } Int_t GetClientIDSize() const { return fClientIDs.size(); }
void RemoveClientID() { if (fClientIDs.size() > 1) fClientIDs.pop_front (); } void RemoveClientID() { if (fClientIDs.size() > 1) fClientIDs.pop_front (); }
void SetClientID(Int_t cid) { fClientIDs.push_front(cid); } void SetClientID(Int_t cid) { fClientIDs.push_front(cid); }
// Try reconnection after error // Try reconnection after error
Int_t Reconnect(); Int_t Reconnect();
 End of changes. 2 change blocks. 
3 lines changed or deleted 3 lines changed or added


 Tools.h   Tools.h 
// @(#)root/tmva $Id: Tools.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: Tools.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Tools * * Class : Tools *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Global auxiliary applications and data treatment routines * * Global auxiliary applications and data treatment routines *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <peter.speckmayer@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada * * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
skipping to change at line 68 skipping to change at line 69
#endif #endif
#ifndef ROOT_TVectorDfwd #ifndef ROOT_TVectorDfwd
#include "TVectorDfwd.h" #include "TVectorDfwd.h"
#endif #endif
#ifndef ROOT_TMVA_Types #ifndef ROOT_TMVA_Types
#include "TMVA/Types.h" #include "TMVA/Types.h"
#endif #endif
#ifndef ROOT_TMVA_VariableTransformBase
#include "TMVA/VariableTransformBase.h"
#endif
class TList; class TList;
class TTree; class TTree;
class TString; class TString;
class TH1; class TH1;
class TH2; class TH2;
class TH2F; class TH2F;
class TSpline; class TSpline;
class TXMLEngine; class TXMLEngine;
namespace TMVA { namespace TMVA {
skipping to change at line 128 skipping to change at line 133
// parse option string for ANN methods // parse option string for ANN methods
std::vector<Int_t>* ParseANNOptionString( TString theOptions, Int_t n var, std::vector<Int_t>* ParseANNOptionString( TString theOptions, Int_t n var,
std::vector<Int_t>* nodes ) ; std::vector<Int_t>* nodes ) ;
// returns the square-root of a symmetric matrix: symMat = sqrtMat*sq rtMat // returns the square-root of a symmetric matrix: symMat = sqrtMat*sq rtMat
TMatrixD* GetSQRootMatrix( TMatrixDSym* symMat ); TMatrixD* GetSQRootMatrix( TMatrixDSym* symMat );
// returns the covariance matrix of of the different classes (and the sum) // returns the covariance matrix of of the different classes (and the sum)
// given the event sample // given the event sample
std::vector<TMatrixDSym*>* CalcCovarianceMatrices( const std::vector< Event*>& events, Int_t maxCls ); std::vector<TMatrixDSym*>* CalcCovarianceMatrices( const std::vector< Event*>& events, Int_t maxCls, VariableTransformBase* transformBase=0 );
// turns covariance into correlation matrix // turns covariance into correlation matrix
const TMatrixD* GetCorrelationMatrix( const TMatrixD* covMat ); const TMatrixD* GetCorrelationMatrix( const TMatrixD* covMat );
// check spline quality by comparison with initial histogram // check spline quality by comparison with initial histogram
Bool_t CheckSplines( const TH1*, const TSpline* ); Bool_t CheckSplines( const TH1*, const TSpline* );
// normalization of variable output // normalization of variable output
Double_t NormVariable( Double_t x, Double_t xmin, Double_t xmax ); Double_t NormVariable( Double_t x, Double_t xmin, Double_t xmax );
 End of changes. 4 change blocks. 
2 lines changed or deleted 7 lines changed or added


 ToyMCSamplerOld.h   ToyMCSamplerOld.h 
// @(#)root/roostats:$Id: ToyMCSamplerOld.h 37403 2010-12-08 15:59:22Z mone ta $ // @(#)root/roostats:$Id: ToyMCSamplerOld.h 38947 2011-04-20 08:23:25Z mone ta $
// Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke // Author: Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke
// Additions and modifications by Mario Pelliccioni // Additions and modifications by Mario Pelliccioni
/************************************************************************* /*************************************************************************
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. *
* All rights reserved. * * All rights reserved. *
* * * *
* For the licensing terms see $ROOTSYS/LICENSE. * * For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. * * For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/ *************************************************************************/
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 TransformationHandler.h   TransformationHandler.h 
// @(#)root/tmva $Id: TransformationHandler.h 31458 2009-11-30 13:58:20Z st // @(#)root/tmva $Id: TransformationHandler.h 38609 2011-03-24 16:06:32Z ev
elzer $ t $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Helge Voss, Ja
n Therhaag, Eckhard von Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : TransformationHandler * * Class : TransformationHandler *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Contains all the data information * * Contains all the data information *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <speckmay@mail.cern.ch> - CERN, Switzerland * * Peter Speckmayer <speckmay@mail.cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Jan Therhaag <Jan.Therhaag@cern.ch> - U of Bonn, Germany
*
* Eckhard v. Toerne <evt@uni-bonn.de> - U of Bonn, Germany
*
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* * * *
* Copyright (c) 2008: * * Copyright (c) 2005-2011: *
* CERN, Switzerland * * CERN, Switzerland *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* U. of Bonn, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
* (http://tmva.sourceforge.net/LICENSE) * * (http://tmva.sourceforge.net/LICENSE) *
************************************************************************** ********/ ************************************************************************** ********/
#ifndef ROOT_TMVA_TransformationHandler #ifndef ROOT_TMVA_TransformationHandler
#define ROOT_TMVA_TransformationHandler #define ROOT_TMVA_TransformationHandler
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
skipping to change at line 75 skipping to change at line 78
Double_t fMax; Double_t fMax;
}; };
TransformationHandler( DataSetInfo&, const TString& callerName ); TransformationHandler( DataSetInfo&, const TString& callerName );
~TransformationHandler(); ~TransformationHandler();
TString GetName() const; TString GetName() const;
TString GetVariableAxisTitle( const VariableInfo& info ) const; TString GetVariableAxisTitle( const VariableInfo& info ) const;
const Event* Transform(const Event*) const; const Event* Transform(const Event*) const;
const Event* InverseTransform(const Event*) const; const Event* InverseTransform(const Event*, Bool_t suppressIfNoTarget s=true ) const;
// overrides the reference classes of all added transformations. Hand le with care!!! // overrides the reference classes of all added transformations. Hand le with care!!!
void SetTransformationReferenceClass( Int_t cls ); void SetTransformationReferenceClass( Int_t cls );
VariableTransformBase* AddTransformation(VariableTransformBase*, Int_ t cls ); VariableTransformBase* AddTransformation(VariableTransformBase*, Int_ t cls );
const TList& GetTransformationList() const { return fTransformation s; } const TList& GetTransformationList() const { return fTransformation s; }
Int_t GetNumOfTransformations() const { return fTransformation s.GetSize(); } Int_t GetNumOfTransformations() const { return fTransformation s.GetSize(); }
std::vector<Event*>* CalcTransformations( const std::vector<Event*>&, Bool_t createNewVector = kFALSE ); std::vector<Event*>* CalcTransformations( const std::vector<Event*>&, Bool_t createNewVector = kFALSE );
void CalcStats( const std::vector<Event*>& events ); void CalcStats( const std::vector<Event*>& events );
 End of changes. 5 change blocks. 
5 lines changed or deleted 11 lines changed or added


 Types.h   Types.h 
// @(#)root/tmva $Id: Types.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: Types.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Types * * Class : Types *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* GLobal types (singleton class) * * GLobal types (singleton class) *
skipping to change at line 105 skipping to change at line 105
kCategory , kCategory ,
kMaxMethod kMaxMethod
}; };
// available variable transformations // available variable transformations
enum EVariableTransform { enum EVariableTransform {
kIdentity = 0, kIdentity = 0,
kDecorrelated, kDecorrelated,
kNormalized, kNormalized,
kPCA, kPCA,
kGaussDecorr, kRearranged,
kGauss, kGauss,
kUniform, kUniform,
kMaxVariableTransform kMaxVariableTransform
}; };
// type of analysis // type of analysis
enum EAnalysisType { enum EAnalysisType {
kClassification = 0, kClassification = 0,
kRegression, kRegression,
kMulticlass, kMulticlass,
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 VariableDecorrTransform.h   VariableDecorrTransform.h 
// @(#)root/tmva $Id: VariableDecorrTransform.h 37399 2010-12-08 15:22:07Z evt $ // @(#)root/tmva $Id: VariableDecorrTransform.h 38943 2011-04-20 08:03:25Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : VariableDecorrTransform * * Class : VariableDecorrTransform *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Decorrelation of input variables * * Decorrelation of input variables *
skipping to change at line 87 skipping to change at line 87
// provides string vector giving explicit transformation // provides string vector giving explicit transformation
std::vector<TString>* GetTransformationStrings( Int_t cls ) const; std::vector<TString>* GetTransformationStrings( Int_t cls ) const;
private: private:
// mutable Event* fTransformedEvent; //! local event copy // mutable Event* fTransformedEvent; //! local event copy
std::vector<TMatrixD*> fDecorrMatrices; //! Decorrelation matrix [class0/class1/.../all classes] std::vector<TMatrixD*> fDecorrMatrices; //! Decorrelation matrix [class0/class1/.../all classes]
void CalcSQRMats( const std::vector<Event*>&, Int_t maxCls ); void CalcSQRMats( const std::vector<Event*>&, Int_t maxCls );
std::vector<TMatrixDSym*>* CalcCovarianceMatrices( const std::vector< Event*>& events, Int_t maxCls );
ClassDef(VariableDecorrTransform,0) // Variable transformation: decor relation ClassDef(VariableDecorrTransform,0) // Variable transformation: decor relation
}; };
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 2 change blocks. 
1 lines changed or deleted 2 lines changed or added


 VariableGaussTransform.h   VariableGaussTransform.h 
// @(#)root/tmva $Id: VariableGaussTransform.h 37399 2010-12-08 15:22:07Z e vt $ // @(#)root/tmva $Id: VariableGaussTransform.h 38943 2011-04-20 08:03:25Z e vt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Eckhard v. Toerne // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Eckhard v. Toerne
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : VariableGaussTransform * * Class : VariableGaussTransform *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Decorrelation of input variables * * Decorrelation of input variables *
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 VariableNormalizeTransform.h   VariableNormalizeTransform.h 
// @(#)root/tmva $Id: VariableNormalizeTransform.h 33993 2010-06-19 11:25:1 4Z stelzer $ // @(#)root/tmva $Id: VariableNormalizeTransform.h 38475 2011-03-17 10:46:0 0Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : VariableNormalizeTransform * * Class : VariableNormalizeTransform *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Decorrelation of input variables * * Decorrelation of input variables *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
skipping to change at line 53 skipping to change at line 54
#ifndef ROOT_TMVA_VariableTransformBase #ifndef ROOT_TMVA_VariableTransformBase
#include "TMVA/VariableTransformBase.h" #include "TMVA/VariableTransformBase.h"
#endif #endif
namespace TMVA { namespace TMVA {
class VariableNormalizeTransform : public VariableTransformBase { class VariableNormalizeTransform : public VariableTransformBase {
public: public:
typedef std::vector<Float_t> FloatVector;
typedef std::vector< FloatVector > VectorOfFloatVectors;
VariableNormalizeTransform( DataSetInfo& dsi ); VariableNormalizeTransform( DataSetInfo& dsi );
virtual ~VariableNormalizeTransform( void ); virtual ~VariableNormalizeTransform( void );
void Initialize(); void Initialize();
Bool_t PrepareTransformation( const std::vector<Event*>& ); Bool_t PrepareTransformation( const std::vector<Event*>& );
virtual const Event* Transform(const Event* const, Int_t cls ) const; virtual const Event* Transform(const Event* const, Int_t cls ) const;
virtual const Event* InverseTransform( const Event* const, Int_t cls ) const; virtual const Event* InverseTransform( const Event* const, Int_t cls ) const;
void WriteTransformationToStream ( std::ostream& ) const; void WriteTransformationToStream ( std::ostream& ) const;
skipping to change at line 83 skipping to change at line 86
// provides string vector giving explicit transformation // provides string vector giving explicit transformation
std::vector<TString>* GetTransformationStrings( Int_t cls ) const; std::vector<TString>* GetTransformationStrings( Int_t cls ) const;
private: private:
void CalcNormalizationParams( const std::vector<Event*>& events); void CalcNormalizationParams( const std::vector<Event*>& events);
// mutable Event* fTransformedEvent; // mutable Event* fTransformedEvent;
std::vector< std::vector<Float_t> > fMin; //! Min of source VectorOfFloatVectors fMin; //! Min of source
range range
std::vector< std::vector<Float_t> > fMax; //! Max of source VectorOfFloatVectors fMax; //! Max of source
range range
ClassDef(VariableNormalizeTransform,0) // Variable transformation: no rmalization ClassDef(VariableNormalizeTransform,0) // Variable transformation: no rmalization
}; };
} // namespace TMVA } // namespace TMVA
#endif #endif
 End of changes. 4 change blocks. 
5 lines changed or deleted 8 lines changed or added


 VariablePCATransform.h   VariablePCATransform.h 
// @(#)root/tmva $Id: VariablePCATransform.h 33993 2010-06-19 11:25:14Z ste lzer $ // @(#)root/tmva $Id: VariablePCATransform.h 38475 2011-03-17 10:46:00Z evt $
// Author: Andreas Hoecker, Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : VariablePCATransform * * Class : VariablePCATransform *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Principal value composition of input variables * * Principal value composition of input variables *
* * * *
* Authors (alphabetical): * * Authors (alphabetical): *
* Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland * * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland *
* Peter Speckmayer <Peter.Speckmayer@cern.ch> - CERN, Switzerland *
* Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland * * Joerg Stelzer <Joerg.Stelzer@cern.ch> - CERN, Switzerland *
* Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y * * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German y *
* * * *
* Copyright (c) 2005: * * Copyright (c) 2005: *
* CERN, Switzerland * * CERN, Switzerland *
* U. of Victoria, Canada * * U. of Victoria, Canada *
* MPI-K Heidelberg, Germany * * MPI-K Heidelberg, Germany *
* * * *
* Redistribution and use in source and binary forms, with or without * * Redistribution and use in source and binary forms, with or without *
* modification, are permitted according to the terms listed in LICENSE * * modification, are permitted according to the terms listed in LICENSE *
skipping to change at line 74 skipping to change at line 75
virtual void AttachXMLTo(void* parent); virtual void AttachXMLTo(void* parent);
virtual void ReadFromXML( void* trfnode ); virtual void ReadFromXML( void* trfnode );
// writer of function code // writer of function code
virtual void MakeFunction( std::ostream& fout, const TString& fncName , Int_t part, UInt_t trCounter, Int_t cls ); virtual void MakeFunction( std::ostream& fout, const TString& fncName , Int_t part, UInt_t trCounter, Int_t cls );
private: private:
void CalculatePrincipalComponents( const std::vector<Event*>& ); void CalculatePrincipalComponents( const std::vector<Event*>& );
std::vector<Float_t> X2P( const std::vector<Float_t>&, Int_t cls ) co void X2P( std::vector<Float_t>&, const std::vector<Float_t>&, Int_t c
nst; ls ) const;
void P2X( std::vector<Float_t>&, const std::vector<Float_t>&, Int_t c
// mutable Event* fTransformedEvent; ls ) const;
// store relevant parts of PCA locally // store relevant parts of PCA locally
std::vector<TVectorD*> fMeanValues; // mean values std::vector<TVectorD*> fMeanValues; // mean values
std::vector<TMatrixD*> fEigenVectors; // eigenvectors std::vector<TMatrixD*> fEigenVectors; // eigenvectors
ClassDef(VariablePCATransform,0) // Variable transformation: Principa l Value Composition ClassDef(VariablePCATransform,0) // Variable transformation: Principa l Value Composition
}; };
} // namespace TMVA } // namespace TMVA
 End of changes. 3 change blocks. 
5 lines changed or deleted 6 lines changed or added


 VariableTransformBase.h   VariableTransformBase.h 
// @(#)root/tmva $Id: VariableTransformBase.h 33993 2010-06-19 11:25:14Z st elzer $ // @(#)root/tmva $Id: VariableTransformBase.h 38994 2011-04-21 09:45:51Z ev t $
// Author: Andreas Hoecker, Peter Speckmayer,Joerg Stelzer, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer,Joerg Stelzer, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : VariableTransformBase * * Class : VariableTransformBase *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Pre-transformation of input variables (base class) * * Pre-transformation of input variables (base class) *
skipping to change at line 71 skipping to change at line 71
#ifndef ROOT_TMVA_DataSetInfo #ifndef ROOT_TMVA_DataSetInfo
#include "TMVA/DataSetInfo.h" #include "TMVA/DataSetInfo.h"
#endif #endif
namespace TMVA { namespace TMVA {
class VariableTransformBase : public TObject { class VariableTransformBase : public TObject {
public: public:
typedef std::vector<std::pair<Char_t,UInt_t> > VectorOfCharAndInt;
typedef VectorOfCharAndInt::iterator ItVarTypeIdx;
typedef VectorOfCharAndInt::const_iterator ItVarTypeIdxConst;
VariableTransformBase( DataSetInfo& dsi, Types::EVariableTransform tf , const TString& trfName ); VariableTransformBase( DataSetInfo& dsi, Types::EVariableTransform tf , const TString& trfName );
virtual ~VariableTransformBase( void ); virtual ~VariableTransformBase( void );
virtual void Initialize() = 0; virtual void Initialize() = 0;
virtual Bool_t PrepareTransformation( const std::vector<Event*> & ) = 0; virtual Bool_t PrepareTransformation( const std::vector<Event*> & ) = 0;
virtual const Event* Transform ( const Event* const, Int_t cls ) const = 0; virtual const Event* Transform ( const Event* const, Int_t cls ) const = 0;
virtual const Event* InverseTransform( const Event* const, Int_t cls ) const = 0; virtual const Event* InverseTransform( const Event* const, Int_t cls ) const = 0;
// accessors // accessors
void SetEnabled ( Bool_t e ) { fEnabled = e; } void SetEnabled ( Bool_t e ) { fEnabled = e; }
void SetNormalise( Bool_t n ) { fNormalise = n; } void SetNormalise( Bool_t n ) { fNormalise = n; }
Bool_t IsEnabled() const { return fEnabled; } Bool_t IsEnabled() const { return fEnabled; }
Bool_t IsCreated() const { return fCreated; } Bool_t IsCreated() const { return fCreated; }
Bool_t IsNormalised() const { return fNormalise; } Bool_t IsNormalised() const { return fNormalise; }
// variable selection
virtual void SelectInput( const TString& inputVariables, Bo
ol_t putIntoVariables = kFALSE );
virtual Bool_t GetInput ( const Event* event, std::vector<Flo
at_t>& input, std::vector<Char_t>& mask, Bool_t backTransform = kFALSE ) c
onst;
virtual void SetOutput( Event* event, std::vector<Float_t>&
output, std::vector<Char_t>& mask, const Event* oldEvent = 0, Bool_t backT
ransform = kFALSE ) const;
virtual void CountVariableTypes( UInt_t& nvars, UInt_t& ntg
ts, UInt_t& nspcts ) const;
void ToggleInputSortOrder( Bool_t sortOrder ) { fSortGet = sortOrder;
}
void SetOutputDataSetInfo( DataSetInfo* outputDsi ) { fDsiOutput = ou
tputDsi; }
void SetUseSignalTransform( Bool_t e=kTRUE) { fUseSignalTransform = e ; } void SetUseSignalTransform( Bool_t e=kTRUE) { fUseSignalTransform = e ; }
Bool_t UseSignalTransform() const { return fUseSignalTransform; } Bool_t UseSignalTransform() const { return fUseSignalTransform; }
virtual const char* GetName() const { return fTransformName.Data(); } virtual const char* GetName() const { return fTransformName.Data(); }
TString GetShortName() const { TString a(fTransformName); a.ReplaceAl l("Transform",""); return a; } TString GetShortName() const { TString a(fTransformName); a.ReplaceAl l("Transform",""); return a; }
virtual void WriteTransformationToStream ( std::ostream& o ) const = 0; virtual void WriteTransformationToStream ( std::ostream& o ) const = 0;
virtual void ReadTransformationFromStream( std::istream& istr, const TString& classname="" ) = 0; virtual void ReadTransformationFromStream( std::istream& istr, const TString& classname="" ) = 0;
virtual void AttachXMLTo(void* parent) = 0; virtual void AttachXMLTo(void* parent) = 0;
skipping to change at line 110 skipping to change at line 123
// writer of function code // writer of function code
virtual void MakeFunction( std::ostream& fout, const TString& fncName , Int_t part, virtual void MakeFunction( std::ostream& fout, const TString& fncName , Int_t part,
UInt_t trCounter, Int_t cls ) = 0; UInt_t trCounter, Int_t cls ) = 0;
// provides string vector giving explicit transformation // provides string vector giving explicit transformation
virtual std::vector<TString>* GetTransformationStrings( Int_t cls ) c onst; virtual std::vector<TString>* GetTransformationStrings( Int_t cls ) c onst;
virtual void PrintTransformation( ostream & ) {} virtual void PrintTransformation( ostream & ) {}
const std::vector<TMVA::VariableInfo>& Variables() const { return fVa riables; } const std::vector<TMVA::VariableInfo>& Variables() const { return fVa riables; }
const std::vector<TMVA::VariableInfo>& Targets() const { return fTa rgets; } const std::vector<TMVA::VariableInfo>& Targets() const { return fTa rgets; }
const std::vector<TMVA::VariableInfo>& Spectators() const { return fSpectators; }
MsgLogger& Log() const { return *fLogger; } MsgLogger& Log() const { return *fLogger; }
void SetTMVAVersion(TMVAVersion_t v) { fTMVAVersion = v; } void SetTMVAVersion(TMVAVersion_t v) { fTMVAVersion = v; }
protected: protected:
void CalcNorm( const std::vector<Event*>& ); void CalcNorm( const std::vector<Event*>& );
void SetCreated( Bool_t c = kTRUE ) { fCreated = c; } void SetCreated( Bool_t c = kTRUE ) { fCreated = c; }
void SetNVariables( UInt_t i ) { fNVars = i; } void SetNVariables( UInt_t i ) { fNVars = i; }
void SetName( const TString& c ) { fTransformName = c; } void SetName( const TString& c ) { fTransformName = c; }
UInt_t GetNVariables() const { return fDsi.GetNVariables(); } UInt_t GetNVariables() const { return fDsi.GetNVariables(); }
UInt_t GetNTargets() const { return fDsi.GetNTargets(); } UInt_t GetNTargets() const { return fDsi.GetNTargets(); }
UInt_t GetNSpectators() const { return fDsi.GetNSpectators(); }
DataSetInfo& fDsi; DataSetInfo& fDsi;
DataSetInfo* fDsiOutput;
std::vector<TMVA::VariableInfo>& Variables() { return fVariables; } std::vector<TMVA::VariableInfo>& Variables() { return fVariables; }
std::vector<TMVA::VariableInfo>& Targets() { return fTargets; } std::vector<TMVA::VariableInfo>& Targets() { return fTargets; }
std::vector<TMVA::VariableInfo>& Spectators() { return fSpectators; }
Int_t GetNClasses() const { return fDsi.GetNClasses(); } Int_t GetNClasses() const { return fDsi.GetNClasses(); }
mutable Event* fTransformedEvent; // holds the current transformed event mutable Event* fTransformedEvent; // holds the current transformed event
mutable Event* fBackTransformedEvent; // holds the current back-transformed event mutable Event* fBackTransformedEvent; // holds the current back-transformed event
// variable selection
VectorOfCharAndInt fGet; // get variables/tar
gets/spectators
VectorOfCharAndInt fPut; // put variables/tar
gets/spectators
private: private:
Types::EVariableTransform fVariableTransform; // Decorrelation, PCA, etc. Types::EVariableTransform fVariableTransform; // Decorrelation, PCA, etc.
void UpdateNorm( Int_t ivar, Double_t x ); void UpdateNorm( Int_t ivar, Double_t x );
Bool_t fUseSignalTransform; // true if tran sformation bases on signal data Bool_t fUseSignalTransform; // true if tran sformation bases on signal data
Bool_t fEnabled; // has been ena bled Bool_t fEnabled; // has been ena bled
Bool_t fCreated; // has been cre ated Bool_t fCreated; // has been cre ated
Bool_t fNormalise; // normalise in put variables Bool_t fNormalise; // normalise in put variables
UInt_t fNVars; // number of va riables UInt_t fNVars; // number of va riables
TString fTransformName; // name of tran sformation TString fTransformName; // name of tran sformation
std::vector<TMVA::VariableInfo> fVariables; // event variab les [saved to weight file] std::vector<TMVA::VariableInfo> fVariables; // event variab les [saved to weight file]
std::vector<TMVA::VariableInfo> fTargets; // event target s [saved to weight file --> TODO ] std::vector<TMVA::VariableInfo> fTargets; // event target s [saved to weight file --> TODO ]
std::vector<TMVA::VariableInfo> fSpectators; // event specta
tors [saved to weight file --> TODO ]
mutable Bool_t fVariableTypesAreCounted; // true if
variable types have been counted already
mutable UInt_t fNVariables; // number of va
riables to be transformed
mutable UInt_t fNTargets; // number of ta
rgets to be transformed
mutable UInt_t fNSpectators; // number of sp
ectators to be transformed
Bool_t fSortGet; // if true, sor
t the variables into the order as defined by the user at the var definition
// if false, so
rt the variables according to the order given for the var transformation
protected: protected:
TMVAVersion_t fTMVAVersion; TMVAVersion_t fTMVAVersion;
mutable MsgLogger* fLogger; //! message logger mutable MsgLogger* fLogger; //! message logger
ClassDef(VariableTransformBase,0) // Base class for variable trans formations ClassDef(VariableTransformBase,0) // Base class for variable trans formations
}; };
 End of changes. 9 change blocks. 
1 lines changed or deleted 48 lines changed or added


 Version.h   Version.h 
// @(#)root/tmva $Id: Version.h 37512 2010-12-10 14:19:02Z stelzer $ // @(#)root/tmva $Id: Version.h 38994 2011-04-21 09:45:51Z evt $
// Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Jan Therhaag, Eckhard von Toerne, Helge Voss // Author: Andreas Hoecker, Peter Speckmayer, Joerg Stelzer, Jan Therhaag, Eckhard von Toerne, Helge Voss
/************************************************************************** ******** /************************************************************************** ********
* Project: TMVA - a Root-integrated toolkit for multivariate data analysis * * Project: TMVA - a Root-integrated toolkit for multivariate data analysis *
* Package: TMVA * * Package: TMVA *
* Class : Version * * Class : Version *
* Web : http://tmva.sourceforge.net * * Web : http://tmva.sourceforge.net *
* * * *
* Description: * * Description: *
* Current TMVA Version - filled automatically during cvs tagging * * Current TMVA Version - filled automatically during cvs tagging *
skipping to change at line 44 skipping to change at line 44
#define ROOT_TMVA_Version #define ROOT_TMVA_Version
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
// // // //
// Version // // Version //
// // // //
// Automatically filled by cvs tagger: development/tmvaTag.py // // Automatically filled by cvs tagger: development/tmvaTag.py //
// // // //
////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////
#define TMVA_RELEASE "4.1.0" #define TMVA_RELEASE "4.1.1"
#define TMVA_RELEASE_DATE "Dec 10, 2010" #define TMVA_RELEASE_DATE "Apr 21, 2011"
#define TMVA_RELEASE_TIME "15:15:00" #define TMVA_RELEASE_TIME "12:00:00"
#define TMVA_VERSION_CODE 262400 #define TMVA_VERSION_CODE 262401
#define TMVA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) #define TMVA_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
#endif #endif
 End of changes. 2 change blocks. 
5 lines changed or deleted 5 lines changed or added


 cfortran.h   cfortran.h 
skipping to change at line 612 skipping to change at line 612
( (F).dsc$l_arsize= ( (F).dsc$w_length =(ELEMLEN) ) \ ( (F).dsc$l_arsize= ( (F).dsc$w_length =(ELEMLEN) ) \
*( (F).dsc$l_m[0]=(F).dsc$bounds[0].dsc$l_u=(ELEMNO) ) , \ *( (F).dsc$l_m[0]=(F).dsc$bounds[0].dsc$l_u=(ELEMNO) ) , \
(F).dsc$a_a0 = ( (F).dsc$a_pointer=(C) ) - (F).dsc$w_length ,(F)) (F).dsc$a_a0 = ( (F).dsc$a_pointer=(C) ) - (F).dsc$w_length ,(F))
#endif /* PDW: 2/10/98 (CFITSIO) -- Let VMS see NUM_ELEMS definitions */ #endif /* PDW: 2/10/98 (CFITSIO) -- Let VMS see NUM_ELEMS definitions */
#define _NUM_ELEMS -1 #define _NUM_ELEMS -1
#define _NUM_ELEM_ARG -2 #define _NUM_ELEM_ARG -2
#define NUM_ELEMS(A) A,_NUM_ELEMS #define NUM_ELEMS(A) A,_NUM_ELEMS
#define NUM_ELEM_ARG(B) *_2(A,B),_NUM_ELEM_ARG #define NUM_ELEM_ARG(B) *_2(A,B),_NUM_ELEM_ARG
#define TERM_CHARS(A,B) A,B #define TERM_CHARS(A,B) A,B
static void __cfortran__notused_dummy();
#ifndef __CF__KnR #ifndef __CF__KnR
static int num_elem(char *strv, unsigned elem_len, int term_char, int num_t erm) static int num_elem(char *strv, unsigned elem_len, int term_char, int num_t erm)
#else #else
static int num_elem( strv, elem_len, term_char, num_t erm) static int num_elem( strv, elem_len, term_char, num_t erm)
char *strv; unsigned elem_len; int term_char; int num_t erm; char *strv; unsigned elem_len; int term_char; int num_t erm;
#endif #endif
/* elem_len is the number of characters in each element of strv, the FORTRA N /* elem_len is the number of characters in each element of strv, the FORTRA N
vector of strings. The last element of the vector must begin with at least vector of strings. The last element of the vector must begin with at least
num_term term_char characters, so that this routine can determine how num_term term_char characters, so that this routine can determine how
many elements are in the vector. */ many elements are in the vector. */
{ {
unsigned num,i; unsigned num,i;
if (num_term == _NUM_ELEMS || num_term == _NUM_ELEM_ARG) if (num_term == _NUM_ELEMS || num_term == _NUM_ELEM_ARG)
return term_char; return term_char;
if (num_term <=0) num_term = (int)elem_len; if (num_term <=0) num_term = (int)elem_len;
for (num=0; ; num++) { for (num=0; ; num++) {
for (i=0; i<(unsigned)num_term && *strv==term_char; i++,strv++){;} for (i=0; i<(unsigned)num_term && *strv==term_char; i++,strv++){;}
if (i==(unsigned)num_term) break; if (i==(unsigned)num_term) break;
else strv += elem_len-i; else strv += elem_len-i;
} }
if (0) { /* to prevent not used warnings in gcc (added by ROOT) */ if (num==0) __cfortran__notused_dummy();
c2fstrv(0, 0, 0, 0); f2cstrv(0, 0, 0, 0); kill_trailing(0, 0);
vkill_trailing(0, 0, 0, 0); num_elem(0, 0, 0, 0);
}
return (int)num; return (int)num;
} }
static void __cfortran__notused_dummy()
{
/* to prevent not used warnings in gcc (added by ROOT) */
if (0) {
c2fstrv(0, 0, 0, 0); f2cstrv(0, 0, 0, 0); kill_trailing(0, 0);
vkill_trailing(0, 0, 0, 0); num_elem(0, 0, 0, 0);
}
}
/* #endif removed 2/10/98 (CFITSIO) */ /* #endif removed 2/10/98 (CFITSIO) */
/*------------------------------------------------------------------------- */ /*------------------------------------------------------------------------- */
/* UTILITIES FOR C TO USE STRINGS IN FORTRAN COMMON BLOCKS */ /* UTILITIES FOR C TO USE STRINGS IN FORTRAN COMMON BLOCKS */
/* C string TO Fortran Common Block STRing. */ /* C string TO Fortran Common Block STRing. */
/* DIM is the number of DIMensions of the array in terms of strings, not /* DIM is the number of DIMensions of the array in terms of strings, not
characters. e.g. char a[12] has DIM = 0, char a[12][4] has DIM = 1, etc. */ characters. e.g. char a[12] has DIM = 0, char a[12][4] has DIM = 1, etc. */
#define C2FCBSTR(CSTR,FSTR,DIM) \ #define C2FCBSTR(CSTR,FSTR,DIM) \
 End of changes. 3 change blocks. 
4 lines changed or deleted 12 lines changed or added


 compiledata.h   compiledata.h 
/* This is file is automatically generated */ /* This is file is automatically generated */
#define BUILD_ARCH "linux" #define BUILD_ARCH "linux"
#define BUILD_NODE "Linux vm-slc5-i686 2.6.18-194.3.1.el5 #1 SMP Fri May 7 16:14:10 CEST 2010 i686 i686 i386 GNU/Linux" #define BUILD_NODE "Linux lxbuild147.cern.ch 2.6.18-194.26.1.el5 #1 SMP Wed Nov 10 09:51:11 CET 2010 i686 i686 i386 GNU/Linux"
#define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3.2/i686-slc5-gcc34-opt /bin/g++" #define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3.2/i686-slc5-gcc34-opt /bin/g++"
#define COMPILERVERS "gcc432" #define COMPILERVERS "gcc432"
#define MAKESHAREDLIB "cd $BuildDir ; g++ -c $Opt -pipe -m32 -Wall -W -Wov erloaded-virtual -fPIC -pthread $IncludePath $SourceFiles ; g++ $ObjectFile s -shared -Wl,-soname,$LibName.so -m32 -O2 $LinkedLibs -o $SharedLib" #define MAKESHAREDLIB "cd $BuildDir ; g++ -c $Opt -pipe -m32 -Wall -W -Wov erloaded-virtual -fPIC -pthread $IncludePath $SourceFiles ; g++ $ObjectFile s -shared -Wl,-soname,$LibName.so -m32 -O2 $LinkedLibs -o $SharedLib"
#define MAKEEXE "cd $BuildDir ; g++ -c -pipe -m32 -Wall -W -Woverloaded-vi rtual -fPIC -pthread $IncludePath $SourceFiles; g++ $ObjectFiles -m32 -O2 -o $ExeName $LinkedLibs -lm -ldl -pthread -rdynamic" #define MAKEEXE "cd $BuildDir ; g++ -c -pipe -m32 -Wall -W -Woverloaded-vi rtual -fPIC -pthread $IncludePath $SourceFiles; g++ $ObjectFiles -m32 -O2 -o $ExeName $LinkedLibs -lm -ldl -pthread -rdynamic"
#define CXXOPT "-O2" #define CXXOPT "-O2"
#define CXXDEBUG "-g" #define CXXDEBUG "-g"
#define ROOTBUILD "" #define ROOTBUILD ""
#define LINKEDLIBS "-L$ROOTSYS/lib -lCore -lCint -lMathCore -lRint " #define LINKEDLIBS "-L$ROOTSYS/lib -lCore -lCint -lMathCore -lRint "
#define INCLUDEPATH "-I$ROOTSYS/include" #define INCLUDEPATH "-I$ROOTSYS/include"
#define OBJEXT "o" #define OBJEXT "o"
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 rsalib.h   rsalib.h 
/* @(#)root/auth:$Id: rsalib.h 30749 2009-10-15 16:33:04Z brun $ */ /* @(#)root/auth:$Id: rsalib.h 37912 2011-01-31 15:36:18Z ganis $ */
/* Author: Martin Nicolay 22/11/1988 */ /* Author: Martin Nicolay 22/11/1988 */
/************************************************************************** **** /************************************************************************** ****
Copyright (C) 2006 Martin Nicolay <m.nicolay@osm-gmbh.de> Copyright (C) 2006 Martin Nicolay <m.nicolay@osm-gmbh.de>
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version 2.1 of the License, or (at your option) any later
version. version.
skipping to change at line 37 skipping to change at line 37
* Adaptation in library for ROOT by G. Ganis, July 2003 * * Adaptation in library for ROOT by G. Ganis, July 2003 *
* (gerardo.ganis@cern.ch) * * (gerardo.ganis@cern.ch) *
* * * *
* Header used by internal rsa functions * * Header used by internal rsa functions *
* * * *
*************************************************************************** ****/ *************************************************************************** ****/
#ifndef _RSALIB_H #ifndef _RSALIB_H
#define _RSALIB_H #define _RSALIB_H
#ifndef _RSADEF_H
#include "rsadef.h"
#endif
rsa_NUMBER rsa_genprim(int, int); rsa_NUMBER rsa_genprim(int, int);
int rsa_genrsa(rsa_NUMBER, rsa_NUMBER, rsa_NUMBER *, rsa_NUMBER *, rsa_N UMBER *); int rsa_genrsa(rsa_NUMBER, rsa_NUMBER, rsa_NUMBER *, rsa_NUMBER *, rsa_N UMBER *);
int rsa_encode(char *, int, rsa_NUMBER, rsa_NUMBER); int rsa_encode(char *, int, rsa_NUMBER, rsa_NUMBER);
int rsa_decode(char *, int, rsa_NUMBER, rsa_NUMBER); int rsa_decode(char *, int, rsa_NUMBER, rsa_NUMBER);
int rsa_encode_size(rsa_NUMBER); int rsa_encode_size(rsa_NUMBER);
/****************** /******************
* nio.h * * nio.h *
******************/ ******************/
 End of changes. 2 change blocks. 
1 lines changed or deleted 5 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/