3DConversions.h | 3DConversions.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: 3DConversions.h 22516 2008-03-07 15:14:26Z moneta $ | // @(#)root/mathcore:$Id: 3DConversions.h 32727 2010-03-24 11:18:41Z rdm $ | |||
// Authors: W. Brown, M. Fischler, L. Moneta 2005 | // Authors: W. Brown, M. Fischler, L. Moneta 2005 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2005, LCG ROOT FNAL MathLib Team * | * Copyright (c) 2005, LCG ROOT FNAL MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class Rotation in 3 dimensions, represented by 3x3 matri x | // Header file for class Rotation in 3 dimensions, represented by 3x3 matri x | |||
skipping to change at line 34 | skipping to change at line 34 | |||
#include "Math/GenVector/RotationXfwd.h" | #include "Math/GenVector/RotationXfwd.h" | |||
#include "Math/GenVector/RotationYfwd.h" | #include "Math/GenVector/RotationYfwd.h" | |||
#include "Math/GenVector/RotationZfwd.h" | #include "Math/GenVector/RotationZfwd.h" | |||
#include "Math/GenVector/RotationZYXfwd.h" | #include "Math/GenVector/RotationZYXfwd.h" | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
namespace gv_detail { | namespace gv_detail { | |||
// flag a compile time error when a wrong conversion is instantiated | // flag a link time error when a wrong conversion is instantiated | |||
struct ERROR_This_Rotation_Conversion_is_NOT_Supported; | struct ERROR_This_Rotation_Conversion_is_NOT_Supported { | |||
ERROR_This_Rotation_Conversion_is_NOT_Supported(); | ||||
}; | ||||
template<class R1, class R2> | template<class R1, class R2> | |||
void convert( R1 const &, R2 const) { | void convert( R1 const &, R2 const) { | |||
ERROR_This_Rotation_Conversion_is_NOT_Supported(); | ERROR_This_Rotation_Conversion_is_NOT_Supported(); | |||
} | } | |||
// ---------------------------------------------------------------------- | // ---------------------------------------------------------------------- | |||
// conversions from Rotation3D | // conversions from Rotation3D | |||
/** | /** | |||
conversion functions from 3D rotation. | conversion functions from 3D rotation. | |||
For converting to Euler Angles see | For converting to Euler Angles see | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 5 lines changed or added | |||
AllIntegrationTypes.h | AllIntegrationTypes.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: AllIntegrationTypes.h 24403 2008-06-20 08:31:10Z moneta $ | // @(#)root/mathmore:$Id: AllIntegrationTypes.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: Magdalena Slawinska 10/2007 | // Author: Magdalena Slawinska 10/2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2007 ROOT Foundation, CERN/PH-SFT * | * Copyright (c) 2007 ROOT Foundation, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Integration types for | // Integration types for | |||
skipping to change at line 30 | skipping to change at line 30 | |||
// type of integration | // type of integration | |||
//for 1-dim integration | //for 1-dim integration | |||
namespace IntegrationOneDim { | namespace IntegrationOneDim { | |||
/** | /** | |||
enumeration specifying the integration types. | enumeration specifying the integration types. | |||
<ul> | <ul> | |||
<li>kGAUSS: simple Gauss integration method with fixed rule | <li>kGAUSS: simple Gauss integration method with fixed rule | |||
<li>kLEGENDRE: Gauss-Legendre integration | ||||
<li>kNONADAPTIVE : to be used for smooth functions | <li>kNONADAPTIVE : to be used for smooth functions | |||
<li>kADAPTIVE : to be used for general functions without singularit ies. | <li>kADAPTIVE : to be used for general functions without singularit ies. | |||
<li>kADAPTIVESINGULAR: default adaptive integration type which can be used in the case of the presence of singularities. | <li>kADAPTIVESINGULAR: default adaptive integration type which can be used in the case of the presence of singularities. | |||
</ul> | </ul> | |||
@ingroup Integration | @ingroup Integration | |||
*/ | */ | |||
enum Type { kGAUSS, kADAPTIVE, kADAPTIVESINGULAR, kNONADAPTIVE}; | enum Type { kGAUSS, kLEGENDRE, kADAPTIVE, kADAPTIVESINGULAR, kNONADAPT IVE}; | |||
} | } | |||
//for multi-dim integration | //for multi-dim integration | |||
namespace IntegrationMultiDim { | namespace IntegrationMultiDim { | |||
/** | /** | |||
enumeration specifying the integration types. | enumeration specifying the integration types. | |||
<ul> | <ul> | |||
<li>ADAPTIVE : adaptive multi-dimensional integration | <li>ADAPTIVE : adaptive multi-dimensional integration | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 3 lines changed or added | |||
Api.h | Api.h | |||
---|---|---|---|---|
skipping to change at line 210 | skipping to change at line 210 | |||
} | } | |||
void Init(const char* fname); | void Init(const char* fname); | |||
const char *Name(); | const char *Name(); | |||
const char *Prepname(); | const char *Prepname(); | |||
FILE* fp(); | FILE* fp(); | |||
int MaxLine(); | int MaxLine(); | |||
G__SourceFileInfo& IncludedFrom(); | G__SourceFileInfo& IncludedFrom(); | |||
long Property(); | long Property(); | |||
int IsValid(); | int IsValid(); | |||
int Next(); | int Next(); | |||
static int SerialNumber(); | ||||
private: | private: | |||
int filen; | int filen; | |||
}; | }; | |||
/********************************************************************* | /********************************************************************* | |||
* G__IncludePathInfo | * G__IncludePathInfo | |||
*********************************************************************/ | *********************************************************************/ | |||
class | class | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
G__EXPORT | G__EXPORT | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added | |||
BayesianCalculator.h | BayesianCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: BayesianCalculator.h 31742 2009-12-09 17:34:15Z m oneta $ | // @(#)root/roostats:$Id: BayesianCalculator.h 33228 2010-04-27 07:09:42Z 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 64 | skipping to change at line 64 | |||
// destructor | // destructor | |||
virtual ~BayesianCalculator(); | virtual ~BayesianCalculator(); | |||
RooPlot* GetPosteriorPlot() const; | RooPlot* GetPosteriorPlot() const; | |||
// return posterior pdf (object is managed by the BayesianCalculator class) | // return posterior pdf (object is managed by the BayesianCalculator class) | |||
RooAbsPdf* GetPosteriorPdf() const; | RooAbsPdf* GetPosteriorPdf() const; | |||
virtual SimpleInterval* GetInterval() const ; | virtual SimpleInterval* GetInterval() const ; | |||
virtual void SetData( RooAbsData & data ) { fData = &data; } | virtual void SetData( RooAbsData & data ) { | |||
fData = &data; | ||||
ClearAll(); | ||||
} | ||||
virtual void SetModel( const ModelConfig& model ); | virtual void SetModel( const ModelConfig& model ); | |||
// 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 ) { | virtual void SetTestSize( Double_t size ) { | |||
fSize = size; | fSize = size; | |||
if (fInterval) delete fInterval; | fValidInterval = false; | |||
fInterval = 0; | ||||
} | } | |||
// 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 ) { SetTestSize(1.-cl); } | virtual void SetConfidenceLevel( Double_t cl ) { SetTestSize(1.-cl); } | |||
// Get the size of the test (eg. rate of Type I error) | // Get the size of the test (eg. rate of Type I error) | |||
virtual Double_t Size() const { return fSize; } | virtual Double_t Size() const { return fSize; } | |||
// Get the Confidence level for the test | // Get the Confidence level for the test | |||
virtual Double_t ConfidenceLevel() const { return 1.-fSize; } | virtual Double_t ConfidenceLevel() const { return 1.-fSize; } | |||
protected: | protected: | |||
skipping to change at line 105 | skipping to change at line 107 | |||
RooAbsPdf* fPdf; | RooAbsPdf* fPdf; | |||
RooArgSet fPOI; | RooArgSet fPOI; | |||
RooAbsPdf* fPriorPOI; | RooAbsPdf* fPriorPOI; | |||
RooArgSet fNuisanceParameters; | RooArgSet fNuisanceParameters; | |||
mutable RooAbsPdf* fProductPdf; | mutable RooAbsPdf* fProductPdf; | |||
mutable RooAbsReal* fLogLike; | mutable RooAbsReal* fLogLike; | |||
mutable RooAbsReal* fLikelihood; | mutable RooAbsReal* fLikelihood; | |||
mutable RooAbsReal* fIntegratedLikelihood; | mutable RooAbsReal* fIntegratedLikelihood; | |||
mutable RooAbsPdf* fPosteriorPdf; | mutable RooAbsPdf* fPosteriorPdf; | |||
mutable SimpleInterval* fInterval; // cached pointer to resulting in | mutable Double_t fLower; | |||
terval | mutable Double_t fUpper; | |||
mutable Bool_t fValidInterval; | ||||
double fSize; // size used for getting the interval | double fSize; // size used for getting the interval | |||
protected: | protected: | |||
ClassDef(BayesianCalculator,1) // BayesianCalculator class | ClassDef(BayesianCalculator,1) // BayesianCalculator class | |||
}; | }; | |||
} | } | |||
End of changes. 4 change blocks. | ||||
6 lines changed or deleted | 9 lines changed or added | |||
BinData.h | BinData.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: BinData.h 31180 2009-11-16 10:54:05Z moneta $ | // @(#)root/mathcore:$Id: BinData.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Wed Aug 30 11:15:23 2006 | // Author: L. Moneta Wed Aug 30 11:15:23 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 BinData | // Header file for class BinData | |||
skipping to change at line 209 | skipping to change at line 209 | |||
add multi-dim coordinate data with only error in value | add multi-dim coordinate data with only error in value | |||
*/ | */ | |||
void Add(const double *x, double val, double eval); | void Add(const double *x, double val, double eval); | |||
/** | /** | |||
add multi-dim coordinate data with both error in coordinates and valu e | add multi-dim coordinate data with both error in coordinates and valu e | |||
*/ | */ | |||
void Add(const double *x, double val, const double * ex, double eval); | void Add(const double *x, double val, const double * ex, double eval); | |||
/** | /** | |||
add multi-dim coordinate data with both error in coordinates and valu | ||||
e | ||||
*/ | ||||
void Add(const double *x, double val, const double * ex, double elval, | ||||
double ehval); | ||||
/** | ||||
return a pointer to the coordinates data for the given fit point | return a pointer to the coordinates data for the given fit point | |||
*/ | */ | |||
const double * Coords(unsigned int ipoint) const { | const double * Coords(unsigned int ipoint) const { | |||
if (fDataVector) | if (fDataVector) | |||
return &((fDataVector->Data())[ ipoint*fPointSize ] ); | return &((fDataVector->Data())[ ipoint*fPointSize ] ); | |||
return fDataWrapper->Coords(ipoint); | return fDataWrapper->Coords(ipoint); | |||
} | } | |||
/** | /** | |||
skipping to change at line 467 | skipping to change at line 472 | |||
bool HasBinEdges() const { | bool HasBinEdges() const { | |||
return fBinEdge.size() > 0 && fBinEdge.size() == fDim*fNPoints; | return fBinEdge.size() > 0 && fBinEdge.size() == fDim*fNPoints; | |||
} | } | |||
/** | /** | |||
add the bin width data, a pointer to an array with the bin upper edg e information. | add the bin width data, a pointer to an array with the bin upper edg e information. | |||
This is needed when fitting with integral options | This is needed when fitting with integral options | |||
The information is added for the previously inserted point. | The information is added for the previously inserted point. | |||
BinData::Add must be called before | BinData::Add must be called before | |||
*/ | */ | |||
void AddBinUpEdge(const double * binwidth); | void AddBinUpEdge(const double * xup); | |||
/** | /** | |||
retrieve the reference volume used to normalize the data when the op tion bin volume is set | retrieve the reference volume used to normalize the data when the op tion bin volume is set | |||
*/ | */ | |||
double RefVolume() const { return fRefVolume; } | double RefVolume() const { return fRefVolume; } | |||
/** | /** | |||
set the reference volume used to normalize the data when the option b in volume is set | set the reference volume used to normalize the data when the option b in volume is set | |||
*/ | */ | |||
void SetRefVolume(double value) { fRefVolume = value; } | void SetRefVolume(double value) { fRefVolume = value; } | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 9 lines changed or added | |||
BrentMethods.h | BrentMethods.h | |||
---|---|---|---|---|
#ifndef ROOT_Math_BrentMethods | #ifndef ROOT_Math_BrentMethods | |||
#define ROOT_Math_BrentMethods | #define ROOT_Math_BrentMethods | |||
#include <Math/IFunction.h> | #ifndef ROOT_Math_IFunctionfwd | |||
#include "Math/IFunctionfwd.h" | ||||
#endif | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
double MinimStep(const IGenFunction* f, int type, double &xmin, double &xma | namespace BrentMethods { | |||
x, double fy, int fNpx = 100); | ||||
double MinimBrent(const IGenFunction* f, int type, double &xmin, double &xm | /** | |||
ax, double xmiddle, double fy, bool &ok); | Grid search implementation, used to bracket the minimum and later | |||
use Brent's method with the bracketed interval | ||||
The step of the search is set to (xmax-xmin)/fNpx | ||||
type: 0-returns MinimumX | ||||
1-returns Minimum | ||||
2-returns MaximumX | ||||
3-returns Maximum | ||||
4-returns X corresponding to fy | ||||
*/ | ||||
double MinimStep(const IGenFunction* f, int type, double &xmin, double & | ||||
xmax, double fy, int npx = 100); | ||||
/** | ||||
Finds a minimum of a function, if the function is unimodal between x | ||||
min and xmax | ||||
This method uses a combination of golden section search and parabolic | ||||
interpolation | ||||
Details about convergence and properties of this algorithm can be | ||||
found in the book by R.P.Brent "Algorithms for Minimization Without D | ||||
erivatives" | ||||
or in the "Numerical Recipes", chapter 10.2 | ||||
convergence is reached using tolerance = 2 *( epsrel * abs(x) + epsa | ||||
bs) | ||||
type: 0-returns MinimumX | ||||
1-returns Minimum | ||||
2-returns MaximumX | ||||
3-returns Maximum | ||||
4-returns X corresponding to fy | ||||
if ok=true the method has converged. | ||||
Maxiter returns the actual number of iteration performed | ||||
*/ | ||||
double MinimBrent(const IGenFunction* f, int type, double &xmin, double | ||||
&xmax, double xmiddle, double fy, bool &ok, int &niter, double epsabs = 1.E | ||||
-8, double epsrel = 1.E-10, int maxiter = 100 ); | ||||
} | } // end namespace BrentMethods | |||
} | } // end namespace Math | |||
} // ned namespace ROOT | ||||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
7 lines changed or deleted | 49 lines changed or added | |||
BrentMinimizer1D.h | BrentMinimizer1D.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: BrentMinimizer1D.h 31583 2009-12-06 13:55:26Z rdm $ | // @(#)root/mathcore:$Id: BrentMinimizer1D.h 32583 2010-03-12 09:57:42Z mon eta $ | |||
// Author: David Gonzalez Maline 2/2008 | // Author: David Gonzalez Maline 2/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2004 Maline, CERN/PH-SFT * | * Copyright (c) 2004 Maline, 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 30 | skipping to change at line 30 | |||
* 330, Boston, MA 02111-1307 USA, or contact the author. * | * 330, Boston, MA 02111-1307 USA, or contact the author. * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class BrentMinimizer1D | // Header file for class BrentMinimizer1D | |||
// | // | |||
// Created by: Maline at Mon Feb 4 09:32:36 2008 | // Created by: Maline at Mon Feb 4 09:32:36 2008 | |||
// | // | |||
// | // | |||
#include "Math/IMinimizer1D.h" | ||||
#include "Math/IFunction.h" | ||||
#ifndef ROOT_Math_BrentMinimizer1D | #ifndef ROOT_Math_BrentMinimizer1D | |||
#define ROOT_Math_BrentMinimizer1D | #define ROOT_Math_BrentMinimizer1D | |||
#ifndef ROOT_Math_IMinimizer1D | ||||
#include "Math/IMinimizer1D.h" | ||||
#endif | ||||
#ifndef ROOT_Math_IFunctionfwd | ||||
#include "Math/IFunctionfwd.h" | ||||
#endif | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ __________________ | //_________________________________________________________________________ __________________ | |||
/** | /** | |||
User class for performing function minimization | User class for performing function minimization | |||
It will use the Brent Method for function minimization in a given interv al. | It will use the Brent Method for function minimization in a given interv al. | |||
First, a grid search is used to bracket the minimum value | ||||
with the a step size = (xmax-xmin)/npx. The step size | ||||
can be controlled via the SetNpx() function. A default value of npx = 10 | ||||
0 is used. | ||||
The default value con be changed using the static method SetDefaultNpx. | ||||
If the function is unimodal or if its extrema are far apart, setting the | ||||
fNpx to | ||||
a small value speeds the algorithm up many times. | ||||
Then, Brent's method is applied on the bracketed interval. | ||||
If the Brent method fails to converge the bracketing is repeted on the l | ||||
atest best estimate of the | ||||
interval. The procedure is repeted with a maximum value (default =10) wh | ||||
ich can be set for all | ||||
BrentRootFinder classes with the method SetDefaultNSearch | ||||
This class is implemented from TF1::GetMinimum. | This class is implemented from TF1::GetMinimum. | |||
To use the class, three steps have to be taken: | To use the class, three steps have to be taken: | |||
1. Create the class. | 1. Create the class. | |||
2. Set a function within an interval to look for the minimum. | 2. Set a function within an interval to look for the minimum. | |||
3. Call the Minimize function with the error parameters. | 3. Call the Minimize function with the error parameters. | |||
If another minimization is to be performed, repeat the last two steps. | If another minimization is to be performed, repeat the last two steps. | |||
@ingroup Min1D | @ingroup Min1D | |||
*/ | */ | |||
class BrentMinimizer1D: IMinimizer1D { | class BrentMinimizer1D: ROOT::Math::IMinimizer1D { | |||
public: | public: | |||
/** Default Constructor. */ | /** Default Constructor. */ | |||
BrentMinimizer1D(); | BrentMinimizer1D(); | |||
/** Default Destructor. */ | /** Default Destructor. */ | |||
virtual ~BrentMinimizer1D(); | virtual ~BrentMinimizer1D() {} | |||
public: | public: | |||
/** Return current estimate of the position of the minimum. */ | /** Return current estimate of the position of the minimum. */ | |||
virtual double XMinimum() const; | virtual double XMinimum() const { return fXMinimum; } | |||
/** Return current lower bound of the minimization interval. */ | /** Return current lower bound of the minimization interval. */ | |||
virtual double XLower() const; | virtual double XLower() const { return fXMin; } | |||
/** Return current upper bound of the minimization interval. */ | /** Return current upper bound of the minimization interval. */ | |||
virtual double XUpper() const; | virtual double XUpper() const { return fXMax; } | |||
/** Return function value at current estimate of the minimum. */ | /** Return function value at current estimate of the minimum. */ | |||
virtual double FValMinimum() const; | virtual double FValMinimum() const; | |||
/** Return function value at current lower bound of the minimization interval. */ | /** Return function value at current lower bound of the minimization interval. */ | |||
virtual double FValLower() const; | virtual double FValLower() const; | |||
/** Return function value at current upper bound of the minimization interval. */ | /** Return function value at current upper bound of the minimization interval. */ | |||
virtual double FValUpper() const; | virtual double FValUpper() const; | |||
/** Find minimum position iterating until convergence specified by th e absolute and relative tolerance or | /** Find minimum position iterating until convergence specified by th e absolute and relative tolerance or | |||
the maximum number of iteration is reached. | the maximum number of iteration is reached. | |||
Return true if iterations converged successfully | ||||
\@param maxIter maximum number of iterations. | \@param maxIter maximum number of iterations. | |||
\@param absTol desired absolute error in the minimum position. | \@param absTol desired absolute error in the minimum position (de | |||
\@param absTol desired relative error in the minimum position. | fault 1.E-8) | |||
\@param absTol desired relative error in the minimum position (de | ||||
fault = 1.E-10) | ||||
*/ | */ | |||
virtual int Minimize( int maxIter, double absTol, double relTol); | virtual bool Minimize( int maxIter, double absTol = 1.E-8, double rel Tol = 1.E-10); | |||
/** Return number of iteration used to find minimum */ | /** Return number of iteration used to find minimum */ | |||
virtual int Iterations() const; | virtual int Iterations() const { return fNIter; } | |||
/** Return name of minimization algorithm ("BrentMinimizer1D") */ | /** Return name of minimization algorithm ("BrentMinimizer1D") */ | |||
virtual const char * Name() const; | virtual const char * Name() const; | |||
/** Sets function to be minimized. | /** Sets function to be minimized. | |||
\@param f Function to be minimized. | \@param f Function to be minimized. | |||
\@param xlow Lower bound of the search interval. | \@param xlow Lower bound of the search interval. | |||
\@param xup Upper bound of the search interval. | \@param xup Upper bound of the search interval. | |||
*/ | */ | |||
int SetFunction(const ROOT::Math::IGenFunction& f, double xlow, doubl | void SetFunction(const ROOT::Math::IGenFunction& f, double xlow, doub | |||
e xup); | le xup); | |||
/** Set the number of point used to bracket root using a grid */ | ||||
void SetNpx(int npx) { fNpx = npx; } | ||||
/** Returns status of last estimate. If = 0 is OK */ | ||||
int Status() const { return fStatus; } | ||||
// static function used to modify the default parameters | ||||
/** set number of default Npx used at construction time (when SetNpx | ||||
is not called) | ||||
Default value is 100 | ||||
*/ | ||||
static void SetDefaultNpx(int npx); | ||||
/** set number of times the bracketing search in combination with is | ||||
done to find a good interval | ||||
Default value is 10 | ||||
*/ | ||||
static void SetDefaultNSearch(int n); | ||||
private: | ||||
protected: | ||||
const IGenFunction* fFunction; // Pointer to the function. | const IGenFunction* fFunction; // Pointer to the function. | |||
int fNIter; // Number of iterations needed for the | ||||
last estimation. | ||||
int fNpx; // Number of points to bracket minimum | ||||
with grid (def is 100) | ||||
int fStatus; // Status of code of the last estimate | ||||
double fXMin; // Lower bound of the search interval. | double fXMin; // Lower bound of the search interval. | |||
double fXMax; // Upper bound of the search interval | double fXMax; // Upper bound of the search interval | |||
double fXMinimum; // Position of the stimated minimum. | double fXMinimum; // Position of the stimated minimum. | |||
int fNIter; // Number of iterations needed for the last stimation. | ||||
}; // end class BrentMinimizer1D | }; // end class BrentMinimizer1D | |||
} // end namespace Math | } // end namespace Math | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Math_BrentMinimizer1D */ | #endif /* ROOT_Math_BrentMinimizer1D */ | |||
End of changes. 17 change blocks. | ||||
18 lines changed or deleted | 65 lines changed or added | |||
BrentRootFinder.h | BrentRootFinder.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: BrentRootFinder.h 24477 2008-06-23 12:58:47Z mone ta $ | // @(#)root/mathcore:$Id: BrentRootFinder.h 32583 2010-03-12 09:57:42Z mone ta $ | |||
// Authors: David Gonzalez Maline 01/2008 | // Authors: David Gonzalez Maline 01/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 , LCG ROOT MathLib Team * | * Copyright (c) 2006 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* 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 33 | skipping to change at line 33 | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header for the RootFinder | // Header for the RootFinder | |||
// | // | |||
// Created by: David Gonzalez Maline : Wed Jan 21 2008 | // Created by: David Gonzalez Maline : Wed Jan 21 2008 | |||
// | // | |||
#ifndef ROOT_Math_BrentRootFinder | #ifndef ROOT_Math_BrentRootFinder | |||
#define ROOT_Math_BrentRootFinder | #define ROOT_Math_BrentRootFinder | |||
#include <Math/IFunction.h> | #ifndef ROOT_Math_IFunctionfwd | |||
#include <Math/IRootFinderMethod.h> | #include "Math/IFunctionfwd.h" | |||
#endif | ||||
#ifndef ROOT_Math_IRootFinderMethod | ||||
#include "Math/IRootFinderMethod.h" | ||||
#endif | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ __________________ | //_________________________________________________________________________ __________________ | |||
/** | /** | |||
User class for finding function roots. | Class for finding the root of a one dimensional function using the Brent | |||
algorithm. | ||||
It will use the Brent Method for finding function roots in a given inter | ||||
val. | ||||
First, a grid search is used to bracket the root value | ||||
with the a step size = (xmax-xmin)/npx. The step size | ||||
can be controlled via the SetNpx() function. A default value of npx = 10 | ||||
0 is used. | ||||
The default value con be changed using the static method SetDefaultNpx. | ||||
If the function is unimodal or if its extrema are far apart, setting the | ||||
fNpx to | ||||
a small value speeds the algorithm up many times. | ||||
Then, Brent's method is applied on the bracketed interval. | ||||
It will use the Brent Method for finding function roots in a given inter val. | It will use the Brent Method for finding function roots in a given inter val. | |||
If the Brent method fails to converge the bracketing is repeted on the l | ||||
atest best estimate of the | ||||
interval. The procedure is repeted with a maximum value (default =10) wh | ||||
ich can be set for all | ||||
BrentRootFinder classes with the method SetDefaultNSearch | ||||
This class is implemented from TF1::GetX() method. | This class is implemented from TF1::GetX() method. | |||
@ingroup RootFinders | @ingroup RootFinders | |||
*/ | */ | |||
class BrentRootFinder: public IRootFinderMethod { | class BrentRootFinder: public IRootFinderMethod { | |||
public: | public: | |||
/** Default Destructor. */ | ||||
virtual ~BrentRootFinder(); | ||||
/** Default Constructor. */ | /** Default Constructor. */ | |||
BrentRootFinder(); | BrentRootFinder(); | |||
/** Default Destructor. */ | ||||
virtual ~BrentRootFinder() {} | ||||
/** Set function to solve and the interval in where to look for the r oot. | /** Set function to solve and the interval in where to look for the r oot. | |||
\@param f Function to be minimized. | \@param f Function to be minimized. | |||
\@param xlow Lower bound of the search interval. | \@param xlow Lower bound of the search interval. | |||
\@param xup Upper bound of the search interval. | \@param xup Upper bound of the search interval. | |||
*/ | */ | |||
using IRootFinderMethod::SetFunction; | using IRootFinderMethod::SetFunction; | |||
int SetFunction(const ROOT::Math::IGenFunction& f, double xlow, doubl e xup); | bool SetFunction(const ROOT::Math::IGenFunction& f, double xlow, doub le xup); | |||
/** Returns the X value corresponding to the function value fy for (x min<x<xmax). | /** Returns the X value corresponding to the function value fy for (x min<x<xmax). | |||
Method: | Method: | |||
First, the grid search is used to bracket the maximum | First, the grid search is used to bracket the maximum | |||
with the step size = (xmax-xmin)/fNpx. This way, the step size | with the step size = (xmax-xmin)/fNpx. This way, the step size | |||
can be controlled via the SetNpx() function. If the function is | can be controlled via the SetNpx() function. If the function is | |||
unimodal or if its extrema are far apart, setting the fNpx to | unimodal or if its extrema are far apart, setting the fNpx to | |||
a small value speeds the algorithm up many times. | a small value speeds the algorithm up many times. | |||
Then, Brent's method is applied on the bracketed interval. | Then, Brent's method is applied on the bracketed interval. | |||
\@param maxIter maximum number of iterations. | \@param maxIter maximum number of iterations. | |||
\@param absTol desired absolute error in the minimum position. | \@param absTol desired absolute error in the minimum position. | |||
\@param absTol desired relative error in the minimum position. | \@param absTol desired relative error in the minimum position. | |||
*/ | */ | |||
int Solve(int maxIter = 100, double absTol = 1E-3, double relTol = 1E | bool Solve(int maxIter = 100, double absTol = 1E-8, double relTol = 1 | |||
-6); | E-10); | |||
/** Set the number of point used to bracket root using a grid */ | ||||
void SetNpx(int npx) { fNpx = npx; } | ||||
/** Returns root value. Need to call first Solve(). */ | /** Returns root value. Need to call first Solve(). */ | |||
double Root() const; | double Root() const { return fRoot; } | |||
/** Returns status of last estimate. If = 0 is OK */ | ||||
int Status() const { return fStatus; } | ||||
/** Return number of iteration used to find minimum */ | ||||
int Iterations() const { return fNIter; } | ||||
/** Return name of root finder algorithm ("BrentRootFinder"). */ | /** Return name of root finder algorithm ("BrentRootFinder"). */ | |||
const char* Name() const; | const char* Name() const; | |||
protected: | // static function used to modify the default parameters | |||
/** set number of default Npx used at construction time (when SetNpx | ||||
is not called) | ||||
Default value is 100 | ||||
*/ | ||||
static void SetDefaultNpx(int npx); | ||||
/** set number of times the bracketing search in combination with is | ||||
done to find a good interval | ||||
Default value is 10 | ||||
*/ | ||||
static void SetDefaultNSearch(int n); | ||||
private: | ||||
const IGenFunction* fFunction; // Pointer to the function. | const IGenFunction* fFunction; // Pointer to the function. | |||
int fNIter; // Number of iterations needed for the | ||||
last estimation. | ||||
int fNpx; // Number of points to bracket root wi | ||||
th initial grid (def is 100) | ||||
int fStatus; // Status of code of the last estimate | ||||
double fXMin; // Lower bound of the search interval. | double fXMin; // Lower bound of the search interval. | |||
double fXMax; // Upper bound of the search interval | double fXMax; // Upper bound of the search interval | |||
double fRoot; // Current stimation of the function r oot. | double fRoot; // Current stimation of the function r oot. | |||
}; | }; | |||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#endif /* ROOT_Math_BrentRootFinder */ | #endif /* ROOT_Math_BrentRootFinder */ | |||
End of changes. 11 change blocks. | ||||
13 lines changed or deleted | 64 lines changed or added | |||
Buttons.h | Buttons.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: Buttons.h 30690 2009-10-12 18:12:30Z rdm $ */ | /* @(#)root/base:$Id: Buttons.h 32308 2010-02-10 08:39:43Z brun $ */ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_Buttons | #ifndef ROOT_Buttons | |||
#define ROOT_Buttons | #define ROOT_Buttons | |||
enum EEventType { | enum EEventType { | |||
kNoEvent = 0, | kNoEvent = 0, | |||
kButton1Down = 1, kButton2Down = 2, kButton3Down = 3, kKeyDown = 4, | kButton1Down = 1, kButton2Down = 2, kButton3Down = 3, kKeyDown = 4, | |||
kWheelUp = 5, kWheelDown = 6, kButton1Shift = 7, | kWheelUp = 5, kWheelDown = 6, kButton1Shift = 7, kButton1S hiftMotion = 8, | |||
kButton1Up = 11, kButton2Up = 12, kButton3Up = 13, kKeyUp = 14, | kButton1Up = 11, kButton2Up = 12, kButton3Up = 13, kKeyUp = 14, | |||
kButton1Motion = 21, kButton2Motion = 22, kButton3Motion = 23, kKeyPress = 24, | kButton1Motion = 21, kButton2Motion = 22, kButton3Motion = 23, kKeyPress = 24, | |||
kButton1Locate = 41, kButton2Locate = 42, kButton3Locate = 43, kESC = 27, | kButton1Locate = 41, kButton2Locate = 42, kButton3Locate = 43, kESC = 27, | |||
kMouseMotion = 51, kMouseEnter = 52, kMouseLeave = 53, | kMouseMotion = 51, kMouseEnter = 52, kMouseLeave = 53, | |||
kButton1Double = 61, kButton2Double = 62, kButton3Double = 63 | kButton1Double = 61, kButton2Double = 62, kButton3Double = 63 | |||
}; | }; | |||
enum EEditMode { | enum EEditMode { | |||
kPolyLine = 1, kSPolyLine = 2, kPolyGone = 3, | kPolyLine = 1, kSPolyLine = 2, kPolyGone = 3, | |||
kSPolyGone = 4, kBox = 5, kDelete = 6, | kSPolyGone = 4, kBox = 5, kDelete = 6, | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
Class.h | Class.h | |||
---|---|---|---|---|
skipping to change at line 59 | skipping to change at line 59 | |||
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); | ||||
long Tagnum() const { return(tagnum); } | long 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(int 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(); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
ClassBuilder.h | ClassBuilder.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: ClassBuilder.h 29355 2009-07-06 17:34:05Z axel $ | // @(#)root/reflex:$Id: ClassBuilder.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_ClassBuilder | #ifndef Reflex_ClassBuilder | |||
#define Reflex_ClassBuilder | #define Reflex_ClassBuilder | |||
skipping to change at line 110 | skipping to change at line 110 | |||
* which will be emtpied with the next call of a builder | * which will be emtpied with the next call of a builder | |||
* class and attached to the item built with this call | * class and attached to the item built with this call | |||
* | * | |||
* @param key the PropertyNth key | * @param key the PropertyNth key | |||
* @param value the value of the PropertyNth | * @param value the value of the PropertyNth | |||
*/ | */ | |||
void AddProperty(const char* key, | void AddProperty(const char* key, | |||
Any value); | Any value); | |||
void AddProperty(const char* key, | void AddProperty(const char* key, | |||
const char* value); | const char* value); | |||
void AddProperty(const char* key, | ||||
const Literal& value) { AddProperty(key, (const char*)v | ||||
alue); } | ||||
/** | /** | |||
* Register an on demand builder for data members with this class. | * Register an on demand builder for data members with this class. | |||
*/ | */ | |||
void AddOnDemandDataMemberBuilder(OnDemandBuilderForScope* odb); | void AddOnDemandDataMemberBuilder(OnDemandBuilderForScope* odb); | |||
/** | /** | |||
* Register an on demand builder for function members with this class. | * Register an on demand builder for function members with this class. | |||
*/ | */ | |||
void AddOnDemandFunctionMemberBuilder(OnDemandBuilderForScope* odb); | void AddOnDemandFunctionMemberBuilder(OnDemandBuilderForScope* odb); | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 5 lines changed or added | |||
Config.h | Config.h | |||
---|---|---|---|---|
// @(#)root/tmva $Id: Config.h 29195 2009-06-24 10:39:49Z brun $ | // @(#)root/tmva $Id: Config.h 32128 2010-01-28 07:13:49Z brun $ | |||
// 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 55 | skipping to change at line 55 | |||
#endif | #endif | |||
namespace TMVA { | namespace TMVA { | |||
class MsgLogger; | class MsgLogger; | |||
class Config { | class Config { | |||
public: | public: | |||
static Config& Instance() { return fgConfigPtr ? *fgConfigPtr : *(fgC | static Config& Instance(); | |||
onfigPtr = new Config()); } | static void DestroyInstance(); | |||
static void DestroyInstance() { if (fgConfigPtr != 0) { delete fgC | ||||
onfigPtr; fgConfigPtr = 0; } } | ||||
Bool_t UseColor() const { return fUseColoredConsole; } | Bool_t UseColor() const { return fUseColoredConsole; } | |||
void SetUseColor( Bool_t uc ) { fUseColoredConsole = uc; } | void SetUseColor( Bool_t uc ) { fUseColoredConsole = uc; } | |||
Bool_t IsSilent() const { return fSilent; } | Bool_t IsSilent() const { return fSilent; } | |||
void SetSilent( Bool_t s ) { fSilent = s; } | void SetSilent( Bool_t s ) { fSilent = s; } | |||
Bool_t WriteOptionsReference() const { return fWriteOptionsReference; } | Bool_t WriteOptionsReference() const { return fWriteOptionsReference; } | |||
void SetWriteOptionsReference( Bool_t w ) { fWriteOptionsReference = w; } | void SetWriteOptionsReference( Bool_t w ) { fWriteOptionsReference = w; } | |||
End of changes. 2 change blocks. | ||||
5 lines changed or deleted | 3 lines changed or added | |||
DataRange.h | DataRange.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: DataRange.h 25486 2008-09-22 12:43:03Z moneta $ | // @(#)root/mathcore:$Id: DataRange.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Wed Aug 30 11:05:02 2006 | // Author: L. Moneta Wed Aug 30 11:05:02 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 DataRange | // Header file for class DataRange | |||
skipping to change at line 74 | skipping to change at line 74 | |||
/** | /** | |||
return range size for coordinate icoord (starts from zero) | return range size for coordinate icoord (starts from zero) | |||
Size == 0 indicates no range is present [-inf, + inf] | Size == 0 indicates no range is present [-inf, + inf] | |||
*/ | */ | |||
unsigned int Size(unsigned int icoord) const { | unsigned int Size(unsigned int icoord) const { | |||
return icoord < fRanges.size() ? fRanges[icoord].size() : 0; | return icoord < fRanges.size() ? fRanges[icoord].size() : 0; | |||
} | } | |||
/** | /** | |||
return true if a range has been set in any of the coordinates | ||||
i.e. when it is not [-inf,+inf] for all coordinates | ||||
Avoid in case of multi-dim to loop on all the coordinated and ask the | ||||
size | ||||
*/ | ||||
bool IsSet() const { | ||||
for (unsigned int icoord = 0; icoord < fRanges.size(); ++icoord) | ||||
if (fRanges[icoord].size() > 0) return true; | ||||
return false; | ||||
} | ||||
/** | ||||
return the vector of ranges for the coordinate icoord | return the vector of ranges for the coordinate icoord | |||
*/ | */ | |||
const RangeSet & Ranges(unsigned int icoord) const { | const RangeSet & Ranges(unsigned int icoord) const { | |||
// return icoord < fRanges.size() ? fRanges[icoord] : RangeSet(); | // return icoord < fRanges.size() ? fRanges[icoord] : RangeSet(); | |||
return fRanges.at(icoord); | return fRanges.at(icoord); | |||
} | } | |||
/** | /** | |||
return the first range for the coordinate icoord. | return the first range for the coordinate icoord. | |||
Useful method when only one range is present for the given coordinat e | Useful method when only one range is present for the given coordinat e | |||
*/ | */ | |||
std::pair<double, double> operator() (unsigned int icoord) const { | std::pair<double, double> operator() (unsigned int icoord) const { | |||
return Size(icoord) > 0 ? fRanges[icoord].front() : std::make_pair<do uble,double>(0,0); | return Size(icoord) > 0 ? fRanges[icoord].front() : std::make_pair<do uble,double>(0,0); | |||
} | } | |||
/** | /** | |||
get the first range for given coordinate | get the first range for given coordinate. If range does not exist | |||
return -inf, +inf | ||||
*/ | */ | |||
void GetRange(unsigned int icoord, double & xmin, double & xmax) const { | void GetRange(unsigned int icoord, double & xmin, double & xmax) const { | |||
if (Size(icoord) == 0) { | if (Size(icoord) == 0) GetInfRange(xmin,xmax); | |||
xmin = 0; | else { | |||
xmax = 0; | xmin = fRanges[icoord].front().first; | |||
return; | xmax = fRanges[icoord].front().second; | |||
} | } | |||
xmin = fRanges[icoord].front().first; | ||||
xmax = fRanges[icoord].front().second; | ||||
} | } | |||
/** | /** | |||
get range for the x - coordinate | get first range for the x - coordinate | |||
*/ | */ | |||
void GetRange(double & xmin, double & xmax) const { GetRange(0,xmin,xma x); } | void GetRange(double & xmin, double & xmax) const { GetRange(0,xmin,xma x); } | |||
/** | /** | |||
get range for the x and y coordinates | get first range for the x and y coordinates | |||
*/ | */ | |||
void GetRange(double & xmin, double & xmax, double & ymin, double & ymax ) const { | void GetRange(double & xmin, double & xmax, double & ymin, double & ymax ) const { | |||
GetRange(0,xmin,xmax); GetRange(1,ymin,ymax); | GetRange(0,xmin,xmax); GetRange(1,ymin,ymax); | |||
} | } | |||
/** | /** | |||
get range for the x and y and z coordinates | get first range for the x and y and z coordinates | |||
*/ | */ | |||
void GetRange(double & xmin, double & xmax, double & ymin, double & ymax , double & zmin, double & zmax) const { | void GetRange(double & xmin, double & xmax, double & ymin, double & ymax , double & zmin, double & zmax) const { | |||
GetRange(0,xmin,xmax); GetRange(1,ymin,ymax); GetRange(2,zmin,zmax); | GetRange(0,xmin,xmax); GetRange(1,ymin,ymax); GetRange(2,zmin,zmax); | |||
} | } | |||
/** | ||||
get first range for coordinates and fill the vector | ||||
*/ | ||||
void GetRange(double * xmin, double * xmax) const { | ||||
for (unsigned int i = 0; i < fRanges.size(); ++i) | ||||
GetRange(i,xmin[i],xmax[i]); | ||||
} | ||||
/** | /** | |||
Destructor (no operations) | Destructor (no operations) | |||
*/ | */ | |||
~DataRange () {} | ~DataRange () {} | |||
/** | /** | |||
add a range [xmin,xmax] for the new coordinate icoord | add a range [xmin,xmax] for the new coordinate icoord | |||
Adding a range does not delete existing one, but takes the OR with | Adding a range does not delete existing one, but takes the OR with | |||
existing ranges. | existing ranges. | |||
skipping to change at line 185 | skipping to change at line 202 | |||
*/ | */ | |||
bool IsInside(double x, unsigned int icoord = 0) const; | bool IsInside(double x, unsigned int icoord = 0) const; | |||
protected: | protected: | |||
/** | /** | |||
internal function to remove all the existing ranges between xmin and xmax | internal function to remove all the existing ranges between xmin and xmax | |||
called when a new range is inserted | called when a new range is inserted | |||
*/ | */ | |||
void CleanRangeSet(unsigned int icoord, double xmin, double xmax); | void CleanRangeSet(unsigned int icoord, double xmin, double xmax); | |||
// get the full range (-inf, +inf) | ||||
static void GetInfRange(double &x1, double &x2); | ||||
private: | private: | |||
RangeIntervals fRanges; // list of all ranges | RangeIntervals fRanges; // list of all ranges | |||
}; | }; | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
End of changes. 10 change blocks. | ||||
11 lines changed or deleted | 32 lines changed or added | |||
FTFont.h | FTFont.h | |||
---|---|---|---|---|
skipping to change at line 197 | skipping to change at line 197 | |||
float Advance( const wchar_t* string); | float Advance( const wchar_t* string); | |||
/** | /** | |||
* Get the advance width for a string. | * Get the advance width for a string. | |||
* | * | |||
* @param string a char string | * @param string a char string | |||
* @return advance width | * @return advance width | |||
*/ | */ | |||
float Advance( const char* string); | float Advance( const char* string); | |||
/** | ||||
* Prepare for rendering | ||||
*/ | ||||
virtual void PreRender() { preRenderCalled = true; } | ||||
/** | ||||
* Cleanup after rendering | ||||
*/ | ||||
virtual void PostRender() { preRenderCalled = false; } | ||||
/** | /** | |||
* Render a string of characters | * Render a string of characters | |||
* | * | |||
* @param string 'C' style string to be output. | * @param string 'C' style string to be output. | |||
*/ | */ | |||
virtual void Render( const char* string ); | virtual void Render( const char* string ); | |||
/** | /** | |||
* Render a string of characters | * Render a string of characters | |||
* | * | |||
* @param string 'C' style string to be output. | ||||
* @param w_max maximum width of text | ||||
* @param w_fade width at which text starts to fade | ||||
*/ | ||||
virtual void Render( const char* string, float w_max, float w_fade | ||||
); | ||||
/** | ||||
* Render a string of characters | ||||
* | ||||
* @param string wchar_t string to be output. | * @param string wchar_t string to be output. | |||
*/ | */ | |||
virtual void Render( const wchar_t* string ); | virtual void Render( const wchar_t* string ); | |||
/** | /** | |||
* Queries the Font for errors. | * Queries the Font for errors. | |||
* | * | |||
* @return The current error code. | * @return The current error code. | |||
*/ | */ | |||
FT_Error Error() const { return err;} | FT_Error Error() const { return err;} | |||
skipping to change at line 262 | skipping to change at line 281 | |||
private: | private: | |||
/** | /** | |||
* Check that the glyph at <code>chr</code> exist. If not load it. | * Check that the glyph at <code>chr</code> exist. If not load it. | |||
* | * | |||
* @param chr character index | * @param chr character index | |||
* @return <code>true</code> if the glyph can be created. | * @return <code>true</code> if the glyph can be created. | |||
*/ | */ | |||
inline bool CheckGlyph( const unsigned int chr); | inline bool CheckGlyph( const unsigned int chr); | |||
/** | /** | |||
* PreRender() was called from outside. Do not call it again | ||||
* from Render(), nor call PostRender(). | ||||
* User has to call it himself. | ||||
*/ | ||||
bool preRenderCalled; | ||||
/** | ||||
* An object that holds a list of glyphs | * An object that holds a list of glyphs | |||
*/ | */ | |||
FTGlyphContainer* glyphList; | FTGlyphContainer* glyphList; | |||
/** | /** | |||
* Current pen or cursor position; | * Current pen or cursor position; | |||
*/ | */ | |||
FTPoint pen; | FTPoint pen; | |||
}; | }; | |||
#endif // __FTFont__ | #endif // __FTFont__ | |||
End of changes. 4 change blocks. | ||||
1 lines changed or deleted | 27 lines changed or added | |||
FTGLBitmapFont.h | FTGLBitmapFont.h | |||
---|---|---|---|---|
skipping to change at line 38 | skipping to change at line 38 | |||
* @param pBufferBytes the in-memory buffer | * @param pBufferBytes the in-memory buffer | |||
* @param bufferSizeInBytes the length of the buffer in bytes | * @param bufferSizeInBytes the length of the buffer in bytes | |||
*/ | */ | |||
FTGLBitmapFont( const unsigned char *pBufferBytes, size_t bufferSiz eInBytes); | FTGLBitmapFont( const unsigned char *pBufferBytes, size_t bufferSiz eInBytes); | |||
/** | /** | |||
* Destructor | * Destructor | |||
*/ | */ | |||
~FTGLBitmapFont(); | ~FTGLBitmapFont(); | |||
/** | /** | |||
* Renders a string of characters | * Prepare for rendering | |||
* | ||||
* @param string 'C' style string to be output. | ||||
*/ | */ | |||
void Render( const char* string); | virtual void PreRender(); | |||
/** | /** | |||
* Renders a string of characters | * Cleanup after rendering | |||
* | ||||
* @param string 'C' style wide string to be output. | ||||
*/ | */ | |||
void Render( const wchar_t* string); | virtual void PostRender(); | |||
// attributes | ||||
private: | private: | |||
/** | /** | |||
* Construct a FTBitmapGlyph. | * Construct a FTBitmapGlyph. | |||
* | * | |||
* @param g The glyph index NOT the char code. | * @param g The glyph index NOT the char code. | |||
* @return An FTBitmapGlyph or <code>null</code> on failure. | * @return An FTBitmapGlyph or <code>null</code> on failure. | |||
*/ | */ | |||
inline virtual FTGlyph* MakeGlyph( unsigned int g); | inline virtual FTGlyph* MakeGlyph( unsigned int g); | |||
End of changes. 4 change blocks. | ||||
12 lines changed or deleted | 6 lines changed or added | |||
FTGLOutlineFont.h | FTGLOutlineFont.h | |||
---|---|---|---|---|
skipping to change at line 38 | skipping to change at line 38 | |||
* @param pBufferBytes the in-memory buffer | * @param pBufferBytes the in-memory buffer | |||
* @param bufferSizeInBytes the length of the buffer in bytes | * @param bufferSizeInBytes the length of the buffer in bytes | |||
*/ | */ | |||
FTGLOutlineFont( const unsigned char *pBufferBytes, size_t bufferSi zeInBytes); | FTGLOutlineFont( const unsigned char *pBufferBytes, size_t bufferSi zeInBytes); | |||
/** | /** | |||
* Destructor | * Destructor | |||
*/ | */ | |||
~FTGLOutlineFont(); | ~FTGLOutlineFont(); | |||
/** | /** | |||
* Renders a string of characters | * Prepare for rendering | |||
* | ||||
* @param string 'C' style string to be output. | ||||
*/ | */ | |||
void Render( const char* string); | virtual void PreRender(); | |||
/** | /** | |||
* Renders a string of characters | * Cleanup after rendering | |||
* | ||||
* @param string wchar_t string to be output. | ||||
*/ | */ | |||
void Render( const wchar_t* string); | virtual void PostRender(); | |||
private: | private: | |||
/** | /** | |||
* Construct a FTOutlineGlyph. | * Construct a FTOutlineGlyph. | |||
* | * | |||
* @param g The glyph index NOT the char code. | * @param g The glyph index NOT the char code. | |||
* @return An FTOutlineGlyph or <code>null</code> on failure. | * @return An FTOutlineGlyph or <code>null</code> on failure. | |||
*/ | */ | |||
inline virtual FTGlyph* MakeGlyph( unsigned int g); | inline virtual FTGlyph* MakeGlyph( unsigned int g); | |||
End of changes. 4 change blocks. | ||||
10 lines changed or deleted | 6 lines changed or added | |||
FTGLPixmapFont.h | FTGLPixmapFont.h | |||
---|---|---|---|---|
skipping to change at line 38 | skipping to change at line 38 | |||
* @param pBufferBytes the in-memory buffer | * @param pBufferBytes the in-memory buffer | |||
* @param bufferSizeInBytes the length of the buffer in bytes | * @param bufferSizeInBytes the length of the buffer in bytes | |||
*/ | */ | |||
FTGLPixmapFont( const unsigned char *pBufferBytes, size_t bufferSiz eInBytes); | FTGLPixmapFont( const unsigned char *pBufferBytes, size_t bufferSiz eInBytes); | |||
/** | /** | |||
* Destructor | * Destructor | |||
*/ | */ | |||
~FTGLPixmapFont(); | ~FTGLPixmapFont(); | |||
/** | /** | |||
* Renders a string of characters | * Prepare for rendering | |||
* | ||||
* @param string 'C' style string to be output. | ||||
*/ | */ | |||
void Render( const char* string); | virtual void PreRender(); | |||
/** | /** | |||
* Renders a string of characters | * Cleanup after rendering | |||
* | ||||
* @param string wchar_t string to be output. | ||||
*/ | */ | |||
void Render( const wchar_t* string); | virtual void PostRender(); | |||
private: | private: | |||
/** | /** | |||
* Construct a FTPixmapGlyph. | * Construct a FTPixmapGlyph. | |||
* | * | |||
* @param g The glyph index NOT the char code. | * @param g The glyph index NOT the char code. | |||
* @return An FTPixmapGlyph or <code>null</code> on failure. | * @return An FTPixmapGlyph or <code>null</code> on failure. | |||
*/ | */ | |||
inline virtual FTGlyph* MakeGlyph( unsigned int g); | inline virtual FTGlyph* MakeGlyph( unsigned int g); | |||
End of changes. 4 change blocks. | ||||
10 lines changed or deleted | 6 lines changed or added | |||
FTGLTextureFont.h | FTGLTextureFont.h | |||
---|---|---|---|---|
skipping to change at line 48 | skipping to change at line 48 | |||
/** | /** | |||
* Set the char size for the current face. | * Set the char size for the current face. | |||
* | * | |||
* @param size the face size in points (1/72 inch) | * @param size the face size in points (1/72 inch) | |||
* @param res the resolution of the target device. | * @param res the resolution of the target device. | |||
* @return <code>true</code> if size was set correctly | * @return <code>true</code> if size was set correctly | |||
*/ | */ | |||
virtual bool FaceSize( const unsigned int size, const unsigned int res = 72); | virtual bool FaceSize( const unsigned int size, const unsigned int res = 72); | |||
/** | /** | |||
* Renders a string of characters | * Prepare for rendering | |||
* | ||||
* @param string 'C' style string to be output. | ||||
*/ | */ | |||
virtual void Render( const char* string); | virtual void PreRender(); | |||
/** | /** | |||
* Renders a string of characters | * Cleanup after rendering | |||
* | ||||
* @param string wchar_t string to be output. | ||||
*/ | */ | |||
virtual void Render( const wchar_t* string); | virtual void PostRender(); | |||
private: | private: | |||
/** | /** | |||
* Construct a FTTextureGlyph. | * Construct a FTTextureGlyph. | |||
* | * | |||
* @param glyphIndex The glyph index NOT the char code. | * @param glyphIndex The glyph index NOT the char code. | |||
* @return An FTTextureGlyph or <code>null</code> on failure. | * @return An FTTextureGlyph or <code>null</code> on failure. | |||
*/ | */ | |||
inline virtual FTGlyph* MakeGlyph( unsigned int glyphIndex); | inline virtual FTGlyph* MakeGlyph( unsigned int glyphIndex); | |||
End of changes. 4 change blocks. | ||||
10 lines changed or deleted | 6 lines changed or added | |||
Factory.h | Factory.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Factory.h 21503 2007-12-19 17:34:54Z moneta $ | // @(#)root/mathcore:$Id: Factory.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Fri Dec 22 14:43:33 2006 | // Author: L. Moneta Fri Dec 22 14:43:33 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 Factory | // Header file for class Factory | |||
skipping to change at line 23 | skipping to change at line 23 | |||
#ifndef ROOT_Math_Factory | #ifndef ROOT_Math_Factory | |||
#define ROOT_Math_Factory | #define ROOT_Math_Factory | |||
#include <string> | #include <string> | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
class Minimizer; | class Minimizer; | |||
class DistSampler; | ||||
//_________________________________________________________________________ __ | //_________________________________________________________________________ __ | |||
/** | /** | |||
Factory class holding static functions to create the interfaces like RO OT::Math::Minimizer | Factory class holding static functions to create the interfaces like RO OT::Math::Minimizer | |||
via the Plugin Manager | via the Plugin Manager | |||
*/ | */ | |||
class Factory { | class Factory { | |||
public: | public: | |||
/** | /** | |||
static method to create the corrisponding Minimizer given the string | static method to create the corrisponding Minimizer given the string | |||
Supported Minimizers types are: | ||||
Minuit (TMinuit), Minuit2, GSLMultiMin, GSLMultiFit, GSLSimAn, Linear | ||||
, Fumili, Genetic | ||||
*/ | */ | |||
static ROOT::Math::Minimizer * CreateMinimizer(const std::string & minim izerType = "Minuit2", const std::string & algoType = "Migrad"); | static ROOT::Math::Minimizer * CreateMinimizer(const std::string & minim izerType = "Minuit2", const std::string & algoType = "Migrad"); | |||
/** | ||||
static method to create the distribution sampler class given a string | ||||
specifying the type | ||||
Supported sampler types are: | ||||
Unuran | ||||
*/ | ||||
static ROOT::Math::DistSampler * CreateDistSampler(const std::string & s | ||||
amplerType ="Unuran"); | ||||
}; | }; | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_MinimizerFactory */ | #endif /* ROOT_Fit_MinimizerFactory */ | |||
End of changes. 4 change blocks. | ||||
1 lines changed or deleted | 14 lines changed or added | |||
Fitter.h | Fitter.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Fitter.h 31873 2009-12-14 10:05:39Z brun $ | // @(#)root/mathcore:$Id: Fitter.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Wed Aug 30 11:05:19 2006 | // Author: L. Moneta Wed Aug 30 11:05:19 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 Fitter | // Header file for class Fitter | |||
skipping to change at line 150 | skipping to change at line 150 | |||
fit a data set using any generic model function | fit a data set using any generic model function | |||
Pre-requisite on the function: | Pre-requisite on the function: | |||
*/ | */ | |||
template < class Data , class Function> | template < class Data , class Function> | |||
bool LikelihoodFit( const Data & data, const Function & func) { | bool LikelihoodFit( const Data & data, const Function & func) { | |||
SetFunction(func); | SetFunction(func); | |||
return DoLikelihoodFit(data); | return DoLikelihoodFit(data); | |||
} | } | |||
/** | /** | |||
Fit using the a generic FCN function as a C++ callable object impleme | ||||
nting | ||||
double () (const double *) | ||||
The function dimension (i.e. the number of parameter) is needed in th | ||||
is case | ||||
For the other arguments same consideration as in the previous methods | ||||
*/ | ||||
template <class Function> | ||||
bool FitFCN(unsigned int npar, Function & fcn, const double * params = | ||||
0, unsigned int dataSize = 0); | ||||
/** | ||||
fit using the given FCN function represented by a multi-dimensional f unction interface | fit using the given FCN function represented by a multi-dimensional f unction interface | |||
(ROOT::Math::IMultiGenFunction). | (ROOT::Math::IMultiGenFunction). | |||
Give optionally initial the parameter values and data size to have th e fit Ndf correctly | Give optionally initial the parameter values and data size to have th e fit Ndf correctly | |||
set in the FitResult. | set in the FitResult. | |||
If the parameters values are not given (parameter pointers=0) the | If the parameters values are not given (parameter pointers=0) the | |||
current parameter settings are used. The parameter settings can be cr eated before | current parameter settings are used. The parameter settings can be cr eated before | |||
by using the FitConfig::SetParamsSetting. If they have not been creat ed they are created | by using the FitConfig::SetParamsSetting. If they have not been creat ed they are created | |||
automatically when the params pointer is not zero | automatically when the params pointer is not zero | |||
*/ | */ | |||
bool FitFCN(const ROOT::Math::IMultiGenFunction & fcn, const double * pa rams = 0, unsigned int dataSize = 0 ); | bool FitFCN(const ROOT::Math::IMultiGenFunction & fcn, const double * pa rams = 0, unsigned int dataSize = 0 ); | |||
/** | /** | |||
Fit using the given FCN function representing a multi-dimensional gra dient function | Fit using the given FCN function representing a multi-dimensional gra dient function | |||
interface (ROOT::Math::IMultiGradFunction). In this case the minimize r will use the | interface (ROOT::Math::IMultiGradFunction). In this case the minimize r will use the | |||
gradient information provided by the function. | gradient information provided by the function. | |||
For the other arguments same consideration as in the previous method | For the other arguments same consideration as in the previous method | |||
*/ | */ | |||
bool FitFCN(const ROOT::Math::IMultiGradFunction & fcn, const double * p arams = 0, unsigned int dataSize = 0); | bool FitFCN(const ROOT::Math::IMultiGradFunction & fcn, const double * p arams = 0, unsigned int dataSize = 0); | |||
/** | /** | |||
Fit using the a generic FCN function as a C++ callable object impleme | ||||
nting | ||||
double () (const double *) | ||||
The function dimension (i.e. the number of parameter) is needed in th | ||||
is case | ||||
For the other arguments same consideration as in the previous methods | ||||
*/ | ||||
template <class Function> | ||||
bool FitFCN(unsigned int npar, Function fcn, const double * params = 0, | ||||
unsigned int dataSize = 0); | ||||
/** | ||||
fit using user provided FCN with Minuit-like interface | fit using user provided FCN with Minuit-like interface | |||
Parameter Settings must have be created before | Parameter Settings must have be created before | |||
*/ | */ | |||
typedef void (* MinuitFCN_t )(int &npar, double *gin, double &f, double *u, int flag); | typedef void (* MinuitFCN_t )(int &npar, double *gin, double &f, double *u, int flag); | |||
bool FitFCN( MinuitFCN_t fcn); | bool FitFCN( MinuitFCN_t fcn); | |||
/** | /** | |||
do a linear fit on a set of bin-data | do a linear fit on a set of bin-data | |||
*/ | */ | |||
bool LinearFit(const BinData & data) { return DoLinearFit(data); } | bool LinearFit(const BinData & data) { return DoLinearFit(data); } | |||
skipping to change at line 320 | skipping to change at line 320 | |||
// implementation of inline methods | // implementation of inline methods | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
#ifndef ROOT_Math_WrappedFunction | #ifndef ROOT_Math_WrappedFunction | |||
#include "Math/WrappedFunction.h" | #include "Math/WrappedFunction.h" | |||
#endif | #endif | |||
template<class Function> | template<class Function> | |||
bool ROOT::Fit::Fitter::FitFCN(unsigned int npar, Function f, const double | bool ROOT::Fit::Fitter::FitFCN(unsigned int npar, Function & f, const doubl | |||
* par, unsigned int datasize) { | e * par, unsigned int datasize) { | |||
ROOT::Math::WrappedMultiFunction<Function> wf(f,npar); | ROOT::Math::WrappedMultiFunction<Function &> wf(f,npar); | |||
return FitFCN(wf,par,datasize); | return FitFCN(wf,par,datasize); | |||
} | } | |||
#endif // endif __CINT__ | #endif // endif __CINT__ | |||
#endif /* ROOT_Fit_Fitter */ | #endif /* ROOT_Fit_Fitter */ | |||
End of changes. 4 change blocks. | ||||
16 lines changed or deleted | 16 lines changed or added | |||
Functor.h | Functor.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Functor.h 24482 2008-06-23 15:33:08Z moneta $ | // @(#)root/mathcore:$Id: Functor.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Mon Nov 13 15:58:13 2006 | // Author: L. Moneta Mon Nov 13 15:58:13 2006 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Heaer file for Functor classes. | // Heaer file for Functor classes. | |||
skipping to change at line 95 | skipping to change at line 95 | |||
inline double DoDerivative (double x) const { | inline double DoDerivative (double x) const { | |||
return fFunc.Derivative(x); | return fFunc.Derivative(x); | |||
} | } | |||
inline double DoDerivative (const double * x, unsigned int icoord ) cons t { | inline double DoDerivative (const double * x, unsigned int icoord ) cons t { | |||
return fFunc.Derivative(x,icoord); | return fFunc.Derivative(x,icoord); | |||
} | } | |||
unsigned int fDim; | unsigned int fDim; | |||
mutable Func fFunc; | mutable Func fFunc; // should here be a reference and pass a non-const ref in ctor | |||
}; | }; | |||
/** | /** | |||
Functor Handler class for gradient functions where both callable objects are provided for the function | Functor Handler class for gradient functions where both callable objects are provided for the function | |||
evaluation (type Func) and for the gradient (type GradFunc) . | evaluation (type Func) and for the gradient (type GradFunc) . | |||
It can be created from any function implementing the correct signature | It can be created from any function implementing the correct signature | |||
corresponding to the requested type | corresponding to the requested type | |||
In the case of one dimension the function evaluation object and the deri vative function object must implement | In the case of one dimension the function evaluation object and the deri vative function object must implement | |||
double operator() (double x). | double operator() (double x). | |||
skipping to change at line 188 | skipping to change at line 188 | |||
class MemFunHandler : public ParentFunctor::Impl | class MemFunHandler : public ParentFunctor::Impl | |||
{ | { | |||
//typedef typename ParentFunctor::Dim Dim; | //typedef typename ParentFunctor::Dim Dim; | |||
typedef typename ParentFunctor::Impl ImplFunc; | typedef typename ParentFunctor::Impl ImplFunc; | |||
typedef typename ImplFunc::BaseFunc BaseFunc; | typedef typename ImplFunc::BaseFunc BaseFunc; | |||
public: | public: | |||
/// constructor from a pointer to the class and a pointer to the functio n | /// constructor from a pointer to the class and a pointer to the functio n | |||
MemFunHandler(const PointerToObj& pObj, PointerToMemFn pMemFn) | MemFunHandler(const PointerToObj& pObj, PointerToMemFn pMemFn) | |||
: fDim(1), fObj(pObj), fMemFn(pMemFn) | : fDim(1), fObj(pObj), fMemFn(pMemFn) // should pass pointer b y value ?? | |||
{} | {} | |||
/// constructor from a pointer to the class and a pointer to the functio n | /// constructor from a pointer to the class and a pointer to the functio n | |||
MemFunHandler(unsigned int dim, const PointerToObj& pObj, PointerToMemFn pMemFn) | MemFunHandler(unsigned int dim, const PointerToObj& pObj, PointerToMemFn pMemFn) | |||
: fDim(dim), fObj(pObj), fMemFn(pMemFn) | : fDim(dim), fObj(pObj), fMemFn(pMemFn) | |||
{} | {} | |||
// clone of the function handler (use copy-ctor) | // clone of the function handler (use copy-ctor) | |||
BaseFunc * Clone() const { return new MemFunHandler(*this); } | BaseFunc * Clone() const { return new MemFunHandler(*this); } | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
GSLIntegrator.h | GSLIntegrator.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLIntegrator.h 22689 2008-03-17 16:21:23Z rdm $ | // @(#)root/mathmore:$Id: GSLIntegrator.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// 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 163 | skipping to change at line 163 | |||
// template methods for generic functors | // template methods for generic functors | |||
/** | /** | |||
method to set the a generic integration function | method to set the a generic integration function | |||
@param f integration function. The function type must implement t he assigment operator, <em> double operator() ( double x ) </em> | @param f integration function. The function type must implement t he assigment operator, <em> double operator() ( double x ) </em> | |||
*/ | */ | |||
void SetFunction(const IGenFunction &f, bool copyFunc = false); | void SetFunction(const IGenFunction &f); | |||
/** | /** | |||
Set function from a GSL pointer function type | Set function from a GSL pointer function type | |||
*/ | */ | |||
void SetFunction( GSLFuncPointer f, void * p = 0); | void SetFunction( GSLFuncPointer f, void * p = 0); | |||
// methods using IGenFunction | // methods using IGenFunction | |||
/** | /** | |||
evaluate the Integral of a function f over the defined interval (a ,b) | evaluate the Integral of a function f over the defined interval (a ,b) | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
GSLMinimizer1D.h | GSLMinimizer1D.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLMinimizer1D.h 24477 2008-06-23 12:58:47Z monet a $ | // @(#)root/mathmore:$Id: GSLMinimizer1D.h 32583 2010-03-12 09:57:42Z monet a $ | |||
// Author: L. Moneta, A. Zsenei 08/2005 | // Author: L. Moneta, A. Zsenei 08/2005 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2004 moneta, CERN/PH-SFT * | * Copyright (c) 2004 moneta, 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 158 | skipping to change at line 158 | |||
double FValLower() const; | double FValLower() const; | |||
/** | /** | |||
Return function value at current upper bound of the minimization i nterval | Return function value at current upper bound of the minimization i nterval | |||
*/ | */ | |||
double FValUpper() const; | double FValUpper() const; | |||
/** | /** | |||
Find minimum position iterating until convergence specified by the absolute and relative tolerance or | Find minimum position iterating until convergence specified by the absolute and relative tolerance or | |||
the maximum number of iteration is reached | the maximum number of iteration is reached | |||
Return true is result is successfull | ||||
\@param maxIter maximum number of iteration | \@param maxIter maximum number of iteration | |||
\@param absTol desired absolute error in the minimum position | \@param absTol desired absolute error in the minimum position | |||
\@param absTol desired relative error in the minimum position | \@param absTol desired relative error in the minimum position | |||
*/ | */ | |||
int Minimize( int maxIter, double absTol, double relTol); | bool Minimize( int maxIter, double absTol, double relTol); | |||
/** | /** | |||
Return number of iteration used to find minimum | Return number of iteration used to find minimum | |||
*/ | */ | |||
int Iterations() const { | int Iterations() const { | |||
return fIter; | return fIter; | |||
} | } | |||
/** | /** | |||
Return status of last minimization | ||||
*/ | ||||
int Status() const { return fStatus; } | ||||
/** | ||||
Return name of minimization algorithm | Return name of minimization algorithm | |||
*/ | */ | |||
const char * Name() const; | const char * Name() const; | |||
/** | /** | |||
Test convergence of the interval. | Test convergence of the interval. | |||
The test returns success if | The test returns success if | |||
\f[ | \f[ | |||
|x_{min}-x_{truemin}| < epsAbs + epsRel *x_{truemin} | |x_{min}-x_{truemin}| < epsAbs + epsRel *x_{truemin} | |||
\f] | \f] | |||
skipping to change at line 196 | skipping to change at line 202 | |||
private: | private: | |||
double fXmin; | double fXmin; | |||
double fXlow; | double fXlow; | |||
double fXup; | double fXup; | |||
double fMin; | double fMin; | |||
double fLow; | double fLow; | |||
double fUp; | double fUp; | |||
int fIter; | int fIter; | |||
int fStatus; // status of last minimization (==0 ok =1 failed) | ||||
bool fIsSet; | bool fIsSet; | |||
GSL1DMinimizerWrapper * fMinimizer; | GSL1DMinimizerWrapper * fMinimizer; | |||
GSLFunctionWrapper * fFunction; | GSLFunctionWrapper * fFunction; | |||
}; | }; | |||
} // end namespace Math | } // end namespace Math | |||
} // end namespace ROOT | } // end namespace ROOT | |||
End of changes. 5 change blocks. | ||||
2 lines changed or deleted | 9 lines changed or added | |||
GSLNLSMinimizer.h | GSLNLSMinimizer.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLNLSMinimizer.h 31604 2009-12-07 19:04:33Z mone ta $ | // @(#)root/mathmore:$Id: GSLNLSMinimizer.h 33180 2010-04-25 10:14:07Z mone ta $ | |||
// Author: L. Moneta Wed Dec 20 17:16:32 2006 | // Author: L. Moneta Wed Dec 20 17:16:32 2006 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2006 LCG ROOT Math Team, 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 109 | skipping to change at line 109 | |||
return *this; | return *this; | |||
} | } | |||
IMultiGenFunction * Clone() const { | IMultiGenFunction * Clone() const { | |||
return new LSResidualFunc(*fChi2,fIndex); | return new LSResidualFunc(*fChi2,fIndex); | |||
} | } | |||
unsigned int NDim() const { return fChi2->NDim(); } | unsigned int NDim() const { return fChi2->NDim(); } | |||
void Gradient( const double * x, double * g) const { | void Gradient( const double * x, double * g) const { | |||
double f0 = 0; | ||||
FdF(x,f0,g); | ||||
} | ||||
void FdF (const double * x, double & f, double * g) const { | ||||
unsigned int n = NDim(); | unsigned int n = NDim(); | |||
std::copy(x,x+n,fX2.begin()); | std::copy(x,x+n,fX2.begin()); | |||
const double kEps = 1.0E-4; | const double kEps = 1.0E-4; | |||
double f0 = DoEval(x); | f = DoEval(x); | |||
for (unsigned int i = 0; i < n; ++i) { | for (unsigned int i = 0; i < n; ++i) { | |||
fX2[i] += kEps; | fX2[i] += kEps; | |||
g[i] = ( DoEval(&fX2.front()) - f0 )/kEps; | g[i] = ( DoEval(&fX2.front()) - f )/kEps; | |||
fX2[i] = x[i]; | fX2[i] = x[i]; | |||
} | } | |||
} | } | |||
private: | private: | |||
double DoEval (const double * x) const { | double DoEval (const double * x) const { | |||
return fChi2->DataElement(x, fIndex); | return fChi2->DataElement(x, fIndex); | |||
} | } | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 8 lines changed or added | |||
GSLRootFinder.h | GSLRootFinder.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLRootFinder.h 22522 2008-03-07 16:07:51Z moneta $ | // @(#)root/mathmore:$Id: GSLRootFinder.h 32583 2010-03-12 09:57:42Z moneta $ | |||
// Author: L. Moneta, A. Zsenei 08/2005 | // Author: 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 57 | skipping to change at line 57 | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
class GSLRootFSolver; | class GSLRootFSolver; | |||
class GSLFunctionWrapper; | class GSLFunctionWrapper; | |||
//_________________________________________________________________________ _______________________________ | //_________________________________________________________________________ _______________________________ | |||
/** | /** | |||
Base class for GSL Root-Finding algorithms for one dimensional functio ns which do not use function derivatives. | Base class for GSL Root-Finding algorithms for one dimensional functio ns which do not use function derivatives. | |||
For finding the roots users should not use this class directly but ins | For finding the roots users should not use this class directly but ins | |||
tantiate the template | tantiate the derived classes, | |||
ROOT::Math::RootFinder class with the corresponding algorithms. | for example ROOT::Math::Roots::Brent for using the Brent algorithm. | |||
For example the ROOT::Math::RootFinder<ROOT::Math::Roots::Brent> for u | All the classes defining the alhorithms are defined in the header Math | |||
sing the Brent algorithm. See that class also | /RootFinderAlgorithm.h | |||
for the documentation. | They possible types implementing root bracketing algorithms which they | |||
do not require function | ||||
derivatives are: | ||||
<ul> | ||||
<li>ROOT::Math::Roots::Bisection | ||||
<li>ROOT::Math::Roots::FalsePos | ||||
<li>ROOT::Math::Roots::Brent | ||||
</ul> | ||||
See also the specific classes for the documentation. | ||||
See the GSL <A HREF="http://www.gnu.org/software/gsl/manual/html_node/ Root-Bracketing-Algorithms.html"> online manual</A> for | See the GSL <A HREF="http://www.gnu.org/software/gsl/manual/html_node/ Root-Bracketing-Algorithms.html"> online manual</A> for | |||
information on the GSL Root-Finding algorithms | information on the GSL Root-Finding algorithms | |||
@ingroup RootFinders | @ingroup RootFinders | |||
*/ | */ | |||
class GSLRootFinder: public IRootFinderMethod { | class GSLRootFinder: public IRootFinderMethod { | |||
public: | public: | |||
GSLRootFinder(); | GSLRootFinder(); | |||
virtual ~GSLRootFinder(); | virtual ~GSLRootFinder(); | |||
private: | private: | |||
// usually copying is non trivial, so we make this unaccessible | // usually copying is non trivial, so we make this unaccessible | |||
GSLRootFinder(const GSLRootFinder &); | GSLRootFinder(const GSLRootFinder &); | |||
GSLRootFinder & operator = (const GSLRootFinder &); | GSLRootFinder & operator = (const GSLRootFinder &); | |||
public: | public: | |||
#if defined(__MAKECINT__) || defined(G__DICTIONARY) | #if defined(__MAKECINT__) || defined(G__DICTIONARY) | |||
int SetFunction( const IGradFunction & , double ) { | bool SetFunction( const IGradFunction & , double ) { | |||
std::cerr <<"GSLRootFinder - Error : this method must be used with | std::cerr <<"GSLRootFinder - Error : this method must be used with a | |||
a Root Finder algorithm using derivatives" << std::endl; | Root Finder algorithm using derivatives" << std::endl; | |||
return -1; | return false; | |||
} | } | |||
#endif | #endif | |||
int SetFunction( const IGenFunction & f, double xlow, double xup); | bool SetFunction( const IGenFunction & f, double xlow, double xup); | |||
typedef double ( * GSLFuncPointer ) ( double, void *); | typedef double ( * GSLFuncPointer ) ( double, void *); | |||
int SetFunction( GSLFuncPointer f, void * params, double xlow, double | bool SetFunction( GSLFuncPointer f, void * params, double xlow, double | |||
xup); | xup); | |||
using IRootFinderMethod::SetFunction; | using IRootFinderMethod::SetFunction; | |||
int Iterate(); | // iterate to find ROOTS return GSL_CONTINUE if iteration was succesful | |||
l or another error | ||||
int Iterate(); | ||||
double Root() const; | double Root() const; | |||
//double XLower() const; | //double XLower() const; | |||
//double XUpper() const; | //double XUpper() const; | |||
// Solve for roots | /// Find the root | |||
int Solve( int maxIter = 100, double absTol = 1E-3, double relTol = 1E | bool Solve( int maxIter = 100, double absTol = 1E-8, double relTol = 1E | |||
-6); | -10); | |||
int Iterations() const { | /// Return number of iterations | |||
int Iterations() const { | ||||
return fIter; | return fIter; | |||
} | } | |||
const char * Name() const; | ||||
protected: | /// Return the status of last root finding | |||
int Status() const { return fStatus; } | ||||
void SetSolver ( GSLRootFSolver * s ); | const char * Name() const; | |||
void FreeSolver(); | protected: | |||
private: | void SetSolver ( GSLRootFSolver * s ); | |||
GSLFunctionWrapper * fFunction; | void FreeSolver(); | |||
GSLRootFSolver * fS; | ||||
protected: | private: | |||
private: | GSLFunctionWrapper * fFunction; | |||
GSLRootFSolver * fS; | ||||
double fRoot; | double fRoot; | |||
double fXlow; | double fXlow; | |||
double fXup; | double fXup; | |||
int fIter; | int fIter; | |||
bool fValidInterval; | int fStatus; | |||
bool fValidInterval; | ||||
}; | }; | |||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#endif /* ROOT_Math_GSLRootFinder */ | #endif /* ROOT_Math_GSLRootFinder */ | |||
End of changes. 25 change blocks. | ||||
52 lines changed or deleted | 64 lines changed or added | |||
GSLRootFinderDeriv.h | GSLRootFinderDeriv.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLRootFinderDeriv.h 23524 2008-04-24 15:25:55Z m oneta $ | // @(#)root/mathmore:$Id: GSLRootFinderDeriv.h 32583 2010-03-12 09:57:42Z m oneta $ | |||
// 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 60 | skipping to change at line 60 | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
class GSLRootFdFSolver; | class GSLRootFdFSolver; | |||
class GSLFunctionDerivWrapper; | class GSLFunctionDerivWrapper; | |||
//_________________________________________________________________________ ____________ | //_________________________________________________________________________ ____________ | |||
/** | /** | |||
Base class for GSL Root-Finding algorithms for one dimensional functi ons which use function derivatives. | Base class for GSL Root-Finding algorithms for one dimensional functi ons which use function derivatives. | |||
For finding the roots users should not use this class directly but in | For finding the roots users should not use this class directly but in | |||
stantiate the template | stantiate the derived classes, | |||
ROOT::Math::RootFinder class with the corresponding algorithms. | for example ROOT::Math::Roots::Newton for using the Newton algorithm | |||
For example the ROOT::Math::RootFinder<ROOT::Math::Roots::Newton> for | . | |||
using the Newton algorithm. | All the classes defining the alhorithms are defined in the header Mat | |||
See that class also for the documentation. | h/RootFinderAlgorithm.h | |||
They possible types implementing root bracketing algorithms which use | ||||
function | ||||
derivatives are: | ||||
<ul> | ||||
<li>ROOT::Math::Roots::Newton | ||||
<li>ROOT::Math::Roots::Secant | ||||
<li>ROOT::Math::Roots::Steffenson | ||||
</ul> | ||||
See also those classes for the documentation. | ||||
See the GSL <A HREF="http://www.gnu.org/software/gsl/manual/html_node /Root-Finding-Algorithms-using-Derivatives.html"> online manual</A> for | See the GSL <A HREF="http://www.gnu.org/software/gsl/manual/html_node /Root-Finding-Algorithms-using-Derivatives.html"> online manual</A> for | |||
information on the GSL Root-Finding algorithms | information on the GSL Root-Finding algorithms | |||
@ingroup RootFinders | @ingroup RootFinders | |||
*/ | */ | |||
class GSLRootFinderDeriv: public IRootFinderMethod { | class GSLRootFinderDeriv: public IRootFinderMethod { | |||
public: | public: | |||
GSLRootFinderDeriv(); | GSLRootFinderDeriv(); | |||
virtual ~GSLRootFinderDeriv(); | virtual ~GSLRootFinderDeriv(); | |||
private: | private: | |||
// usually copying is non trivial, so we make this unaccessible | // usually copying is non trivial, so we make this unaccessible | |||
GSLRootFinderDeriv(const GSLRootFinderDeriv &); | GSLRootFinderDeriv(const GSLRootFinderDeriv &); | |||
GSLRootFinderDeriv & operator = (const GSLRootFinderDeriv &); | GSLRootFinderDeriv & operator = (const GSLRootFinderDeriv &); | |||
public: | public: | |||
#if defined(__MAKECINT__) || defined(G__DICTIONARY) | #if defined(__MAKECINT__) || defined(G__DICTIONARY) | |||
int SetFunction( const IGenFunction & , double , double ) { | bool SetFunction( const IGenFunction & , double , double ) { | |||
std::cerr <<"GSLRootFinderDeriv - Error : Algorithm requirs derivativ es" << std::endl; | std::cerr <<"GSLRootFinderDeriv - Error : Algorithm requirs derivativ es" << std::endl; | |||
return -1; | return false; | |||
} | } | |||
#endif | #endif | |||
int SetFunction( const IGradFunction & f, double xstart) { | bool SetFunction( const IGradFunction & f, double xstart) { | |||
const void * p = &f; | const void * p = &f; | |||
return SetFunction( &GSLFunctionAdapter<IGradFunction>::F, &GSLFunct ionAdapter<IGradFunction>::Df, &GSLFunctionAdapter<IGradFunction>::Fdf, con st_cast<void *>(p), xstart ); | return SetFunction( &GSLFunctionAdapter<IGradFunction>::F, &GSLFunct ionAdapter<IGradFunction>::Df, &GSLFunctionAdapter<IGradFunction>::Fdf, con st_cast<void *>(p), xstart ); | |||
} | } | |||
typedef double ( * GSLFuncPointer ) ( double, void *); | typedef double ( * GSLFuncPointer ) ( double, void *); | |||
typedef void ( * GSLFdFPointer ) ( double, void *, double *, double *); | typedef void ( * GSLFdFPointer ) ( double, void *, double *, double *); | |||
int SetFunction( GSLFuncPointer f, GSLFuncPointer df, GSLFdFPointer fdf, void * p, double Root ); | bool SetFunction( GSLFuncPointer f, GSLFuncPointer df, GSLFdFPointer fdf , void * p, double Root ); | |||
using IRootFinderMethod::SetFunction; | using IRootFinderMethod::SetFunction; | |||
/// iterate (return GSL_SUCCESS in case of succesfull iteration) | ||||
int Iterate(); | int Iterate(); | |||
double Root() const; | double Root() const; | |||
// Solve for roots | /// Find the root (return false if failed) | |||
int Solve( int maxIter = 100, double absTol = 1E-3, double relTol = 1E-6 | bool Solve( int maxIter = 100, double absTol = 1E-8, double relTol = 1E- | |||
); | 10); | |||
/// Return number of iterations | ||||
int Iterations() const { | int Iterations() const { | |||
return fIter; | return fIter; | |||
} | } | |||
/// Return the status of last root finding | ||||
int Status() const { return fStatus; } | ||||
const char * Name() const; | const char * Name() const; | |||
protected: | protected: | |||
void SetSolver ( GSLRootFdFSolver * s ); | void SetSolver ( GSLRootFdFSolver * s ); | |||
void FreeSolver(); | void FreeSolver(); | |||
private: | private: | |||
GSLFunctionDerivWrapper * fFunction; | GSLFunctionDerivWrapper * fFunction; | |||
GSLRootFdFSolver * fS; | GSLRootFdFSolver * fS; | |||
mutable double fRoot; | mutable double fRoot; | |||
mutable double fPrevRoot; | mutable double fPrevRoot; | |||
int fIter; | int fIter; | |||
int fStatus; | ||||
bool fValidPoint; | bool fValidPoint; | |||
}; | }; | |||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#endif /* ROOT_Math_GSL_RootFinderDeriv */ | #endif /* ROOT_Math_GSL_RootFinderDeriv */ | |||
End of changes. 12 change blocks. | ||||
15 lines changed or deleted | 31 lines changed or added | |||
GSLSimAnMinimizer.h | GSLSimAnMinimizer.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLSimAnMinimizer.h 31604 2009-12-07 19:04:33Z mo neta $ | // @(#)root/mathmore:$Id: GSLSimAnMinimizer.h 32583 2010-03-12 09:57:42Z mo neta $ | |||
// Author: L. Moneta Wed Dec 20 17:16:32 2006 | // Author: L. Moneta Wed Dec 20 17:16:32 2006 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2006 LCG ROOT Math Team, 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 68 | skipping to change at line 68 | |||
//_________________________________________________________________________ ____________ | //_________________________________________________________________________ ____________ | |||
/** | /** | |||
GSLSimAnMinimizer class for minimization using simulated annealing | GSLSimAnMinimizer class for minimization using simulated annealing | |||
using the algorithm from | using the algorithm from | |||
<A HREF="http://www.gnu.org/software/gsl/manual/html_node/Simulated-Anne aling.html"> | <A HREF="http://www.gnu.org/software/gsl/manual/html_node/Simulated-Anne aling.html"> | |||
GSL</A>. | GSL</A>. | |||
It implements the ROOT::Minimizer interface and | It implements the ROOT::Minimizer interface and | |||
a plug-in (name "GSLSimAn") exists to instantiate this class via the plu g-in manager | a plug-in (name "GSLSimAn") exists to instantiate this class via the plu g-in manager | |||
@ingroup Min1D | @ingroup MultiMin | |||
*/ | */ | |||
class GSLSimAnMinimizer : public ROOT::Math::Minimizer { | class GSLSimAnMinimizer : public ROOT::Math::Minimizer { | |||
public: | public: | |||
/** | /** | |||
Default constructor | Default constructor | |||
*/ | */ | |||
GSLSimAnMinimizer (int type = 0); | GSLSimAnMinimizer (int type = 0); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
G__ci.h | G__ci.h | |||
---|---|---|---|---|
skipping to change at line 538 | skipping to change at line 538 | |||
#ifdef G__SECURITY | #ifdef G__SECURITY | |||
/* #include "include/security.h" */ | /* #include "include/security.h" */ | |||
#define G__NOERROR 0x0000 | #define G__NOERROR 0x0000 | |||
#define G__RECOVERABLE 0x0001 | #define G__RECOVERABLE 0x0001 | |||
#define G__DANGEROUS 0x0002 | #define G__DANGEROUS 0x0002 | |||
#define G__FATAL 0x0004 | #define G__FATAL 0x0004 | |||
#ifdef G__64BIT | ||||
typedef unsigned int G__UINT32 ; | ||||
#else | ||||
typedef unsigned long G__UINT32 ; | ||||
#endif | ||||
#if (defined(G__SGICC) || defined(G__DECCXX)) && defined(G__ROOT) | #if (defined(G__SGICC) || defined(G__DECCXX)) && defined(G__ROOT) | |||
#define G__CHECK(ITEM,COND,ACTION) \ | #define G__CHECK(ITEM,COND,ACTION) \ | |||
if((G__security=G__SECURE_LEVEL0)&&(G__security&ITEM) && (COND) && G__secu rity_handle(ITEM)) ACTION | if((G__security=G__SECURE_LEVEL0)&&(G__security&ITEM) && (COND) && G__secu rity_handle(ITEM)) ACTION | |||
#else | #else | |||
#define G__CHECK(ITEM,COND,ACTION) \ | #define G__CHECK(ITEM,COND,ACTION) \ | |||
if((G__security&ITEM) && (COND) && G__security_handle(ITEM)) ACTION | if((G__security&ITEM) && (COND) && G__security_handle(ITEM)) ACTION | |||
#endif | #endif | |||
#define G__CHECKDRANGE(p,low,up) \ | #define G__CHECKDRANGE(p,low,up) \ | |||
if(G__check_drange(p,low,up,G__double(libp->para[p]),result7,funcname)) \ | if(G__check_drange(p,low,up,G__double(libp->para[p]),result7,funcname)) \ | |||
skipping to change at line 1382 | skipping to change at line 1388 | |||
extern G__EXPORT unsigned long G__uint G__P((G__value buf)); | extern G__EXPORT unsigned long G__uint G__P((G__value buf)); | |||
#if defined(G__DEBUG) && !defined(G__MEMTEST_C) | #if defined(G__DEBUG) && !defined(G__MEMTEST_C) | |||
#include "src/memtest.h" | #include "src/memtest.h" | |||
#endif | #endif | |||
#ifndef G__WILDCARD | #ifndef G__WILDCARD | |||
#define G__WILDCARD | #define G__WILDCARD | |||
#endif | #endif | |||
extern int G__fgetline G__P((char *string)); | ||||
extern int G__load G__P((char *commandfile)); | ||||
/* extern float G__float G__P((G__value buf));*/ | ||||
extern G__value (*G__GetSpecialObject) G__P((const char *name,void **ptr,vo | ||||
id** ppdict)); | ||||
extern G__EXPORT int G__call_setup_funcs G__P((void)); | ||||
extern void G__reset_setup_funcs G__P((void)); | ||||
extern G__EXPORT const char *G__cint_version G__P((void)); | ||||
extern void G__init_garbagecollection G__P((void)); | ||||
extern int G__garbagecollection G__P((void)); | ||||
extern void G__add_alloctable G__P((void* allocedmem,int type,int tagnum)); | ||||
extern int G__del_alloctable G__P((void* allocmem)); | ||||
extern int G__add_refcount G__P((void* allocedmem,void** storedmem)); | ||||
extern int G__del_refcount G__P((void* allocedmem,void** storedmem)); | ||||
extern int G__disp_garbagecollection G__P((FILE* fout)); | ||||
struct G__ifunc_table *G__get_methodhandle G__P((const char *funcname,const | ||||
char *argtype | ||||
,struct G__ifunc_table *p_ifunc | ||||
,long *pifn,long *poffset | ||||
,int withConversion | ||||
,int withInheritance)); | ||||
struct G__ifunc_table *G__get_methodhandle2 G__P((char *funcname | ||||
,struct G__param* libp | ||||
,struct G__ifunc_table *p_ifunc | ||||
,long *pifn,long *poffset | ||||
,int withConversion | ||||
,int withInheritance)); | ||||
struct G__var_array *G__searchvariable G__P((char *varname,int varhash | ||||
,struct G__var_array *varlocal | ||||
,struct G__var_array *varglobal | ||||
,long *pG__struct_offset | ||||
,long *pstore_struct_offset | ||||
,int *pig15 | ||||
,int isdecl)); | ||||
struct G__ifunc_table* G__p2f2funchandle G__P((void* p2f,struct G__ifunc_ta | ||||
ble* p_ifunc,int* pindex)); | ||||
G__EXPORT char* G__p2f2funcname G__P((void *p2f)); | ||||
G__EXPORT int G__isinterpretedp2f G__P((void* p2f)); | ||||
int G__compile_bytecode G__P((struct G__ifunc_table* ifunc,int index)); | ||||
/************************************************************************** | /************************************************************************** | |||
* Variable argument, byte layout policy | * Variable argument, byte layout policy | |||
************************************************************************** / | ************************************************************************** / | |||
#define G__VAARG_SIZE 1024 | #define G__VAARG_SIZE 1024 | |||
typedef struct { | typedef struct { | |||
union { | union { | |||
char d[G__VAARG_SIZE]; | char d[G__VAARG_SIZE]; | |||
long i[G__VAARG_SIZE/sizeof(long)]; | long i[G__VAARG_SIZE/sizeof(long)]; | |||
} x; | } x; | |||
skipping to change at line 1556 | skipping to change at line 1524 | |||
#define G__VAARG_INC_COPY_N 4 | #define G__VAARG_INC_COPY_N 4 | |||
/* #define G__VAARG_PASS_BY_REFERENCE 8 */ | /* #define G__VAARG_PASS_BY_REFERENCE 8 */ | |||
#endif | #endif | |||
struct G__va_list_para { | struct G__va_list_para { | |||
struct G__param *libp; | struct G__param *libp; | |||
int i; | int i; | |||
}; | }; | |||
void G__va_arg_setalign G__P((int n)); | extern G__EXPORT G__value (*G__GetSpecialObject) (G__CONST char *name,void | |||
void G__va_arg_copyvalue G__P((int t,void* p,G__value* pval,int objsize)); | **ptr,void** ppdict); | |||
extern G__EXPORT int (*G__ScriptCompiler)(G__CONST char*,G__CONST char*); | ||||
#endif /* __CINT__ */ | ||||
/* | ||||
#define G__letdouble(&buf,valtype,value) buf->type=valtype;buf->obj.d=value | ||||
#define G__letint(&buf,valtype,value) buf->type=valtype;buf->obj.i=value | ||||
*/ | ||||
#ifndef __CINT__ | ||||
/************************************************************************* | ||||
* ROOT script compiler | ||||
*************************************************************************/ | ||||
extern G__EXPORT void G__Set_RTLD_NOW G__P((void)); | ||||
extern G__EXPORT void G__Set_RTLD_LAZY G__P((void)); | ||||
extern G__EXPORT int (*G__ScriptCompiler) G__P((G__CONST char*,G__CONST cha | ||||
r*)); | ||||
extern G__EXPORT void G__RegisterScriptCompiler G__P((int(*p2f)(G__CONST ch | ||||
ar*,G__CONST char*))); | ||||
/************************************************************************* | ||||
* Pointer to function evaluation function | ||||
*************************************************************************/ | ||||
/************************************************************************* | ||||
* G__atpause, G__aterror API | ||||
*************************************************************************/ | ||||
/************************************************************************* | ||||
* interface method setup functions | ||||
*************************************************************************/ | ||||
extern G__EXPORT int G__defined_tagname G__P((G__CONST char* tagname,int no | ||||
error)); | ||||
extern G__EXPORT struct G__Definedtemplateclass *G__defined_templateclass G | ||||
__P((const char *name)); | ||||
int G__EXPORT G__deleteglobal G__P((void* p)); | ||||
int G__EXPORT G__deletevariable G__P((G__CONST char* varname)); | ||||
extern G__EXPORT int G__optimizemode G__P((int optimizemode)); | ||||
extern G__EXPORT int G__getoptimizemode G__P((void)); | ||||
G__value G__string2type_body G__P((G__CONST char *typenamin,int noerror)); | ||||
G__value G__string2type G__P((G__CONST char *typenamin)); | ||||
extern G__EXPORT void* G__findsym G__P((G__CONST char *fname)); | ||||
extern G__EXPORT int G__IsInMacro G__P((void)); | ||||
extern G__EXPORT void G__storerewindposition G__P((void)); | ||||
extern G__EXPORT void G__rewinddictionary G__P((void)); | ||||
extern G__EXPORT void G__SetCriticalSectionEnv G__P(( int(*issamethread)G__ | ||||
P((void)), void(*storelockthread)G__P((void)), void(*entercs)G__P((void)), | ||||
void(*leavecs)G__P((void)) )); | ||||
extern G__EXPORT void G__storelasterror G__P((void)); | ||||
extern G__EXPORT void G__set_smartunload G__P((int smartunload)); | ||||
extern G__EXPORT void G__set_autoloading G__P((int (*p2f) G__P((char*)))); | ||||
extern G__EXPORT void G__set_class_autoloading_callback G__P((int (*p2f) G_ | ||||
_P((char*,char*)))); | ||||
extern G__EXPORT void G__set_class_autoloading_table G__P((char* classname, | ||||
char* libname)); | ||||
extern G__EXPORT char* G__get_class_autoloading_table G__P((char* classname | ||||
)); | ||||
extern G__EXPORT int G__set_class_autoloading G__P((int newvalue)); | ||||
typedef int (*G__IgnoreInclude) G__P((const char* fname,const char* expande dfname)); | typedef int (*G__IgnoreInclude) G__P((const char* fname,const char* expande dfname)); | |||
#ifdef G__NEVER | ||||
extern G__EXPORT void* G__operator_new G__P((size_t size,void* p)); | ||||
extern G__EXPORT void* G__operator_new_ary G__P((size_t size,void* p)) ; | ||||
extern G__EXPORT void G__operator_delete G__P((void *p)) ; | ||||
extern G__EXPORT void G__operator_delete_ary G__P((void *p)) ; | ||||
#endif | ||||
extern G__EXPORT int G__getexitcode G__P((void)); | ||||
extern G__EXPORT int G__get_return G__P((int *exitval)); | ||||
#ifndef G__OLDIMPLEMENTATION1485 | ||||
#ifdef G__FIX1 | ||||
extern G__EXPORT int G__fprinterr (FILE* fp,const char* fmt,...); | ||||
#else | ||||
extern G__EXPORT int G__fprinterr G__P((FILE* fp,const char* fmt,...)); | ||||
#endif | ||||
extern G__EXPORT int G__fputerr G__P((int c)); | ||||
#else | ||||
#define G__fprinterr fprintf | ||||
#endif | ||||
extern G__EXPORT void G__SetUseCINTSYSDIR G__P((int UseCINTSYSDIR)); | ||||
extern G__EXPORT void G__SetCINTSYSDIR G__P((char* cintsysdir)); | ||||
extern G__EXPORT void G__set_eolcallback G__P((void* eolcallback)); | ||||
typedef void G__parse_hook_t (); | typedef void G__parse_hook_t (); | |||
extern G__EXPORT G__parse_hook_t* G__set_beforeparse_hook G__P((G__parse_ho | ||||
ok_t* hook)); | ||||
extern G__EXPORT void G__set_ioctortype_handler G__P((int (*p2f) G__P((cons | ||||
t char*)))); | ||||
extern G__EXPORT void G__SetCatchException G__P((int mode)); | ||||
extern G__EXPORT int G__GetCatchException G__P((void)); | ||||
extern G__EXPORT int G__Lsizeof G__P((const char *typenamein)); | ||||
#ifdef G__ASM_WHOLEFUNC | /********************************************** | |||
/************************************************************************** | * Exported Functions | |||
* Interface method to run bytecode function | * | |||
**************************************************************************/ | **********************************************/ | |||
extern G__EXPORT int G__exec_bytecode G__P((G__value *result7,G__CONST char | ||||
*funcname,struct G__param *libp,int hash)); | ||||
#endif | ||||
/************************************************************************** | #ifndef G__DECL_API | |||
* Exported Cint API functions | # ifndef G__MULTITHREADLIBCINT | |||
************************************************************************** | # ifdef __cplusplus | |||
/ | # define G__DUMMYTOCHECKFORDUPLICATES_CONCAT(A,B) A##B | |||
#ifdef G__FIX1 | # define G__DUMMYTOCHECKFORDUPLICATES(IDX) namespace{class G__DUMMYTOCHE | |||
extern G__EXPORT int G__fprintf (FILE* fp,const char* fmt,...); | CKFORDUPLICATES_CONCAT(this_API_function_index_occurs_more_than_once_,IDX) | |||
#else | {};} | |||
extern G__EXPORT int G__fprintf G__P((FILE* fp,const char* fmt,...)); | # else | |||
#endif | # define G__DUMMYTOCHECKFORDUPLICATES(IDX) | |||
extern G__EXPORT int G__setmasksignal G__P((int)); | # endif | |||
extern G__EXPORT void G__settemplevel G__P((int val)); | # define G__DECL_API(IDX, RET, NAME, ARGS) \ | |||
extern G__EXPORT void G__clearstack G__P((void)); | G__EXPORT RET NAME ARGS ; G__DUMMYTOCHECKFORDUPLICATES(IDX) | |||
extern G__EXPORT int G__lasterror G__P((void)) ; | # else | |||
extern G__EXPORT void G__reset_lasterror G__P((void)); | # define G__DUMMYTOCHECKFORDUPLICATES(IDX) | |||
extern G__EXPORT int G__gettempfilenum G__P((void)); | # define G__DECL_API(IDX, RET, NAME, ARGS) \ | |||
extern G__EXPORT void G__LockCpp G__P((void)); | static RET (* NAME ) ARGS = 0; | |||
extern G__EXPORT void G__set_sym_underscore G__P((int x)); | # endif | |||
extern G__EXPORT int G__get_sym_underscore G__P((void)); | #endif /*G__DECL_API*/ | |||
extern G__EXPORT void* G__get_errmsgcallback G__P((void)); | ||||
extern G__EXPORT void G__mask_errmsg G__P((char* msg)); | ||||
#if (!defined(G__MULTITHREADLIBCINTC)) && (!defined(G__MULTITHREADLIBCINTCP | ||||
P)) | ||||
extern G__EXPORT int G__main G__P((int argc,char **argv)); | ||||
extern G__EXPORT void G__setothermain G__P((int othermain)); | ||||
extern G__EXPORT void G__exit G__P((int rtn)); | ||||
extern G__EXPORT int G__getnumbaseclass G__P((int tagnum)); | ||||
extern G__EXPORT void G__setnewtype G__P((int globalcomp,G__CONST char* com | ||||
ment,int nindex)); | ||||
extern G__EXPORT void G__setnewtypeindex G__P((int j,int index)); | ||||
extern G__EXPORT void G__resetplocal G__P((void)); | ||||
extern G__EXPORT long G__getgvp G__P((void)); | ||||
extern G__EXPORT void G__resetglobalenv G__P((void)); | ||||
extern G__EXPORT void G__lastifuncposition G__P((void)); | ||||
extern G__EXPORT void G__resetifuncposition G__P((void)); | ||||
extern G__EXPORT void G__setnull G__P((G__value* result)); | ||||
extern G__EXPORT long G__getstructoffset G__P((void)); | ||||
extern G__EXPORT int G__getaryconstruct G__P((void)); | ||||
extern G__EXPORT long G__gettempbufpointer G__P((void)); | ||||
extern G__EXPORT void G__setsizep2memfunc G__P((int sizep2memfunc)); | ||||
extern G__EXPORT int G__getsizep2memfunc G__P((void)); | ||||
extern G__EXPORT int G__get_linked_tagnum G__P((G__linked_taginfo *p)); | ||||
extern G__EXPORT int G__get_linked_tagnum_fwd G__P((G__linked_taginfo *p)); | ||||
extern G__EXPORT int G__tagtable_setup G__P((int tagnum,int size,int cpplin | ||||
k,int isabstract,G__CONST char *comment,G__incsetup setup_memvar,G__incsetu | ||||
p setup_memfunc)); | ||||
extern G__EXPORT int G__search_tagname G__P((G__CONST char *tagname,int typ | ||||
e)); | ||||
extern G__EXPORT int G__search_typename G__P((G__CONST char *typenamein,int | ||||
typein,int tagnum,int reftype)); | ||||
extern G__EXPORT int G__defined_typename G__P((G__CONST char* typenamein)); | ||||
extern G__EXPORT int G__tag_memvar_setup G__P((int tagnum)); | ||||
extern G__EXPORT int G__memvar_setup G__P((void *p,int type,int reftype,int | ||||
constvar,int tagnum,int typenum,int statictype,int access,G__CONST char *e | ||||
xpr,int definemacro,G__CONST char *comment)); | ||||
extern G__EXPORT int G__tag_memvar_reset G__P((void)); | ||||
extern G__EXPORT int G__tag_memfunc_setup G__P((int tagnum)); | ||||
extern G__EXPORT void G__set_tagnum(G__value* val, int tagnum); | ||||
extern G__EXPORT void G__set_typenum(G__value* val, const char* type); | ||||
extern G__EXPORT void G__set_type(G__value* val, char* type); | ||||
#ifdef G__TRUEP2F | ||||
extern G__EXPORT int G__memfunc_setup G__P((G__CONST char *funcname,int has | ||||
h,G__InterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment,void* tp2f,int isvirtual)) | ||||
; | ||||
#else /* G__TRUEP2F */ | ||||
extern G__EXPORT int G__memfunc_setup G__P((G__CONST char *funcname,int has | ||||
h,G__InterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)); | ||||
#endif /* G__TRUEP2F */ | ||||
#ifdef G__TRUEP2F | ||||
extern G__EXPORT int G__memfunc_setup2 G__P((G__CONST char *funcname,int ha | ||||
sh,G__CONST char *mangled_name,G__InterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment,void* tp2f,int isvirtual)) | ||||
; | ||||
#else /* G__TRUEP2F */ | ||||
extern G__EXPORT int G__memfunc_setup2 G__P((G__CONST char *funcname,int ha | ||||
sh,G__CONST char *mangled_name,G__InterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)); | ||||
#endif /* G__TRUEP2F */ | ||||
extern G__EXPORT int G__memfunc_next G__P((void)); | ||||
extern G__EXPORT int G__memfunc_para_setup G__P((int ifn,int type,int tagnu | ||||
m,int typenum,int reftype,G__value *para_default,char *para_def,char *para_ | ||||
name)); | ||||
extern G__EXPORT int G__tag_memfunc_reset G__P((void)); | ||||
extern G__EXPORT void G__letint G__P((G__value *buf,int type,long value)); | ||||
extern G__EXPORT void G__letdouble G__P((G__value *buf,int type,double valu | ||||
e)); | ||||
extern G__EXPORT int G__value_get_type G__P((G__value* buf)); | ||||
extern G__EXPORT int G__value_get_tagnum G__P((G__value* buf)); | ||||
extern G__EXPORT void G__store_tempobject G__P((G__value reg)); | ||||
extern G__EXPORT int G__inheritance_setup G__P((int tagnum,int basetagnum,l | ||||
ong baseoffset,int baseaccess,int property)); | ||||
extern G__EXPORT void G__add_compiledheader G__P((G__CONST char *headerfile | ||||
)); | ||||
extern G__EXPORT void G__add_ipath G__P((G__CONST char *ipath)); | ||||
extern G__EXPORT int G__delete_ipath G__P((G__CONST char *ipath)); | ||||
extern G__EXPORT struct G__includepath *G__getipathentry(); | ||||
extern G__EXPORT void G__add_macro G__P((G__CONST char *macro)); | ||||
extern G__EXPORT void G__check_setup_version G__P((int version,G__CONST cha | ||||
r *func)); | ||||
extern G__EXPORT long G__int G__P((G__value buf)); | ||||
extern G__EXPORT long G__int_cast G__P((G__value buf)); | ||||
extern G__EXPORT double G__double G__P((G__value buf)); | ||||
extern G__EXPORT G__value G__calc G__P((G__CONST char *expr)); | ||||
extern G__EXPORT int G__loadfile G__P((G__CONST char* filename)); | ||||
extern G__EXPORT int G__setfilecontext G__P((G__CONST char* filename, stru | ||||
ct G__input_file* ifile)); | ||||
extern G__EXPORT int G__unloadfile G__P((G__CONST char* filename)); | ||||
extern G__EXPORT int G__init_cint G__P((G__CONST char* command)); | ||||
extern G__EXPORT void G__scratch_all G__P((void)); | ||||
extern G__EXPORT void G__setdouble G__P((G__value *pbuf,double d,void* pd,i | ||||
nt type,int tagnum,int typenum,int reftype)); | ||||
extern G__EXPORT void G__setint G__P((G__value *pbuf,long d,void* pd,int ty | ||||
pe,int tagnum,int typenum,int reftype)); | ||||
extern G__EXPORT void G__stubstoreenv G__P((struct G__StoreEnv *env,void* p | ||||
,int tagnum)); | ||||
extern G__EXPORT void G__stubrestoreenv G__P((struct G__StoreEnv *env)); | ||||
extern G__EXPORT int G__getstream G__P((const char *source,int *isrc,char * | ||||
string,const char *endmark)); | ||||
extern G__EXPORT char *G__type2string G__P((int type,int tagnum,int typenum | ||||
,int reftype,int isconst)); | ||||
extern G__EXPORT void G__alloc_tempobject G__P((int tagnum,int typenum)); | ||||
extern G__EXPORT void G__alloc_tempobject_val G__P((G__value* val)); | ||||
extern G__EXPORT void G__set_p2fsetup G__P((void (*p2f)())); | ||||
extern G__EXPORT void G__free_p2fsetup G__P((void)); | ||||
extern G__EXPORT int G__genericerror G__P((G__CONST char *message)); | ||||
extern G__EXPORT char* G__tmpnam G__P((char* name)); | ||||
extern G__EXPORT int G__setTMPDIR G__P((char* badname)); | ||||
extern G__EXPORT void G__setPrerun G__P((int prerun)); | ||||
extern G__EXPORT int G__readline G__P((FILE *fp,char *line,char *argbuf,int | ||||
*argn,char *arg[])); | ||||
extern G__EXPORT int G__getFuncNow G__P((void)); | ||||
extern G__EXPORT G__value G__getfunction G__P((const char *item,int *known3 | ||||
,int memfunc_flag)); | ||||
extern FILE* G__getIfileFp G__P((void)); | ||||
extern G__EXPORT void G__incIfileLineNumber G__P((void)); | ||||
extern G__EXPORT struct G__input_file* G__get_ifile G__P((void)); | ||||
extern G__EXPORT void G__setReturn G__P((int rtn)); | ||||
extern G__EXPORT int G__getPrerun G__P((void)); | ||||
extern G__EXPORT short G__getDispsource G__P((void)); | ||||
extern G__EXPORT FILE* G__getSerr G__P((void)); | ||||
extern G__EXPORT int G__getIsMain G__P((void)); | ||||
extern G__EXPORT void G__setIsMain G__P((int ismain)); | ||||
extern G__EXPORT void G__setStep G__P((int step)); | ||||
extern G__EXPORT int G__getStepTrace G__P((void)); | ||||
extern G__EXPORT void G__setDebug G__P((int dbg)); | ||||
extern G__EXPORT int G__getDebugTrace G__P((void)); | ||||
extern G__EXPORT void G__set_asm_noverflow G__P((int novfl)); | ||||
extern G__EXPORT int G__get_no_exec G__P((void)); | ||||
extern G__EXPORT int G__get_no_exec_compile G__P((void)); | ||||
extern G__EXPORT void G__setdebugcond G__P((void)); | ||||
extern G__EXPORT int G__init_process_cmd G__P((void)); | ||||
extern G__EXPORT int G__process_cmd G__P((char *line,char *prompt,int *more | ||||
,int *err,G__value *rslt)); | ||||
extern G__EXPORT int G__pause G__P((void)); | ||||
extern G__EXPORT char* G__input G__P((const char* prompt)); | ||||
extern G__EXPORT int G__split G__P((char *line,char *string,int *argc,char | ||||
**argv)); | ||||
extern G__EXPORT int G__getIfileLineNumber G__P((void)); | ||||
extern G__EXPORT void G__addpragma G__P((char* comname,void (*p2f) G__P((ch | ||||
ar*)) )); | ||||
extern G__EXPORT void G__add_setup_func G__P((G__CONST char *libname, G__in | ||||
csetup func)); | ||||
extern G__EXPORT void G__remove_setup_func G__P((G__CONST char *libname)); | ||||
extern G__EXPORT void G__setgvp G__P((long gvp)); | ||||
extern G__EXPORT void G__set_stdio_handle G__P((FILE* sout,FILE* serr,FILE* | ||||
sin)); | ||||
extern G__EXPORT void G__setautoconsole G__P((int autoconsole)); | ||||
extern G__EXPORT int G__AllocConsole G__P((void)); | ||||
extern G__EXPORT int G__FreeConsole G__P((void)); | ||||
extern G__EXPORT int G__getcintready G__P((void)); | ||||
extern G__EXPORT int G__security_recover G__P((FILE* fout)); | ||||
extern G__EXPORT void G__breakkey G__P((int signame)); | ||||
extern G__EXPORT int G__stepmode G__P((int stepmode)); | ||||
extern G__EXPORT int G__tracemode G__P((int tracemode)); | ||||
extern G__EXPORT int G__setbreakpoint G__P((const char *breakline,const cha | ||||
r *breakfile)); | ||||
extern G__EXPORT int G__getstepmode G__P((void)); | ||||
extern G__EXPORT int G__gettracemode G__P((void)); | ||||
extern G__EXPORT int G__printlinenum G__P((void)); | ||||
extern G__EXPORT int G__search_typename2 G__P((G__CONST char *typenamein,in | ||||
t typein,int tagnum,int reftype,int parent_tagnum)); | ||||
extern G__EXPORT void G__set_atpause G__P((void (*p2f)())); | ||||
extern G__EXPORT void G__set_aterror G__P((void (*p2f)())); | ||||
extern G__EXPORT void G__p2f_void_void G__P((void* p2f)); | ||||
extern G__EXPORT int G__setglobalcomp G__P((int globalcomp)); | ||||
extern G__EXPORT const char *G__getmakeinfo G__P((const char *item)); | ||||
extern G__EXPORT const char *G__getmakeinfo1 G__P((const char *item)); | ||||
extern G__EXPORT int G__get_security_error G__P((void)); | ||||
extern G__EXPORT char* G__map_cpp_name G__P((const char *in)); | ||||
extern G__EXPORT char* G__Charref G__P((G__value *buf)); | ||||
extern G__EXPORT short* G__Shortref G__P((G__value *buf)); | ||||
extern G__EXPORT int* G__Intref G__P((G__value *buf)); | ||||
extern G__EXPORT long* G__Longref G__P((G__value *buf)); | ||||
extern G__EXPORT unsigned char* G__UCharref G__P((G__value *buf)); | ||||
#ifdef G__BOOL4BYTE | ||||
extern G__EXPORT int* G__Boolref G__P((G__value *buf)); | ||||
#else // G__BOOL4BYTE | ||||
extern G__EXPORT unsigned char* G__Boolref G__P((G__value *buf)); | ||||
#endif // G__BOOL4BYTE | ||||
extern G__EXPORT unsigned short* G__UShortref G__P((G__value *buf)); | ||||
extern G__EXPORT unsigned int* G__UIntref G__P((G__value *buf)); | ||||
extern G__EXPORT unsigned long* G__ULongref G__P((G__value *buf)); | ||||
extern G__EXPORT float* G__Floatref G__P((G__value *buf)); | ||||
extern G__EXPORT double* G__Doubleref G__P((G__value *buf)); | ||||
extern G__EXPORT int G__loadsystemfile G__P((G__CONST char* filename)); | ||||
extern G__EXPORT void G__set_ignoreinclude G__P((G__IgnoreInclude ignoreinc | ||||
lude)); | ||||
extern G__EXPORT G__value G__exec_tempfile_fp G__P((FILE *fp)); | ||||
extern G__EXPORT G__value G__exec_tempfile G__P((G__CONST char *file)); | ||||
extern G__EXPORT G__value G__exec_text G__P((G__CONST char *unnamedmacro)); | ||||
extern G__EXPORT char* G__exec_text_str G__P((G__CONST char *unnamedmacro,c | ||||
har* result)); | ||||
extern G__EXPORT char* G__lasterror_filename G__P((void)); | ||||
extern G__EXPORT int G__lasterror_linenum G__P((void)); | ||||
extern void G__EXPORT G__va_arg_put G__P((G__va_arg_buf* pbuf,struct G__par | ||||
am* libp,int n)); | ||||
#ifndef G__OLDIMPLEMENTATION1546 | ||||
extern G__EXPORT const char* G__load_text G__P((G__CONST char *namedmacro)) | ||||
; | ||||
extern G__EXPORT void G__set_emergencycallback G__P((void (*p2f)())); | ||||
#endif | ||||
#ifndef G__OLDIMPLEMENTATION1485 | ||||
extern G__EXPORT void G__set_errmsgcallback(void* p); | ||||
#endif | ||||
extern G__EXPORT void G__letLonglong G__P((G__value* buf,int type,G__int64 | ||||
value)); | ||||
extern G__EXPORT void G__letULonglong G__P((G__value* buf,int type,G__uint6 | ||||
4 value)); | ||||
extern G__EXPORT void G__letLongdouble G__P((G__value* buf,int type,long do | ||||
uble value)); | ||||
extern G__EXPORT G__int64 G__Longlong G__P((G__value buf)); | ||||
extern G__EXPORT G__uint64 G__ULonglong G__P((G__value buf)); | ||||
extern G__EXPORT long double G__Longdouble G__P((G__value buf)); | ||||
extern G__EXPORT G__int64* G__Longlongref G__P((G__value *buf)); | ||||
extern G__EXPORT G__uint64* G__ULonglongref G__P((G__value *buf)); | ||||
extern G__EXPORT long double* G__Longdoubleref G__P((G__value *buf)); | ||||
extern G__EXPORT void G__exec_alloc_lock(); | ||||
extern G__EXPORT void G__exec_alloc_unlock(); | ||||
/* Missing interfaces */ | ||||
extern G__EXPORT int G__clearfilebusy G__P((int)); | ||||
/* In Api.h: G__InitGetSpecialObject */ | ||||
/* In Api.h: G__InitUpdateClassInfo */ | ||||
/* earlier in this file: G__call_setup_funcs */ | ||||
/* earlier in this file: G__cint_version */ | ||||
/* earlier in this file: G__clearstack */ | ||||
extern G__EXPORT void G__CurrentCall(int, void*, long*); | ||||
extern G__EXPORT int G__const_resetnoerror G__P((void)); | ||||
extern G__EXPORT int G__const_setnoerror G__P((void)); | ||||
extern G__EXPORT int G__const_whatnoerror G__P((void)); | ||||
extern G__EXPORT void G__enable_wrappers(int set); | ||||
extern G__EXPORT int G__wrappers_enabled(); | ||||
/* earlier in this file: G__deleteglobal */ | ||||
/* earlier in this file: G__exec_bytecode */ | ||||
/* earlier in this file: G__findsym */ | ||||
extern G__EXPORT int G__close_inputfiles G__P((void)); | ||||
/* earlier in this file: G__p2f2funcname */ | ||||
extern G__EXPORT void G__scratch_globals_upto G__P((struct G__dictposition | ||||
*dictpos)); | ||||
extern G__EXPORT int G__scratch_upto G__P((struct G__dictposition *dictpos) | ||||
); | ||||
/* earlier in this file: G__settemplevel */ | ||||
extern G__EXPORT void G__store_dictposition G__P((struct G__dictposition* d | ||||
ictpos)); | ||||
extern G__EXPORT int G__printf (const char* fmt,...); | ||||
extern G__EXPORT void G__free_tempobject G__P((void)); | ||||
extern G__EXPORT int G__display_class(FILE *fout,char *name,int base,int st | ||||
art); | ||||
extern G__EXPORT int G__display_includepath(FILE *fout); | ||||
extern G__EXPORT void G__set_alloclockfunc(void(*)()); | ||||
extern G__EXPORT void G__set_allocunlockfunc(void(*)()); | ||||
extern G__EXPORT int G__usermemfunc_setup(char *funcname,int hash,int (*fun | ||||
cp)(),int type, | ||||
int tagnum,int typenum,int reftype, | ||||
int para_nu,int ansi,int accessin,int isconst, | ||||
char *paras, char *comment | ||||
#ifdef G__TRUEP2F | ||||
,void *truep2f,int isvirtual | ||||
#endif | ||||
,void *userparam); | ||||
extern G__EXPORT char *G__fulltagname(int tagnum,int mask_dollar); | ||||
extern G__EXPORT void G__loadlonglong(int* ptag,int* ptype,int which); | ||||
extern G__EXPORT int G__isanybase(int basetagnum,int derivedtagnum,long pob | ||||
ject); | ||||
extern G__EXPORT int G__pop_tempobject(void); | ||||
extern G__EXPORT int G__pop_tempobject_nodel(void); | ||||
extern G__EXPORT const char* G__stripfilename(const char* filename); | ||||
extern G__EXPORT int G__sizeof (G__value *object); | ||||
#ifdef _WIN32 | ||||
extern G__EXPORT FILE *FOpenAndSleep(const char *filename, const char *mode | ||||
); | ||||
#endif | ||||
extern G__EXPORT struct G__ifunc_table_internal *G__get_ifunc_internal(stru | ||||
ct G__ifunc_table* iref); | ||||
#else /* G__MULTITHREADLIBCINT */ | ||||
static int (*G__main) G__P((int argc,char **argv)); | ||||
static void (*G__setothermain) G__P((int othermain)); | ||||
static int (*G__getnumbaseclass) G__P((int tagnum)); | ||||
static void (*G__setnewtype) G__P((int globalcomp,G__CONST char* comment,in | ||||
t nindex)); | ||||
static void (*G__setnewtypeindex) G__P((int j,int index)); | ||||
static void (*G__resetplocal) G__P((void)); | ||||
static long (*G__getgvp) G__P((void)); | ||||
static void (*G__resetglobalenv) G__P((void)); | ||||
static void (*G__lastifuncposition) G__P((void)); | ||||
static void (*G__resetifuncposition) G__P((void)); | ||||
static void (*G__setnull) G__P((G__value* result)); | ||||
static long (*G__getstructoffset) G__P((void)); | ||||
static int (*G__getaryconstruct) G__P((void)); | ||||
static long (*G__gettempbufpointer) G__P((void)); | ||||
static void (*G__setsizep2memfunc) G__P((int sizep2memfunc)); | ||||
static int (*G__getsizep2memfunc) G__P((void)); | ||||
static int (*G__get_linked_tagnum) G__P((G__linked_taginfo *p)); | ||||
static int (*G__tagtable_setup) G__P((int tagnum,int size,int cpplink,int i | ||||
sabstract,G__CONST char *comment,G__incsetup setup_memvar,G__incsetup setup | ||||
_memfunc)); | ||||
static int (*G__search_tagname) G__P((G__CONST char *tagname,int type)); | ||||
static int (*G__search_typename) G__P((G__CONST char *typenamein,int typein | ||||
,int tagnum,int reftype)); | ||||
static int (*G__defined_typename) G__P((G__CONST char* typenamein)); | ||||
static int (*G__tag_memvar_setup) G__P((int tagnum)); | ||||
static int (*G__memvar_setup) G__P((void *p,int type,int reftype,int constv | ||||
ar,int tagnum,int typenum,int statictype,int access,G__CONST char *expr,int | ||||
definemacro,G__CONST char *comment)); | ||||
static int (*G__tag_memvar_reset) G__P((void)); | ||||
static int (*G__tag_memfunc_setup) G__P((int tagnum)); | ||||
#ifdef G__TRUEP2F | ||||
static int (*G__memfunc_setup) G__P((G__CONST char *funcname,int hash, G__I | ||||
nterfaceMethod funcp,int type | ||||
, int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int is | ||||
const,G__CONST char *paras,G__CONST char *comment,void* tp2f,int isvirtual) | ||||
); | ||||
#else /* G__TRUEP2F */ | ||||
static int (*G__memfunc_setup) G__P((G__CONST char *funcname,int hash, G__I | ||||
nterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)); | ||||
#endif /* G__TRUEP2F */ | ||||
#ifdef G__TRUEP2F | ||||
static int (*G__memfunc_setup2) G__P((G__CONST char *funcname,int hash, G__ | ||||
CONST char *mangled_name, G__InterfaceMethod funcp | ||||
,int type, int tagnum,int typenum,int reftype,int para_nu,int ansi,int acce | ||||
ss,int isconst,G__CONST char *paras,G__CONST char *comment,void* tp2f,int i | ||||
svirtual)); | ||||
#else /* G__TRUEP2F */ | ||||
static int (*G__memfunc_setup2) G__P((G__CONST char *funcname,int hash,G__C | ||||
ONST char *mangled_name,G__InterfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)); | ||||
#endif /* G__TRUEP2F */ | ||||
static int (*G__memfunc_next) G__P((void)); | ||||
static int (*G__memfunc_para_setup) G__P((int ifn,int type,int tagnum,int t | ||||
ypenum,int reftype,G__value *para_default,char *para_def,char *para_name)); | ||||
static int (*G__tag_memfunc_reset) G__P((void)); | ||||
static void (*G__letint) G__P((G__value *buf,int type,long value)); | ||||
static void (*G__letdouble) G__P((G__value *buf,int type,double value)); | ||||
static void (*G__store_tempobject) G__P((G__value reg)); | ||||
static int (*G__inheritance_setup) G__P((int tagnum,int basetagnum,long bas | ||||
eoffset,int baseaccess,int property)); | ||||
static void (*G__add_compiledheader) G__P((G__CONST char *headerfile)); | ||||
static void (*G__add_ipath) G__P((G__CONST char *ipath)); | ||||
static void (*G__add_macro) G__P((G__CONST char *macro)); | ||||
static void (*G__check_setup_version) G__P((int version,G__CONST char *func | ||||
)); | ||||
static long (*G__int) G__P((G__value buf)); | ||||
static double (*G__double) G__P((G__value buf)); | ||||
static G__value (*G__calc) G__P((G__CONST char *expr)); | ||||
static int (*G__loadfile) G__P((G__CONST char* filename)); | ||||
static int (*G__unloadfile) G__P((G__CONST char* filename)); | ||||
static int (*G__init_cint) G__P((G__CONST char* command)); | ||||
static void (*G__scratch_all) G__P((void)); | ||||
static void (*G__setdouble) G__P((G__value *pbuf,double d,void* pd,int type | ||||
,int tagnum,int typenum,int reftype)); | ||||
static void (*G__setint) G__P((G__value *pbuf,long d,void* pd,int type,int | ||||
tagnum,int typenum,int reftype)); | ||||
static void (*G__stubstoreenv) G__P((struct G__StoreEnv *env,void* p,int ta | ||||
gnum)); | ||||
static void (*G__stubrestoreenv) G__P((struct G__StoreEnv *env)); | ||||
static int (*G__getstream) G__P((char *source,int *isrc,char *string,char * | ||||
endmark)); | ||||
static char* (*G__type2string) G__P((int type,int tagnum,int typenum,int re | ||||
ftype,int isconst)); | ||||
static void (*G__alloc_tempobject) G__P((int tagnum,int typenum)); | ||||
static void (*G__alloc_tempobject_val) G__P((G__value* val)); | ||||
static void (*G__set_p2fsetup) G__P((void (*p2f)())); | ||||
static void (*G__free_p2fsetup) G__P((void)); | ||||
static int (*G__genericerror) G__P((G__CONST char *message)); | ||||
static char* (*G__tmpnam) G__P((char* name)); | ||||
static int (*G__setTMPDIR) G__P((char* badname)); | ||||
static void (*G__setPrerun) G__P((int prerun)); | ||||
static int (*G__readline) G__P((FILE *fp,char *line,char *argbuf,int *argn, | ||||
char *arg[])); | ||||
static int (*G__getFuncNow) G__P((void)); | ||||
static FILE* (*G__getIfileFp) G__P((void)); | ||||
static void (*G__incIfileLineNumber) G__P((void)); | ||||
static struct G__input_file* G__get_ifile G__P((void)); | ||||
static void (*G__setReturn) G__P((int rtn)); | ||||
static int (*G__getPrerun) G__P((void)); | ||||
static short (*G__getDispsource) G__P((void)); | ||||
static FILE* (*G__getSerr) G__P((void)); | ||||
static int (*G__getIsMain) G__P((void)); | ||||
static void (*G__setIsMain) G__P((int ismain)); | ||||
static void (*G__setStep) G__P((int step)); | ||||
static int (*G__getStepTrace) G__P((void)); | ||||
static void (*G__setDebug) G__P((int dbg)); | ||||
static int (*G__getDebugTrace) G__P((void)); | ||||
static void (*G__set_asm_noverflow) G__P((int novfl)); | ||||
static int (*G__get_no_exec) G__P((void)); | ||||
static int (*G__get_no_exec_compile) G__P((void)); | ||||
static void (*G__setdebugcond) G__P((void)); | ||||
static int (*G__init_process_cmd) G__P((void)); | ||||
static int (*G__process_cmd) G__P((char *line,char *prompt,int *more,int *e | ||||
rr,G__value *rslt)); | ||||
static int (*G__pause) G__P((void)); | ||||
static char* (*G__input) G__P((const char* prompt)); | ||||
static int (*G__split) G__P((char *line,char *string,int *argc,char **argv) | ||||
); | ||||
static int (*G__getIfileLineNumber) G__P((void)); | ||||
static void (*G__addpragma) G__P((char* comname,void (*p2f) G__P((char*)) ) | ||||
); | ||||
static void (*G__add_setup_func) G__P((G__CONST char *libname,G__incsetup f | ||||
unc)); | ||||
static void (*G__remove_setup_func) G__P((G__CONST char *libname)); | ||||
static void (*G__setgvp) G__P((long gvp)); | ||||
static void (*G__set_stdio_handle) G__P((FILE* sout,FILE* serr,FILE* sin)); | ||||
static void (*G__setautoconsole) G__P((int autoconsole)); | ||||
static int (*G__AllocConsole) G__P((void)); | ||||
static int (*G__FreeConsole) G__P((void)); | ||||
static int (*G__getcintready) G__P((void)); | ||||
static int (*G__security_recover) G__P((FILE* fout)); | ||||
static void (*G__breakkey) G__P((int signame)); | ||||
static int (*G__stepmode) G__P((int stepmode)); | ||||
static int (*G__tracemode) G__P((int tracemode)); | ||||
static int (*G__getstepmode) G__P((void)); | ||||
static int (*G__gettracemode) G__P((void)); | ||||
static int (*G__printlinenum) G__P((void)); | ||||
static int (*G__search_typename2) G__P((G__CONST char *typenamein,int typei | ||||
n,int tagnum,int reftype,int parent_tagnum)); | ||||
static void (*G__set_atpause) G__P((void (*p2f)())); | ||||
static void (*G__set_aterror) G__P((void (*p2f)())); | ||||
static void (*G__p2f_void_void) G__P((void* p2f)); | ||||
static int (*G__setglobalcomp) G__P((int globalcomp)); | ||||
static char* (*G__getmakeinfo) G__P((char *item)); | ||||
static int (*G__get_security_error) G__P((void)); | ||||
static char* (*G__map_cpp_name) G__P((char *in)); | ||||
static char* (*G__Charref) G__P((G__value *buf)); | ||||
static short* (*G__Shortref) G__P((G__value *buf)); | ||||
static int* (*G__Intref) G__P((G__value *buf)); | ||||
static long* (*G__Longref) G__P((G__value *buf)); | ||||
static unsigned char* (*G__UCharref) G__P((G__value *buf)); | ||||
static unsigned short* (*G__UShortref) G__P((G__value *buf)); | ||||
static unsigned int* (*G__UIntref) G__P((G__value *buf)); | ||||
static unsigned long* (*G__ULongref) G__P((G__value *buf)); | ||||
static float* (*G__Floatref) G__P((G__value *buf)); | ||||
static double* (*G__Doubleref) G__P((G__value *buf)); | ||||
static int (*G__loadsystemfile) G__P((G__CONST char* filename)); | ||||
static void (*G__set_ignoreinclude) G__P((G__IgnoreInclude ignoreinclude)); | ||||
static G__value (*G__exec_tempfile) G__P((G__CONST char *file)); | ||||
static G__value (*G__exec_text) G__P((G__CONST char *unnamedmacro)); | ||||
static char* (*G__lasterror_filename) G__P((void)); | ||||
static int (*G__lasterror_linenum) G__P((void)); | ||||
static void (*G__va_arg_put) G__P((G__va_arg_buf* pbuf,struct G__param* lib | ||||
p,int n)); | ||||
#ifndef G__OLDIMPLEMENTATION1546 | ||||
static char* (*G__load_text) G__P((G__CONST char *namedmacro)); | ||||
static void (*G__set_emergencycallback) G__P((void (*p2f)())); | ||||
#endif | ||||
#ifndef G__OLDIMPLEMENTATION1485 | ||||
static void (*G__set_errmsgcallback) G__P((void* p)); | ||||
#endif | ||||
static void (*G__letLonglong) G__P((G__value* buf,int type,G__int64 value)) | ||||
; | ||||
static void (*G__letULonglong) G__P((G__value* buf,int type,G__uint64 value | ||||
)); | ||||
static void (*G__letLongdouble) G__P((G__value* buf,int type,long double va | ||||
lue)); | ||||
static G__int64 (*G__Longlong) G__P((G__value buf)); /* used to be int */ | ||||
static G__uint64 (*G__ULonglong) G__P((G__value buf)); /* used to be int */ | ||||
static long double (*G__Longdouble) G__P((G__value buf)); /* used to be int | ||||
*/ | ||||
static G__int64* (*G__Longlongref) G__P((G__value *buf)); | ||||
static G__uint64* (*G__ULonglongref) G__P((G__value *buf)); | ||||
static long double* (*G__Longdoubleref) G__P((G__value *buf)); | ||||
static struct G__input_file* (*G__get_ifile) G__P((void)); | ||||
static void (*G__set_alloclockfunc) G__P((void*)); | #include "G__ci_fproto.h" | |||
static void (*G__set_allocunlockfunc) G__P((void*)); | ||||
#ifdef G__MULTITHREADLIBCINTC | #ifdef G__MULTITHREADLIBCINT | |||
G__EXPORT void G__SetCCintApiPointers( | /* second round, now setting func ptrs */ | |||
#else | ||||
G__EXPORT void G__SetCppCintApiPointers( | ||||
#endif | ||||
void* a1, | ||||
void* a2, | ||||
void* a3, | ||||
void* a4, | ||||
void* a5, | ||||
void* a6, | ||||
void* a7, | ||||
void* a8, | ||||
void* a9, | ||||
void* a10, | ||||
void* a11, | ||||
void* a12, | ||||
void* a13, | ||||
void* a14, | ||||
void* a15, | ||||
void* a16, | ||||
void* a17, | ||||
void* a18, | ||||
void* a19, | ||||
void* a20, | ||||
void* a21, | ||||
void* a22, | ||||
void* a23, | ||||
void* a24, | ||||
void* a25, | ||||
void* a26, | ||||
void* a27, | ||||
void* a28, | ||||
void* a29, | ||||
void* a30, | ||||
void* a31, | ||||
void* a32, | ||||
void* a33, | ||||
void* a34, | ||||
void* a35, | ||||
void* a36, | ||||
void* a37, | ||||
void* a38, | ||||
void* a39, | ||||
void* a40, | ||||
void* a41, | ||||
void* a42, | ||||
void* a43, | ||||
void* a44, | ||||
void* a45, | ||||
void* a46, | ||||
void* a47, | ||||
void* a48, | ||||
void* a49, | ||||
void* a50, | ||||
void* a51, | ||||
void* a52, | ||||
void* a53, | ||||
void* a54, | ||||
void* a55, | ||||
void* a56, | ||||
void* a57, | ||||
void* a58, | ||||
void* a59, | ||||
void* a60, | ||||
void* a61, | ||||
void* a62, | ||||
void* a63, | ||||
void* a64, | ||||
void* a65, | ||||
void* a66, | ||||
void* a67, | ||||
void* a68, | ||||
void* a69, | ||||
void* a70, | ||||
void* a71, | ||||
void* a72, | ||||
void* a73, | ||||
void* a74, | ||||
void* a75, | ||||
void* a76, | ||||
void* a77, | ||||
void* a78, | ||||
void* a79, | ||||
void* a80, | ||||
void* a81, | ||||
void* a82, | ||||
void* a83, | ||||
void* a84, | ||||
void* a85, | ||||
void* a86, | ||||
void* a87, | ||||
void* a88, | ||||
void* a89, | ||||
void* a90, | ||||
void* a91, | ||||
void* a92, | ||||
void* a93, | ||||
void* a94, | ||||
void* a95, | ||||
void* a96, | ||||
void* a97, | ||||
void* a100, | ||||
void* a101, | ||||
void* a102, | ||||
void* a103, | ||||
void* a104, | ||||
void* a105, | ||||
void* a106, | ||||
void* a107, | ||||
void* a108, | ||||
void* a109, | ||||
void* a110, | ||||
void* a111, | ||||
void* a112, | ||||
void* a113, | ||||
void* a114, | ||||
void* a115, | ||||
void* a116, | ||||
void* a117, | ||||
void* a118, | ||||
void* a119, | ||||
void* a120, | ||||
void* a121, | ||||
void* a122, | ||||
void* a123, | ||||
void* a124 | ||||
#ifndef G__OLDIMPLEMENTATION1546 | ||||
,void* a125 | ||||
,void* a126 | ||||
#endif | ||||
#ifndef G__OLDIMPLEMENTATION1485 | ||||
,void* a127 | ||||
#endif | ||||
,void* a128 | ||||
,void* a129 | ||||
,void* a130 | ||||
,void* a131 | ||||
,void* a132 | ||||
,void* a133 | ||||
,void* a134 | ||||
,void* a135 | ||||
,void* a136 | ||||
,void* a137 | ||||
,void* a138 | ||||
,void* a139 | ||||
,void* a140 | ||||
) | ||||
{ | ||||
G__main = (int (*) G__P((int argc,char **argv)) ) a1; | ||||
G__setothermain = (void (*) G__P((int othermain)) ) a2; | ||||
G__getnumbaseclass = (int (*) G__P((int tagnum)) ) a3; | ||||
G__setnewtype = (void (*) G__P((int globalcomp,G__CONST char* comment,int | ||||
nindex)) ) a4; | ||||
G__setnewtypeindex = (void (*) G__P((int j,int index)) ) a5; | ||||
G__resetplocal = (void (*) G__P((void)) ) a6; | ||||
G__getgvp = (long (*) G__P((void)) ) a7; | ||||
G__resetglobalenv = (void (*) G__P((void)) ) a8; | ||||
G__lastifuncposition = (void (*) G__P((void)) ) a9; | ||||
G__resetifuncposition = (void (*) G__P((void)) ) a10; | ||||
G__setnull = (void (*) G__P((G__value* result)) ) a11; | ||||
G__getstructoffset = (long (*) G__P((void)) ) a12; | ||||
G__getaryconstruct = (int (*) G__P((void)) ) a13; | ||||
G__gettempbufpointer = (long (*) G__P((void)) ) a14; | ||||
G__setsizep2memfunc = (void (*) G__P((int sizep2memfunc)) ) a15; | ||||
G__getsizep2memfunc = (int (*) G__P((void)) ) a16; | ||||
G__get_linked_tagnum = (int (*) G__P((G__linked_taginfo *p)) ) a17; | ||||
G__tagtable_setup = (int (*) G__P((int tagnum,int size,int cpplink,int is | ||||
abstract,G__CONST char *comment,G__incsetup setup_memvar,G__incsetup setup_ | ||||
memfunc)) ) a18; | ||||
G__search_tagname = (int (*) G__P((G__CONST char *tagname,int type)) ) a1 | ||||
9; | ||||
G__search_typename = (int (*) G__P((G__CONST char *typenamein,int typein, | ||||
int tagnum,int reftype)) ) a20; | ||||
G__defined_typename = (int (*) G__P((G__CONST char* typenamein)) ) a21; | ||||
G__tag_memvar_setup = (int (*) G__P((int tagnum)) ) a22; | ||||
G__memvar_setup = (int (*) G__P((void *p,int type,int reftype,int constva | ||||
r,int tagnum,int typenum,int statictype,int access,G__CONST char *expr,int | ||||
definemacro,G__CONST char *comment)) ) a23; | ||||
G__tag_memvar_reset = (int (*) G__P((void)) ) a24; | ||||
G__tag_memfunc_setup = (int (*) G__P((int tagnum)) ) a25; | ||||
#ifdef G__TRUEP2F | ||||
G__memfunc_setup = (int (*) G__P((G__CONST char *funcname,int hash,G__Int | ||||
erfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment,void* tp2f,int isvirtual)) | ||||
) a26; | ||||
#else /* G__TRUEP2F */ | ||||
G__memfunc_setup = (int (*) G__P((G__CONST char *funcname,int hash,G__Int | ||||
erfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)) ) a26; | ||||
#endif /* G__TRUEP2F */ | ||||
G__memfunc_next = (int (*) G__P((void)) ) a27; | ||||
G__memfunc_para_setup = (int (*) G__P((int ifn,int type,int tagnum,int ty | ||||
penum,int reftype,G__value *para_default,char *para_def,char *para_name)) ) | ||||
a28; | ||||
G__tag_memfunc_reset = (int (*) G__P((void)) ) a29; | ||||
G__letint = (void (*) G__P((G__value *buf,int type,long value)) ) a30; | ||||
G__letdouble = (void (*) G__P((G__value *buf,int type,double value)) ) a3 | ||||
1; | ||||
G__store_tempobject = (void (*) G__P((G__value reg)) ) a32; | ||||
G__inheritance_setup = (int (*) G__P((int tagnum,int basetagnum,long base | ||||
offset,int baseaccess,int property)) ) a33; | ||||
G__add_compiledheader = (void (*) G__P((G__CONST char *headerfile)) ) a34 | ||||
; | ||||
G__add_ipath = (void (*) G__P((G__CONST char *ipath)) ) a35; | ||||
G__add_macro = (void (*) G__P((G__CONST char *macro)) ) a36; | ||||
G__check_setup_version = (void (*) G__P((int version,G__CONST char *func) | ||||
) ) a37; | ||||
G__int = (long (*) G__P((G__value buf)) ) a38; | ||||
G__double = (double (*) G__P((G__value buf)) ) a39; | ||||
G__calc = (G__value (*) G__P((G__CONST char *expr)) ) a40; | ||||
G__loadfile = (int (*) G__P((G__CONST char *filename)) ) a41; | ||||
G__unloadfile = (int (*) G__P((G__CONST char *filename)) ) a42; | ||||
G__init_cint = (int (*) G__P((G__CONST char *command)) ) a43; | ||||
G__scratch_all = (void (*) G__P((void)) ) a44; | ||||
G__setdouble = (void (*) G__P((G__value *pbuf,double d,void* pd,int type, | ||||
int tagnum,int typenum,int reftype)) ) a45; | ||||
G__setint = (void (*) G__P((G__value *pbuf,long d,void* pd,int type,int t | ||||
agnum,int typenum,int reftype)) ) a46; | ||||
G__stubstoreenv = (void (*) G__P((struct G__StoreEnv *env,void* p,int tag | ||||
num)) ) a47; | ||||
G__stubrestoreenv = (void (*) G__P((struct G__StoreEnv *env)) ) a48; | ||||
G__getstream = (int (*) G__P((char *source,int *isrc,char *string,char *e | ||||
ndmark)) ) a49; | ||||
G__type2string = (char* (*) G__P((int type,int tagnum,int typenum,int ref | ||||
type,int isconst)) ) a50; | ||||
G__alloc_tempobject = (void (*) G__P((int tagnum,int typenum)) ) a51; | ||||
G__alloc_tempobject_val = (void (*) G__P((G__value* val)) ) a51; | ||||
G__set_p2fsetup = (void (*) G__P((void (*p2f)())) ) a52; | ||||
G__free_p2fsetup = (void (*) G__P((void)) ) a53; | ||||
G__genericerror = (int (*) G__P((G__CONST char *message)) ) a54; | ||||
G__tmpnam = (char* (*) G__P((char* name)) ) a55; | ||||
G__setTMPDIR = (int (*) G__P((char* badname)) ) a56; | ||||
G__setPrerun = (void (*) G__P((int prerun)) ) a57; | ||||
G__readline = (int (*) G__P((FILE *fp,char *line,char *argbuf,int *argn,c | ||||
har *arg[])) ) a58; | ||||
G__getFuncNow = (int (*) G__P((void)) ) a59; | ||||
G__getIfileFp = (FILE* (*) G__P((void)) ) a60; | ||||
G__incIfileLineNumber = (void (*) G__P((void)) ) a61; | ||||
G__setReturn = (void (*) G__P((int rtn)) ) a62; | ||||
G__getPrerun = (int (*) G__P((void)) ) a63; | ||||
G__getDispsource = (short (*) G__P((void)) ) a64; | ||||
G__getSerr = (FILE* (*) G__P((void)) ) a65; | ||||
G__getIsMain = (int (*) G__P((void)) ) a66; | ||||
G__setIsMain = (void (*) G__P((int ismain)) ) a67; | ||||
G__setStep = (void (*) G__P((int step)) ) a68; | ||||
G__getStepTrace = (int (*) G__P((void)) ) a69; | ||||
G__setDebug = (void (*) G__P((int dbg)) ) a70; | ||||
G__getDebugTrace = (int (*) G__P((void)) ) a71; | ||||
G__set_asm_noverflow = (void (*) G__P((int novfl)) ) a72; | ||||
G__get_no_exec = (int (*) G__P((void)) ) a73; | ||||
G__get_no_exec_compile = (int (*) G__P((void)) ) a74; | ||||
G__setdebugcond = (void (*) G__P((void)) ) a75; | ||||
G__init_process_cmd = (int (*) G__P((void)) ) a76; | ||||
G__process_cmd = (int (*) G__P((char *line,char *prompt,int *more,int *er | ||||
r,G__value *rslt)) ) a77; | ||||
G__pause = (int (*) G__P((void)) ) a78; | ||||
G__input = (char* (*) G__P((const char* prompt)) ) a79; | ||||
G__split = (int (*) G__P((char *line,char *string,int *argc,char **argv)) | ||||
) a80; | ||||
G__getIfileLineNumber = (int (*) G__P((void)) ) a81; | ||||
G__addpragma = (void (*) G__P((char* comname,void (*p2f) G__P((char*)) )) | ||||
) a82; | ||||
G__add_setup_func = (void (*) G__P((G__CONST char *libname,G__incsetup fu | ||||
nc)) ) a83; | ||||
G__remove_setup_func = (void (*) G__P((G__CONST char *libname)) ) a84; | ||||
G__setgvp = (void (*) G__P((long gvp)) ) a85; | ||||
G__set_stdio_handle = (void (*) G__P((FILE* sout,FILE* serr,FILE* sin)) ) | ||||
a86; | ||||
G__setautoconsole = (void (*) G__P((int autoconsole)) ) a87; | ||||
G__AllocConsole = (int (*) G__P((void)) ) a88; | ||||
G__FreeConsole = (int (*) G__P((void)) ) a89; | ||||
G__getcintready = (int (*) G__P((void)) ) a90; | ||||
G__security_recover = (int (*) G__P((FILE* fout)) ) a91; | ||||
G__breakkey = (void (*) G__P((int signame)) ) a92; | ||||
G__stepmode = (int (*) G__P((int stepmode)) ) a93; | ||||
G__tracemode = (int (*) G__P((int tracemode)) ) a94; | ||||
G__getstepmode = (int (*) G__P((void)) ) a95; | ||||
G__gettracemode = (int (*) G__P((void)) ) a96; | ||||
G__printlinenum = (int (*) G__P((void)) ) a97; | ||||
G__search_typename2 = (int (*) G__P((G__CONST char *typenamein,int typein | ||||
,int tagnum,int reftype,int parent_tagnum)) ) a100; | ||||
G__set_atpause = (void (*) G__P((void (*p2f)())) ) a101; | ||||
G__set_aterror = (void (*) G__P((void (*p2f)())) ) a102; | ||||
G__p2f_void_void = (void (*) G__P((void* p2f)) ) a103; | ||||
G__setglobalcomp = (void (*) G__P((int globalcomp)) ) a104; | ||||
G__getmakeinfo = (char* (*) G__P((char *item)) ) a105; | ||||
G__get_security_error = (int (*) G__P((void)) ) a106; | ||||
G__map_cpp_name = (char* (*) G__P((char *in)) ) a107; | ||||
G__Charref = (char* (*) G__P((G__value *buf)) ) a108; | ||||
G__Shortref = (short* (*) G__P((G__value *buf)) ) a109; | ||||
G__Intref = (int* (*) G__P((G__value *buf)) ) a110; | ||||
G__Longref = (long* (*) G__P((G__value *buf)) ) a111; | ||||
G__UCharref = (unsigned char* (*) G__P((G__value *buf)) ) a112; | ||||
G__UShortref = (unsigned short* (*) G__P((G__value *buf)) ) a113; | ||||
G__UIntref = (unsigned int* (*) G__P((G__value *buf)) ) a114; | ||||
G__ULongref = (unsigned long* (*) G__P((G__value *buf)) ) a115; | ||||
G__Floatref = (float* (*) G__P((G__value *buf)) ) a116; | ||||
G__Doubleref = (double* (*) G__P((G__value *buf)) ) a117; | ||||
G__loadsystemfile = (int (*) G__P((G__CONST char* filename)) ) a118; | ||||
G__set_ignoreinclude = (void (*) G__P((G__IgnoreInclude ignoreinclude)) ) | ||||
a119; | ||||
G__exec_tempfile = (G__value (*) G__P((G__CONST char *file)) ) a120; | ||||
G__exec_text = (G__value (*) G__P((G__CONST char *unnamedmacro)) ) a121; | ||||
G__lasterror_filename = (char* (*) G__P((void)) ) a122; | ||||
G__lasterror_linenum = (int (*) G__P((void)) ) a123; | ||||
G__va_arg_put = (void (*) G__P((G__va_arg_buf* pbuf,struct G__param* libp | ||||
,int n)) ) a124; | ||||
#ifndef G__OLDIMPLEMENTATION1546 | ||||
G__load_text = (char* (*) G__P((G__CONST char *namedmacro)) ) a125; | ||||
G__set_emergencycallback= (void (*) G__P((void (*p2f)())) ) a126; | ||||
#endif | ||||
#ifndef G__OLDIMPLEMENTATION1485 | ||||
G__set_errmsgcallback= (void (*) G__P((void *p)) ) a127; | ||||
#endif | ||||
G__letLonglong=(void (*) G__P((G__value* buf,int type,G__int64 value)))a1 | ||||
28; | ||||
G__letULonglong=(void (*) G__P((G__value* buf,int type,G__uint64 value))) | ||||
a129; | ||||
G__letLongdouble=(void (*) G__P((G__value* buf,int type,long double value | ||||
)))a130; | ||||
G__Longlong=(void (*) G__P((G__value buf)))a131; | ||||
G__ULonglong=(void (*) G__P((G__value buf)))a132; | ||||
G__Longdouble=(void (*) G__P((G__value buf)))a133; | ||||
G__Longlongref=(void (*) G__P((G__value *buf)))a134; | ||||
G__ULonglongref=(void (*) G__P((G__value *buf)))a135; | ||||
G__Longdoubleref=(void (*) G__P((G__value *buf)))a136; | ||||
G__get_ifile = (struct G__intput_ifile* (*) G__P((void)) ) a137; | ||||
G__set_alloclockfunc = (void (*) G__P((void* foo)) ) a138; | ||||
G__set_allocunlockfunc = (void (*) G__P((void* foo)) ) a139; | ||||
#ifdef G__TRUEP2F | ||||
G__memfunc_setup2 = (int (*) G__P((G__CONST char *funcname,int hash,G__In | ||||
terfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment,void* tp2f,int isvirtual)) | ||||
) a140; | ||||
#else /* G__TRUEP2F */ | ||||
G__memfunc_setup2 = (int (*) G__P((G__CONST char *funcname,int hash,G__In | ||||
terfaceMethod funcp,int type | ||||
,int tagnum,int typenum,int reftype,int para_nu,int ansi,int access,int isc | ||||
onst,G__CONST char *paras,G__CONST char *comment)) ) a140; | ||||
#endif /* G__TRUEP2F */ | ||||
# undef G__DUMMYTOCHECKFORDUPLICATES | ||||
# define G__DUMMYTOCHECKFORDUPLICATES(IDX) | ||||
# ifdef G__MULTITHREADLIBCINTC | ||||
# define G__SET_CINT_API_POINTERS_FUNCNAME G__SetCCintApiPointers | ||||
# else | ||||
# define G__SET_CINT_API_POINTERS_FUNCNAME G__SetCppCintApiPointers | ||||
# endif | ||||
# undef G__DECL_API | ||||
# define G__DECL_API(IDX, RET, NAME, ARGS) \ | ||||
NAME = (RET (*) ARGS) a[IDX]; | ||||
G__EXPORT void G__SET_CINT_API_POINTERS_FUNCNAME (void *a[G__NUMBER_OF_API_ | ||||
FUNCTIONS]) { | ||||
#include "G__ci_fproto.h" | ||||
} | } | |||
#endif /* G__MULTITHREADLIBCINT */ | #endif /* G__MULTITHREADLIBCINT */ | |||
/************************************************************************** | /************************************************************************** | |||
* end of Exported Cint API functions | * end of Exported Cint API functions | |||
************************************************************************** / | ************************************************************************** / | |||
#endif /* __CINT__ */ | #endif /* __CINT__ */ | |||
#if defined(G__WIN32) && (!defined(G__SYMANTEC)) && defined(G__CINTBODY) | #if defined(G__WIN32) && (!defined(G__SYMANTEC)) && defined(G__CINTBODY) | |||
skipping to change at line 2434 | skipping to change at line 1626 | |||
#define fputc G__fputc | #define fputc G__fputc | |||
#define putc G__fputc | #define putc G__fputc | |||
#define putchar G__putchar | #define putchar G__putchar | |||
#define fputs G__fputs | #define fputs G__fputs | |||
#define puts G__puts | #define puts G__puts | |||
#define fgets G__fgets | #define fgets G__fgets | |||
#define gets G__gets | #define gets G__gets | |||
#define system G__system | #define system G__system | |||
#define tmpfile G__tmpfile | #define tmpfile G__tmpfile | |||
#ifdef G__FIX1 | ||||
int G__printf (const char* fmt,...); | ||||
#else | ||||
int G__printf G__P((const char* fmt,...)); | ||||
#endif | ||||
int G__fputc G__P((int character,FILE *fp)); | int G__fputc G__P((int character,FILE *fp)); | |||
int G__putchar G__P((int character)); | int G__putchar G__P((int character)); | |||
int G__fputs G__P((char *string,FILE *fp)); | int G__fputs G__P((char *string,FILE *fp)); | |||
int G__puts G__P((char *string)); | int G__puts G__P((char *string)); | |||
char *G__fgets G__P((char *string,int n,FILE *fp)); | char *G__fgets G__P((char *string,int n,FILE *fp)); | |||
char *G__gets G__P((char *buffer)); | char *G__gets G__P((char *buffer)); | |||
int G__system G__P((char *com)); | int G__system G__P((char *com)); | |||
FILE *G__tmpfile(void); | FILE *G__tmpfile(void); | |||
#ifdef G__SPECIALSTDIO | #ifdef G__SPECIALSTDIO | |||
skipping to change at line 2472 | skipping to change at line 1659 | |||
typedef void (*G__signaltype)(int,void (*)(int)); | typedef void (*G__signaltype)(int,void (*)(int)); | |||
G__signaltype G__signal G__P((int sgnl,void (*f)(int))); | G__signaltype G__signal G__P((int sgnl,void (*f)(int))); | |||
#endif /* G__SPECIALSTDIO */ | #endif /* G__SPECIALSTDIO */ | |||
#endif /* WIN32 !SYMANTEC CINTBODY*/ | #endif /* WIN32 !SYMANTEC CINTBODY*/ | |||
/************************************************************************** | /************************************************************************** | |||
* end of specialstdio or win32 | * end of specialstdio or win32 | |||
**************************************************************************/ | **************************************************************************/ | |||
/*********************************************************************** | ||||
* Native long long support | ||||
***********************************************************************/ | ||||
#ifndef __CINT__ | ||||
extern G__EXPORT G__int64 G__expr_strtoll G__P((const char *nptr,char **end | ||||
ptr, register int base)); | ||||
extern G__EXPORT G__uint64 G__expr_strtoull G__P((const char *nptr, char ** | ||||
endptr, register int base)); | ||||
#endif | ||||
/***********************************************************************/ | /***********************************************************************/ | |||
#if defined(__cplusplus) && !defined(__CINT__) | #if defined(__cplusplus) && !defined(__CINT__) | |||
} /* extern C 3 */ | } /* extern C 3 */ | |||
#endif | #endif | |||
/***********************************************************************/ | /***********************************************************************/ | |||
#if defined(__cplusplus) && !defined(__CINT__) | #if defined(__cplusplus) && !defined(__CINT__) | |||
// Helper class to avoid compiler warning about casting function pointer | // Helper class to avoid compiler warning about casting function pointer | |||
// to void pointer. | // to void pointer. | |||
class G__func2void { | class G__func2void { | |||
skipping to change at line 2512 | skipping to change at line 1691 | |||
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; | |||
} | } | |||
}; | }; | |||
#endif | #endif /* __cplusplus && ! __CINT__*/ | |||
#endif /* __MAKECINT__ */ | #endif /* __MAKECINT__ */ | |||
/************************************************************************** | /************************************************************************** | |||
* endif #ifndef G__MAKECINT | * endif #ifndef G__MAKECINT | |||
**************************************************************************/ | **************************************************************************/ | |||
#endif /* G__CI_H */ | #endif /* G__CI_H */ | |||
End of changes. 13 change blocks. | ||||
1013 lines changed or deleted | 50 lines changed or added | |||
GaussIntegrator.h | GaussIntegrator.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: GaussIntegrator.h 22728 2008-03-19 10:05:41Z mone ta $ | // @(#)root/mathcore:$Id: GaussIntegrator.h 33180 2010-04-25 10:14:07Z mone ta $ | |||
// Authors: David Gonzalez Maline 01/2008 | // Authors: David Gonzalez Maline 01/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 , LCG ROOT MathLib Team * | * Copyright (c) 2006 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for GaussIntegrator | // Header file for GaussIntegrator | |||
skipping to change at line 38 | skipping to change at line 38 | |||
It will use the Gauss Method for function integration in a given interva l. | It will use the Gauss Method for function integration in a given interva l. | |||
This class is implemented from TF1::Integral(). | This class is implemented from TF1::Integral(). | |||
@ingroup Integration | @ingroup Integration | |||
*/ | */ | |||
class GaussIntegrator: public VirtualIntegratorOneDim { | class GaussIntegrator: public VirtualIntegratorOneDim { | |||
public: | public: | |||
/** Destructor. Deletes the function if it was previously copied. */ | /** Destructor */ | |||
~GaussIntegrator(); | ~GaussIntegrator(); | |||
/** Default Constructor. */ | /** Default Constructor. */ | |||
GaussIntegrator(); | GaussIntegrator(); | |||
/** Static function: set the fgAbsValue flag. | /** Static function: set the fgAbsValue flag. | |||
By default TF1::Integral uses the original function value to compute the integral | By default TF1::Integral uses the original function value to compute the integral | |||
However, TF1::Moment, CentralMoment require to compute the integral | However, TF1::Moment, CentralMoment require to compute the integral | |||
using the absolute value of the function. | using the absolute value of the function. | |||
*/ | */ | |||
skipping to change at line 65 | skipping to change at line 65 | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
void SetAbsTolerance (double); | void SetAbsTolerance (double); | |||
/** Returns the result of the last Integral calculation. */ | /** Returns the result of the last Integral calculation. */ | |||
double Result () const; | double Result () const; | |||
/** Return the estimate of the absolute Error of the last Integral calcu lation. */ | /** Return the estimate of the absolute Error of the last Integral calcu lation. */ | |||
double Error () const; | double Error () const; | |||
/** This method is not implemented. */ | /** return the status of the last integration - 0 in case of success */ | |||
int Status () const; | int Status () const; | |||
// Implementing VirtualIntegratorOneDim Interface | // Implementing VirtualIntegratorOneDim Interface | |||
/** Return Integral of function between a and b. | /** Return Integral of function between a and b. | |||
Based on original CERNLIB routine DGAUSS by Sigfried Kolbig | Based on original CERNLIB routine DGAUSS by Sigfried Kolbig | |||
converted to C++ by Rene Brun | converted to C++ by Rene Brun | |||
This function computes, to an attempted specified accuracy, the value | This function computes, to an attempted specified accuracy, the value | |||
skipping to change at line 149 | skipping to change at line 149 | |||
Note 1: | Note 1: | |||
Values of the function f(x) at the interval end-points A and B are not | Values of the function f(x) at the interval end-points A and B are not | |||
required. The subprogram may therefore be used when these values ar e | required. The subprogram may therefore be used when these values ar e | |||
undefined. | undefined. | |||
*/ | */ | |||
double Integral (double a, double b); | double Integral (double a, double b); | |||
/** Set integration function (flag control if function must be copied in side). | /** Set integration function (flag control if function must be copied in side). | |||
\@param f Function to be used in the calculations. | \@param f Function to be used in the calculations. | |||
\@param copy Indicates whether the function has to be copied. | ||||
*/ | */ | |||
void SetFunction (const IGenFunction &, bool copy=false); | void SetFunction (const IGenFunction &); | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
double Integral (); | double Integral (); | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
double IntegralUp (double a); | double IntegralUp (double a); | |||
/**This method is not implemented. */ | /**This method is not implemented. */ | |||
double IntegralLow (double b); | double IntegralLow (double b); | |||
skipping to change at line 175 | skipping to change at line 174 | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
double IntegralCauchy (double a, double b, double c); | double IntegralCauchy (double a, double b, double c); | |||
protected: | protected: | |||
static bool fgAbsValue; // AbsValue used for the calculation of the integral | static bool fgAbsValue; // AbsValue used for the calculation of the integral | |||
double fEpsilon; // Relative error. | double fEpsilon; // Relative error. | |||
bool fUsedOnce; // Bool value to check if the function was at least called once. | bool fUsedOnce; // Bool value to check if the function was at least called once. | |||
double fLastResult; // Result from the last stimation. | double fLastResult; // Result from the last stimation. | |||
double fLastError; // Error from the last stimation. | double fLastError; // Error from the last stimation. | |||
const IGenFunction* fFunction; // Pointer to function used. | const IGenFunction* fFunction; // Pointer to function used. | |||
bool fFunctionCopied; // Bool value to check if the function was copied when set. | ||||
}; | }; | |||
} // end namespace Math | } // end namespace Math | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Math_GaussIntegrator */ | #endif /* ROOT_Math_GaussIntegrator */ | |||
End of changes. 6 change blocks. | ||||
6 lines changed or deleted | 4 lines changed or added | |||
GaussLegendreIntegrator.h | GaussLegendreIntegrator.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: GaussLegendreIntegrator.h 22728 2008-03-19 10:05: 41Z moneta $ | // @(#)root/mathcore:$Id: GaussLegendreIntegrator.h 33180 2010-04-25 10:14: 07Z moneta $ | |||
// Authors: David Gonzalez Maline 01/2008 | // Authors: David Gonzalez Maline 01/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 , LCG ROOT MathLib Team * | * Copyright (c) 2006 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for GaussIntegrator | // Header file for GaussIntegrator | |||
skipping to change at line 86 | skipping to change at line 86 | |||
// Implementing VirtualIntegratorOneDim Interface | // Implementing VirtualIntegratorOneDim Interface | |||
/** Gauss-Legendre integral, see CalcGaussLegendreSamplingPoints. */ | /** Gauss-Legendre integral, see CalcGaussLegendreSamplingPoints. */ | |||
double Integral (double a, double b); | double Integral (double a, double b); | |||
/** Set integration function (flag control if function must be copied in side). | /** Set integration function (flag control if function must be copied in side). | |||
\@param f Function to be used in the calculations. | \@param f Function to be used in the calculations. | |||
\@param copy Indicates whether the function has to be copied. | \@param copy Indicates whether the function has to be copied. | |||
*/ | */ | |||
void SetFunction (const IGenFunction &, bool copy=false); | void SetFunction (const IGenFunction &); | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
double Integral (); | double Integral (); | |||
/** This method is not implemented. */ | /** This method is not implemented. */ | |||
double IntegralUp (double a); | double IntegralUp (double a); | |||
/**This method is not implemented. */ | /**This method is not implemented. */ | |||
double IntegralLow (double b); | double IntegralLow (double b); | |||
skipping to change at line 135 | skipping to change at line 135 | |||
protected: | protected: | |||
int fNum; // Number of points used in the stimat ion of the integral. | int fNum; // Number of points used in the stimat ion of the integral. | |||
double* fX; // Abscisa of the points used. | double* fX; // Abscisa of the points used. | |||
double* fW; // Weights of the points used. | double* fW; // Weights of the points used. | |||
double fEpsilon; // Desired relative error. | double fEpsilon; // Desired relative error. | |||
bool fUsedOnce; // Bool value to check if the function was at least called once. | bool fUsedOnce; // Bool value to check if the function was at least called once. | |||
double fLastResult; // Result from the last stimation. | double fLastResult; // Result from the last stimation. | |||
double fLastError; // Error from the last stimation. | double fLastError; // Error from the last stimation. | |||
const IGenFunction* fFunction; // Pointer to function used. | const IGenFunction* fFunction; // Pointer to function used. | |||
bool fFunctionCopied; // Bool value to check if the function was copied when set. | ||||
}; | }; | |||
} // end namespace Math | } // end namespace Math | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Math_GaussLegendreIntegrator */ | #endif /* ROOT_Math_GaussLegendreIntegrator */ | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 2 lines changed or added | |||
IMinimizer1D.h | IMinimizer1D.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: IMinimizer1D.h 24477 2008-06-23 12:58:47Z moneta $ | // @(#)root/mathcore:$Id: IMinimizer1D.h 32583 2010-03-12 09:57:42Z moneta $ | |||
// Author: David Gonzalez Maline 2/2008 | // Author: David Gonzalez Maline 2/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2004 Maline, CERN/PH-SFT * | * Copyright (c) 2004 Maline, 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 45 | skipping to change at line 45 | |||
@ingroup NumAlgo | @ingroup NumAlgo | |||
*/ | */ | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ __________________ | //_________________________________________________________________________ __________________ | |||
/** | /** | |||
Interface class for numerical methods for one-dimensional minimization | Interface class for numerical methods for one-dimensional minimization | |||
@ingroup Minimization | @ingroup Min1D | |||
*/ | */ | |||
class IMinimizer1D { | class IMinimizer1D { | |||
public: | public: | |||
IMinimizer1D() {} | IMinimizer1D() {} | |||
virtual ~IMinimizer1D() {} | virtual ~IMinimizer1D() {} | |||
skipping to change at line 91 | skipping to change at line 91 | |||
virtual double FValLower() const = 0; | virtual double FValLower() const = 0; | |||
/** | /** | |||
* Return function value at current upper bound of the minimization i nterval | * Return function value at current upper bound of the minimization i nterval | |||
*/ | */ | |||
virtual double FValUpper() const = 0; | virtual double FValUpper() const = 0; | |||
/** | /** | |||
* Find minimum position iterating until convergence specified by the absolute and relative tolerance or | * Find minimum position iterating until convergence specified by the absolute and relative tolerance or | |||
* the maximum number of iteration is reached | * the maximum number of iteration is reached | |||
* Return true if iterations converged successfully | ||||
* \@param maxIter maximum number of iteration | * \@param maxIter maximum number of iteration | |||
* \@param absTol desired absolute error in the minimum position | * \@param absTol desired absolute error in the minimum position | |||
* \@param absTol desired relative error in the minimum position | * \@param absTol desired relative error in the minimum position | |||
*/ | */ | |||
virtual int Minimize( int maxIter, double absTol, double relTol) = 0; | virtual bool Minimize( int maxIter, double absTol, double relTol) = 0 ; | |||
/** | /** | |||
* Return number of iteration used to find minimum | * Return number of iteration used to find minimum | |||
*/ | */ | |||
virtual int Iterations() const = 0; | virtual int Iterations() const = 0; | |||
/** | /** | |||
* Return name of minimization algorithm | * Return name of minimization algorithm | |||
*/ | */ | |||
virtual const char * Name() const = 0; | virtual const char * Name() const = 0; | |||
/** Returns the status of the previous estimate */ | ||||
virtual int Status() const = 0; | ||||
}; // end class IMinimizer1D | }; // end class IMinimizer1D | |||
} // end namespace Math | } // end namespace Math | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Math_IMinimizer1D */ | #endif /* ROOT_Math_IMinimizer1D */ | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 7 lines changed or added | |||
IParamFunction.h | IParamFunction.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: IParamFunction.h 27272 2009-01-28 09:03:03Z monet a $ | // @(#)root/mathcore:$Id: IParamFunction.h 32583 2010-03-12 09:57:42Z monet a $ | |||
// Author: L. Moneta Tue Nov 14 14:20:07 2006 | // Author: L. Moneta Tue Nov 14 14:20:07 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 IParamFunction | // Header file for class IParamFunction | |||
skipping to change at line 171 | skipping to change at line 171 | |||
called. | called. | |||
Use the pure virtual function DoEvalPar to implement it | Use the pure virtual function DoEvalPar to implement it | |||
*/ | */ | |||
double operator() ( double x, const double * p ) const { | double operator() ( double x, const double * p ) const { | |||
return DoEvalPar(x, p); | return DoEvalPar(x, p); | |||
} | } | |||
/** | /** | |||
multidim-like interface | multidim-like interface | |||
*/ | */ | |||
double operator() (const double * x, const double * p ) | double operator() (const double * x, const double * p ) const | |||
{ | { | |||
return DoEvalPar(*x, p); | return DoEvalPar(*x, p); | |||
} | } | |||
private: | private: | |||
/** | /** | |||
Implementation of the evaluation function using the x value and the p arameters. | Implementation of the evaluation function using the x value and the p arameters. | |||
Must be implemented by derived classes | Must be implemented by derived classes | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
IRootFinderMethod.h | IRootFinderMethod.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: IRootFinderMethod.h 24477 2008-06-23 12:58:47Z mo neta $ | // @(#)root/mathcore:$Id: IRootFinderMethod.h 32583 2010-03-12 09:57:42Z mo neta $ | |||
// Authors: David Gonzalez Maline 01/2008 | // Authors: David Gonzalez Maline 01/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 , LCG ROOT MathLib Team * | * Copyright (c) 2006 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header for the IRootFinderMethod interface | // Header for the IRootFinderMethod interface | |||
skipping to change at line 23 | skipping to change at line 23 | |||
// Created by: David Gonzalez Maline : Fri Jan 25 2008 | // Created by: David Gonzalez Maline : Fri Jan 25 2008 | |||
// | // | |||
#ifndef ROOT_Math_IRootFinderMethod | #ifndef ROOT_Math_IRootFinderMethod | |||
#define ROOT_Math_IRootFinderMethod | #define ROOT_Math_IRootFinderMethod | |||
#ifndef ROOT_Math_Error | #ifndef ROOT_Math_Error | |||
#include "Math/Error.h" | #include "Math/Error.h" | |||
#endif | #endif | |||
#include <Math/IFunction.h> | #ifndef ROOT_Math_IFunctionfwd | |||
#include "Math/IFunctionfwd.h" | ||||
#endif | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ __________________ | //_________________________________________________________________________ __________________ | |||
/** | /** | |||
Interface for finding function roots of one-dimensional functions | Interface for finding function roots of one-dimensional functions | |||
@ingroup RootFinders | @ingroup RootFinders | |||
skipping to change at line 47 | skipping to change at line 49 | |||
public: | public: | |||
/** Default Destructor. */ | /** Default Destructor. */ | |||
virtual ~IRootFinderMethod() {} | virtual ~IRootFinderMethod() {} | |||
/** Default Constructor. */ | /** Default Constructor. */ | |||
IRootFinderMethod() {} | IRootFinderMethod() {} | |||
// Common functionality | // Common functionality | |||
/** Sets the function for algorithms using derivatives. */ | /** Sets the function for algorithms using derivatives. */ | |||
virtual int SetFunction(const ROOT::Math::IGradFunction&, double) | virtual bool SetFunction(const ROOT::Math::IGradFunction&, double) | |||
{ | { | |||
MATH_ERROR_MSG("SetFunction", "This method must be used with a Root F inder algorithm using derivatives"); | MATH_ERROR_MSG("SetFunction", "This method must be used with a Root F inder algorithm using derivatives"); | |||
return -1; | return false; | |||
} | } | |||
/** Sets the function for the rest of the algorithms. | /** Sets the function for the rest of the algorithms. | |||
The parameters set the interval where the root has to be calculated. */ | The parameters set the interval where the root has to be calculated. */ | |||
virtual int SetFunction(const ROOT::Math::IGenFunction& , double , doubl e ) | virtual bool SetFunction(const ROOT::Math::IGenFunction& , double , doub le ) | |||
{ | { | |||
MATH_ERROR_MSG("SetFunction", "Algorithm requires derivatives"); | MATH_ERROR_MSG("SetFunction", "Algorithm requires derivatives"); | |||
return -1; | return false; | |||
} | } | |||
/** Returns the previously calculated root. */ | /** Returns the previously calculated root. */ | |||
virtual double Root() const = 0; | virtual double Root() const = 0; | |||
/** Returns the status of the previous estimate */ | ||||
virtual int Status() const = 0; | ||||
// Methods to be Implemented in the derived classes | // Methods to be Implemented in the derived classes | |||
/** Stimates the root for the function. | /** Stimates the root for the function. | |||
\@param maxIter maximum number of iterations. | \@param maxIter maximum number of iterations. | |||
\@param absTol desired absolute error in the minimum position. | \@param absTol desired absolute error in the minimum position. | |||
\@param absTol desired relative error in the minimum position. | \@param absTol desired relative error in the minimum position. | |||
*/ | */ | |||
virtual int Solve(int maxIter = 100, double absTol = 1E-3, double relTol = 1E-6) = 0; | virtual bool Solve(int maxIter = 100, double absTol = 1E-8, double relTo l = 1E-10) = 0; | |||
/** Return name of root finder algorithm */ | /** Return name of root finder algorithm */ | |||
virtual const char* Name() const = 0; | virtual const char* Name() const = 0; | |||
/** This method is not implemented. They are here to accomplish with the GSLRootFinder | /** This method is implemented only by the GSLRootFinder | |||
and GSLRootFinderDeriv classes and will return an error if it's not one of them. */ | and GSLRootFinderDeriv classes and will return an error if it's not one of them. */ | |||
virtual int Iterate() { | virtual int Iterate() { | |||
MATH_ERROR_MSG("Iterate", "This method must be used with a Root Finde r algorithm wrapping the GSL Library"); | MATH_ERROR_MSG("Iterate", "This method must be used with a Root Finde r algorithm wrapping the GSL Library"); | |||
return -1; | return -1; | |||
} | } | |||
/** This method is not implemented. They are here to accomplish with the | /** Return number of iterations used to find the root | |||
GSLRootFinder | Must be implemented by derived classes | |||
and GSLRootFinderDeriv classes and will return an error if it's not | */ | |||
one of them. */ | virtual int Iterations() const { return -1; } | |||
virtual int Iterations() const { | ||||
MATH_ERROR_MSG("Iterations", "This method must be used with a Root Fi | ||||
nder algorithm wrapping the GSL Library"); | ||||
return -1; | ||||
} | ||||
}; | }; | |||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#endif /* ROOT_Math_IRootFinderMethod */ | #endif /* ROOT_Math_IRootFinderMethod */ | |||
End of changes. 10 change blocks. | ||||
17 lines changed or deleted | 17 lines changed or added | |||
Integrator.h | Integrator.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: Integrator.h 28946 2009-06-11 15:39:14Z moneta $ | // @(#)root/mathmore:$Id: Integrator.h 33185 2010-04-25 10:34:11Z moneta $ | |||
// Authors: L. Moneta, M. Slawinska 10/2007 | // Authors: L. Moneta, M. Slawinska 10/2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2007 ROOT Foundation, CERN/PH-SFT * | * Copyright (c) 2007 ROOT Foundation, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class Integrator | // Header file for class Integrator | |||
// | // | |||
// | // | |||
#ifndef ROOT_Math_Integrator | #ifndef ROOT_Math_Integrator | |||
#define ROOT_Math_Integrator | #define ROOT_Math_Integrator | |||
#ifndef ROOT_Math_AllIntegrationTypes | #ifndef ROOT_Math_AllIntegrationTypes | |||
#include "Math/AllIntegrationTypes.h" | #include "Math/AllIntegrationTypes.h" | |||
#endif | #endif | |||
#ifndef ROOT_Math_IFunctionfwd | #ifndef ROOT_Math_IFunction | |||
#include "Math/IFunctionfwd.h" | #include "Math/IFunction.h" | |||
#endif | #endif | |||
#ifndef ROOT_Math_VirtualIntegrator | #ifndef ROOT_Math_VirtualIntegrator | |||
#include "Math/VirtualIntegrator.h" | #include "Math/VirtualIntegrator.h" | |||
#endif | #endif | |||
#include <memory> | ||||
/** | /** | |||
@defgroup Integration Numerical Integration | @defgroup Integration Numerical Integration | |||
*/ | */ | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ ___________________ | //_________________________________________________________________________ ___________________ | |||
skipping to change at line 89 | skipping to change at line 91 | |||
@param absTol desired absolute Error | @param absTol desired absolute Error | |||
@param relTol desired relative Error | @param relTol desired relative Error | |||
@param size maximum number of sub-intervals | @param size maximum number of sub-intervals | |||
@param rule Gauss-Kronrod integration rule (only for GSL kADAPTIVE type) | @param rule Gauss-Kronrod integration rule (only for GSL kADAPTIVE type) | |||
Possible type values are : kGAUSS (simple Gauss method), kADAPTIVE ( from GSL), kADAPTIVESINGULAR (from GSL), kNONADAPTIVE (from GSL) | Possible type values are : kGAUSS (simple Gauss method), kADAPTIVE ( from GSL), kADAPTIVESINGULAR (from GSL), kNONADAPTIVE (from GSL) | |||
Possible rule values are kGAUS15 (rule = 1), kGAUS21( rule = 2), kGA US31(rule =3), kGAUS41 (rule=4), kGAUS51 (rule =5), kGAUS61(rule =6) | Possible rule values are kGAUS15 (rule = 1), kGAUS21( rule = 2), kGA US31(rule =3), kGAUS41 (rule=4), kGAUS51 (rule =5), kGAUS61(rule =6) | |||
lower rules are indicated for singular functions while higher for sm ooth functions to get better accuracies | lower rules are indicated for singular functions while higher for sm ooth functions to get better accuracies | |||
*/ | */ | |||
explicit | explicit | |||
IntegratorOneDim(IntegrationOneDim::Type type = IntegrationOneDim::kADA PTIVE, double absTol = 1.E-9, double relTol = 1E-6, unsigned int size = 100 0, unsigned int rule = 3) { | IntegratorOneDim(IntegrationOneDim::Type type = IntegrationOneDim::kADA PTIVESINGULAR, double absTol = 1.E-9, double relTol = 1E-6, unsigned int si ze = 1000, unsigned int rule = 3) { | |||
fIntegrator = CreateIntegrator(type, absTol, relTol, size, rule); | fIntegrator = CreateIntegrator(type, absTol, relTol, size, rule); | |||
} | } | |||
/** | /** | |||
Constructor of one dimensional Integrator passing a function interfa ce | Constructor of one dimensional Integrator passing a function interfa ce | |||
@param f integration function (1D interface). It is copied insi de | @param f integration function (1D interface). It is copied insi de | |||
@param type integration type (adaptive, non-adaptive, etc..) | @param type integration type (adaptive, non-adaptive, etc..) | |||
@param absTol desired absolute Error | @param absTol desired absolute Error | |||
@param relTol desired relative Error | @param relTol desired relative Error | |||
skipping to change at line 119 | skipping to change at line 121 | |||
/** | /** | |||
Template Constructor of one dimensional Integrator passing a generi c function object | Template Constructor of one dimensional Integrator passing a generi c function object | |||
@param f integration function (any C++ callable object implemen ting operator()(double x) | @param f integration function (any C++ callable object implemen ting operator()(double x) | |||
@param type integration type (adaptive, non-adaptive, etc..) | @param type integration type (adaptive, non-adaptive, etc..) | |||
@param absTol desired absolute Error | @param absTol desired absolute Error | |||
@param relTol desired relative Error | @param relTol desired relative Error | |||
@param size maximum number of sub-intervals | @param size maximum number of sub-intervals | |||
@param rule Gauss-Kronrod integration rule (only for GSL ADAPTIVE ty pe) | @param rule Gauss-Kronrod integration rule (only for GSL ADAPTIVE ty pe) | |||
*/ | */ | |||
#ifdef LATER | ||||
template<class Function> | template<class Function> | |||
explicit | explicit | |||
IntegratorOneDim(Function f, IntegrationOneDim::Type type = IntegrationO neDim::kADAPTIVE, double absTol = 1.E-9, double relTol = 1E-6, unsigned int size = 1000, int rule = 3) { | IntegratorOneDim(Function & f, IntegrationOneDim::Type type = Integratio nOneDim::kADAPTIVE, double absTol = 1.E-9, double relTol = 1E-6, unsigned i nt size = 1000, int rule = 3) { | |||
fIntegrator = CreateIntegrator(type, absTol, relTol, size, rule); | fIntegrator = CreateIntegrator(type, absTol, relTol, size, rule); | |||
SetFunction(f); | SetFunction(f); | |||
} | } | |||
#endif | ||||
/// destructor (will delete contained pointer) | /// destructor (will delete contained pointer) | |||
virtual ~IntegratorOneDim() { | virtual ~IntegratorOneDim() { | |||
if (fIntegrator) delete fIntegrator; | if (fIntegrator) delete fIntegrator; | |||
} | } | |||
// disable copy constructur and assignment operator | // disable copy constructur and assignment operator | |||
private: | private: | |||
IntegratorOneDim(const IntegratorOneDim &) {} | IntegratorOneDim(const IntegratorOneDim &) {} | |||
skipping to change at line 150 | skipping to change at line 151 | |||
// template methods for generic functors | // template methods for generic functors | |||
/** | /** | |||
method to set the a generic integration function | method to set the a generic integration function | |||
@param f integration function. The function type must implement the a ssigment operator, <em> double operator() ( double x ) </em> | @param f integration function. The function type must implement the a ssigment operator, <em> double operator() ( double x ) </em> | |||
*/ | */ | |||
template<class Function> | template<class Function> | |||
inline void SetFunction(const Function & f); | inline void SetFunction(Function & f); | |||
/** | /** | |||
set one dimensional function for 1D integration | set one dimensional function for 1D integration | |||
*/ | */ | |||
void SetFunction (const IGenFunction &f, bool copy = false) { | void SetFunction (const IGenFunction &f, bool copy = false) { | |||
if (fIntegrator) fIntegrator->SetFunction(f,copy); | if (!fIntegrator) return; | |||
if (copy) { | ||||
fFunc = std::auto_ptr<IGenFunction>(f.Clone() ); | ||||
fIntegrator->SetFunction(*fFunc); | ||||
return; | ||||
} | ||||
fIntegrator->SetFunction(f); | ||||
} | } | |||
/** | /** | |||
Set integration function from a multi-dim function type. | Set integration function from a multi-dim function type. | |||
Can be used in case of having 1D function implementing the generic in terface | Can be used in case of having 1D function implementing the generic in terface | |||
@param f integration function | @param f integration function | |||
@param icoord index of coordinate on which the intergation is perfor | @param icoord index of coordinate on which the integration is perfor | |||
med | med | |||
@param x array of the passed variables values. In case of dim=1 is | @param x array of the passed variables values. In case of dim=1 a 0 | |||
not required | can be passed | |||
*/ | */ | |||
void SetFunction(const IMultiGenFunction &f, unsigned int icoord = 0, co nst double * x = 0); | void SetFunction(const IMultiGenFunction &f, unsigned int icoord , const double * x ); | |||
// integration methods using a function | // integration methods using a function | |||
/** | /** | |||
evaluate the Integral of a function f over the defined interval (a,b ) | evaluate the Integral of a function f over the defined interval (a,b ) | |||
@param f integration function. The function type must be a C++ calla ble object implementing operator()(double x) | @param f integration function. The function type must be a C++ calla ble object implementing operator()(double x) | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
*/ | */ | |||
template<class Function> | template<class Function> | |||
double Integral(const Function & f, double a, double b); | double Integral(Function & f, double a, double b); | |||
/** | /** | |||
evaluate the Integral of a function f over the defined interval (a,b ) | evaluate the Integral of a function f over the defined interval (a,b ) | |||
@param f integration function. The function type must implement the mathlib::IGenFunction interface | @param f integration function. The function type must implement the mathlib::IGenFunction interface | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
*/ | */ | |||
double Integral(const IGenFunction & f, double a, double b) { | double Integral(const IGenFunction & f, double a, double b) { | |||
SetFunction(f,false); | SetFunction(f,false); | |||
return Integral(a,b); | return Integral(a,b); | |||
} | } | |||
/** | /** | |||
evaluate the Integral of a function f over the infinite interval (-in f,+inf) | evaluate the Integral of a function f over the infinite interval (-in f,+inf) | |||
@param f integration function. The function type must be a C++ calla ble object implementing operator()(double x) | @param f integration function. The function type must be a C++ calla ble object implementing operator()(double x) | |||
*/ | */ | |||
template<class Function> | // template<class Function> | |||
double Integral(const Function & f); | // double Integral(const Function & f); | |||
/** | /** | |||
evaluate the Integral of a function f over the infinite interval (-in f,+inf) | evaluate the Integral of a function f over the infinite interval (-in f,+inf) | |||
@param f integration function. The function type must implement the m athlib::IGenFunction interface | @param f integration function. The function type must implement the m athlib::IGenFunction interface | |||
*/ | */ | |||
double Integral(const IGenFunction & f) { | double Integral(const IGenFunction & f) { | |||
SetFunction(f,false); | SetFunction(f,false); | |||
return Integral(); | return Integral(); | |||
} | } | |||
/** | /** | |||
evaluate the Integral of a function f over the semi-infinite interval (a,+inf) | evaluate the Integral of a function f over the semi-infinite interval (a,+inf) | |||
@param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | @param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
*/ | */ | |||
template<class Function> | // template<class Function> | |||
double IntegralUp(const Function & f, double a); | // double IntegralUp(Function & f, double a); | |||
/** | /** | |||
evaluate the Integral of a function f over the semi-infinite interval (a,+inf) | evaluate the Integral of a function f over the semi-infinite interval (a,+inf) | |||
@param f integration function. The function type must implement the m athlib::IGenFunction interface | @param f integration function. The function type must implement the m athlib::IGenFunction interface | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
*/ | */ | |||
double IntegralUp(const IGenFunction & f, double a ) { | double IntegralUp(const IGenFunction & f, double a ) { | |||
SetFunction(f,false); | SetFunction(f,false); | |||
return IntegralUp(a); | return IntegralUp(a); | |||
} | } | |||
/** | /** | |||
evaluate the Integral of a function f over the over the semi-infinite interval (-inf,b) | evaluate the Integral of a function f over the over the semi-infinite interval (-inf,b) | |||
@param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | @param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
*/ | */ | |||
template<class Function> | // template<class Function> | |||
double IntegralLow(const Function & f, double b); | // double IntegralLow(Function & f, double b); | |||
/** | /** | |||
evaluate the Integral of a function f over the over the semi-infinite interval (-inf,b) | evaluate the Integral of a function f over the over the semi-infinite interval (-inf,b) | |||
@param f integration function. The function type must implement the m athlib::IGenFunction interface | @param f integration function. The function type must implement the m athlib::IGenFunction interface | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
*/ | */ | |||
double IntegralLow(const IGenFunction & f, double b ) { | double IntegralLow(const IGenFunction & f, double b ) { | |||
SetFunction(f,false); | SetFunction(f,false); | |||
return IntegralLow(b); | return IntegralLow(b); | |||
} | } | |||
/** | /** | |||
evaluate the Integral of a function f with known singular points over the defined Integral (a,b) | evaluate the Integral of a function f with known singular points over the defined Integral (a,b) | |||
@param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | @param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | |||
@param pts vector containing both the function singular points and th e lower/upper edges of the interval. The vector must have as first element the lower edge of the integration Integral ( \a a) and last element the upp er value. | @param pts vector containing both the function singular points and th e lower/upper edges of the interval. The vector must have as first element the lower edge of the integration Integral ( \a a) and last element the upp er value. | |||
*/ | */ | |||
template<class Function> | template<class Function> | |||
double Integral(const Function & f, const std::vector<double> & pts ); | double Integral(Function & f, const std::vector<double> & pts ); | |||
/** | /** | |||
evaluate the Integral of a function f with known singular points over the defined Integral (a,b) | evaluate the Integral of a function f with known singular points over the defined Integral (a,b) | |||
@param f integration function. The function type must implement the m athlib::IGenFunction interface | @param f integration function. The function type must implement the m athlib::IGenFunction interface | |||
@param pts vector containing both the function singular points and th e lower/upper edges of the interval. The vector must have as first element the lower edge of the integration Integral ( \a a) and last element the upp er value. | @param pts vector containing both the function singular points and th e lower/upper edges of the interval. The vector must have as first element the lower edge of the integration Integral ( \a a) and last element the upp er value. | |||
*/ | */ | |||
double Integral(const IGenFunction & f, const std::vector<double> & pts ) { | double Integral(const IGenFunction & f, const std::vector<double> & pts ) { | |||
SetFunction(f,false); | SetFunction(f,false); | |||
return Integral(pts); | return Integral(pts); | |||
skipping to change at line 273 | skipping to change at line 279 | |||
/** | /** | |||
evaluate the Cauchy principal value of the integral of a function f over the defined interval (a,b) with a singularity at c | evaluate the Cauchy principal value of the integral of a function f over the defined interval (a,b) with a singularity at c | |||
@param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | @param f integration function. The function type must be a C++ callab le object implementing operator()(double x) | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
@param c position of singularity | @param c position of singularity | |||
*/ | */ | |||
template<class Function> | template<class Function> | |||
double IntegralCauchy(const Function & f, double a, double b, double c); | double IntegralCauchy(Function & f, double a, double b, double c); | |||
/** | /** | |||
evaluate the Cauchy principal value of the integral of a function f over the defined interval (a,b) with a singularity at c | evaluate the Cauchy principal value of the integral of a function f over the defined interval (a,b) with a singularity at c | |||
@param f integration function. The function type must implement the mathlib::IGenFunction interface | @param f integration function. The function type must implement the mathlib::IGenFunction interface | |||
@param a lower value of the integration interval | @param a lower value of the integration interval | |||
@param b upper value of the integration interval | @param b upper value of the integration interval | |||
@param c position of singularity | @param c position of singularity | |||
*/ | */ | |||
double IntegralCauchy(const IGenFunction & f, double a, double b, double c) { | double IntegralCauchy(const IGenFunction & f, double a, double b, double c) { | |||
skipping to change at line 386 | skipping to change at line 392 | |||
*/ | */ | |||
VirtualIntegratorOneDim * GetIntegrator() { return fIntegrator; } | VirtualIntegratorOneDim * GetIntegrator() { return fIntegrator; } | |||
protected: | protected: | |||
VirtualIntegratorOneDim * CreateIntegrator(IntegrationOneDim::Type type , double absTol, double relTol, unsigned int size, int rule); | VirtualIntegratorOneDim * CreateIntegrator(IntegrationOneDim::Type type , double absTol, double relTol, unsigned int size, int rule); | |||
private: | private: | |||
VirtualIntegratorOneDim * fIntegrator; // pointer to integrator interf ace class | VirtualIntegratorOneDim * fIntegrator; // pointer to integrator interf ace class | |||
std::auto_ptr<IGenFunction> fFunc; // pointer to owned function | ||||
}; | }; | |||
typedef IntegratorOneDim Integrator; | typedef IntegratorOneDim Integrator; | |||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
#ifndef ROOT_Math_WrappedFunction | #ifndef ROOT_Math_WrappedFunction | |||
#include "Math/WrappedFunction.h" | #include "Math/WrappedFunction.h" | |||
#endif | #endif | |||
template<class Function> | template<class Function> | |||
void ROOT::Math::IntegratorOneDim::SetFunction(const Function & f) { | void ROOT::Math::IntegratorOneDim::SetFunction( Function & f) { | |||
ROOT::Math::WrappedFunction<const Function &> wf(f); | ::ROOT::Math::WrappedFunction<Function &> wf(f); | |||
// need to copy the wrapper function, the instance created here will be d eleted after SetFunction() | // need to copy the wrapper function, the instance created here will be d eleted after SetFunction() | |||
if (fIntegrator) fIntegrator->SetFunction(wf, true); | SetFunction(wf, true); | |||
} | } | |||
template<class Function> | template<class Function> | |||
double ROOT::Math::IntegratorOneDim::Integral(const Function & f, double a, | double ROOT::Math::IntegratorOneDim::Integral(Function & f, double a, doubl | |||
double b) { | e b) { | |||
ROOT::Math::WrappedFunction<const Function &> wf(f); | ::ROOT::Math::WrappedFunction< Function &> wf(f); | |||
SetFunction(wf,false); // no copy is needed in this case | SetFunction(wf,false); // no copy is needed in this case | |||
return Integral(a,b); | return Integral(a,b); | |||
} | } | |||
template<class Function> | // remove because can create ambiguities | |||
double ROOT::Math::IntegratorOneDim::Integral(const Function & f) { | ||||
ROOT::Math::WrappedFunction<const Function &> wf(f); | ||||
SetFunction(wf,false); // no copy is needed in this case | ||||
return Integral(); | ||||
} | ||||
template<class Function> | ||||
double ROOT::Math::IntegratorOneDim::IntegralLow(const Function & f, doubl | ||||
e x) { | ||||
ROOT::Math::WrappedFunction<const Function &> wf(f); | ||||
SetFunction(wf,false); // no copy is needed in this case | ||||
return IntegralLow(x); | ||||
} | ||||
template<class Function> | // template<class Function> | |||
double ROOT::Math::IntegratorOneDim::IntegralUp(const Function & f, double | // double ROOT::Math::IntegratorOneDim::Integral(const Function & f) { | |||
x) { | // ROOT::Math::WrappedFunction<const Function &> wf(f); | |||
ROOT::Math::WrappedFunction<const Function &> wf(f); | // SetFunction(wf,false); // no copy is needed in this case | |||
SetFunction(wf,false); // no copy is needed in this case | // return Integral(); | |||
return IntegralUp(x); | // } | |||
} | ||||
// template<class Function> | ||||
// double ROOT::Math::IntegratorOneDim::IntegralLow(Function & f, double x | ||||
) { | ||||
// ROOT::Math::WrappedFunction< Function &> wf(f); | ||||
// SetFunction(wf,false); // no copy is needed in this case | ||||
// return IntegralLow(x); | ||||
// } | ||||
// template<class Function> | ||||
// double ROOT::Math::IntegratorOneDim::IntegralUp(Function & f, double x) | ||||
{ | ||||
// ROOT::Math::WrappedFunction<Function &> wf(f); | ||||
// SetFunction(wf,false); // no copy is needed in this case | ||||
// return IntegralUp(x); | ||||
// } | ||||
template<class Function> | template<class Function> | |||
double ROOT::Math::IntegratorOneDim::Integral(const Function & f, const std | double ROOT::Math::IntegratorOneDim::Integral(Function & f, const std::vect | |||
::vector<double> & pts) { | or<double> & pts) { | |||
ROOT::Math::WrappedFunction<const Function &> wf(f); | ::ROOT::Math::WrappedFunction<Function &> wf(f); | |||
SetFunction(wf,false); // no copy is needed in this case | SetFunction(wf,false); // no copy is needed in this case | |||
return Integral(pts); | return Integral(pts); | |||
} | } | |||
template<class Function> | template<class Function> | |||
double ROOT::Math::IntegratorOneDim::IntegralCauchy(const Function & f, dou | double ROOT::Math::IntegratorOneDim::IntegralCauchy(Function & f, double a, | |||
ble a, double b, double c) { | double b, double c) { | |||
ROOT::Math::WrappedFunction<const Function & > wf(f); | ::ROOT::Math::WrappedFunction<Function & > wf(f); | |||
SetFunction(wf,false); // no copy is needed in this case | SetFunction(wf,false); // no copy is needed in this case | |||
return IntegralCauchy(a,b,c); | return IntegralCauchy(a,b,c); | |||
} | } | |||
#endif | #endif | |||
#endif /* ROOT_Math_Integrator */ | #endif /* ROOT_Math_Integrator */ | |||
End of changes. 27 change blocks. | ||||
58 lines changed or deleted | 67 lines changed or added | |||
IntegratorMultiDim.h | IntegratorMultiDim.h | |||
---|---|---|---|---|
skipping to change at line 36 | skipping to change at line 36 | |||
#endif | #endif | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
#ifndef ROOT_Math_WrappedFunction | #ifndef ROOT_Math_WrappedFunction | |||
#include "Math/WrappedFunction.h" | #include "Math/WrappedFunction.h" | |||
#endif | #endif | |||
#endif | #endif | |||
#include <memory> | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ __________________ | //_________________________________________________________________________ __________________ | |||
/** | /** | |||
User class for performing multidimensional integration | User class for performing multidimensional integration | |||
By default uses adaptive multi-dimensional integration using the algorit hm from Genz Mallik | By default uses adaptive multi-dimensional integration using the algorit hm from Genz Mallik | |||
implemented in the class ROOT::Math::AdaptiveIntegratorMultiDim otherwis e it can uses via the | implemented in the class ROOT::Math::AdaptiveIntegratorMultiDim otherwis e it can uses via the | |||
plug-in manager the MC integration class (ROOT::Math::GSLMCIntegration) from MathMore. | plug-in manager the MC integration class (ROOT::Math::GSLMCIntegration) from MathMore. | |||
skipping to change at line 81 | skipping to change at line 83 | |||
@param absTol desired absolute Error | @param absTol desired absolute Error | |||
@param relTol desired relative Error | @param relTol desired relative Error | |||
@param ncall number of function calls (apply only to MC integratioo n methods) | @param ncall number of function calls (apply only to MC integratioo n methods) | |||
*/ | */ | |||
explicit | explicit | |||
IntegratorMultiDim(const IMultiGenFunction &f, IntegrationMultiDim::Type type = IntegrationMultiDim::kADAPTIVE, double absTol = 1.E-9, double relTo l = 1E-6, unsigned int ncall = 100000) { | IntegratorMultiDim(const IMultiGenFunction &f, IntegrationMultiDim::Type type = IntegrationMultiDim::kADAPTIVE, double absTol = 1.E-9, double relTo l = 1E-6, unsigned int ncall = 100000) { | |||
fIntegrator = CreateIntegrator(type, absTol, relTol, ncall); | fIntegrator = CreateIntegrator(type, absTol, relTol, ncall); | |||
SetFunction(f); | SetFunction(f); | |||
} | } | |||
// remove template constructor since is ambigous | ||||
/** Template Constructor of multi dimensional Integrator passing a gene ric function. By default uses the adaptive integration method | /** Template Constructor of multi dimensional Integrator passing a gene ric function. By default uses the adaptive integration method | |||
@param f integration function (generic function implementin ope rator()(const double *) | @param f integration function (generic function implementin ope rator()(const double *) | |||
@param dim function dimension | @param dim function dimension | |||
@param type integration type (adaptive, MC methods, etc..) | @param type integration type (adaptive, MC methods, etc..) | |||
@param absTol desired absolute Error | @param absTol desired absolute Error | |||
@param relTol desired relative Error | @param relTol desired relative Error | |||
@param ncall number of function calls (apply only to MC integratioo n methods) | @param ncall number of function calls (apply only to MC integratioo n methods) | |||
*/ | */ | |||
#ifdef LATER | // this is ambigous | |||
template<class Function> | // template<class Function> | |||
IntegratorMultiDim(const Function & f, unsigned int dim, IntegrationMult | // IntegratorMultiDim(Function & f, unsigned int dim, IntegrationMultiDi | |||
iDim::Type type = IntegrationMultiDim::kADAPTIVE, double absTol = 1.E-9, do | m::Type type = IntegrationMultiDim::kADAPTIVE, double absTol = 1.E-9, doubl | |||
uble relTol = 1E-6, unsigned int ncall = 100000) { | e relTol = 1E-6, unsigned int ncall = 100000) { | |||
fIntegrator = CreateIntegrator(type, absTol, relTol, ncall); | // fIntegrator = CreateIntegrator(type, absTol, relTol, ncall); | |||
SetFunction(f, dim); | // SetFunction(f, dim); | |||
} | // } | |||
#endif | ||||
/// destructor | /// destructor | |||
virtual ~IntegratorMultiDim() { | virtual ~IntegratorMultiDim() { | |||
if (fIntegrator) delete fIntegrator; | if (fIntegrator) delete fIntegrator; | |||
} | } | |||
// disable copy constructur and assignment operator | // disable copy constructur and assignment operator | |||
private: | private: | |||
IntegratorMultiDim(const IntegratorMultiDim &) {} | IntegratorMultiDim(const IntegratorMultiDim &) {} | |||
skipping to change at line 126 | skipping to change at line 129 | |||
} | } | |||
/// evaluate the integral passing a new function | /// evaluate the integral passing a new function | |||
double Integral(const IMultiGenFunction &f, const double* xmin, const do uble * xmax) { | double Integral(const IMultiGenFunction &f, const double* xmin, const do uble * xmax) { | |||
SetFunction(f); | SetFunction(f); | |||
return Integral(xmin,xmax); | return Integral(xmin,xmax); | |||
} | } | |||
/// evaluate the integral passing a new generic function | /// evaluate the integral passing a new generic function | |||
template<class Function> | template<class Function> | |||
double Integral(Function f, unsigned int dim, const double* xmin, const | double Integral(Function & f , unsigned int dim, const double* xmin, con | |||
double * xmax) { | st double * xmax) { | |||
SetFunction(f,dim); | SetFunction<Function>(f,dim); | |||
return Integral(xmin, xmax); | return Integral(xmin, xmax); | |||
} | } | |||
/** | /** | |||
set integration function using a generic function implementing the o perator()(double *x) | set integration function using a generic function implementing the o perator()(double *x) | |||
The dimension of the function is in this case required | The dimension of the function is in this case required | |||
*/ | */ | |||
template <class Function> | template <class Function> | |||
void SetFunction(const Function & f, unsigned int dim) { | void SetFunction(Function & f, unsigned int dim) { | |||
ROOT::Math::WrappedMultiFunction<Function> wf(f, dim); | fFunc = std::auto_ptr<IMultiGenFunction>(new WrappedMultiFunction<Fu | |||
SetFunction(wf); | nction &> (f, dim) ); | |||
fIntegrator->SetFunction(*fFunc); | ||||
} | } | |||
// set the function without cloning it | ||||
void SetFunction(const IMultiGenFunction &f) { | void SetFunction(const IMultiGenFunction &f) { | |||
if (fIntegrator) fIntegrator->SetFunction(f); | if (fIntegrator) fIntegrator->SetFunction(f); | |||
} | } | |||
/// return result of last integration | /// return result of last integration | |||
double Result() const { return fIntegrator == 0 ? 0 : fIntegrator->Resul t(); } | double Result() const { return fIntegrator == 0 ? 0 : fIntegrator->Resul t(); } | |||
/// return integration error | /// return integration error | |||
double Error() const { return fIntegrator == 0 ? 0 : fIntegrator->Error( ); } | double Error() const { return fIntegrator == 0 ? 0 : fIntegrator->Error( ); } | |||
/// return the Error Status of the last Integral calculation | /// return the Error Status of the last Integral calculation | |||
int Status() const { return fIntegrator == 0 ? -1 : fIntegrator->Status( ); } | int Status() const { return fIntegrator == 0 ? -1 : fIntegrator->Status( ); } | |||
skipping to change at line 172 | skipping to change at line 177 | |||
/// return a pointer to integrator object | /// return a pointer to integrator object | |||
VirtualIntegratorMultiDim * GetIntegrator() { return fIntegrator; } | VirtualIntegratorMultiDim * GetIntegrator() { return fIntegrator; } | |||
protected: | protected: | |||
VirtualIntegratorMultiDim * CreateIntegrator(IntegrationMultiDim::Type t ype , double absTol, double relTol, unsigned int ncall); | VirtualIntegratorMultiDim * CreateIntegrator(IntegrationMultiDim::Type t ype , double absTol, double relTol, unsigned int ncall); | |||
private: | private: | |||
VirtualIntegratorMultiDim * fIntegrator; // pointer to multi-dimensi onal integrator base class | VirtualIntegratorMultiDim * fIntegrator; // pointer to multi-dimensi onal integrator base class | |||
std::auto_ptr<IMultiGenFunction> fFunc; // pointer to owned functi on | ||||
}; | }; | |||
}//namespace Math | }//namespace Math | |||
}//namespace ROOT | }//namespace ROOT | |||
#endif /* ROOT_Math_IntegratorMultiDim */ | #endif /* ROOT_Math_IntegratorMultiDim */ | |||
End of changes. 8 change blocks. | ||||
16 lines changed or deleted | 23 lines changed or added | |||
Kernel.h | Kernel.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: Kernel.h 29355 2009-07-06 17:34:05Z axel $ | // @(#)root/reflex:$Id: Kernel.h 32267 2010-02-08 10:24:46Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_Kernel | #ifndef Reflex_Kernel | |||
#define Reflex_Kernel | #define Reflex_Kernel | |||
skipping to change at line 220 | skipping to change at line 220 | |||
/** The Reflex instance ensures the setup of the databases | /** The Reflex instance ensures the setup of the databases | |||
and provides access to some general information about the Reflex packag e */ | and provides access to some general information about the Reflex packag e */ | |||
class RFLX_API Instance { | class RFLX_API Instance { | |||
public: | public: | |||
/** default constructor */ | /** default constructor */ | |||
Instance(); | Instance(); | |||
/** destructor */ | /** destructor */ | |||
~Instance(); | ~Instance(); | |||
enum EState { | ||||
kUninitialized, // before instance construction | ||||
kInitializing, // the instance is being constructed | ||||
kActive, // the instance is running | ||||
kTearingDown, // the instance is being destructed | ||||
kHasShutDown, // the instance has been destructed | ||||
kNumStates | ||||
}; | ||||
/** return true if Reflex has shutdown (end of process) */ | /** return true if Reflex has shutdown (end of process) */ | |||
static bool HasShutdown(); | static bool HasShutdown(); | |||
/** return Reflex instance state */ | ||||
static EState State(); | ||||
void Shutdown(); | ||||
private: | private: | |||
Instance(Instance * createSingleton); | Instance(Instance * createSingleton); | |||
static Instance& CreateReflexInstance(); | static Instance& CreateReflexInstance(); | |||
static Instance* fgSingleton; | static Instance* fgSingleton; // class singleton | |||
static bool fgHasShutdown; | static EState fgState; // singleton's state | |||
void Shutdown(); | ||||
/** default constructor */ | ||||
}; // struct Reflex | }; // struct Reflex | |||
/** the Name of the package - used for messages */ | /** the Name of the package - used for messages */ | |||
RFLX_API const std::string& Argv0(); // returns "Reflex"; | RFLX_API const std::string& Argv0(); // returns "Reflex"; | |||
// these defines are used for the modifiers they are used in the following | // these defines are used for the modifiers they are used in the following | |||
// classes | // classes | |||
// BA = BASE | // BA = BASE | |||
// CL = CLASS | // CL = CLASS | |||
// FU = FUNCTION | // FU = FUNCTION | |||
End of changes. 5 change blocks. | ||||
6 lines changed or deleted | 18 lines changed or added | |||
LikelihoodInterval.h | LikelihoodInterval.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: LikelihoodInterval.h 31276 2009-11-18 15:06:42Z m oneta $ | // @(#)root/roostats:$Id: LikelihoodInterval.h 33206 2010-04-26 09:59:06Z 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_LikelihoodInterval | #ifndef RooStats_LikelihoodInterval | |||
skipping to change at line 71 | skipping to change at line 71 | |||
// return confidence level | // return confidence level | |||
virtual Double_t ConfidenceLevel() const {return fConfidenceLevel;} | virtual Double_t ConfidenceLevel() const {return fConfidenceLevel;} | |||
// return a cloned list of parameters of interest. User manages the return object | // return a cloned list of parameters of interest. User manages the return object | |||
virtual RooArgSet* GetParameters() const; | virtual RooArgSet* GetParameters() const; | |||
// check if parameters are correct (i.e. they are the POI of this int erval) | // check if parameters are correct (i.e. they are the POI of this int erval) | |||
Bool_t CheckParameters(const RooArgSet&) const ; | Bool_t CheckParameters(const RooArgSet&) const ; | |||
// return the lower bound of the interval on a given parameter | // return the lower bound of the interval on a given parameter | |||
Double_t LowerLimit(const RooRealVar& param) ; | Double_t LowerLimit(const RooRealVar& param) { bool ok; return LowerL | |||
imit(param,ok); } | ||||
Double_t LowerLimit(const RooRealVar& param, bool & status) ; | ||||
// return the upper bound of the interval on a given parameter | // return the upper bound of the interval on a given parameter | |||
Double_t UpperLimit(const RooRealVar& param) ; | Double_t UpperLimit(const RooRealVar& param) { bool ok; return UpperL | |||
imit(param,ok); } | ||||
Double_t UpperLimit(const RooRealVar& param, bool & status) ; | ||||
// find both lower and upper interval boundaries for a given paramete r | // find both lower and upper interval boundaries for a given paramete r | |||
// retun false if the bounds have not been found | // retun false if the bounds have not been found | |||
Bool_t FindLimits(const RooRealVar & param, double & lower, double &u pper); | Bool_t FindLimits(const RooRealVar & param, double & lower, double &u pper); | |||
/** | /** | |||
return the 2D-contour points for the given subset of parameters | return the 2D-contour points for the given subset of parameters | |||
by default make the contour using 30 points. The User has to preal locate the x and y array which will return | by default make the contour using 30 points. The User has to preal locate the x and y array which will return | |||
the set of x and y points defining the contour. | the set of x and y points defining the contour. | |||
The return value of the funciton specify the number of contour poi nt found. | The return value of the funciton specify the number of contour poi nt found. | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 7 lines changed or added | |||
LogLikelihoodFCN.h | LogLikelihoodFCN.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: LogLikelihoodFCN.h 30539 2009-10-01 13:13:09Z mon eta $ | // @(#)root/mathcore:$Id: LogLikelihoodFCN.h 32508 2010-03-09 10:51:11Z rdm $ | |||
// Author: L. Moneta Fri Aug 17 14:29:24 2007 | // Author: L. Moneta Fri Aug 17 14:29:24 2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2007 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2007 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class LogLikelihoodFCN | // Header file for class LogLikelihoodFCN | |||
skipping to change at line 83 | skipping to change at line 83 | |||
Destructor (no operations) | Destructor (no operations) | |||
*/ | */ | |||
virtual ~LogLikelihoodFCN () {} | virtual ~LogLikelihoodFCN () {} | |||
private: | private: | |||
// usually copying is non trivial, so we make this unaccessible | // usually copying is non trivial, so we make this unaccessible | |||
/** | /** | |||
Dummy Copy constructor (private) | Dummy Copy constructor (private) | |||
*/ | */ | |||
LogLikelihoodFCN(const LogLikelihoodFCN &) {} | LogLikelihoodFCN(const LogLikelihoodFCN &); | |||
/** | /** | |||
Dummy Assignment operator (private) | Dummy Assignment operator (private) | |||
*/ | */ | |||
LogLikelihoodFCN & operator = (const LogLikelihoodFCN & rhs) { | LogLikelihoodFCN & operator = (const LogLikelihoodFCN &); | |||
return *this; | ||||
} | ||||
public: | public: | |||
/// clone the function (need to return Base for Windows) | /// clone the function (need to return Base for Windows) | |||
virtual BaseFunction * Clone() const { return new LogLikelihoodFCN(fDat a,fFunc); } | virtual BaseFunction * Clone() const { return new LogLikelihoodFCN(fDat a,fFunc); } | |||
//using BaseObjFunction::operator(); | //using BaseObjFunction::operator(); | |||
// effective points used in the fit | // effective points used in the fit | |||
virtual unsigned int NFitPoints() const { return fNEffPoints; } | virtual unsigned int NFitPoints() const { return fNEffPoints; } | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 3 lines changed or added | |||
MemberBase.h | MemberBase.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: MemberBase.h 29288 2009-07-01 13:03:35Z axel $ | // @(#)root/reflex:$Id: MemberBase.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_MemberBase | #ifndef Reflex_MemberBase | |||
#define Reflex_MemberBase | #define Reflex_MemberBase | |||
// Include files | // Include files | |||
#include "Reflex/Kernel.h" | #include "Reflex/Kernel.h" | |||
#include "Reflex/PropertyList.h" | #include "Reflex/PropertyList.h" | |||
#include "Reflex/Type.h" | #include "Reflex/Type.h" | |||
#include "Reflex/Scope.h" | #include "Reflex/Scope.h" | |||
#include "Reflex/internal/LiteralString.h" | ||||
namespace Reflex { | namespace Reflex { | |||
// forward declarations | // forward declarations | |||
class Object; | class Object; | |||
class DictionaryGenerator; | class DictionaryGenerator; | |||
/** | /** | |||
* @class MemberBase MemberBase.h Reflex/internal/MemberBase.h | * @class MemberBase MemberBase.h Reflex/internal/MemberBase.h | |||
* @author Stefan Roiser | * @author Stefan Roiser | |||
* @date 24/11/2003 | * @date 24/11/2003 | |||
skipping to change at line 279 | skipping to change at line 280 | |||
* @link aggregation | * @link aggregation | |||
* @clientCardinality 1 | * @clientCardinality 1 | |||
*/ | */ | |||
Type fType; | Type fType; | |||
/** all modifiers of the member */ | /** all modifiers of the member */ | |||
unsigned int fModifiers; | unsigned int fModifiers; | |||
private: | private: | |||
/** name of member */ | /** name of member */ | |||
std::string fName; | LiteralString fName; | |||
/** | /** | |||
* scope of the member | * scope of the member | |||
* @label member scope | * @label member scope | |||
* @link aggregation | * @link aggregation | |||
* @supplierCardinality 1 | * @supplierCardinality 1 | |||
* @clientCardinality 1 | * @clientCardinality 1 | |||
*/ | */ | |||
mutable | mutable | |||
Scope fScope; | Scope fScope; | |||
skipping to change at line 547 | skipping to change at line 548 | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline std::string | inline std::string | |||
Reflex::MemberBase::Name(unsigned int mod) const { | Reflex::MemberBase::Name(unsigned int mod) const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if (0 != (mod & (SCOPED | S))) { | if (0 != (mod & (SCOPED | S))) { | |||
std::string s(DeclaringScope().Name(mod)); | std::string s(DeclaringScope().Name(mod)); | |||
if (!DeclaringScope().IsTopScope()) { | if (!DeclaringScope().IsTopScope()) { | |||
s += "::"; | s += "::"; | |||
} | } | |||
s += fName; | s += fName.c_str(); | |||
return s; | return s; | |||
} | } | |||
return fName; | return fName.c_str(); | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline const char* | inline const char* | |||
Reflex::MemberBase::Name_c_str() const { | Reflex::MemberBase::Name_c_str() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
return fName.c_str(); | return fName.c_str(); | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
End of changes. 6 change blocks. | ||||
5 lines changed or deleted | 6 lines changed or added | |||
ModelConfig.h | ModelConfig.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: ModelConfig.h 31276 2009-11-18 15:06:42Z moneta $ | // @(#)root/roostats:$Id: ModelConfig.h 33228 2010-04-27 07:09:42Z 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_ModelConfig | #ifndef ROOSTATS_ModelConfig | |||
skipping to change at line 90 | skipping to change at line 90 | |||
virtual void SetPriorPdf(RooAbsPdf& pdf) { | virtual void SetPriorPdf(RooAbsPdf& pdf) { | |||
ImportPdfInWS(pdf); | ImportPdfInWS(pdf); | |||
SetPriorPdf( pdf.GetName() ); | SetPriorPdf( pdf.GetName() ); | |||
} | } | |||
// specify the parameters of interest in the interval | // specify the parameters of interest in the interval | |||
virtual void SetParameters(RooArgSet& set) { | virtual void SetParameters(RooArgSet& set) { | |||
fPOIName=std::string(GetName()) + "_POI"; | fPOIName=std::string(GetName()) + "_POI"; | |||
DefineSetInWS(fPOIName.c_str(), set); | DefineSetInWS(fPOIName.c_str(), set); | |||
} | } | |||
virtual void SetParametersOfInterest(RooArgSet& set) { | ||||
SetParameters(set); | ||||
} | ||||
// specify the nuisance parameters (eg. the rest of the parameters) | // specify the nuisance parameters (eg. the rest of the parameters) | |||
virtual void SetNuisanceParameters(RooArgSet& set) { | virtual void SetNuisanceParameters(RooArgSet& set) { | |||
fNuisParamsName=std::string(GetName()) + "_NuisParams"; | fNuisParamsName=std::string(GetName()) + "_NuisParams"; | |||
DefineSetInWS(fNuisParamsName.c_str(), set); | DefineSetInWS(fNuisParamsName.c_str(), set); | |||
} | } | |||
// specify the constraint parameters | ||||
virtual void SetConstraintParameters(RooArgSet& set) { | ||||
fConstrParamsName=std::string(GetName()) + "_ConstrainedParams"; | ||||
DefineSetInWS(fConstrParamsName.c_str(), set); | ||||
} | ||||
// specify the observables | ||||
virtual void SetObservables(RooArgSet& set) { | ||||
fObservablesName=std::string(GetName()) + "_Observables"; | ||||
DefineSetInWS(fObservablesName.c_str(), set); | ||||
} | ||||
// specify the conditional observables | ||||
virtual void SetConditionalObservables(RooArgSet& set) { | ||||
fConditionalObsName=std::string(GetName()) + "_ConditionalObservables | ||||
"; | ||||
DefineSetInWS(fConditionalObsName.c_str(), set); | ||||
} | ||||
// set parameter values for the null if using a common PDF | // set parameter values for the null if using a common PDF | |||
virtual void SetSnapshot(RooArgSet& set) { | virtual void SetSnapshot(RooArgSet& set) { | |||
fSnapshotName=std::string(GetName()) + "_Snapshot"; | fSnapshotName=std::string(GetName()) + "_Snapshot"; | |||
DefineSetInWS(fSnapshotName.c_str(), set); | DefineSetInWS(fSnapshotName.c_str(), set); | |||
} | } | |||
// specify the name of the PDF in the workspace to be used | // specify the name of the PDF in the workspace to be used | |||
virtual void SetPdf(const char* name) { | virtual void SetPdf(const char* name) { | |||
if(!fWS){ | if(!fWS){ | |||
coutE(ObjectHandling) << "workspace not set" << endl; | coutE(ObjectHandling) << "workspace not set" << endl; | |||
skipping to change at line 151 | skipping to change at line 172 | |||
/// get model PDF (return NULL if pdf has not been specified or does not exist) | /// get model PDF (return NULL if pdf has not been specified or does not exist) | |||
RooAbsPdf * GetPdf() const { return (fWS) ? fWS->pdf(fPdfName.c_str()) : 0; } | RooAbsPdf * GetPdf() const { return (fWS) ? fWS->pdf(fPdfName.c_str()) : 0; } | |||
/// get RooArgSet containing the parameter of interest (return NULL if n ot existing) | /// get RooArgSet containing the parameter of interest (return NULL if n ot existing) | |||
const RooArgSet * GetParametersOfInterest() const { return (fWS) ? fWS-> set(fPOIName.c_str()) : 0; } | const RooArgSet * GetParametersOfInterest() const { return (fWS) ? fWS-> set(fPOIName.c_str()) : 0; } | |||
/// get RooArgSet containing the nuisance parameters (return NULL if not existing) | /// get RooArgSet containing the nuisance parameters (return NULL if not existing) | |||
const RooArgSet * GetNuisanceParameters() const { return (fWS) ? fWS->se t(fNuisParamsName.c_str()) : 0; } | const RooArgSet * GetNuisanceParameters() const { return (fWS) ? fWS->se t(fNuisParamsName.c_str()) : 0; } | |||
/// get RooArgSet containing the constraint parameters (return NULL if n ot existing) | /// get RooArgSet containing the constraint parameters (return NULL if n ot existing) | |||
const RooArgSet * GetConstraintParameters() const { return (fWS) ? fWS-> set(fConstrainedParamName.c_str()) : 0; } | const RooArgSet * GetConstraintParameters() const { return (fWS) ? fWS-> set(fConstrParamsName.c_str()) : 0; } | |||
/// get parameters prior pdf (return NULL if not existing) | /// get parameters prior pdf (return NULL if not existing) | |||
RooAbsPdf * GetPriorPdf() const { return (fWS) ? fWS->pdf(fPriorPdfName. c_str()) : 0; } | RooAbsPdf * GetPriorPdf() const { return (fWS) ? fWS->pdf(fPriorPdfName. c_str()) : 0; } | |||
/// get RooArgSet for observales (return NULL if not existing) | /// get RooArgSet for observales (return NULL if not existing) | |||
const RooArgSet * GetObservables() const { return (fWS) ? fWS->set(fObse rvablesName.c_str()) : 0; } | const RooArgSet * GetObservables() const { return (fWS) ? fWS->set(fObse rvablesName.c_str()) : 0; } | |||
/// get RooArgSet for conditional observales (return NULL if not existi ng) | /// get RooArgSet for conditional observales (return NULL if not existi ng) | |||
const RooArgSet * GetConditionalObservables() const { return (fWS) ? fWS ->set(fConditionalObservablesName.c_str()) : 0; } | const RooArgSet * GetConditionalObservables() const { return (fWS) ? fWS ->set(fConditionalObsName.c_str()) : 0; } | |||
/// get Proto data set (return NULL if not existing) | /// get Proto data set (return NULL if not existing) | |||
RooAbsData * GetProtoData() const { return (fWS) ? fWS->data(fProtoDat aName.c_str()) : 0; } | RooAbsData * GetProtoData() const { return (fWS) ? fWS->data(fProtoDat aName.c_str()) : 0; } | |||
/// get RooArgSet for parameters for a particular hypothesis (return NU LL if not existing) | /// get RooArgSet for parameters for a particular hypothesis (return NU LL if not existing) | |||
const RooArgSet * GetSnapshot() const { return (fWS) ? fWS->set(fSnapsho tName.c_str()) : 0; } | const RooArgSet * GetSnapshot() const { return (fWS) ? fWS->set(fSnapsho tName.c_str()) : 0; } | |||
const RooWorkspace * GetWS() const { return fWS; } | const RooWorkspace * GetWS() const { return fWS; } | |||
protected: | protected: | |||
skipping to change at line 189 | skipping to change at line 210 | |||
void ImportDataInWS(RooAbsData & data); | void ImportDataInWS(RooAbsData & data); | |||
RooWorkspace* fWS; // a workspace that owns all the components to be use d by the calculator | RooWorkspace* fWS; // a workspace that owns all the components to be use d by the calculator | |||
Bool_t fOwnsWorkspace; | Bool_t fOwnsWorkspace; | |||
std::string fPdfName; // name of PDF in workspace | std::string fPdfName; // name of PDF in workspace | |||
std::string fDataName; // name of data set in workspace | std::string fDataName; // name of data set in workspace | |||
std::string fPOIName; // name for RooArgSet specifying parameters of int erest | std::string fPOIName; // name for RooArgSet specifying parameters of int erest | |||
std::string fNuisParamsName; // name for RooArgSet specifying nuisance p arameters | std::string fNuisParamsName; // name for RooArgSet specifying nuisance p arameters | |||
std::string fConstrainedParamName; // name for RooArgSet specifying cons trained parameters | std::string fConstrParamsName; // name for RooArgSet specifying constrai ned parameters | |||
std::string fPriorPdfName; // name for RooAbsPdf specifying a prior on t he parameters | std::string fPriorPdfName; // name for RooAbsPdf specifying a prior on t he parameters | |||
std::string fConditionalObservablesName; // name for RooArgSet specifyin g conditional observables | std::string fConditionalObsName; // name for RooArgSet specifying condit ional observables | |||
std::string fProtoDataName; // name for RooArgSet specifying dataset tha t should be used as protodata | std::string fProtoDataName; // name for RooArgSet specifying dataset tha t should be used as protodata | |||
std::string fSnapshotName; // name for RooArgSet that specifies a partic ular hypothesis | std::string fSnapshotName; // name for RooArgSet that specifies a partic ular hypothesis | |||
std::string fObservablesName; // name for RooArgSet specifying observabl e parameters. | std::string fObservablesName; // name for RooArgSet specifying observabl e parameters. | |||
ClassDef(ModelConfig,1) // A class that holds configuration information for a model using a workspace as a store | ClassDef(ModelConfig,1) // A class that holds configuration information for a model using a workspace as a store | |||
}; | }; | |||
End of changes. 7 change blocks. | ||||
5 lines changed or deleted | 27 lines changed or added | |||
PoissonLikelihoodFCN.h | PoissonLikelihoodFCN.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: PoissonLikelihoodFCN.h 31763 2009-12-10 10:40:21Z moneta $ | // @(#)root/mathcore:$Id: PoissonLikelihoodFCN.h 32508 2010-03-09 10:51:11Z rdm $ | |||
// Author: L. Moneta Fri Aug 17 14:29:24 2007 | // Author: L. Moneta Fri Aug 17 14:29:24 2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2007 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2007 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class PoissonLikelihoodFCN | // Header file for class PoissonLikelihoodFCN | |||
skipping to change at line 78 | skipping to change at line 78 | |||
fNEffPoints(0), | fNEffPoints(0), | |||
fGrad ( std::vector<double> ( func.NPar() ) ) | fGrad ( std::vector<double> ( func.NPar() ) ) | |||
{ } | { } | |||
/** | /** | |||
Destructor (no operations) | Destructor (no operations) | |||
*/ | */ | |||
~PoissonLikelihoodFCN () {} | ~PoissonLikelihoodFCN () {} | |||
private: | private: | |||
// usually copying is non trivial, so we make this unaccessible | // usually copying is non trivial, so we declare but don't implement the m | |||
/** | /** | |||
Copy constructor | Copy constructor | |||
*/ | */ | |||
PoissonLikelihoodFCN(const PoissonLikelihoodFCN &) {} | PoissonLikelihoodFCN(const PoissonLikelihoodFCN &); | |||
/** | /** | |||
Assignment operator | Assignment operator | |||
*/ | */ | |||
PoissonLikelihoodFCN & operator = (const PoissonLikelihoodFCN & rhs) { r eturn *this; } | PoissonLikelihoodFCN & operator = (const PoissonLikelihoodFCN &); | |||
public: | public: | |||
/// clone the function (need to return Base for Windows) | /// clone the function (need to return Base for Windows) | |||
virtual BaseFunction * Clone() const { return new PoissonLikelihoodFCN( fData,fFunc); } | virtual BaseFunction * Clone() const { return new PoissonLikelihoodFCN( fData,fFunc); } | |||
// effective points used in the fit | // effective points used in the fit | |||
virtual unsigned int NFitPoints() const { return fNEffPoints; } | virtual unsigned int NFitPoints() const { return fNEffPoints; } | |||
/// i-th likelihood element and its gradient | /// i-th likelihood element and its gradient | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
Polynomial.h | Polynomial.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: Polynomial.h 24482 2008-06-23 15:33:08Z moneta $ | // @(#)root/mathmore:$Id: Polynomial.h 32630 2010-03-17 09:59:26Z moneta $ | |||
// 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 38 | skipping to change at line 38 | |||
// | // | |||
// Last update: Wed Nov 10 17:46:19 2004 | // Last update: Wed Nov 10 17:46:19 2004 | |||
// | // | |||
#ifndef ROOT_Math_Polynomial | #ifndef ROOT_Math_Polynomial | |||
#define ROOT_Math_Polynomial | #define ROOT_Math_Polynomial | |||
#include <complex> | #include <complex> | |||
#include "Math/ParamFunction.h" | #include "Math/ParamFunction.h" | |||
#ifdef _WIN32 | // #ifdef _WIN32 | |||
#pragma warning(disable : 4250) | // #pragma warning(disable : 4250) | |||
#endif | // #endif | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//_________________________________________________________________________ ____________ | //_________________________________________________________________________ ____________ | |||
/** | /** | |||
Parametric Function class describing polynomials of order n. | Parametric Function class describing polynomials of order n. | |||
<em>P(x) = p[0] + p[1]*x + p[2]*x**2 + ....... + p[n]*x**n</em> | <em>P(x) = p[0] + p[1]*x + p[2]*x**2 + ....... + p[n]*x**n</em> | |||
skipping to change at line 63 | skipping to change at line 63 | |||
The class provides also the method to find the roots of the polynomial . | The class provides also the method to find the roots of the polynomial . | |||
It uses analytical methods up to quartic polynomials. | It uses analytical methods up to quartic polynomials. | |||
Implements both the Parameteric function interface and the gradient in terface | Implements both the Parameteric function interface and the gradient in terface | |||
since it provides the analytical gradient with respect to x | since it provides the analytical gradient with respect to x | |||
@ingroup ParamFunc | @ingroup ParamFunc | |||
*/ | */ | |||
class Polynomial : public ParamFunction<IParamGradFunction>, | class Polynomial : public ParamFunction<IParamGradFunction>, | |||
public IGradientFunctionOneDim | public IGradientOneDim | |||
{ | { | |||
typedef ParamFunction<IParamGradFunction> ParFunc; | typedef ParamFunction<IParamGradFunction> ParFunc; | |||
public: | public: | |||
/** | /** | |||
Construct a Polynomial function of order n. | Construct a Polynomial function of order n. | |||
The number of Parameters is n+1. | The number of Parameters is n+1. | |||
*/ | */ | |||
skipping to change at line 130 | skipping to change at line 130 | |||
*/ | */ | |||
const std::vector<std::complex <double> > & FindNumRoots(); | const std::vector<std::complex <double> > & FindNumRoots(); | |||
/** | /** | |||
Order of Polynomial | Order of Polynomial | |||
*/ | */ | |||
unsigned int Order() const { return fOrder; } | unsigned int Order() const { return fOrder; } | |||
IGenFunction * Clone() const; | IGenFunction * Clone() const; | |||
/** | ||||
Optimized method to evaluate at the same time the function value and | ||||
derivative at a point x. | ||||
Implement the interface specified bby ROOT::Math::IGradientOneDim. | ||||
In the case of polynomial there is no advantage to compute both at t | ||||
he same time | ||||
*/ | ||||
void FdF (double x, double & f, double & df) const { | ||||
f = (*this)(x); | ||||
df = Derivative(x); | ||||
} | ||||
private: | private: | |||
double DoEvalPar ( double x, const double * p ) const ; | double DoEvalPar ( double x, const double * p ) const ; | |||
double DoDerivative (double x) const ; | double DoDerivative (double x) const ; | |||
double DoParameterDerivative(double x, const double * p, unsigned int ip ar) const; | double DoParameterDerivative(double x, const double * p, unsigned int ip ar) const; | |||
// cache order = number of params - 1) | // cache order = number of params - 1) | |||
unsigned int fOrder; | unsigned int fOrder; | |||
End of changes. 4 change blocks. | ||||
5 lines changed or deleted | 17 lines changed or added | |||
RConfig.h | RConfig.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: RConfig.h 30773 2009-10-16 15:10:47Z rdm $ */ | /* @(#)root/base:$Id: RConfig.h 32142 2010-01-28 17:40:53Z rdm $ */ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_RConfig | #ifndef ROOT_RConfig | |||
skipping to change at line 418 | skipping to change at line 418 | |||
# define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | # define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | |||
# endif | # endif | |||
# if __GNUC__ >= 3 && __GNUC_MINOR__ >=0 && __GNUC_MINOR__ < 8 | # if __GNUC__ >= 3 && __GNUC_MINOR__ >=0 && __GNUC_MINOR__ < 8 | |||
# define R__SSTREAM /* use sstream or strstream header */ | # define R__SSTREAM /* use sstream or strstream header */ | |||
# endif | # endif | |||
# if defined(__ia64__) && __GNUC__ < 3 /* gcc 2.9x (MINOR is 9!) * / | # if defined(__ia64__) && __GNUC__ < 3 /* gcc 2.9x (MINOR is 9!) * / | |||
# define R__VECNEWDELETE /* supports overloading of new[] and delet e[] */ | # define R__VECNEWDELETE /* supports overloading of new[] and delet e[] */ | |||
# define R__PLACEMENTDELETE /* supports overloading placement delete * / | # define R__PLACEMENTDELETE /* supports overloading placement delete * / | |||
# define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | # define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | |||
# endif | # endif | |||
# if __GNUC__ > 4 || ( __GNUC__ == 4 && __GNUC_MINOR > 1) | # if __GNUC__ > 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ > 1) | |||
# define R__PRAGMA_DIAGNOSTIC | # define R__PRAGMA_DIAGNOSTIC | |||
# endif | # endif | |||
#endif | #endif | |||
/* allows symbols to be hidden from the shared library export symbol table */ | /* allows symbols to be hidden from the shared library export symbol table */ | |||
/* use typically on file statics and private methods */ | /* use typically on file statics and private methods */ | |||
#if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) | #if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) | |||
# define R__HIDDEN __attribute__((__visibility__("hidden"))) | # define R__HIDDEN __attribute__((__visibility__("hidden"))) | |||
#else | #else | |||
# define R__HIDDEN | # define R__HIDDEN | |||
skipping to change at line 549 | skipping to change at line 549 | |||
#endif | #endif | |||
/*---- misc --------------------------------------------------------------- ---*/ | /*---- misc --------------------------------------------------------------- ---*/ | |||
#ifdef R__GNU | #ifdef R__GNU | |||
# define SafeDelete(p) { if (p) { delete p; p = 0; } } | # define SafeDelete(p) { if (p) { delete p; p = 0; } } | |||
#else | #else | |||
# define SafeDelete(p) { delete p; p = 0; } | # define SafeDelete(p) { delete p; p = 0; } | |||
#endif | #endif | |||
#if defined(R__WIN32) || defined(__CINT__) | ||||
#define R__LL(longlong) longlong | ||||
#define R__ULL(ulonglong) ulonglong | ||||
#else | ||||
#define R__LL(longlong) _NAME2_(longlong,LL) | ||||
#define R__ULL(ulonglong) _NAME2_(ulonglong,ULL) | ||||
#endif | ||||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
10 lines changed or deleted | 2 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.4.2/ | #define R__CONFIGUREOPTIONS "QTDIR=/afs/cern.ch/sw/lcg/external/qt/4.4.2/ | |||
i686-slc5-gcc43-opt PYTHONDIR=/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/i | i686-slc5-gcc43-opt PYTHONDIR=/afs/cern.ch/sw/lcg/external/Python/2.5.4p2/i | |||
686-slc5-gcc43-opt --fail-on-missing --enable-cintex --enable-explicitlink | 686-slc5-gcc43-opt --fail-on-missing --enable-cintex --enable-explicitlink | |||
--enable-gdml --enable-genvector --enable-krb5 --enable-mathmore --enable-m | --enable-gdml --enable-genvector --enable-krb5 --enable-mathmore --enable-m | |||
inuit2 --enable-mysql --enable-oracle --enable-python --enable-qt --enable- | inuit2 --enable-mysql --enable-oracle --enable-python --enable-qt --enable- | |||
qtgsi --enable-reflex --enable-roofit --enable-table --enable-unuran --with | qtgsi --enable-reflex --enable-roofit --enable-table --enable-unuran --with | |||
-castor-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43 | -castor-incdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43 | |||
-opt/usr/include/shift --with-castor-libdir=/afs/cern.ch/sw/lcg/external/ca | -opt/usr/include/shift --with-castor-libdir=/afs/cern.ch/sw/lcg/external/ca | |||
stor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --with-cern-libdir=/afs/cern.ch/s | stor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --with-cern-libdir=/afs/cern.ch/s | |||
w/lcg/external/cernlib/2006a/i686-slc5-gcc43-opt/lib --with-dcap-libdir=/af | w/lcg/external/cernlib/2006a/i686-slc5-gcc43-opt/lib --with-dcap-libdir=/af | |||
s/cern.ch/sw/lcg/external/dcache_client/1.9.3/i686-slc5-gcc43-opt/dcap/lib | s/cern.ch/sw/lcg/external/dcache_client/1.9.3p1/i686-slc5-gcc43-opt/dcap/li | |||
--with-dcap-incdir=/afs/cern.ch/sw/lcg/external/dcache_client/1.9.3/i686-sl | b --with-dcap-incdir=/afs/cern.ch/sw/lcg/external/dcache_client/1.9.3p1/i68 | |||
c5-gcc43-opt/dcap/include --with-fftw3-incdir=/afs/cern.ch/sw/lcg/external/ | 6-slc5-gcc43-opt/dcap/include --with-fftw3-incdir=/afs/cern.ch/sw/lcg/exter | |||
fftw3/3.1.2/i686-slc5-gcc43-opt/include --with-fftw3-libdir=/afs/cern.ch/sw | nal/fftw3/3.1.2/i686-slc5-gcc43-opt/include --with-fftw3-libdir=/afs/cern.c | |||
/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/lib --with-gccxml=/afs/cern.c | h/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/lib --with-gccxml=/afs/ce | |||
h/sw/lcg/external/gccxml/0.9.0_20090601/i686-slc5-gcc43-opt/bin --with-gfal | rn.ch/sw/lcg/external/gccxml/0.9.0_20100114/i686-slc5-gcc43-opt/bin --with- | |||
-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-3/i686-slc5-gcc43-opt | gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-3/i686-slc5-gcc43 | |||
/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-3/i68 | -opt/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg/external/Grid/gfal/1.11.8-3 | |||
6-slc5-gcc43-opt/include --with-globus-incdir=/afs/cern.ch/sw/lcg/external/ | /i686-slc5-gcc43-opt/include --with-globus-incdir=/afs/cern.ch/sw/lcg/exter | |||
Grid/globus/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt/globus/include --with-globu | nal/Grid/globus/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt/globus/include --with-g | |||
s-libdir=/afs/cern.ch/sw/lcg/external/Grid/globus/4.0.3-VDT-1.6.0/i686-slc5 | lobus-libdir=/afs/cern.ch/sw/lcg/external/Grid/globus/4.0.3-VDT-1.6.0/i686- | |||
-gcc43-opt/globus/lib --with-gsl-incdir=/afs/cern.ch/sw/lcg/external/GSL/1. | slc5-gcc43-opt/globus/lib --with-gsl-incdir=/afs/cern.ch/sw/lcg/external/GS | |||
10/i686-slc5-gcc43-opt/include --with-gsl-libdir=/afs/cern.ch/sw/lcg/extern | L/1.10/i686-slc5-gcc43-opt/include --with-gsl-libdir=/afs/cern.ch/sw/lcg/ex | |||
al/GSL/1.10/i686-slc5-gcc43-opt/lib --with-mysql-incdir=/afs/cern.ch/sw/lcg | ternal/GSL/1.10/i686-slc5-gcc43-opt/lib --with-mysql-incdir=/afs/cern.ch/sw | |||
/external/mysql/5.0.18/i686-slc5-gcc43-opt/include --with-mysql-libdir=/afs | /lcg/external/mysql/5.0.18/i686-slc5-gcc43-opt/include --with-mysql-libdir= | |||
/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5-gcc43-opt/lib --with-oracle | /afs/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5-gcc43-opt/lib --with-or | |||
-incdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0/i686-slc5-gcc43-opt/ | acle-incdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0p1/i686-slc5-gcc4 | |||
include --with-oracle-libdir=/afs/cern.ch/sw/lcg/external/oracle/11.2.0.1.0 | 3-opt/include --with-oracle-libdir=/afs/cern.ch/sw/lcg/external/oracle/11.2 | |||
/i686-slc5-gcc43-opt/lib --with-shift-incdir=/afs/cern.ch/sw/lcg/external/c | .0.1.0p1/i686-slc5-gcc43-opt/lib --with-shift-incdir=/afs/cern.ch/sw/lcg/ex | |||
astor/2.1.8-10/i686-slc5-gcc43-opt/usr/include/shift --with-shift-libdir=/a | ternal/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/include/shift --with-shift-l | |||
fs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/lib --wi | ibdir=/afs/cern.ch/sw/lcg/external/castor/2.1.8-10/i686-slc5-gcc43-opt/usr/ | |||
th-pythia6-libdir=/afs/cern.ch/user/b/bellenot/scratch0/dist/pythia6/i686-s | lib --with-pythia6-libdir=/afs/cern.ch/user/b/bellenot/scratch0/dist/pythia | |||
lc5-gcc43-opt --with-pythia8-incdir=/afs/cern.ch/user/b/bellenot/scratch0/d | 6/i686-slc5-gcc43-opt --with-pythia8-incdir=/afs/cern.ch/user/b/bellenot/sc | |||
ist/pythia8/i686-slc5-gcc43-opt/include --with-pythia8-libdir=/afs/cern.ch/ | ratch0/dist/pythia8/i686-slc5-gcc43-opt/include --with-pythia8-libdir=/afs/ | |||
user/b/bellenot/scratch0/dist/pythia8/i686-slc5-gcc43-opt/lib --with-gviz-i | cern.ch/user/b/bellenot/scratch0/dist/pythia8/i686-slc5-gcc43-opt/lib --wit | |||
ncdir=/build/bellenot/libraries/i686-slc5-gcc43-opt/graphviz-2.24.0/include | h-gviz-incdir=/build/bellenot/libraries/i686-slc5-gcc43-opt/graphviz-2.24.0 | |||
/graphviz --with-gviz-libdir=/build/bellenot/libraries/i686-slc5-gcc43-opt/ | /include/graphviz --with-gviz-libdir=/build/bellenot/libraries/i686-slc5-gc | |||
graphviz-2.24.0/lib" | c43-opt/graphviz-2.24.0/lib" | |||
#define R__CONFIGUREFEATURES "asimage astiff builtin_afterimage builtin_ft | #define R__CONFIGUREFEATURES "asimage astiff builtin_afterimage builtin_ft | |||
gl builtin_freetype builtin_glew builtin_pcre builtin_zlib castor cint5 cin | gl builtin_freetype builtin_glew builtin_pcre builtin_zlib castor cintex ed | |||
tex editline dcache exceptions explicitlink fftw3 gviz gdml genvector gfal | itline dcache exceptions explicitlink fftw3 gviz gdml genvector gfal globus | |||
globus krb5 ldap mathmore memstat minuit2 mysql opengl oracle pythia6 pythi | krb5 ldap mathmore memstat minuit2 mysql opengl oracle pythia6 pythia8 pyt | |||
a8 python qt qtgsi reflex roofit rfio shadowpw shared ssl table tmva unuran | hon qt qtgsi reflex roofit rfio shadowpw shared ssl table tmva unuran xft x | |||
xft xml xrootd thread" | ml xrootd thread" | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
44 lines changed or deleted | 44 lines changed or added | |||
RConfigure.h | RConfigure.h | |||
---|---|---|---|---|
skipping to change at line 25 | skipping to change at line 25 | |||
#define ROOTICONPATH "$(ROOTSYS)/icons" | #define ROOTICONPATH "$(ROOTSYS)/icons" | |||
#define EXTRAICONPATH "" | #define EXTRAICONPATH "" | |||
#define TTFFONTDIR "$(ROOTSYS)/fonts" | #define TTFFONTDIR "$(ROOTSYS)/fonts" | |||
#define CINTINCDIR "$(ROOTSYS)/cint" | #define CINTINCDIR "$(ROOTSYS)/cint" | |||
#endif | #endif | |||
#define R__HAS_SETRESUID /**/ | #define R__HAS_SETRESUID /**/ | |||
#define R__HAS_MATHMORE /**/ | #define R__HAS_MATHMORE /**/ | |||
#define R__HAS_PTHREAD /**/ | #define R__HAS_PTHREAD /**/ | |||
#define R__HAS_XFT /**/ | #define R__HAS_XFT /**/ | |||
#undef R__HAS_CLING /**/ | ||||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
RConversionRuleParser.h | RConversionRuleParser.h | |||
---|---|---|---|---|
// @(#)root/core:$Id: RConversionRuleParser.h 27282 2009-01-28 22:36:42Z rd m $ | // @(#)root/core:$Id: RConversionRuleParser.h 32644 2010-03-17 13:58:28Z pc anal $ | |||
// author: Lukasz Janyst <ljanyst@cern.ch> | // author: Lukasz Janyst <ljanyst@cern.ch> | |||
#ifndef R__R_CONVERSION_RULE_PARSER_H | #ifndef R__R_CONVERSION_RULE_PARSER_H | |||
#define R__R_CONVERSION_RULE_PARSER_H | #define R__R_CONVERSION_RULE_PARSER_H | |||
#include <list> | #include <list> | |||
#include <map> | #include <map> | |||
#include <string> | #include <string> | |||
#include <ostream> | #include <ostream> | |||
#include <utility> | #include <utility> | |||
#ifndef __MAKECINT__ | #ifndef __MAKECINT__ | |||
#ifndef R__BUILDING_CINT7 | ||||
#include "Api.h" | #include "Api.h" | |||
#include "Shadow.h" | #include "Shadow.h" | |||
#else | #else | |||
#include "cint7/Api.h" | ||||
#include "cint7/Shadow.h" | ||||
#endif | ||||
#else | ||||
class G__ClassInfo; | class G__ClassInfo; | |||
#endif | #endif | |||
#if !defined(__CINT__) | #if !defined(__CINT__) | |||
// Avoid clutering the dictionary (in particular with the STL declaration) | // Avoid clutering the dictionary (in particular with the STL declaration) | |||
namespace ROOT | namespace ROOT | |||
{ | { | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
// Global variables | // Global variables | |||
skipping to change at line 78 | skipping to change at line 73 | |||
const std::string& listName, std::ostream& output ); | const std::string& listName, std::ostream& output ); | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
// Get the list of includes defined in schema rules | // Get the list of includes defined in schema rules | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
void GetRuleIncludes( std::list<std::string> &result ); | void GetRuleIncludes( std::list<std::string> &result ); | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
// Parse read pragma | // Parse read pragma | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
bool ParseRule( std::string rule, MembersMap_t &result, std::string &err | ||||
or_string ); | ||||
//---------------------------------------------------------------------- | ||||
----- | ||||
// Parse read pragma | ||||
//---------------------------------------------------------------------- | ||||
----- | ||||
void ProcessReadPragma( char* args ); | void ProcessReadPragma( char* args ); | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
// Parse readraw pragma | // Parse readraw pragma | |||
//---------------------------------------------------------------------- ----- | //---------------------------------------------------------------------- ----- | |||
void ProcessReadRawPragma( char* args ); | void ProcessReadRawPragma( char* args ); | |||
} | } | |||
#endif // !defined(__CINT__) | #endif // !defined(__CINT__) | |||
#endif // R__R_CONVERSION_RULE_PARSER_H | #endif // R__R_CONVERSION_RULE_PARSER_H | |||
End of changes. 4 change blocks. | ||||
6 lines changed or deleted | 9 lines changed or added | |||
RStipples.h | RStipples.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: RStipples.h 20877 2007-11-19 11:17:07Z rdm $ */ | /* @(#)root/base:$Id: RStipples.h 32337 2010-02-12 16:09:35Z 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_Stipples | #ifndef ROOT_Stipples | |||
skipping to change at line 28 | skipping to change at line 28 | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
// // | // // | |||
// Stipples // | // Stipples // | |||
// // | // // | |||
// Data to create fill area interior style. // | // Data to create fill area interior style. // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#if !defined(R__WIN32) | #if !defined(R__WIN32) | |||
const char gStipples[26][32] = { | const unsigned char gStipples[26][32] = { | |||
{ | { | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55 | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55 | |||
}, //0 | }, //0 | |||
{ | { | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x5 5, | |||
0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55 | 0xaa, 0xaa, 0x55, 0x55, 0xaa, 0xaa, 0x55, 0x55 | |||
}, //1 | }, //1 | |||
skipping to change at line 163 | skipping to change at line 163 | |||
}, //24 | }, //24 | |||
{ | { | |||
0x80, 0x00, 0xc0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0xff, 0xf0, 0xff, 0xf 0, | 0x80, 0x00, 0xc0, 0x00, 0xe0, 0x00, 0xf0, 0x00, 0xff, 0xf0, 0xff, 0xf 0, | |||
0xfb, 0xf0, 0xf9, 0xf0, 0xf8, 0xf0, 0xf8, 0x70, 0xf8, 0x30, 0xff, 0xf 0, | 0xfb, 0xf0, 0xf9, 0xf0, 0xf8, 0xf0, 0xf8, 0x70, 0xf8, 0x30, 0xff, 0xf 0, | |||
0xff, 0xf8, 0xff, 0xfc, 0xff, 0xfe, 0xff, 0xff | 0xff, 0xf8, 0xff, 0xfc, 0xff, 0xfe, 0xff, 0xff | |||
}, //25 | }, //25 | |||
}; | }; | |||
#else | #else | |||
const char gStipples[26][32] = { | const unsigned char gStipples[26][32] = { | |||
{ | { | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55 | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55 | |||
}, //0 | }, //0 | |||
{ | { | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55, | |||
~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55 | ~0xaa, ~0xaa, ~0x55, ~0x55, ~0xaa, ~0xaa, ~0x55, ~0x55 | |||
}, //1 | }, //1 | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 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.26/00" | #define ROOT_RELEASE "5.27/02" | |||
#define ROOT_RELEASE_DATE "Dec 14 2009" | #define ROOT_RELEASE_DATE "Apr 26 2010" | |||
#define ROOT_RELEASE_TIME "15:43:39" | #define ROOT_RELEASE_TIME "20:00:41" | |||
#define ROOT_SVN_REVISION 31878 | #define ROOT_SVN_REVISION 33224 | |||
#define ROOT_SVN_BRANCH "trunk" | #define ROOT_SVN_BRANCH "trunk" | |||
#define ROOT_VERSION_CODE 334336 | #define ROOT_VERSION_CODE 334594 | |||
#define ROOT_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) | #define ROOT_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 | |||
RooAdaptiveIntegratorND.h | RooAdaptiveIntegratorND.h | |||
---|---|---|---|---|
/************************************************************************** *** | /************************************************************************** *** | |||
* Project: RooFit * | * Project: RooFit * | |||
* Package: RooFitCore * | * Package: RooFitCore * | |||
* File: $Id: RooAdaptiveIntegratorND.h 30333 2009-09-21 15:39:17Z woute r $ | * File: $Id: RooAdaptiveIntegratorND.h 32337 2010-02-12 16:09:35Z pcana l $ | |||
* 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) * | |||
************************************************************************** ***/ | ************************************************************************** ***/ | |||
#ifndef ROO_ADAPTIVE_INTEGRATOR_ND | #ifndef ROO_ADAPTIVE_INTEGRATOR_ND | |||
#define ROO_ADAPTIVE_INTEGRATOR_ND | #define ROO_ADAPTIVE_INTEGRATOR_ND | |||
#include "RooAbsIntegrator.h" | #include "RooAbsIntegrator.h" | |||
#include "RooNumIntConfig.h" | #include "RooNumIntConfig.h" | |||
#include "TString.h" | #include "TString.h" | |||
namespace ROOT { namespace Math { class AdaptiveIntegratorMultiDim ; } } ; | namespace ROOT { namespace Math { class AdaptiveIntegratorMultiDim ; } } | |||
class RooMultiGenFunction ; | class RooMultiGenFunction ; | |||
class RooAdaptiveIntegratorND : public RooAbsIntegrator { | class RooAdaptiveIntegratorND : public RooAbsIntegrator { | |||
public: | public: | |||
// Constructors, assignment etc | // Constructors, assignment etc | |||
RooAdaptiveIntegratorND() ; | RooAdaptiveIntegratorND() ; | |||
RooAdaptiveIntegratorND(const RooAbsFunc& function, const RooNumIntConfig & config) ; | RooAdaptiveIntegratorND(const RooAbsFunc& function, const RooNumIntConfig & config) ; | |||
virtual RooAbsIntegrator* clone(const RooAbsFunc& function, const RooNumI ntConfig& config) const ; | virtual RooAbsIntegrator* clone(const RooAbsFunc& function, const RooNumI ntConfig& config) const ; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
RooCintUtils.h | RooCintUtils.h | |||
---|---|---|---|---|
/************************************************************************** *** | /************************************************************************** *** | |||
* Project: RooFit * | * Project: RooFit * | |||
* Package: RooFitCore * | * Package: RooFitCore * | |||
* File: $Id: RooCintUtils.h 30333 2009-09-21 15:39:17Z wouter $ | * File: $Id: RooCintUtils.h 32337 2010-02-12 16:09:35Z pcanal $ | |||
* 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 32 | skipping to change at line 32 | |||
namespace RooCintUtils { | namespace RooCintUtils { | |||
std::pair<std::list<std::string>,unsigned int> ctorArgs(const char* class name, UInt_t nMinArgs=0) ; | std::pair<std::list<std::string>,unsigned int> ctorArgs(const char* class name, UInt_t nMinArgs=0) ; | |||
Bool_t isEnum(const char* typeName) ; | Bool_t isEnum(const char* typeName) ; | |||
Bool_t isValidEnumValue(const char* typeName, const char* value) ; | Bool_t isValidEnumValue(const char* typeName, const char* value) ; | |||
const char* functionName(void* func) ; | const char* functionName(void* func) ; | |||
Bool_t matchFuncPtrArgs(void* func, const char* args) ; | Bool_t matchFuncPtrArgs(void* func, const char* args) ; | |||
Bool_t isTypeDef(const char* trueName, const char* aliasName) ; | Bool_t isTypeDef(const char* trueName, const char* aliasName) ; | |||
std::string trueName(const char* typeDefName) ; | std::string trueName(const char* typeDefName) ; | |||
}; | } | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
Rtypes.h | Rtypes.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: Rtypes.h 30773 2009-10-16 15:10:47Z rdm $ */ | /* @(#)root/base:$Id: Rtypes.h 32142 2010-01-28 17:40:53Z 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_Rtypes | #ifndef ROOT_Rtypes | |||
skipping to change at line 143 | skipping to change at line 143 | |||
const Int_t kMinShort = -kMaxShort - 1; | const Int_t kMinShort = -kMaxShort - 1; | |||
const UInt_t kMaxUInt = UInt_t(~0); | const UInt_t kMaxUInt = UInt_t(~0); | |||
const Int_t kMaxInt = Int_t(kMaxUInt >> 1); | const Int_t kMaxInt = Int_t(kMaxUInt >> 1); | |||
const Int_t kMinInt = -kMaxInt - 1; | const Int_t kMinInt = -kMaxInt - 1; | |||
const ULong_t kMaxULong = ULong_t(~0); | const ULong_t kMaxULong = ULong_t(~0); | |||
const Long_t kMaxLong = Long_t(kMaxULong >> 1); | const Long_t kMaxLong = Long_t(kMaxULong >> 1); | |||
const Long_t kMinLong = -kMaxLong - 1; | const Long_t kMinLong = -kMaxLong - 1; | |||
const ULong64_t kMaxULong64 = ULong64_t(~R__LL(0)); | const ULong64_t kMaxULong64 = ULong64_t(~0LL); | |||
const Long64_t kMaxLong64 = Long64_t(kMaxULong64 >> 1); | const Long64_t kMaxLong64 = Long64_t(kMaxULong64 >> 1); | |||
const Long64_t kMinLong64 = -kMaxLong64 - 1; | const Long64_t kMinLong64 = -kMaxLong64 - 1; | |||
const size_t kBitsPerByte = 8; | const size_t kBitsPerByte = 8; | |||
const Ssiz_t kNPOS = ~(Ssiz_t)0; | const Ssiz_t kNPOS = ~(Ssiz_t)0; | |||
//--- bit manipulation ---------------------------------------------------- ----- | //--- bit manipulation ---------------------------------------------------- ----- | |||
#define BIT(n) (R__ULL(1) << (n)) | #define BIT(n) (1ULL << (n)) | |||
#define SETBIT(n,i) ((n) |= BIT(i)) | #define SETBIT(n,i) ((n) |= BIT(i)) | |||
#define CLRBIT(n,i) ((n) &= ~BIT(i)) | #define CLRBIT(n,i) ((n) &= ~BIT(i)) | |||
#define TESTBIT(n,i) ((Bool_t)(((n) & BIT(i)) != 0)) | #define TESTBIT(n,i) ((Bool_t)(((n) & BIT(i)) != 0)) | |||
//---- debug global ------------------------------------------------------- ----- | //---- debug global ------------------------------------------------------- ----- | |||
R__EXTERN Int_t gDebug; | R__EXTERN Int_t gDebug; | |||
//---- ClassDef macros ---------------------------------------------------- ----- | //---- ClassDef macros ---------------------------------------------------- ----- | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
RtypesCint.h | RtypesCint.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: RtypesCint.h 20877 2007-11-19 11:17:07Z rdm $*/ | /* @(#)root/base:$Id: RtypesCint.h 33054 2010-04-15 16:47:24Z 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_RtypesCint | #ifndef ROOT_RtypesCint | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
Scope.h | Scope.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: Scope.h 29355 2009-07-06 17:34:05Z axel $ | // @(#)root/reflex:$Id: Scope.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_Scope | #ifndef Reflex_Scope | |||
#define Reflex_Scope | #define Reflex_Scope | |||
skipping to change at line 1262 | skipping to change at line 1262 | |||
return fScopeName->fScopeBase->MemberTemplate_REnd(); | return fScopeName->fScopeBase->MemberTemplate_REnd(); | |||
} | } | |||
return Dummy::MemberTemplateCont().rend(); | return Dummy::MemberTemplateCont().rend(); | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline const char* | inline const char* | |||
Reflex::Scope::Name_c_str() const { | Reflex::Scope::Name_c_str() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if (fScopeName) { | if (fScopeName) { | |||
return fScopeName->Name_c_str(); | return fScopeName->Name(); | |||
} | } | |||
return ""; | return ""; | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline Reflex::PropertyList | inline Reflex::PropertyList | |||
Reflex::Scope::Properties() const { | Reflex::Scope::Properties() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if (*this) { | if (*this) { | |||
return fScopeName->fScopeBase->Properties(); | return fScopeName->fScopeBase->Properties(); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
ScopeBase.h | ScopeBase.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: ScopeBase.h 29355 2009-07-06 17:34:05Z axel $ | // @(#)root/reflex:$Id: ScopeBase.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_ScopeBase | #ifndef Reflex_ScopeBase | |||
#define Reflex_ScopeBase | #define Reflex_ScopeBase | |||
skipping to change at line 336 | skipping to change at line 336 | |||
/** | /** | |||
* SimpleName returns the name of the type as a reference. It provides a | * SimpleName returns the name of the type as a reference. It provides a | |||
* simplified but faster generation of a type name. Attention currently it | * simplified but faster generation of a type name. Attention currently it | |||
* is not guaranteed that Name() and SimpleName() return the same charac ter | * is not guaranteed that Name() and SimpleName() return the same charac ter | |||
* layout of a name (ie. spacing, commas, etc. ) | * layout of a name (ie. spacing, commas, etc. ) | |||
* @param pos will indicate where in the returned reference the requeste d name starts | * @param pos will indicate where in the returned reference the requeste d name starts | |||
* @param mod The only 'mod' support is SCOPED | * @param mod The only 'mod' support is SCOPED | |||
* @return name of type | * @return name of type | |||
*/ | */ | |||
virtual const std::string& SimpleName(size_t& pos, | virtual const char* SimpleName(size_t& pos, | |||
unsigned int mod = 0) const; | unsigned int mod = 0) const; | |||
/** | /** | |||
* Properties will return a pointer to the PropertyNth list attached | * Properties will return a pointer to the PropertyNth list attached | |||
* to this item | * to this item | |||
* @return pointer to PropertyNth list | * @return pointer to PropertyNth list | |||
*/ | */ | |||
virtual PropertyList Properties() const; | virtual PropertyList Properties() const; | |||
/** | /** | |||
* At will return the At Object of this ScopeBase | * At will return the At Object of this ScopeBase | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
ScopeName.h | ScopeName.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: ScopeName.h 29288 2009-07-01 13:03:35Z axel $ | // @(#)root/reflex:$Id: ScopeName.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_ScopeName | #ifndef Reflex_ScopeName | |||
#define Reflex_ScopeName | #define Reflex_ScopeName | |||
// Include files | // Include files | |||
#include "Reflex/Kernel.h" | #include "Reflex/Kernel.h" | |||
#include <string> | #include "Reflex/internal/LiteralString.h" | |||
namespace Reflex { | namespace Reflex { | |||
// forward declarations | // forward declarations | |||
class ScopeBase; | class ScopeBase; | |||
class Scope; | class Scope; | |||
/** | /** | |||
* @class ScopeName ScopeName.h Reflex/ScopeName.h | * @class ScopeName ScopeName.h Reflex/ScopeName.h | |||
* @author Stefan Roiser | * @author Stefan Roiser | |||
* @date 24/11/2003 | * @date 24/11/2003 | |||
skipping to change at line 70 | skipping to change at line 70 | |||
/** | /** | |||
* Un-Hide this scope from any lookup by removing the string " @HIDDEN@" to its name. | * Un-Hide this scope from any lookup by removing the string " @HIDDEN@" to its name. | |||
*/ | */ | |||
void UnhideName(); | void UnhideName(); | |||
/** | /** | |||
* Name will return a string representation of Name of the Scope | * Name will return a string representation of Name of the Scope | |||
* @return string representation of the Scope | * @return string representation of the Scope | |||
*/ | */ | |||
const std::string& Name() const; | const char* Name() const; | |||
/** | /** | |||
* Name_c_str returns a char* pointer to the qualified Scope Name | * Name will return a string representation of Name of the Scope | |||
* @return c string to unqualified Scope Name | * @return string representation of the Scope | |||
*/ | ||||
const LiteralString& LiteralName() const { return fName; } | ||||
/** | ||||
* Name will return a string representation of Name of the Scope | ||||
* @return string representation of the Scope | ||||
*/ | */ | |||
const char* Name_c_str() const; | LiteralString& LiteralName() { return fName; } | |||
/** | /** | |||
* ThisScope will return the unqualified Scope object of this ScopeName | * ThisScope will return the unqualified Scope object of this ScopeName | |||
* @return corresponding Scope | * @return corresponding Scope | |||
*/ | */ | |||
Scope ThisScope() const; | Scope ThisScope() const; | |||
/** | /** | |||
* Unload reflection information for this scope. | ||||
*/ | ||||
void Unload(); | ||||
/** | ||||
* ScopeAt will return the nth defined scope | * ScopeAt will return the nth defined scope | |||
* @param nth scope defined in the system | * @param nth scope defined in the system | |||
* @return nth scope defined in the system | * @return nth scope defined in the system | |||
*/ | */ | |||
static Scope ScopeAt(size_t nth); | static Scope ScopeAt(size_t nth); | |||
/** | /** | |||
* ScopeSize will return the number of currently defined scopes | * ScopeSize will return the number of currently defined scopes | |||
* (resolved and unresolved ones) | * (resolved and unresolved ones) | |||
* @return number of currently defined scopes | * @return number of currently defined scopes | |||
skipping to change at line 109 | skipping to change at line 120 | |||
static Scope_Iterator Scope_End(); | static Scope_Iterator Scope_End(); | |||
static Reverse_Scope_Iterator Scope_RBegin(); | static Reverse_Scope_Iterator Scope_RBegin(); | |||
static Reverse_Scope_Iterator Scope_REnd(); | static Reverse_Scope_Iterator Scope_REnd(); | |||
private: | private: | |||
/** destructor */ | /** destructor */ | |||
~ScopeName(); | ~ScopeName(); | |||
private: | private: | |||
/** pointer to the Name of the At in the static map */ | /** pointer to the Name of the At in the static map */ | |||
std::string fName; | LiteralString fName; | |||
/** | /** | |||
* pointer to the resolved Scope | * pointer to the resolved Scope | |||
* @label scope base | * @label scope base | |||
* @link aggregation | * @link aggregation | |||
* @supplierCardinality 0..1 | * @supplierCardinality 0..1 | |||
* @clientCardinality 1 | * @clientCardinality 1 | |||
*/ | */ | |||
mutable | mutable | |||
ScopeBase * fScopeBase; | ScopeBase * fScopeBase; | |||
/** | /** | |||
* This scope | * This scope | |||
*/ | */ | |||
Scope* fThisScope; | Scope* fThisScope; | |||
}; // class ScopeName | }; // class ScopeName | |||
} // namespace Reflex | } // namespace Reflex | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline const std::string& | ||||
Reflex::ScopeName::Name() const { | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
return fName; | ||||
} | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
inline const char* | inline const char* | |||
Reflex::ScopeName::Name_c_str() const { | Reflex::ScopeName::Name() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
return fName.c_str(); | return fName.c_str(); | |||
} | } | |||
#endif //Reflex_ScopeName | #endif //Reflex_ScopeName | |||
End of changes. 10 change blocks. | ||||
18 lines changed or deleted | 20 lines changed or added | |||
Shadow.h | Shadow.h | |||
---|---|---|---|---|
skipping to change at line 48 | skipping to change at line 48 | |||
static bool NeedShadowClass(G__ClassInfo& cl); | static bool NeedShadowClass(G__ClassInfo& cl); | |||
G__ShadowMaker(std::ostream& out, const char* nsprefix, | G__ShadowMaker(std::ostream& out, const char* nsprefix, | |||
bool(*needShadowClass)(G__ClassInfo &cl)=G__ShadowMaker::NeedShadowCl ass, | bool(*needShadowClass)(G__ClassInfo &cl)=G__ShadowMaker::NeedShadowCl ass, | |||
bool(*needTypedefShadow)(G__ClassInfo &cl)=0); | bool(*needTypedefShadow)(G__ClassInfo &cl)=0); | |||
void WriteAllShadowClasses(); | void WriteAllShadowClasses(); | |||
void WriteShadowClass(G__ClassInfo &cl, int level = 0); | void WriteShadowClass(G__ClassInfo &cl, int level = 0); | |||
int WriteNamespaceHeader(G__ClassInfo &cl); | int WriteNamespaceHeader(G__ClassInfo &cl); | |||
int NeedShadowCached(int tagnum) { return fCacheNeedShadow[tagnum]; } | char NeedShadowCached(int tagnum); | |||
static bool IsSTLCont(const char *type); | static bool IsSTLCont(const char *type); | |||
static bool IsStdPair(G__ClassInfo &cl); | static bool IsStdPair(G__ClassInfo &cl); | |||
static void GetFullyQualifiedName(const char *originalName, std::string &fullyQualifiedName); | static void GetFullyQualifiedName(const char *originalName, std::string &fullyQualifiedName); | |||
static void GetFullyQualifiedName(G__ClassInfo &cl, std::string &fullyQu alifiedName); | static void GetFullyQualifiedName(G__ClassInfo &cl, std::string &fullyQu alifiedName); | |||
static void GetFullyQualifiedName(G__TypeInfo &type, std::string &fullyQ ualifiedName); | static void GetFullyQualifiedName(G__TypeInfo &type, std::string &fullyQ ualifiedName); | |||
static std::string GetNonConstTypeName(G__DataMemberInfo &m, bool fullyQ ualified = false); | static std::string GetNonConstTypeName(G__DataMemberInfo &m, bool fullyQ ualified = false); | |||
void GetFullShadowName(G__ClassInfo &cl, std::string &fullname); | void GetFullShadowName(G__ClassInfo &cl, std::string &fullname); | |||
static void VetoShadow(bool veto=true); | static void VetoShadow(bool veto=true); | |||
private: | private: | |||
G__ShadowMaker(const G__ShadowMaker&); // intentionally not implemented | G__ShadowMaker(const G__ShadowMaker&); // intentionally not implemented | |||
G__ShadowMaker& operator =(const G__ShadowMaker&); // intentionally not implemented | G__ShadowMaker& operator =(const G__ShadowMaker&); // intentionally not implemented | |||
void GetFullShadowNameRecurse(G__ClassInfo &cl, std::string &fullname); | void GetFullShadowNameRecurse(G__ClassInfo &cl, std::string &fullname); | |||
void UpdateCachedNeedShadow(); | ||||
#ifndef __CINT__ | #ifndef __CINT__ | |||
std::ostream& fOut; // where to write to | std::ostream& fOut; // where to write to | |||
#endif | #endif | |||
std::string fNSPrefix; // shadow classes are in this namespace's namespa ce "Shadow" | std::string fNSPrefix; // shadow classes are in this namespace's namespa ce "Shadow" | |||
char fCacheNeedShadow[G__MAXSTRUCT]; // whether we need a shadow for a t agnum | char fCacheNeedShadow[G__MAXSTRUCT]; // whether we need a shadow for a t agnum | |||
static bool fgVetoShadow; // whether WritaAllShadowClasses should write | int fMaxCachedNeedShadow; // Up to where in G__struct did we calculate t | |||
the shadow | he value. | |||
bool (*fNeedShadowClass)(G__ClassInfo &cl); // func deciding whether the | ||||
shadow is a tyepdef | ||||
bool (*fNeedTypedefShadow)(G__ClassInfo &cl); // func deciding whether t he shadow is a tyepdef | bool (*fNeedTypedefShadow)(G__ClassInfo &cl); // func deciding whether t he shadow is a tyepdef | |||
static bool fgVetoShadow; // whether WritaAllShadowClasses should write | ||||
the shadow | ||||
}; | }; | |||
} // end namespace Cint | } // end namespace Cint | |||
using namespace Cint; | using namespace Cint; | |||
#endif // G__SHADOW_H | #endif // G__SHADOW_H | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 11 lines changed or added | |||
TBaseClass.h | TBaseClass.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TBaseClass.h 26606 2008-12-02 20:36:09Z pcanal $ | // @(#)root/meta:$Id: TBaseClass.h 32336 2010-02-12 15:03:23Z pcanal $ | |||
// Author: Fons Rademakers 08/02/95 | // Author: Fons Rademakers 08/02/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 26 | skipping to change at line 26 | |||
// // | // // | |||
// TBaseClass // | // TBaseClass // | |||
// // | // // | |||
// Description of a base class. // | // Description of a base class. // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TDictionary | #ifndef ROOT_TDictionary | |||
#include "TDictionary.h" | #include "TDictionary.h" | |||
#endif | #endif | |||
#ifndef ROOT_TClassRef | ||||
#include "TClassRef.h" | ||||
#endif | ||||
class TBrowser; | class TBrowser; | |||
class TClass; | class TClass; | |||
class TBaseClass : public TDictionary { | class TBaseClass : public TDictionary { | |||
private: | private: | |||
TBaseClass(const TBaseClass &); // Not implemented | TBaseClass(const TBaseClass &); // Not implemented | |||
TBaseClass&operator=(const TBaseClass&); // Not implemented | TBaseClass&operator=(const TBaseClass&); // Not implemented | |||
private: | private: | |||
BaseClassInfo_t *fInfo; //pointer to CINT base class info | BaseClassInfo_t *fInfo; //pointer to CINT base class info | |||
TClass *fClassPtr; //pointer to the base class TClass | TClassRef fClassPtr; //pointer to the base class TClass | |||
TClass *fClass; //pointer to parent class | TClass *fClass; //pointer to parent class | |||
public: | public: | |||
TBaseClass(BaseClassInfo_t *info = 0, TClass *cl = 0); | TBaseClass(BaseClassInfo_t *info = 0, TClass *cl = 0); | |||
virtual ~TBaseClass(); | virtual ~TBaseClass(); | |||
virtual void Browse(TBrowser *b); | virtual void Browse(TBrowser *b); | |||
const char *GetTitle() const; | const char *GetTitle() const; | |||
TClass *GetClassPointer(Bool_t load=kTRUE); | TClass *GetClassPointer(Bool_t load=kTRUE); | |||
Int_t GetDelta() const; | Int_t GetDelta() const; | |||
Bool_t IsFolder() const {return kTRUE;} | Bool_t IsFolder() const {return kTRUE;} | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 5 lines changed or added | |||
TBranch.h | TBranch.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TBranch.h 29934 2009-08-27 13:54:34Z brun $ | // @(#)root/tree:$Id: TBranch.h 33097 2010-04-19 21:47:55Z 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 65 | skipping to change at line 65 | |||
enum { kAutoDelete = BIT(15) }; | enum { kAutoDelete = BIT(15) }; | |||
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 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 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 | |||
skipping to change at line 88 | skipping to change at line 89 | |||
Long64_t *fBasketSeek; //[fMaxBaskets] Addresses of baskets on fi le | Long64_t *fBasketSeek; //[fMaxBaskets] Addresses of baskets on fi le | |||
TTree *fTree; //! Pointer to Tree header | TTree *fTree; //! Pointer to Tree header | |||
TBranch *fMother; //! Pointer to top-level parent branch in the tree. | TBranch *fMother; //! Pointer to top-level parent branch in the tree. | |||
TBranch *fParent; //! Pointer to parent branch. | TBranch *fParent; //! Pointer to parent branch. | |||
char *fAddress; //! Address of 1st leaf (variable or objec t) | char *fAddress; //! Address of 1st leaf (variable or objec t) | |||
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 b e unziped. | Bool_t fSkipZip; //! After being read, the buffer will not be unziped. | |||
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); | |||
Int_t WriteBasket(TBasket* basket, Int_t where); | Int_t WriteBasket(TBasket* basket, Int_t where); | |||
TString GetRealFileName() const; | TString GetRealFileName() const; | |||
private: | private: | |||
TBranch(const TBranch&); // not implemented | TBranch(const TBranch&); // not implemented | |||
skipping to change at line 183 | skipping to change at line 184 | |||
virtual void SetBufferAddress(TBuffer *entryBuffer); | virtual void SetBufferAddress(TBuffer *entryBuffer); | |||
virtual void SetCompressionLevel(Int_t level=1); | virtual void SetCompressionLevel(Int_t level=1); | |||
virtual void SetEntries(Long64_t entries); | virtual void SetEntries(Long64_t entries); | |||
virtual void SetEntryOffsetLen(Int_t len, Bool_t updateSubBranches = kFALSE); | virtual void SetEntryOffsetLen(Int_t len, Bool_t updateSubBranches = kFALSE); | |||
virtual void SetFirstEntry( Long64_t entry ); | virtual void SetFirstEntry( Long64_t entry ); | |||
virtual void SetFile(TFile *file=0); | virtual void SetFile(TFile *file=0); | |||
virtual void SetFile(const char *filename); | virtual void SetFile(const char *filename); | |||
virtual void SetOffset(Int_t offset=0) {fOffset=offset;} | virtual void SetOffset(Int_t offset=0) {fOffset=offset;} | |||
virtual void SetTree(TTree *tree) { fTree = tree;} | virtual void SetTree(TTree *tree) { fTree = tree;} | |||
virtual void UpdateAddress() {;} | virtual void UpdateAddress() {;} | |||
virtual void UpdateFile(); | ||||
static void ResetCount(); | static void ResetCount(); | |||
ClassDef(TBranch,12); //Branch descriptor | ClassDef(TBranch,12); //Branch descriptor | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TBranchClones.h | TBranchClones.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TBranchClones.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/tree:$Id: TBranchClones.h 33097 2010-04-19 21:47:55Z 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 59 | skipping to change at line 59 | |||
virtual void Browse(TBrowser *b); | virtual void Browse(TBrowser *b); | |||
virtual Int_t Fill(); | virtual Int_t Fill(); | |||
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 GetN() const {return fN;} | virtual Int_t GetN() const {return fN;} | |||
TClonesArray *GetList() const {return fList;} | TClonesArray *GetList() const {return fList;} | |||
Bool_t IsFolder() const {return kTRUE;} | Bool_t IsFolder() const {return kTRUE;} | |||
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 *add); | virtual void SetAddress(void *add); | |||
virtual void SetBasketSize(Int_t buffsize); | virtual void SetBasketSize(Int_t buffsize); | |||
virtual void UpdateFile(); | ||||
ClassDef(TBranchClones,2); //Branch in case of an array of clone object s | ClassDef(TBranchClones,2); //Branch in case of an array of clone object s | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TBranchElement.h | TBranchElement.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TBranchElement.h 31170 2009-11-13 20:21:56Z pcanal $ | // @(#)root/tree:$Id: TBranchElement.h 33097 2010-04-19 21:47:55Z 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 164 | skipping to change at line 164 | |||
virtual void SetAddress(void* addobj); | virtual void SetAddress(void* addobj); | |||
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; } | |||
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 SetTargetClassName(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(); | ||||
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() : ""; | |||
} | } | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TBranchProxyDirector.h | TBranchProxyDirector.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TBranchProxyDirector.h 27129 2009-01-13 08:22:29Z pca nal $ | // @(#)root/base:$Id: TBranchProxyDirector.h 32218 2010-02-04 22:29:43Z pca nal $ | |||
// Author: Philippe Canal 13/05/2003 | // Author: Philippe Canal 13/05/2003 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2004, Rene Brun, Fons Rademakers and al. * | * Copyright (C) 1995-2004, Rene Brun, Fons Rademakers and al. * | |||
* 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_TBranchProxyDirector | #ifndef ROOT_TBranchProxyDirector | |||
#define ROOT_TBranchProxyDirector | #define ROOT_TBranchProxyDirector | |||
#ifndef ROOT_TTree | #ifndef ROOT_Rtypes | |||
#include "TTree.h" | #include "Rtypes.h" | |||
#endif | #endif | |||
#include <list> | #include <list> | |||
#ifdef R__OLDHPACC | #ifdef R__OLDHPACC | |||
namespace std { | namespace std { | |||
using ::list; | using ::list; | |||
} | } | |||
#endif | #endif | |||
class TH1F; | ||||
class TTree; | ||||
namespace ROOT { | namespace ROOT { | |||
class TBranchProxy; | class TBranchProxy; | |||
class TFriendProxy; | class TFriendProxy; | |||
class TBranchProxyDirector { | class TBranchProxyDirector { | |||
//This class could actually be the selector itself. | //This class could actually be the selector itself. | |||
TTree *fTree; // TTree we are currently looking at. | TTree *fTree; // TTree we are currently looking at. | |||
Long64_t fEntry; // Entry currently being read. | Long64_t fEntry; // Entry currently being read. | |||
skipping to change at line 47 | skipping to change at line 52 | |||
public: | public: | |||
TBranchProxyDirector(TTree* tree, Long64_t i); | TBranchProxyDirector(TTree* tree, Long64_t i); | |||
TBranchProxyDirector(TTree* tree, Int_t i); // cint has (had?) a problem casting int to long long | TBranchProxyDirector(TTree* tree, Int_t i); // cint has (had?) a problem casting int to long long | |||
TBranchProxyDirector(const TBranchProxyDirector &) {;} | TBranchProxyDirector(const TBranchProxyDirector &) {;} | |||
TBranchProxyDirector& operator=(const TBranchProxyDirector&) {return *this;} | TBranchProxyDirector& operator=(const TBranchProxyDirector&) {return *this;} | |||
void Attach(TBranchProxy* p); | void Attach(TBranchProxy* p); | |||
void Attach(TFriendProxy* f); | void Attach(TFriendProxy* f); | |||
TH1F* CreateHistogram(const char *options); | ||||
Long64_t GetReadEntry() const { return fEntry; } | Long64_t GetReadEntry() const { return fEntry; } | |||
TTree* GetTree() const { return fTree; }; | TTree* GetTree() const { return fTree; }; | |||
// void Print(); | // void Print(); | |||
void SetReadEntry(Long64_t entry); | void SetReadEntry(Long64_t entry); | |||
TTree* SetTree(TTree *newtree); | TTree* SetTree(TTree *newtree); | |||
}; | }; | |||
} /* namespace ROOT */ | } /* namespace ROOT */ | |||
End of changes. 6 change blocks. | ||||
3 lines changed or deleted | 9 lines changed or added | |||
TCint.h | TCint.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TCint.h 30549 2009-10-04 01:40:54Z rdm $ | // @(#)root/meta:$Id: TCint.h 32842 2010-03-30 21:49:27Z 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 31 | skipping to change at line 31 | |||
// // | // // | |||
// CINT is an almost full ANSI compliant C/C++ interpreter. // | // CINT is an almost full ANSI compliant C/C++ interpreter. // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TInterpreter | #ifndef ROOT_TInterpreter | |||
#include "TInterpreter.h" | #include "TInterpreter.h" | |||
#endif | #endif | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
# ifdef R__BUILDING_CINT7 | # include "G__ci.h" | |||
# include "cint7/G__ci.h" | # include "Api.h" | |||
# include "cint7/Api.h" | ||||
# else | ||||
# include "G__ci.h" | ||||
# include "Api.h" | ||||
# endif | ||||
#else | #else | |||
struct G__dictposition; | struct G__dictposition; | |||
#endif | #endif | |||
#ifndef WIN32 | #ifndef WIN32 | |||
# define TWin32SendClass char | # define TWin32SendClass char | |||
#endif | #endif | |||
namespace Cint { | namespace Cint { | |||
class G__ClassInfo; | class G__ClassInfo; | |||
} | } | |||
using namespace Cint; | using namespace Cint; | |||
class TMethod; | class TMethod; | |||
class TObjArray; | class TObjArray; | |||
class TEnv; | class TEnv; | |||
class TCint : public TInterpreter { | class TCint : public TInterpreter { | |||
private: | private: | |||
Int_t fMore; //1 if more input is required | Int_t fMore; //1 if more input is required | |||
Int_t fExitCode; //value passed to exit() in interpreter | Int_t fExitCode; //value passed to exit() in interprete | |||
char fPrompt[64]; //proposed prompt string | r | |||
G__dictposition fDictPos; //CINT dictionary context after init | char fPrompt[64]; //proposed prompt string | |||
G__dictposition fDictPosGlobals; //CINT dictionary context after ResetGl | G__dictposition fDictPos; //CINT dictionary context after init | |||
obals() | G__dictposition fDictPosGlobals; //CINT dictionary context after ResetG | |||
TString fSharedLibs; //list of shared libraries loaded by G_ | lobals() | |||
_loadfile | TString fSharedLibs; //list of shared libraries loaded by G | |||
TString fIncludePath; //list of CINT include paths | __loadfile | |||
TString fRootmapLoadPath;//dynamic load path used for loading ro | Int_t fSharedLibsSerial;//Indicator of the last time we set fS | |||
otmap files | haredLibs | |||
TEnv *fMapfile; //map of classes and libraries | TString fIncludePath; //list of CINT include paths | |||
TObjArray *fRootmapFiles; //list of non-default rootmap files loa | TString fRootmapLoadPath; //dynamic load path used for loading r | |||
ded | ootmap files | |||
Bool_t fLockProcessLine;//true if ProcessLine should lock gCINT | TEnv *fMapfile; //map of classes and libraries | |||
Mutex | TObjArray *fRootmapFiles; //list of non-default rootmap files lo | |||
static void *fgSetOfSpecials; //set of TObject*s used in CINT variabl | aded | |||
es | Bool_t fLockProcessLine; //true if ProcessLine should lock gCIN | |||
TMutex | ||||
static void *fgSetOfSpecials; //set of TObject*s used in CINT variab | ||||
les | ||||
TCint() : fMore(-1), fExitCode(0), fDictPos(), fDictPosGlobals(), | TCint() : fMore(-1), fExitCode(0), fDictPos(), fDictPosGlobals(), | |||
fSharedLibs(), fIncludePath(), fRootmapLoadPath(), fMapfile(0), | fSharedLibs(), fIncludePath(), fRootmapLoadPath(), fMapfile(0), | |||
fRootmapFiles(0), fLockProcessLine(kFALSE) { } //for Dictionary() onl y | fRootmapFiles(0), fLockProcessLine(kFALSE) { } //for Dictionary() onl y | |||
TCint(const TCint&); // not implemented | TCint(const TCint&); // not implemented | |||
TCint &operator=(const TCint&); // not implemented | TCint &operator=(const TCint&); // not implemented | |||
void Execute(TMethod *, TObjArray *, int * /*error*/ = 0) { } | void Execute(TMethod *, TObjArray *, int * /*error*/ = 0) { } | |||
protected: | protected: | |||
public: | public: | |||
TCint(const char *name, const char *title); | TCint(const char *name, const char *title); | |||
virtual ~TCint(); | virtual ~TCint(); | |||
void AddIncludePath(const char *path); | void AddIncludePath(const char *path); | |||
Int_t AutoLoad(const char *classname); | Int_t AutoLoad(const char *classname); | |||
void ClearFileBusy(); | void ClearFileBusy(); | |||
void ClearStack(); // Delete existing temporary values | void ClearStack(); // Delete existing temporary values | |||
void EnableWrappers(bool value=true); | ||||
void EnableAutoLoading(); | void EnableAutoLoading(); | |||
void EndOfLineAction(); | void EndOfLineAction(); | |||
Int_t GetExitCode() const { return fExitCode; } | Int_t GetExitCode() const { return fExitCode; } | |||
TEnv *GetMapfile() const { return fMapfile; } | TEnv *GetMapfile() const { return fMapfile; } | |||
Int_t GetMore() const { return fMore; } | Int_t GetMore() const { return fMore; } | |||
char *GetPrompt() { return fPrompt; } | char *GetPrompt() { return fPrompt; } | |||
const char *GetSharedLibs(); | const char *GetSharedLibs(); | |||
const char *GetClassSharedLibs(const char *cls); | const char *GetClassSharedLibs(const char *cls); | |||
const char *GetSharedLibDeps(const char *lib); | const char *GetSharedLibDeps(const char *lib); | |||
const char *GetIncludePath(); | const char *GetIncludePath(); | |||
End of changes. 4 change blocks. | ||||
27 lines changed or deleted | 24 lines changed or added | |||
TClass.h | TClass.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TClass.h 31472 2009-11-30 17:59:33Z pcanal $ | // @(#)root/meta:$Id: TClass.h 32644 2010-03-17 13:58:28Z 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 208 | skipping to change at line 208 | |||
TClass(const char *name, Version_t cversion, | TClass(const char *name, Version_t cversion, | |||
const type_info &info, TVirtualIsAProxy *isa, | const type_info &info, TVirtualIsAProxy *isa, | |||
ShowMembersFunc_t showmember, | ShowMembersFunc_t showmember, | |||
const char *dfil, const char *ifil, | const char *dfil, const char *ifil, | |||
Int_t dl, Int_t il, Bool_t silent = kFALSE); | Int_t dl, Int_t il, Bool_t silent = kFALSE); | |||
virtual ~TClass(); | virtual ~TClass(); | |||
void AddInstance(Bool_t heap = kFALSE) { fInstanceCount++; if (heap) fOnHeap++; } | void AddInstance(Bool_t heap = kFALSE) { fInstanceCount++; if (heap) fOnHeap++; } | |||
void AddImplFile(const char *filename, int line); | void AddImplFile(const char *filename, int line); | |||
void AddRef(TClassRef *ref); | void AddRef(TClassRef *ref); | |||
static Bool_t AddRule(const char *rule); | ||||
static Int_t ReadRules(const char *filename); | ||||
static Int_t ReadRules(); | ||||
void AdoptSchemaRules( ROOT::TSchemaRuleSet *rules ); | void AdoptSchemaRules( ROOT::TSchemaRuleSet *rules ); | |||
virtual void Browse(TBrowser *b); | virtual void Browse(TBrowser *b); | |||
void BuildRealData(void *pointer=0, Bool_t isTransient = k FALSE); | void BuildRealData(void *pointer=0, Bool_t isTransient = k FALSE); | |||
void BuildEmulatedRealData(const char *name, Long_t offset , TClass *cl); | void BuildEmulatedRealData(const char *name, Long_t offset , TClass *cl); | |||
void CalculateStreamerOffset() const; | void CalculateStreamerOffset() const; | |||
Bool_t CallShowMembers(void* obj, TMemberInspector &insp, ch ar *parent, | Bool_t CallShowMembers(void* obj, TMemberInspector &insp, ch ar *parent, | |||
Int_t isATObject = -1) const; | Int_t isATObject = -1) const; | |||
Bool_t CanSplit() const; | Bool_t CanSplit() const; | |||
Bool_t CanIgnoreTObjectStreamer() { return TestBit(kIgnoreTO bjectStreamer);} | Bool_t CanIgnoreTObjectStreamer() { return TestBit(kIgnoreTO bjectStreamer);} | |||
TObject *Clone(const char *newname="") const; | TObject *Clone(const char *newname="") const; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TClassEdit.h | TClassEdit.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TClassEdit.h 28776 2009-06-02 15:16:39Z pcanal $ | // @(#)root/base:$Id: TClassEdit.h 33114 2010-04-20 19:03:33Z 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 35 | skipping to change at line 35 | |||
#endif | #endif | |||
// TClassEdit is used to manipulate class and type names. | // TClassEdit is used to manipulate class and type names. | |||
// | // | |||
// This class does not dependent on any other ROOT facility | // This class does not dependent on any other ROOT facility | |||
// so that it can be used by rootcint. | // so that it can be used by rootcint. | |||
namespace TClassEdit { | namespace TClassEdit { | |||
enum EModType { | enum EModType { | |||
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 | kDropAllDefault = 1<<7, /* Drop default template parameter even in | |||
non STL classes */ | non STL classes */ | |||
kLong64 = 1<<8 /* replace all 'long long' with Long64_t. * | ||||
/ | ||||
}; | }; | |||
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, | |||
kMultiSet = 7, | kMultiSet = 7, | |||
kBitSet = 8, | kBitSet = 8, | |||
kEnd = 9 | kEnd = 9 | |||
}; | }; | |||
struct TSplitType { | ||||
const char *fName; // Original spelling of the name. | ||||
std::vector<std::string> fElements; | ||||
int fNestedLocation; // Stores the location of the tail (nested names | ||||
) in nestedLoc (0 indicates no tail). | ||||
TSplitType(const char *type2split, EModType mode = TClassEdit::kNone) | ||||
; | ||||
int IsSTLCont(int testAlloc=0) const; | ||||
void ShortType(std::string &answer, int mode); | ||||
private: | ||||
TSplitType(const TSplitType&); // intentionally not implemented | ||||
}; | ||||
std::string CleanType (const char *typeDesc,int mode = 0,const char **ta il=0); | std::string CleanType (const char *typeDesc,int mode = 0,const char **ta il=0); | |||
bool IsDefAlloc(const char *alloc, const char *classname); | bool IsDefAlloc(const char *alloc, const char *classname); | |||
bool IsDefAlloc(const char *alloc, const char *keyclassname, cons t char *valueclassname); | bool IsDefAlloc(const char *alloc, const char *keyclassname, cons t char *valueclassname); | |||
bool IsDefComp (const char *comp , const char *classname); | bool IsDefComp (const char *comp , const char *classname); | |||
bool IsSTLBitset(const char *type); | bool IsSTLBitset(const char *type); | |||
int IsSTLCont (const char *type,int testAlloc=0); | int IsSTLCont (const char *type,int testAlloc=0); | |||
bool IsStdClass(const char *type); | bool IsStdClass(const char *type); | |||
bool IsVectorBool(const char *name); | bool IsVectorBool(const char *name); | |||
std::string GetLong64_Name(const std::string& original); | std::string GetLong64_Name(const std::string& original); | |||
int GetSplit (const char *type, std::vector<std::string> &outpu t, int &nestedLoc); | int GetSplit (const char *type, std::vector<std::string> &outpu t, int &nestedLoc, EModType mode = TClassEdit::kNone); | |||
int STLKind (const char *type); //Kind of stl container | int STLKind (const char *type); //Kind of stl container | |||
int STLArgs (int kind); //Min number of arguments w ithout allocator | int STLArgs (int kind); //Min number of arguments w ithout allocator | |||
std::string ResolveTypedef(const char *tname, bool resolveAll = false); | std::string ResolveTypedef(const char *tname, bool resolveAll = false); | |||
std::string ShortType (const char *typeDesc, int mode); | std::string ShortType (const char *typeDesc, int mode); | |||
std::string InsertStd(const char *tname); | std::string InsertStd(const char *tname); | |||
} | } | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 24 lines changed or added | |||
TCollectionProxyInfo.h | TCollectionProxyInfo.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TCollectionProxyInfo.h 31743 2009-12-09 19:08:37Z pca nal $ | // @(#)root/cont:$Id: TCollectionProxyInfo.h 32611 2010-03-15 15:26:56Z rdm $ | |||
// Author: Markus Frank 28/10/04. Philippe Canal 02/01/2007 | // Author: Markus Frank 28/10/04. Philippe Canal 02/01/2007 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 153 | skipping to change at line 153 | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
PCont_t c = PCont_t(e->fObject); | PCont_t c = PCont_t(e->fObject); | |||
#if 0 | #if 0 | |||
// Assume iterators do not need destruction | // Assume iterators do not need destruction | |||
::new(e->buff) Iter_t(c->begin()); | ::new(e->buff) Iter_t(c->begin()); | |||
#endif | #endif | |||
e->fIterator = c->begin(); | e->fIterator = c->begin(); | |||
e->fSize = c->size(); | e->fSize = c->size(); | |||
if ( 0 == e->fSize ) return e->fStart = 0; | if ( 0 == e->fSize ) return e->fStart = 0; | |||
TYPENAME T::const_reference ref = *(e->iter()); | TYPENAME T::const_reference ref = *(e->iter()); | |||
return e->fStart = address(ref); | return e->fStart = Type<T>::address(ref); | |||
} | } | |||
static void* next(void* env) { | static void* next(void* env) { | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
PCont_t c = PCont_t(e->fObject); | PCont_t c = PCont_t(e->fObject); | |||
for (; e->fIdx > 0 && e->iter() != c->end(); ++(e->iter()), --e->f Idx){ } | for (; e->fIdx > 0 && e->iter() != c->end(); ++(e->iter()), --e->f Idx){ } | |||
// TODO: Need to find something for going backwards.... | // TODO: Need to find something for going backwards.... | |||
if ( e->iter() == c->end() ) return 0; | if ( e->iter() == c->end() ) return 0; | |||
TYPENAME T::const_reference ref = *(e->iter()); | TYPENAME T::const_reference ref = *(e->iter()); | |||
return address(ref); | return Type<T>::address(ref); | |||
} | } | |||
static void* construct(void* env) { | static void* construct(void* env) { | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
PValue_t m = PValue_t(e->fStart); | PValue_t m = PValue_t(e->fStart); | |||
for (size_t i=0; i<e->fSize; ++i, ++m) | for (size_t i=0; i<e->fSize; ++i, ++m) | |||
::new(m) Value_t(); | ::new(m) Value_t(); | |||
return 0; | return 0; | |||
} | } | |||
static void* collect(void* env) { | static void* collect(void* env) { | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
skipping to change at line 216 | skipping to change at line 216 | |||
typedef typename T::value_type Value_t; | typedef typename T::value_type Value_t; | |||
typedef Environ<Iter_t> Env_t; | typedef Environ<Iter_t> Env_t; | |||
typedef Env_t *PEnv_t; | typedef Env_t *PEnv_t; | |||
typedef Cont_t *PCont_t; | typedef Cont_t *PCont_t; | |||
typedef Value_t *PValue_t; | typedef Value_t *PValue_t; | |||
static void* resize(void* env) { | static void* resize(void* env) { | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
PCont_t c = PCont_t(e->fObject); | PCont_t c = PCont_t(e->fObject); | |||
c->resize(e->fSize); | c->resize(e->fSize); | |||
e->fIdx = 0; | e->fIdx = 0; | |||
return e->fStart = e->fSize ? address(*c->begin()) : 0; | return e->fStart = e->fSize ? Type<T>::address(*c->begin()) : 0; | |||
} | } | |||
static void* feed(void* env) { | static void* feed(void* env) { | |||
PEnv_t e = PEnv_t(env); | PEnv_t e = PEnv_t(env); | |||
PCont_t c = PCont_t(e->fObject); | PCont_t c = PCont_t(e->fObject); | |||
PValue_t m = PValue_t(e->fStart); // Here start is actually a 'buf fer' outside the buffer. | PValue_t m = PValue_t(e->fStart); // Here start is actually a 'buf fer' outside the buffer. | |||
for (size_t i=0; i<e->fSize; ++i, ++m) | for (size_t i=0; i<e->fSize; ++i, ++m) | |||
c->push_back(*m); | c->push_back(*m); | |||
return 0; | return 0; | |||
} | } | |||
static int value_offset() { | static int value_offset() { | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
TCutG.h | TCutG.h | |||
---|---|---|---|---|
// @(#)root/graf:$Id: TCutG.h 29443 2009-07-11 10:49:10Z brun $ | // @(#)root/graf:$Id: TCutG.h 31952 2010-01-04 08:24:07Z brun $ | |||
// Author: Rene Brun 16/05/97 | // Author: Rene Brun 16/05/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 44 | skipping to change at line 44 | |||
TObject *fObjectX; //!pointer to an object corresponding to X | TObject *fObjectX; //!pointer to an object corresponding to X | |||
TObject *fObjectY; //!pointer to an object corresponding to Y | TObject *fObjectY; //!pointer to an object corresponding to Y | |||
public: | public: | |||
TCutG(); | TCutG(); | |||
TCutG(const TCutG &cutg); | TCutG(const TCutG &cutg); | |||
TCutG(const char *name, Int_t n); | TCutG(const char *name, Int_t n); | |||
TCutG(const char *name, Int_t n, const Float_t *x, const Float_t *y); | TCutG(const char *name, Int_t n, const Float_t *x, const Float_t *y); | |||
TCutG(const char *name, Int_t n, const Double_t *x, const Double_t *y); | TCutG(const char *name, Int_t n, const Double_t *x, const Double_t *y); | |||
virtual ~TCutG(); | virtual ~TCutG(); | |||
TObject *GetObjectX() const {return fObjectX;} | virtual Double_t Area() const; | |||
TObject *GetObjectY() const {return fObjectY;} | virtual void Center(Double_t &cx, Double_t &cy) const; | |||
const char *GetVarX() const {return fVarX.Data();} | TObject *GetObjectX() const {return fObjectX;} | |||
const char *GetVarY() const {return fVarY.Data();} | TObject *GetObjectY() const {return fObjectY;} | |||
Double_t IntegralHist(TH2 *h, Option_t *option="") const; | const char *GetVarX() const {return fVarX.Data();} | |||
virtual Int_t IsInside(Double_t x, Double_t y) const; | const char *GetVarY() const {return fVarY.Data();} | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual Double_t IntegralHist(TH2 *h, Option_t *option="") const; | |||
virtual void SetObjectX(TObject *obj) {fObjectX = obj;} | virtual Int_t IsInside(Double_t x, Double_t y) const; | |||
virtual void SetObjectY(TObject *obj) {fObjectY = obj;} | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetVarX(const char *varx); // *MENU* | virtual void SetObjectX(TObject *obj) {fObjectX = obj;} | |||
virtual void SetVarY(const char *vary); // *MENU* | virtual void SetObjectY(TObject *obj) {fObjectY = obj;} | |||
virtual void SetVarX(const char *varx); // *MENU* | ||||
virtual void SetVarY(const char *vary); // *MENU* | ||||
ClassDef(TCutG,2) // A Graphical cut. | ClassDef(TCutG,2) // A Graphical cut. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
12 lines changed or deleted | 14 lines changed or added | |||
TDSet.h | TDSet.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TDSet.h 23075 2008-04-09 09:10:25Z ganis $ | // @(#)root/proof:$Id: TDSet.h 33086 2010-04-18 18:15:56Z ganis $ | |||
// Author: Fons Rademakers 11/01/02 | // Author: Fons Rademakers 11/01/02 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 74 | skipping to change at line 74 | |||
#include <list> | #include <list> | |||
class TDSetElement : public TNamed { | class TDSetElement : public TNamed { | |||
public: | public: | |||
typedef std::list<std::pair<TDSetElement*, TString> > FriendsList_t; | typedef std::list<std::pair<TDSetElement*, TString> > FriendsList_t; | |||
// TDSetElement status bits | // TDSetElement status bits | |||
enum EStatusBits { | enum EStatusBits { | |||
kHasBeenLookedUp = BIT(15), | kHasBeenLookedUp = BIT(15), | |||
kWriteV3 = BIT(16), | kWriteV3 = BIT(16), | |||
kEmpty = BIT(17), | kEmpty = BIT(17), | |||
kCorrupted = BIT(18) | kCorrupted = BIT(18), | |||
kNewRun = BIT(19), | ||||
kNewPacket = BIT(20) | ||||
}; | }; | |||
private: | private: | |||
TString fDirectory; // directory in file where to look for obj ects | TString fDirectory; // directory in file where to look for obj ects | |||
Long64_t fFirst; // first entry to process | Long64_t fFirst; // first entry to process | |||
Long64_t fNum; // number of entries to process | Long64_t fNum; // number of entries to process | |||
TString fMsd; // mass storage domain name | TString fMsd; // mass storage domain name | |||
Long64_t fTDSetOffset;// the global offset in the TDSet of the f irst | Long64_t fTDSetOffset;// the global offset in the TDSet of the f irst | |||
// entry in this element | // entry in this element | |||
TObject *fEntryList; // entry (or event) list to be used in pro cessing | TObject *fEntryList; // entry (or event) list to be used in pro cessing | |||
Bool_t fValid; // whether or not the input values are val id | Bool_t fValid; // whether or not the input values are val id | |||
Long64_t fEntries; // total number of possible entries in fil e | Long64_t fEntries; // total number of possible entries in fil e | |||
TList *fFriends; // friend elements | TList *fFriends; // friend elements | |||
TString fDataSet; // Name of the dataset of which this eleme | ||||
nt is part | ||||
TList *fAssocObjList; // List of objects associated to this e | ||||
lement | ||||
// (e.g. TObjString describing associate | ||||
d files) | ||||
Bool_t HasBeenLookedUp() const { return TestBit(kHasBeenLooked Up); } | Bool_t HasBeenLookedUp() const { return TestBit(kHasBeenLooked Up); } | |||
TDSetElement& operator=(const TDSetElement &); // Not implemented | TDSetElement& operator=(const TDSetElement &); // Not implemented | |||
public: | public: | |||
TDSetElement(); | TDSetElement(); | |||
TDSetElement(const char *file, const char *objname = 0, | TDSetElement(const char *file, const char *objname = 0, | |||
const char *dir = 0, Long64_t first = 0, Long64_t num = -1, | const char *dir = 0, Long64_t first = 0, Long64_t num = -1, | |||
const char *msd = 0); | const char *msd = 0, const char *dataset = 0); | |||
TDSetElement(const TDSetElement& elem); | TDSetElement(const TDSetElement& elem); | |||
virtual ~TDSetElement(); | virtual ~TDSetElement(); | |||
virtual TList *GetListOfFriends() const { return fFriends; } | virtual TList *GetListOfFriends() const { return fFriends; } | |||
virtual void AddFriend(TDSetElement *friendElement, const char *alia s); | virtual void AddFriend(TDSetElement *friendElement, const char *alia s); | |||
virtual void DeleteFriends(); | virtual void DeleteFriends(); | |||
const char *GetFileName() const { return GetName(); } | const char *GetFileName() const { return GetName(); } | |||
Long64_t GetFirst() const { return fFirst; } | Long64_t GetFirst() const { return fFirst; } | |||
void SetFirst(Long64_t first) { fFirst = first; } | void SetFirst(Long64_t first) { fFirst = first; } | |||
Long64_t GetNum() const { return fNum; } | Long64_t GetNum() const { return fNum; } | |||
Long64_t GetEntries(Bool_t istree = kTRUE, Bool_t openfile = kTR UE); | Long64_t GetEntries(Bool_t istree = kTRUE, Bool_t openfile = kTR UE); | |||
void SetEntries(Long64_t ent) { fEntries = ent; } | void SetEntries(Long64_t ent) { fEntries = ent; } | |||
const char *GetMsd() const { return fMsd; } | const char *GetMsd() const { return fMsd; } | |||
void SetNum(Long64_t num) { fNum = num; } | void SetNum(Long64_t num) { fNum = num; } | |||
Bool_t GetValid() const { return fValid; } | Bool_t GetValid() const { return fValid; } | |||
const char *GetObjName() const { return GetTitle(); } | const char *GetObjName() const { return GetTitle(); } | |||
const char *GetDirectory() const; | const char *GetDirectory() const; | |||
const char *GetDataSet() const { return fDataSet; } | ||||
void SetDataSet(const char *dataset) { fDataSet = dataset; } | ||||
void AddAssocObj(TObject *assocobj); | ||||
TList *GetListOfAssocObjs() const { return fAssocObjList; } | ||||
TObject *GetAssocObj(Long64_t i, Bool_t isentry = kFALSE); | ||||
void Print(Option_t *options="") const; | void Print(Option_t *options="") const; | |||
Long64_t GetTDSetOffset() const { return fTDSetOffset; } | Long64_t GetTDSetOffset() const { return fTDSetOffset; } | |||
void SetTDSetOffset(Long64_t offset) { fTDSetOffset = offset ; } | void SetTDSetOffset(Long64_t offset) { fTDSetOffset = offset ; } | |||
void SetEntryList(TObject *aList, Long64_t first = -1, Long6 4_t num = -1); | void SetEntryList(TObject *aList, Long64_t first = -1, Long6 4_t num = -1); | |||
TObject *GetEntryList() const { return fEntryList; } | TObject *GetEntryList() const { return fEntryList; } | |||
void Validate(Bool_t isTree); | void Validate(Bool_t isTree); | |||
void Validate(TDSetElement *elem); | void Validate(TDSetElement *elem); | |||
void Invalidate() { fValid = kFALSE; } | void Invalidate() { fValid = kFALSE; } | |||
void SetValid() { fValid = kTRUE; } | void SetValid() { fValid = kTRUE; } | |||
Int_t Compare(const TObject *obj) const; | Int_t Compare(const TObject *obj) const; | |||
Bool_t IsSortable() const { return kTRUE; } | Bool_t IsSortable() const { return kTRUE; } | |||
Int_t Lookup(Bool_t force = kFALSE); | Int_t Lookup(Bool_t force = kFALSE); | |||
void SetLookedUp() { SetBit(kHasBeenLookedUp); } | void SetLookedUp() { SetBit(kHasBeenLookedUp); } | |||
TFileInfo *GetFileInfo(const char *type = "TTree"); | TFileInfo *GetFileInfo(const char *type = "TTree"); | |||
ClassDef(TDSetElement,6) // A TDSet element | ClassDef(TDSetElement,8) // A TDSet element | |||
}; | }; | |||
class TDSet : public TNamed { | class TDSet : public TNamed { | |||
public: | public: | |||
// TDSet status bits | // TDSet status bits | |||
enum EStatusBits { | enum EStatusBits { | |||
kWriteV3 = BIT(16), | kWriteV3 = BIT(16), | |||
kEmpty = BIT(17), | kEmpty = BIT(17), | |||
kValidityChecked = BIT(18), // Set if elements validiy has been chec ked | kValidityChecked = BIT(18), // Set if elements validiy has been chec ked | |||
kSomeInvalid = BIT(19) // Set if at least one element is invali | kSomeInvalid = BIT(19), // Set if at least one element is invali | |||
d | d | |||
kMultiDSet = BIT(20) // Set if fElements is a list of dataset | ||||
s | ||||
}; | }; | |||
private: | private: | |||
TString fDir; // name of the directory | ||||
TString fType; // type of objects (e.g. TTree); | ||||
TString fObjName; // name of objects to be analyzed (e.g. TTr | ||||
ee name) | ||||
THashList *fElements; //-> list of TDSetElements | ||||
Bool_t fIsTree; // true if type is a TTree (or TTree derive d) | Bool_t fIsTree; // true if type is a TTree (or TTree derive d) | |||
TIter *fIterator; //! iterator on fElements | ||||
TObject *fEntryList; //! entry (or event) list for processing | TObject *fEntryList; //! entry (or event) list for processing | |||
TProofChain *fProofChain; //! for browsing purposes | TProofChain *fProofChain; //! for browsing purposes | |||
void SplitEntryList(); //Split entry list between elements | void SplitEntryList(); //Split entry list between elements | |||
TDSet(const TDSet &); // not implemented | TDSet(const TDSet &); // not implemented | |||
void operator=(const TDSet &); // not implemented | void operator=(const TDSet &); // not implemented | |||
protected: | protected: | |||
TDSetElement *fCurrent; //! current element | TString fDir; // name of the directory | |||
TString fType; // type of objects (e.g. TTree); | ||||
TString fObjName; // name of objects to be analyzed (e.g. TTr | ||||
ee name) | ||||
THashList *fElements; //-> list of TDSetElements (or TDSets, if i | ||||
n multi mode) | ||||
TIter *fIterator; //! iterator on fElements | ||||
TDSetElement *fCurrent; //! current element | ||||
TList *fSrvMaps; //! list for mapping server coordinates for | ||||
files | ||||
TIter *fSrvMapsIter; //! iterator on fSrvMaps | ||||
public: | public: | |||
TDSet(); | TDSet(); | |||
TDSet(const char *name, const char *objname = "*", | TDSet(const char *name, const char *objname = "*", | |||
const char *dir = "/", const char *type = 0); | const char *dir = "/", const char *type = 0); | |||
TDSet(const TChain &chain, Bool_t withfriends = kTRUE); | TDSet(const TChain &chain, Bool_t withfriends = kTRUE); | |||
virtual ~TDSet(); | virtual ~TDSet(); | |||
virtual Bool_t Add(const char *file, const char *objname = 0, | virtual Bool_t Add(const char *file, const char *objname = 0, | |||
const char *dir = 0, Long64_t first = 0, | const char *dir = 0, Long64_t first = 0, | |||
skipping to change at line 204 | skipping to change at line 218 | |||
void SetObjName(const char *objname); | void SetObjName(const char *objname); | |||
void SetDirectory(const char *dir); | void SetDirectory(const char *dir); | |||
Bool_t IsTree() const { return fIsTree; } | Bool_t IsTree() const { return fIsTree; } | |||
Bool_t IsValid() const { return !fType.IsNull(); } | Bool_t IsValid() const { return !fType.IsNull(); } | |||
Bool_t ElementsValid(); | Bool_t ElementsValid(); | |||
const char *GetType() const { return fType; } | const char *GetType() const { return fType; } | |||
const char *GetObjName() const { return fObjName; } | const char *GetObjName() const { return fObjName; } | |||
const char *GetDirectory() const { return fDir; } | const char *GetDirectory() const { return fDir; } | |||
TList *GetListOfElements() const { return (TList *)fEleme nts; } | TList *GetListOfElements() const { return (TList *)fEleme nts; } | |||
Int_t GetNumOfFiles(); | ||||
Int_t Remove(TDSetElement *elem, Bool_t deleteElem = kTR UE); | Int_t Remove(TDSetElement *elem, Bool_t deleteElem = kTR UE); | |||
virtual void Reset(); | virtual void Reset(); | |||
virtual TDSetElement *Next(Long64_t totalEntries = -1); | virtual TDSetElement *Next(Long64_t totalEntries = -1); | |||
TDSetElement *Current() const { return fCurrent; }; | TDSetElement *Current() const { return fCurrent; }; | |||
static Long64_t GetEntries(Bool_t isTree, const char *filename, | static Long64_t GetEntries(Bool_t isTree, const char *filename, | |||
const char *path, TString &objname); | const char *path, TString &objname); | |||
skipping to change at line 229 | skipping to change at line 244 | |||
virtual TTree *GetTreeHeader(TProof *proof); | virtual TTree *GetTreeHeader(TProof *proof); | |||
virtual void SetEntryList(TObject *aList); | virtual void SetEntryList(TObject *aList); | |||
TObject *GetEntryList() const { return fEntryList; } | TObject *GetEntryList() const { return fEntryList; } | |||
void Validate(); | void Validate(); | |||
void Validate(TDSet *dset); | void Validate(TDSet *dset); | |||
void Lookup(Bool_t removeMissing = kFALSE, TList **miss ingFiles = 0); | void Lookup(Bool_t removeMissing = kFALSE, TList **miss ingFiles = 0); | |||
void SetLookedUp(); | void SetLookedUp(); | |||
void SetSrvMaps(TList *srvmaps = 0); | ||||
void SetWriteV3(Bool_t on = kTRUE); | void SetWriteV3(Bool_t on = kTRUE); | |||
ClassDef(TDSet,6) // Data set for remote processing (PROOF) | ClassDef(TDSet,8) // Data set for remote processing (PROOF) | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 13 change blocks. | ||||
14 lines changed or deleted | 37 lines changed or added | |||
TDataSetManager.h | TDataSetManager.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TDataSetManager.h 30421 2009-09-24 17:20:09Z ganis $ | // @(#)root/proof:$Id: TDataSetManager.h 33209 2010-04-26 10:27:40Z ganis $ | |||
// Author: Jan Fiete Grosse-Oetringhaus, 08.08.07 | // Author: Jan Fiete Grosse-Oetringhaus, 08.08.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 39 | skipping to change at line 39 | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
#ifndef ROOT_TMap | #ifndef ROOT_TMap | |||
#include "TMap.h" | #include "TMap.h" | |||
#endif | #endif | |||
#ifndef ROOT_TUri | #ifndef ROOT_TUri | |||
#include "TUri.h" | #include "TUri.h" | |||
#endif | #endif | |||
class TFileCollection; | class TFileCollection; | |||
class TFileInfo; | ||||
class TMD5; | class TMD5; | |||
class TUrl; | ||||
class TVirtualMonitoringWriter; | class TVirtualMonitoringWriter; | |||
class TDataSetManager : public TObject { | class TDataSetManager : public TObject { | |||
private: | private: | |||
TDataSetManager(const TDataSetManager&); // not implemented | TDataSetManager(const TDataSetManager&); // not implemented | |||
TDataSetManager& operator=(const TDataSetManager&); // not implemented | TDataSetManager& operator=(const TDataSetManager&); // not implemented | |||
protected: | protected: | |||
TString fGroup; // Group to which the owner of this session bel ongs | TString fGroup; // Group to which the owner of this session bel ongs | |||
skipping to change at line 71 | skipping to change at line 73 | |||
Int_t fNTouchedFiles; // Number of files touched in the last ScanData Set operation | Int_t fNTouchedFiles; // Number of files touched in the last ScanData Set operation | |||
Int_t fNOpenedFiles; // Number of files opened in the last ScanDataS et operation | Int_t fNOpenedFiles; // Number of files opened in the last ScanDataS et operation | |||
Int_t fNDisappearedFiles; // Number of files disappared in the last S canDataSet operation | Int_t fNDisappearedFiles; // Number of files disappared in the last S canDataSet operation | |||
TString fGroupConfigFile; // Path to the group config file | TString fGroupConfigFile; // Path to the group config file | |||
Long_t fMTimeGroupConfig; // Last modification of the group config fil e | Long_t fMTimeGroupConfig; // Last modification of the group config fil e | |||
static TString fgCommonDataSetTag; // Name for common datasets, default : COMMON | static TString fgCommonDataSetTag; // Name for common datasets, default : COMMON | |||
static TList *fgDataSetSrvMaps; // List of TPair(TRegexp, TObjString) fo | ||||
r mapping server coordinates | ||||
// for dataset files (init from DataSet.S | ||||
rvMap) | ||||
virtual TMap *GetGroupUsedMap() { return &fGroupUsed; } | virtual TMap *GetGroupUsedMap() { return &fGroupUsed; } | |||
virtual TMap *GetUserUsedMap() { return &fUserUsed; } | virtual TMap *GetUserUsedMap() { return &fUserUsed; } | |||
Int_t GetNTouchedFiles() const { return fNTouchedFiles; } | Int_t GetNTouchedFiles() const { return fNTouchedFiles; } | |||
Int_t GetNOpenedFiles() const { return fNOpenedFiles; } | Int_t GetNOpenedFiles() const { return fNOpenedFiles; } | |||
Int_t GetNDisapparedFiles() const { return fNDisappearedFiles; } | Int_t GetNDisapparedFiles() const { return fNDisappearedFiles; } | |||
void GetQuota(const char *group, const char *user, const char *dsNam e, TFileCollection *dataset); | void GetQuota(const char *group, const char *user, const char *dsNam e, TFileCollection *dataset); | |||
void PrintDataSet(TFileCollection *fc, Int_t popt = 0); | void PrintDataSet(TFileCollection *fc, Int_t popt = 0); | |||
void PrintUsedSpace(); | void PrintUsedSpace(); | |||
Bool_t ReadGroupConfig(const char *cf = 0); | Bool_t ReadGroupConfig(const char *cf = 0); | |||
virtual void UpdateUsedSpace(); | virtual void UpdateUsedSpace(); | |||
static Long64_t ToBytes(const char *size = 0); | static Long64_t ToBytes(const char *size = 0); | |||
public: | public: | |||
enum EDataSetStatusBits { | enum EDataSetStatusBits { | |||
kCheckQuota = BIT(15), // quota checking enabled | kCheckQuota = BIT(15), // quota checking enabled | |||
kAllowRegister = BIT(16), // allow registration of a new dataset | kAllowRegister = BIT(16), // allow registration of a new dataset | |||
kAllowVerify = BIT(17), // allow verification of a dataset (requi res registration permit) | kAllowVerify = BIT(17), // allow verification of a dataset (requi res registration permit) | |||
kTrustInfo = BIT(18), // during registration, trust the availab le information provided by the user | kTrustInfo = BIT(18), // during registration, trust the availab le information provided by the user | |||
kIsSandbox = BIT(19) // dataset dir is in the user sandbox (si | kIsSandbox = BIT(19), // dataset dir is in the user sandbox (si | |||
mplified naming) | mplified naming) | |||
kUseCache = BIT(20), // force the usage of cache | ||||
kDoNotUseCache = BIT(21) // disable the cache | ||||
}; | }; | |||
enum EDataSetWorkOpts { // General (bits 1-8) | enum EDataSetWorkOpts { // General (bits 1-8) | |||
kDebug = 1, kShowDefault = 2, kPrint = 4, kExpor t = 8, | kDebug = 1, kShowDefault = 2, kPrint = 4, kExpor t = 8, | |||
kQuotaUpdate = 16, kSetDefaultTree = 32, | kQuotaUpdate = 16, kSetDefaultTree = 32, kForceS | |||
can = 64, | ||||
kNoHeaderPrint = 128, | ||||
// File-based specific (bits 9-16) | // File-based specific (bits 9-16) | |||
kReopen = 256, kTouch = 512, kMaxFiles = 1024, k ReadShort = 2048, | kReopen = 256, kTouch = 512, kMaxFiles = 1024, k ReadShort = 2048, | |||
kFileMustExist = 4096}; | kFileMustExist = 4096, | |||
// Auxilliary bits (bits 17-) | ||||
kNoCacheUpdate = 65536, kRefreshLs = 131072, kLi | ||||
st = 262144 | ||||
}; | ||||
TDataSetManager(const char *group = 0, const char *user = 0, const char *options = 0); | TDataSetManager(const char *group = 0, const char *user = 0, const char *options = 0); | |||
virtual ~TDataSetManager(); | virtual ~TDataSetManager(); | |||
virtual Int_t ClearCache(const char *uri); | ||||
virtual Long64_t GetAvgFileSize() const { return fAvgFileSize; } | ||||
virtual TFileCollection *GetDataSet(const char *uri, const char *server = 0); | virtual TFileCollection *GetDataSet(const char *uri, const char *server = 0); | |||
virtual TMap *GetDataSets(const char *uri, UInt_t /*option*/ = 0); | virtual TMap *GetDataSets(const char *uri, UInt_t /*option*/ = TDataSetManager::kExport); | |||
virtual TMap *GetSubDataSets(const char *uri, const char *exc ludeservers); | virtual TMap *GetSubDataSets(const char *uri, const char *exc ludeservers); | |||
virtual Long64_t GetGroupQuota(const char *group); | virtual Long64_t GetGroupQuota(const char *group); | |||
virtual TMap *GetGroupQuotaMap() { return &fGroupQuota; } | virtual TMap *GetGroupQuotaMap() { return &fGroupQuota; } | |||
virtual Long64_t GetGroupUsed(const char *group); | virtual Long64_t GetGroupUsed(const char *group); | |||
virtual Bool_t ExistsDataSet(const char *uri); | virtual Bool_t ExistsDataSet(const char *uri); | |||
virtual void MonitorUsedSpace(TVirtualMonitoringWriter *moni toring); | virtual void MonitorUsedSpace(TVirtualMonitoringWriter *moni toring); | |||
virtual Int_t NotifyUpdate(const char *group = 0, const char | ||||
*user = 0, | ||||
const char *dspath = 0, Long_t mti | ||||
me = 0, const char *checksum = 0); | ||||
Bool_t ParseUri(const char *uri, TString *dsGroup = 0, TString *dsUser = 0, | Bool_t ParseUri(const char *uri, TString *dsGroup = 0, TString *dsUser = 0, | |||
TString *dsName = 0, TString *dsTree = 0, | TString *dsName = 0, TString *dsTree = 0, | |||
Bool_t onlyCurrent = kFALSE, Bool_t wi ldcards = kFALSE); | Bool_t onlyCurrent = kFALSE, Bool_t wi ldcards = kFALSE); | |||
virtual void ParseInitOpts(const char *opts); | virtual void ParseInitOpts(const char *opts); | |||
virtual Bool_t RemoveDataSet(const char *uri); | virtual Bool_t RemoveDataSet(const char *uri); | |||
virtual Int_t RegisterDataSet(const char *uri, TFileCollectio n *dataSet, const char *opt); | virtual Int_t RegisterDataSet(const char *uri, TFileCollectio n *dataSet, const char *opt); | |||
virtual Int_t ScanDataSet(const char *uri, UInt_t option = 0) ; | virtual Int_t ScanDataSet(const char *uri, UInt_t option = 0) ; | |||
void SetScanCounters(Int_t t = -1, Int_t o = -1, Int | ||||
_t d = -1); | ||||
virtual Int_t ShowCache(const char *uri); | ||||
virtual void ShowQuota(const char *opt); | virtual void ShowQuota(const char *opt); | |||
virtual void ShowDataSets(const char *uri = "*", const char *opt = ""); | virtual void ShowDataSets(const char *uri = "*", const char *opt = ""); | |||
static TString CreateUri(const char *dsGroup = 0, const char * dsUser = 0, | static TString CreateUri(const char *dsGroup = 0, const char * dsUser = 0, | |||
const char *dsName = 0, const char *d sTree = 0); | const char *dsName = 0, const char *d sTree = 0); | |||
static Bool_t CheckDataSetSrvMaps(TUrl *furl, TString &fn, TL | ||||
ist *srvmaplist = 0); | ||||
static TList *GetDataSetSrvMaps(); | ||||
static TList *ParseDataSetSrvMaps(const TString &srvmaps); | ||||
static Int_t ScanDataSet(TFileCollection *dataset, Int_t fop | ||||
enopt, Bool_t notify = kFALSE, | ||||
Int_t scanfopt = 0, TList *flist = | ||||
0, Long64_t avgsize = -1, | ||||
const char *mssurl = 0, Int_t files | ||||
max = -1, | ||||
Int_t *touched = 0, Int_t *opened = | ||||
0, Int_t *disappeared = 0); | ||||
static Int_t ScanFile(TFileInfo *fileinfo, Bool_t notify); | ||||
ClassDef(TDataSetManager, 0) // Abstract data set manager class | ClassDef(TDataSetManager, 0) // Abstract data set manager class | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 12 change blocks. | ||||
6 lines changed or deleted | 43 lines changed or added | |||
TDataSetManagerFile.h | TDataSetManagerFile.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TDataSetManagerFile.h 29133 2009-06-22 12:28:50Z bru n $ | // @(#)root/proof:$Id: TDataSetManagerFile.h 33156 2010-04-23 12:46:14Z gan is $ | |||
// Author: Jan Fiete Grosse-Oetringhaus, 08.08.07 | // Author: Jan Fiete Grosse-Oetringhaus, 08.08.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 28 | skipping to change at line 28 | |||
// // | // // | |||
// Implementation of TDataSetManager handling datasets from root // | // Implementation of TDataSetManager handling datasets from root // | |||
// files under a specific directory path // | // files under a specific directory path // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TDataSetManager | #ifndef ROOT_TDataSetManager | |||
#include "TDataSetManager.h" | #include "TDataSetManager.h" | |||
#endif | #endif | |||
const char* const kDataSet_LocalCache = "dataset.cache"; // default cache | ||||
subdirectory | ||||
const char* const kDataSet_DataSetList = "dataset.list"; // file with inf | ||||
o about all datasets | ||||
const char* const kDataSet_LockLocation = "lock.location"; // location of t | ||||
he lock file | ||||
class TDataSetManagerFile : public TDataSetManager { | class TDataSetManagerFile : public TDataSetManager { | |||
private: | private: | |||
TString fDataSetDir; // Location of datasets | TString fDataSetDir; // Location of datasets | |||
TString fMSSUrl; // URL for the Mass Storage System | TString fMSSUrl; // URL for the Mass Storage System | |||
TString fDataSetLockFile; // Dataset lock file | TString fDataSetLockFile; // Dataset lock file | |||
Int_t fLockFileTimeLimit; // Limit in seconds after a lock automatical ly expires | Int_t fLockFileTimeLimit; // Limit in seconds after a lock automatical ly expires | |||
TString fListFile; // File to check repository updates | ||||
Bool_t fIsRemote; // True if the repository is remote | ||||
Bool_t fUseCache; // True if the cache is used for browsing re | ||||
mote repositories | ||||
TString fLocalCacheDir; // Local cache when the repository is remote | ||||
Int_t fCacheUpdatePeriod; // Period for checking for new updated infor | ||||
mation | ||||
// Local cache handling | ||||
void InitLocalCache(); | ||||
Int_t CheckLocalCache(const char *group, const char *user, const char | ||||
*dsName = "ls", UInt_t option = 0); | ||||
protected: | protected: | |||
const char *GetDataSetPath(const char *group, const char *user, const ch ar *dsName); | const char *GetDataSetPath(const char *group, const char *user, const ch ar *dsName); | |||
Bool_t BrowseDataSets(const char *group, const char *user, UInt_t option | const char *GetDataSetPath(const char *group, const char *user, const ch | |||
, TObject *target); | ar *dsName, | |||
TString &md5path, Bool_t local = kFALSE); | ||||
void Init(); | ||||
Bool_t BrowseDataSets(const char *group, const char *user, const char *d | ||||
sName, | ||||
UInt_t option, TObject *target); | ||||
Bool_t RemoveDataSet(const char *group, const char *user, const char *ds Name); | Bool_t RemoveDataSet(const char *group, const char *user, const char *ds Name); | |||
Bool_t ExistsDataSet(const char *group, const char *user, const char *ds Name); | Bool_t ExistsDataSet(const char *group, const char *user, const char *ds Name); | |||
Int_t ScanDataSet(const char *group, const char *user, const char *dsNa me, UInt_t option); | Int_t ScanDataSet(const char *group, const char *user, const char *dsNa me, UInt_t option); | |||
Int_t ChecksumDataSet(const char *path, const char *md5path, TString &c | ||||
hecksum); | ||||
Int_t CreateLsFile(const char *group, const char *user, Long_t &mtime, | ||||
TString &checksum); | ||||
Int_t FillLsDataSet(const char *group, const char *user, const char *ds | ||||
Name, TList *out, UInt_t option); | ||||
void UpdateUsedSpace(); | void UpdateUsedSpace(); | |||
public: | public: | |||
TDataSetManagerFile(const char *group = 0, const char *user = 0, const c | TDataSetManagerFile() : TDataSetManager(0, 0, 0) { } | |||
har *ins = 0); | TDataSetManagerFile(const char *group, const char *user, const char *ins | |||
); | ||||
TDataSetManagerFile(const char *ins); | ||||
virtual ~TDataSetManagerFile() { } | virtual ~TDataSetManagerFile() { } | |||
void ParseInitOpts(const char *opts); | void ParseInitOpts(const char *opts); | |||
Int_t ClearCache(const char *uri = 0); | ||||
TFileCollection *GetDataSet(const char *uri, const char *srv = 0); | TFileCollection *GetDataSet(const char *uri, const char *srv = 0); | |||
TMap *GetDataSets(const char *uri, UInt_t /*option*/ = 0); | TMap *GetDataSets(const char *uri, UInt_t option = TDataSetMa | |||
Bool_t ExistsDataSet(const char *uri); | nager::kExport); | |||
Bool_t RemoveDataSet(const char *uri); | Bool_t ExistsDataSet(const char *uri); | |||
Bool_t RemoveDataSet(const char *uri); | ||||
Int_t RegisterDataSet(const char *uri, TFileCollection *dataSet, const c | ||||
har *opt); | Int_t RegisterDataSet(const char *uri, TFileCollection *dataS | |||
Int_t ScanDataSet(const char *uri, UInt_t option = 0); | et, const char *opt); | |||
Int_t ScanDataSet(const char *uri, UInt_t option = 0); | ||||
Int_t NotifyUpdate(const char *group, const char *user, | ||||
const char *dspath, Long_t mtime, const char *checks | ||||
um = 0); | ||||
Int_t ShowCache(const char *uri = 0); | ||||
// These should / could be private but they are used directly by the ext ernal daemon | // These should / could be private but they are used directly by the ext ernal daemon | |||
TFileCollection *GetDataSet(const char *group, const char *user, const c har *dsName, | TFileCollection *GetDataSet(const char *group, const char *user, const c har *dsName, | |||
UInt_t option = 0, TMD5 **checksum = 0); | UInt_t option = 0, TMD5 **checksum = 0); | |||
TMap *GetDataSets(const char *group, const char *user, UInt_t option = 0 | TMap *GetDataSets(const char *group, const char *user, const | |||
); | char *dsName = 0, | |||
Int_t ScanDataSet(TFileCollection *dataset, UInt_t option, Int_t filesma | UInt_t option = 0); | |||
x = -1); | const char *GetMSSUrl() const { return fMSSUrl; } | |||
Int_t WriteDataSet(const char *group, const char *user, const char *dsNa | Int_t WriteDataSet(const char *group, const char *user, const | |||
me, | char *dsName, | |||
TFileCollection *dataset, UInt_t option = 0, TMD5 *ch | TFileCollection *dataset, UInt_t option = | |||
ecksum = 0); | 0, TMD5 *checksum = 0); | |||
ClassDef(TDataSetManagerFile, 0) // DataSet manager for files | ClassDef(TDataSetManagerFile, 0) // DataSet manager for files | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 9 change blocks. | ||||
20 lines changed or deleted | 60 lines changed or added | |||
TDictionary.h | TDictionary.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TDictionary.h 27287 2009-01-29 04:52:36Z pcanal $ | // @(#)root/meta:$Id: TDictionary.h 31914 2009-12-16 10:57:32Z rdm $ | |||
// Author: Fons Rademakers 20/06/96 | // Author: Fons Rademakers 20/06/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 | |||
// CINT C++ interpreter. // | // CINT C++ interpreter. // | |||
// // | // // | |||
// TMethodCall (method call environment) // | // TMethodCall (method call environment) // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TNamed | #ifndef ROOT_TNamed | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#endif | #endif | |||
#ifndef R__BUILDING_CINT7 | ||||
#include "Property.h" | #include "Property.h" | |||
#else | ||||
#include "cint7/Property.h" | ||||
#endif | ||||
typedef void CallFunc_t; | typedef void CallFunc_t; | |||
typedef void ClassInfo_t; | typedef void ClassInfo_t; | |||
typedef void BaseClassInfo_t; | typedef void BaseClassInfo_t; | |||
typedef void DataMemberInfo_t; | typedef void DataMemberInfo_t; | |||
typedef void MethodInfo_t; | typedef void MethodInfo_t; | |||
typedef void MethodArgInfo_t; | typedef void MethodArgInfo_t; | |||
typedef void MethodArgInfo_t; | typedef void MethodArgInfo_t; | |||
typedef void TypeInfo_t; | typedef void TypeInfo_t; | |||
typedef void TypedefInfo_t; | typedef void TypedefInfo_t; | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 1 lines changed or added | |||
TEveBoxSet.h | TEveBoxSet.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveBoxSet.h 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveBoxSet.h 32935 2010-04-09 20:10:18Z 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 43 | skipping to change at line 43 | |||
kBT_AABox, // axis-aligned box: specify (x,y,z) and (w, h, d) | kBT_AABox, // axis-aligned box: specify (x,y,z) and (w, h, d) | |||
kBT_AABoxFixedDim, // axis-aligned box w/ fixed dimensions: spec ify (x,y,z) | kBT_AABoxFixedDim, // axis-aligned box w/ fixed dimensions: spec ify (x,y,z) | |||
kBT_Cone, | kBT_Cone, | |||
kBT_EllipticCone | kBT_EllipticCone | |||
}; | }; | |||
protected: | protected: | |||
struct BFreeBox_t : public DigitBase_t { Float_t fVertices[24]; }; | struct BFreeBox_t : public DigitBase_t { Float_t fVertices[24]; }; | |||
struct BOrigin_t : public DigitBase_t { Float_t fA, fB, fC; virtu al ~BOrigin_t() {} }; | struct BOrigin_t : public DigitBase_t { Float_t fA, fB, fC; }; | |||
struct BAABox_t : public BOrigin_t { Float_t fW, fH, fD; }; | struct BAABox_t : public BOrigin_t { Float_t fW, fH, fD; }; | |||
struct BAABoxFixedDim_t : public BOrigin_t {}; | struct BAABoxFixedDim_t : public BOrigin_t {}; | |||
struct BCone_t : public DigitBase_t { TEveVector fPos, fDir; Fl oat_t fR; virtual ~BCone_t() {} }; | struct BCone_t : public DigitBase_t { TEveVector fPos, fDir; Fl oat_t fR; }; | |||
struct BEllipticCone_t : public BCone_t { Float_t fR2, fAngle; }; | struct BEllipticCone_t : public BCone_t { Float_t fR2, fAngle; }; | |||
protected: | protected: | |||
EBoxType_e fBoxType; // Type of rendered box. | EBoxType_e fBoxType; // Type of rendered box. | |||
Float_t fDefWidth; // Breadth assigned to first coordinate (A). | Float_t fDefWidth; // Breadth assigned to first coordinate (A). | |||
Float_t fDefHeight; // Breadth assigned to second coordinat e (B). | Float_t fDefHeight; // Breadth assigned to second coordinat e (B). | |||
Float_t fDefDepth; // Breadth assigned to third coordinate (C). | Float_t fDefDepth; // Breadth assigned to third coordinate (C). | |||
Bool_t fDrawConeCap; | Bool_t fDrawConeCap; | |||
End of changes. 5 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
TEveBoxSetGL.h | TEveBoxSetGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveBoxSetGL.h 31450 2009-11-27 14:25:37Z matevz $ | // @(#)root/eve:$Id: TEveBoxSetGL.h 33124 2010-04-21 20:04:42Z 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_TEveBoxSetGL | #ifndef ROOT_TEveBoxSetGL | |||
#define ROOT_TEveBoxSetGL | #define ROOT_TEveBoxSetGL | |||
#include "TGLObject.h" | #include "TEveDigitSetGL.h" | |||
#include "TEveBoxSet.h" | #include "TEveBoxSet.h" | |||
class TEveBoxSetGL : public TGLObject | class TEveBoxSetGL : public TEveDigitSetGL | |||
{ | { | |||
TEveBoxSetGL(const TEveBoxSetGL&); // Not implemented | TEveBoxSetGL(const TEveBoxSetGL&); // Not implemented | |||
TEveBoxSetGL& operator=(const TEveBoxSetGL&); // Not implemented | TEveBoxSetGL& operator=(const TEveBoxSetGL&); // Not implemented | |||
protected: | protected: | |||
TEveBoxSet *fM; // Model object. | TEveBoxSet *fM; // Model object. | |||
mutable UInt_t fBoxDL; // Display-list id for a box atom. | mutable UInt_t fBoxDL; // Display-list id for a box atom. | |||
Int_t PrimitiveType() const; | Int_t PrimitiveType() const; | |||
Bool_t SetupColor(const TEveDigitSet::DigitBase_t& q) const; | ||||
void MakeOriginBox(Float_t p[24], Float_t dx, Float_t dy, Float_t dz) const; | void MakeOriginBox(Float_t p[24], Float_t dx, Float_t dy, Float_t dz) const; | |||
void RenderBox(const Float_t p[24]) const; | void RenderBox(const Float_t p[24]) const; | |||
void MakeDisplayList() const; | void MakeDisplayList() const; | |||
void RenderBoxes(TGLRnrCtx & rnrCtx) const; | void RenderBoxes(TGLRnrCtx& rnrCtx) const; | |||
public: | public: | |||
TEveBoxSetGL(); | TEveBoxSetGL(); | |||
virtual ~TEveBoxSetGL(); | virtual ~TEveBoxSetGL(); | |||
virtual Bool_t ShouldDLCache(const TGLRnrCtx & rnrCtx) const; | virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const; | |||
virtual void DLCacheDrop(); | virtual void DLCacheDrop(); | |||
virtual void DLCachePurge(); | virtual void DLCachePurge(); | |||
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 DirectDraw(TGLRnrCtx& rnrCtx) const; | |||
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | ||||
virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | virtual void Render(TGLRnrCtx& rnrCtx); | |||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re | ||||
c); | ||||
virtual void Render(TGLRnrCtx & rnrCtx); | ||||
ClassDef(TEveBoxSetGL, 0); // GL-renderer for TEveBoxSet class. | ClassDef(TEveBoxSetGL, 0); // GL-renderer for TEveBoxSet class. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 8 change blocks. | ||||
13 lines changed or deleted | 7 lines changed or added | |||
TEveCalo.h | TEveCalo.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCalo.h 31075 2009-11-10 20:03:38Z matevz $ | // @(#)root/eve:$Id: TEveCalo.h 33198 2010-04-26 08:40:04Z 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 84 | skipping to change at line 84 | |||
virtual TEveElement* ForwardEdit(); | virtual TEveElement* ForwardEdit(); | |||
virtual void Paint(Option_t* option=""); | virtual void Paint(Option_t* option=""); | |||
virtual TClass* ProjectedClass(const TEveProjection* p) const; | virtual TClass* ProjectedClass(const TEveProjection* p) const; | |||
virtual Float_t GetValToHeight() const; | virtual Float_t GetValToHeight() const; | |||
virtual void CellSelectionChanged() {} | virtual void CellSelectionChanged() {} | |||
TEveCaloData* GetData() const { return fData; } | TEveCaloData* GetData() const { return fData; } | |||
void SetData(TEveCaloData* d); | void SetData(TEveCaloData* d); | |||
void DataChanged(); Float_t GetMaxVal() const; | void DataChanged(); | |||
Float_t GetMaxVal() const; | ||||
void AssertCellIdCache() const; | Bool_t AssertCellIdCache() const; | |||
void InvalidateCellIdCache() { fCellIdCacheOK=kFALSE; ResetBBox(); }; | void InvalidateCellIdCache() { fCellIdCacheOK=kFALSE; ResetBBox(); }; | |||
Float_t GetDataSliceThreshold(Int_t slice) const; | Float_t GetDataSliceThreshold(Int_t slice) const; | |||
void SetDataSliceThreshold(Int_t slice, Float_t val); | void SetDataSliceThreshold(Int_t slice, Float_t val); | |||
Color_t GetDataSliceColor(Int_t slice) const; | Color_t GetDataSliceColor(Int_t slice) const; | |||
void SetDataSliceColor(Int_t slice, Color_t col); | void SetDataSliceColor(Int_t slice, Color_t col); | |||
Float_t GetBarrelRadius() const { return fBarrelRadius; } | Float_t GetBarrelRadius() const { return fBarrelRadius; } | |||
void SetBarrelRadius(Float_t r) { fBarrelRadius = r; ResetBBox(); } | void SetBarrelRadius(Float_t r) { fBarrelRadius = r; ResetBBox(); } | |||
Float_t GetEndCapPos () const { return fEndCapPos; } | Float_t GetEndCapPos () const { return fEndCapPos; } | |||
skipping to change at line 153 | skipping to change at line 154 | |||
class TEveCalo3D : public TEveCaloViz | class TEveCalo3D : public TEveCaloViz | |||
{ | { | |||
friend class TEveCalo3DGL; | friend class TEveCalo3DGL; | |||
private: | private: | |||
TEveCalo3D(const TEveCalo3D&); // Not implemented | TEveCalo3D(const TEveCalo3D&); // Not implemented | |||
TEveCalo3D& operator=(const TEveCalo3D&); // Not implemented | TEveCalo3D& operator=(const TEveCalo3D&); // Not implemented | |||
protected: | protected: | |||
TEveCaloData::vCellId_t fCellList; | TEveCaloData::vCellId_t fCellList; | |||
TEveCaloData::vCellId_t fCellListSelected; | ||||
Bool_t fRnrEndCapFrame; | Bool_t fRnrEndCapFrame; | |||
Bool_t fRnrBarrelFrame; | Bool_t fRnrBarrelFrame; | |||
Color_t fFrameColor; | Color_t fFrameColor; | |||
UChar_t fFrameTransparency; | UChar_t fFrameTransparency; | |||
virtual void BuildCellIdCache(); | virtual void BuildCellIdCache(); | |||
public: | public: | |||
skipping to change at line 196 | skipping to change at line 196 | |||
friend class TEveCalo2DGL; | friend class TEveCalo2DGL; | |||
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); | ||||
protected: | protected: | |||
std::vector<TEveCaloData::vCellId_t*> fCellLists; | std::vector<TEveCaloData::vCellId_t*> fCellLists; | |||
std::vector<TEveCaloData::vCellId_t*> fCellListsSelected; | std::vector<TEveCaloData::vCellId_t*> fCellListsSelected; | |||
std::vector<Int_t> fBinIdsSelected; | std::vector<TEveCaloData::vCellId_t*> fCellListsHighlighted; | |||
Float_t fMaxESumBin; | Float_t fMaxESumBin; | |||
Float_t fMaxEtSumBin; | Float_t fMaxEtSumBin; | |||
virtual void BuildCellIdCache(); | virtual void BuildCellIdCache(); | |||
virtual void SetDepthLocal(Float_t x) { fDepth = x; } | virtual void SetDepthLocal(Float_t x) { fDepth = x; } | |||
public: | public: | |||
TEveCalo2D(const char* n="TEveCalo2D", const char* t=""); | TEveCalo2D(const char* n="TEveCalo2D", const char* t=""); | |||
skipping to change at line 263 | skipping to change at line 264 | |||
Int_t fPixelsPerBin; | Int_t fPixelsPerBin; | |||
Bool_t fNormalizeRebin; | Bool_t fNormalizeRebin; | |||
EProjection_e fProjection; | EProjection_e fProjection; | |||
E2DMode_e f2DMode; | E2DMode_e f2DMode; | |||
EBoxMode_e fBoxMode; // additional scale info | EBoxMode_e fBoxMode; // additional scale info | |||
Bool_t fDrawHPlane; | Bool_t fDrawHPlane; | |||
Float_t fHPlaneVal; | Float_t fHPlaneVal; | |||
Int_t fBinStep; | ||||
Int_t fDrawNumberCellPixels; | Int_t fDrawNumberCellPixels; | |||
Int_t fCellPixelFontSize; | Int_t fCellPixelFontSize; | |||
virtual void BuildCellIdCache(); | virtual void BuildCellIdCache(); | |||
public: | public: | |||
TEveCaloLego(TEveCaloData* data=0, const char* n="TEveCaloLego", const c har* t=""); | TEveCaloLego(TEveCaloData* data=0, const char* n="TEveCaloLego", const c har* t=""); | |||
virtual ~TEveCaloLego(){} | virtual ~TEveCaloLego(){} | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
End of changes. 7 change blocks. | ||||
7 lines changed or deleted | 6 lines changed or added | |||
TEveCalo2DGL.h | TEveCalo2DGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCalo2DGL.h 30929 2009-10-30 15:18:51Z matevz $ | // @(#)root/eve:$Id: TEveCalo2DGL.h 33198 2010-04-26 08:40:04Z 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 39 | skipping to change at line 39 | |||
TEveCalo2DGL& operator=(const TEveCalo2DGL&); // Not implemented | TEveCalo2DGL& operator=(const TEveCalo2DGL&); // Not implemented | |||
protected: | protected: | |||
TEveCalo2D *fM; // Model object. | TEveCalo2D *fM; // Model object. | |||
void MakeRhoZCell(Float_t thetaMin, Float_t thetaMax, Float_t& offs et, Bool_t isBarrel, Bool_t phiPlus, Float_t towerH) const; | void MakeRhoZCell(Float_t thetaMin, Float_t thetaMax, Float_t& offs et, Bool_t isBarrel, Bool_t phiPlus, Float_t towerH) const; | |||
void MakeRPhiCell(Float_t phiMin, Float_t phiMax, Float_t towerH, F loat_t offset) const; | void MakeRPhiCell(Float_t phiMin, Float_t phiMax, Float_t towerH, F loat_t offset) const; | |||
void DrawRPhi(TGLRnrCtx & rnrCtx, TEveCalo2D::vBinCells_t&) const; | void DrawRPhi(TGLRnrCtx & rnrCtx, TEveCalo2D::vBinCells_t&) const; | |||
void DrawRPhiHighlighted(TGLRnrCtx & rnrCtx) const; | void DrawRPhiHighlighted(std::vector<TEveCaloData::vCellId_t*>& cel lLists) const; | |||
void DrawRhoZ(TGLRnrCtx & rnrCtx, TEveCalo2D::vBinCells_t&) const; | void DrawRhoZ(TGLRnrCtx & rnrCtx, TEveCalo2D::vBinCells_t&) const; | |||
void DrawRhoZHighlighted(TGLRnrCtx & rnrCtx) const; | void DrawRhoZHighlighted(std::vector<TEveCaloData::vCellId_t*>& cel lLists) const; | |||
Bool_t IsRPhi() const; | Bool_t IsRPhi() const; | |||
public: | public: | |||
TEveCalo2DGL(); | TEveCalo2DGL(); | |||
virtual ~TEveCalo2DGL() {} | virtual ~TEveCalo2DGL() {} | |||
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; | |||
virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps ) const; | virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps , Int_t lvl=-1) 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 Bool_t AlwaysSecondarySelect() const { return kTRUE; } | virtual Bool_t AlwaysSecondarySelect() const { return kTRUE; } | |||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & rec) ; | virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & rec) ; | |||
ClassDef(TEveCalo2DGL, 0); // GL renderer class for TEveCalo2D. | ClassDef(TEveCalo2DGL, 0); // GL renderer class for TEveCalo2D. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
TEveCalo3DGL.h | TEveCalo3DGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCalo3DGL.h 30883 2009-10-27 11:30:59Z matevz $ | // @(#)root/eve:$Id: TEveCalo3DGL.h 33198 2010-04-26 08:40:04Z 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 35 | skipping to change at line 35 | |||
void CrossProduct(const Float_t a[3], const Float_t b[3], const Float _t c[3], Float_t out[3]) const; | void CrossProduct(const Float_t a[3], const Float_t b[3], const Float _t c[3], Float_t out[3]) const; | |||
void RenderBox(const Float_t pnts[8]) const; | void RenderBox(const Float_t pnts[8]) const; | |||
void RenderGridEndCap() const; | void RenderGridEndCap() const; | |||
void RenderGridBarrel() const; | void RenderGridBarrel() const; | |||
void RenderGrid(TGLRnrCtx & rnrCtx) const; | void RenderGrid(TGLRnrCtx & rnrCtx) const; | |||
Float_t RenderBarrelCell(const TEveCaloData::CellGeom_t &cell, Float_t t owerH, Float_t offset) const; | Float_t RenderBarrelCell(const TEveCaloData::CellGeom_t &cell, Float_t t owerH, Float_t offset) const; | |||
Float_t RenderEndCapCell(const TEveCaloData::CellGeom_t &cell, Float_t t owerH, Float_t offset) const; | Float_t RenderEndCapCell(const TEveCaloData::CellGeom_t &cell, Float_t t owerH, Float_t offset) const; | |||
void DrawSelectedCells(TEveCaloData::vCellId_t cells) const; | ||||
protected: | protected: | |||
TEveCalo3D *fM; // Model object. | TEveCalo3D *fM; // Model object. | |||
mutable std::vector<Float_t> fOffset; | mutable std::vector<Float_t> fOffset; | |||
public: | public: | |||
TEveCalo3DGL(); | TEveCalo3DGL(); | |||
virtual ~TEveCalo3DGL() {} | virtual ~TEveCalo3DGL() {} | |||
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; | |||
virtual void DrawHighlight(TGLRnrCtx & rnrCtx, const TGLPhysicalShape* ps) const; | virtual void DrawHighlight(TGLRnrCtx & rnrCtx, const TGLPhysicalShape* ps, Int_t lvl=-1) const; | |||
virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const; | virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const; | |||
virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | |||
virtual Bool_t AlwaysSecondarySelect() const { return kTRUE; } | virtual Bool_t AlwaysSecondarySelect() const { return kTRUE; } | |||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re c); | virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re c); | |||
ClassDef(TEveCalo3DGL, 0); // GL renderer class for TEveCalo. | ClassDef(TEveCalo3DGL, 0); // GL renderer class for TEveCalo. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TEveCaloData.h | TEveCaloData.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCaloData.h 31075 2009-11-10 20:03:38Z matevz $ | // @(#)root/eve:$Id: TEveCaloData.h 33198 2010-04-26 08:40:04Z 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 120 | skipping to change at line 120 | |||
}; | }; | |||
struct RebinData_t | struct RebinData_t | |||
{ | { | |||
Int_t fNSlices; | Int_t fNSlices; | |||
std::vector<Float_t> fSliceData; | std::vector<Float_t> fSliceData; | |||
std::vector<Int_t> fBinData; | std::vector<Int_t> fBinData; | |||
Float_t* GetSliceVals(Int_t bin); | Float_t* GetSliceVals(Int_t bin); | |||
void Clear() | ||||
{ | ||||
fSliceData.clear(); | ||||
fBinData.clear(); | ||||
} | ||||
}; | }; | |||
/*********************************************************************** ***/ | /*********************************************************************** ***/ | |||
typedef std::vector<CellId_t> vCellId_t; | typedef std::vector<CellId_t> vCellId_t; | |||
typedef std::vector<CellId_t>::iterator vCellId_i; | typedef std::vector<CellId_t>::iterator vCellId_i; | |||
typedef std::vector<CellGeom_t> vCellGeom_t; | typedef std::vector<CellGeom_t> vCellGeom_t; | |||
typedef std::vector<CellGeom_t>::iterator vCellGeom_i; | typedef std::vector<CellGeom_t>::iterator vCellGeom_i; | |||
typedef std::vector<CellGeom_t>::const_iterator vCellGeom_ci; | typedef std::vector<CellGeom_t>::const_iterator vCellGeom_ci; | |||
skipping to change at line 149 | skipping to change at line 155 | |||
TAxis* fPhiAxis; | TAxis* fPhiAxis; | |||
Bool_t fWrapTwoPi; | Bool_t fWrapTwoPi; | |||
Float_t fMaxValEt; // cached | Float_t fMaxValEt; // cached | |||
Float_t fMaxValE; // cached | Float_t fMaxValE; // cached | |||
Float_t fEps; | Float_t fEps; | |||
vCellId_t fCellsSelected; | vCellId_t fCellsSelected; | |||
vCellId_t fCellsHighlighted; | ||||
public: | public: | |||
TEveCaloData(const char* n="TEveCalData", const char* t=""); | TEveCaloData(const char* n="TEveCalData", const char* t=""); | |||
virtual ~TEveCaloData() {} | virtual ~TEveCaloData() {} | |||
virtual void SelectElement(Bool_t state); | virtual void UnSelected(); | |||
virtual void UnHighlighted(); | ||||
virtual TString GetHighlightTooltip(); | ||||
virtual void FillImpliedSelectedSet(Set_t& impSelSet); | virtual void FillImpliedSelectedSet(Set_t& impSelSet); | |||
virtual void GetCellList(Float_t etaMin, Float_t etaMax, | virtual void GetCellList(Float_t etaMin, Float_t etaMax, | |||
Float_t phi, Float_t phiRng, | Float_t phi, Float_t phiRng, | |||
vCellId_t &out) const = 0; | vCellId_t &out) const = 0; | |||
vCellId_t& GetCellsSelected() { return fCellsSelected; } | vCellId_t& GetCellsSelected() { return fCellsSelected; } | |||
vCellId_t& GetCellsHighlighted() { return fCellsHighlighted; } | ||||
void PrintCellsSelected(); | void PrintCellsSelected(); | |||
virtual void Rebin(TAxis *ax, TAxis *ay, vCellId_t &in, Bool_t et, Re binData_t &out) const = 0; | virtual void Rebin(TAxis *ax, TAxis *ay, vCellId_t &in, Bool_t et, Re binData_t &out) const = 0; | |||
virtual void GetCellData(const CellId_t &id, CellData_t& data) const = 0; | virtual void GetCellData(const CellId_t &id, CellData_t& data) const = 0; | |||
virtual void InvalidateUsersCellIdCache(); | virtual void InvalidateUsersCellIdCache(); | |||
virtual void DataChanged(); | virtual void DataChanged(); | |||
virtual void CellSelectionChanged(); | virtual void CellSelectionChanged(); | |||
End of changes. 5 change blocks. | ||||
3 lines changed or deleted | 15 lines changed or added | |||
TEveCaloLegoGL.h | TEveCaloLegoGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCaloLegoGL.h 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveCaloLegoGL.h 33198 2010-04-26 08:40:04Z matevz $ | |||
// Author: Alja Mrak-Tadel 2007 | // Author: Alja Mrak-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 28 | skipping to change at line 28 | |||
#include "TEveCaloData.h" | #include "TEveCaloData.h" | |||
#include "TEveVector.h" | #include "TEveVector.h" | |||
#include "TEveCalo.h" | #include "TEveCalo.h" | |||
#include <map> | #include <map> | |||
class TEveCaloLego; | class TEveCaloLego; | |||
class TEveCaloLegoGL : public TGLObject | class TEveCaloLegoGL : public TGLObject | |||
{ | { | |||
friend class TEveCaloLegoOverlay; | ||||
private: | private: | |||
struct Cell2D_t | struct Cell2D_t | |||
{ | { | |||
Int_t fId; | Int_t fId; | |||
Float_t fSumVal; | Float_t fSumVal; | |||
Int_t fMaxSlice; | Int_t fMaxSlice; | |||
Float_t fX0, fX1, fY0, fY1; | Float_t fX0, fX1, fY0, fY1; | |||
Cell2D_t(Int_t id, Float_t sumVal, Int_t maxSlice) | Cell2D_t(Int_t id, Float_t sumVal, Int_t maxSlice) | |||
skipping to change at line 83 | skipping to change at line 85 | |||
mutable TEveVector fBackPlaneYConst[2]; | mutable TEveVector fBackPlaneYConst[2]; | |||
mutable TGLAxisPainter fAxisPainter; | mutable TGLAxisPainter fAxisPainter; | |||
// cached | // cached | |||
TEveCaloLego *fM; | TEveCaloLego *fM; | |||
mutable Bool_t fDLCacheOK; | mutable Bool_t fDLCacheOK; | |||
mutable vCell2D_t fCells2D; | mutable vCell2D_t fCells2D; | |||
mutable TEveCaloData::RebinData_t fRebinData; | mutable TEveCaloData::RebinData_t fRebinData; | |||
mutable Float_t fMaxValRebin; | mutable Float_t fMaxVal; | |||
mutable Float_t fValToPixel; // top logaritmic viewvie w | mutable Float_t fValToPixel; // top logaritmic viewvie w | |||
mutable Int_t fCurrentPixelsPerBin; | mutable Int_t fCurrentPixelsPerBin; | |||
mutable SliceDLMap_t fDLMap; | mutable SliceDLMap_t fDLMap; | |||
mutable Bool_t fCells3D; | mutable Bool_t fCells3D; | |||
mutable Int_t fBinStep; | ||||
TEveCaloLegoGL(const TEveCaloLegoGL&); // Stop default | TEveCaloLegoGL(const TEveCaloLegoGL&); // Stop default | |||
TEveCaloLegoGL& operator=(const TEveCaloLegoGL&); // Stop default | TEveCaloLegoGL& operator=(const TEveCaloLegoGL&); // Stop default | |||
protected: | protected: | |||
Int_t GetGridStep(TGLRnrCtx &rnrCtx) const; | Int_t GetGridStep(TGLRnrCtx &rnrCtx) const; | |||
void RebinAxis(TAxis *orig, TAxis *curr) const; | void RebinAxis(TAxis *orig, TAxis *curr) const; | |||
void SetAxis3DTitlePos(TGLRnrCtx &rnrCtx, Float_t x0, Float_t x1, Flo at_t y0, Float_t y1) const; | void SetAxis3DTitlePos(TGLRnrCtx &rnrCtx, Float_t x0, Float_t x1, Flo at_t y0, Float_t y1) const; | |||
void DrawAxis3D(TGLRnrCtx &rnrCtx) const; | void DrawAxis3D(TGLRnrCtx &rnrCtx) const; | |||
void DrawAxis2D(TGLRnrCtx &rnrCtx) const; | void DrawAxis2D(TGLRnrCtx &rnrCtx) const; | |||
void DrawHistBase(TGLRnrCtx &rnrCtx) const; | void DrawHistBase(TGLRnrCtx &rnrCtx) const; | |||
// highlight | ||||
void DrawSelectedCells(TGLRnrCtx & rnrCtx, TEveCaloData::vCellId_t ce | ||||
lls) const; | ||||
// top view | // top view | |||
void PrepareCell2DData(TEveCaloData::vCellId_t& cellList, vCell2D_t& cells2D) const; | void PrepareCell2DData(TEveCaloData::vCellId_t& cellList, vCell2D_t& cells2D) const; | |||
void PrepareCell2DDataRebin(TEveCaloData::RebinData_t& rebinData, vCe ll2D_t& cells2D) const; | void PrepareCell2DDataRebin(TEveCaloData::RebinData_t& rebinData, vCe ll2D_t& cells2D) const; | |||
void DrawCells2D(TGLRnrCtx & rnrCtx, vCell2D_t& cells2D) const; | void DrawCells2D(TGLRnrCtx & rnrCtx, vCell2D_t& cells2D) const; | |||
// 3D view | // 3D view | |||
void DrawCells3D(TGLRnrCtx & rnrCtx) const; | void DrawCells3D(TGLRnrCtx & rnrCtx) const; | |||
void MakeQuad(Float_t x, Float_t y, Float_t z, Float_t xw, Float_t yw , Float_t zh) const; | void MakeQuad(Float_t x, Float_t y, Float_t z, Float_t xw, Float_t yw , Float_t zh) const; | |||
void Make3DDisplayList(TEveCaloData::vCellId_t& cellList, SliceDLMap_ t& map, Bool_t select) const; | void Make3DDisplayList(TEveCaloData::vCellId_t& cellList, SliceDLMap_ t& map, Bool_t select) const; | |||
void Make3DDisplayListRebin(TEveCaloData::RebinData_t& rebinData, Sli ceDLMap_t& map, Bool_t select) const; | void Make3DDisplayListRebin(TEveCaloData::RebinData_t& rebinData, Sli ceDLMap_t& map, Bool_t select) const; | |||
skipping to change at line 127 | skipping to change at line 134 | |||
virtual ~TEveCaloLegoGL(); | virtual ~TEveCaloLegoGL(); | |||
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 DLCacheDrop(); | virtual void DLCacheDrop(); | |||
virtual void DLCachePurge(); | virtual void DLCachePurge(); | |||
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | |||
virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps) const; | virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* ps, Int_t lvl=-1) const; | |||
virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | |||
virtual Bool_t AlwaysSecondarySelect() const { return kTRUE; } | virtual Bool_t AlwaysSecondarySelect() const { return kTRUE; } | |||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re c); | virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re c); | |||
ClassDef(TEveCaloLegoGL, 0); // GL renderer class for TEveCaloLego. | ClassDef(TEveCaloLegoGL, 0); // GL renderer class for TEveCaloLego. | |||
}; | }; | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline void TEveCaloLegoGL::WrapTwoPi(Float_t &min, Float_t &max) const | inline void TEveCaloLegoGL::WrapTwoPi(Float_t &min, Float_t &max) const | |||
End of changes. 6 change blocks. | ||||
3 lines changed or deleted | 11 lines changed or added | |||
TEveChunkManager.h | TEveChunkManager.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveChunkManager.h 21807 2008-01-22 15:46:23Z matevz $ | // @(#)root/eve:$Id: TEveChunkManager.h 33124 2010-04-21 20:04:42Z 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 76 | skipping to change at line 76 | |||
// Iterator | // Iterator | |||
struct iterator | struct iterator | |||
{ | { | |||
TEveChunkManager *fPlex; | TEveChunkManager *fPlex; | |||
Char_t *fCurrent; | Char_t *fCurrent; | |||
Int_t fAtomIndex; | Int_t fAtomIndex; | |||
Int_t fNextChunk; | Int_t fNextChunk; | |||
Int_t fAtomsToGo; | Int_t fAtomsToGo; | |||
const std::set<Int_t> *fSelection; | ||||
std::set<Int_t>::const_iterator fSelectionIterator; | ||||
iterator(TEveChunkManager* p) : | iterator(TEveChunkManager* p) : | |||
fPlex(p), fCurrent(0), fAtomIndex(-1), fNextChunk(0), fAtomsToGo(0 | fPlex(p), fCurrent(0), fAtomIndex(-1), | |||
) {} | fNextChunk(0), fAtomsToGo(0), fSelection(0) {} | |||
iterator(TEveChunkManager& p) : | iterator(TEveChunkManager& p) : | |||
fPlex(&p), fCurrent(0), fAtomIndex(-1), fNextChunk(0), fAtomsToGo( | fPlex(&p), fCurrent(0), fAtomIndex(-1), | |||
0) {} | fNextChunk(0), fAtomsToGo(0), fSelection(0) {} | |||
iterator(const iterator& i) : | iterator(const iterator& i) : | |||
fPlex(i.fPlex), fCurrent(i.fCurrent), fAtomIndex(i.fAtomIndex), fN | fPlex(i.fPlex), fCurrent(i.fCurrent), fAtomIndex(i.fAtomIndex), | |||
extChunk(i.fNextChunk), fAtomsToGo(i.fAtomsToGo) {} | fNextChunk(i.fNextChunk), fAtomsToGo(i.fAtomsToGo), | |||
fSelection(i.fSelection), fSelectionIterator(i.fSelectionIterator) | ||||
iterator& operator=(const iterator& i) | {} | |||
{ fPlex = i.fPlex; fCurrent = i.fCurrent; fAtomIndex = i.fAtomIndex; | ||||
fNextChunk = i.fNextChunk; fAtomsToGo = i.fAtomsToGo; return *this; } | iterator& operator=(const iterator& i) { | |||
fPlex = i.fPlex; fCurrent = i.fCurrent; fAtomIndex = i.fAtomIndex; | ||||
fNextChunk = i.fNextChunk; fAtomsToGo = i.fAtomsToGo; | ||||
fSelection = i.fSelection; fSelectionIterator = i.fSelectionIterat | ||||
or; | ||||
return *this; | ||||
} | ||||
Bool_t next(); | Bool_t next(); | |||
void reset() { fCurrent = 0; fNextChunk = fAtomsToGo = 0; } | void reset() { fCurrent = 0; fAtomIndex = -1; fNextChunk = fAtomsT oGo = 0; } | |||
Char_t* operator()() { return fCurrent; } | Char_t* operator()() { return fCurrent; } | |||
Char_t* operator*() { return fCurrent; } | Char_t* operator*() { return fCurrent; } | |||
Int_t index() { return fAtomIndex; } | Int_t index() { return fAtomIndex; } | |||
}; | }; | |||
ClassDef(TEveChunkManager, 1); // Vector-like container with chunked mem ory allocation. | ClassDef(TEveChunkManager, 1); // Vector-like container with chunked mem ory allocation. | |||
}; | }; | |||
/************************************************************************** | ||||
****/ | ||||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Char_t* TEveChunkManager::NewAtom() | inline Char_t* TEveChunkManager::NewAtom() | |||
{ | { | |||
Char_t *a = (fSize >= fCapacity) ? NewChunk() : Atom(fSize); | Char_t *a = (fSize >= fCapacity) ? NewChunk() : Atom(fSize); | |||
++fSize; | ++fSize; | |||
return a; | return a; | |||
} | } | |||
//_________________________________________________________________________ | ||||
_____ | ||||
inline Bool_t TEveChunkManager::iterator::next() | ||||
{ | ||||
if (fAtomsToGo <= 0) { | ||||
if (fNextChunk < fPlex->VecSize()) { | ||||
fCurrent = fPlex->Chunk(fNextChunk); | ||||
fAtomsToGo = fPlex->NAtoms(fNextChunk); | ||||
++fNextChunk; | ||||
} else { | ||||
return kFALSE; | ||||
} | ||||
} else { | ||||
fCurrent += fPlex->S(); | ||||
} | ||||
++fAtomIndex; | ||||
--fAtomsToGo; | ||||
return kTRUE; | ||||
} | ||||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
// Templated some-class TEveChunkVector | // Templated some-class TEveChunkVector | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
template<class T> | template<class T> | |||
class TEveChunkVector : public TEveChunkManager | class TEveChunkVector : public TEveChunkManager | |||
{ | { | |||
private: | private: | |||
TEveChunkVector(const TEveChunkVector&); // Not implemented | TEveChunkVector(const TEveChunkVector&); // Not implemented | |||
TEveChunkVector& operator=(const TEveChunkVector&); // Not implemented | TEveChunkVector& operator=(const TEveChunkVector&); // Not implemented | |||
End of changes. 8 change blocks. | ||||
35 lines changed or deleted | 21 lines changed or added | |||
TEveCompound.h | TEveCompound.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCompound.h 30849 2009-10-23 13:45:23Z matevz $ | // @(#)root/eve:$Id: TEveCompound.h 33071 2010-04-16 16:34:39Z 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 64 | skipping to change at line 64 | |||
// TEveCompoundProjected | // TEveCompoundProjected | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveCompoundProjected : public TEveCompound, | class TEveCompoundProjected : public TEveCompound, | |||
public TEveProjected | public TEveProjected | |||
{ | { | |||
private: | private: | |||
TEveCompoundProjected(const TEveCompoundProjected&); // Not i mplemented | TEveCompoundProjected(const TEveCompoundProjected&); // Not i mplemented | |||
TEveCompoundProjected& operator=(const TEveCompoundProjected&); // Not i mplemented | TEveCompoundProjected& operator=(const TEveCompoundProjected&); // Not i mplemented | |||
protected: | ||||
virtual void SetDepthLocal(Float_t /*d*/) {} | ||||
public: | public: | |||
TEveCompoundProjected(); | TEveCompoundProjected(); | |||
virtual ~TEveCompoundProjected() {} | virtual ~TEveCompoundProjected() {} | |||
virtual void SetMainColor(Color_t color); | virtual void SetMainColor(Color_t color); | |||
virtual void UpdateProjection() {} | virtual void UpdateProjection() {} | |||
ClassDef(TEveCompoundProjected, 0); // Projected TEveCompund container. | ClassDef(TEveCompoundProjected, 0); // Projected TEveCompund container. | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 1 lines changed or added | |||
TEveDigitSet.h | TEveDigitSet.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveDigitSet.h 27157 2009-01-15 14:05:12Z brun $ | // @(#)root/eve:$Id: TEveDigitSet.h 33124 2010-04-21 20:04:42Z 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 25 | skipping to change at line 25 | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#include "TQObject.h" | #include "TQObject.h" | |||
#include "TAtt3D.h" | #include "TAtt3D.h" | |||
#include "TAttBBox.h" | #include "TAttBBox.h" | |||
#include "TEveUtil.h" | #include "TEveUtil.h" | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TEveFrameBox.h" | #include "TEveFrameBox.h" | |||
#include "TEveRGBAPalette.h" | #include "TEveRGBAPalette.h" | |||
#include "TEveChunkManager.h" | #include "TEveChunkManager.h" | |||
#include "TEveSecondarySelectable.h" | ||||
#include "TObject.h" | class TRefArray; | |||
class TEveDigitSet : public TEveElement, | class TEveDigitSet : public TEveElement, | |||
public TNamed, public TQObject, | public TNamed, public TQObject, | |||
public TAtt3D, | public TAtt3D, | |||
public TAttBBox | public TAttBBox, | |||
public TEveSecondarySelectable | ||||
{ | { | |||
friend class TEveDigitSetEditor; | friend class TEveDigitSetEditor; | |||
friend class TEveDigitSetGL; | ||||
TEveDigitSet(const TEveDigitSet&); // Not implemented | TEveDigitSet(const TEveDigitSet&); // Not implemented | |||
TEveDigitSet& operator=(const TEveDigitSet&); // Not implemented | TEveDigitSet& operator=(const TEveDigitSet&); // Not implemented | |||
public: | public: | |||
enum ERenderMode_e { kRM_AsIs, kRM_Line, kRM_Fill }; | enum ERenderMode_e { kRM_AsIs, kRM_Line, kRM_Fill }; | |||
typedef void (*Callback_foo)(TEveDigitSet*, Int_t, TObject*); | typedef void (*Callback_foo)(TEveDigitSet*, Int_t, TObject*); | |||
typedef TString (*TooltipCB_foo)(TEveDigitSet*, Int_t); | ||||
protected: | protected: | |||
struct DigitBase_t | struct DigitBase_t | |||
{ | { | |||
// Base-class for digit representation classes. | // Base-class for digit representation classes. | |||
Int_t fValue; // signal value of a digit (can be direct RGBA color) | Int_t fValue; // signal value of a digit (can be direct RGBA colo | |||
TRef fId; // external object reference | r) | |||
void *fUserData; // user-data for given digit | ||||
DigitBase_t(Int_t v=0) : fValue(v), fId() {} | DigitBase_t(Int_t v=0) : fValue(v), fUserData(0) {} | |||
virtual ~DigitBase_t() {} | ||||
}; | }; | |||
TRefArray *fDigitIds; // Array holding references to exter | ||||
nal objects. | ||||
Int_t fDefaultValue; // Default signal value. | Int_t fDefaultValue; // Default signal value. | |||
Bool_t fValueIsColor; // Interpret signal value as RGBA co lor. | Bool_t fValueIsColor; // Interpret signal value as RGBA co lor. | |||
Bool_t fOwnIds; // Flag specifying if id-objects are | Bool_t fSingleColor; // Use the same color for all digits | |||
owned by the TEveDigitSet | . | |||
Bool_t fOwnIds; // Flag specifying if id-objects are | ||||
owned by the TEveDigitSet. | ||||
TEveChunkManager fPlex; // Container of digit data. | TEveChunkManager fPlex; // Container of digit data. | |||
DigitBase_t* fLastDigit; //! The last digit added to collectio | DigitBase_t* fLastDigit; //! The last / current digit added to | |||
n. | collection. | |||
Int_t fLastIdx; //! The last / current idx added to c | ||||
ollection. | ||||
Color_t fColor; // Color used for frame (or all digi s with single-color). | ||||
TEveFrameBox* fFrame; // Pointer to frame structure. | TEveFrameBox* fFrame; // Pointer to frame structure. | |||
TEveRGBAPalette* fPalette; // Pointer to signal-color palette. | TEveRGBAPalette* fPalette; // Pointer to signal-color palette. | |||
ERenderMode_e fRenderMode; // Render mode: as-is / line / fille d. | ERenderMode_e fRenderMode; // Render mode: as-is / line / fille d. | |||
Bool_t fDisableLigting; // Disable lighting for rendering. | Bool_t fDisableLigting; // Disable lighting for rendering. | |||
Bool_t fHistoButtons; // Show histogram buttons in object editor. | Bool_t fHistoButtons; // Show histogram buttons in object editor. | |||
Bool_t fEmitSignals; // Emit signals on secondary-select. | Bool_t fEmitSignals; // Emit signals on secondary-select. | |||
Callback_foo fCallbackFoo; //! Additional function to call on se condary-select. | Callback_foo fCallbackFoo; //! Additional function to call on se condary-select. | |||
TooltipCB_foo fTooltipCBFoo; //! Function providing highlight tool tips when always-sec-select is active. | ||||
DigitBase_t* NewDigit(); | DigitBase_t* NewDigit(); | |||
void ReleaseIds(); | void ReleaseIds(); | |||
public: | public: | |||
TEveDigitSet(const char* n="TEveDigitSet", const char* t=""); | TEveDigitSet(const char* n="TEveDigitSet", const char* t=""); | |||
virtual ~TEveDigitSet(); | virtual ~TEveDigitSet(); | |||
void UseSingleColor(); | ||||
virtual Bool_t CanEditMainColor() const { return kTRUE; } | virtual Bool_t CanEditMainColor() const { return kTRUE; } | |||
virtual void SetMainColor(Color_t color); | virtual void SetMainColor(Color_t color); | |||
virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | |||
virtual void UnSelected(); | ||||
virtual void UnHighlighted(); | ||||
virtual TString GetHighlightTooltip(); | ||||
// Implemented in sub-classes: | // Implemented in sub-classes: | |||
// virtual void Reset(EQuadType_e quadType, Bool_t valIsCol, Int_t chunk Size); | // virtual void Reset(EQuadType_e quadType, Bool_t valIsCol, Int_t chunk Size); | |||
void RefitPlex(); | void RefitPlex(); | |||
void ScanMinMaxValues(Int_t& min, Int_t& max); | void ScanMinMaxValues(Int_t& min, Int_t& max); | |||
// -------------------------------- | // -------------------------------- | |||
void SetCurrentDigit(Int_t idx); | ||||
void DigitValue(Int_t value); | void DigitValue(Int_t value); | |||
void DigitColor(Color_t ci); | void DigitColor(Color_t ci); | |||
void DigitColor(Color_t ci, UChar_t transparency); | void DigitColor(Color_t ci, UChar_t transparency); | |||
void DigitColor(UChar_t r, UChar_t g, UChar_t b, UChar_t a=255); | void DigitColor(UChar_t r, UChar_t g, UChar_t b, UChar_t a=255); | |||
void DigitColor(UChar_t* rgba); | void DigitColor(UChar_t* rgba); | |||
void DigitId(TObject* id); | ||||
Bool_t GetOwnIds() const { return fOwnIds; } | Bool_t GetOwnIds() const { return fOwnIds; } | |||
void SetOwnIds(Bool_t o) { fOwnIds = o; } | void SetOwnIds(Bool_t o) { fOwnIds = o; } | |||
DigitBase_t* GetDigit(Int_t n) { return (DigitBase_t*) fPlex.Atom(n); | void DigitId(TObject* id); | |||
} | void DigitUserData(void* ud); | |||
TObject* GetId(Int_t n) { return GetDigit(n)->fId.GetObject(); } | ||||
void DigitId(Int_t n, TObject* id); | ||||
void DigitUserData(Int_t n, void* ud); | ||||
DigitBase_t* GetDigit(Int_t n) const { return (DigitBase_t*) fPlex.Atom( | ||||
n); } | ||||
TObject* GetId(Int_t n) const; | ||||
void* GetUserData(Int_t n) const; | ||||
// -------------------------------- | // -------------------------------- | |||
// Implemented in subclasses: | // Implemented in subclasses: | |||
// virtual void ComputeBBox(); | // virtual void ComputeBBox(); | |||
virtual void Paint(Option_t* option=""); | virtual void Paint(Option_t* option=""); | |||
virtual void DigitSelected(Int_t idx); | virtual void DigitSelected(Int_t idx); | |||
virtual void SecSelected(TEveDigitSet* qs, Int_t idx); // *SIGNAL* | virtual void SecSelected(TEveDigitSet* qs, Int_t idx); // *SIGNAL* | |||
skipping to change at line 139 | skipping to change at line 162 | |||
Bool_t GetHistoButtons() const { return fHistoButtons; } | Bool_t GetHistoButtons() const { return fHistoButtons; } | |||
void SetHistoButtons(Bool_t f) { fHistoButtons = f; } | void SetHistoButtons(Bool_t f) { fHistoButtons = f; } | |||
Bool_t GetEmitSignals() const { return fEmitSignals; } | Bool_t GetEmitSignals() const { return fEmitSignals; } | |||
void SetEmitSignals(Bool_t f) { fEmitSignals = f; } | void SetEmitSignals(Bool_t f) { fEmitSignals = f; } | |||
Callback_foo GetCallbackFoo() const { return fCallbackFoo; } | Callback_foo GetCallbackFoo() const { return fCallbackFoo; } | |||
void SetCallbackFoo(Callback_foo f) { fCallbackFoo = f; } | void SetCallbackFoo(Callback_foo f) { fCallbackFoo = f; } | |||
TooltipCB_foo GetTooltipCBFoo() const { return fTooltipCBFoo; } | ||||
void SetTooltipCBFoo(TooltipCB_foo f) { fTooltipCBFoo = f; } | ||||
ClassDef(TEveDigitSet, 0); // Base-class for storage of digit collection s; provides transformation matrix (TEveTrans), signal to color mapping (TEv eRGBAPalette) and visual grouping (TEveFrameBox). | ClassDef(TEveDigitSet, 0); // Base-class for storage of digit collection s; provides transformation matrix (TEveTrans), signal to color mapping (TEv eRGBAPalette) and visual grouping (TEveFrameBox). | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 20 change blocks. | ||||
17 lines changed or deleted | 47 lines changed or added | |||
TEveElement.h | TEveElement.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveElement.h 31234 2009-11-17 14:57:10Z matevz $ | // @(#)root/eve:$Id: TEveElement.h 33135 2010-04-22 10:36:40Z 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 63 | skipping to change at line 63 | |||
bool operator==(const TEveListTreeInfo& x) const | bool operator==(const TEveListTreeInfo& x) const | |||
{ return fTree == x.fTree && fItem == x.fItem; } | { return fTree == x.fTree && fItem == x.fItem; } | |||
bool operator<(const TEveListTreeInfo& x) const | bool operator<(const TEveListTreeInfo& x) const | |||
{ return fTree == x.fTree ? fItem < x.fItem : fTree < x.fTree; } | { return fTree == x.fTree ? fItem < x.fItem : fTree < x.fTree; } | |||
ClassDef(TEveListTreeInfo, 0); // Structure agregating data for a ren der element image in a list tree. | ClassDef(TEveListTreeInfo, 0); // Structure agregating data for a ren der element image in a list tree. | |||
}; | }; | |||
static const TGPicture* fgRnrIcons[4]; | static const TGPicture* fgRnrIcons[4]; | |||
static const TGPicture* fgListTreeIcons[8]; | static const TGPicture* fgListTreeIcons[9]; | |||
typedef std::set<TEveListTreeInfo> sLTI_t; | typedef std::set<TEveListTreeInfo> sLTI_t; | |||
typedef sLTI_t::iterator sLTI_i; | typedef sLTI_t::iterator sLTI_i; | |||
typedef sLTI_t::reverse_iterator sLTI_ri; | typedef sLTI_t::reverse_iterator sLTI_ri; | |||
typedef std::list<TEveElement*> List_t; | typedef std::list<TEveElement*> List_t; | |||
typedef List_t::iterator List_i; | typedef List_t::iterator List_i; | |||
typedef List_t::const_iterator List_ci; | typedef List_t::const_iterator List_ci; | |||
typedef std::set<TEveElement*> Set_t; | typedef std::set<TEveElement*> Set_t; | |||
skipping to change at line 119 | skipping to change at line 119 | |||
TEveElement(Color_t& main_color); | TEveElement(Color_t& main_color); | |||
TEveElement(const TEveElement& e); | TEveElement(const TEveElement& e); | |||
virtual ~TEveElement(); | virtual ~TEveElement(); | |||
virtual TEveElement* CloneElement() const; | virtual TEveElement* CloneElement() const; | |||
virtual TEveElement* CloneElementRecurse(Int_t level=0) const; | virtual TEveElement* CloneElementRecurse(Int_t level=0) const; | |||
virtual void CloneChildrenRecurse(TEveElement* dest, Int_t level =0) const; | virtual void CloneChildrenRecurse(TEveElement* dest, Int_t level =0) const; | |||
virtual const char* GetElementName() const; | virtual const char* GetElementName() const; | |||
virtual const char* GetElementTitle() const; | virtual const char* GetElementTitle() const; | |||
virtual TString GetHighlightTooltip() { return TString(GetElementTit le()); } | ||||
virtual void SetElementName (const char* name); | virtual void SetElementName (const char* name); | |||
virtual void SetElementTitle(const char* title); | virtual void SetElementTitle(const char* title); | |||
virtual void SetElementNameTitle(const char* name, const char* title); | virtual void SetElementNameTitle(const char* name, const char* title); | |||
virtual void NameTitleChanged(); | virtual void NameTitleChanged(); | |||
const TString& GetVizTag() const { return fVizTag; } | const TString& GetVizTag() const { return fVizTag; } | |||
void SetVizTag(const TString& tag) { fVizTag = tag; } | void SetVizTag(const TString& tag) { fVizTag = tag; } | |||
TEveElement* GetVizModel() const { return fVizModel; } | TEveElement* GetVizModel() const { return fVizModel; } | |||
void SetVizModel(TEveElement* model); | void SetVizModel(TEveElement* model); | |||
skipping to change at line 188 | skipping to change at line 189 | |||
Int_t GetDenyDestroy() const; | Int_t GetDenyDestroy() const; | |||
void IncDenyDestroy(); | void IncDenyDestroy(); | |||
void DecDenyDestroy(); | void DecDenyDestroy(); | |||
Int_t GetParentIgnoreCnt() const; | Int_t GetParentIgnoreCnt() const; | |||
void IncParentIgnoreCnt(); | void IncParentIgnoreCnt(); | |||
void DecParentIgnoreCnt(); | void DecParentIgnoreCnt(); | |||
virtual void PadPaint(Option_t* option); | virtual void PadPaint(Option_t* option); | |||
virtual void PaintStandard(TObject* id); | ||||
virtual TObject* GetObject (const TEveException& eh="TEveElement::G etObject ") const; | virtual TObject* GetObject (const TEveException& eh="TEveElement::G etObject ") const; | |||
virtual TObject* GetEditorObject(const TEveException& eh="TEveElement::G etEditorObject ") const { return GetObject(eh); } | virtual TObject* GetEditorObject(const TEveException& eh="TEveElement::G etEditorObject ") const { return GetObject(eh); } | |||
virtual TObject* GetRenderObject(const TEveException& eh="TEveElement::G etRenderObject ") const { return GetObject(eh); } | virtual TObject* GetRenderObject(const TEveException& eh="TEveElement::G etRenderObject ") const { return GetObject(eh); } | |||
// -------------------------------- | // -------------------------------- | |||
virtual void ExpandIntoListTree(TGListTree* ltree, TGListTreeItem* paren t); | virtual void ExpandIntoListTree(TGListTree* ltree, TGListTreeItem* paren t); | |||
virtual void DestroyListSubTree(TGListTree* ltree, TGListTreeItem* paren t); | virtual void DestroyListSubTree(TGListTree* ltree, TGListTreeItem* paren t); | |||
skipping to change at line 232 | skipping to change at line 234 | |||
void ExportSourceObjectToCINT(char* var_name) const; // *MENU* | void ExportSourceObjectToCINT(char* var_name) const; // *MENU* | |||
virtual Bool_t AcceptElement(TEveElement* el); | virtual Bool_t AcceptElement(TEveElement* el); | |||
virtual void AddElement(TEveElement* el); | virtual void AddElement(TEveElement* el); | |||
virtual void RemoveElement(TEveElement* el); | virtual void RemoveElement(TEveElement* el); | |||
virtual void RemoveElementLocal(TEveElement* el); | virtual void RemoveElementLocal(TEveElement* el); | |||
virtual void RemoveElements(); | virtual void RemoveElements(); | |||
virtual void RemoveElementsLocal(); | virtual void RemoveElementsLocal(); | |||
virtual void ProjectChild(TEveElement* el, Bool_t same_depth=kTRUE); | ||||
virtual void ProjectAllChildren(Bool_t same_depth=kTRUE); | ||||
virtual void Destroy(); // *MENU* | virtual void Destroy(); // *MENU* | |||
virtual void DestroyOrWarn(); | virtual void DestroyOrWarn(); | |||
virtual void DestroyElements(); // *MENU* | virtual void DestroyElements(); // *MENU* | |||
virtual Bool_t HandleElementPaste(TEveElement* el); | virtual Bool_t HandleElementPaste(TEveElement* el); | |||
virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw= kFALSE); | virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw= kFALSE); | |||
virtual Bool_t CanEditElement() const { return kTRUE; } | virtual Bool_t CanEditElement() const { return kTRUE; } | |||
virtual Bool_t SingleRnrState() const { return kFALSE; } | virtual Bool_t SingleRnrState() const { return kFALSE; } | |||
virtual Bool_t GetRnrSelf() const { return fRnrSelf; } | virtual Bool_t GetRnrSelf() const { return fRnrSelf; } | |||
skipping to change at line 270 | skipping to change at line 275 | |||
void SetMainColorRGB(Float_t r, Float_t g, Float_t b); | void SetMainColorRGB(Float_t r, Float_t g, Float_t b); | |||
virtual void PropagateMainColorToProjecteds(Color_t color, Color_t ol d_color); | virtual void PropagateMainColorToProjecteds(Color_t color, Color_t ol d_color); | |||
virtual Bool_t CanEditMainTransparency() const { return kFALSE; } | virtual Bool_t CanEditMainTransparency() const { return kFALSE; } | |||
virtual UChar_t GetMainTransparency() const { return fMainTransparen cy; } | virtual UChar_t GetMainTransparency() const { return fMainTransparen cy; } | |||
virtual void SetMainTransparency(UChar_t t); | virtual void SetMainTransparency(UChar_t t); | |||
void SetMainAlpha(Float_t alpha); | void SetMainAlpha(Float_t alpha); | |||
virtual Bool_t CanEditMainTrans() const { return fCanEditMainTrans; } | virtual Bool_t CanEditMainTrans() const { return fCanEditMainTrans; } | |||
virtual Bool_t HasMainTrans() const { return fMainTrans != 0; } | virtual Bool_t HasMainTrans() const { return fMainTrans != 0; } | |||
virtual TEveTrans* PtrMainTrans(); | virtual TEveTrans* PtrMainTrans(Bool_t create=kTRUE); | |||
virtual TEveTrans& RefMainTrans(); | virtual TEveTrans& RefMainTrans(); | |||
virtual void InitMainTrans(Bool_t can_edit=kTRUE); | virtual void InitMainTrans(Bool_t can_edit=kTRUE); | |||
virtual void DestroyMainTrans(); | virtual void DestroyMainTrans(); | |||
virtual void SetTransMatrix(Double_t* carr); | virtual void SetTransMatrix(Double_t* carr); | |||
virtual void SetTransMatrix(const TGeoMatrix& mat); | virtual void SetTransMatrix(const TGeoMatrix& mat); | |||
TRef& GetSource() { return fSource; } | TRef& GetSource() { return fSource; } | |||
TObject* GetSourceObject() const { return fSource.GetObject(); } | TObject* GetSourceObject() const { return fSource.GetObject(); } | |||
void SetSourceObject(TObject* o) { fSource = o; } | void SetSourceObject(TObject* o) { fSource = o; } | |||
/* | /* | |||
void DumpSourceObject(); // *MENU* | void DumpSourceObject(); // *MENU* | |||
void InspectSourceObject(); // *MENU* | void InspectSourceObject(); // *MENU* | |||
*/ | */ | |||
void* GetUserData() const { return fUserData; } | void* GetUserData() const { return fUserData; } | |||
void SetUserData(void* ud) { fUserData = ud; } | void SetUserData(void* ud) { fUserData = ud; } | |||
// Selection state and management | // Selection state and management | |||
//-------------------------------- | //-------------------------------- | |||
protected: | protected: | |||
Bool_t fPickable; | Bool_t fPickable; | |||
Bool_t fSelected; //! | Bool_t fSelected; //! | |||
Bool_t fHighlighted; //! | Bool_t fHighlighted; //! | |||
Short_t fImpliedSelected; //! | Short_t fImpliedSelected; //! | |||
Short_t fImpliedHighlighted; //! | Short_t fImpliedHighlighted; //! | |||
enum ECompoundSelectionColorBits | ||||
{ | ||||
kCSCBImplySelectAllChildren = BIT(0), // compound will sele | ||||
ct all children | ||||
kCSCBTakeAnyParentAsMaster = BIT(1), // element will take | ||||
any compound parent as master | ||||
kCSCBApplyMainColorToAllChildren = BIT(2), // compound will appl | ||||
y color change to all children | ||||
kCSCBApplyMainColorToMatchingChildren = BIT(3) // compound will appl | ||||
y color change to all children with matching color | ||||
}; | ||||
UChar_t fCSCBits; | ||||
public: | public: | |||
typedef void (TEveElement::* Select_foo) (Bool_t); | typedef void (TEveElement::* Select_foo) (Bool_t); | |||
typedef void (TEveElement::* ImplySelect_foo) (); | typedef void (TEveElement::* ImplySelect_foo) (); | |||
Bool_t IsPickable() const { return fPickable; } | Bool_t IsPickable() const { return fPickable; } | |||
void SetPickable(Bool_t p) { fPickable = p; } | void SetPickable(Bool_t p) { fPickable = p; } | |||
virtual TEveElement* ForwardSelection(); | virtual TEveElement* ForwardSelection(); | |||
virtual TEveElement* ForwardEdit(); | virtual TEveElement* ForwardEdit(); | |||
virtual void SelectElement(Bool_t state); | virtual void SelectElement(Bool_t state); | |||
virtual void IncImpliedSelected(); | virtual void IncImpliedSelected(); | |||
virtual void DecImpliedSelected(); | virtual void DecImpliedSelected(); | |||
virtual void UnSelected(); | ||||
virtual void HighlightElement(Bool_t state); | virtual void HighlightElement(Bool_t state); | |||
virtual void IncImpliedHighlighted(); | virtual void IncImpliedHighlighted(); | |||
virtual void DecImpliedHighlighted(); | virtual void DecImpliedHighlighted(); | |||
virtual void UnHighlighted(); | ||||
virtual void FillImpliedSelectedSet(Set_t& impSelSet); | virtual void FillImpliedSelectedSet(Set_t& impSelSet); | |||
virtual UChar_t GetSelectedLevel() const; | virtual UChar_t GetSelectedLevel() const; | |||
void RecheckImpliedSelections(); | ||||
void SetCSCBits(UChar_t f) { fCSCBits |= f; } | ||||
void ResetCSCBits(UChar_t f) { fCSCBits &= ~f; } | ||||
Bool_t TestCSCBits(UChar_t f) const { return (fCSCBits & f) != 0; } | ||||
void ResetAllCSCBits() { fCSCBits = 0; } | ||||
void CSCImplySelectAllChildren() { fCSCBits |= kCSCBImplySel | ||||
ectAllChildren; } | ||||
void CSCTakeAnyParentAsMaster() { fCSCBits |= kCSCBTakeAnyP | ||||
arentAsMaster; } | ||||
void CSCApplyMainColorToAllChildren() { fCSCBits |= kCSCBApplyMai | ||||
nColorToAllChildren; } | ||||
void CSCApplyMainColorToMatchingChildren() { fCSCBits |= kCSCBApplyMai | ||||
nColorToMatchingChildren; } | ||||
// Change-stamping and change bits | // Change-stamping and change bits | |||
//--------------------------------- | //--------------------------------- | |||
enum EChangeBits | enum EChangeBits | |||
{ | { | |||
kCBColorSelection = BIT(0), // Main color or select/hilite state cha nged. | kCBColorSelection = BIT(0), // Main color or select/hilite state cha nged. | |||
kCBTransBBox = BIT(1), // Transformation matrix or bounding-box changed. | kCBTransBBox = BIT(1), // Transformation matrix or bounding-box changed. | |||
kCBObjProps = BIT(2), // Object changed, requires dropping its display-lists. | kCBObjProps = BIT(2), // Object changed, requires dropping its display-lists. | |||
kCBVisibility = BIT(3) // Rendering of self/children changed. | kCBVisibility = BIT(3) // Rendering of self/children changed. | |||
// kCBElementAdded = BIT(), // Element was added to a new parent. | // kCBElementAdded = BIT(), // Element was added to a new parent. | |||
skipping to change at line 436 | skipping to change at line 466 | |||
virtual void SetElementTitle(const char* title) | virtual void SetElementTitle(const char* title) | |||
{ TNamed::SetTitle(title); NameTitleChanged(); } | { TNamed::SetTitle(title); NameTitleChanged(); } | |||
virtual void SetElementNameTitle(const char* name, const char* title) | virtual void SetElementNameTitle(const char* name, const char* title) | |||
{ TNamed::SetNameTitle(name, title); NameTitleChanged(); } | { TNamed::SetNameTitle(name, title); NameTitleChanged(); } | |||
virtual Bool_t CanEditMainColor() const { return fDoColor; } | virtual Bool_t CanEditMainColor() const { return fDoColor; } | |||
TClass* GetChildClass() const { return fChildClass; } | TClass* GetChildClass() const { return fChildClass; } | |||
void SetChildClass(TClass* c) { fChildClass = c; } | void SetChildClass(TClass* c) { fChildClass = c; } | |||
virtual Bool_t AcceptElement(TEveElement* el); | virtual Bool_t AcceptElement(TEveElement* el); | |||
virtual TClass* ProjectedClass(const TEveProjection* p) const; | virtual TClass* ProjectedClass(const TEveProjection* p) const; | |||
ClassDef(TEveElementList, 0); // List of TEveElement objects with a poss ibility to limit the class of accepted elements. | ClassDef(TEveElementList, 0); // List of TEveElement objects with a poss ibility to limit the class of accepted elements. | |||
}; | }; | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
// TEveElementListProjected | // TEveElementListProjected | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
class TEveElementListProjected : public TEveElementList, | class TEveElementListProjected : public TEveElementList, | |||
public TEveProjected | public TEveProjected | |||
{ | { | |||
private: | private: | |||
TEveElementListProjected(const TEveElementListProjected&); // Not implemented | TEveElementListProjected(const TEveElementListProjected&); // Not implemented | |||
TEveElementListProjected& operator=(const TEveElementListProjected&); // Not implemented | TEveElementListProjected& operator=(const TEveElementListProjected&); // Not implemented | |||
protected: | ||||
virtual void SetDepthLocal(Float_t d); | ||||
public: | public: | |||
TEveElementListProjected(); | TEveElementListProjected(); | |||
virtual ~TEveElementListProjected() {} | virtual ~TEveElementListProjected() {} | |||
virtual void UpdateProjection(); | virtual void UpdateProjection(); | |||
ClassDef(TEveElementListProjected, 0); // Projected TEveElementList. | ClassDef(TEveElementListProjected, 0); // Projected TEveElementList. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 14 change blocks. | ||||
8 lines changed or deleted | 43 lines changed or added | |||
TEveGedEditor.h | TEveGedEditor.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveGedEditor.h 31428 2009-11-25 17:03:52Z matevz $ | // @(#)root/eve:$Id: TEveGedEditor.h 31998 2010-01-13 14:13:50Z 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 104 | skipping to change at line 104 | |||
ClassDef(TEveGedNameFrame, 0); // Top name-frame used in EVE. | ClassDef(TEveGedNameFrame, 0); // Top name-frame used in EVE. | |||
}; | }; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveGedNameTextButton | // TEveGedNameTextButton | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveGedNameTextButton : public TGTextButton | class TEveGedNameTextButton : public TGTextButton | |||
{ | { | |||
private: | ||||
TEveGedNameTextButton(const TEveGedNameTextButton&); // Not i | ||||
mplemented | ||||
TEveGedNameTextButton& operator=(const TEveGedNameTextButton&); // Not i | ||||
mplemented | ||||
TEveGedNameFrame *fFrame; | TEveGedNameFrame *fFrame; | |||
public: | public: | |||
TEveGedNameTextButton(TEveGedNameFrame* p); | TEveGedNameTextButton(TEveGedNameFrame* p); | |||
virtual ~TEveGedNameTextButton(); | virtual ~TEveGedNameTextButton(); | |||
virtual Bool_t HandleButton(Event_t* event); | virtual Bool_t HandleButton(Event_t* event); | |||
ClassDef(TEveGedNameTextButton, 0); // Button for GED name-frame. | ClassDef(TEveGedNameTextButton, 0); // Button for GED name-frame. | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
TEveGeoShape.h | TEveGeoShape.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveGeoShape.h 30840 2009-10-23 09:03:14Z matevz $ | // @(#)root/eve:$Id: TEveGeoShape.h 32528 2010-03-10 17:02:54Z 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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TEveGeoShape | #ifndef ROOT_TEveGeoShape | |||
#define ROOT_TEveGeoShape | #define ROOT_TEveGeoShape | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TEveProjectionBases.h" | #include "TEveProjectionBases.h" | |||
#include "TAttBBox.h" | #include "TAttBBox.h" | |||
class TGeoShape; | class TGeoShape; | |||
class TEveGeoShapeExtract; | class TEveGeoShapeExtract; | |||
class TBuffer3D; | ||||
class TEveGeoShape : public TEveElement, | class TEveGeoShape : public TEveElement, | |||
public TNamed, | public TNamed, | |||
public TEveProjectable | public TEveProjectable | |||
{ | { | |||
private: | private: | |||
TEveGeoShape(const TEveGeoShape&); // Not implemented | TEveGeoShape(const TEveGeoShape&); // Not implemented | |||
TEveGeoShape& operator=(const TEveGeoShape&); // Not implemented | TEveGeoShape& operator=(const TEveGeoShape&); // Not implemented | |||
protected: | protected: | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TEveLine.h | TEveLine.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveLine.h 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveLine.h 32430 2010-03-01 19:36:24Z 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 64 | skipping to change at line 64 | |||
Bool_t GetSmooth() const { return fSmooth; } | Bool_t GetSmooth() const { return fSmooth; } | |||
void SetRnrLine(Bool_t r); | void SetRnrLine(Bool_t r); | |||
void SetRnrPoints(Bool_t r); | void SetRnrPoints(Bool_t r); | |||
void SetSmooth(Bool_t r); | void SetSmooth(Bool_t r); | |||
void ReduceSegmentLengths(Float_t max); | void ReduceSegmentLengths(Float_t max); | |||
TEveVector GetLineStart() const; | TEveVector GetLineStart() const; | |||
TEveVector GetLineEnd() const; | TEveVector GetLineEnd() const; | |||
virtual const TGPicture* GetListTreeIcon(Bool_t open=kFALSE); | ||||
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; | |||
static Bool_t GetDefaultSmooth() { return fgDefaultSmooth; } | static Bool_t GetDefaultSmooth(); | |||
static void SetDefaultSmooth(Bool_t r) { fgDefaultSmooth = r; } | static void SetDefaultSmooth(Bool_t r); | |||
ClassDef(TEveLine, 0); // An arbitrary polyline with fixed line and mark er attributes. | ClassDef(TEveLine, 0); // An arbitrary polyline with fixed line and mark er attributes. | |||
}; | }; | |||
//------------------------------------------------------------------------- ----- | //------------------------------------------------------------------------- ----- | |||
// TEveLineProjected | // TEveLineProjected | |||
//------------------------------------------------------------------------- ----- | //------------------------------------------------------------------------- ----- | |||
class TEveLineProjected : public TEveLine, | class TEveLineProjected : public TEveLine, | |||
public TEveProjected | public TEveProjected | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 5 lines changed or added | |||
TEvePlot3D.h | TEvePlot3D.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEvePlot3D.h 29526 2009-07-20 17:41:53Z matevz $ | // @(#)root/eve:$Id: TEvePlot3D.h 32478 2010-03-05 14:20:48Z matevz $ | |||
// Author: Matevz Tadel, 2009 | // Author: Matevz Tadel, 2009 | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TEvePlot3D | #ifndef ROOT_TEvePlot3D | |||
#define ROOT_TEvePlot3D | #define ROOT_TEvePlot3D | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TAttBBox.h" | #include "TAttBBox.h" | |||
class TEvePlot3D : public TEveElementList // , public TAttBBox | class TEvePlot3D : public TEveElementList | |||
{ | { | |||
friend class TEvePlot3DGL; | friend class TEvePlot3DGL; | |||
private: | private: | |||
TEvePlot3D(const TEvePlot3D&); // Not implemented | TEvePlot3D(const TEvePlot3D&); // Not implemented | |||
TEvePlot3D& operator=(const TEvePlot3D&); // Not implemented | TEvePlot3D& operator=(const TEvePlot3D&); // Not implemented | |||
protected: | protected: | |||
TObject *fPlot; // Plot object. | TObject *fPlot; // Plot object. | |||
TString fPlotOption; // Options for the plot-painter. | TString fPlotOption; // Options for the plot-painter. | |||
Bool_t fLogX; | Bool_t fLogX; | |||
Bool_t fLogY; | Bool_t fLogY; | |||
Bool_t fLogZ; | Bool_t fLogZ; | |||
public: | public: | |||
TEvePlot3D(const char* n="TEvePlot3D", const char* t=""); | TEvePlot3D(const char* n="TEvePlot3D", const char* t=""); | |||
virtual ~TEvePlot3D() {} | virtual ~TEvePlot3D() {} | |||
// For TAttBBox: | ||||
// virtual void ComputeBBox(); | ||||
void SetPlot(TObject* obj, const TString& opt) { fPlot = obj; fPlotOptio n = opt; } | void SetPlot(TObject* obj, const TString& opt) { fPlot = obj; fPlotOptio n = opt; } | |||
TObject* GetPlot() const { return fPlot; } | TObject* GetPlot() const { return fPlot; } | |||
TString GetPlotOption() const { return fPlotOption; } | TString GetPlotOption() const { return fPlotOption; } | |||
void SetLogXYZ(Bool_t lx, Bool_t ly, Bool_t lz) { fLogX = lx; fLogY = ly; fLogZ = lz; } | void SetLogXYZ(Bool_t lx, Bool_t ly, Bool_t lz) { fLogX = lx; fLogY = ly; fLogZ = lz; } | |||
void SetLogX(Bool_t l) { fLogX = l; } | void SetLogX(Bool_t l) { fLogX = l; } | |||
void SetLogY(Bool_t l) { fLogY = l; } | void SetLogY(Bool_t l) { fLogY = l; } | |||
void SetLogZ(Bool_t l) { fLogZ = l; } | void SetLogZ(Bool_t l) { fLogZ = l; } | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 2 lines changed or added | |||
TEvePolygonSetProjected.h | TEvePolygonSetProjected.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEvePolygonSetProjected.h 31517 2009-12-03 11:56:23Z m atevz $ | // @(#)root/eve:$Id: TEvePolygonSetProjected.h 32931 2010-04-09 16:29:40Z m atevz $ | |||
// 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_TEvePolygonSetProjected | #ifndef ROOT_TEvePolygonSetProjected | |||
#define ROOT_TEvePolygonSetProjected | #define ROOT_TEvePolygonSetProjected | |||
#include "TEveElement.h" | #include "TEveVector.h" | |||
#include "TEveShape.h" | ||||
#include "TEveProjectionBases.h" | #include "TEveProjectionBases.h" | |||
#include "TNamed.h" | ||||
#include "TAtt3D.h" | ||||
#include "TAttBBox.h" | ||||
#include "TColor.h" | ||||
class TBuffer3D; | class TBuffer3D; | |||
class TEveVector; | class TEvePolygonSetProjected : public TEveShape, | |||
public TEveProjected | ||||
class TEvePolygonSetProjected : public TEveElementList, | ||||
public TEveProjected, | ||||
public TAtt3D, | ||||
public TAttBBox | ||||
{ | { | |||
friend class TEvePolygonSetProjectedGL; | friend class TEvePolygonSetProjectedGL; | |||
friend class TEvePolygonSetProjectedEditor; | friend class TEvePolygonSetProjectedEditor; | |||
private: | private: | |||
TEvePolygonSetProjected(const TEvePolygonSetProjected&); // N ot implemented | TEvePolygonSetProjected(const TEvePolygonSetProjected&); // N ot implemented | |||
TEvePolygonSetProjected& operator=(const TEvePolygonSetProjected&); // N ot implemented | TEvePolygonSetProjected& operator=(const TEvePolygonSetProjected&); // N ot implemented | |||
protected: | protected: | |||
struct Polygon_t | struct Polygon_t | |||
{ | { | |||
Int_t fNPnts; // number of points | Int_t fNPnts; // number of points | |||
Int_t* fPnts; // point indices | Int_t* fPnts; // point indices | |||
Polygon_t() : fNPnts(0), fPnts(0) {} | Polygon_t() : fNPnts(0), fPnts(0) {} | |||
virtual ~Polygon_t() { delete [] fPnts; fNPnts=0; fPnts=0;} | virtual ~Polygon_t() { delete [] fPnts; fNPnts=0; fPnts=0; } | |||
Polygon_t& operator=(const Polygon_t& x) | Polygon_t& operator=(const Polygon_t& x) | |||
{ fNPnts = x.fNPnts; fPnts = x.fPnts; return *this; } | { fNPnts = x.fNPnts; fPnts = x.fPnts; return *this; } | |||
Int_t FindPoint(Int_t pi) | Int_t FindPoint(Int_t pi) | |||
{ for (Int_t i=0; i<fNPnts; ++i) if (fPnts[i] == pi) return i; return -1; } | { for (Int_t i=0; i<fNPnts; ++i) if (fPnts[i] == pi) return i; return -1; } | |||
}; | }; | |||
typedef std::list<Polygon_t> vpPolygon_t; | typedef std::list<Polygon_t> vpPolygon_t; | |||
typedef vpPolygon_t::iterator vpPolygon_i; | typedef vpPolygon_t::iterator vpPolygon_i; | |||
skipping to change at line 76 | skipping to change at line 69 | |||
Float_t MakePolygonsFromBS(Int_t* idxMap); | Float_t MakePolygonsFromBS(Int_t* idxMap); | |||
protected: | protected: | |||
vpPolygon_t fPols; // polygons | vpPolygon_t fPols; // polygons | |||
vpPolygon_t fPolsBS; // polygons build from TBuffer3D segments | vpPolygon_t fPolsBS; // polygons build from TBuffer3D segments | |||
vpPolygon_t fPolsBP; // polygons build from TBuffer3D polygons | vpPolygon_t fPolsBP; // polygons build from TBuffer3D polygons | |||
Int_t fNPnts; // number of reduced and projected points | Int_t fNPnts; // number of reduced and projected points | |||
TEveVector* fPnts; // reduced and projected points | TEveVector* fPnts; // reduced and projected points | |||
Color_t fFillColor; // fill color of polygons | ||||
Color_t fLineColor; // outline color of polygons | ||||
Float_t fLineWidth; // outline width of polygons | ||||
Bool_t fHighlightFrame; // higlight mode | ||||
virtual void SetDepthLocal(Float_t d); | virtual void SetDepthLocal(Float_t d); | |||
public: | public: | |||
TEvePolygonSetProjected(const char* n="TEvePolygonSetProjected", const c har* t=""); | TEvePolygonSetProjected(const char* n="TEvePolygonSetProjected", const c har* t=""); | |||
virtual ~TEvePolygonSetProjected(); | virtual ~TEvePolygonSetProjected(); | |||
virtual void ComputeBBox(); | ||||
virtual void SetProjection(TEveProjectionManager* mng, TEveProjectabl e* model); | virtual void SetProjection(TEveProjectionManager* mng, TEveProjectabl e* model); | |||
virtual void UpdateProjection(); | virtual void UpdateProjection(); | |||
void ProjectBuffer3D(); | void ProjectBuffer3D(); | |||
virtual void ComputeBBox(); | ||||
virtual void Paint(Option_t* option = ""); | ||||
virtual void DumpPolys() const; | virtual void DumpPolys() const; | |||
void DumpBuffer3D(); | void DumpBuffer3D(); | |||
// Rendering parameters. | ||||
virtual Bool_t CanEditMainColor() const { return kTRUE; } | ||||
virtual void SetMainColor(Color_t color); | ||||
virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | ||||
virtual Color_t GetFillColor() const { return fFillColor; } | ||||
virtual Color_t GetLineColor() const { return fLineColor; } | ||||
virtual Float_t GetLineWidth() const { return fLineWidth;} | ||||
virtual Bool_t GetHighlightFrame() const { return fHighlightFrame; } | ||||
virtual void SetFillColor(Color_t c) { fFillColor = c; } | ||||
virtual void SetLineColor(Color_t c) { fLineColor = c; } | ||||
virtual void SetLineWidth(Float_t lw) { fLineWidth = lw;} | ||||
virtual void SetHighlightFrame(Bool_t f) { fHighlightFrame = f; } | ||||
ClassDef(TEvePolygonSetProjected,0); // Set of projected polygons with o utline; typically produced from a TBuffer3D. | ClassDef(TEvePolygonSetProjected,0); // Set of projected polygons with o utline; typically produced from a TBuffer3D. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 10 change blocks. | ||||
39 lines changed or deleted | 9 lines changed or added | |||
TEvePolygonSetProjectedGL.h | TEvePolygonSetProjectedGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEvePolygonSetProjectedGL.h 30752 2009-10-15 18:55:34Z matevz $ | // @(#)root/eve:$Id: TEvePolygonSetProjectedGL.h 33124 2010-04-21 20:04:42Z 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 28 | skipping to change at line 28 | |||
{ | { | |||
public: | public: | |||
TEvePolygonSetProjectedGL(); | TEvePolygonSetProjectedGL(); | |||
virtual ~TEvePolygonSetProjectedGL() {} | virtual ~TEvePolygonSetProjectedGL() {} | |||
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 Draw(TGLRnrCtx& rnrCtx) const; | virtual void Draw(TGLRnrCtx& rnrCtx) const; | |||
virtual void DirectDraw(TGLRnrCtx& rnrCtx) const; | virtual void DirectDraw(TGLRnrCtx& rnrCtx) const; | |||
virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* pshp) const; | virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape* pshp, Int_t lvl=-1) const; | |||
virtual Bool_t IgnoreSizeForOfInterest() const { return kTRUE; } | virtual Bool_t IgnoreSizeForOfInterest() const { return kTRUE; } | |||
private: | private: | |||
void DrawOutline() const; | void DrawOutline() const; | |||
ClassDef(TEvePolygonSetProjectedGL,0); // GL-renderer for TEvePolygonSe tProjected class. | ClassDef(TEvePolygonSetProjectedGL,0); // GL-renderer for TEvePolygonSe tProjected class. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TEveProjectionAxes.h | TEveProjectionAxes.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveProjectionAxes.h 30384 2009-09-23 17:54:23Z matevz $ | // @(#)root/eve:$Id: TEveProjectionAxes.h 32478 2010-03-05 14:20:48Z 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 55 | skipping to change at line 55 | |||
ELabMode fLabMode; // Division of distorted space. | ELabMode fLabMode; // Division of distorted space. | |||
EAxesMode fAxesMode; // Axis vertical/hotrizontal orientat ion. | EAxesMode fAxesMode; // Axis vertical/hotrizontal orientat ion. | |||
Bool_t fDrawCenter; // Draw center of distortion. | Bool_t fDrawCenter; // Draw center of distortion. | |||
Bool_t fDrawOrigin; // Draw origin. | Bool_t fDrawOrigin; // Draw origin. | |||
public: | public: | |||
TEveProjectionAxes(TEveProjectionManager* m, Bool_t useColorSet = kTRUE) ; | TEveProjectionAxes(TEveProjectionManager* m, Bool_t useColorSet = kTRUE) ; | |||
virtual ~TEveProjectionAxes(); | virtual ~TEveProjectionAxes(); | |||
TEveProjectionManager* GetManager(){ | TEveProjectionManager* GetManager() { return fManager; } | |||
return fManager; | ||||
} | ||||
void SetLabMode(ELabMode x) { fLabMode = x; } | void SetLabMode(ELabMode x) { fLabMode = x; } | |||
ELabMode GetLabMode() const { return fLabMode;} | ELabMode GetLabMode() const { return fLabMode;} | |||
void SetAxesMode(EAxesMode x) { fAxesMode = x; } | void SetAxesMode(EAxesMode x) { fAxesMode = x; } | |||
EAxesMode GetAxesMode() const { return fAxesMode; } | EAxesMode GetAxesMode() const { return fAxesMode; } | |||
void SetDrawCenter(Bool_t x) { fDrawCenter = x; } | void SetDrawCenter(Bool_t x) { fDrawCenter = x; } | |||
Bool_t GetDrawCenter() const { return fDrawCenter; } | Bool_t GetDrawCenter() const { return fDrawCenter; } | |||
void SetDrawOrigin(Bool_t x) { fDrawOrigin = x; } | void SetDrawOrigin(Bool_t x) { fDrawOrigin = x; } | |||
Bool_t GetDrawOrigin() const { return fDrawOrigin; } | Bool_t GetDrawOrigin() const { return fDrawOrigin; } | |||
virtual void Paint(Option_t* option=""); | virtual void Paint(Option_t* option=""); | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
virtual const TGPicture* GetListTreeIcon(Bool_t open=kFALSE); | virtual const TGPicture* GetListTreeIcon(Bool_t open=kFALSE); | |||
ClassDef(TEveProjectionAxes, 1); // Class to draw scales in non-linear p rojections. | ClassDef(TEveProjectionAxes, 1); // Class to draw scales in non-linear p rojections. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 3 lines changed or added | |||
TEveProjectionBases.h | TEveProjectionBases.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveProjectionBases.h 30840 2009-10-23 09:03:14Z matev z $ | // @(#)root/eve:$Id: TEveProjectionBases.h 33071 2010-04-16 16:34:39Z 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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TEveProjectionBases | #ifndef ROOT_TEveProjectionBases | |||
#define ROOT_TEveProjectionBases | #define ROOT_TEveProjectionBases | |||
#include "TEveUtil.h" | #include "Rtypes.h" | |||
#include <list> | ||||
class TBuffer3D; | #include <set> | |||
class TEveElement; | class TEveElement; | |||
class TEveProjection; | class TEveProjection; | |||
class TEveProjected; | class TEveProjected; | |||
class TEveProjectionManager; | class TEveProjectionManager; | |||
class TClass; | ||||
//////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////// | |||
// // | // // | |||
// TEveProjectable // | // TEveProjectable // | |||
// // | // // | |||
// Abstract base class for non-linear projectable objects. // | // Abstract base class for non-linear projectable objects. // | |||
// // | // // | |||
//////////////////////////////////////////////////////////////// | //////////////////////////////////////////////////////////////// | |||
class TEveProjectable | class TEveProjectable | |||
{ | { | |||
private: | private: | |||
TEveProjectable(const TEveProjectable&); // Not implemented | TEveProjectable(const TEveProjectable&); // Not implemented | |||
TEveProjectable& operator=(const TEveProjectable&); // Not implemented | TEveProjectable& operator=(const TEveProjectable&); // Not implemented | |||
protected: | public: | |||
typedef std::list<TEveProjected*> ProjList_t; | typedef std::list<TEveProjected*> ProjList_t; | |||
typedef std::list<TEveProjected*>::iterator ProjList_i; | typedef std::list<TEveProjected*>::iterator ProjList_i; | |||
protected: | ||||
ProjList_t fProjectedList; // references to projected instances. | ProjList_t fProjectedList; // references to projected instances. | |||
public: | public: | |||
TEveProjectable(); | TEveProjectable(); | |||
virtual ~TEveProjectable(); | virtual ~TEveProjectable(); | |||
virtual TClass* ProjectedClass(const TEveProjection* p) const = 0; | virtual TClass* ProjectedClass(const TEveProjection* p) const = 0; | |||
virtual Bool_t HasProjecteds() const { return ! fProjectedList.empty(); } | virtual Bool_t HasProjecteds() const { return ! fProjectedList.empty(); } | |||
ProjList_i BeginProjecteds() { return fProjectedList.begin(); } | ||||
ProjList_i EndProjecteds() { return fProjectedList.end(); } | ||||
virtual void AddProjected(TEveProjected* p) { fProjectedList.push_bac k(p); } | virtual void AddProjected(TEveProjected* p) { fProjectedList.push_bac k(p); } | |||
virtual void RemoveProjected(TEveProjected* p) { fProjectedList.remove(p ); } | virtual void RemoveProjected(TEveProjected* p) { fProjectedList.remove(p ); } | |||
virtual void AddProjectedsToSet(std::set<TEveElement*>& set); | virtual void AddProjectedsToSet(std::set<TEveElement*>& set); | |||
virtual void PropagateVizParams(TEveElement* el=0); | virtual void PropagateVizParams(TEveElement* el=0); | |||
virtual void PropagateRenderState(Bool_t rnr_self, Bool_t rnr_children); | virtual void PropagateRenderState(Bool_t rnr_self, Bool_t rnr_children); | |||
virtual void PropagateMainColor(Color_t color, Color_t old_color); | virtual void PropagateMainColor(Color_t color, Color_t old_color); | |||
ClassDef(TEveProjectable, 0); // Abstract base class for classes that ca n be transformed with non-linear projections. | ClassDef(TEveProjectable, 0); // Abstract base class for classes that ca n be transformed with non-linear projections. | |||
skipping to change at line 85 | skipping to change at line 90 | |||
private: | private: | |||
TEveProjected(const TEveProjected&); // Not implemented | TEveProjected(const TEveProjected&); // Not implemented | |||
TEveProjected& operator=(const TEveProjected&); // Not implemented | TEveProjected& operator=(const TEveProjected&); // Not implemented | |||
protected: | protected: | |||
TEveProjectionManager *fManager; // manager | TEveProjectionManager *fManager; // manager | |||
TEveProjectable *fProjectable; // link to original object | TEveProjectable *fProjectable; // link to original object | |||
Float_t fDepth; // z coordinate | Float_t fDepth; // z coordinate | |||
void SetDepthCommon(Float_t d, TEveElement* el, Float_t* bbox); | void SetDepthCommon(Float_t d, TEveElement* el, Float_t* bbox); | |||
virtual void SetDepthLocal(Float_t d) = 0; | virtual void SetDepthLocal(Float_t d); | |||
public: | public: | |||
TEveProjected(); | TEveProjected(); | |||
virtual ~TEveProjected(); | virtual ~TEveProjected(); | |||
TEveProjectable* GetProjectable() const { return fProjectable; } | TEveProjectionManager* GetManager() const { return fManager; } | |||
TEveProjectable* GetProjectable() const { return fProjectable; } | ||||
Float_t GetDepth() const { return fDepth; } | ||||
TEveElement* GetProjectableAsElement() const; | ||||
virtual void SetProjection(TEveProjectionManager* mng, TEveProjectable* model); | virtual void SetProjection(TEveProjectionManager* mng, TEveProjectable* model); | |||
virtual void UnRefProjectable(TEveProjectable* assumed_parent); | virtual void UnRefProjectable(TEveProjectable* assumed_parent); | |||
virtual void UpdateProjection() = 0; | virtual void UpdateProjection() = 0; | |||
virtual void SetDepth(Float_t d); | virtual void SetDepth(Float_t d); | |||
ClassDef(TEveProjected, 0); // Abstract base class for classes that hold results of a non-linear projection transformation. | ClassDef(TEveProjected, 0); // Abstract base class for classes that hold results of a non-linear projection transformation. | |||
}; | }; | |||
End of changes. 9 change blocks. | ||||
8 lines changed or deleted | 17 lines changed or added | |||
TEveProjectionManager.h | TEveProjectionManager.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveProjectionManager.h 31517 2009-12-03 11:56:23Z mat evz $ | // @(#)root/eve:$Id: TEveProjectionManager.h 33037 2010-04-15 13:58:19Z mat evz $ | |||
// 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 68 | skipping to change at line 68 | |||
void SetImportEmpty(Bool_t ie) { fImportEmpty = ie; } | void SetImportEmpty(Bool_t ie) { fImportEmpty = ie; } | |||
Bool_t GetImportEmpty() const { return fImportEmpty; } | Bool_t GetImportEmpty() const { return fImportEmpty; } | |||
virtual Bool_t HandleElementPaste(TEveElement* el); | virtual Bool_t HandleElementPaste(TEveElement* el); | |||
virtual TEveElement* ImportElementsRecurse(TEveElement* el, | virtual TEveElement* ImportElementsRecurse(TEveElement* el, | |||
TEveElement* parent); | TEveElement* parent); | |||
virtual TEveElement* ImportElements(TEveElement* el, | virtual TEveElement* ImportElements(TEveElement* el, | |||
TEveElement* ext_list=0); | TEveElement* ext_list=0); | |||
virtual TEveElement* SubImportElements(TEveElement* el, TEveElement* pro | ||||
j_parent); | ||||
virtual Int_t SubImportChildren(TEveElement* el, TEveElement* pro | ||||
j_parent); | ||||
virtual void ProjectChildren(); | virtual void ProjectChildren(); | |||
virtual void ProjectChildrenRecurse(TEveElement* el); | virtual void ProjectChildrenRecurse(TEveElement* el); | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
ClassDef(TEveProjectionManager, 0); // Manager class for steering of pro jections and managing projected objects. | ClassDef(TEveProjectionManager, 0); // Manager class for steering of pro jections and managing projected objects. | |||
}; | }; | |||
#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 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveProjections.h 32528 2010-03-10 17:02:54Z 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_TEveProjections | #ifndef ROOT_TEveProjections | |||
#define ROOT_TEveProjections | #define ROOT_TEveProjections | |||
#include "TEveVector.h" | #include "TEveVector.h" | |||
#include "TString.h" | #include "TString.h" | |||
#include <vector> | #include <vector> | |||
class TEveTrans; | ||||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveProjection | // TEveProjection | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveProjection | class TEveProjection | |||
{ | { | |||
public: | public: | |||
enum EPType_e { kPT_Unknown, kPT_RPhi, kPT_RhoZ, kPT_3D, kPT_End }; // projection type | enum EPType_e { kPT_Unknown, kPT_RPhi, kPT_RhoZ, kPT_3D, kPT_End }; // projection type | |||
enum EPProc_e { kPP_Plane, kPP_Distort, kPP_Full }; // projection procedure | enum EPProc_e { kPP_Plane, kPP_Distort, kPP_Full }; // projection procedure | |||
enum EGeoMode_e { kGM_Unknown, kGM_Polygons, kGM_Segments }; // strategy for geometry projections | enum EGeoMode_e { kGM_Unknown, kGM_Polygons, kGM_Segments }; // strategy for geometry projections | |||
skipping to change at line 85 | skipping to change at line 87 | |||
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; | |||
virtual void ProjectPointfv(Float_t* v, Float_t d); | ||||
virtual void ProjectPointdv(Double_t* v, Float_t d); | void ProjectPointfv(Float_t* v, Float_t d); | |||
virtual void ProjectVector(TEveVector& v, Float_t d); | void ProjectPointdv(Double_t* 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 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); | ||||
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 t(); } | virtual void SetCenter(TEveVector& v) { fCenter = v; UpdateLimi t(); } | |||
virtual Float_t* GetProjectedCenter() { return fCenter.Arr(); } | virtual Float_t* GetProjectedCenter() { return fCenter.Arr(); } | |||
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; } | |||
skipping to change at line 125 | skipping to change at line 132 | |||
Float_t GetFixZ() const { return fFixZ; } | Float_t GetFixZ() const { return fFixZ; } | |||
void SetFixR(Float_t x); | void SetFixR(Float_t x); | |||
void SetFixZ(Float_t x); | void SetFixZ(Float_t x); | |||
Float_t GetPastFixRFac() const { return fPastFixRFac; } | Float_t GetPastFixRFac() const { return fPastFixRFac; } | |||
Float_t GetPastFixZFac() const { return fPastFixZFac; } | Float_t GetPastFixZFac() const { return fPastFixZFac; } | |||
void SetPastFixRFac(Float_t x); | void SetPastFixRFac(Float_t x); | |||
void SetPastFixZFac(Float_t x); | void SetPastFixZFac(Float_t x); | |||
Float_t GetMaxTrackStep() const { return fMaxTrackStep; } | Float_t GetMaxTrackStep() const { return fMaxTrackStep; } | |||
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 AcceptSegment(TEveVector&, TEveVector&, Float_t /*to | virtual Bool_t AcceptSegment(TEveVector&, TEveVector&, Float_t /*to | |||
lerance*/) { return kTRUE; } | lerance*/) const { return kTRUE; } | |||
virtual Int_t SubSpaceId(const TEveVector&) const { return 0; } | ||||
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 | |||
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 t[i] : fLowLimit[i]; } | Float_t GetLimit(Int_t i, Bool_t pos) { return pos ? fUpLimi t[i] : fLowLimit[i]; } | |||
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 | ||||
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 | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveRhoZProjection: public TEveProjection | class TEveRhoZProjection: public TEveProjection | |||
{ | { | |||
private: | private: | |||
TEveVector fProjectedCenter; // projected center of distortion. | TEveVector fProjectedCenter; // projected center of distortion. | |||
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& center); | |||
virtual Float_t* GetProjectedCenter() { return fProjectedCenter.Arr() | virtual Float_t* GetProjectedCenter() { return fProjectedCenter.Arr() | |||
; } | ; } | |||
virtual void UpdateLimit(); | virtual void UpdateLimit(); | |||
virtual Bool_t AcceptSegment(TEveVector& v1, TEveVector& v2, Float_ | virtual Bool_t AcceptSegment(TEveVector& v1, TEveVector& v2, Float_ | |||
t tolerance); | t tolerance) const; | |||
virtual Int_t SubSpaceId(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. | |||
}; | }; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveRPhiProjection | // TEveRPhiProjection | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveRPhiProjection : public TEveProjection | class TEveRPhiProjection : public TEveProjection | |||
End of changes. 8 change blocks. | ||||
13 lines changed or deleted | 27 lines changed or added | |||
TEveQuadSet.h | TEveQuadSet.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveQuadSet.h 27157 2009-01-15 14:05:12Z brun $ | // @(#)root/eve:$Id: TEveQuadSet.h 32935 2010-04-09 20:10:18Z 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 58 | skipping to change at line 58 | |||
kQT_HexagonYX, // vertical hexagon: specify x, y, z, r | kQT_HexagonYX, // vertical hexagon: specify x, y, z, r | |||
kQT_Hexagon_End | kQT_Hexagon_End | |||
// circle modes: | // circle modes: | |||
// QT_CircleXY, // specify r, z | // QT_CircleXY, // specify r, z | |||
// QT_CircleXYFixedZ, // specify r | // QT_CircleXYFixedZ, // specify r | |||
// QT_CircleXYFixedR, // specify z | // QT_CircleXYFixedR, // specify z | |||
}; | }; | |||
protected: | protected: | |||
struct QFreeQuad_t : public DigitBase_t { Float_t fVertices[12] ; }; | struct QFreeQuad_t : public DigitBase_t { Float_t fVertices[12]; }; | |||
struct QOrigin_t : public DigitBase_t { | struct QOrigin_t : public DigitBase_t { Float_t fA, fB; }; | |||
virtual ~QOrigin_t() {} ; Float_t fA, fB; }; | ||||
struct QRectFixDimC_t : public QOrigin_t { | struct QRectFixDimC_t : public QOrigin_t {}; | |||
virtual ~QRectFixDimC_t() {} }; | ||||
struct QRectFixDim_t : public QRectFixDimC_t { | struct QRectFixDim_t : public QRectFixDimC_t { Float_t fC; }; | |||
virtual ~QRectFixDim_t() {} ; Float_t fC; }; | ||||
struct QRectFixC_t : public QRectFixDimC_t { Float_t fW, fH; }; | struct QRectFixC_t : public QRectFixDimC_t { Float_t fW, fH; }; | |||
struct QRect_t : public QRectFixDim_t { Float_t fW, fH; }; | struct QRect_t : public QRectFixDim_t { Float_t fW, fH; }; | |||
struct QLineFixC_t : public QOrigin_t { Float_t fDx, fDy; }; | struct QLineFixC_t : public QOrigin_t { Float_t fDx, fDy; }; | |||
struct QHex_t : public QOrigin_t { Float_t fC, fR; }; | struct QHex_t : public QOrigin_t { Float_t fC, fR; }; | |||
protected: | protected: | |||
End of changes. 5 change blocks. | ||||
8 lines changed or deleted | 5 lines changed or added | |||
TEveQuadSetGL.h | TEveQuadSetGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveQuadSetGL.h 24214 2008-06-11 14:48:35Z matevz $ | // @(#)root/eve:$Id: TEveQuadSetGL.h 33124 2010-04-21 20:04:42Z 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_TEveQuadSetGL | #ifndef ROOT_TEveQuadSetGL | |||
#define ROOT_TEveQuadSetGL | #define ROOT_TEveQuadSetGL | |||
#include "TGLObject.h" | #include "TEveDigitSetGL.h" | |||
#include "TEveQuadSet.h" | #include "TEveQuadSet.h" | |||
class TEveQuadSetGL : public TGLObject | class TEveQuadSetGL : public TEveDigitSetGL | |||
{ | { | |||
TEveQuadSetGL(const TEveQuadSetGL&); // Not implemented | TEveQuadSetGL(const TEveQuadSetGL&); // Not implemented | |||
TEveQuadSetGL& operator=(const TEveQuadSetGL&); // Not implemented | TEveQuadSetGL& operator=(const TEveQuadSetGL&); // Not implemented | |||
protected: | protected: | |||
TEveQuadSet* fM; | TEveQuadSet *fM; | |||
Bool_t SetupColor(const TEveDigitSet::DigitBase_t& q) const; | ||||
void RenderQuads(TGLRnrCtx & rnrCtx) const; | void RenderQuads(TGLRnrCtx & rnrCtx) const; | |||
void RenderLines(TGLRnrCtx & rnrCtx) const; | void RenderLines(TGLRnrCtx & rnrCtx) const; | |||
void RenderHexagons(TGLRnrCtx & rnrCtx) const; | void RenderHexagons(TGLRnrCtx & rnrCtx) const; | |||
public: | public: | |||
TEveQuadSetGL(); | TEveQuadSetGL(); | |||
virtual ~TEveQuadSetGL() {} | virtual ~TEveQuadSetGL() {} | |||
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 DirectDraw(TGLRnrCtx& rnrCtx) const; | |||
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | ||||
virtual Bool_t IgnoreSizeForOfInterest() const { return kTRUE; } | virtual Bool_t IgnoreSizeForOfInterest() const { return kTRUE; } | |||
virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | ||||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re | ||||
c); | ||||
ClassDef(TEveQuadSetGL, 0); // GL-renderer for TEveQuadSet class. | ClassDef(TEveQuadSetGL, 0); // GL-renderer for TEveQuadSet class. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 6 change blocks. | ||||
12 lines changed or deleted | 5 lines changed or added | |||
TEveSelection.h | TEveSelection.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveSelection.h 30891 2009-10-27 19:28:36Z matevz $ | // @(#)root/eve:$Id: TEveSelection.h 32464 2010-03-04 15:45:13Z 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 56 | skipping to change at line 56 | |||
SelMap_t fImpliedSelected; | SelMap_t fImpliedSelected; | |||
Select_foo fSelElement; | Select_foo fSelElement; | |||
ImplySelect_foo fIncImpSelElement; | ImplySelect_foo fIncImpSelElement; | |||
ImplySelect_foo fDecImpSelElement; | ImplySelect_foo fDecImpSelElement; | |||
void DoElementSelect (SelMap_i entry); | void DoElementSelect (SelMap_i entry); | |||
void DoElementUnselect(SelMap_i entry); | void DoElementUnselect(SelMap_i entry); | |||
void RecheckImpliedSet(SelMap_i smi); | ||||
public: | public: | |||
TEveSelection(const char* n="TEveSelection", const char* t=""); | TEveSelection(const char* n="TEveSelection", const char* t=""); | |||
virtual ~TEveSelection() {} | virtual ~TEveSelection() {} | |||
void SetHighlightMode(); | void SetHighlightMode(); | |||
Int_t GetPickToSelect() const { return fPickToSelect; } | Int_t GetPickToSelect() const { return fPickToSelect; } | |||
void SetPickToSelect(Int_t ps) { fPickToSelect = ps; } | void SetPickToSelect(Int_t ps) { fPickToSelect = ps; } | |||
Bool_t GetIsMaster() const { return fIsMaster; } | Bool_t GetIsMaster() const { return fIsMaster; } | |||
skipping to change at line 78 | skipping to change at line 80 | |||
virtual Bool_t AcceptElement(TEveElement* el); | virtual Bool_t AcceptElement(TEveElement* el); | |||
virtual void AddElement(TEveElement* el); | virtual void AddElement(TEveElement* el); | |||
virtual void RemoveElement(TEveElement* el); | virtual void RemoveElement(TEveElement* el); | |||
virtual void RemoveElementLocal(TEveElement* el); | virtual void RemoveElementLocal(TEveElement* el); | |||
virtual void RemoveElements(); | virtual void RemoveElements(); | |||
virtual void RemoveElementsLocal(); | virtual void RemoveElementsLocal(); | |||
virtual void RemoveImpliedSelected(TEveElement* el); | virtual void RemoveImpliedSelected(TEveElement* el); | |||
void RecheckImpliedSetForElement(TEveElement* el); | ||||
void SelectionAdded(TEveElement* el); // *SIGNAL* | void SelectionAdded(TEveElement* el); // *SIGNAL* | |||
void SelectionRemoved(TEveElement* el); // *SIGNAL* | void SelectionRemoved(TEveElement* el); // *SIGNAL* | |||
void SelectionCleared(); // *SIGNAL* | void SelectionCleared(); // *SIGNAL* | |||
void SelectionRepeated(TEveElement* el); // *SIGNAL* | void SelectionRepeated(TEveElement* el); // *SIGNAL* | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// Interface to make selection active/non-active. | // Interface to make selection active/non-active. | |||
// Not used yet, assumed to be active all the time. | ||||
virtual void ActivateSelection(); | virtual void ActivateSelection(); | |||
virtual void DeactivateSelection(); | virtual void DeactivateSelection(); | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// User input processing. | // User input processing. | |||
TEveElement* MapPickedToSelected(TEveElement* el); | TEveElement* MapPickedToSelected(TEveElement* el); | |||
virtual void UserPickedElement(TEveElement* el, Bool_t multi=kFALSE); | virtual void UserPickedElement(TEveElement* el, Bool_t multi=kFALSE); | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 5 lines changed or added | |||
TEveTrack.h | TEveTrack.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrack.h 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveTrack.h 32933 2010-04-09 17:28:46Z 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 "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 TEveRecTrack; | |||
skipping to change at line 59 | skipping to change at line 60 | |||
TEveVector fP; // Starting momentum | TEveVector fP; // Starting momentum | |||
TEveVector fPEnd; // Momentum at the last point of extrapo lation | TEveVector fPEnd; // Momentum at the last point of extrapo 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. | ||||
TEveTrackPropagator *fPropagator; // Pointer to shared render-style | TEveTrackPropagator *fPropagator; // Pointer to shared render-style | |||
UChar_t fBreakProjectedTracks; // How to handle breaks durin g projection - track specific settings. | UChar_t fBreakProjectedTracks; // How to handle breaks durin g projection - track specific settings. | |||
static Bool_t fgDefaultBreakProjectedTracks; // How to handle break s during projection - global setting. | static Bool_t fgDefaultBreakProjectedTracks; // How to handle break s during projection - global setting. | |||
public: | public: | |||
TEveTrack(); | TEveTrack(); | |||
TEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop=0); | TEveTrack(TParticle* t, Int_t label, TEveTrackPropagator* prop=0); | |||
skipping to change at line 82 | skipping to change at line 84 | |||
virtual ~TEveTrack(); | virtual ~TEveTrack(); | |||
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; } | |||
void SetPropagator(TEveTrackPropagator* prop); | Int_t GetLastPMIdx() const { return fLastPMIdx; } | |||
void SetAttLineAttMarker(TEveTrackList* tl); | void SetPropagator(TEveTrackPropagator* prop); | |||
void SetAttLineAttMarker(TEveTrackList* tl); | ||||
const TEveVector& GetVertex() const { return fV; } | const TEveVector& GetVertex() const { return fV; } | |||
const TEveVector& GetMomentum() const { return fP; } | const TEveVector& GetMomentum() const { return fP; } | |||
const TEveVector& GetEndMomentum() const { return fPEnd; } | const TEveVector& 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; } | |||
skipping to change at line 126 | skipping to change at line 129 | |||
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; | |||
Bool_t ShouldBreakTrack() const; | Bool_t ShouldBreakTrack() const; | |||
UChar_t GetBreakProjectedTracks() const { return fBreakProjectedTrac ks; } | UChar_t GetBreakProjectedTracks() const { return fBreakProjectedTrac ks; } | |||
void SetBreakProjectedTracks(UChar_t bt) { fBreakProjectedTracks = bt ; } | void SetBreakProjectedTracks(UChar_t bt) { fBreakProjectedTracks = bt ; } | |||
static Bool_t GetDefaultBreakProjectedTracks() { return fgDefau | static Bool_t GetDefaultBreakProjectedTracks(); | |||
ltBreakProjectedTracks; } | static void SetDefaultBreakProjectedTracks(Bool_t bt); | |||
static void SetDefaultBreakProjectedTracks(Bool_t bt) { fgDefaultBreak | ||||
ProjectedTracks = bt; } | ||||
ClassDef(TEveTrack, 1); // Track with given vertex, momentum and optiona l referece-points (path-marks) along its path. | ClassDef(TEveTrack, 1); // 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, | |||
End of changes. 5 change blocks. | ||||
7 lines changed or deleted | 8 lines changed or added | |||
TEveTrackGL.h | TEveTrackGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrackGL.h 24214 2008-06-11 14:48:35Z matevz $ | // @(#)root/eve:$Id: TEveTrackGL.h 32528 2010-03-10 17:02:54Z 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 31 | skipping to change at line 31 | |||
class TEveTrackGL : public TEveLineGL | class TEveTrackGL : public TEveLineGL | |||
{ | { | |||
private: | private: | |||
TEveTrackGL(const TEveTrackGL&); // Not implemented | TEveTrackGL(const TEveTrackGL&); // Not implemented | |||
TEveTrackGL& operator=(const TEveTrackGL&); // Not implemented | TEveTrackGL& operator=(const TEveTrackGL&); // Not implemented | |||
protected: | protected: | |||
TEveTrack* fTrack; // Model object. | TEveTrack* fTrack; // Model object. | |||
void RenderPathMarksAndFirstVertex(TGLRnrCtx& rnrCtx) const; | ||||
public: | public: | |||
TEveTrackGL(); | TEveTrackGL(); | |||
virtual ~TEveTrackGL() {} | virtual ~TEveTrackGL() {} | |||
virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); | virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0); | |||
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | virtual void DirectDraw(TGLRnrCtx & rnrCtx) const; | |||
virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | virtual Bool_t SupportsSecondarySelect() const { return kTRUE; } | |||
virtual void ProcessSelection(TGLRnrCtx & rnrCtx, TGLSelectRecord & re c); | virtual void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec) ; | |||
ClassDef(TEveTrackGL, 0); // GL-renderer for TEveTrack class. | ClassDef(TEveTrackGL, 0); // GL-renderer for TEveTrack class. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TEveTrackProjected.h | TEveTrackProjected.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrackProjected.h 30840 2009-10-23 09:03:14Z matevz $ | // @(#)root/eve:$Id: TEveTrackProjected.h 32528 2010-03-10 17:02:54Z 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_TEveTrackProjected | #ifndef ROOT_TEveTrackProjected | |||
#define ROOT_TEveTrackProjected | #define ROOT_TEveTrackProjected | |||
#include "TEveTrack.h" | #include "TEveTrack.h" | |||
#include "TEveProjectionBases.h" | #include "TEveProjectionBases.h" | |||
class TEveProjection; | ||||
class TEveTrackProjected : public TEveTrack, | class TEveTrackProjected : public TEveTrack, | |||
public TEveProjected | public TEveProjected | |||
{ | { | |||
friend class TEveTrackProjectedGL; | friend class TEveTrackProjectedGL; | |||
private: | private: | |||
TEveTrackProjected(const TEveTrackProjected&); // Not impleme nted | TEveTrackProjected(const TEveTrackProjected&); // Not impleme nted | |||
TEveTrackProjected& operator=(const TEveTrackProjected&); // Not impleme nted | TEveTrackProjected& operator=(const TEveTrackProjected&); // Not impleme nted | |||
Int_t GetBreakPointIdx(Int_t start); | Int_t GetBreakPointIdx(Int_t start); | |||
void GetBreakPoint(Int_t N, Bool_t back, Float_t& x, Float_t& y, Float_ t& z); | void GetBreakPoint(Int_t N, Bool_t back, Float_t& x, Float_t& y, Float_ t& z); | |||
TEveVector* fOrigPnts; // original track points | TEveVector* fOrigPnts; // original track points | |||
protected: | protected: | |||
std::vector<Int_t> fBreakPoints; // indices of track break-points | std::vector<Int_t> fBreakPoints; // indices of track break-points | |||
TEveProjection *fProjection; // projection | ||||
virtual void SetDepthLocal(Float_t d); | virtual void SetDepthLocal(Float_t d); | |||
public: | public: | |||
TEveTrackProjected(); | TEveTrackProjected(); | |||
virtual ~TEveTrackProjected() {} | virtual ~TEveTrackProjected() {} | |||
virtual void SetProjection(TEveProjectionManager* mng, TEveProjectable* model); | virtual void SetProjection(TEveProjectionManager* mng, TEveProjectable* model); | |||
virtual void UpdateProjection(); | virtual void UpdateProjection(); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 1 lines changed or added | |||
TEveTrackPropagator.h | TEveTrackPropagator.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrackPropagator.h 31540 2009-12-03 17:02:17Z matev z $ | // @(#)root/eve:$Id: TEveTrackPropagator.h 32933 2010-04-09 17:28:46Z 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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TEveTrackPropagator | #ifndef ROOT_TEveTrackPropagator | |||
#define ROOT_TEveTrackPropagator | #define ROOT_TEveTrackPropagator | |||
#include "TEveVector.h" | #include "TEveVector.h" | |||
#include "TEvePathMark.h" | ||||
#include "TEveUtil.h" | #include "TEveUtil.h" | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TMarker.h" | #include "TMarker.h" | |||
#include <vector> | #include <vector> | |||
class TEvePointSet; | class TEvePointSet; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveMagField | // TEveMagField | |||
skipping to change at line 47 | skipping to change at line 48 | |||
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(Float_t x, Float_t y, Float_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 (v.fX, v.fY, v.fZ);} | virtual TEveVector GetField(const TEveVector &v) const { return GetField (v.fX, v.fY, v.fZ);} | |||
virtual TEveVector GetField(Float_t x, Float_t y, Float_t z) const = 0; | virtual TEveVector GetField(Float_t x, Float_t y, Float_t z) const = 0; | |||
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; | TEveVector fB; | |||
public: | public: | |||
TEveMagFieldConst(Float_t x, Float_t y, Float_t z) : TEveMagField(), fB( x, y, z) | TEveMagFieldConst(Float_t x, Float_t y, Float_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*/) const { return fB; } | virtual TEveVector GetField(Float_t /*x*/, Float_t /*y*/, Float_t /*z*/) const { return fB; } | |||
virtual Float_t GetMaxFieldMag() 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 | |||
{ | { | |||
skipping to change at line 93 | skipping to change at line 96 | |||
TEveMagFieldDuo(Float_t r, Float_t bIn, Float_t bOut) : TEveMagField(), | TEveMagFieldDuo(Float_t r, Float_t bIn, Float_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 TEveVector GetField(Float_t x, Float_t y, Float_t /*z*/) const | |||
{ 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; } | ||||
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: | |||
struct Helix_t | struct Helix_t | |||
{ | { | |||
Int_t fCharge; // Charge of tracked particle. | Int_t fCharge; // Charge of tracked particle. | |||
Float_t fMinAng; // Minimal angular step between two helix points. | Float_t fMaxAng; // Maximum step angle. | |||
Float_t fDelta; // Maximal error at the mid-point of the line conn | ||||
ecting two helix points. | ||||
Float_t fMaxStep; // Maximum allowed step size. | Float_t fMaxStep; // Maximum allowed step size. | |||
Float_t fCurrentStep; | Float_t fDelta; // Maximum error in the middle of the step. | |||
Float_t fPhi; // Accumulated angle to check fMaxOrbs by propagat or. | Float_t fPhi; // Accumulated angle to check fMaxOrbs by propagat or. | |||
Bool_t fValid; // Corner case pT~0 or B~0, possible in variable m ag field. | Bool_t fValid; // Corner case pT~0 or B~0, possible in variable m ag field. | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// helix parameters | // helix parameters | |||
Float_t fLam; // Momentum ratio pT/pZ. | Float_t fLam; // Momentum ratio pT/pZ. | |||
Float_t fR; // Helix radius in cm. | Float_t fR; // Helix radius in cm. | |||
Float_t fPhiStep; // Caluclated from fMinAng and fDelta. | Float_t fPhiStep; // Caluclated from fMinAng and fDelta. | |||
Float_t fSin, fCos; // Current sin/cos(phistep). | Float_t fSin, fCos; // Current sin/cos(phistep). | |||
// Runge-Kutta parameters | ||||
Float_t fRKStep; // Step for Runge-Kutta. | ||||
// cached | // cached | |||
TEveVector fB; // Current magnetic field, cached. | TEveVector fB; // Current magnetic field, cached. | |||
TEveVector fE1, fE2, fE3; // Base vectors: E1 -> B dir, E2->pT dir, E 3 = E1xE2. | TEveVector fE1, fE2, fE3; // Base vectors: E1 -> B dir, E2->pT dir, E 3 = E1xE2. | |||
TEveVector fPt, fPl; // Transverse and longitudinal momentum. | TEveVector fPt, fPl; // Transverse and longitudinal momentum. | |||
Float_t fPtMag; // Magnitude of pT. | Float_t fPtMag; // Magnitude of pT. | |||
Float_t fPlMag; // Momentum parallel to mag field. | Float_t fPlMag; // Momentum parallel to mag field. | |||
Float_t fLStep; // Transverse step arc-length in cm. | Float_t fLStep; // Transverse step arc-length in cm. | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
Helix_t(); | Helix_t(); | |||
void UpdateCommon(const TEveVector & p, const TEveVector& b); | void UpdateCommon(const TEveVector & p, const TEveVector& b); | |||
void UpdateHelix(const TEveVector & p, const TEveVector& b, Bool_t fu llUpdate); | void UpdateHelix(const TEveVector & p, const TEveVector& b, Bool_t fu ll_update, Bool_t enforce_max_step); | |||
void UpdateRK (const TEveVector & p, const TEveVector& b); | void UpdateRK (const TEveVector & p, const TEveVector& b); | |||
void Step(const TEveVector4& v, const TEveVector& p, TEveVector4& vOu t, TEveVector& pOut); | void Step(const TEveVector4& v, const TEveVector& p, TEveVector4& vOu t, TEveVector& pOut); | |||
Float_t GetStep() { return fLStep * TMath::Sqrt(1 + fLam*fLam); } | Float_t GetStep() { return fLStep * TMath::Sqrt(1 + fLam*fLam); } | |||
Float_t GetStep2() { return fLStep * fLStep * (1 + fLam*fLam); } | Float_t GetStep2() { return fLStep * fLStep * (1 + fLam*fLam); } | |||
}; | }; | |||
enum EStepper_e { kHelix, kRungeKutta }; | enum EStepper_e { kHelix, kRungeKutta }; | |||
private: | private: | |||
skipping to change at line 161 | skipping to change at line 168 | |||
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; | |||
// Track extrapolation limits | // Track extrapolation limits | |||
Float_t fMaxR; // Max radius for track extrapo lation | Float_t fMaxR; // Max radius for track extrapo lation | |||
Float_t fMaxZ; // Max z-coordinate for track e xtrapolation. | Float_t fMaxZ; // Max z-coordinate for track e xtrapolation. | |||
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). | Float_t fMaxOrbs; // Maximal angular path of trac ks' 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. | |||
skipping to change at line 187 | skipping to change at line 194 | |||
TMarker fFVAtt; // Marker attributes for fits v ertex. | TMarker fFVAtt; // Marker attributes for fits v ertex. | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// Propagation, state of current track | // Propagation, state of current track | |||
std::vector<TEveVector4> fPoints; // Calculated point. | std::vector<TEveVector4> fPoints; // Calculated point. | |||
TEveVector fV; // Start vertex. | TEveVector 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 date=kFALSE); | void Update(const TEveVector4& v, const TEveVector& p, Bool_t full_up date=kFALSE, Bool_t enforce_max_step=kFALSE); | |||
void Step(const TEveVector4 &v, const TEveVector &p, TEveVector4 &vOu t, TEveVector &pOut); | void Step(const TEveVector4 &v, const TEveVector &p, TEveVector4 &vOu t, TEveVector &pOut); | |||
Bool_t LoopToVertex(TEveVector& v, TEveVector& p); | Bool_t LoopToVertex(TEveVector& v, TEveVector& p); | |||
void LoopToBounds(TEveVector& p); | void LoopToBounds(TEveVector& p); | |||
Bool_t LineToVertex (TEveVector& v); | Bool_t LineToVertex (TEveVector& v); | |||
void LineToBounds (TEveVector& p); | void LineToBounds (TEveVector& p); | |||
void OneStepRungeKutta(Double_t charge, 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 , const TEveVector& normal, | Bool_t HelixIntersectPlane(const TEveVector& p, const TEveVector& point , const TEveVector& normal, | |||
TEveVector& itsect); | TEveVector& itsect); | |||
Bool_t LineIntersectPlane(const TEveVector& p, const TEveVector& point, const TEveVector& normal, | Bool_t LineIntersectPlane(const TEveVector& p, const TEveVector& point, const TEveVector& normal, | |||
TEveVector& itsect); | TEveVector& itsect); | |||
Bool_t PointOverVertex(const TEveVector4& v0, const TEveVector4& v, Floa t_t* p=0); | Bool_t PointOverVertex(const TEveVector4& v0, const TEveVector4& v, Floa t_t* p=0); | |||
public: | public: | |||
TEveTrackPropagator(const char* n="TEveTrackPropagator", const char* t=" ", | TEveTrackPropagator(const char* n="TEveTrackPropagator", const char* t=" ", | |||
skipping to change at line 237 | skipping to change at line 244 | |||
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(Float_t bX, Float_t bY, Float_t bZ); | |||
void SetMagField(Float_t b) { SetMagField(0.f, 0.f, b); } | void SetMagField(Float_t b) { SetMagField(0.f, 0.f, b); } | |||
void SetMagFieldObj(TEveMagField * x); | void SetMagFieldObj(TEveMagField * x); | |||
void SetMaxR(Float_t x); | void SetMaxR(Float_t x); | |||
void SetMaxZ(Float_t x); | void SetMaxZ(Float_t x); | |||
void SetMaxOrbs(Float_t x); | void SetMaxOrbs(Float_t x); | |||
void SetMinAng(Float_t x); | void SetMinAng(Float_t x); | |||
void SetDelta(Float_t x); | void SetMaxAng(Float_t x); | |||
void SetMaxStep(Float_t x); | void SetMaxStep(Float_t x); | |||
void SetDelta(Float_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) { fRnrFV = x; } | void SetRnrFV(Bool_t x) { fRnrFV = x; } | |||
TEveVector GetMagField(Float_t x, Float_t y, Float_t z) { return fMagFie ldObj->GetField(x, y, z); } | TEveVector GetMagField(Float_t x, Float_t y, Float_t z) { return fMagFie ldObj->GetField(x, y, z); } | |||
void PrintMagField(Float_t x, Float_t y, Float_t z) const; | void PrintMagField(Float_t x, Float_t y, Float_t z) const; | |||
EStepper_e GetStepper() const { return fStepper;} | EStepper_e GetStepper() const { return fStepper;} | |||
Float_t GetMaxR() const { return fMaxR; } | Float_t GetMaxR() const { return fMaxR; } | |||
Float_t GetMaxZ() const { return fMaxZ; } | Float_t GetMaxZ() const { return fMaxZ; } | |||
Float_t GetMaxOrbs() const { return fMaxOrbs; } | Float_t GetMaxOrbs() const { return fMaxOrbs; } | |||
Float_t GetMinAng() const { return fH.fMinAng; } | Float_t GetMinAng() const; | |||
Float_t GetDelta() const { return fH.fDelta; } | Float_t GetMaxAng() const { return fH.fMaxAng; } | |||
Float_t GetMaxStep() const { return fH.fMaxStep; } | Float_t GetMaxStep() const { return fH.fMaxStep; } | |||
Float_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; } | |||
End of changes. 16 change blocks. | ||||
12 lines changed or deleted | 20 lines changed or added | |||
TEveTrackPropagatorEditor.h | TEveTrackPropagatorEditor.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrackPropagatorEditor.h 23867 2008-05-15 18:59:02Z matevz $ | // @(#)root/eve:$Id: TEveTrackPropagatorEditor.h 32543 2010-03-10 22:12:00Z 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 48 | skipping to change at line 48 | |||
private: | private: | |||
TEveTrackPropagatorSubEditor(const TEveTrackPropagatorSubEditor&); // Not implemented | TEveTrackPropagatorSubEditor(const TEveTrackPropagatorSubEditor&); // Not implemented | |||
TEveTrackPropagatorSubEditor& operator=(const TEveTrackPropagatorSubEdit or&); // Not implemented | TEveTrackPropagatorSubEditor& operator=(const TEveTrackPropagatorSubEdit or&); // Not implemented | |||
protected: | protected: | |||
TEveTrackPropagator *fM; | TEveTrackPropagator *fM; | |||
TEveGValuator *fMaxR; | TEveGValuator *fMaxR; | |||
TEveGValuator *fMaxZ; | TEveGValuator *fMaxZ; | |||
TEveGValuator *fMaxOrbits; | TEveGValuator *fMaxOrbits; | |||
TEveGValuator *fMinAng; | TEveGValuator *fMaxAng; | |||
TEveGValuator *fDelta; | TEveGValuator *fDelta; | |||
TGCheckButton *fRnrFV; | TGCheckButton *fRnrFV; | |||
TGCompositeFrame *fPMFrame; | TGCompositeFrame *fPMFrame; | |||
TGButton *fFitDaughters; | TGButton *fFitDaughters; | |||
TGButton *fFitReferences; | TGButton *fFitReferences; | |||
TGButton *fFitDecay; | TGButton *fFitDecay; | |||
TGButton *fFitCluster2Ds; | TGButton *fFitCluster2Ds; | |||
TGButton *fRnrDaughters; | TGButton *fRnrDaughters; | |||
skipping to change at line 79 | skipping to change at line 79 | |||
TEveTrackPropagatorSubEditor(const TGWindow* p); | TEveTrackPropagatorSubEditor(const TGWindow* p); | |||
virtual ~TEveTrackPropagatorSubEditor() {} | virtual ~TEveTrackPropagatorSubEditor() {} | |||
void SetModel(TEveTrackPropagator* m); | void SetModel(TEveTrackPropagator* m); | |||
void Changed(); //*SIGNAL* | void Changed(); //*SIGNAL* | |||
void DoMaxR(); | void DoMaxR(); | |||
void DoMaxZ(); | void DoMaxZ(); | |||
void DoMaxOrbits(); | void DoMaxOrbits(); | |||
void DoMinAng(); | void DoMaxAng(); | |||
void DoDelta(); | void DoDelta(); | |||
void DoFitPM(); | void DoFitPM(); | |||
void DoRnrPM(); | void DoRnrPM(); | |||
void DoRnrFV(); | void DoRnrFV(); | |||
void CreateRefsContainer(TGVerticalFrame* p); | void CreateRefsContainer(TGVerticalFrame* p); | |||
ClassDef(TEveTrackPropagatorSubEditor, 0); // Sub-editor for TEveTrackPr opagator class. | ClassDef(TEveTrackPropagatorSubEditor, 0); // Sub-editor for TEveTrackPr opagator class. | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
TEveTrans.h | TEveTrans.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrans.h 29908 2009-08-25 18:09:53Z matevz $ | // @(#)root/eve:$Id: TEveTrans.h 32931 2010-04-09 16:29:40Z 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_TEveTrans | #ifndef ROOT_TEveTrans | |||
#define ROOT_TEveTrans | #define ROOT_TEveTrans | |||
#include "TEveVector.h" | ||||
#include "TVector3.h" | #include "TVector3.h" | |||
class TEveVector; | ||||
class TGeoMatrix; | class TGeoMatrix; | |||
class TGeoHMatrix; | class TGeoHMatrix; | |||
class TBuffer3D; | class TBuffer3D; | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
// TEveTrans -- 3D transformation in generalised coordinates | // TEveTrans -- 3D transformation in generalised coordinates | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
class TEveTrans : public TObject | class TEveTrans : public TObject | |||
{ | { | |||
skipping to change at line 157 | skipping to change at line 156 | |||
// Operations on vectors | // Operations on vectors | |||
void MultiplyIP(TVector3& v, Double_t w=1) const; | void MultiplyIP(TVector3& v, Double_t w=1) const; | |||
void MultiplyIP(Double_t* v, Double_t w=1) const; | void MultiplyIP(Double_t* v, Double_t w=1) const; | |||
void MultiplyIP(Float_t* v, Double_t w=1) const; | void MultiplyIP(Float_t* v, Double_t w=1) const; | |||
TVector3 Multiply(const TVector3& v, Double_t w=1) const; | TVector3 Multiply(const TVector3& v, Double_t w=1) const; | |||
void Multiply(const Double_t *vin, Double_t* vout, Double_t w=1) con st; | void Multiply(const Double_t *vin, Double_t* vout, Double_t w=1) con st; | |||
void RotateIP(TVector3& v) const; | void RotateIP(TVector3& v) const; | |||
void RotateIP(Double_t* v) const; | void RotateIP(Double_t* v) const; | |||
void RotateIP(TEveVector& v) const; | void RotateIP(Float_t* v) const; | |||
TVector3 Rotate(const TVector3& v) const; | TVector3 Rotate(const TVector3& v) const; | |||
virtual void Print(Option_t* option = "") const; | virtual void Print(Option_t* option = "") const; | |||
// TEveUtil stuff | // TEveUtil stuff | |||
void SetFrom(Double_t* carr); | void SetFrom(Double_t* carr); | |||
void SetFrom(const TGeoMatrix& mat); | void SetFrom(const TGeoMatrix& mat); | |||
void SetGeoHMatrix(TGeoHMatrix& mat); | void SetGeoHMatrix(TGeoHMatrix& mat); | |||
void SetBuffer3D(TBuffer3D& buff); | void SetBuffer3D(TBuffer3D& buff); | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 3 lines changed or added | |||
TEveTriangleSet.h | TEveTriangleSet.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTriangleSet.h 26034 2008-10-31 14:01:05Z matevz $ | // @(#)root/eve:$Id: TEveTriangleSet.h 32478 2010-03-05 14:20:48Z 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 24 | skipping to change at line 24 | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#include "TAttBBox.h" | #include "TAttBBox.h" | |||
#include "TAtt3D.h" | #include "TAtt3D.h" | |||
#include "TEveTrans.h" | #include "TEveTrans.h" | |||
class TGeoMatrix; | class TGeoMatrix; | |||
class TEveTriangleSet : public TEveElement, | class TEveTriangleSet : public TEveElementList, | |||
public TNamed, | public TAtt3D, | |||
public TAttBBox, | public TAttBBox | |||
public TAtt3D | ||||
{ | { | |||
friend class TEveTriangleSetEditor; | friend class TEveTriangleSetEditor; | |||
friend class TEveTriangleSetGL; | friend class TEveTriangleSetGL; | |||
TEveTriangleSet(const TEveTriangleSet&); // Not implemented | TEveTriangleSet(const TEveTriangleSet&); // Not implemented | |||
TEveTriangleSet& operator=(const TEveTriangleSet&); // Not implemented | TEveTriangleSet& operator=(const TEveTriangleSet&); // Not implemented | |||
protected: | protected: | |||
// Vertex data | // Vertex data | |||
Int_t fNVerts; | Int_t fNVerts; | |||
Float_t* fVerts; //[3*fNVerts] | Float_t* fVerts; //[3*fNVerts] | |||
// Triangle data | // Triangle data | |||
Int_t fNTrings; | Int_t fNTrings; | |||
Int_t* fTrings; //[3*fNTrings] | Int_t* fTrings; //[3*fNTrings] | |||
Float_t* fTringNorms; //[3*fNTrings] | Float_t* fTringNorms; //[3*fNTrings] | |||
UChar_t* fTringCols; //[3*fNTrings] | UChar_t* fTringCols; //[3*fNTrings] | |||
// -------------------------------------------------------------- | ||||
Color_t fColor; | ||||
UShort_t fTransp; | ||||
public: | public: | |||
TEveTriangleSet(Int_t nv, Int_t nt, Bool_t norms=kFALSE, Bool_t cols=kFA LSE); | TEveTriangleSet(Int_t nv, Int_t nt, Bool_t norms=kFALSE, Bool_t cols=kFA LSE); | |||
~TEveTriangleSet(); | ~TEveTriangleSet(); | |||
virtual Bool_t CanEditMainColor() const { return kTRUE; } | ||||
virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | |||
Int_t GetNVerts() const { return fNVerts; } | Int_t GetNVerts() const { return fNVerts; } | |||
Int_t GetNTrings() const { return fNTrings; } | Int_t GetNTrings() const { return fNTrings; } | |||
Float_t* Vertex(Int_t i) { return &(fVerts[3*i]); } | Float_t* Vertex(Int_t i) { return &(fVerts[3*i]); } | |||
Int_t* Triangle(Int_t i) { return &(fTrings[3*i]); } | Int_t* Triangle(Int_t i) { return &(fTrings[3*i]); } | |||
Float_t* TriangleNormal(Int_t i) { return &(fTringNorms[3*i]); } | Float_t* TriangleNormal(Int_t i) { return &(fTringNorms[3*i]); } | |||
UChar_t* TriangleColor(Int_t i) { return &(fTringCols[3*i]); } | UChar_t* TriangleColor(Int_t i) { return &(fTringCols[3*i]); } | |||
skipping to change at line 79 | skipping to change at line 72 | |||
{ Int_t* t = Triangle(i); t[0] = v0; t[1] = v1; t[2] = v2; } | { Int_t* t = Triangle(i); t[0] = v0; t[1] = v1; t[2] = v2; } | |||
void SetTriangleColor(Int_t i, UChar_t r, UChar_t g, UChar_t b, UChar_t a=255) | void SetTriangleColor(Int_t i, UChar_t r, UChar_t g, UChar_t b, UChar_t a=255) | |||
{ UChar_t* c = TriangleColor(i); c[0] = r; c[1] = g; c[2] = b; c[3] = a; } | { UChar_t* c = TriangleColor(i); c[0] = r; c[1] = g; c[2] = b; c[3] = a; } | |||
void GenerateTriangleNormals(); | void GenerateTriangleNormals(); | |||
void GenerateRandomColors(); | void GenerateRandomColors(); | |||
void GenerateZNormalColors(Float_t fac=20, Int_t min=-20, Int_t max=20, | void GenerateZNormalColors(Float_t fac=20, Int_t min=-20, Int_t max=20, | |||
Bool_t interp=kFALSE, Bool_t wrap=kFALSE); | Bool_t interp=kFALSE, Bool_t wrap=kFALSE); | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
virtual void Paint(Option_t* = ""); | virtual void Paint(Option_t* option=""); | |||
void SetTransparency(UChar_t tr) { SetMainTransparency(tr); } // *MENU* | void SetTransparency(UChar_t tr) { SetMainTransparency(tr); } // *MENU* | |||
static TEveTriangleSet* ReadTrivialFile(const char* file); | static TEveTriangleSet* ReadTrivialFile(const char* file); | |||
ClassDef(TEveTriangleSet, 0); // Generic mesh or soup of triangles with per-triangle normals and colors. | ClassDef(TEveTriangleSet, 0); // Generic mesh or soup of triangles with per-triangle normals and colors. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
12 lines changed or deleted | 5 lines changed or added | |||
TEveVector.h | TEveVector.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveVector.h 31517 2009-12-03 11:56:23Z matevz $ | // @(#)root/eve:$Id: TEveVector.h 33064 2010-04-16 11:09:19Z 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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TEveVector | #ifndef ROOT_TEveVector | |||
#define ROOT_TEveVector | #define ROOT_TEveVector | |||
#include "TMath.h" | #include "TMath.h" | |||
class TVector3; | class TVector3; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveVector | // TEveVectorT | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveVector | template <typename TT> | |||
class TEveVectorT | ||||
{ | { | |||
public: | public: | |||
Float_t fX, fY, fZ; // Components of the vector. | TT fX, fY, fZ; // Components of the vector. | |||
TEveVector() : fX(0), fY(0), fZ(0) {} | TEveVectorT() : fX(0), fY(0), fZ(0) {} | |||
TEveVector(const Float_t* v) : fX(v[0]), fY(v[1]), fZ(v[2]) {} | template <typename OO> | |||
TEveVector(const Double_t* v) : fX(v[0]), fY(v[1]), fZ(v[2]) {} | TEveVectorT(const TEveVectorT<OO>& v) : fX(v.fX), fY(v.fY), fZ(v.fZ) {} | |||
TEveVector(Float_t x, Float_t y, Float_t z) : fX(x), fY(y), fZ(z) {} | TEveVectorT(const Float_t* v) : fX(v[0]), fY(v[1]), fZ(v[2]) {} | |||
virtual ~TEveVector() {} | TEveVectorT(const Double_t* v) : fX(v[0]), fY(v[1]), fZ(v[2]) {} | |||
TEveVectorT(TT x, TT y, TT z) : fX(x), fY(y), fZ(z) {} | ||||
void Dump() const; | void Dump() const; | |||
operator const Float_t*() const { return &fX; } | operator const TT*() const { return &fX; } | |||
operator Float_t*() { return &fX; } | operator TT*() { return &fX; } | |||
TEveVector& operator *=(Float_t s) { fX *= s; fY *= s; f | TT operator [] (Int_t idx) const { return (&fX)[idx]; } | |||
Z *= s; return *this; } | TT& operator [] (Int_t idx) { return (&fX)[idx]; } | |||
TEveVector& operator +=(const TEveVector& v) { fX += v.fX; fY += v.fY; f | ||||
Z += v.fZ; return *this; } | ||||
TEveVector& operator -=(const TEveVector& v) { fX -= v.fX; fY -= v.fY; f | ||||
Z -= v.fZ; return *this; } | ||||
TEveVector operator + (const TEveVector &) const; | ||||
TEveVector operator - (const TEveVector &) const; | ||||
TEveVector operator * (Float_t a) const; | ||||
Float_t& operator [] (Int_t indx); | const TT* Arr() const { return &fX; } | |||
Float_t operator [] (Int_t indx) const; | TT* Arr() { return &fX; } | |||
const Float_t* Arr() const { return &fX; } | TEveVectorT& operator*=(TT s) { fX *= s; fY *= s; | |||
Float_t* Arr() { return &fX; } | fZ *= s; return *this; } | |||
TEveVectorT& operator+=(const TEveVectorT& v) { fX += v.fX; fY += v.fY; | ||||
fZ += v.fZ; return *this; } | ||||
TEveVectorT& operator-=(const TEveVectorT& v) { fX -= v.fX; fY -= v.fY; | ||||
fZ -= v.fZ; return *this; } | ||||
void Set(const Float_t* v) { fX = v[0]; fY = v[1]; fZ = v[2]; } | void Set(const Float_t* v) { fX = v[0]; fY = v[1]; fZ = v[2]; } | |||
void Set(const Double_t* v) { fX = v[0]; fY = v[1]; fZ = v[2]; } | void Set(const Double_t* v) { fX = v[0]; fY = v[1]; fZ = v[2]; } | |||
void Set(Float_t x, Float_t y, Float_t z) { fX = x; fY = y; fZ = z; } | void Set(TT x, TT y, TT z) { fX = x; fY = y; fZ = z; } | |||
void Set(Double_t x, Double_t y, Double_t z) { fX = x; fY = y; fZ = z; } | ||||
void Set(const TEveVector& v) { fX = v.fX; fY = v.fY; fZ = v.fZ; } | ||||
void Set(const TVector3& v); | void Set(const TVector3& v); | |||
template <typename OO> | ||||
void Set(const TEveVectorT<OO>& v) { fX = v.fX; fY = v.fY; fZ = v.fZ; | ||||
} | ||||
void NegateXYZ() { fX = - fX; fY = -fY; fZ = -fZ; } | void NegateXYZ() { fX = - fX; fY = -fY; fZ = -fZ; } | |||
void Normalize(Float_t length=1); | TT Normalize(TT length=1); | |||
Float_t Phi() const; | TT Phi() const; | |||
Float_t Theta() const; | TT Theta() const; | |||
Float_t CosTheta() const; | TT CosTheta() const; | |||
Float_t Eta() const; | TT Eta() const; | |||
Float_t Mag() const { return TMath::Sqrt(fX*fX + fY*fY + fZ*fZ);} | TT Mag2() const { return fX*fX + fY*fY + fZ*fZ; } | |||
Float_t Mag2() const { return fX*fX + fY*fY + fZ*fZ;} | TT Mag() const { return TMath::Sqrt(Mag2()); } | |||
Float_t Perp() const { return TMath::Sqrt(fX*fX + fY*fY);} | TT Perp2() const { return fX*fX + fY*fY; } | |||
Float_t Perp2() const { return fX*fX + fY*fY;} | TT Perp() const { return TMath::Sqrt(Perp2()); } | |||
Float_t R() const { return Perp(); } | TT R() const { return Perp(); } | |||
Float_t Distance(const TEveVector& v) const; | TT Distance(const TEveVectorT& v) const; | |||
Float_t SquareDistance(const TEveVector& v) const; | TT SquareDistance(const TEveVectorT& v) const; | |||
Float_t Dot(const TEveVector& a) const; | TT Dot(const TEveVectorT& a) const; | |||
TEveVector Cross(const TEveVector& a) const; | ||||
TEveVector& Sub(const TEveVector& p, const TEveVector& q); | TEveVectorT Cross(const TEveVectorT& a) const; | |||
TEveVector& Mult(const TEveVector& a, Float_t af); | TEveVectorT& Sub(const TEveVectorT& a, const TEveVectorT& b); | |||
TEveVectorT& Mult(const TEveVectorT& a, TT af); | ||||
TEveVector Orthogonal() const; | TEveVectorT Orthogonal() const; | |||
void OrthoNormBase(TEveVector& a, TEveVector& b) const; | void OrthoNormBase(TEveVectorT& a, TEveVectorT& b) const; | |||
ClassDef(TEveVector, 1); // Float three-vector; a minimal Float_t copy o f TVector3 used to represent points and momenta (also used in VSD). | ClassDefNV(TEveVectorT, 2); // A three-vector template without TObject i nheritance and virtual functions. | |||
}; | }; | |||
typedef TEveVectorT<Float_t> TEveVector; | ||||
typedef TEveVectorT<Float_t> TEveVectorF; | ||||
typedef TEveVectorT<Double_t> TEveVectorD; | ||||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::Phi() const | template<typename TT> | |||
inline TT TEveVectorT<TT>::Phi() const | ||||
{ | { | |||
return fX == 0.0 && fY == 0.0 ? 0.0 : TMath::ATan2(fY, fX); | return fX == 0 && fY == 0 ? 0 : TMath::ATan2(fY, fX); | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::Theta() const | template<typename TT> | |||
inline TT TEveVectorT<TT>::Theta() const | ||||
{ | { | |||
return fX == 0.0 && fY == 0.0 && fZ == 0.0 ? 0.0 : TMath::ATan2(Perp(), fZ); | return fX == 0 && fY == 0 && fZ == 0 ? 0 : TMath::ATan2(Perp(), fZ); | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::CosTheta() const | template<typename TT> | |||
inline TT TEveVectorT<TT>::CosTheta() const | ||||
{ | { | |||
Float_t ptot = Mag(); return ptot == 0.0 ? 1.0 : fZ/ptot; | Float_t ptot = Mag(); return ptot == 0 ? 1 : fZ/ptot; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::Distance( const TEveVector& b) const | template<typename TT> | |||
inline TT TEveVectorT<TT>::Distance(const TEveVectorT& b) const | ||||
{ | { | |||
return TMath::Sqrt((fX - b.fX)*(fX - b.fX) + | return TMath::Sqrt((fX - b.fX)*(fX - b.fX) + | |||
(fY - b.fY)*(fY - b.fY) + | (fY - b.fY)*(fY - b.fY) + | |||
(fZ - b.fZ)*(fZ - b.fZ)); | (fZ - b.fZ)*(fZ - b.fZ)); | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::SquareDistance(const TEveVector& b) const | template<typename TT> | |||
inline TT TEveVectorT<TT>::SquareDistance(const TEveVectorT& b) const | ||||
{ | { | |||
return ((fX - b.fX) * (fX - b.fX) + | return ((fX - b.fX) * (fX - b.fX) + | |||
(fY - b.fY) * (fY - b.fY) + | (fY - b.fY) * (fY - b.fY) + | |||
(fZ - b.fZ) * (fZ - b.fZ)); | (fZ - b.fZ) * (fZ - b.fZ)); | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::Dot(const TEveVector& a) const | template<typename TT> | |||
inline TT TEveVectorT<TT>::Dot(const TEveVectorT& a) const | ||||
{ | { | |||
return a.fX*fX + a.fY*fY + a.fZ*fZ; | return a.fX*fX + a.fY*fY + a.fZ*fZ; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline TEveVector TEveVector::Cross(const TEveVector& a) const | template<typename TT> | |||
inline TEveVectorT<TT> TEveVectorT<TT>::Cross(const TEveVectorT<TT>& a) con | ||||
st | ||||
{ | { | |||
TEveVector r; | TEveVectorT<TT> r; | |||
r.fX = fY * a.fZ - fZ * a.fY; | r.fX = fY * a.fZ - fZ * a.fY; | |||
r.fY = fZ * a.fX - fX * a.fZ; | r.fY = fZ * a.fX - fX * a.fZ; | |||
r.fZ = fX * a.fY - fY * a.fX; | r.fZ = fX * a.fY - fY * a.fX; | |||
return r; | return r; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline TEveVector& TEveVector::Sub(const TEveVector& p, const TEveVector& q | template<typename TT> | |||
) | inline TEveVectorT<TT>& TEveVectorT<TT>::Sub(const TEveVectorT<TT>& a, cons | |||
t TEveVectorT<TT>& b) | ||||
{ | { | |||
fX = p.fX - q.fX; | fX = a.fX - b.fX; | |||
fY = p.fY - q.fY; | fY = a.fY - b.fY; | |||
fZ = p.fZ - q.fZ; | fZ = a.fZ - b.fZ; | |||
return *this; | return *this; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline TEveVector& TEveVector::Mult(const TEveVector& a, Float_t af) | template<typename TT> | |||
inline TEveVectorT<TT>& TEveVectorT<TT>::Mult(const TEveVectorT<TT>& a, TT | ||||
af) | ||||
{ | { | |||
fX = a.fX * af; | fX = a.fX * af; | |||
fY = a.fY * af; | fY = a.fY * af; | |||
fZ = a.fZ * af; | fZ = a.fZ * af; | |||
return *this; | return *this; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t& TEveVector::operator [] (Int_t idx) | template<typename TT> | |||
inline TEveVectorT<TT> operator+(const TEveVectorT<TT>& a, const TEveVector | ||||
T<TT>& b) | ||||
{ | ||||
TEveVectorT<TT> r(a); | ||||
return r += b; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVectorT<TT> operator-(const TEveVectorT<TT>& a, const TEveVector | ||||
T<TT>& b) | ||||
{ | ||||
TEveVectorT<TT> r(a); | ||||
return r -= b; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVectorT<TT> operator*(const TEveVectorT<TT>& a, TT b) | ||||
{ | { | |||
return (&fX)[idx]; | TEveVectorT<TT> r(a); | |||
return r *= b; | ||||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Float_t TEveVector::operator [] (Int_t idx) const | template<typename TT> | |||
inline TEveVectorT<TT> operator*(TT b, const TEveVectorT<TT>& a) | ||||
{ | { | |||
return (&fX)[idx]; | TEveVectorT<TT> r(a); | |||
return r *= b; | ||||
} | } | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveVector4 | // TEveVector4T | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveVector4 : public TEveVector | template <typename TT> | |||
class TEveVector4T : public TEveVectorT<TT> | ||||
{ | { | |||
typedef TEveVectorT<TT> TP; | ||||
public: | public: | |||
Float_t fT; | TT fT; | |||
TEveVector4() : TEveVector(), fT(0) {} | TEveVector4T() : TP(), fT(0) {} | |||
TEveVector4(const TEveVector& v) : TEveVector(v), fT(0) {} | template <typename OO> | |||
TEveVector4(Float_t x, Float_t y, Float_t z, Float_t t=0) : | TEveVector4T(const TEveVectorT<OO>& v) : TP(v.fX, v.fY, v.fZ), fT(0) {} | |||
TEveVector(x, y, z), fT(t) {} | template <typename OO> | |||
virtual ~TEveVector4() {} | TEveVector4T(const TEveVectorT<OO>& v, Float_t t) : TP(v.fX, v.fY, v.fZ) | |||
, fT(t) {} | ||||
template <typename OO> | ||||
TEveVector4T(const TEveVector4T<OO>& v) : TP(v.fX, v.fY, v.fZ), fT(v.fT) | ||||
{} | ||||
TEveVector4T(const Float_t* v) : TP(v), fT(v[3]) {} | ||||
TEveVector4T(const Double_t* v) : TP(v), fT(v[3]) {} | ||||
TEveVector4T(TT x, TT y, TT z, TT t=0) : TP(x, y, z), fT(t) {} | ||||
void Dump() const; | void Dump() const; | |||
TEveVector4 operator + (const TEveVector4 & b) const | TEveVector4T& operator*=(TT s) { TP::operator*=(s); fT | |||
{ return TEveVector4(fX + b.fX, fY + b.fY, fZ + b.fZ, fT + b.fT); } | *= s; return *this; } | |||
TEveVector4T& operator+=(const TEveVector4T& v) { TP::operator+=(v); fT | ||||
+= v.fT; return *this; } | ||||
TEveVector4T& operator-=(const TEveVector4T& v) { TP::operator-=(v); fT | ||||
-= v.fT; return *this; } | ||||
TEveVector4 operator - (const TEveVector4 & b) const | using TP::operator+=; | |||
{ return TEveVector4(fX - b.fX, fY - b.fY, fZ - b.fZ, fT - b.fT); } | using TP::operator-=; | |||
TEveVector4 operator * (Float_t a) const | ClassDefNV(TEveVector4T, 1); // A four-vector template without TObject i | |||
{ return TEveVector4(a*fX, a*fY, a*fZ, a*fT); } | nheritance and virtual functions. | |||
}; | ||||
TEveVector4& operator += (const TEveVector4 & b) | typedef TEveVector4T<Float_t> TEveVector4; | |||
{ fX += b.fX; fY += b.fY; fZ += b.fZ; fT += b.fT; return *this; } | typedef TEveVector4T<Float_t> TEveVector4F; | |||
typedef TEveVector4T<Double_t> TEveVector4D; | ||||
ClassDef(TEveVector4, 1); // Float four-vector. | //_________________________________________________________________________ | |||
}; | _____ | |||
template<typename TT> | ||||
inline TEveVector4T<TT> operator+(const TEveVector4T<TT>& a, const TEveVect | ||||
or4T<TT>& b) | ||||
{ | ||||
return TEveVector4T<TT>(a.fX + b.fX, a.fY + b.fY, a.fZ + b.fZ, a.fT + b. | ||||
fT); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector4T<TT> operator-(const TEveVector4T<TT>& a, const TEveVect | ||||
or4T<TT>& b) | ||||
{ | ||||
return TEveVector4T<TT>(a.fX - b.fX, a.fY - b.fY, a.fZ - b.fZ, a.fT - b. | ||||
fT); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector4T<TT> operator*(const TEveVector4T<TT>& a, TT b) | ||||
{ | ||||
return TEveVector4T<TT>(a.fX*b, a.fY*b, a.fZ*b, a.fT*b); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector4T<TT> operator*(TT b, const TEveVector4T<TT>& a) | ||||
{ | ||||
return TEveVector4T<TT>(a.fX*b, a.fY*b, a.fZ*b, a.fT*b); | ||||
} | ||||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEvePathMark | // TEveVector2T | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEvePathMark | template <typename TT> | |||
class TEveVector2T | ||||
{ | { | |||
public: | public: | |||
enum EType_e { kReference, kDaughter, kDecay, kCluster2D }; | TT fX, fY; // Components of the point. | |||
TEveVector2T() : fX(0), fY(0) {} | ||||
template <typename OO> | ||||
TEveVector2T(const TEveVector2T<OO>& v) : fX(v.fX), fY(v.fY) {} | ||||
TEveVector2T(const Float_t* v) : fX(v[0]), fY(v[1]) {} | ||||
TEveVector2T(const Double_t* v) : fX(v[0]), fY(v[1]) {} | ||||
TEveVector2T(TT x, TT y) : fX(x), fY(y) {} | ||||
void Dump() const; | ||||
operator const TT*() const { return &fX; } | ||||
operator TT*() { return &fX; } | ||||
TEveVector2T& operator*=(TT s) { fX *= s; fY *= s; | ||||
return *this; } | ||||
TEveVector2T& operator+=(const TEveVector2T& v) { fX += v.fX; fY += v.fY | ||||
; return *this; } | ||||
TEveVector2T& operator-=(const TEveVector2T& v) { fX -= v.fX; fY -= v.fY | ||||
; return *this; } | ||||
EType_e fType; // Mark-type. | TT& operator[](Int_t idx) { return (&fX)[idx]; } | |||
TEveVector fV; // Vertex. | TT operator[](Int_t idx) const { return (&fX)[idx]; } | |||
TEveVector fP; // Momentum. | ||||
TEveVector fE; // Extra, meaning depends on fType. | ||||
Float_t fTime; // Time. | ||||
TEvePathMark(EType_e type=kReference) : | const TT* Arr() const { return &fX; } | |||
fType(type), fV(), fP(), fE(), fTime(0) {} | TT* Arr() { return &fX; } | |||
TEvePathMark(EType_e type, const TEveVector& v, Float_t time=0) : | void Set(const Float_t* v) { fX = v[0]; fY = v[1]; } | |||
fType(type), fV(v), fP(), fE(), fTime(time) {} | void Set(const Double_t* v) { fX = v[0]; fY = v[1]; } | |||
void Set(TT x, TT y) { fX = x; fY = y; } | ||||
TEvePathMark(EType_e type, const TEveVector& v, const TEveVector& p, Flo | template <typename OO> | |||
at_t time=0) : | void Set(const TEveVector2T<OO>& v) { fX = v.fX; fY = v.fY; } | |||
fType(type), fV(v), fP(p), fE(), fTime(time) {} | ||||
TEvePathMark(EType_e type, const TEveVector& v, const TEveVector& p, con | void NegateXY() { fX = - fX; fY = -fY; } | |||
st TEveVector& e, Float_t time=0) : | void Normalize(TT length=1); | |||
fType(type), fV(v), fP(p), fE(e), fTime(time) {} | ||||
virtual ~TEvePathMark() {} | TT Phi() const; | |||
const char* TypeName(); | TT Mag2() const { return fX*fX + fY*fY;} | |||
TT Mag() const { return TMath::Sqrt(Mag2());} | ||||
ClassDef(TEvePathMark, 1); // Special-point on track: position/momentum | TT Distance(const TEveVector2T& v) const; | |||
reference, daughter creation or decay (also used in VSD). | TT SquareDistance(const TEveVector2T& v) const; | |||
TT Dot(const TEveVector2T& a) const; | ||||
TT Cross(const TEveVector2T& a) const; | ||||
TEveVector2T& Sub(const TEveVector2T& p, const TEveVector2T& q); | ||||
TEveVector2T& Mult(const TEveVector2T& a, TT af); | ||||
ClassDefNV(TEveVector2T, 1); // // A two-vector template without TObject | ||||
inheritance and virtual functions. | ||||
}; | }; | |||
typedef TEveVector2T<Float_t> TEveVector2; | ||||
typedef TEveVector2T<Float_t> TEveVector2F; | ||||
typedef TEveVector2T<Double_t> TEveVector2D; | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TT TEveVector2T<TT>::Phi() const | ||||
{ | ||||
return fX == 0.0 && fY == 0.0 ? 0.0 : TMath::ATan2(fY, fX); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TT TEveVector2T<TT>::Distance( const TEveVector2T<TT>& b) const | ||||
{ | ||||
return TMath::Sqrt((fX - b.fX)*(fX - b.fX) + | ||||
(fY - b.fY)*(fY - b.fY)); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TT TEveVector2T<TT>::SquareDistance(const TEveVector2T<TT>& b) const | ||||
{ | ||||
return ((fX - b.fX) * (fX - b.fX) + | ||||
(fY - b.fY) * (fY - b.fY)); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TT TEveVector2T<TT>::Dot(const TEveVector2T<TT>& a) const | ||||
{ | ||||
return a.fX*fX + a.fY*fY; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TT TEveVector2T<TT>::Cross(const TEveVector2T<TT>& a) const | ||||
{ | ||||
return fX * a.fY - fY * a.fX; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT>& TEveVector2T<TT>::Sub(const TEveVector2T<TT>& p, c | ||||
onst TEveVector2T<TT>& q) | ||||
{ | ||||
fX = p.fX - q.fX; | ||||
fY = p.fY - q.fY; | ||||
return *this; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT>& TEveVector2T<TT>::Mult(const TEveVector2T<TT>& a, | ||||
TT af) | ||||
{ | ||||
fX = a.fX * af; | ||||
fY = a.fY * af; | ||||
return *this; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT> operator+(const TEveVector2T<TT>& a, const TEveVect | ||||
or2T<TT>& b) | ||||
{ | ||||
TEveVector2T<TT> r(a); | ||||
return r += b; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT> operator-(const TEveVector2T<TT>& a, const TEveVect | ||||
or2T<TT>& b) | ||||
{ | ||||
TEveVector2T<TT> r(a); | ||||
return r -= b; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT> operator*(const TEveVector2T<TT>& a, TT b) | ||||
{ | ||||
TEveVector2T<TT> r(a); | ||||
return r *= b; | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
template<typename TT> | ||||
inline TEveVector2T<TT> operator*(TT b, const TEveVector2T<TT>& a) | ||||
{ | ||||
TEveVector2T<TT> r(a); | ||||
return r *= b; | ||||
} | ||||
#endif | #endif | |||
End of changes. 62 change blocks. | ||||
108 lines changed or deleted | 329 lines changed or added | |||
TEveViewer.h | TEveViewer.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveViewer.h 31821 2009-12-10 18:22:44Z matevz $ | // @(#)root/eve:$Id: TEveViewer.h 33124 2010-04-21 20:04:42Z 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 23 | skipping to change at line 23 | |||
#define ROOT_TEveViewer | #define ROOT_TEveViewer | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TEveWindow.h" | #include "TEveWindow.h" | |||
class TGWindow; | class TGWindow; | |||
class TGedEditor; | class TGedEditor; | |||
class TGLViewer; | class TGLViewer; | |||
class TGLSAViewer; | class TGLSAViewer; | |||
class TGLEmbeddedViewer; | class TGLEmbeddedViewer; | |||
class TGLPhysicalShape; | ||||
class TEveScene; | class TEveScene; | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
// TEveViewer | // TEveViewer | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
class TEveViewer : public TEveWindowFrame | class TEveViewer : public TEveWindowFrame | |||
{ | { | |||
private: | private: | |||
skipping to change at line 91 | skipping to change at line 90 | |||
private: | private: | |||
TEveViewerList(const TEveViewerList&); // Not implemented | TEveViewerList(const TEveViewerList&); // Not implemented | |||
TEveViewerList& operator=(const TEveViewerList&); // Not implemented | TEveViewerList& operator=(const TEveViewerList&); // Not implemented | |||
protected: | protected: | |||
Bool_t fShowTooltip; | Bool_t fShowTooltip; | |||
Float_t fBrightness; | Float_t fBrightness; | |||
Bool_t fUseLightColorSet; | Bool_t fUseLightColorSet; | |||
void HandleTooltip(); | ||||
public: | public: | |||
TEveViewerList(const char* n="TEveViewerList", const char* t=""); | TEveViewerList(const char* n="TEveViewerList", const char* t=""); | |||
virtual ~TEveViewerList() {} | virtual ~TEveViewerList() {} | |||
virtual void AddElement(TEveElement* el); | virtual void AddElement(TEveElement* el); | |||
virtual void RemoveElementLocal(TEveElement* el); | virtual void RemoveElementLocal(TEveElement* el); | |||
virtual void RemoveElementsLocal(); | virtual void RemoveElementsLocal(); | |||
// -------------------------------- | // -------------------------------- | |||
virtual void Connect(); | virtual void Connect(); | |||
void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals); | void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals); | |||
void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals); | void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals); | |||
void DeleteAnnotations(); | void DeleteAnnotations(); | |||
void SceneDestructing(TEveScene* scene); | void SceneDestructing(TEveScene* scene); | |||
// -------------------------------- | // -------------------------------- | |||
void OnMouseOver(TGLPhysicalShape* shape, UInt_t state); | void OnMouseOver(TObject* obj, UInt_t state); | |||
void OnReMouseOver(TObject* obj, UInt_t state); | ||||
void OnUnMouseOver(TObject* obj, UInt_t state); | ||||
void OnClicked(TObject *obj, UInt_t button, UInt_t state); | void OnClicked(TObject *obj, UInt_t button, UInt_t state); | |||
void OnReClicked(TObject *obj, UInt_t button, UInt_t state); | void OnReClicked(TObject *obj, UInt_t button, UInt_t state); | |||
void OnUnClicked(TObject *obj, UInt_t button, UInt_t state); | void OnUnClicked(TObject *obj, UInt_t button, UInt_t state); | |||
// -------------------------------- | // -------------------------------- | |||
Bool_t GetShowTooltip() const { return fShowTooltip; } | Bool_t GetShowTooltip() const { return fShowTooltip; } | |||
void SetShowTooltip(Bool_t x) { fShowTooltip = x; } | void SetShowTooltip(Bool_t x) { fShowTooltip = x; } | |||
Float_t GetColorBrightness() const { return fBrightness; } | Float_t GetColorBrightness() const { return fBrightness; } | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 6 lines changed or added | |||
TEveWindow.h | TEveWindow.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveWindow.h 29129 2009-06-22 09:39:20Z brun $ | // @(#)root/eve:$Id: TEveWindow.h 32138 2010-01-28 15:16:30Z 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 276 | skipping to change at line 276 | |||
// Static helper functions for common window management scenarios. | // Static helper functions for common window management scenarios. | |||
static TEveWindowSlot* CreateDefaultWindowSlot(); | static TEveWindowSlot* CreateDefaultWindowSlot(); | |||
static TEveWindowSlot* CreateWindowMainFrame(TEveWindow* eve_parent=0); | static TEveWindowSlot* CreateWindowMainFrame(TEveWindow* eve_parent=0); | |||
static TEveWindowSlot* CreateWindowInTab(TGTab* tab, TEveWindow* eve_par ent=0); | static TEveWindowSlot* CreateWindowInTab(TGTab* tab, TEveWindow* eve_par ent=0); | |||
static void SwapWindows(TEveWindow* w1, TEveWindow* w2); | static void SwapWindows(TEveWindow* w1, TEveWindow* w2); | |||
// Access to static data-members. | // Access to static data-members. | |||
static UInt_t GetMainFrameDefWidth() { return fgMainFrameDefWidth; } | static UInt_t GetMainFrameDefWidth(); | |||
static UInt_t GetMainFrameDefHeight() { return fgMainFrameDefHeight; } | static UInt_t GetMainFrameDefHeight(); | |||
static void SetMainFrameDefWidth (UInt_t x) { fgMainFrameDefWidth = x; | static void SetMainFrameDefWidth (UInt_t x); | |||
} | static void SetMainFrameDefHeight(UInt_t x); | |||
static void SetMainFrameDefHeight(UInt_t x) { fgMainFrameDefHeight = x; | ||||
} | static Pixel_t GetCurrentBackgroundColor(); | |||
static Pixel_t GetMiniBarBackgroundColor(); | ||||
static Pixel_t GetCurrentBackgroundColor() { return fgCurrentBackgroundC | static void SetCurrentBackgroundColor(Pixel_t p); | |||
olor; } | static void SetMiniBarBackgroundColor(Pixel_t p); | |||
static Pixel_t GetMiniBarBackgroundColor() { return fgMiniBarBackgroundC | ||||
olor; } | ||||
static void SetCurrentBackgroundColor(Pixel_t p) { fgCurrentBackgroundCo | ||||
lor = p; } | ||||
static void SetMiniBarBackgroundColor(Pixel_t p) { fgMiniBarBackgroundCo | ||||
lor = p; } | ||||
ClassDef(TEveWindow, 0); // Abstract base-class for eve-windows. | ClassDef(TEveWindow, 0); // Abstract base-class for eve-windows. | |||
}; | }; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TEveWindowSlot | // TEveWindowSlot | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TEveWindowSlot : public TEveWindow | class TEveWindowSlot : public TEveWindow | |||
{ | { | |||
End of changes. 2 change blocks. | ||||
16 lines changed or deleted | 10 lines changed or added | |||
TF1.h | TF1.h | |||
---|---|---|---|---|
// @(#)root/hist:$Id: TF1.h 29895 2009-08-25 09:35:06Z brun $ | // @(#)root/hist:$Id: TF1.h 32584 2010-03-12 09:58:37Z moneta $ | |||
// Author: Rene Brun 18/08/95 | // Author: Rene Brun 18/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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
// ---------------------------------- F1.h | // ---------------------------------- F1.h | |||
skipping to change at line 208 | skipping to change at line 208 | |||
virtual void DrawF1(const char *formula, Double_t xmin, Double_t xma x, Option_t *option=""); | virtual void DrawF1(const char *formula, Double_t xmin, Double_t xma x, Option_t *option=""); | |||
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t =0) const; | virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t =0) const; | |||
virtual Double_t EvalPar(const Double_t *x, const Double_t *params=0); | virtual Double_t EvalPar(const Double_t *x, const Double_t *params=0); | |||
// for using TF1 as a callable object (functor) | // for using TF1 as a callable object (functor) | |||
virtual Double_t operator()(Double_t x, Double_t y=0, Double_t z = 0, Do uble_t t = 0) const; | virtual Double_t operator()(Double_t x, Double_t y=0, Double_t z = 0, Do uble_t t = 0) const; | |||
virtual Double_t operator()(const Double_t *x, const Double_t *params=0) ; | virtual Double_t operator()(const Double_t *x, const Double_t *params=0) ; | |||
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | |||
virtual void FixParameter(Int_t ipar, Double_t value); | virtual void FixParameter(Int_t ipar, Double_t value); | |||
Double_t GetChisquare() const {return fChisquare;} | Double_t GetChisquare() const {return fChisquare;} | |||
TH1 *GetHistogram() const; | TH1 *GetHistogram() const; | |||
virtual Double_t GetMaximum(Double_t xmin=0, Double_t xmax=0) const; | virtual Double_t GetMaximum(Double_t xmin=0, Double_t xmax=0, Double_t e | |||
virtual Double_t GetMinimum(Double_t xmin=0, Double_t xmax=0) const; | psilon = 1.E-10, Int_t maxiter = 100) const; | |||
virtual Double_t GetMaximumX(Double_t xmin=0, Double_t xmax=0) const; | virtual Double_t GetMinimum(Double_t xmin=0, Double_t xmax=0, Double_t e | |||
virtual Double_t GetMinimumX(Double_t xmin=0, Double_t xmax=0) const; | psilon = 1.E-10, Int_t maxiter = 100) const; | |||
virtual Double_t GetMaximumX(Double_t xmin=0, Double_t xmax=0, Double_t | ||||
epsilon = 1.E-10, Int_t maxiter = 100) const; | ||||
virtual Double_t GetMinimumX(Double_t xmin=0, Double_t xmax=0, Double_t | ||||
epsilon = 1.E-10, Int_t maxiter = 100) const; | ||||
virtual Int_t GetNDF() const; | virtual Int_t GetNDF() const; | |||
virtual Int_t GetNpx() const {return fNpx;} | virtual Int_t GetNpx() const {return fNpx;} | |||
TMethodCall *GetMethodCall() const {return fMethodCall;} | TMethodCall *GetMethodCall() const {return fMethodCall;} | |||
virtual Int_t GetNumberFreeParameters() const; | virtual Int_t GetNumberFreeParameters() const; | |||
virtual Int_t GetNumberFitPoints() const {return fNpfits;} | virtual Int_t GetNumberFitPoints() const {return fNpfits;} | |||
virtual char *GetObjectInfo(Int_t px, Int_t py) const; | virtual char *GetObjectInfo(Int_t px, Int_t py) const; | |||
TObject *GetParent() const {return fParent;} | TObject *GetParent() const {return fParent;} | |||
virtual Double_t GetParError(Int_t ipar) const; | virtual Double_t GetParError(Int_t ipar) const; | |||
virtual Double_t *GetParErrors() const {return fParErrors;} | virtual Double_t *GetParErrors() const {return fParErrors;} | |||
virtual void GetParLimits(Int_t ipar, Double_t &parmin, Double_t &pa rmax) const; | virtual void GetParLimits(Int_t ipar, Double_t &parmin, Double_t &pa rmax) const; | |||
virtual Double_t GetProb() const; | virtual Double_t GetProb() const; | |||
virtual Int_t GetQuantiles(Int_t nprobSum, Double_t *q, const Double_ t *probSum); | virtual Int_t GetQuantiles(Int_t nprobSum, Double_t *q, const Double_ t *probSum); | |||
virtual Double_t GetRandom(); | virtual Double_t GetRandom(); | |||
virtual Double_t GetRandom(Double_t xmin, Double_t xmax); | virtual Double_t GetRandom(Double_t xmin, Double_t xmax); | |||
virtual void GetRange(Double_t &xmin, Double_t &xmax) const; | virtual void GetRange(Double_t &xmin, Double_t &xmax) const; | |||
virtual void GetRange(Double_t &xmin, Double_t &ymin, Double_t &xmax , Double_t &ymax) const; | virtual void GetRange(Double_t &xmin, Double_t &ymin, Double_t &xmax , Double_t &ymax) const; | |||
virtual void GetRange(Double_t &xmin, Double_t &ymin, Double_t &zmin , Double_t &xmax, Double_t &ymax, Double_t &zmax) const; | virtual void GetRange(Double_t &xmin, Double_t &ymin, Double_t &zmin , Double_t &xmax, Double_t &ymax, Double_t &zmax) const; | |||
virtual Double_t GetSave(const Double_t *x); | virtual Double_t GetSave(const Double_t *x); | |||
virtual Double_t GetX(Double_t y, Double_t xmin=0, Double_t xmax=0) cons t; | virtual Double_t GetX(Double_t y, Double_t xmin=0, Double_t xmax=0, Doub le_t epsilon = 1.E-10, Int_t maxiter = 100) const; | |||
virtual Double_t GetXmin() const {return fXmin;} | virtual Double_t GetXmin() const {return fXmin;} | |||
virtual Double_t GetXmax() const {return fXmax;} | virtual Double_t GetXmax() const {return fXmax;} | |||
TAxis *GetXaxis() const ; | TAxis *GetXaxis() const ; | |||
TAxis *GetYaxis() const ; | TAxis *GetYaxis() const ; | |||
TAxis *GetZaxis() const ; | TAxis *GetZaxis() const ; | |||
virtual Double_t GradientPar(Int_t ipar, const Double_t *x, Double_t eps =0.01); | virtual Double_t GradientPar(Int_t ipar, const Double_t *x, Double_t eps =0.01); | |||
virtual void GradientPar(const Double_t *x, Double_t *grad, Double_t eps=0.01); | virtual void GradientPar(const Double_t *x, Double_t *grad, Double_t eps=0.01); | |||
virtual void InitArgs(const Double_t *x, const Double_t *params); | virtual void InitArgs(const Double_t *x, const Double_t *params); | |||
static void InitStandardFunctions(); | static void InitStandardFunctions(); | |||
virtual Double_t Integral(Double_t a, Double_t b, const Double_t *params =0, Double_t epsilon=1e-12); | virtual Double_t Integral(Double_t a, Double_t b, const Double_t *params =0, Double_t epsilon=1e-12); | |||
End of changes. 3 change blocks. | ||||
6 lines changed or deleted | 10 lines changed or added | |||
TFileMerger.h | TFileMerger.h | |||
---|---|---|---|---|
// @(#)root/proofplayer:$Id: TFileMerger.h 30052 2009-09-07 12:39:28Z ganis $ | // @(#)root/proofplayer:$Id: TFileMerger.h 32130 2010-01-28 10:45:53Z rdm $ | |||
// Author: Andreas Peters + Fons Rademakers 26/5/2005 | // Author: Andreas Peters + Fons Rademakers 26/5/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 58 | skipping to change at line 58 | |||
protected: | protected: | |||
TStopwatch fWatch; // stop watch to measure file copy spee d | TStopwatch fWatch; // stop watch to measure file copy spee d | |||
TList *fFileList; // a list of files, which shall be merg ed | TList *fFileList; // a list of files, which shall be merg ed | |||
TFile *fOutputFile; // the outputfile for merging | TFile *fOutputFile; // the outputfile for merging | |||
TString fOutputFilename; // the name of the outputfile for mergi ng | TString fOutputFilename; // the name of the outputfile for mergi ng | |||
TString fOutputFilename1; // the name of the temporary outputfile for merging | TString fOutputFilename1; // the name of the temporary outputfile for merging | |||
Bool_t fFastMethod; // True if using Fast merging algorithm (default) | Bool_t fFastMethod; // True if using Fast merging algorithm (default) | |||
Bool_t fNoTrees; // True if Trees should not be merged ( default is kFALSE) | Bool_t fNoTrees; // True if Trees should not be merged ( default is kFALSE) | |||
Bool_t fLocal; // Makes local copies of merging files i | Bool_t fLocal; // Makes local copies of merging fil | |||
f True (default is kFALSE) | es if True (default is kTRUE) | |||
Bool_t fHistoOneGo; // Merger histos in one go | Bool_t fHistoOneGo; // Merger histos in one go (default | |||
TList *fMergeList; // list of the files need to be merged | is kTRUE) | |||
TList *fMergeList; // list of the files need to be m | ||||
erged | ||||
public: | public: | |||
TFileMerger(Bool_t isLocal = kTRUE, Bool_t histoonego = kTRUE); | TFileMerger(Bool_t isLocal = kTRUE, Bool_t histoOneGo = kTRUE); | |||
virtual ~TFileMerger(); | virtual ~TFileMerger(); | |||
const char *GetOutputFileName() const { return fOutputFilename; } | const char *GetOutputFileName() const { return fOutputFilename; } | |||
TList *GetMergeList() const { return fMergeList; } | TList *GetMergeList() const { return fMergeList; } | |||
//--- file management interface | //--- file management interface | |||
virtual Bool_t SetCWD(const char * /*path*/) { MayNotUse("SetCWD"); retu rn kFALSE; } | virtual Bool_t SetCWD(const char * /*path*/) { MayNotUse("SetCWD"); retu rn kFALSE; } | |||
virtual const char *GetCWD() { MayNotUse("GetCWD"); return 0; } | virtual const char *GetCWD() { MayNotUse("GetCWD"); return 0; } | |||
//--- file merging interface | //--- file merging interface | |||
virtual void Reset(); | virtual void Reset(); | |||
virtual Bool_t AddFile(const char *url); | virtual Bool_t AddFile(const char *url, Bool_t cpProgress = kTRUE); | |||
virtual Bool_t OutputFile(const char *url); | virtual Bool_t OutputFile(const char *url); | |||
virtual void PrintFiles(Option_t *options); | virtual void PrintFiles(Option_t *options); | |||
virtual Bool_t Merge(Bool_t = kTRUE); | virtual Bool_t Merge(Bool_t = kTRUE); | |||
virtual Bool_t MergeRecursive(TDirectory *target, TList *sourcelist); | virtual Bool_t MergeRecursive(TDirectory *target, TList *sourcelist); | |||
virtual void SetFastMethod(Bool_t fast=kTRUE) {fFastMethod = fast;} | virtual void SetFastMethod(Bool_t fast=kTRUE) {fFastMethod = fast;} | |||
virtual void SetNotrees(Bool_t notrees=kFALSE) {fNoTrees = notrees;} | virtual void SetNotrees(Bool_t notrees=kFALSE) {fNoTrees = notrees;} | |||
ClassDef(TFileMerger,2) // File copying and merging services | ClassDef(TFileMerger,2) // File copying and merging services | |||
}; | }; | |||
End of changes. 4 change blocks. | ||||
7 lines changed or deleted | 9 lines changed or added | |||
TGDMLParse.h | TGDMLParse.h | |||
---|---|---|---|---|
/* @(#)root/gdml:$Id: TGDMLParse.h 30745 2009-10-15 12:23:45Z brun $ */ | /* @(#)root/gdml:$Id: TGDMLParse.h 32677 2010-03-18 15:27:12Z brun $ */ | |||
// Authors: Ben Lloyd 09/11/06 | // Authors: Ben Lloyd 09/11/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 149 | skipping to change at line 149 | |||
const char* NameShort(const char* name); | const char* NameShort(const char* name); | |||
const char* NameShortB(const char* name); | const char* NameShortB(const char* name); | |||
//'define' section | //'define' section | |||
XMLNodePointer_t ConProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | XMLNodePointer_t ConProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | |||
XMLNodePointer_t PosProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | XMLNodePointer_t PosProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | |||
XMLNodePointer_t RotProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | XMLNodePointer_t RotProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | |||
XMLNodePointer_t SclProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | XMLNodePointer_t SclProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | |||
//'materials' section | //'materials' section | |||
XMLNodePointer_t EleProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM | XMLNodePointer_t IsoProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM | |||
LNodePointer_t parentn); | LNodePointer_t parentn); | |||
XMLNodePointer_t EleProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM | ||||
LNodePointer_t parentn, Bool_t hasIsotopes); | ||||
XMLNodePointer_t MatProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr, int z); | XMLNodePointer_t MatProcess(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr, int z); | |||
//'solids' section | //'solids' section | |||
XMLNodePointer_t BooSolid(TXMLEngine* gdml, XMLNodePointer_t node, XMLA ttrPointer_t attr, int num); | XMLNodePointer_t BooSolid(TXMLEngine* gdml, XMLNodePointer_t node, XMLA ttrPointer_t attr, int num); | |||
XMLNodePointer_t Box(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrPo inter_t attr); | XMLNodePointer_t Box(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrPo inter_t attr); | |||
XMLNodePointer_t Paraboloid(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | XMLNodePointer_t Paraboloid(TXMLEngine* gdml, XMLNodePointer_t node, XM LAttrPointer_t attr); | |||
XMLNodePointer_t Arb8(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | XMLNodePointer_t Arb8(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | |||
XMLNodePointer_t Tube(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | XMLNodePointer_t Tube(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | |||
XMLNodePointer_t CutTube(TXMLEngine* gdml, XMLNodePointer_t node, XMLAt trPointer_t attr); | XMLNodePointer_t CutTube(TXMLEngine* gdml, XMLNodePointer_t node, XMLAt trPointer_t attr); | |||
XMLNodePointer_t Cone(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | XMLNodePointer_t Cone(TXMLEngine* gdml, XMLNodePointer_t node, XMLAttrP ointer_t attr); | |||
skipping to change at line 187 | skipping to change at line 188 | |||
XMLNodePointer_t AssProcess(TXMLEngine* gdml, XMLNodePointer_t node); | XMLNodePointer_t AssProcess(TXMLEngine* gdml, XMLNodePointer_t node); | |||
Int_t SetAxis(const char* axisString); //Set Axis for Divisi on | Int_t SetAxis(const char* axisString); //Set Axis for Divisi on | |||
//'setup' section | //'setup' section | |||
XMLNodePointer_t TopProcess(TXMLEngine* gdml, XMLNodePointer_t node); | XMLNodePointer_t TopProcess(TXMLEngine* gdml, XMLNodePointer_t node); | |||
typedef TGDMMapHelper<TGeoTranslation> PosMap; | typedef TGDMMapHelper<TGeoTranslation> PosMap; | |||
typedef TGDMMapHelper<TGeoRotation> RotMap; | typedef TGDMMapHelper<TGeoRotation> RotMap; | |||
typedef TGDMMapHelper<TGeoScale> SclMap; | typedef TGDMMapHelper<TGeoScale> SclMap; | |||
typedef TGDMMapHelper<TGeoElement> EleMap; | typedef TGDMMapHelper<TGeoElement> EleMap; | |||
typedef TGDMMapHelper<TGeoIsotope> IsoMap; | ||||
typedef TGDMMapHelper<TGeoMaterial> MatMap; | typedef TGDMMapHelper<TGeoMaterial> MatMap; | |||
typedef TGDMMapHelper<TGeoMedium> MedMap; | typedef TGDMMapHelper<TGeoMedium> MedMap; | |||
typedef TGDMMapHelper<TGeoMixture> MixMap; | typedef TGDMMapHelper<TGeoMixture> MixMap; | |||
typedef TGDMMapHelper<TGeoShape> SolMap; | typedef TGDMMapHelper<TGeoShape> SolMap; | |||
typedef TGDMMapHelper<TGeoVolume> VolMap; | typedef TGDMMapHelper<TGeoVolume> VolMap; | |||
typedef TGDMMapHelper<TGDMLRefl> ReflSolidMap; | typedef TGDMMapHelper<TGDMLRefl> ReflSolidMap; | |||
typedef TGDMMapHelper<const char> FileMap; | typedef TGDMMapHelper<const char> FileMap; | |||
typedef std::map<std::string, std::string> ReflectionsMap; | typedef std::map<std::string, std::string> ReflectionsMap; | |||
typedef std::map<std::string, std::string> ReflVolMap; | typedef std::map<std::string, std::string> ReflVolMap; | |||
typedef std::map<std::string, double> FracMap; | typedef std::map<std::string, double> FracMap; | |||
typedef std::vector<TFormula*> FormVec; | typedef std::vector<TFormula*> FormVec; | |||
PosMap fposmap; //!Map containing position names and the TGeoTranslation for it | PosMap fposmap; //!Map containing position names and the TGeoTranslation for it | |||
RotMap frotmap; //!Map containing rotation names and the TGeoRotation for it | RotMap frotmap; //!Map containing rotation names and the TGeoRotation for it | |||
SclMap fsclmap; //!Map containing scale names and the TGe oScale for it | SclMap fsclmap; //!Map containing scale names and the TGe oScale for it | |||
IsoMap fisomap; //!Map containing isotope names and the T GeoIsotope for it | ||||
EleMap felemap; //!Map containing element names and the T GeoElement for it | EleMap felemap; //!Map containing element names and the T GeoElement for it | |||
MatMap fmatmap; //!Map containing material names and the TGeoMaterial for it | MatMap fmatmap; //!Map containing material names and the TGeoMaterial for it | |||
MedMap fmedmap; //!Map containing medium names and the TG eoMedium for it | MedMap fmedmap; //!Map containing medium names and the TG eoMedium for it | |||
MixMap fmixmap; //!Map containing mixture names and the T GeoMixture for it | MixMap fmixmap; //!Map containing mixture names and the T GeoMixture for it | |||
SolMap fsolmap; //!Map containing solid names and the TGe oShape for it | SolMap fsolmap; //!Map containing solid names and the TGe oShape for it | |||
VolMap fvolmap; //!Map containing volume names and the TG eoVolume for it | VolMap fvolmap; //!Map containing volume names and the TG eoVolume for it | |||
ReflectionsMap freflectmap; //!Map containing reflection names and th e Solid name ir references to | ReflectionsMap freflectmap; //!Map containing reflection names and th e Solid name ir references to | |||
ReflSolidMap freflsolidmap; //!Map containing reflection names and th e TGDMLRefl for it - containing refl matrix | ReflSolidMap freflsolidmap; //!Map containing reflection names and th e TGDMLRefl for it - containing refl matrix | |||
ReflVolMap freflvolmap; //!Map containing reflected volume names and the solid ref for it | ReflVolMap freflvolmap; //!Map containing reflected volume names and the solid ref for it | |||
FileMap ffilemap; //!Map containing files parsed during ent ire parsing, with their world volume name | FileMap ffilemap; //!Map containing files parsed during ent ire parsing, with their world volume name | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 7 lines changed or added | |||
TGLAnnotation.h | TGLAnnotation.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLAnnotation.h 30994 2009-11-05 17:20:24Z matevz $ | // @(#)root/gl:$Id: TGLAnnotation.h 32600 2010-03-12 19:36:45Z matevz $ | |||
// Author: Matevz and Alja Tadel 20/02/2009 | // Author: Matevz and Alja Tadel 20/02/2009 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 31 | skipping to change at line 31 | |||
class TGLFont; | class TGLFont; | |||
class TGTextEdit; | class TGTextEdit; | |||
class TGMainFrame; | class TGMainFrame; | |||
class TGLAnnotation : public TGLOverlayElement | class TGLAnnotation : public TGLOverlayElement | |||
{ | { | |||
private: | private: | |||
TGLAnnotation(const TGLAnnotation&); // Not implemented | TGLAnnotation(const TGLAnnotation&); // Not implemented | |||
TGLAnnotation& operator=(const TGLAnnotation&); // Not implemented | TGLAnnotation& operator=(const TGLAnnotation&); // Not implemented | |||
protected: | ||||
enum EDrag { kMove, kResize, kNone }; | ||||
enum ENameStack { kMoveID, kEditID, kDeleteID, kResizeID }; | ||||
void MakeEditor(); | void MakeEditor(); | |||
Char_t GetLineTransparency() const; | ||||
Float_t fPosX; // x position [0, 1] | Float_t fPosX; // x position [0, 1] | |||
Float_t fPosY; // y position [0, 1] | Float_t fPosY; // y position [0, 1] | |||
Float_t fWidth; | ||||
Float_t fHeight; | ||||
Int_t fMouseX, fMouseY; //! last mouse position | Int_t fMouseX, fMouseY; //! last mouse position | |||
Bool_t fInDrag; //! | EDrag fDrag; //! | |||
Float_t fDrawW, fDrawH; //! width/height of drawn annotation | Float_t fDrawW, fDrawH; //! width and height when drawing | |||
Float_t fDrawY; //! y-position of annotation box | Float_t fTextSizeDrag; //! text-size at start of drag | |||
TGLVector3 fPointer; // picked location in 3D space | TGLVector3 fPointer; // picked location in 3D space | |||
Bool_t fActive; // active item identifier | Bool_t fActive; // active item identifier | |||
TGMainFrame *fMainFrame; // editors | TGMainFrame *fMainFrame; // editors | |||
TGTextEdit *fTextEdit; // editors | TGTextEdit *fTextEdit; // editors | |||
static Color_t fgBackColor; | static Color_t fgBackColor; | |||
static Color_t fgTextColor; | static Color_t fgTextColor; | |||
protected: | ||||
TGLViewer *fParent; | TGLViewer *fParent; | |||
TString fText; // annotation text | TString fText; // annotation text | |||
Float_t fTextSize; // relative font size | Float_t fTextSize; // relative font size | |||
TGLFont fFont; // font used to render labels | TGLFont fFont; // font used to render labels | |||
TGLFont fMenuFont; // font used to render menu buttons | TGLFont fMenuFont; // font used to render menu buttons | |||
TGLFont::ETextAlignH_e fTextAlign; | TGLFont::ETextAlignH_e fTextAlign; | |||
Color_t fBackColor; // background color | Color_t fBackColor; // background color | |||
Color_t fTextColor; // text color | Color_t fTextColor; // text color | |||
Char_t fTransparency; // transparency of background | Char_t fTransparency; // transparency of background | |||
Bool_t fDrawRefLine; // draw 3D refrence line | Bool_t fDrawRefLine; // draw 3D refrence line | |||
Bool_t fUseColorSet; // use color set from rnrCtx | Bool_t fUseColorSet; // use color set from rnrCtx | |||
Bool_t fAllowClose; // allow closing via 'X' button | ||||
public: | public: | |||
TGLAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Flo at_t posy); | TGLAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Flo at_t posy); | |||
TGLAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Flo at_t posy, TGLVector3 ref); | TGLAnnotation(TGLViewerBase *parent, const char *text, Float_t posx, Flo at_t posy, TGLVector3 ref); | |||
virtual ~TGLAnnotation(); | virtual ~TGLAnnotation(); | |||
void SetTransparency(Char_t x) { fTransparency = x;} | void SetTransparency(Char_t x) { fTransparency = x; } | |||
Char_t GetTransparency() const { return fTransparency;} | Char_t GetTransparency() const { return fTransparency; } | |||
void SetUseColorSet(Bool_t x) { fUseColorSet = x; } | void SetUseColorSet(Bool_t x) { fUseColorSet = x; } | |||
Bool_t GetUseColorSet() const { return fUseColorSet;} | Bool_t GetUseColorSet() const { return fUseColorSet; } | |||
void SetBackColor(Color_t x) { fBackColor = x;} | void SetBackColor(Color_t x) { fBackColor = x; } | |||
Color_t GetBackColor() const { return fBackColor;} | Color_t GetBackColor() const { return fBackColor; } | |||
void SetTextColor(Color_t x) { fTextColor = x; } | void SetTextColor(Color_t x) { fTextColor = x; } | |||
Color_t GetTextColor() const { return fTextColor;} | Color_t GetTextColor() const { return fTextColor; } | |||
void SetTextSize(Float_t x) { fTextSize = x; } | void SetTextSize(Float_t x) { fTextSize = x; } | |||
Float_t GetTextSize() const { return fTextSize;} | Float_t GetTextSize() const { return fTextSize; } | |||
void SetAllowClose(Bool_t x) { fAllowClose = x; } | ||||
Bool_t GetAllowClose() const { return fAllowClose;} | ||||
TGLFont::ETextAlignH_e GetTextAlign() const { return fTextAlign; } | TGLFont::ETextAlignH_e GetTextAlign() const { return fTextAlign; } | |||
void SetTextAlign(TGLFont::ETextAlignH_e a) { fTextAlign = a; } | void SetTextAlign(TGLFont::ETextAlignH_e a) { fTextAlign = a; } | |||
virtual Bool_t MouseEnter(TGLOvlSelectRecord& selRec); | virtual Bool_t MouseEnter(TGLOvlSelectRecord& selRec); | |||
virtual Bool_t Handle(TGLRnrCtx& rnrCtx, TGLOvlSelectRecord& selRec, | virtual Bool_t Handle(TGLRnrCtx& rnrCtx, TGLOvlSelectRecord& selRec, | |||
Event_t* event); | Event_t* event); | |||
virtual void MouseLeave(); | virtual void MouseLeave(); | |||
void CloseEditor(); | void CloseEditor(); | |||
End of changes. 9 change blocks. | ||||
14 lines changed or deleted | 23 lines changed or added | |||
TGLAxisPainter.h | TGLAxisPainter.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TGLAxisPainter.h 31671 2009-12-08 15:22:31Z matevz $ | // @(#)root/eve:$Id: TGLAxisPainter.h 32807 2010-03-29 11:40:58Z matevz $ | |||
// Author: Alja Mrak-Tadel 2009 | // Author: Alja Mrak-Tadel 2009 | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLAxisPainter | #ifndef ROOT_TGLAxisPainter | |||
#define ROOT_TGLAxisPainter | #define ROOT_TGLAxisPainter | |||
#include "TGLUtil.h" | #include "TGLUtil.h" | |||
#include "TGLFontManager.h" | #include "TGLFontManager.h" | |||
class TAttAxis; | class TAttAxis; | |||
class TAxis; | class TAxis; | |||
class TH1; | class TH1; | |||
class TPMERegexp; | ||||
class TGLRnrCtx; | class TGLRnrCtx; | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// TGLAxisPainter | // TGLAxisPainter | |||
//========================================================================= ===== | //========================================================================= ===== | |||
class TGLAxisPainter | class TGLAxisPainter | |||
{ | { | |||
public: | public: | |||
typedef std::pair <Float_t, Float_t> Lab_t; // label <pos, value> pa ir | typedef std::pair <Float_t, Float_t> Lab_t; // label <pos, value> pa ir | |||
skipping to change at line 77 | skipping to change at line 78 | |||
// Font. | // Font. | |||
Int_t fLabelPixelFontSize; | Int_t fLabelPixelFontSize; | |||
Double_t fLabel3DFontSize; | Double_t fLabel3DFontSize; | |||
Int_t fTitlePixelFontSize; | Int_t fTitlePixelFontSize; | |||
Double_t fTitle3DFontSize; | Double_t fTitle3DFontSize; | |||
// Labels options. Allready exist in TAttAxis, but can't be set. | // Labels options. Allready exist in TAttAxis, but can't be set. | |||
TGLFont::ETextAlignH_e fLabelAlignH; | TGLFont::ETextAlignH_e fLabelAlignH; | |||
TGLFont::ETextAlignV_e fLabelAlignV; | TGLFont::ETextAlignV_e fLabelAlignV; | |||
TGLVector3 fTitlePos; | TGLVector3 fTitlePos; | |||
TPMERegexp *fAllZeroesRE; | ||||
public: | public: | |||
TGLAxisPainter(); | TGLAxisPainter(); | |||
virtual ~TGLAxisPainter(); | virtual ~TGLAxisPainter(); | |||
// GetSets. | // GetSets. | |||
Int_t GetTMNDim() const { return fTMNDim; } | Int_t GetTMNDim() const { return fTMNDim; } | |||
void SetTMNDim(Int_t x) { fTMNDim = x; } | void SetTMNDim(Int_t x) { fTMNDim = x; } | |||
TGLVector3& RefDir() { return fDir; } | TGLVector3& RefDir() { return fDir; } | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TGLCameraOverlay.h | TGLCameraOverlay.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TGLCameraOverlay.h 29575 2009-07-24 12:52:18Z matevz $ | // @(#)root/eve:$Id: TGLCameraOverlay.h 32811 2010-03-29 13:14:49Z matevz $ | |||
// Author: Alja Mrak-Tadel 2007 | // Author: Alja Mrak-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 34 | skipping to change at line 34 | |||
class TGLCameraOverlay : public TGLOverlayElement | class TGLCameraOverlay : public TGLOverlayElement | |||
{ | { | |||
public: | public: | |||
enum EMode { kPlaneIntersect, kBar, kAxis, kGridFront, kGridBack }; | enum EMode { kPlaneIntersect, kBar, kAxis, kGridFront, kGridBack }; | |||
private: | private: | |||
TGLCameraOverlay(const TGLCameraOverlay&); // Not implemented | TGLCameraOverlay(const TGLCameraOverlay&); // Not implemented | |||
TGLCameraOverlay& operator=(const TGLCameraOverlay&); // Not implemented | TGLCameraOverlay& operator=(const TGLCameraOverlay&); // Not implemented | |||
Double_t fFrustum[4]; | ||||
protected: | protected: | |||
Bool_t fShowOrthographic; | Bool_t fShowOrthographic; | |||
Bool_t fShowPerspective; | Bool_t fShowPerspective; | |||
EMode fOrthographicMode; | EMode fOrthographicMode; | |||
EMode fPerspectiveMode; | EMode fPerspectiveMode; | |||
TGLAxisPainter *fAxisPainter; | TGLAxisPainter *fAxisPainter; | |||
TAxis *fAxis; | TAxis *fAxis; | |||
Float_t fAxisExtend; | Float_t fAxisExtend; | |||
Bool_t fUseAxisColors; | Bool_t fUseAxisColors; | |||
TGLPlane fExternalRefPlane; | TGLPlane fExternalRefPlane; | |||
Bool_t fUseExternalRefPlane; | Bool_t fUseExternalRefPlane; | |||
Double_t fFrustum[4]; | ||||
void RenderPlaneIntersect(TGLRnrCtx& rnrCtx); | void RenderPlaneIntersect(TGLRnrCtx& rnrCtx); | |||
void RenderAxis(TGLRnrCtx& rnrCtx, Bool_t drawGrid); | void RenderAxis(TGLRnrCtx& rnrCtx, Bool_t drawGrid); | |||
void RenderGrid(TGLRnrCtx& rnrCtx); | void RenderGrid(TGLRnrCtx& rnrCtx); | |||
void RenderBar(TGLRnrCtx& rnrCtx); | void RenderBar(TGLRnrCtx& rnrCtx); | |||
public: | public: | |||
TGLCameraOverlay(Bool_t showOrtho=kTRUE, Bool_t showPersp=kFALSE); | TGLCameraOverlay(Bool_t showOrtho=kTRUE, Bool_t showPersp=kFALSE); | |||
virtual ~TGLCameraOverlay(); | virtual ~TGLCameraOverlay(); | |||
virtual void Render(TGLRnrCtx& rnrCtx); | virtual void Render(TGLRnrCtx& rnrCtx); | |||
skipping to change at line 76 | skipping to change at line 76 | |||
Int_t GetPerspectiveMode() const { return fPerspectiveMode;} | Int_t GetPerspectiveMode() const { return fPerspectiveMode;} | |||
void SetPerspectiveMode(EMode m) {fPerspectiveMode = m;} | void SetPerspectiveMode(EMode m) {fPerspectiveMode = m;} | |||
Int_t GetOrthographicMode() const { return fOrthographicMode;} | Int_t GetOrthographicMode() const { return fOrthographicMode;} | |||
void SetOrthographicMode(EMode m) {fOrthographicMode = m;} | void SetOrthographicMode(EMode m) {fOrthographicMode = m;} | |||
Bool_t GetShowOrthographic() const { return fShowOrthographic; } | Bool_t GetShowOrthographic() const { return fShowOrthographic; } | |||
void SetShowOrthographic(Bool_t x) {fShowOrthographic =x;} | void SetShowOrthographic(Bool_t x) {fShowOrthographic =x;} | |||
Bool_t GetShowPerspective() const { return fShowPerspective; } | Bool_t GetShowPerspective() const { return fShowPerspective; } | |||
void SetShowPerspective(Bool_t x) {fShowPerspective =x;} | void SetShowPerspective(Bool_t x) {fShowPerspective =x;} | |||
void SetFrustum(TGLCamera& cam); | ||||
TAttAxis* GetAttAxis(); | TAttAxis* GetAttAxis(); | |||
ClassDef(TGLCameraOverlay, 1); // Show coorinates of current camera frus tum. | ClassDef(TGLCameraOverlay, 1); // Show coorinates of current camera frus tum. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 5 lines changed or added | |||
TGLClip.h | TGLClip.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLClip.h 31541 2009-12-03 20:00:32Z matevz $ | // @(#)root/gl:$Id: TGLClip.h 32465 2010-03-04 20:29:52Z matevz $ | |||
// Author: Richard Maunder 16/09/2005 | // Author: Richard Maunder 16/09/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 133 | skipping to change at line 133 | |||
// | // | |||
// TGLClipSet | // TGLClipSet | |||
// | // | |||
// A collection of all available clipping objects, to be used by higher | // A collection of all available clipping objects, to be used by higher | |||
// level objects. For the time being by TGLViewer/Scene. | // level objects. For the time being by TGLViewer/Scene. | |||
// | // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
class TGLClipSet : public TGLOverlayElement | class TGLClipSet : public TGLOverlayElement | |||
{ | { | |||
private: | ||||
TGLClipSet(const TGLClipSet&); // Not implemented | ||||
TGLClipSet& operator=(const TGLClipSet&); // Not implemented | ||||
protected: | protected: | |||
TGLClipPlane *fClipPlane; | TGLClipPlane *fClipPlane; | |||
TGLClipBox *fClipBox; | TGLClipBox *fClipBox; | |||
TGLClip *fCurrentClip; //! the current clipping shape | TGLClip *fCurrentClip; //! the current clipping shape | |||
Bool_t fAutoUpdate; | ||||
Bool_t fShowClip; | Bool_t fShowClip; | |||
Bool_t fShowManip; | Bool_t fShowManip; | |||
TGLManipSet *fManip; | TGLManipSet *fManip; | |||
TGLBoundingBox fLastBBox; | TGLBoundingBox fLastBBox; | |||
public: | public: | |||
TGLClipSet(); | TGLClipSet(); | |||
virtual ~TGLClipSet(); | virtual ~TGLClipSet(); | |||
skipping to change at line 174 | skipping to change at line 179 | |||
void InvalidateClips(); | void InvalidateClips(); | |||
void InvalidateCurrentClip(); | void InvalidateCurrentClip(); | |||
void GetClipState(EClipType type, Double_t data[6]) const; | void GetClipState(EClipType type, Double_t data[6]) const; | |||
void SetClipState(EClipType type, const Double_t data[6]); | void SetClipState(EClipType type, const Double_t data[6]); | |||
EClipType GetClipType() const; | EClipType GetClipType() const; | |||
void SetClipType(EClipType type); | void SetClipType(EClipType type); | |||
// Editor only supports combined flag so far. | // Clip control flags | |||
Bool_t GetAutoUpdate() const { return fAutoUpdate; } | ||||
void SetAutoUpdate(Bool_t aup) { fAutoUpdate = aup; } | ||||
Bool_t GetShowManip() const { return fShowManip; } | Bool_t GetShowManip() const { return fShowManip; } | |||
void SetShowManip(Bool_t show) { fShowManip = show; } | void SetShowManip(Bool_t show) { fShowManip = show; } | |||
Bool_t GetShowClip() const { return fShowClip; } | Bool_t GetShowClip() const { return fShowClip; } | |||
void SetShowClip(Bool_t show) { fShowClip = show; } | void SetShowClip(Bool_t show) { fShowClip = show; } | |||
ClassDef(TGLClipSet, 0); // A collection of supported clip-objects | ClassDef(TGLClipSet, 0); // A collection of supported clip-objects | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 9 lines changed or added | |||
TGLClipSetEditor.h | TGLClipSetEditor.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLClipSetEditor.h 26367 2008-11-21 18:08:30Z matevz $ | // @(#)root/gl:$Id: TGLClipSetEditor.h 32338 2010-02-12 17:11:34Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLClipSetEditor | #ifndef ROOT_TGLClipSetEditor | |||
#define ROOT_TGLClipSetEditor | #define ROOT_TGLClipSetEditor | |||
skipping to change at line 44 | skipping to change at line 44 | |||
EClipType fCurrentClip; | EClipType fCurrentClip; | |||
TGButtonGroup *fTypeButtons; | TGButtonGroup *fTypeButtons; | |||
TGCompositeFrame *fPlanePropFrame; | TGCompositeFrame *fPlanePropFrame; | |||
TGNumberEntry *fPlaneProp[4]; | TGNumberEntry *fPlaneProp[4]; | |||
TGCompositeFrame *fBoxPropFrame; | TGCompositeFrame *fBoxPropFrame; | |||
TGNumberEntry *fBoxProp[6]; | TGNumberEntry *fBoxProp[6]; | |||
TGCheckButton *fClipInside; | TGCheckButton *fClipInside; | |||
TGCheckButton *fAutoUpdate; | ||||
TGCheckButton *fClipEdit; | TGCheckButton *fClipEdit; | |||
TGCheckButton *fClipShow; | TGCheckButton *fClipShow; | |||
TGButton *fApplyButton; | TGButton *fApplyButton; | |||
TGButton *fResetButton; | TGButton *fResetButton; | |||
public: | public: | |||
TGLClipSetSubEditor(const TGWindow* p); | TGLClipSetSubEditor(const TGWindow* p); | |||
virtual ~TGLClipSetSubEditor() {} | virtual ~TGLClipSetSubEditor() {} | |||
void SetModel(TGLClipSet* m); | void SetModel(TGLClipSet* m); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TGLEventHandler.h | TGLEventHandler.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLEventHandler.h 31301 2009-11-18 22:45:34Z matevz $ | // @(#)root/gl:$Id: TGLEventHandler.h 33147 2010-04-22 16:47:08Z matevz $ | |||
// Author: Bertrand Bellenot 29/01/2008 | // Author: Bertrand Bellenot 29/01/2008 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 59 | skipping to change at line 59 | |||
Bool_t fMouseTimerRunning; | Bool_t fMouseTimerRunning; | |||
Bool_t fTooltipShown; | Bool_t fTooltipShown; | |||
Int_t fTooltipPixelTolerance; | Int_t fTooltipPixelTolerance; | |||
Int_t fSecSelType; // secondary selection type | Int_t fSecSelType; // secondary selection type | |||
virtual Bool_t Rotate(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mo d2); | virtual Bool_t Rotate(Int_t xDelta, Int_t yDelta, Bool_t mod1, Bool_t mo d2); | |||
virtual void GrabMouse(); | virtual void GrabMouse(); | |||
virtual void UnGrabMouse(); | virtual void UnGrabMouse(); | |||
virtual void SelectForClicked(Event_t *event); | ||||
virtual void SelectForMouseOver(); | ||||
public: | public: | |||
TGLEventHandler(TGWindow *w, TObject *obj); | TGLEventHandler(TGWindow *w, TObject *obj); | |||
virtual ~TGLEventHandler(); | virtual ~TGLEventHandler(); | |||
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | |||
virtual Bool_t HandleEvent(Event_t *event); | virtual Bool_t HandleEvent(Event_t *event); | |||
virtual Bool_t HandleExpose(Event_t * event); | virtual Bool_t HandleExpose(Event_t * event); | |||
virtual Bool_t HandleFocusChange(Event_t *event); | virtual Bool_t HandleFocusChange(Event_t *event); | |||
virtual Bool_t HandleCrossing(Event_t *event); | virtual Bool_t HandleCrossing(Event_t *event); | |||
virtual Bool_t HandleButton(Event_t * event); | virtual Bool_t HandleButton(Event_t * event); | |||
virtual Bool_t HandleDoubleClick(Event_t *event); | virtual Bool_t HandleDoubleClick(Event_t *event); | |||
virtual Bool_t HandleConfigureNotify(Event_t *event); | virtual Bool_t HandleConfigureNotify(Event_t *event); | |||
virtual Bool_t HandleKey(Event_t *event); | virtual Bool_t HandleKey(Event_t *event); | |||
virtual Bool_t HandleMotion(Event_t * event); | virtual Bool_t HandleMotion(Event_t * event); | |||
virtual Bool_t HandleTimer(TTimer *t); | virtual Bool_t HandleTimer(TTimer *t); | |||
virtual void StartMouseTimer(); | virtual void StartMouseTimer(); | |||
virtual void StopMouseTimer(); | virtual void StopMouseTimer(); | |||
virtual void ClearMouseOver(); | virtual void ClearMouseOver(); | |||
virtual void Repaint(); | virtual void Repaint(); | |||
virtual void PopupContextMenu(TGLPhysicalShape* pshp, Event_t *event, | ||||
Int_t gx, Int_t gy); | ||||
virtual void TriggerTooltip(const char* text); | virtual void TriggerTooltip(const char* text); | |||
virtual void RemoveTooltip(); | virtual void RemoveTooltip(); | |||
void SetMouseOverSelectDelay(Int_t ms); | void SetMouseOverSelectDelay(Int_t ms); | |||
void SetMouseOverTooltipDelay(Int_t ms); | void SetMouseOverTooltipDelay(Int_t ms); | |||
Int_t GetTooltipPixelTolerance() const { return fTooltipPixelTolerance; } | Int_t GetTooltipPixelTolerance() const { return fTooltipPixelTolerance; } | |||
void SetTooltipPixelTolerance(Int_t t) { fTooltipPixelTolerance = t; } | void SetTooltipPixelTolerance(Int_t t) { fTooltipPixelTolerance = t; } | |||
Int_t GetSecSelType() const { return fSecSelType; } | Int_t GetSecSelType() const { return fSecSelType; } | |||
void SetSecSelType(Int_t t) { fSecSelType = t; } | void SetSecSelType(Int_t t) { fSecSelType = t; } | |||
ClassDef(TGLEventHandler, 0); // Base-class and default implementation o f event-handler for TGLViewer. | ClassDef(TGLEventHandler, 0); // Base-class and default implementation o f event-handler for TGLViewer. | |||
}; | }; | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 9 lines changed or added | |||
TGLLockable.h | TGLLockable.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLLockable.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/gl:$Id: TGLLockable.h 32465 2010-03-04 20:29:52Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLLockable_H | #ifndef ROOT_TGLLockable_H | |||
#define ROOT_TGLLockable_H | #define ROOT_TGLLockable_H | |||
skipping to change at line 32 | skipping to change at line 32 | |||
}; | }; | |||
private: | private: | |||
TGLLockable(const TGLLockable&); // Not implemented | TGLLockable(const TGLLockable&); // Not implemented | |||
TGLLockable& operator=(const TGLLockable&); // Not implemented | TGLLockable& operator=(const TGLLockable&); // Not implemented | |||
protected: | protected: | |||
// Locking - can take/release via const handle | // Locking - can take/release via const handle | |||
mutable ELock fLock; // Lock state. | mutable ELock fLock; // Lock state. | |||
// Ensures unlocking in view of exceptions. | ||||
class TUnlocker | ||||
{ | ||||
private: | ||||
TUnlocker(const TUnlocker&); // Not implemented | ||||
TUnlocker& operator=(const TUnlocker&); // Not implemented | ||||
const TGLLockable *fLockable; | ||||
public: | ||||
TUnlocker(const TGLLockable* l) : fLockable(l) {} | ||||
~TUnlocker() | ||||
{ | ||||
if (fLockable->IsLocked()) | ||||
fLockable->ReleaseLock(fLockable->CurrentLock()); | ||||
} | ||||
}; | ||||
public: | public: | |||
TGLLockable(); | TGLLockable(); | |||
virtual ~TGLLockable() {} | virtual ~TGLLockable() {} | |||
virtual const char* LockIdStr() const { return "<unknown>"; } | virtual const char* LockIdStr() const { return "<unknown>"; } | |||
Bool_t TakeLock(ELock lock) const; | Bool_t TakeLock(ELock lock) const; | |||
Bool_t ReleaseLock(ELock lock) const; | Bool_t ReleaseLock(ELock lock) const; | |||
Bool_t IsLocked() const { return (fLock != kUnlocked); } | Bool_t IsLocked() const { return (fLock != kUnlocked); } | |||
ELock CurrentLock() const { return fLock; } | ELock CurrentLock() const { return fLock; } | |||
Bool_t IsDrawOrSelectLock() const { return fLock == kDrawLock || fLock = = kSelectLock; } | Bool_t IsDrawOrSelectLock() const { return fLock == kDrawLock || fLock = = kSelectLock; } | |||
static const char * LockName(ELock lock); | static const char * LockName(ELock lock); | |||
static Bool_t LockValid(ELock lock); | static Bool_t LockValid(ELock lock); | |||
ClassDef(TGLLockable, 0) // Lock for viewers and scenes. | ClassDef(TGLLockable, 0); // Lock for viewers and scenes. | |||
}; // endclass TGLLockable | }; // endclass TGLLockable | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 20 lines changed or added | |||
TGLLogicalShape.h | TGLLogicalShape.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLLogicalShape.h 30811 2009-10-19 13:22:46Z matevz $ | // @(#)root/gl:$Id: TGLLogicalShape.h 33124 2010-04-21 20:04:42Z matevz $ | |||
// 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 99 | skipping to change at line 99 | |||
virtual UInt_t DLOffset(Short_t /*lod*/) const { return 0; } | virtual UInt_t DLOffset(Short_t /*lod*/) const { return 0; } | |||
virtual void DLCacheClear(); | virtual void DLCacheClear(); | |||
virtual void DLCacheDrop(); | virtual void DLCacheDrop(); | |||
virtual void DLCachePurge(); | virtual void DLCachePurge(); | |||
virtual ELODAxes SupportedLODAxes() const { return kLODAxesNone; } | virtual ELODAxes SupportedLODAxes() const { return kLODAxesNone; } | |||
virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) co nst; | virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) co nst; | |||
virtual void Draw(TGLRnrCtx& rnrCtx) const; | virtual void Draw(TGLRnrCtx& rnrCtx) const; | |||
virtual void DirectDraw(TGLRnrCtx& rnrCtx) const = 0; // Actual draw method (non DL cached) | virtual void DirectDraw(TGLRnrCtx& rnrCtx) const = 0; // Actual draw method (non DL cached) | |||
virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape * pshp) const; | virtual void DrawHighlight(TGLRnrCtx& rnrCtx, const TGLPhysicalShape * pshp, Int_t lvl=-1) const; | |||
virtual Bool_t IgnoreSizeForOfInterest() const { return kFALSE; } | virtual Bool_t IgnoreSizeForOfInterest() const { return kFALSE; } | |||
// Override in sub-classes that do direct object rendering (e.g. TGLObje ct). | // Override in sub-classes that do direct object rendering (e.g. TGLObje ct). | |||
virtual Bool_t KeepDuringSmartRefresh() const { return kFALSE; } | virtual Bool_t KeepDuringSmartRefresh() const { return kFALSE; } | |||
// Override in sub-classes that support secondary selection (e.g. TPoint Set3DGL). | // Override in sub-classes that support secondary selection (e.g. TPoint Set3DGL). | |||
virtual Bool_t SupportsSecondarySelect() const { return kFALSE; } | virtual Bool_t SupportsSecondarySelect() const { return kFALSE; } | |||
virtual Bool_t AlwaysSecondarySelect() const { return kFALSE; } | virtual Bool_t AlwaysSecondarySelect() const { return kFALSE; } | |||
virtual void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec) ; | virtual void ProcessSelection(TGLRnrCtx& rnrCtx, TGLSelectRecord& rec) ; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGLMarchingCubes.h | TGLMarchingCubes.h | |||
---|---|---|---|---|
skipping to change at line 31 | skipping to change at line 31 | |||
http://local.wasp.uwa.edu.au/~pbourke/geometry/polygonise/ | http://local.wasp.uwa.edu.au/~pbourke/geometry/polygonise/ | |||
*/ | */ | |||
class TF3; | class TF3; | |||
class TKDEFGT; | class TKDEFGT; | |||
namespace Rgl { | namespace Rgl { | |||
namespace Mc { | namespace Mc { | |||
/* | /* | |||
Some routines, values and tables for marching cube method. | ||||
*/ | ||||
extern const UInt_t eInt[256]; | ||||
extern const Float_t vOff[8][3]; | ||||
extern const UChar_t eConn[12][2]; | ||||
extern const Float_t eDir[12][3]; | ||||
extern const Int_t conTbl[256][16]; | ||||
/* | ||||
"T" prefix in class names is only for code-style checker. | "T" prefix in class names is only for code-style checker. | |||
*/ | */ | |||
/* | /* | |||
TCell is a cube from marching cubes algorithm. | TCell is a cube from marching cubes algorithm. | |||
It has "type" - defines, which vertices | It has "type" - defines, which vertices | |||
are under iso level, which are above. | are under iso level, which are above. | |||
Vertices numeration: | Vertices numeration: | |||
skipping to change at line 308 | skipping to change at line 317 | |||
Default splitter is used by TH3 and KDE. | Default splitter is used by TH3 and KDE. | |||
*/ | */ | |||
template<class H, class E, class V> | template<class H, class E, class V> | |||
class TDefaultSplitter : protected virtual TGridGeometry<V> { | class TDefaultSplitter : protected virtual TGridGeometry<V> { | |||
protected: | protected: | |||
void SetNormalEvaluator(const H * /*source*/) | void SetNormalEvaluator(const H * /*source*/) | |||
{ | { | |||
} | } | |||
void SplitEdge(TCell<E> & cell, TIsoMesh<V> * mesh, UInt_t i, | void SplitEdge(TCell<E> & cell, TIsoMesh<V> * mesh, UInt_t i, | |||
V x, V y, V z, V iso)const; | V x, V y, V z, V iso)const | |||
{ | ||||
V v[3]; | ||||
const V offset = GetOffset(cell.fVals[eConn[i][0]], | ||||
cell.fVals[eConn[i][1]], | ||||
iso); | ||||
v[0] = x + (vOff[eConn[i][0]][0] + offset * eDir[i][0]) * this->fStepX; | ||||
v[1] = y + (vOff[eConn[i][0]][1] + offset * eDir[i][1]) * this->fStepY; | ||||
v[2] = z + (vOff[eConn[i][0]][2] + offset * eDir[i][2]) * this->fStepZ; | ||||
cell.fIds[i] = mesh->AddVertex(v); | ||||
} | ||||
}; | }; | |||
/* | /* | |||
TF3's edge splitter. Calculates new vertex and surface normal | TF3's edge splitter. Calculates new vertex and surface normal | |||
in this vertex using TF3. | in this vertex using TF3. | |||
*/ | */ | |||
class TF3EdgeSplitter : protected virtual TGridGeometry<Double_t> { | class TF3EdgeSplitter : protected virtual TGridGeometry<Double_t> { | |||
protected: | protected: | |||
TF3EdgeSplitter() : fTF3(0) | TF3EdgeSplitter() : fTF3(0) | |||
skipping to change at line 404 | skipping to change at line 424 | |||
private: | private: | |||
//Two base classes. | //Two base classes. | |||
typedef typename TSourceAdapterSelector<DataSource>::Type_t DataSo urceBase_t; | typedef typename TSourceAdapterSelector<DataSource>::Type_t DataSo urceBase_t; | |||
typedef typename TSplitterSelector<DataSource, ValueType>::Type_t Splitt erBase_t; | typedef typename TSplitterSelector<DataSource, ValueType>::Type_t Splitt erBase_t; | |||
//Using declarations required, since these are | //Using declarations required, since these are | |||
//type-dependant names in template. | //type-dependant names in template. | |||
using DataSourceBase_t::GetW; | using DataSourceBase_t::GetW; | |||
using DataSourceBase_t::GetH; | using DataSourceBase_t::GetH; | |||
using DataSourceBase_t::GetD; | using DataSourceBase_t::GetD; | |||
using DataSourceBase_t::GetData; | using DataSourceBase_t::GetData; | |||
using SplitterBase_t::SplitEdge; | ||||
typedef typename DataSourceBase_t::ElementType_t ElementType_t; | typedef typename DataSourceBase_t::ElementType_t ElementType_t; | |||
typedef TCell<ElementType_t> CellType_t; | typedef TCell<ElementType_t> CellType_t; | |||
typedef TSlice<ElementType_t> SliceType_t; | typedef TSlice<ElementType_t> SliceType_t; | |||
typedef TIsoMesh<ValueType> MeshType_t; | typedef TIsoMesh<ValueType> MeshType_t; | |||
public: | public: | |||
TMeshBuilder(Bool_t averagedNormals, ValueType eps = 1e-7) | TMeshBuilder(Bool_t averagedNormals, ValueType eps = 1e-7) | |||
: fAvgNormals(averagedNormals), fMesh(0), fIso(), fEpsilon(eps) | : fAvgNormals(averagedNormals), fMesh(0), fIso(), fEpsilon(eps) | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 22 lines changed or added | |||
TGLObject.h | TGLObject.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLObject.h 29526 2009-07-20 17:41:53Z matevz $ | // @(#)root/gl:$Id: TGLObject.h 33124 2010-04-21 20:04:42Z matevz $ | |||
// Author: Matevz Tadel 7/4/2006 | // Author: Matevz Tadel 7/4/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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 40 | skipping to change at line 40 | |||
void SetAxisAlignedBBox(Float_t xmin, Float_t xmax, | void SetAxisAlignedBBox(Float_t xmin, Float_t xmax, | |||
Float_t ymin, Float_t ymax, | Float_t ymin, Float_t ymax, | |||
Float_t zmin, Float_t zmax); | Float_t zmin, Float_t zmax); | |||
void SetAxisAlignedBBox(const Float_t* p); | void SetAxisAlignedBBox(const Float_t* p); | |||
public: | public: | |||
TGLObject() : TGLLogicalShape(0), fMultiColor(kFALSE) {} | TGLObject() : TGLLogicalShape(0), fMultiColor(kFALSE) {} | |||
virtual ~TGLObject() {} | virtual ~TGLObject() {} | |||
virtual Bool_t ShouldDLCache(const TGLRnrCtx & rnrCtx) const; | virtual Bool_t ShouldDLCache(const TGLRnrCtx& rnrCtx) const; | |||
// Kept from TGLLogicalShape | // Kept from TGLLogicalShape | |||
// virtual ELODAxes SupportedLODAxes() const { return kLODAxesNone; } | // virtual ELODAxes SupportedLODAxes() const { return kLODAxesNone; } | |||
// Changed from TGLLogicalShape | // Changed from TGLLogicalShape | |||
virtual Bool_t KeepDuringSmartRefresh() const { return kTRUE; } | virtual Bool_t KeepDuringSmartRefresh() const { return kTRUE; } | |||
virtual void UpdateBoundingBox(); | virtual void UpdateBoundingBox(); | |||
// TGLObject virtuals | // TGLObject virtuals | |||
virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0) = 0; | virtual Bool_t SetModel(TObject* obj, const Option_t* opt=0) = 0; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGLPadPainter.h | TGLPadPainter.h | |||
---|---|---|---|---|
skipping to change at line 108 | skipping to change at line 108 | |||
void DrawPolyLine(Int_t n, const Float_t *x, const Float_t *y); | void DrawPolyLine(Int_t n, const Float_t *x, const Float_t *y); | |||
void DrawPolyLineNDC(Int_t n, const Double_t *u, const Double_t *v); | void DrawPolyLineNDC(Int_t n, const Double_t *u, const Double_t *v); | |||
//TPad needs both versions. | //TPad needs both versions. | |||
void DrawPolyMarker(Int_t n, const Double_t *x, const Double_t *y); | void DrawPolyMarker(Int_t n, const Double_t *x, const Double_t *y); | |||
void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y); | void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y); | |||
void DrawText(Double_t x, Double_t y, const char *text, ETextMode mo de); | void DrawText(Double_t x, Double_t y, const char *text, ETextMode mo de); | |||
void DrawTextNDC(Double_t x, Double_t y, const char *text, ETextMode mode); | void DrawTextNDC(Double_t x, Double_t y, const char *text, ETextMode mode); | |||
//jpg, png, gif and bmp output. | ||||
void SaveImage(TVirtualPad *pad, const char *fileName, Int_t type) c | ||||
onst; | ||||
private: | private: | |||
//Attention! GL_PROJECTION will become | //Attention! GL_PROJECTION will become | |||
//the current matrix after these calls. | //the current matrix after these calls. | |||
void SaveProjectionMatrix()const; | void SaveProjectionMatrix()const; | |||
void RestoreProjectionMatrix()const; | void RestoreProjectionMatrix()const; | |||
//Attention! GL_MODELVIEW will become the | //Attention! GL_MODELVIEW will become the | |||
//current matrix after these calls. | //current matrix after these calls. | |||
void SaveModelviewMatrix()const; | void SaveModelviewMatrix()const; | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 4 lines changed or added | |||
TGLPhysicalShape.h | TGLPhysicalShape.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLPhysicalShape.h 22539 2008-03-08 14:36:37Z rdm $ | // @(#)root/gl:$Id: TGLPhysicalShape.h 32465 2010-03-04 20:29:52Z matevz $ | |||
// Author: Richard Maunder 25/05/2005 | // Author: Richard Maunder 25/05/2005 | |||
// Parts taken from original TGLSceneObject Timur Pocheptsov | // Parts taken from original TGLSceneObject Timur Pocheptsov | |||
/************************************************************************* | /************************************************************************* | |||
* 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 36 | skipping to change at line 36 | |||
class TGLPShapeRef; | class TGLPShapeRef; | |||
class TGLLogicalShape; | class TGLLogicalShape; | |||
class TGLRnrCtx; | class TGLRnrCtx; | |||
class TContextMenu; | class TContextMenu; | |||
class TGLPhysicalShape | class TGLPhysicalShape | |||
{ | { | |||
friend class TGLLogicalShape; // for replica-list management | friend class TGLLogicalShape; // for replica-list management | |||
private: | ||||
TGLPhysicalShape(const TGLPhysicalShape&); // Not implemented | ||||
TGLPhysicalShape& operator=(const TGLPhysicalShape&); // Not implemented | ||||
public: | public: | |||
// Flags for permitted manipulation of object | // Flags for permitted manipulation of object | |||
enum EManip { kTranslateX = 1 << 0, | enum EManip { kTranslateX = 1 << 0, | |||
kTranslateY = 1 << 1, | kTranslateY = 1 << 1, | |||
kTranslateZ = 1 << 2, | kTranslateZ = 1 << 2, | |||
kTranslateAll = kTranslateX | kTranslateY | kTranslateZ, | kTranslateAll = kTranslateX | kTranslateY | kTranslateZ, | |||
kScaleX = 1 << 3, | kScaleX = 1 << 3, | |||
kScaleY = 1 << 4, | kScaleY = 1 << 4, | |||
kScaleZ = 1 << 5, | kScaleZ = 1 << 5, | |||
kScaleAll = kScaleX | kScaleY | kScaleZ, | kScaleAll = kScaleX | kScaleY | kScaleZ, | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TGLRnrCtx.h | TGLRnrCtx.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLRnrCtx.h 30425 2009-09-24 19:45:11Z matevz $ | // @(#)root/gl:$Id: TGLRnrCtx.h 32782 2010-03-26 14:39:42Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLRnrCtx | #ifndef ROOT_TGLRnrCtx | |||
#define ROOT_TGLRnrCtx | #define ROOT_TGLRnrCtx | |||
skipping to change at line 95 | skipping to change at line 95 | |||
typedef std::list<TGLColorSet*, std::allocator<TGLColorSet*> > lpTGLColo rSet_t; | typedef std::list<TGLColorSet*, std::allocator<TGLColorSet*> > lpTGLColo rSet_t; | |||
protected: | protected: | |||
TGLViewerBase *fViewer; | TGLViewerBase *fViewer; | |||
TGLCamera *fCamera; | TGLCamera *fCamera; | |||
TGLSceneInfo *fSceneInfo; | TGLSceneInfo *fSceneInfo; | |||
Short_t fViewerLOD; | Short_t fViewerLOD; | |||
Short_t fSceneLOD; | Short_t fSceneLOD; | |||
Short_t fCombiLOD; // Combined viewer/scene lod | Short_t fCombiLOD; // Combined viewer/scene lod. | |||
Short_t fShapeLOD; | Short_t fShapeLOD; // LOD calculated for current shape. | |||
Float_t fShapePixSize; // Only relevant when not using display l | ||||
ists. | ||||
Short_t fViewerStyle; | Short_t fViewerStyle; | |||
Short_t fSceneStyle; | Short_t fSceneStyle; | |||
Float_t fViewerWFLineW; | Float_t fViewerWFLineW; | |||
Float_t fSceneWFLineW; | Float_t fSceneWFLineW; | |||
Float_t fViewerOLLineW; | Float_t fViewerOLLineW; | |||
Float_t fSceneOLLineW; | Float_t fSceneOLLineW; | |||
TGLClip *fViewerClip; | TGLClip *fViewerClip; | |||
skipping to change at line 172 | skipping to change at line 173 | |||
// Draw LOD, style, clip, rnr-pass | // Draw LOD, style, clip, rnr-pass | |||
Short_t ViewerLOD() const { return fViewerLOD; } | Short_t ViewerLOD() const { return fViewerLOD; } | |||
void SetViewerLOD(Short_t LOD) { fViewerLOD = LOD; } | void SetViewerLOD(Short_t LOD) { fViewerLOD = LOD; } | |||
Short_t SceneLOD() const { return fSceneLOD; } | Short_t SceneLOD() const { return fSceneLOD; } | |||
void SetSceneLOD(Short_t LOD) { fSceneLOD = LOD; } | void SetSceneLOD(Short_t LOD) { fSceneLOD = LOD; } | |||
Short_t CombiLOD() const { return fCombiLOD; } | Short_t CombiLOD() const { return fCombiLOD; } | |||
void SetCombiLOD(Short_t LOD) { fCombiLOD = LOD; } | void SetCombiLOD(Short_t LOD) { fCombiLOD = LOD; } | |||
Short_t ShapeLOD() const { return fShapeLOD; } | Short_t ShapeLOD() const { return fShapeLOD; } | |||
void SetShapeLOD(Short_t LOD) { fShapeLOD = LOD; } | void SetShapeLOD(Short_t LOD) { fShapeLOD = LOD; } | |||
Float_t ShapePixSize() const { return fShapePixSize; } | ||||
void SetShapePixSize(Float_t ps) { fShapePixSize = ps; } | ||||
Short_t ViewerStyle() const { return fViewerStyle; } | Short_t ViewerStyle() const { return fViewerStyle; } | |||
void SetViewerStyle(Short_t sty) { fViewerStyle = sty; } | void SetViewerStyle(Short_t sty) { fViewerStyle = sty; } | |||
Short_t SceneStyle() const { return fSceneStyle; } | Short_t SceneStyle() const { return fSceneStyle; } | |||
void SetSceneStyle(Short_t sty) { fSceneStyle = sty; } | void SetSceneStyle(Short_t sty) { fSceneStyle = sty; } | |||
Float_t ViewerWFLineW() const { return fViewerWFLineW; } | Float_t ViewerWFLineW() const { return fViewerWFLineW; } | |||
void SetViewerWFLineW(Float_t w) { fViewerWFLineW = w; } | void SetViewerWFLineW(Float_t w) { fViewerWFLineW = w; } | |||
Float_t SceneWFLineW() const { return fSceneWFLineW; } | Float_t SceneWFLineW() const { return fSceneWFLineW; } | |||
void SetSceneWFLineW(Float_t w) { fSceneWFLineW = w; } | void SetSceneWFLineW(Float_t w) { fSceneWFLineW = w; } | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 7 lines changed or added | |||
TGLSAViewer.h | TGLSAViewer.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLSAViewer.h 31821 2009-12-10 18:22:44Z matevz $ | // @(#)root/gl:$Id: TGLSAViewer.h 32770 2010-03-25 17:05:08Z matevz $ | |||
// Author: Richard Maunder / Timur Pocheptsov | // Author: Richard Maunder / Timur Pocheptsov | |||
/************************************************************************* | /************************************************************************* | |||
* 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 69 | skipping to change at line 69 | |||
TGCompositeFrame *fLeftVerticalFrame; | TGCompositeFrame *fLeftVerticalFrame; | |||
TGCompositeFrame *fRightVerticalFrame; | TGCompositeFrame *fRightVerticalFrame; | |||
TString fDirName; | TString fDirName; | |||
Int_t fTypeIdx; | Int_t fTypeIdx; | |||
Bool_t fOverwrite; | Bool_t fOverwrite; | |||
TGMenuBar *fMenuBar; | TGMenuBar *fMenuBar; | |||
TGButton *fMenuBut; | TGButton *fMenuBut; | |||
Bool_t fHideMenuBar; | Bool_t fHideMenuBar; | |||
TTimer *fMenuHidingTimer; | ||||
Bool_t fMenuHidingShowMenu; | ||||
Bool_t fDeleteMenuBar; | Bool_t fDeleteMenuBar; | |||
static Long_t fgMenuHidingTimeout; | ||||
void ResetMenuHidingTimer(Bool_t show_menu); | ||||
// Initial window positioning | // Initial window positioning | |||
static const Int_t fgInitX; | static const Int_t fgInitX; | |||
static const Int_t fgInitY; | static const Int_t fgInitY; | |||
static const Int_t fgInitW; | static const Int_t fgInitW; | |||
static const Int_t fgInitH; | static const Int_t fgInitH; | |||
static const char *fgHelpText1; | static const char *fgHelpText1; | |||
static const char *fgHelpText2; | static const char *fgHelpText2; | |||
void CreateMenus(); | void CreateMenus(); | |||
skipping to change at line 105 | skipping to change at line 112 | |||
virtual const char* GetName() const { return "GLViewer"; } | virtual const char* GetName() const { return "GLViewer"; } | |||
virtual void SelectionChanged(); | virtual void SelectionChanged(); | |||
void Show(); | void Show(); | |||
void Close(); | void Close(); | |||
void DeleteMenuBar(); | void DeleteMenuBar(); | |||
void DisableCloseMenuEntries(); | void DisableCloseMenuEntries(); | |||
void EnableMenuBarHiding(); | void EnableMenuBarHiding(); | |||
void DisableMenuBarHiding(); | ||||
void MenuHidingTimeout(); | ||||
void HandleMenuBarHiding(Event_t* ev); | void HandleMenuBarHiding(Event_t* ev); | |||
// GUI events - editors, frame etc | // GUI events - editors, frame etc | |||
Bool_t ProcessFrameMessage(Long_t msg, Long_t parm1, Long_t); | Bool_t ProcessFrameMessage(Long_t msg, Long_t parm1, Long_t); | |||
TGCompositeFrame* GetFrame() const; | TGCompositeFrame* GetFrame() const; | |||
TGCompositeFrame* GetLeftVerticalFrame() const { return fLeftVerticalFra me; } | TGCompositeFrame* GetLeftVerticalFrame() const { return fLeftVerticalFra me; } | |||
TGLFormat* GetFormat() const { return fFormat; } | TGLFormat* GetFormat() const { return fFormat; } | |||
void ToggleEditObject(); | void ToggleEditObject(); | |||
void ToggleOrthoRotate(); | void ToggleOrthoRotate(); | |||
void ToggleOrthoDolly(); | void ToggleOrthoDolly(); | |||
static void SetMenuHidingTimeout(Long_t timeout); | ||||
ClassDef(TGLSAViewer, 0); // Standalone GL viewer. | ClassDef(TGLSAViewer, 0); // Standalone GL viewer. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
1 lines changed or deleted | 12 lines changed or added | |||
TGLScene.h | TGLScene.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLScene.h 29676 2009-08-04 16:18:07Z matevz $ | // @(#)root/gl:$Id: TGLScene.h 32334 2010-02-12 11:52:13Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLScene_H | #ifndef ROOT_TGLScene_H | |||
#define ROOT_TGLScene_H | #define ROOT_TGLScene_H | |||
skipping to change at line 186 | skipping to change at line 186 | |||
// Basic logical shape management | // Basic logical shape management | |||
virtual void AdoptLogical(TGLLogicalShape& shape); | virtual void AdoptLogical(TGLLogicalShape& shape); | |||
virtual Bool_t DestroyLogical(TObject* logid, Bool_t mustFind =kTRUE); | virtual Bool_t DestroyLogical(TObject* logid, Bool_t mustFind =kTRUE); | |||
virtual Int_t DestroyLogicals(); | virtual Int_t DestroyLogicals(); | |||
virtual TGLLogicalShape* FindLogical(TObject* logid) const; | virtual TGLLogicalShape* FindLogical(TObject* logid) const; | |||
// Basic physical shape management | // Basic physical shape management | |||
virtual void AdoptPhysical(TGLPhysicalShape& shape); | virtual void AdoptPhysical(TGLPhysicalShape& shape); | |||
virtual Bool_t DestroyPhysical(UInt_t phid); | virtual Bool_t DestroyPhysical(UInt_t phid); | |||
virtual Int_t DestroyPhysicals(Bool_t incModified, const TGL Camera* camera=0); | virtual Int_t DestroyPhysicals(); | |||
virtual TGLPhysicalShape* FindPhysical(UInt_t phid) const; | virtual TGLPhysicalShape* FindPhysical(UInt_t phid) const; | |||
virtual UInt_t GetMaxPhysicalID(); | virtual UInt_t GetMaxPhysicalID(); | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// Updates / removals of logical and physical shapes | // Updates / removals of logical and physical shapes | |||
virtual Bool_t BeginUpdate(); | virtual Bool_t BeginUpdate(); | |||
virtual void EndUpdate(Bool_t minorChange=kTRUE, Bool_t sceneChanged=k TRUE, Bool_t updateViewers=kTRUE); | virtual void EndUpdate(Bool_t minorChange=kTRUE, Bool_t sceneChanged=k TRUE, Bool_t updateViewers=kTRUE); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGLSceneBase.h | TGLSceneBase.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLSceneBase.h 29676 2009-08-04 16:18:07Z matevz $ | // @(#)root/gl:$Id: TGLSceneBase.h 32867 2010-04-01 17:07:30Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLSceneBase_H | #ifndef ROOT_TGLSceneBase_H | |||
#define ROOT_TGLSceneBase_H | #define ROOT_TGLSceneBase_H | |||
skipping to change at line 24 | skipping to change at line 24 | |||
#include "TGLBoundingBox.h" | #include "TGLBoundingBox.h" | |||
#include <TString.h> | #include <TString.h> | |||
#include <list> | #include <list> | |||
class TGLViewerBase; | class TGLViewerBase; | |||
class TGLSceneInfo; | class TGLSceneInfo; | |||
class TGLClip; | class TGLClip; | |||
class TGLRnrCtx; | class TGLRnrCtx; | |||
class TGLLogicalShape; | ||||
class TGLSelectRecord; | class TGLSelectRecord; | |||
// Avoid TObject inheritance due to clash with TObject::Draw as well | // Avoid TObject inheritance due to clash with TObject::Draw as well | |||
// as possible inheritance of TGLPadScene from VierualViewer3D. | // as possible inheritance of TGLPadScene from VierualViewer3D. | |||
class TGLSceneBase : public TGLLockable // : public TObject / TNamed | class TGLSceneBase : public TGLLockable // : public TObject / TNamed | |||
{ | { | |||
private: | private: | |||
TGLSceneBase(const TGLSceneBase&); // Not implemented | TGLSceneBase(const TGLSceneBase&); // Not implemented | |||
TGLSceneBase& operator=(const TGLSceneBase&); // Not implemented | TGLSceneBase& operator=(const TGLSceneBase&); // Not implemented | |||
skipping to change at line 100 | skipping to change at line 101 | |||
virtual void PreDraw (TGLRnrCtx & rnrCtx); | virtual void PreDraw (TGLRnrCtx & rnrCtx); | |||
virtual void PreRender (TGLRnrCtx & rnrCtx); | virtual void PreRender (TGLRnrCtx & rnrCtx); | |||
virtual void Render (TGLRnrCtx & rnrCtx); | virtual void Render (TGLRnrCtx & rnrCtx); | |||
virtual void RenderOpaque (TGLRnrCtx & rnrCtx); | virtual void RenderOpaque (TGLRnrCtx & rnrCtx); | |||
virtual void RenderTransp (TGLRnrCtx & rnrCtx); | virtual void RenderTransp (TGLRnrCtx & rnrCtx); | |||
virtual void RenderSelOpaque (TGLRnrCtx & rnrCtx); | virtual void RenderSelOpaque (TGLRnrCtx & rnrCtx); | |||
virtual void RenderSelTransp (TGLRnrCtx & rnrCtx); | virtual void RenderSelTransp (TGLRnrCtx & rnrCtx); | |||
virtual void PostRender(TGLRnrCtx & rnrCtx); | virtual void PostRender(TGLRnrCtx & rnrCtx); | |||
virtual void PostDraw (TGLRnrCtx & rnrCtx); | virtual void PostDraw (TGLRnrCtx & rnrCtx); | |||
virtual TGLLogicalShape* FindLogical(TObject*) const { return 0; } | ||||
// Selection interface | // Selection interface | |||
virtual Bool_t ResolveSelectRecord(TGLSelectRecord& rec, Int_t curIdx); | virtual Bool_t ResolveSelectRecord(TGLSelectRecord& rec, Int_t curIdx); | |||
// Getters & setters | // Getters & setters | |||
UInt_t GetTimeStamp() const { return fTimeStamp; } | UInt_t GetTimeStamp() const { return fTimeStamp; } | |||
void IncTimeStamp() { ++fTimeStamp; fMinorStamp = 1; } | void IncTimeStamp() { ++fTimeStamp; fMinorStamp = 1; } | |||
UInt_t GetMinorStamp() const { return fMinorStamp; } | UInt_t GetMinorStamp() const { return fMinorStamp; } | |||
void IncMinorStamp() { ++fMinorStamp; } | void IncMinorStamp() { ++fMinorStamp; } | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TGLSelectRecord.h | TGLSelectRecord.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLSelectRecord.h 30886 2009-10-27 13:37:11Z matevz $ | // @(#)root/gl:$Id: TGLSelectRecord.h 33124 2010-04-21 20:04:42Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLSelectRecord | #ifndef ROOT_TGLSelectRecord | |||
#define ROOT_TGLSelectRecord | #define ROOT_TGLSelectRecord | |||
skipping to change at line 77 | skipping to change at line 77 | |||
// TGLSelectRecord | // TGLSelectRecord | |||
/************************************************************************** / | /************************************************************************** / | |||
class TGLSelectRecord : public TGLSelectRecordBase | class TGLSelectRecord : public TGLSelectRecordBase | |||
{ | { | |||
public: | public: | |||
enum ESecSelResult { kNone, kEnteringSelection, kLeavingSelection, kModi fyingInternalSelection }; | enum ESecSelResult { kNone, kEnteringSelection, kLeavingSelection, kModi fyingInternalSelection }; | |||
protected: | protected: | |||
// Secondary data (scene dependent) - use | // Secondary data (scene dependent) - use | |||
// TGLSceneBase::ResolveSelectRecord to fill. | // TGLSceneBase::ResolveSelectRecord() to fill. | |||
Bool_t fTransparent; | Bool_t fTransparent; | |||
TGLSceneInfo *fSceneInfo; // SceneInfo | TGLSceneInfo *fSceneInfo; // SceneInfo | |||
TGLPhysicalShape *fPhysShape; // PhysicalShape, if applicable | TGLPhysicalShape *fPhysShape; // PhysicalShape, if applicable | |||
TObject *fObject; // Master TObject, if applicable | TObject *fObject; // Master TObject, if applicable | |||
void *fSpecific; // Scene specific, if applicable | void *fSpecific; // Scene specific, if applicable | |||
Bool_t fMultiple; // Mutliple selection, requested by event | Bool_t fMultiple; // Mutliple selection requested (set by ev | |||
handler | ent-handler). | |||
Bool_t fHighlight; // Requested for highlight (set by event-h | ||||
andler). | ||||
ESecSelResult fSecSelRes; // Result of ProcessSelection; | ESecSelResult fSecSelRes; // Result of ProcessSelection; | |||
public: | public: | |||
TGLSelectRecord(); | TGLSelectRecord(); | |||
TGLSelectRecord(UInt_t* data); | TGLSelectRecord(UInt_t* data); | |||
TGLSelectRecord(const TGLSelectRecord& rec); | TGLSelectRecord(const TGLSelectRecord& rec); | |||
virtual ~TGLSelectRecord(); | virtual ~TGLSelectRecord(); | |||
TGLSelectRecord& operator=(const TGLSelectRecord& rec); | TGLSelectRecord& operator=(const TGLSelectRecord& rec); | |||
virtual void Set(UInt_t* data); | virtual void Set(UInt_t* data); | |||
virtual void Reset(); | virtual void Reset(); | |||
Bool_t GetTransparent() const { return fTransparent; } | Bool_t GetTransparent() const { return fTransparent; } | |||
TGLSceneInfo * GetSceneInfo() const { return fSceneInfo; } | TGLSceneInfo * GetSceneInfo() const { return fSceneInfo; } | |||
TGLPhysicalShape * GetPhysShape() const { return fPhysShape; } | TGLPhysicalShape * GetPhysShape() const { return fPhysShape; } | |||
TObject * GetObject() const { return fObject; } | TObject * GetObject() const { return fObject; } | |||
void * GetSpecific() const { return fSpecific; } | void * GetSpecific() const { return fSpecific; } | |||
Bool_t GetMultiple() const { return fMultiple; } | Bool_t GetMultiple() const { return fMultiple; } | |||
Bool_t GetHighlight() const { return fHighlight; } | ||||
ESecSelResult GetSecSelResult() const { return fSecSelRes; } | ESecSelResult GetSecSelResult() const { return fSecSelRes; } | |||
void SetTransparent(Bool_t t) { fTransparent = t; } | void SetTransparent(Bool_t t) { fTransparent = t; } | |||
void SetSceneInfo (TGLSceneInfo* si) { fSceneInfo = si; } | void SetSceneInfo (TGLSceneInfo* si) { fSceneInfo = si; } | |||
void SetPhysShape (TGLPhysicalShape* pshp) { fPhysShape = pshp; } | void SetPhysShape (TGLPhysicalShape* pshp) { fPhysShape = pshp; } | |||
void SetObject (TObject* obj) { fObject = obj; } | void SetObject (TObject* obj) { fObject = obj; } | |||
void SetSpecific (void* spec) { fSpecific = spec; } | void SetSpecific (void* spec) { fSpecific = spec; } | |||
void SetMultiple (Bool_t multi) { fMultiple = multi; } | void SetMultiple (Bool_t multi) { fMultiple = multi; } | |||
void SetHighlight (Bool_t hlt) { fHighlight = hlt; } | ||||
void SetSecSelResult(ESecSelResult r) { fSecSelRes = r; } | void SetSecSelResult(ESecSelResult r) { fSecSelRes = r; } | |||
void Print(); | void Print(); | |||
static Bool_t AreSameSelectionWise(const TGLSelectRecord& r1, | static Bool_t AreSameSelectionWise(const TGLSelectRecord& r1, | |||
const TGLSelectRecord& r2); | const TGLSelectRecord& r2); | |||
ClassDef(TGLSelectRecord, 0) // Standard GL selection record. | ClassDef(TGLSelectRecord, 0) // Standard GL selection record. | |||
}; | }; | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 8 lines changed or added | |||
TGLUtil.h | TGLUtil.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLUtil.h 30815 2009-10-20 13:49:22Z rdm $ | // @(#)root/gl:$Id: TGLUtil.h 32785 2010-03-26 15:42:03Z matevz $ | |||
// 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 514 | skipping to change at line 514 | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline void TGLRect::Offset(Int_t dX, Int_t dY) | inline void TGLRect::Offset(Int_t dX, Int_t dY) | |||
{ | { | |||
fX += dX; | fX += dX; | |||
fY += dY; | fY += dY; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline void TGLRect::Expand(Int_t x, Int_t y) | ||||
{ | ||||
// Expand the rect to encompass point (x,y) | ||||
Int_t delX = x - fX; | ||||
Int_t delY = y - fY; | ||||
if (delX>static_cast<Int_t>(fWidth)) { | ||||
fWidth = delX; | ||||
} | ||||
if (delY>static_cast<Int_t>(fHeight)) { | ||||
fHeight = delY; | ||||
} | ||||
if (delX<0) { | ||||
fX = x; | ||||
fWidth += -delX; | ||||
} | ||||
if (delY<0) { | ||||
fY = y; | ||||
fHeight += -delY; | ||||
} | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline Int_t TGLRect::Diagonal() const | ||||
{ | ||||
const Double_t w = static_cast<Double_t>(fWidth); | ||||
const Double_t h = static_cast<Double_t>(fHeight); | ||||
return static_cast<Int_t>(std::sqrt(w*w + h*h)); | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline Int_t TGLRect::Longest() const | inline Int_t TGLRect::Longest() const | |||
{ | { | |||
return fWidth > fHeight ? fWidth:fHeight; | return fWidth > fHeight ? fWidth : fHeight; | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline Double_t TGLRect::Aspect() const | inline Double_t TGLRect::Aspect() const | |||
{ | { | |||
// Return aspect ratio (width/height) | // Return aspect ratio (width/height) | |||
if (fHeight == 0) { | if (fHeight == 0) { | |||
return 0.0; | return 0.0; | |||
} else { | } else { | |||
return static_cast<Double_t>(fWidth) / static_cast<Double_t>(fHeight) ; | return static_cast<Double_t>(fWidth) / static_cast<Double_t>(fHeight) ; | |||
End of changes. 3 change blocks. | ||||
36 lines changed or deleted | 2 lines changed or added | |||
TGLViewer.h | TGLViewer.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLViewer.h 31821 2009-12-10 18:22:44Z matevz $ | // @(#)root/gl:$Id: TGLViewer.h 33124 2010-04-21 20:04:42Z matevz $ | |||
// 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 24 | skipping to change at line 24 | |||
#include "TGLViewerBase.h" | #include "TGLViewerBase.h" | |||
#include "TGLRnrCtx.h" | #include "TGLRnrCtx.h" | |||
#include "TGLSelectRecord.h" | #include "TGLSelectRecord.h" | |||
#include "TVirtualViewer3D.h" | #include "TVirtualViewer3D.h" | |||
#include "TBuffer3D.h" | #include "TBuffer3D.h" | |||
#include "TGLPerspectiveCamera.h" | #include "TGLPerspectiveCamera.h" | |||
#include "TGLOrthoCamera.h" | #include "TGLOrthoCamera.h" | |||
#include "TGLClip.h" | ||||
#include "TTimer.h" | #include "TTimer.h" | |||
#include "TPoint.h" | #include "TPoint.h" | |||
#include "TGEventHandler.h" | #include "TGEventHandler.h" | |||
#include "GuiTypes.h" | #include "GuiTypes.h" | |||
#include "TQObject.h" | #include "TQObject.h" | |||
#include <vector> | #include <vector> | |||
skipping to change at line 63 | skipping to change at line 64 | |||
{ | { | |||
friend class TGLOutput; | friend class TGLOutput; | |||
friend class TGLEventHandler; | friend class TGLEventHandler; | |||
public: | public: | |||
enum ECameraType { kCameraPerspXOZ, kCameraPerspYOZ, kCameraPerspXOY, | enum ECameraType { kCameraPerspXOZ, kCameraPerspYOZ, kCameraPerspXOY, | |||
kCameraOrthoXOY, kCameraOrthoXOZ, kCameraOrthoZOY, | kCameraOrthoXOY, kCameraOrthoXOZ, kCameraOrthoZOY, | |||
kCameraOrthoXnOY, kCameraOrthoXnOZ, kCameraOrthoZnOY }; | kCameraOrthoXnOY, kCameraOrthoXnOZ, kCameraOrthoZnOY }; | |||
enum ESecSelType { kOnRequest, kOnKeyMod1 }; | enum ESecSelType { // When to do secondary-selection: | |||
kOnRequest, // - on request - when Mod1 is pressed or logical-sha | ||||
pe requests it; | ||||
kOnKeyMod1 // - only when Mod1 is pressed. | ||||
}; | ||||
private: | private: | |||
TGLViewer(const TGLViewer &); // Not implemented | TGLViewer(const TGLViewer &); // Not implemented | |||
TGLViewer & operator=(const TGLViewer &); // Not implemented | TGLViewer & operator=(const TGLViewer &); // Not implemented | |||
void InitSecondaryObjects(); | void InitSecondaryObjects(); | |||
protected: | protected: | |||
// External handles | // External handles | |||
TVirtualPad *fPad; //! external pad - remove replace with sign al | TVirtualPad *fPad; //! external pad - remove replace with sign al | |||
skipping to change at line 101 | skipping to change at line 105 | |||
// Stereo | // Stereo | |||
Bool_t fStereo; //! use stereo rendering | Bool_t fStereo; //! use stereo rendering | |||
Float_t fStereoZeroParallax; //! position of zero-paralla x plane: 0 - near clipping plane, 1 - far clipping plane | Float_t fStereoZeroParallax; //! position of zero-paralla x plane: 0 - near clipping plane, 1 - far clipping plane | |||
Float_t fStereoEyeOffsetFac; //! | Float_t fStereoEyeOffsetFac; //! | |||
Float_t fStereoFrustumAsymFac; //! | Float_t fStereoFrustumAsymFac; //! | |||
// Lights | // Lights | |||
TGLLightSet *fLightSet; //! | TGLLightSet *fLightSet; //! | |||
// Clipping | // Clipping | |||
TGLClipSet *fClipSet; //! | TGLClipSet *fClipSet; //! | |||
Bool_t fClipAutoUpdate; //! | ||||
// Selected physical | // Selected physical | |||
TGLSelectRecord fCurrentSelRec; //! select record in use as selected | TGLSelectRecord fCurrentSelRec; //! select record in use as selected | |||
TGLSelectRecord fSelRec; //! select record from last select (should go to context) | TGLSelectRecord fSelRec; //! select record from last select (should go to context) | |||
TGLSelectRecord fSecSelRec; //! select record from last secondary select (should go to context) | TGLSelectRecord fSecSelRec; //! select record from last secondary select (should go to context) | |||
TGLManipSet *fSelectedPShapeRef; //! | TGLManipSet *fSelectedPShapeRef; //! | |||
// Overlay | // Overlay | |||
TGLOverlayElement *fCurrentOvlElm; //! current overlay element | TGLOverlayElement *fCurrentOvlElm; //! current overlay element | |||
TGLOvlSelectRecord fOvlSelRec; //! select record from last overlay select | TGLOvlSelectRecord fOvlSelRec; //! select record from last overlay select | |||
TGEventHandler *fEventHandler; //! event handler | TGEventHandler *fEventHandler; //! event handler | |||
skipping to change at line 160 | skipping to change at line 163 | |||
Bool_t fIsPrinting; //! | Bool_t fIsPrinting; //! | |||
TString fPictureFileName; //! default file-name for SavePict ure() | TString fPictureFileName; //! default file-name for SavePict ure() | |||
Float_t fFader; //! fade the view (0 - no fade/def ault, 1 - full fade/no rendering done) | Float_t fFader; //! fade the view (0 - no fade/def ault, 1 - full fade/no rendering done) | |||
static TGLColorSet fgDefaultColorSet; //! a shared, defa ult color-set | static TGLColorSet fgDefaultColorSet; //! a shared, defa ult color-set | |||
static Bool_t fgUseDefaultColorSetForNewViewers; //! name says it a ll | static Bool_t fgUseDefaultColorSetForNewViewers; //! name says it a ll | |||
/////////////////////////////////////////////////////////////////////// | /////////////////////////////////////////////////////////////////////// | |||
// Methods | // Methods | |||
/////////////////////////////////////////////////////////////////////// | /////////////////////////////////////////////////////////////////////// | |||
virtual void SetupClipObject(); | ||||
// Drawing - can tidy up/remove lots when TGLManager added | // Drawing - can tidy up/remove lots when TGLManager added | |||
void InitGL(); | void InitGL(); | |||
void PreDraw(); | void PreDraw(); | |||
void PostDraw(); | void PostDraw(); | |||
void FadeView(Float_t alpha); | void FadeView(Float_t alpha); | |||
void MakeCurrent() const; | void MakeCurrent() const; | |||
void SwapBuffers() const; | void SwapBuffers() const; | |||
// Cameras | // Cameras | |||
void SetViewport(Int_t x, Int_t y, Int_t width, Int_t height); | void SetViewport(Int_t x, Int_t y, Int_t width, Int_t height); | |||
skipping to change at line 240 | skipping to change at line 246 | |||
void UseDefaultColorSet(Bool_t x); | void UseDefaultColorSet(Bool_t x); | |||
Bool_t IsUsingDefaultColorSet() const; | Bool_t IsUsingDefaultColorSet() const; | |||
Bool_t IsColorSetDark() const; | Bool_t IsColorSetDark() const; | |||
void SetClearColor(Color_t col); | void SetClearColor(Color_t col); | |||
static TGLColorSet& GetDefaultColorSet(); | static TGLColorSet& GetDefaultColorSet(); | |||
static void UseDefaultColorSetForNewViewers(Bool_t x); | static void UseDefaultColorSetForNewViewers(Bool_t x); | |||
static Bool_t IsUsingDefaultColorSetForNewViewers(); | static Bool_t IsUsingDefaultColorSetForNewViewers(); | |||
const TGLRect& RefViewport() const { return fViewport; } | ||||
Int_t ViewportDiagonal() const { return fViewport.Diagonal(); } | ||||
Float_t GetPointScale() const { return fPointScale; } | Float_t GetPointScale() const { return fPointScale; } | |||
Float_t GetLineScale() const { return fLineScale; } | Float_t GetLineScale() const { return fLineScale; } | |||
void SetPointScale(Float_t s) { fPointScale = s; } | void SetPointScale(Float_t s) { fPointScale = s; } | |||
void SetLineScale (Float_t s) { fLineScale = s; } | void SetLineScale (Float_t s) { fLineScale = s; } | |||
Bool_t GetSmoothPoints() const { return fSmoothPoints; } | Bool_t GetSmoothPoints() const { return fSmoothPoints; } | |||
Bool_t GetSmoothLines() const { return fSmoothLines; } | Bool_t GetSmoothLines() const { return fSmoothLines; } | |||
void SetSmoothPoints(Bool_t s){ fSmoothPoints = s; } | void SetSmoothPoints(Bool_t s){ fSmoothPoints = s; } | |||
void SetSmoothLines(Bool_t s) { fSmoothLines = s; } | void SetSmoothLines(Bool_t s) { fSmoothLines = s; } | |||
TGLLightSet* GetLightSet() const { return fLightSet; } | TGLLightSet* GetLightSet() const { return fLightSet; } | |||
TGLClipSet * GetClipSet() const { return fClipSet; } | TGLClipSet * GetClipSet() const { return fClipSet; } | |||
Bool_t GetClipAutoUpdate() const { return fClipAutoUpdate; } | Bool_t GetClipAutoUpdate() const { return fClipSet->GetAutoUpdate(); } | |||
void SetClipAutoUpdate(Bool_t x) { fClipAutoUpdate = x; } | void SetClipAutoUpdate(Bool_t x) { fClipSet->SetAutoUpdate(x); } | |||
// External GUI component interface | // External GUI component interface | |||
TGLCamera & CurrentCamera() const { return *fCurrentCamera; } | TGLCamera & CurrentCamera() const { return *fCurrentCamera; } | |||
TGLCamera & RefCamera(ECameraType camera); | TGLCamera & RefCamera(ECameraType camera); | |||
void SetCurrentCamera(ECameraType camera); | void SetCurrentCamera(ECameraType camera); | |||
void SetOrthoCamera(ECameraType camera, Double_t zoom, Double_t dolly, | void SetOrthoCamera(ECameraType camera, Double_t zoom, Double_t dolly, | |||
Double_t center[3], Double_t hRotate, Double_t vRotate); | Double_t center[3], Double_t hRotate, Double_t vRotate); | |||
void SetPerspectiveCamera(ECameraType camera, Double_t fov, Double_t dol ly, | void SetPerspectiveCamera(ECameraType camera, Double_t fov, Double_t dol ly, | |||
Double_t center[3], Double_t hRotate, Double_t vRotate); | Double_t center[3], Double_t hRotate, Double_t vRotate); | |||
void GetGuideState(Int_t & axesType, Bool_t & axesDepthTest, Bool_t & re ferenceOn, Double_t* referencePos) const; | void GetGuideState(Int_t & axesType, Bool_t & axesDepthTest, Bool_t & re ferenceOn, Double_t* referencePos) const; | |||
skipping to change at line 341 | skipping to change at line 350 | |||
// Update/camera-reset | // Update/camera-reset | |||
void UpdateScene(); | void UpdateScene(); | |||
Bool_t GetIgnoreSizesOnUpdate() const { return fIgnoreSizesOnUpda te; } | Bool_t GetIgnoreSizesOnUpdate() const { return fIgnoreSizesOnUpda te; } | |||
void SetIgnoreSizesOnUpdate(Bool_t v) { fIgnoreSizesOnUpdate = v; } | void SetIgnoreSizesOnUpdate(Bool_t v) { fIgnoreSizesOnUpdate = v; } | |||
void ResetCurrentCamera(); | void ResetCurrentCamera(); | |||
Bool_t GetResetCamerasOnUpdate() const { return fResetCamerasOnUpd ate; } | Bool_t GetResetCamerasOnUpdate() const { return fResetCamerasOnUpd ate; } | |||
void SetResetCamerasOnUpdate(Bool_t v) { fResetCamerasOnUpdate = v ; } | void SetResetCamerasOnUpdate(Bool_t v) { fResetCamerasOnUpdate = v ; } | |||
virtual void PostSceneBuildSetup(Bool_t resetCameras); | virtual void PostSceneBuildSetup(Bool_t resetCameras); | |||
virtual void Activated() { Emit("Activated()"); } // *SIGNAL* | ||||
virtual void MouseIdle(TGLPhysicalShape*,UInt_t,UInt_t); // *SIGNAL* | virtual void MouseIdle(TGLPhysicalShape*,UInt_t,UInt_t); // *SIGNAL* | |||
virtual void MouseOver(TGLPhysicalShape*); // *SIGNAL* | virtual void MouseOver(TGLPhysicalShape*); // *SIGNAL* | |||
virtual void MouseOver(TGLPhysicalShape*, UInt_t state); // *SIGNAL* | virtual void MouseOver(TGLPhysicalShape*, UInt_t state); // *SIGNAL* | |||
virtual void Activated() { Emit("Activated()"); } // *SIGNAL* | virtual void MouseOver(TObject *obj, UInt_t state); // *SIGNAL* | |||
virtual void ReMouseOver(TObject *obj, UInt_t state); // *SIGNAL* | ||||
virtual void UnMouseOver(TObject *obj, UInt_t state); // *SIGNAL* | ||||
virtual void Clicked(TObject *obj); //*SIGNAL* | virtual void Clicked(TObject *obj); //*SIGNAL* | |||
virtual void Clicked(TObject *obj, UInt_t button, UInt_t state); //*SIGN AL* | virtual void Clicked(TObject *obj, UInt_t button, UInt_t state); //*SIGN AL* | |||
virtual void ReClicked(TObject *obj, UInt_t button, UInt_t state); //*SI GNAL* | virtual void ReClicked(TObject *obj, UInt_t button, UInt_t state); //*SI GNAL* | |||
virtual void UnClicked(TObject *obj, UInt_t button, UInt_t state); //*SI GNAL* | virtual void UnClicked(TObject *obj, UInt_t button, UInt_t state); //*SI GNAL* | |||
virtual void DoubleClicked() { Emit("DoubleClicked()"); } // *SIGNAL* | virtual void DoubleClicked() { Emit("DoubleClicked()"); } // *SIGNAL* | |||
TGEventHandler *GetEventHandler() const { return fEventHandler; } | TGEventHandler *GetEventHandler() const { return fEventHandler; } | |||
virtual void SetEventHandler(TGEventHandler *handler); | virtual void SetEventHandler(TGEventHandler *handler); | |||
TGedEditor* GetGedEditor() const { return fGedEditor; } | TGedEditor* GetGedEditor() const { return fGedEditor; } | |||
End of changes. 9 change blocks. | ||||
6 lines changed or deleted | 21 lines changed or added | |||
TGLViewerBase.h | TGLViewerBase.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLViewerBase.h 29676 2009-08-04 16:18:07Z matevz $ | // @(#)root/gl:$Id: TGLViewerBase.h 32867 2010-04-01 17:07:30Z matevz $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGLViewerBase | #ifndef ROOT_TGLViewerBase | |||
#define ROOT_TGLViewerBase | #define ROOT_TGLViewerBase | |||
skipping to change at line 27 | skipping to change at line 27 | |||
#include "TGLOverlay.h" | #include "TGLOverlay.h" | |||
#include <list> | #include <list> | |||
#include <vector> | #include <vector> | |||
class TGLSceneBase; | class TGLSceneBase; | |||
class TGLSceneInfo; | class TGLSceneInfo; | |||
class TGLCamera; | class TGLCamera; | |||
class TGLClip; | class TGLClip; | |||
class TGLRnrCtx; | class TGLRnrCtx; | |||
class TGLLogicalShape; | ||||
class TGLSelectRecord; | class TGLSelectRecord; | |||
class TGLOvlSelectRecord; | class TGLOvlSelectRecord; | |||
class TGLOverlayElement; | class TGLOverlayElement; | |||
// Avoid TObject inheritance due to clash with TVirtualViewer3D. | // Avoid TObject inheritance due to clash with TVirtualViewer3D. | |||
class TGLViewerBase : public TGLLockable // : public TObject | class TGLViewerBase : public TGLLockable // : public TObject | |||
{ | { | |||
private: | private: | |||
TGLViewerBase(const TGLViewerBase&); // Not implemented | TGLViewerBase(const TGLViewerBase&); // Not implemented | |||
skipping to change at line 55 | skipping to change at line 56 | |||
typedef std::vector<TGLOverlayElement*> OverlayElmVec_t; | typedef std::vector<TGLOverlayElement*> OverlayElmVec_t; | |||
typedef OverlayElmVec_t::iterator OverlayElmVec_i; | typedef OverlayElmVec_t::iterator OverlayElmVec_i; | |||
SceneInfoList_i FindScene(TGLSceneBase* scene); | SceneInfoList_i FindScene(TGLSceneBase* scene); | |||
typedef void (TGLSceneBase::* SubRender_foo) (TGLRnrCtx &); | typedef void (TGLSceneBase::* SubRender_foo) (TGLRnrCtx &); | |||
void SubRenderScenes(SubRender_foo render_foo); | void SubRenderScenes(SubRender_foo render_foo); | |||
virtual void SetupClipObject(); | ||||
// Members | // Members | |||
TGLRnrCtx *fRnrCtx; | TGLRnrCtx *fRnrCtx; | |||
TGLCamera *fCamera; // Camera for rendering. | TGLCamera *fCamera; // Camera for rendering. | |||
TGLClip *fClip; // Viewer clipping-plane. | TGLClip *fClip; // Viewer clipping-plane. | |||
Short_t fLOD; // Viewer-lod for rendering. | Short_t fLOD; // Viewer-lod for rendering. | |||
Short_t fStyle; // Viewer-style for rendering. | Short_t fStyle; // Viewer-style for rendering. | |||
Float_t fWFLineW; // Optional override of scene wire-fram e line-width | Float_t fWFLineW; // Optional override of scene wire-fram e line-width | |||
Float_t fOLLineW; // Optional override of scene outline l ine-width | Float_t fOLLineW; // Optional override of scene outline l ine-width | |||
skipping to change at line 92 | skipping to change at line 95 | |||
virtual const char* LockIdStr() const; | virtual const char* LockIdStr() const; | |||
TGLSceneInfo* AddScene(TGLSceneBase* scene); | TGLSceneInfo* AddScene(TGLSceneBase* scene); | |||
void RemoveScene(TGLSceneBase* scene); | void RemoveScene(TGLSceneBase* scene); | |||
void RemoveAllScenes(); | void RemoveAllScenes(); | |||
void SceneDestructing(TGLSceneBase* scene); | void SceneDestructing(TGLSceneBase* scene); | |||
TGLSceneInfo* GetSceneInfo(TGLSceneBase* scene); | TGLSceneInfo* GetSceneInfo(TGLSceneBase* scene); | |||
TGLLogicalShape* FindLogicalInScenes(TObject* id); | ||||
virtual void AddOverlayElement(TGLOverlayElement* el); | virtual void AddOverlayElement(TGLOverlayElement* el); | |||
virtual void RemoveOverlayElement(TGLOverlayElement* el); | virtual void RemoveOverlayElement(TGLOverlayElement* el); | |||
virtual void DeleteOverlayAnnotations(); | virtual void DeleteOverlayAnnotations(); | |||
virtual void DeleteOverlayElements(TGLOverlayElement::ERole r); | virtual void DeleteOverlayElements(TGLOverlayElement::ERole r); | |||
TGLClip* Clip() const { return fClip; } | TGLClip* Clip() const { return fClip; } | |||
void SetClip(TGLClip *p) { fClip = p; } | void SetClip(TGLClip *p) { fClip = p; } | |||
Short_t LOD() const { return fLOD; } | Short_t LOD() const { return fLOD; } | |||
void SetLOD(Short_t lod) { fLOD = lod; } | void SetLOD(Short_t lod) { fLOD = lod; } | |||
End of changes. 4 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
TGShutter.h | TGShutter.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TGShutter.h 23115 2008-04-10 13:35:37Z rdm $ | // @(#)root/gui:$Id: TGShutter.h 32706 2010-03-23 07:54:10Z bellenot $ | |||
// Author: Fons Rademakers 18/9/2000 | // Author: Fons Rademakers 18/9/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 79 | skipping to change at line 79 | |||
class TGShutter : public TGCompositeFrame { | class TGShutter : public TGCompositeFrame { | |||
protected: | protected: | |||
TTimer *fTimer; // Timer for animation | TTimer *fTimer; // Timer for animation | |||
TGShutterItem *fSelectedItem; // Item currently open | TGShutterItem *fSelectedItem; // Item currently open | |||
TGShutterItem *fClosingItem; // Item closing down | TGShutterItem *fClosingItem; // Item closing down | |||
TList *fTrash; // Items that need to be cleane d up | TList *fTrash; // Items that need to be cleane d up | |||
Int_t fHeightIncrement; // Height delta | Int_t fHeightIncrement; // Height delta | |||
Int_t fClosingHeight; // Closing items current height | Int_t fClosingHeight; // Closing items current height | |||
Int_t fClosingHadScrollbar; // Closing item had a scroll ba r | Int_t fClosingHadScrollbar; // Closing item had a scroll ba r | |||
UInt_t fDefWidth; // Default width | ||||
UInt_t fDefHeight; // Default height | ||||
private: | private: | |||
TGShutter(const TGShutter&); // not implemented | TGShutter(const TGShutter&); // not implemented | |||
TGShutter& operator=(const TGShutter&); // not implemented | TGShutter& operator=(const TGShutter&); // not implemented | |||
public: | public: | |||
TGShutter(const TGWindow *p = 0, UInt_t options = kSunkenFrame); | TGShutter(const TGWindow *p = 0, UInt_t options = kSunkenFrame); | |||
virtual ~TGShutter(); | virtual ~TGShutter(); | |||
virtual void AddItem(TGShutterItem *item); | virtual void AddItem(TGShutterItem *item); | |||
skipping to change at line 102 | skipping to change at line 104 | |||
virtual void RenamePage(const char *name); //*MENU* | virtual void RenamePage(const char *name); //*MENU* | |||
virtual Bool_t HandleTimer(TTimer *t); | virtual Bool_t HandleTimer(TTimer *t); | |||
virtual void Layout(); | virtual void Layout(); | |||
virtual void SetLayoutManager(TGLayoutManager*) { } | virtual void SetLayoutManager(TGLayoutManager*) { } | |||
TGShutterItem *GetSelectedItem() const { return fSelectedItem; } | TGShutterItem *GetSelectedItem() const { return fSelectedItem; } | |||
TGShutterItem *GetItem(const char *name); | TGShutterItem *GetItem(const char *name); | |||
virtual void SetSelectedItem(TGShutterItem *item); | virtual void SetSelectedItem(TGShutterItem *item); | |||
virtual void SetSelectedItem(const char *name); | virtual void SetSelectedItem(const char *name); | |||
virtual void EnableItem(const char *name, Bool_t on = kTRUE); | virtual void EnableItem(const char *name, Bool_t on = kTRUE); | |||
virtual TGDimension GetDefaultSize() const; | ||||
virtual void SetDefaultSize(UInt_t w, UInt_t h); | ||||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual Bool_t ProcessMessage(Long_t cmd, Long_t parm1, Long_t parm2); | virtual Bool_t ProcessMessage(Long_t cmd, Long_t parm1, Long_t parm2); | |||
virtual void Selected(TGShutterItem *item) { Emit(" Selected(TGShutter Item*)", item); } //*SIGNAL* | virtual void Selected(TGShutterItem *item) { Emit(" Selected(TGShutter Item*)", item); } //*SIGNAL* | |||
ClassDef(TGShutter,0) // Shutter widget | ClassDef(TGShutter,0) // Shutter widget | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
TGTextEntry.h | TGTextEntry.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TGTextEntry.h 25233 2008-08-25 16:48:47Z bellenot $ | // @(#)root/gui:$Id: TGTextEntry.h 32694 2010-03-22 09:08:25Z bellenot $ | |||
// Author: Fons Rademakers 08/01/98 | // Author: Fons Rademakers 08/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 75 | skipping to change at line 75 | |||
Atom_t fClipboard; // clipboard property | Atom_t fClipboard; // clipboard property | |||
TBlinkTimer *fCurBlink; // cursor blink timer | TBlinkTimer *fCurBlink; // cursor blink timer | |||
TGToolTip *fTip; // associated tooltip | TGToolTip *fTip; // associated tooltip | |||
Int_t fMaxLen; // maximum length of text | Int_t fMaxLen; // maximum length of text | |||
Bool_t fEdited; // kFALSE, if the line edit's cont ents have not been changed since the construction | Bool_t fEdited; // kFALSE, if the line edit's cont ents have not been changed since the construction | |||
Bool_t fFrameDrawn; // kTRUE draw itself inside a two- pixel frame, kFALSE draw without any frame | Bool_t fFrameDrawn; // kTRUE draw itself inside a two- pixel frame, kFALSE draw without any frame | |||
EEchoMode fEchoMode; // *OPTION={GetMethod="GetEchoMode ";SetMethod="SetEchoMode";Items=(kNormal="Normal",kNoEcho="No Echo",kPasswo rd="Password")}* | EEchoMode fEchoMode; // *OPTION={GetMethod="GetEchoMode ";SetMethod="SetEchoMode";Items=(kNormal="Normal",kNoEcho="No Echo",kPasswo rd="Password")}* | |||
EInsertMode fInsertMode; // *OPTION={GetMethod="GetInsertMo de";SetMethod="SetInsertMode";Items=(kInsert="Insert",kReplace="Replace")}* | EInsertMode fInsertMode; // *OPTION={GetMethod="GetInsertMo de";SetMethod="SetInsertMode";Items=(kInsert="Insert",kReplace="Replace")}* | |||
ETextJustification fAlignment; // *OPTION={GetMethod="GetAlignmen t";SetMethod="SetAlignment";Items=(kTextLeft="Left",kTextCenterX="Center",k TextRight="Right")}* | ETextJustification fAlignment; // *OPTION={GetMethod="GetAlignmen t";SetMethod="SetAlignment";Items=(kTextLeft="Left",kTextCenterX="Center",k TextRight="Right")}* | |||
Bool_t fHasOwnFont; // kTRUE - font defined locally, kFALSE - globally | Bool_t fHasOwnFont; // kTRUE - font defined locally, kFALSE - globally | |||
UInt_t fDefWidth; // default width | ||||
UInt_t fDefHeight; // default height | ||||
void CopyText() const; | void CopyText() const; | |||
virtual void DoRedraw(); | virtual void DoRedraw(); | |||
Int_t GetCharacterIndex(Int_t xcoord); | Int_t GetCharacterIndex(Int_t xcoord); | |||
virtual void Init(); | virtual void Init(); | |||
virtual Bool_t IsCursorOutOfFrame(); | virtual Bool_t IsCursorOutOfFrame(); | |||
void Paste(); | void Paste(); | |||
virtual void PastePrimary(Window_t wid, Atom_t property, Bool_t del); | virtual void PastePrimary(Window_t wid, Atom_t property, Bool_t del); | |||
virtual void ScrollByChar(); | virtual void ScrollByChar(); | |||
virtual void UpdateOffset(); | virtual void UpdateOffset(); | |||
skipping to change at line 114 | skipping to change at line 116 | |||
GContext_t norm = GetDefaultGC()(), | GContext_t norm = GetDefaultGC()(), | |||
FontStruct_t font = GetDefaultFontStruct(), | FontStruct_t font = GetDefaultFontStruct(), | |||
UInt_t option = kSunkenFrame | kDoubleBorder, | UInt_t option = kSunkenFrame | kDoubleBorder, | |||
Pixel_t back = GetWhitePixel()); | Pixel_t back = GetWhitePixel()); | |||
TGTextEntry(const TGWindow *parent = 0, const char *text = 0, Int_t id = -1); | TGTextEntry(const TGWindow *parent = 0, const char *text = 0, Int_t id = -1); | |||
TGTextEntry(const TString &contents, const TGWindow *parent, Int_t id = -1); | TGTextEntry(const TString &contents, const TGWindow *parent, Int_t id = -1); | |||
virtual ~TGTextEntry(); | virtual ~TGTextEntry(); | |||
virtual TGDimension GetDefaultSize() const; | ||||
virtual void SetDefaultSize(UInt_t w, UInt_t h); | ||||
virtual void AppendText(const char *text); | virtual void AppendText(const char *text); | |||
void Backspace(); | void Backspace(); | |||
void Clear(Option_t *option=""); | void Clear(Option_t *option=""); | |||
void CursorLeft(Bool_t mark = kFALSE , Int_t steps = 1); | void CursorLeft(Bool_t mark = kFALSE , Int_t steps = 1); | |||
void CursorRight(Bool_t mark = kFALSE , Int_t steps = 1) ; | void CursorRight(Bool_t mark = kFALSE , Int_t steps = 1) ; | |||
void CursorWordForward(Bool_t mark = kFALSE); | void CursorWordForward(Bool_t mark = kFALSE); | |||
void CursorWordBackward(Bool_t mark = kFALSE); | void CursorWordBackward(Bool_t mark = kFALSE); | |||
void Cut(); | void Cut(); | |||
void Del(); | void Del(); | |||
void Deselect(); | void Deselect(); | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
TGX11.h | TGX11.h | |||
---|---|---|---|---|
// @(#)root/x11:$Id: TGX11.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/x11:$Id: TGX11.h 32427 2010-03-01 18:25:58Z 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 35 | skipping to change at line 35 | |||
#include "TVirtualX.h" | #include "TVirtualX.h" | |||
#endif | #endif | |||
#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 "Xpm.h" | ||||
#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; | |||
skipping to change at line 237 | skipping to change at line 236 | |||
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); | |||
void SetTextMagnitude(Float_t mgn=1) { fTextMagnitude = mgn;} | void SetTextMagnitude(Float_t mgn=1) { fTextMagnitude = mgn;} | |||
virtual void SetTextSize(Float_t textsize); | virtual void SetTextSize(Float_t textsize); | |||
void Sync(Int_t mode); | void Sync(Int_t mode); | |||
void UpdateWindow(Int_t mode); | void UpdateWindow(Int_t mode); | |||
void Warp(Int_t ix, Int_t iy, Window_t id = 0); | void Warp(Int_t ix, Int_t iy, Window_t id = 0); | |||
Int_t WriteGIF(char *name); | Int_t WriteGIF(char *name); | |||
void WritePixmap(Int_t wid, UInt_t w, UInt_t h, char *pxname); | void WritePixmap(Int_t wid, UInt_t w, UInt_t h, char *pxname); | |||
Window_t GetCurrentWindow() const; | Window_t GetCurrentWindow() const; | |||
Int_t SupportsExtension(const char *ext) const; | ||||
//---- Methods used for GUI ----- | //---- Methods used for GUI ----- | |||
void GetWindowAttributes(Window_t id, WindowAttributes_t &attr); | void GetWindowAttributes(Window_t id, WindowAttributes_t &attr); | |||
void MapWindow(Window_t id); | void MapWindow(Window_t id); | |||
void MapSubwindows(Window_t id); | void MapSubwindows(Window_t id); | |||
void MapRaised(Window_t id); | void MapRaised(Window_t id); | |||
void UnmapWindow(Window_t id); | void UnmapWindow(Window_t id); | |||
void DestroyWindow(Window_t id); | void DestroyWindow(Window_t id); | |||
void DestroySubwindows(Window_t id); | void DestroySubwindows(Window_t id); | |||
void RaiseWindow(Window_t id); | void RaiseWindow(Window_t id); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
TGenericClassInfo.h | TGenericClassInfo.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TGenericClassInfo.h 30815 2009-10-20 13:49:22Z rdm $ | // @(#)root/base:$Id: TGenericClassInfo.h 32337 2010-02-12 16:09:35Z pcanal $ | |||
// Author: Philippe Canal 23/2/02 | // Author: Philippe Canal 23/2/02 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2002, Rene Brun, Fons Rademakers and al. * | * Copyright (C) 1995-2002, Rene Brun, Fons Rademakers and al. * | |||
* 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 49 | skipping to change at line 49 | |||
const TInitBehavior *fAction; | const TInitBehavior *fAction; | |||
TClass *fClass; | TClass *fClass; | |||
const char *fClassName; | const char *fClassName; | |||
const char *fDeclFileName; | const char *fDeclFileName; | |||
Int_t fDeclFileLine; | Int_t fDeclFileLine; | |||
VoidFuncPtr_t fDictionary; | VoidFuncPtr_t fDictionary; | |||
const type_info &fInfo; | const type_info &fInfo; | |||
const char *fImplFileName; | const char *fImplFileName; | |||
Int_t fImplFileLine; | Int_t fImplFileLine; | |||
TVirtualIsAProxy *fIsA; | TVirtualIsAProxy *fIsA; | |||
void *fShowMembers; | ShowMembersFunc_t fShowMembers; | |||
Int_t fVersion; | Int_t fVersion; | |||
NewFunc_t fNew; | NewFunc_t fNew; | |||
NewArrFunc_t fNewArray; | NewArrFunc_t fNewArray; | |||
DelFunc_t fDelete; | DelFunc_t fDelete; | |||
DelArrFunc_t fDeleteArray; | DelArrFunc_t fDeleteArray; | |||
DesFunc_t fDestructor; | DesFunc_t fDestructor; | |||
DirAutoAdd_t fDirAutoAdd; | DirAutoAdd_t fDirAutoAdd; | |||
TClassStreamer *fStreamer; | TClassStreamer *fStreamer; | |||
TVirtualCollectionProxy *fCollectionProxy; | TVirtualCollectionProxy *fCollectionProxy; | |||
Int_t fSizeof; | Int_t fSizeof; | |||
TCollectionProxyInfo *fCollectionProxyInfo; | TCollectionProxyInfo *fCollectionProxyInfo; | |||
TCollectionProxyInfo *fCollectionStreamerInfo; | TCollectionProxyInfo *fCollectionStreamerInfo; | |||
std::vector<TSchemaHelper> fReadRules; | std::vector<TSchemaHelper> fReadRules; | |||
std::vector<TSchemaHelper> fReadRawRules; | std::vector<TSchemaHelper> fReadRawRules; | |||
public: | public: | |||
TGenericClassInfo(const char *fullClassname, | TGenericClassInfo(const char *fullClassname, | |||
const char *declFileName, Int_t declFileLine, | const char *declFileName, Int_t declFileLine, | |||
const type_info &info, const TInitBehavior *action, | const type_info &info, const TInitBehavior *action, | |||
void *showmembers, VoidFuncPtr_t dictionary, | ShowMembersFunc_t showmembers, VoidFuncPtr_t diction ary, | |||
TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | |||
TGenericClassInfo(const char *fullClassname, Int_t version, | TGenericClassInfo(const char *fullClassname, Int_t version, | |||
const char *declFileName, Int_t declFileLine, | const char *declFileName, Int_t declFileLine, | |||
const type_info &info, const TInitBehavior *action, | const type_info &info, const TInitBehavior *action, | |||
void *showmembers, VoidFuncPtr_t dictionary, | ShowMembersFunc_t showmembers, VoidFuncPtr_t dictio nary, | |||
TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | |||
TGenericClassInfo(const char *fullClassname, Int_t version, | TGenericClassInfo(const char *fullClassname, Int_t version, | |||
const char *declFileName, Int_t declFileLine, | const char *declFileName, Int_t declFileLine, | |||
const type_info &info, const TInitBehavior *action, | const type_info &info, const TInitBehavior *action, | |||
VoidFuncPtr_t dictionary, | VoidFuncPtr_t dictionary, | |||
TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | TVirtualIsAProxy *isa, Int_t pragmabits, Int_t sizof ); | |||
TGenericClassInfo(const char *fullClassname, Int_t version, | TGenericClassInfo(const char *fullClassname, Int_t version, | |||
const char *declFileName, Int_t declFileLine, | const char *declFileName, Int_t declFileLine, | |||
skipping to change at line 111 | skipping to change at line 111 | |||
DesFunc_t GetDestructor() const; | DesFunc_t GetDestructor() const; | |||
DirAutoAdd_t GetDirectoryAutoAdd() const; | DirAutoAdd_t GetDirectoryAutoAdd() const; | |||
const char *GetImplFileName(); | const char *GetImplFileName(); | |||
Int_t GetImplFileLine(); | Int_t GetImplFileLine(); | |||
const type_info &GetInfo() const; | const type_info &GetInfo() const; | |||
TVirtualIsAProxy *GetIsA() const; | TVirtualIsAProxy *GetIsA() const; | |||
NewFunc_t GetNew() const; | NewFunc_t GetNew() const; | |||
NewArrFunc_t GetNewArray() const; | NewArrFunc_t GetNewArray() const; | |||
const std::vector<TSchemaHelper> &GetReadRawRules() const; | const std::vector<TSchemaHelper> &GetReadRawRules() const; | |||
const std::vector<TSchemaHelper> &GetReadRules() const; | const std::vector<TSchemaHelper> &GetReadRules() const; | |||
void *GetShowMembers() const; | ShowMembersFunc_t GetShowMembers() const; | |||
Int_t GetVersion() const; | Int_t GetVersion() const; | |||
TClass *IsA(const void *obj); | TClass *IsA(const void *obj); | |||
Short_t AdoptStreamer(TClassStreamer*); | Short_t AdoptStreamer(TClassStreamer*); | |||
Short_t AdoptCollectionProxy(TVirtualCollec tionProxy*); | Short_t AdoptCollectionProxy(TVirtualCollec tionProxy*); | |||
void AdoptCollectionProxyInfo(TCollectio nProxyInfo*); | void AdoptCollectionProxyInfo(TCollectio nProxyInfo*); | |||
void AdoptCollectionStreamerInfo(TCollec tionProxyInfo*); | void AdoptCollectionStreamerInfo(TCollec tionProxyInfo*); | |||
Int_t SetDeclFile(const char *file, Int_t line); | Int_t SetDeclFile(const char *file, Int_t line); | |||
void SetDelete(DelFunc_t deleteFunc); | void SetDelete(DelFunc_t deleteFunc); | |||
End of changes. 5 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
TGeoBoolNode.h | TGeoBoolNode.h | |||
---|---|---|---|---|
// @(#):$Id: TGeoBoolNode.h 25878 2008-10-18 19:12:08Z rdm $ | // @(#):$Id: TGeoBoolNode.h 32690 2010-03-21 08:47:56Z brun $ | |||
// Author: Andrei Gheata 30/05/02 | // Author: Andrei Gheata 30/05/02 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 51 | skipping to change at line 51 | |||
private: | private: | |||
TGeoBoolNode(const TGeoBoolNode&); // Not implemented | TGeoBoolNode(const TGeoBoolNode&); // Not implemented | |||
TGeoBoolNode& operator=(const TGeoBoolNode&); // Not implemented | TGeoBoolNode& operator=(const TGeoBoolNode&); // Not implemented | |||
protected: | protected: | |||
Int_t fSelected; // ! selected branch | Int_t fSelected; // ! selected branch | |||
TGeoShape *fLeft; // shape on the left branch | TGeoShape *fLeft; // shape on the left branch | |||
TGeoShape *fRight; // shape on the right branch | TGeoShape *fRight; // shape on the right branch | |||
TGeoMatrix *fLeftMat; // transformation that applies to the left branch | TGeoMatrix *fLeftMat; // transformation that applies to the left branch | |||
TGeoMatrix *fRightMat; // transformation that applies to the right branch | TGeoMatrix *fRightMat; // transformation that applies to the right branch | |||
Int_t fNpoints; //! number of points on the mesh | ||||
Double_t *fPoints; //! array of mesh points | ||||
// methods | // methods | |||
Bool_t MakeBranch(const char *expr, Bool_t left); | Bool_t MakeBranch(const char *expr, Bool_t left); | |||
public: | public: | |||
// constructors | // constructors | |||
TGeoBoolNode(); | TGeoBoolNode(); | |||
TGeoBoolNode(const char *expr1, const char *expr2); | TGeoBoolNode(const char *expr1, const char *expr2); | |||
TGeoBoolNode(TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=0, TGeo Matrix *rmat=0); | TGeoBoolNode(TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=0, TGeo Matrix *rmat=0); | |||
// destructor | // destructor | |||
virtual ~TGeoBoolNode(); | virtual ~TGeoBoolNode(); | |||
// methods | // methods | |||
virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin) = 0; | virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin) = 0; | |||
virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm) = 0; | virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm) = 0; | |||
virtual Bool_t Contains(Double_t *point) const = 0; | virtual Bool_t Contains(Double_t *point) const = 0; | |||
virtual Int_t DistanceToPrimitive(Int_t px, Int_t py) = 0; | virtual Int_t DistanceToPrimitive(Int_t px, Int_t py) = 0; | |||
virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | |||
Double_t step=0, Double_t *safe=0) const = 0 ; | Double_t step=0, Double_t *safe=0) const = 0 ; | |||
virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | |||
Double_t step=0, Double_t *safe=0) const = 0 ; | Double_t step=0, Double_t *safe=0) const = 0 ; | |||
virtual EGeoBoolType GetBooleanOperator() const = 0; | virtual EGeoBoolType GetBooleanOperator() const = 0; | |||
virtual Int_t GetNpoints() const = 0; | virtual Int_t GetNpoints() = 0; | |||
TGeoMatrix *GetLeftMatrix() const {return fLeftMat;} | TGeoMatrix *GetLeftMatrix() const {return fLeftMat;} | |||
TGeoMatrix *GetRightMatrix() const {return fRightMat;} | TGeoMatrix *GetRightMatrix() const {return fRightMat;} | |||
TGeoShape *GetLeftShape() const {return fLeft;} | TGeoShape *GetLeftShape() const {return fLeft;} | |||
TGeoShape *GetRightShape() const {return fRight;} | TGeoShape *GetRightShape() const {return fRight;} | |||
virtual void Paint(Option_t *option); | virtual void Paint(Option_t *option); | |||
void RegisterMatrices(); | void RegisterMatrices(); | |||
virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const = 0; | virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const = 0; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetPoints(Double_t *points) const = 0; | virtual void SetPoints(Double_t *points) const; | |||
virtual void SetPoints(Float_t *points) const = 0; | virtual void SetPoints(Float_t *points) const; | |||
void SetSelected(Int_t sel) {fSelected = sel;} | void SetSelected(Int_t sel) {fSelected = sel;} | |||
virtual void Sizeof3D() const; | virtual void Sizeof3D() const; | |||
ClassDef(TGeoBoolNode, 1) // a boolean node | ClassDef(TGeoBoolNode, 1) // a boolean node | |||
}; | }; | |||
/////////////////////////////////////////////////////////////////////////// /// | /////////////////////////////////////////////////////////////////////////// /// | |||
// // | // // | |||
// TGeoUnion - Boolean node representing a union between two components. // | // TGeoUnion - Boolean node representing a union between two components. // | |||
// // | // // | |||
skipping to change at line 114 | skipping to change at line 116 | |||
// methods | // methods | |||
virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | |||
virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | |||
virtual Bool_t Contains(Double_t *point) const; | virtual Bool_t Contains(Double_t *point) const; | |||
virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | |||
virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual EGeoBoolType GetBooleanOperator() const {return kGeoUnion;} | virtual EGeoBoolType GetBooleanOperator() const {return kGeoUnion;} | |||
virtual Int_t GetNpoints() const; | virtual Int_t GetNpoints(); | |||
virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetPoints(Double_t *points) const; | ||||
virtual void SetPoints(Float_t *points) const; | ||||
virtual void Sizeof3D() const; | virtual void Sizeof3D() const; | |||
//CS specific | //CS specific | |||
virtual void Paint(Option_t *option); | virtual void Paint(Option_t *option); | |||
ClassDef(TGeoUnion, 1) // union node | ClassDef(TGeoUnion, 1) // union node | |||
}; | }; | |||
/////////////////////////////////////////////////////////////////////////// /// | /////////////////////////////////////////////////////////////////////////// /// | |||
// // | // // | |||
skipping to change at line 154 | skipping to change at line 154 | |||
// methods | // methods | |||
virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | |||
virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | |||
virtual Bool_t Contains(Double_t *point) const; | virtual Bool_t Contains(Double_t *point) const; | |||
virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | |||
virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual EGeoBoolType GetBooleanOperator() const {return kGeoIntersection ;} | virtual EGeoBoolType GetBooleanOperator() const {return kGeoIntersection ;} | |||
virtual Int_t GetNpoints() const; | virtual Int_t GetNpoints(); | |||
virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetPoints(Double_t *points) const; | ||||
virtual void SetPoints(Float_t *points) const; | ||||
virtual void Sizeof3D() const; | virtual void Sizeof3D() const; | |||
//CS specific | //CS specific | |||
virtual void Paint(Option_t *option); | virtual void Paint(Option_t *option); | |||
ClassDef(TGeoIntersection, 1) // intersection node | ClassDef(TGeoIntersection, 1) // intersection node | |||
}; | }; | |||
/////////////////////////////////////////////////////////////////////////// /// | /////////////////////////////////////////////////////////////////////////// /// | |||
// // | // // | |||
skipping to change at line 193 | skipping to change at line 191 | |||
// methods | // methods | |||
virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | virtual void ComputeBBox(Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin); | |||
virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | virtual void ComputeNormal(Double_t *point, Double_t *dir, Double_t *norm); | |||
virtual Bool_t Contains(Double_t *point) const; | virtual Bool_t Contains(Double_t *point) const; | |||
virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | virtual Int_t DistanceToPrimitive(Int_t px, Int_t py); | |||
virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t i act=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact=1, | |||
Double_t step=0, Double_t *safe=0) const; | Double_t step=0, Double_t *safe=0) const; | |||
virtual EGeoBoolType GetBooleanOperator() const {return kGeoSubtraction; } | virtual EGeoBoolType GetBooleanOperator() const {return kGeoSubtraction; } | |||
virtual Int_t GetNpoints() const; | virtual Int_t GetNpoints(); | |||
virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | virtual Double_t Safety(Double_t *point, Bool_t in=kTRUE) const; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetPoints(Double_t *points) const; | ||||
virtual void SetPoints(Float_t *points) const; | ||||
virtual void Sizeof3D() const; | virtual void Sizeof3D() const; | |||
//CS specific | //CS specific | |||
virtual void Paint(Option_t *option); | virtual void Paint(Option_t *option); | |||
ClassDef(TGeoSubtraction, 1) // subtraction node | ClassDef(TGeoSubtraction, 1) // subtraction node | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 10 change blocks. | ||||
13 lines changed or deleted | 9 lines changed or added | |||
TGeoCompositeShape.h | TGeoCompositeShape.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoCompositeShape.h 24879 2008-07-18 08:04:40Z brun $ | // @(#)root/geom:$Id: TGeoCompositeShape.h 32690 2010-03-21 08:47:56Z brun $ | |||
// Author: Andrei Gheata 31/01/02 | // Author: Andrei Gheata 31/01/02 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 | |||
TGeoCompositeShape(const char *name, const char *expression); | TGeoCompositeShape(const char *name, const char *expression); | |||
TGeoCompositeShape(const char *expression); | TGeoCompositeShape(const char *expression); | |||
TGeoCompositeShape(const char *name, TGeoBoolNode *node); | TGeoCompositeShape(const char *name, TGeoBoolNode *node); | |||
// destructor | // destructor | |||
virtual ~TGeoCompositeShape(); | virtual ~TGeoCompositeShape(); | |||
// methods | // methods | |||
virtual Double_t Capacity() const; | virtual Double_t Capacity() const; | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
virtual void ComputeNormal(Double_t *point, Double_t *dir, Doub le_t *norm); | virtual void ComputeNormal(Double_t *point, Double_t *dir, Doub le_t *norm); | |||
virtual Bool_t Contains(Double_t *point) const; | virtual Bool_t Contains(Double_t *point) const; | |||
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py); | ||||
virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int _t iact=1, | virtual Double_t DistFromInside(Double_t *point, Double_t *dir, Int _t iact=1, | |||
Double_t step=TGeoShape::Big(), Double_t *safe=0) const; | Double_t step=TGeoShape::Big(), Double_t *safe=0) const; | |||
virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, In t_t iact=1, | virtual Double_t DistFromOutside(Double_t *point, Double_t *dir, In t_t iact=1, | |||
Double_t step=TGeoShape::Big(), Double_t *safe=0) const; | Double_t step=TGeoShape::Big(), Double_t *safe=0) const; | |||
virtual TGeoVolume *Divide(TGeoVolume *voldiv, const char *divname, In t_t iaxis, Int_t ndiv, | virtual TGeoVolume *Divide(TGeoVolume *voldiv, const char *divname, In t_t iaxis, Int_t ndiv, | |||
Double_t start, Double_t step); | Double_t start, Double_t step); | |||
TGeoBoolNode *GetBoolNode() const {return fNode;} | TGeoBoolNode *GetBoolNode() const {return fNode;} | |||
virtual void GetBoundingCylinder(Double_t * /*param*/) const {; } | virtual void GetBoundingCylinder(Double_t * /*param*/) const {; } | |||
virtual TGeoShape *GetMakeRuntimeShape(TGeoShape * /*mother*/, TGeoMa trix * /*mat*/) const {return 0;} | virtual TGeoShape *GetMakeRuntimeShape(TGeoShape * /*mother*/, TGeoMa trix * /*mat*/) const {return 0;} | |||
virtual void GetMeshNumbers(Int_t &nvert, Int_t &nsegs, Int_t & npols) const; | virtual void GetMeshNumbers(Int_t &nvert, Int_t &nsegs, Int_t & npols) const; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TGeoElement.h | TGeoElement.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoElement.h 21425 2007-12-17 15:59:27Z brun $ | // @(#)root/geom:$Id: TGeoElement.h 32677 2010-03-18 15:27:12Z brun $ | |||
// Author: Andrei Gheata 17/06/04 | // Author: Andrei Gheata 17/06/04 | |||
// Added support for radionuclides: Mihaela Gheata 24/08/2006 | // Added support for radionuclides: Mihaela Gheata 24/08/2006 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 38 | skipping to change at line 38 | |||
#include "TAttMarker.h" | #include "TAttMarker.h" | |||
#endif | #endif | |||
#ifndef ROOT_TObjArray | #ifndef ROOT_TObjArray | |||
#include "TObjArray.h" | #include "TObjArray.h" | |||
#endif | #endif | |||
#include <map> | #include <map> | |||
class TGeoElementTable; | class TGeoElementTable; | |||
class TGeoIsotope; | ||||
/////////////////////////////////////////////////////////////////////////// / | /////////////////////////////////////////////////////////////////////////// / | |||
// / / | // / / | |||
// TGeoElement - a chemical element / / | // TGeoElement - a chemical element / / | |||
// / / | // / / | |||
/////////////////////////////////////////////////////////////////////////// / | /////////////////////////////////////////////////////////////////////////// / | |||
class TGeoElement : public TNamed | class TGeoElement : public TNamed | |||
{ | { | |||
protected: | protected: | |||
enum EGeoElement { | enum EGeoElement { | |||
kElemUsed = BIT(17), | kElemUsed = BIT(17), | |||
kElemDefined = BIT(18), | kElemDefined = BIT(18), | |||
kElementChecked = BIT(19) | kElementChecked = BIT(19) | |||
}; | }; | |||
Int_t fZ; // Z of material | Int_t fZ; // Z of element | |||
Double_t fA; // A of material | Int_t fN; // Number of nucleons | |||
Int_t fNisotopes; // Number of isotopes for the elem | ||||
ent | ||||
Double_t fA; // A of element | ||||
TObjArray *fIsotopes; // List of isotopes | ||||
Double_t *fAbundances; //[fNisotopes] Array of relative i | ||||
sotope abundances | ||||
private: | ||||
TGeoElement(const TGeoElement &other); | ||||
TGeoElement &operator=(const TGeoElement &other); | ||||
public: | public: | |||
// constructors | // constructors | |||
TGeoElement(); | TGeoElement(); | |||
TGeoElement(const char *name, const char *title, Int_t z, Double_t a); | TGeoElement(const char *name, const char *title, Int_t z, Double_t a); | |||
TGeoElement(const char *name, const char *title, Int_t nisotopes); | ||||
TGeoElement(const char *name, const char *title, Int_t z, Int_t n, Doubl | ||||
e_t a); | ||||
// destructor | // destructor | |||
virtual ~TGeoElement() {;} | virtual ~TGeoElement() {;} | |||
// methods | // methods | |||
virtual Int_t ENDFCode() const { return 0;} | virtual Int_t ENDFCode() const { return 0;} | |||
Int_t Z() const {return fZ;} | Int_t Z() const {return fZ;} | |||
Int_t N() const {return fN;} | ||||
Double_t A() const {return fA;} | Double_t A() const {return fA;} | |||
void AddIsotope(TGeoIsotope *isotope, Double_t relat | ||||
iveAbundance); | ||||
Int_t GetNisotopes() const {return fNisotopes;} | ||||
TGeoIsotope *GetIsotope(Int_t i) const; | ||||
Double_t GetRelativeAbundance(Int_t i) const; | ||||
Bool_t HasIsotopes() const {return (fNisotopes==0)?kFA | ||||
LSE:kTRUE;} | ||||
Bool_t IsDefined() const {return TObject::TestBit(kEle mDefined);} | Bool_t IsDefined() const {return TObject::TestBit(kEle mDefined);} | |||
virtual Bool_t IsRadioNuclide() const {return kFALSE;} | virtual Bool_t IsRadioNuclide() const {return kFALSE;} | |||
Bool_t IsUsed() const {return TObject::TestBit(kElemUs ed);} | Bool_t IsUsed() const {return TObject::TestBit(kElemUs ed);} | |||
virtual void Print(Option_t *option = "") const; | ||||
void SetDefined(Bool_t flag=kTRUE) {TObject::SetBit( kElemDefined,flag);} | void SetDefined(Bool_t flag=kTRUE) {TObject::SetBit( kElemDefined,flag);} | |||
void SetUsed(Bool_t flag=kTRUE) {TObject::SetBit(kEl emUsed,flag);} | void SetUsed(Bool_t flag=kTRUE) {TObject::SetBit(kEl emUsed,flag);} | |||
TGeoElementTable *GetElementTable() const; | static TGeoElementTable *GetElementTable(); | |||
ClassDef(TGeoElement, 2) // base element class | ||||
}; | ||||
/////////////////////////////////////////////////////////////////////////// | ||||
/ | ||||
// / | ||||
/ | ||||
// TGeoIsotope - a isotope defined by the atomic number, number of / | ||||
/ | ||||
// nucleons and atomic weight (g/mole) / | ||||
/ | ||||
// / | ||||
/ | ||||
/////////////////////////////////////////////////////////////////////////// | ||||
/ | ||||
ClassDef(TGeoElement, 1) // base element class | class TGeoIsotope : public TNamed | |||
{ | ||||
protected: | ||||
Int_t fZ; // atomic number | ||||
Int_t fN; // number of nucleons | ||||
Double_t fA; // atomic mass (g/mole) | ||||
public: | ||||
TGeoIsotope(); | ||||
TGeoIsotope(const char *name, Int_t z, Int_t n, Double_t a); | ||||
virtual ~TGeoIsotope() {} | ||||
Int_t GetZ() const {return fZ;} | ||||
Int_t GetN() const {return fN;} | ||||
Double_t GetA() const {return fA;} | ||||
static TGeoIsotope *FindIsotope(const char *name); | ||||
virtual void Print(Option_t *option = "") const; | ||||
ClassDef(TGeoIsotope, 1) // Isotope class defined by Z,N,A | ||||
}; | }; | |||
/////////////////////////////////////////////////////////////////////////// / | /////////////////////////////////////////////////////////////////////////// / | |||
// / / | // / / | |||
// TGeoElementRN - a radionuclide. / / | // TGeoElementRN - a radionuclide. / / | |||
// / / | // / / | |||
/////////////////////////////////////////////////////////////////////////// / | /////////////////////////////////////////////////////////////////////////// / | |||
class TGeoDecayChannel; | class TGeoDecayChannel; | |||
class TGeoBatemanSol; | class TGeoBatemanSol; | |||
skipping to change at line 107 | skipping to change at line 153 | |||
Double_t fTG_F; // Ingestion toxicity | Double_t fTG_F; // Ingestion toxicity | |||
Double_t fTH_S; // Hynalation toxicity | Double_t fTH_S; // Hynalation toxicity | |||
Double_t fTG_S; // Ingestion toxicity | Double_t fTG_S; // Ingestion toxicity | |||
Int_t fStatus; // Status code | Int_t fStatus; // Status code | |||
TGeoBatemanSol *fRatio; // Time evolution of proportion by n umber | TGeoBatemanSol *fRatio; // Time evolution of proportion by n umber | |||
TObjArray *fDecays; // List of decay modes | TObjArray *fDecays; // List of decay modes | |||
void MakeName(Int_t a, Int_t z, Int_t iso); | void MakeName(Int_t a, Int_t z, Int_t iso); | |||
private: | ||||
TGeoElementRN(const TGeoElementRN& elem); | TGeoElementRN(const TGeoElementRN& elem); | |||
TGeoElementRN& operator=(const TGeoElementRN& elem); | TGeoElementRN& operator=(const TGeoElementRN& elem); | |||
public: | public: | |||
TGeoElementRN(); | TGeoElementRN(); | |||
TGeoElementRN(Int_t A, Int_t Z, Int_t iso, Double_t level, | TGeoElementRN(Int_t A, Int_t Z, Int_t iso, Double_t level, | |||
Double_t deltaM, Double_t halfLife, const char* JP, | Double_t deltaM, Double_t halfLife, const char* JP, | |||
Double_t natAbun, Double_t th_f, Double_t tg_f, Double_t th_s, | Double_t natAbun, Double_t th_f, Double_t tg_f, Double_t th_s, | |||
Double_t tg_s, Int_t status); | Double_t tg_s, Int_t status); | |||
virtual ~TGeoElementRN(); | virtual ~TGeoElementRN(); | |||
void AddDecay(Int_t decay, Int_t diso, Double_t bran chingRatio, Double_t qValue); | void AddDecay(Int_t decay, Int_t diso, Double_t bran chingRatio, Double_t qValue); | |||
void AddDecay(TGeoDecayChannel *dc); | void AddDecay(TGeoDecayChannel *dc); | |||
skipping to change at line 320 | skipping to change at line 368 | |||
// TGeoElementTable - table of elements / / | // TGeoElementTable - table of elements / / | |||
// / / | // / / | |||
/////////////////////////////////////////////////////////////////////////// / | /////////////////////////////////////////////////////////////////////////// / | |||
class TGeoElementTable : public TObject | class TGeoElementTable : public TObject | |||
{ | { | |||
private: | private: | |||
// data members | // data members | |||
Int_t fNelements; // number of elements | Int_t fNelements; // number of elements | |||
Int_t fNelementsRN; // number of RN elements | Int_t fNelementsRN; // number of RN elements | |||
Int_t fNisotopes; // number of isotopes | ||||
TObjArray *fList; // list of elements | TObjArray *fList; // list of elements | |||
TObjArray *fListRN; // list of RN elements | TObjArray *fListRN; // list of RN elements | |||
TObjArray *fIsotopes; // list of user-defined isotopes | ||||
// Map of radionuclides | // Map of radionuclides | |||
typedef std::map<Int_t, TGeoElementRN *> ElementRNMap_t; | typedef std::map<Int_t, TGeoElementRN *> ElementRNMap_t; | |||
typedef ElementRNMap_t::iterator ElementRNMapIt_t; | typedef ElementRNMap_t::iterator ElementRNMapIt_t; | |||
ElementRNMap_t fElementsRN; //! map of RN elements with ENDF k ey | ElementRNMap_t fElementsRN; //! map of RN elements with ENDF k ey | |||
protected: | protected: | |||
TGeoElementTable(const TGeoElementTable&); | TGeoElementTable(const TGeoElementTable&); | |||
TGeoElementTable& operator=(const TGeoElementTable&); | TGeoElementTable& operator=(const TGeoElementTable&); | |||
public: | public: | |||
skipping to change at line 344 | skipping to change at line 394 | |||
TGeoElementTable(Int_t nelements); | TGeoElementTable(Int_t nelements); | |||
// destructor | // destructor | |||
virtual ~TGeoElementTable(); | virtual ~TGeoElementTable(); | |||
// methods | // methods | |||
enum EGeoETStatus { | enum EGeoETStatus { | |||
kETDefaultElements = BIT(14), | kETDefaultElements = BIT(14), | |||
kETRNElements = BIT(15) | kETRNElements = BIT(15) | |||
}; | }; | |||
void AddElement(const char *name, const char *title, Int_t z, Double_t a); | void AddElement(const char *name, const char *title, Int_t z, Double_t a); | |||
void AddElement(const char *name, const char *title, Int_t z, Int_t n, Double_t a); | ||||
void AddElementRN(TGeoElementRN *elem); | void AddElementRN(TGeoElementRN *elem); | |||
void AddIsotope(TGeoIsotope *isotope); | ||||
void BuildDefaultElements(); | void BuildDefaultElements(); | |||
void ImportElementsRN(); | void ImportElementsRN(); | |||
Bool_t CheckTable() const; | Bool_t CheckTable() const; | |||
TGeoElement *FindElement(const char *name); | TGeoElement *FindElement(const char *name) const; | |||
TGeoIsotope *FindIsotope(const char *name) const; | ||||
TGeoElement *GetElement(Int_t z) {return (TGeoElement*)fList ->At(z);} | TGeoElement *GetElement(Int_t z) {return (TGeoElement*)fList ->At(z);} | |||
TGeoElementRN *GetElementRN(Int_t ENDFcode) const; | TGeoElementRN *GetElementRN(Int_t ENDFcode) const; | |||
TGeoElementRN *GetElementRN(Int_t a, Int_t z, Int_t iso=0) con st; | TGeoElementRN *GetElementRN(Int_t a, Int_t z, Int_t iso=0) con st; | |||
TObjArray *GetElementsRN() const {return fListRN;} | TObjArray *GetElementsRN() const {return fListRN;} | |||
Bool_t HasDefaultElements() const {return TObject::Tes tBit(kETDefaultElements);} | Bool_t HasDefaultElements() const {return TObject::Tes tBit(kETDefaultElements);} | |||
Bool_t HasRNElements() const {return TObject::TestBit( kETRNElements);} | Bool_t HasRNElements() const {return TObject::TestBit( kETRNElements);} | |||
Int_t GetNelements() const {return fNelements;} | Int_t GetNelements() const {return fNelements;} | |||
Int_t GetNelementsRN() const {return fNelementsRN;} | Int_t GetNelementsRN() const {return fNelementsRN;} | |||
void ExportElementsRN(const char *filename=""); | void ExportElementsRN(const char *filename=""); | |||
ClassDef(TGeoElementTable,3) // table of elements | ClassDef(TGeoElementTable,4) // table of elements | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 17 change blocks. | ||||
7 lines changed or deleted | 71 lines changed or added | |||
TGeoManager.h | TGeoManager.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoManager.h 27749 2009-03-10 15:23:52Z brun $ | // @(#)root/geom:$Id: TGeoManager.h 33212 2010-04-26 12:19:20Z agheata $ | |||
// Author: Andrei Gheata 25/10/01 | // Author: Andrei Gheata 25/10/01 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 362 | skipping to change at line 362 | |||
void EnableInactiveVolumes() {fActivity=kFALSE;} | void EnableInactiveVolumes() {fActivity=kFALSE;} | |||
void SetCurrentTrack(Int_t i) {fCurrentTrack = (TVirtu alGeoTrack*)fTracks->At(i);} | void SetCurrentTrack(Int_t i) {fCurrentTrack = (TVirtu alGeoTrack*)fTracks->At(i);} | |||
void SetCurrentTrack(TVirtualGeoTrack *track) {fCurren tTrack=track;} | void SetCurrentTrack(TVirtualGeoTrack *track) {fCurren tTrack=track;} | |||
Int_t GetNtracks() const {return fNtracks;} | Int_t GetNtracks() const {return fNtracks;} | |||
TVirtualGeoTrack *GetCurrentTrack() {return fCurrentTrack;} | TVirtualGeoTrack *GetCurrentTrack() {return fCurrentTrack;} | |||
TVirtualGeoTrack *GetLastTrack() {return (TVirtualGeoTrack*)((fNtra cks>0)?fTracks->At(fNtracks-1):NULL);} | TVirtualGeoTrack *GetLastTrack() {return (TVirtualGeoTrack*)((fNtra cks>0)?fTracks->At(fNtracks-1):NULL);} | |||
const Double_t *GetLastPoint() const {return fCurrentNavigator->G etLastPoint();} | const Double_t *GetLastPoint() const {return fCurrentNavigator->G etLastPoint();} | |||
TVirtualGeoTrack *GetTrack(Int_t index) {return (index<fNtr acks)?(TVirtualGeoTrack*)fTracks->At(index):0;} | TVirtualGeoTrack *GetTrack(Int_t index) {return (index<fNtr acks)?(TVirtualGeoTrack*)fTracks->At(index):0;} | |||
Int_t GetTrackIndex(Int_t id) const; | Int_t GetTrackIndex(Int_t id) const; | |||
TVirtualGeoTrack *GetTrackOfId(Int_t id) const; | TVirtualGeoTrack *GetTrackOfId(Int_t id) const; | |||
TVirtualGeoTrack *FindTrackWithId(Int_t id) const; | ||||
TVirtualGeoTrack *GetParentTrackOfId(Int_t id) const; | TVirtualGeoTrack *GetParentTrackOfId(Int_t id) const; | |||
Int_t GetVirtualLevel(); | Int_t GetVirtualLevel(); | |||
Bool_t GotoSafeLevel(); | Bool_t GotoSafeLevel(); | |||
Int_t GetSafeLevel() const; | Int_t GetSafeLevel() const; | |||
Double_t GetSafeDistance() const {return fCurrentNavi gator->GetSafeDistance();} | Double_t GetSafeDistance() const {return fCurrentNavi gator->GetSafeDistance();} | |||
Double_t GetLastSafety() const {return fCurrentNavi gator->GetLastSafety();} | Double_t GetLastSafety() const {return fCurrentNavi gator->GetLastSafety();} | |||
Double_t GetStep() const {return fCurrentNavi gator->GetStep();} | Double_t GetStep() const {return fCurrentNavi gator->GetStep();} | |||
void InspectState() const; | void InspectState() const; | |||
Bool_t IsAnimatingTracks() const {return fIsGeomReadi ng;} | Bool_t IsAnimatingTracks() const {return fIsGeomReadi ng;} | |||
Bool_t IsCheckingOverlaps() const {return fCurrentNavi gator->IsCheckingOverlaps();} | Bool_t IsCheckingOverlaps() const {return fCurrentNavi gator->IsCheckingOverlaps();} | |||
skipping to change at line 437 | skipping to change at line 438 | |||
TObjArray *GetListOfMatrices() const {return fMatrices;} | TObjArray *GetListOfMatrices() const {return fMatrices;} | |||
TList *GetListOfMaterials() const {return fMaterials; } | TList *GetListOfMaterials() const {return fMaterials; } | |||
TList *GetListOfMedia() const {return fMedia;} | TList *GetListOfMedia() const {return fMedia;} | |||
TObjArray *GetListOfVolumes() const {return fVolumes;} | TObjArray *GetListOfVolumes() const {return fVolumes;} | |||
TObjArray *GetListOfGVolumes() const {return fGVolumes;} | TObjArray *GetListOfGVolumes() const {return fGVolumes;} | |||
TObjArray *GetListOfShapes() const {return fShapes;} | TObjArray *GetListOfShapes() const {return fShapes;} | |||
TObjArray *GetListOfGShapes() const {return fGShapes;} | TObjArray *GetListOfGShapes() const {return fGShapes;} | |||
TObjArray *GetListOfUVolumes() const {return fUniqueVolu mes;} | TObjArray *GetListOfUVolumes() const {return fUniqueVolu mes;} | |||
TObjArray *GetListOfTracks() const {return fTracks;} | TObjArray *GetListOfTracks() const {return fTracks;} | |||
TObjArray *GetListOfNavigators() const {return fNavigators ;} | TObjArray *GetListOfNavigators() const {return fNavigators ;} | |||
TGeoElementTable *GetElementTable() const {return fElementTab le;} | TGeoElementTable *GetElementTable(); | |||
//--- modeler state getters/setters | //--- modeler state getters/setters | |||
void DoBackupState(); | void DoBackupState(); | |||
void DoRestoreState(); | void DoRestoreState(); | |||
TGeoNode *GetNode(Int_t level) const {return (TGeoNode*)fN odes->UncheckedAt(level);} | TGeoNode *GetNode(Int_t level) const {return (TGeoNode*)fN odes->UncheckedAt(level);} | |||
Int_t GetNodeId() const {return fCurrentNavig ator->GetNodeId();} | Int_t GetNodeId() const {return fCurrentNavig ator->GetNodeId();} | |||
TGeoNode *GetNextNode() const {return fCurrentNavig ator->GetNextNode();} | TGeoNode *GetNextNode() const {return fCurrentNavig ator->GetNextNode();} | |||
TGeoNode *GetMother(Int_t up=1) const {return fCurrentNavig ator->GetMother(up);} | TGeoNode *GetMother(Int_t up=1) const {return fCurrentNavig ator->GetMother(up);} | |||
TGeoHMatrix *GetMotherMatrix(Int_t up=1) const {return fCurren tNavigator->GetMotherMatrix(up);} | TGeoHMatrix *GetMotherMatrix(Int_t up=1) const {return fCurren tNavigator->GetMotherMatrix(up);} | |||
TGeoHMatrix *GetHMatrix(); | TGeoHMatrix *GetHMatrix(); | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 3 lines changed or added | |||
TGeoMaterialEditor.h | TGeoMaterialEditor.h | |||
---|---|---|---|---|
// @(#):$Id: TGeoMaterialEditor.h 21425 2007-12-17 15:59:27Z brun $ | // @(#):$Id: TGeoMaterialEditor.h 32718 2010-03-23 15:58:34Z rdm $ | |||
// Author: M.Gheata | // Author: M.Gheata | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TGeoMaterialEditor | #ifndef ROOT_TGeoMaterialEditor | |||
skipping to change at line 118 | skipping to change at line 118 | |||
TGComboBox *fMixElem; // Combo box for elements | TGComboBox *fMixElem; // Combo box for elements | |||
TGLabel *fNelem; // Label for number of elements | TGLabel *fNelem; // Label for number of elements | |||
TGLabel *fAelem; // Label for A | TGLabel *fAelem; // Label for A | |||
TGLabel *fZelem; // Label for Z | TGLabel *fZelem; // Label for Z | |||
TGCheckButton *fChkFraction; // Check button for fraction by wght. | TGCheckButton *fChkFraction; // Check button for fraction by wght. | |||
TGNumberEntry *fNEFraction; // Number entry for fraction va lue | TGNumberEntry *fNEFraction; // Number entry for fraction va lue | |||
TGCheckButton *fChkNatoms; // Check button for number of a toms | TGCheckButton *fChkNatoms; // Check button for number of a toms | |||
TGNumberEntry *fNENatoms; // Number entry for number of a toms | TGNumberEntry *fNENatoms; // Number entry for number of a toms | |||
TGTextButton *fBAddElem; // Buttom for adding element as component | TGTextButton *fBAddElem; // Buttom for adding element as component | |||
TGCanvas *fCan; // Canvas with components | TGCompositeFrame *fComps; // Frame with components | |||
virtual void ConnectSignals2Slots(); // Connect the signals to the s lots | virtual void ConnectSignals2Slots(); // Connect the signals to the s lots | |||
public: | public: | |||
TGeoMixtureEditor(const TGWindow *p = 0, | TGeoMixtureEditor(const TGWindow *p = 0, | |||
Int_t width = 140, Int_t height = 30, | Int_t width = 140, Int_t height = 30, | |||
UInt_t options = kChildFrame, | UInt_t options = kChildFrame, | |||
Pixel_t back = GetDefaultFrameBackground()); | Pixel_t back = GetDefaultFrameBackground()); | |||
virtual ~TGeoMixtureEditor() {} | virtual ~TGeoMixtureEditor() {} | |||
virtual void SetModel(TObject *obj); | virtual void SetModel(TObject *obj); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGeoShape.h | TGeoShape.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoShape.h 27731 2009-03-09 17:40:56Z brun $ | // @(#)root/geom:$Id: TGeoShape.h 32208 2010-02-04 13:36:41Z brun $ | |||
// Author: Andrei Gheata 31/01/02 | // Author: Andrei Gheata 31/01/02 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 130 | skipping to change at line 130 | |||
virtual void GetBoundingCylinder(Double_t *param) const = 0; | virtual void GetBoundingCylinder(Double_t *param) const = 0; | |||
virtual const TBuffer3D &GetBuffer3D(Int_t reqSections, Bool_t localFram e) const; | virtual const TBuffer3D &GetBuffer3D(Int_t reqSections, Bool_t localFram e) const; | |||
virtual Int_t GetByteCount() const = 0; | virtual Int_t GetByteCount() const = 0; | |||
virtual Bool_t GetPointsOnSegments(Int_t npoints, Double_t *array ) const = 0; | virtual Bool_t GetPointsOnSegments(Int_t npoints, Double_t *array ) const = 0; | |||
virtual Int_t GetFittingBox(const TGeoBBox *parambox, TGeoMatrix *mat, Double_t &dx, Double_t &dy, Double_t &dz) const = 0; | virtual Int_t GetFittingBox(const TGeoBBox *parambox, TGeoMatrix *mat, Double_t &dx, Double_t &dy, Double_t &dz) const = 0; | |||
Int_t GetId() const {return fShapeId;} | Int_t GetId() const {return fShapeId;} | |||
virtual TGeoShape *GetMakeRuntimeShape(TGeoShape *mother, TGeoMatrix *mat) const = 0; | virtual TGeoShape *GetMakeRuntimeShape(TGeoShape *mother, TGeoMatrix *mat) const = 0; | |||
virtual void GetMeshNumbers(Int_t &/*nvert*/, Int_t &/*nsegs*/, Int_t &/*npols*/) const {;} | virtual void GetMeshNumbers(Int_t &/*nvert*/, Int_t &/*nsegs*/, Int_t &/*npols*/) const {;} | |||
virtual const char *GetName() const; | virtual const char *GetName() const; | |||
virtual Int_t GetNmeshVertices() const {return 0;} | virtual Int_t GetNmeshVertices() const {return 0;} | |||
char *GetPointerName() const; | const char *GetPointerName() const; | |||
virtual Bool_t IsComposite() const {return kFALSE;} | virtual Bool_t IsComposite() const {return kFALSE;} | |||
virtual Bool_t IsCylType() const = 0; | virtual Bool_t IsCylType() const = 0; | |||
static Bool_t IsCloseToPhi(Double_t epsil, Double_t *point, Doub le_t c1, Double_t s1, Double_t c2, Double_t s2); | static Bool_t IsCloseToPhi(Double_t epsil, Double_t *point, Doub le_t c1, Double_t s1, Double_t c2, Double_t s2); | |||
static Bool_t IsCrossingSemiplane(Double_t *point, Double_t *dir , Double_t cphi, Double_t sphi, Double_t &snext, Double_t &rxy); | static Bool_t IsCrossingSemiplane(Double_t *point, Double_t *dir , Double_t cphi, Double_t sphi, Double_t &snext, Double_t &rxy); | |||
static Bool_t IsSameWithinTolerance(Double_t a, Double_t b); | static Bool_t IsSameWithinTolerance(Double_t a, Double_t b); | |||
static Bool_t IsSegCrossing(Double_t x1, Double_t y1, Double_t x 2, Double_t y2,Double_t x3, Double_t y3,Double_t x4, Double_t y4); | static Bool_t IsSegCrossing(Double_t x1, Double_t y1, Double_t x 2, Double_t y2,Double_t x3, Double_t y3,Double_t x4, Double_t y4); | |||
static Bool_t IsInPhiRange(Double_t *point, Double_t phi1, Doubl e_t phi2); | static Bool_t IsInPhiRange(Double_t *point, Double_t phi1, Doubl e_t phi2); | |||
virtual Bool_t IsReflected() const {return kFALSE;} | virtual Bool_t IsReflected() const {return kFALSE;} | |||
Bool_t IsRunTimeShape() const {return TestShapeBit(kGeoRu nTimeShape);} | Bool_t IsRunTimeShape() const {return TestShapeBit(kGeoRu nTimeShape);} | |||
Bool_t IsValid() const {return !TestShapeBit(kGeoInvalidS hape);} | Bool_t IsValid() const {return !TestShapeBit(kGeoInvalidS hape);} | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGrid.h | TGrid.h | |||
---|---|---|---|---|
// @(#)root/net:$Id: TGrid.h 23091 2008-04-09 15:04:27Z rdm $ | // @(#)root/net:$Id: TGrid.h 31993 2010-01-12 14:34:41Z rdm $ | |||
// Author: Fons Rademakers 3/1/2002 | // Author: Fons Rademakers 3/1/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 98 | skipping to change at line 98 | |||
//--- Catalogue Interface | //--- Catalogue Interface | |||
virtual TGridResult *Ls(const char* /*ldn*/ ="", Option_t* /*options*/ = "", Bool_t /*verbose*/ =kFALSE) | virtual TGridResult *Ls(const char* /*ldn*/ ="", Option_t* /*options*/ = "", Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Ls"); return 0; } | { MayNotUse("Ls"); return 0; } | |||
virtual const char *Pwd(Bool_t /*verbose*/ =kFALSE) | virtual const char *Pwd(Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Pwd"); return 0; } | { MayNotUse("Pwd"); return 0; } | |||
virtual const char *GetHomeDirectory() | virtual const char *GetHomeDirectory() | |||
{ MayNotUse("GetHomeDirectory"); return 0; } | { MayNotUse("GetHomeDirectory"); return 0; } | |||
virtual Bool_t Cd(const char* /*ldn*/ ="",Bool_t /*verbose*/ =kFALSE) | virtual Bool_t Cd(const char* /*ldn*/ ="",Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Cd"); return kFALSE; } | { MayNotUse("Cd"); return kFALSE; } | |||
virtual Bool_t Mkdir(const char* /*ldn*/ ="", Option_t* /*options*/ ="", Bool_t /*verbose*/ =kFALSE) | virtual Int_t Mkdir(const char* /*ldn*/ ="", Option_t* /*options*/ ="", Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Mkdir"); return kFALSE; } | { MayNotUse("Mkdir"); return kFALSE; } | |||
virtual Bool_t Rmdir(const char* /*ldn*/ ="", Option_t* /*options*/ ="", Bool_t /*verbose*/ =kFALSE) | virtual Bool_t Rmdir(const char* /*ldn*/ ="", Option_t* /*options*/ ="", Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Mkdir"); return kFALSE; } | { MayNotUse("Mkdir"); return kFALSE; } | |||
virtual Bool_t Register(const char* /*lfn*/ , const char* /*turl*/ , Lon g_t /*size*/ =-1, const char* /*se*/ =0, const char* /*guid*/ =0, Bool_t /* verbose*/ =kFALSE) | virtual Bool_t Register(const char* /*lfn*/ , const char* /*turl*/ , Lon g_t /*size*/ =-1, const char* /*se*/ =0, const char* /*guid*/ =0, Bool_t /* verbose*/ =kFALSE) | |||
{ MayNotUse("Mkdir"); return kFALSE; } | { MayNotUse("Mkdir"); return kFALSE; } | |||
virtual Bool_t Rm(const char* /*lfn*/ , Option_t* /*option*/ ="", Bool_t /*verbose*/ =kFALSE) | virtual Bool_t Rm(const char* /*lfn*/ , Option_t* /*option*/ ="", Bool_t /*verbose*/ =kFALSE) | |||
{ MayNotUse("Mkdir"); return kFALSE; } | { MayNotUse("Mkdir"); return kFALSE; } | |||
//--- Job Submission Interface | //--- Job Submission Interface | |||
virtual TGridJob *Submit(const char * /*jdl*/) | virtual TGridJob *Submit(const char * /*jdl*/) | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGridJobStatusList.h | TGridJobStatusList.h | |||
---|---|---|---|---|
// @(#)root/net:$Id: TGridJobStatusList.h 23091 2008-04-09 15:04:27Z rdm $ | // @(#)root/net:$Id: TGridJobStatusList.h 32840 2010-03-30 16:36:09Z rdm $ | |||
// Author: Andreas-Joachim Peters 10/12/2006 | // Author: Andreas-Joachim Peters 10/12/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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 39 | skipping to change at line 39 | |||
#endif | #endif | |||
class TGridJob; | class TGridJob; | |||
class TGridJobStatusList : public TList { | class TGridJobStatusList : public TList { | |||
protected: | protected: | |||
TString fJobID; // the job's ID | TString fJobID; // the job's ID | |||
public: | public: | |||
TGridJobStatusList() { } | TGridJobStatusList() : fJobID("") { } | |||
virtual ~TGridJobStatusList() { } | virtual ~TGridJobStatusList() { } | |||
ClassDef(TGridJobStatusList,1) // ABC defining interface to a list of G RID jobs | ClassDef(TGridJobStatusList,1) // ABC defining interface to a list of G RID jobs | |||
}; | }; | |||
R__EXTERN TGridJobStatusList *gGridJobStatusList; | R__EXTERN TGridJobStatusList *gGridJobStatusList; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
THnSparse.h | THnSparse.h | |||
---|---|---|---|---|
// @(#)root/hist:$Id: THnSparse.h 31491 2009-12-01 18:11:55Z moneta $ | // @(#)root/hist:$Id: THnSparse.h 32836 2010-03-30 14:27:57Z moneta $ | |||
// Author: Axel Naumann (2007-09-11) | // Author: Axel Naumann (2007-09-11) | |||
/************************************************************************* | /************************************************************************* | |||
* 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 84 | skipping to change at line 84 | |||
THnSparseArrayChunk(Int_t coordsize, bool errors, TArray* cont); | THnSparseArrayChunk(Int_t coordsize, bool errors, TArray* cont); | |||
virtual ~THnSparseArrayChunk(); | virtual ~THnSparseArrayChunk(); | |||
Int_t fCoordinateAllocationSize; //! size of the allocated coordinate buffer; -1 means none or fCoordinatesSize | Int_t fCoordinateAllocationSize; //! size of the allocated coordinate buffer; -1 means none or fCoordinatesSize | |||
Int_t fSingleCoordinateSize; // size of a single bin coordinate | Int_t fSingleCoordinateSize; // size of a single bin coordinate | |||
Int_t fCoordinatesSize; // size of the bin coordinate buffer | Int_t fCoordinatesSize; // size of the bin coordinate buffer | |||
Char_t *fCoordinates; //[fCoordinatesSize] compact bin coordin ate buffer | Char_t *fCoordinates; //[fCoordinatesSize] compact bin coordin ate buffer | |||
TArray *fContent; // bin content | TArray *fContent; // bin content | |||
TArrayD *fSumw2; // bin errors | TArrayD *fSumw2; // bin errors | |||
void AddBin(ULong_t idx, const Char_t* idxbuf); | void AddBin(Int_t idx, const Char_t* idxbuf); | |||
void AddBinContent(ULong_t idx, Double_t v = 1.) { | void AddBinContent(Int_t idx, Double_t v = 1.) { | |||
fContent->SetAt(v + fContent->GetAt(idx), idx); | fContent->SetAt(v + fContent->GetAt(idx), idx); | |||
if (fSumw2) | if (fSumw2) | |||
fSumw2->SetAt(v * v+ fSumw2->GetAt(idx), idx); | fSumw2->SetAt(v * v+ fSumw2->GetAt(idx), idx); | |||
} | } | |||
void Sumw2(); | void Sumw2(); | |||
ULong64_t GetEntries() const { return fCoordinatesSize / fSingleCoordina teSize; } | Int_t GetEntries() const { return fCoordinatesSize / fSingleCoordinateSi ze; } | |||
Bool_t Matches(Int_t idx, const Char_t* idxbuf) const { | Bool_t Matches(Int_t idx, const Char_t* idxbuf) const { | |||
// Check whether bin at idx batches idxbuf. | // Check whether bin at idx batches idxbuf. | |||
// If we don't store indexes we trust the caller that it does match, | // If we don't store indexes we trust the caller that it does match, | |||
// see comment in THnSparseCompactBinCoord::GetHash(). | // see comment in THnSparseCompactBinCoord::GetHash(). | |||
return fCoordinatesSize <= 4 || | return fSingleCoordinateSize <= 8 || | |||
!memcmp(fCoordinates + idx * fSingleCoordinateSize, idxbuf, fSingl eCoordinateSize); } | !memcmp(fCoordinates + idx * fSingleCoordinateSize, idxbuf, fSingl eCoordinateSize); } | |||
ClassDef(THnSparseArrayChunk, 1); // chunks of linearized bins | ClassDef(THnSparseArrayChunk, 1); // chunks of linearized bins | |||
}; | }; | |||
class THnSparseCompactBinCoord; | class THnSparseCompactBinCoord; | |||
class THnSparse: public TNamed { | class THnSparse: public TNamed { | |||
private: | private: | |||
Int_t fNdimensions; // number of dimensions | Int_t fNdimensions; // number of dimensions | |||
Int_t fChunkSize; // number of entries for each chunk | Int_t fChunkSize; // number of entries for each chunk | |||
Long64_t fFilledBins; // number of filled bins | Long64_t fFilledBins; // number of filled bins | |||
TObjArray fAxes; // axes of the histogram | TObjArray fAxes; // axes of the histogram | |||
TObjArray fBinContent; // array of THnSparseArrayChunk | TObjArray fBinContent; // array of THnSparseArrayChunk | |||
TExMap fBins; // filled bins | TExMap fBins; //! filled bins | |||
TExMap fBinsContinued;// filled bins for non-unique hashes, containi | TExMap fBinsContinued;//! filled bins for non-unique hashes, contain | |||
ng pairs of (bin index 0, bin index 1) | ing pairs of (bin index 0, bin index 1) | |||
Double_t fEntries; // number of entries, spread over chunks | Double_t fEntries; // number of entries, spread over chunks | |||
Double_t fTsumw; // total sum of weights | Double_t fTsumw; // total sum of weights | |||
Double_t fTsumw2; // total sum of weights squared; -1 if no erro rs are calculated | Double_t fTsumw2; // total sum of weights squared; -1 if no erro rs are calculated | |||
TArrayD fTsumwx; // total sum of weight*X for each dimension | TArrayD fTsumwx; // total sum of weight*X for each dimension | |||
TArrayD fTsumwx2; // total sum of weight*X*X for each dimension | TArrayD fTsumwx2; // total sum of weight*X*X for each dimension | |||
THnSparseCompactBinCoord *fCompactCoord; //! compact coordinate | THnSparseCompactBinCoord *fCompactCoord; //! compact coordinate | |||
Double_t *fIntegral; //! array with bin weight sums | Double_t *fIntegral; //! array with bin weight sums | |||
enum { | enum { | |||
kNoInt, | kNoInt, | |||
kValidInt, | kValidInt, | |||
skipping to change at line 141 | skipping to change at line 141 | |||
THnSparse(); | THnSparse(); | |||
THnSparse(const char* name, const char* title, Int_t dim, | THnSparse(const char* name, const char* title, Int_t dim, | |||
const Int_t* nbins, const Double_t* xmin, const Double_t* xmax , | const Int_t* nbins, const Double_t* xmin, const Double_t* xmax , | |||
Int_t chunksize); | Int_t chunksize); | |||
Int_t GetChunkSize() const { return fChunkSize; } | Int_t GetChunkSize() const { return fChunkSize; } | |||
THnSparseCompactBinCoord* GetCompactCoord() const; | THnSparseCompactBinCoord* GetCompactCoord() const; | |||
THnSparseArrayChunk* GetChunk(Int_t idx) const { | THnSparseArrayChunk* GetChunk(Int_t idx) const { | |||
return (THnSparseArrayChunk*) fBinContent[idx]; } | return (THnSparseArrayChunk*) fBinContent[idx]; } | |||
THnSparseArrayChunk* AddChunk(); | THnSparseArrayChunk* AddChunk(); | |||
void FillExMap(); | ||||
virtual TArray* GenerateArray() const = 0; | virtual TArray* GenerateArray() const = 0; | |||
Long_t GetBinIndexForCurrentBin(Bool_t allocate); | Long64_t GetBinIndexForCurrentBin(Bool_t allocate); | |||
Long_t Fill(Long_t bin, Double_t w) { | Long64_t Fill(Long64_t bin, Double_t w) { | |||
// Increment the bin content of "bin" by "w", | // Increment the bin content of "bin" by "w", | |||
// return the bin index. | // return the bin index. | |||
fEntries += 1; | fEntries += 1; | |||
if (GetCalculateErrors()) { | if (GetCalculateErrors()) { | |||
fTsumw += w; | fTsumw += w; | |||
fTsumw2 += w*w; | fTsumw2 += w*w; | |||
} | } | |||
fIntegralStatus = kInvalidInt; | fIntegralStatus = kInvalidInt; | |||
THnSparseArrayChunk* chunk = GetChunk(bin / fChunkSize); | THnSparseArrayChunk* chunk = GetChunk(bin / fChunkSize); | |||
chunk->AddBinContent(bin % fChunkSize, w); | chunk->AddBinContent(bin % fChunkSize, w); | |||
skipping to change at line 177 | skipping to change at line 178 | |||
public: | public: | |||
virtual ~THnSparse(); | virtual ~THnSparse(); | |||
static THnSparse* CreateSparse(const char* name, const char* title, | static THnSparse* CreateSparse(const char* name, const char* title, | |||
const TH1* h1, Int_t ChunkSize = 1024 * 1 6); | const TH1* h1, Int_t ChunkSize = 1024 * 1 6); | |||
Int_t GetNChunks() const { return fBinContent.GetEntriesFast(); } | Int_t GetNChunks() const { return fBinContent.GetEntriesFast(); } | |||
TObjArray* GetListOfAxes() { return &fAxes; } | TObjArray* GetListOfAxes() { return &fAxes; } | |||
TAxis* GetAxis(Int_t dim) const { return (TAxis*)fAxes[dim]; } | TAxis* GetAxis(Int_t dim) const { return (TAxis*)fAxes[dim]; } | |||
Long_t Fill(const Double_t *x, Double_t w = 1.) { | Long64_t Fill(const Double_t *x, Double_t w = 1.) { | |||
if (GetCalculateErrors()) { | if (GetCalculateErrors()) { | |||
for (Int_t d = 0; d < fNdimensions; ++d) { | for (Int_t d = 0; d < fNdimensions; ++d) { | |||
const Double_t xd = x[d]; | const Double_t xd = x[d]; | |||
fTsumwx[d] += w * xd; | fTsumwx[d] += w * xd; | |||
fTsumwx2[d] += w * xd * xd; | fTsumwx2[d] += w * xd * xd; | |||
} | } | |||
} | } | |||
return Fill(GetBin(x), w); | return Fill(GetBin(x), w); | |||
} | } | |||
Long_t Fill(const char* name[], Double_t w = 1.) { | Long64_t Fill(const char* name[], Double_t w = 1.) { | |||
return Fill(GetBin(name), w); | return Fill(GetBin(name), w); | |||
} | } | |||
TFitResultPtr Fit(TF1 *f1 ,Option_t *option = "", Option_t *goption = "" ); | TFitResultPtr Fit(TF1 *f1 ,Option_t *option = "", Option_t *goption = "" ); | |||
TList* GetListOfFunctions() { return 0; } | TList* GetListOfFunctions() { return 0; } | |||
Double_t GetEntries() const { return fEntries; } | Double_t GetEntries() const { return fEntries; } | |||
Double_t GetWeightSum() const { return fTsumw; } | Double_t GetWeightSum() const { return fTsumw; } | |||
Long64_t GetNbins() const { return fFilledBins; } | Long64_t GetNbins() const { return fFilledBins; } | |||
Int_t GetNdimensions() const { return fNdimensions; } | Int_t GetNdimensions() const { return fNdimensions; } | |||
Bool_t GetCalculateErrors() const { return fTsumw2 >= 0.; } | Bool_t GetCalculateErrors() const { return fTsumw2 >= 0.; } | |||
void CalculateErrors(Bool_t calc = kTRUE) { | void CalculateErrors(Bool_t calc = kTRUE) { | |||
// Calculate errors (or not if "calc" == kFALSE) | // Calculate errors (or not if "calc" == kFALSE) | |||
if (calc) Sumw2(); | if (calc) Sumw2(); | |||
else fTsumw2 = -1.; | else fTsumw2 = -1.; | |||
} | } | |||
Long_t GetBin(const Int_t* idx, Bool_t allocate = kTRUE); | Long64_t GetBin(const Int_t* idx, Bool_t allocate = kTRUE); | |||
Long_t GetBin(const Double_t* x, Bool_t allocate = kTRUE); | Long64_t GetBin(const Double_t* x, Bool_t allocate = kTRUE); | |||
Long_t GetBin(const char* name[], Bool_t allocate = kTRUE); | Long64_t GetBin(const char* name[], Bool_t allocate = kTRUE); | |||
void SetBinEdges(Int_t idim, const Double_t* bins); | void SetBinEdges(Int_t idim, const Double_t* bins); | |||
void SetBinContent(const Int_t* x, Double_t v); | void SetBinContent(const Int_t* x, Double_t v); | |||
void SetBinContent(Long64_t bin, Double_t v); | ||||
void SetBinError(const Int_t* x, Double_t e); | void SetBinError(const Int_t* x, Double_t e); | |||
void SetBinError(Long64_t bin, Double_t e); | ||||
void AddBinContent(const Int_t* x, Double_t v = 1.); | void AddBinContent(const Int_t* x, Double_t v = 1.); | |||
void AddBinContent(Long64_t bin, Double_t v = 1.); | ||||
void SetEntries(Double_t entries) { fEntries = entries; } | void SetEntries(Double_t entries) { fEntries = entries; } | |||
void SetTitle(const char *title); | void SetTitle(const char *title); | |||
Double_t GetBinContent(const Int_t *idx) const; | Double_t GetBinContent(const Int_t *idx) const; | |||
Double_t GetBinContent(Long64_t bin, Int_t* idx = 0) const; | Double_t GetBinContent(Long64_t bin, Int_t* idx = 0) const; | |||
Double_t GetBinError(const Int_t *idx) const; | Double_t GetBinError(const Int_t *idx) const; | |||
Double_t GetBinError(Long64_t linidx) const; | Double_t GetBinError(Long64_t linidx) const; | |||
Double_t GetSparseFractionBins() const; | Double_t GetSparseFractionBins() const; | |||
Double_t GetSparseFractionMem() const; | Double_t GetSparseFractionMem() const; | |||
skipping to change at line 258 | skipping to change at line 262 | |||
void RebinnedAdd(const THnSparse* h, Double_t c=1.); | void RebinnedAdd(const THnSparse* h, Double_t c=1.); | |||
void Reset(Option_t* option = ""); | void Reset(Option_t* option = ""); | |||
void Sumw2(); | void Sumw2(); | |||
Double_t ComputeIntegral(); | Double_t ComputeIntegral(); | |||
void GetRandom(Double_t *rand, Bool_t subBinRandom = kTRUE); | void GetRandom(Double_t *rand, Bool_t subBinRandom = kTRUE); | |||
//void Draw(Option_t* option = ""); | //void Draw(Option_t* option = ""); | |||
ClassDef(THnSparse, 1); // Interfaces of sparse n-dimensional histogram | ClassDef(THnSparse, 2); // Interfaces of sparse n-dimensional histogram | |||
}; | }; | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
// | // | |||
// Templated implementation of the abstract base THnSparse. | // Templated implementation of the abstract base THnSparse. | |||
// All functionality and the interfaces to be used are in THnSparse! | // All functionality and the interfaces to be used are in THnSparse! | |||
// | // | |||
// THnSparse does not know how to store any bin content itself. Instead, th is | // THnSparse does not know how to store any bin content itself. Instead, th is | |||
// is delegated to the derived, templated class: the template parameter dec ides | // is delegated to the derived, templated class: the template parameter dec ides | |||
// what the format for the bin content is. In fact it even defines the arra y | // what the format for the bin content is. In fact it even defines the arra y | |||
End of changes. 14 change blocks. | ||||
16 lines changed or deleted | 20 lines changed or added | |||
TInterpreter.h | TInterpreter.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TInterpreter.h 30567 2009-10-05 21:39:26Z pcanal $ | // @(#)root/meta:$Id: TInterpreter.h 31931 2009-12-17 14:52:55Z rdm $ | |||
// 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 62 | skipping to change at line 62 | |||
TInterpreter() { } // for Dictionary | TInterpreter() { } // for Dictionary | |||
TInterpreter(const char *name, const char *title = "Generic Interpreter" ); | TInterpreter(const char *name, const char *title = "Generic Interpreter" ); | |||
virtual ~TInterpreter() { } | virtual ~TInterpreter() { } | |||
virtual void AddIncludePath(const char *path) = 0; | virtual void AddIncludePath(const char *path) = 0; | |||
virtual Int_t AutoLoad(const char *classname) = 0; | virtual Int_t AutoLoad(const char *classname) = 0; | |||
virtual void ClearFileBusy() = 0; | virtual void ClearFileBusy() = 0; | |||
virtual void ClearStack() = 0; // Delete existing temporary values | virtual void ClearStack() = 0; // Delete existing temporary values | |||
virtual void EnableAutoLoading() = 0; | virtual void EnableAutoLoading() = 0; | |||
virtual void EndOfLineAction() = 0; | virtual void EndOfLineAction() = 0; | |||
virtual void EnableWrappers(bool value) = 0; | ||||
virtual Int_t GetExitCode() const = 0; | virtual Int_t GetExitCode() const = 0; | |||
virtual TEnv *GetMapfile() const { return 0; } | virtual TEnv *GetMapfile() const { return 0; } | |||
virtual Int_t GetMore() const = 0; | virtual Int_t GetMore() const = 0; | |||
virtual char *GetPrompt() = 0; | virtual char *GetPrompt() = 0; | |||
virtual const char *GetSharedLibs() = 0; | virtual const char *GetSharedLibs() = 0; | |||
virtual const char *GetClassSharedLibs(const char *cls) = 0; | virtual const char *GetClassSharedLibs(const char *cls) = 0; | |||
virtual const char *GetSharedLibDeps(const char *lib) = 0; | virtual const char *GetSharedLibDeps(const char *lib) = 0; | |||
virtual const char *GetIncludePath() = 0; | virtual const char *GetIncludePath() = 0; | |||
virtual const char *GetSTLIncludePath() const { return ""; } | virtual const char *GetSTLIncludePath() const { return ""; } | |||
virtual TObjArray *GetRootMapFiles() const = 0; | virtual TObjArray *GetRootMapFiles() const = 0; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 1 lines changed or added | |||
TLeafB.h | TLeafB.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TLeafB.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/tree:$Id: TLeafB.h 32525 2010-03-10 13:56:16Z 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 45 | skipping to change at line 45 | |||
public: | public: | |||
TLeafB(); | TLeafB(); | |||
TLeafB(TBranch *parent, const char* name, const char* type); | TLeafB(TBranch *parent, const char* name, const char* type); | |||
virtual ~TLeafB(); | virtual ~TLeafB(); | |||
virtual void Export(TClonesArray* list, Int_t n); | virtual void Export(TClonesArray* list, Int_t n); | |||
virtual void FillBasket(TBuffer& b); | virtual void FillBasket(TBuffer& b); | |||
virtual Int_t GetMaximum() const { return fMaximum; } | virtual Int_t GetMaximum() const { return fMaximum; } | |||
virtual Int_t GetMinimum() const { return fMinimum; } | virtual Int_t GetMinimum() const { return fMinimum; } | |||
const char *GetTypeName() const; | const char *GetTypeName() const; | |||
Double_t GetValue(Int_t i = 0) const { return IsUnsigned() ? ((UC har_t) fValue[i]) : fValue[i]; } | Double_t GetValue(Int_t i = 0) const { return IsUnsigned() ? (Dou ble_t)((UChar_t) fValue[i]) : (Double_t)fValue[i]; } | |||
virtual void *GetValuePointer() const { return fValue; } | virtual void *GetValuePointer() const { return fValue; } | |||
virtual void Import(TClonesArray* list, Int_t n); | virtual void Import(TClonesArray* list, Int_t n); | |||
virtual void PrintValue(Int_t i = 0) const; | virtual void PrintValue(Int_t i = 0) const; | |||
virtual void ReadBasket(TBuffer&); | virtual void ReadBasket(TBuffer&); | |||
virtual void ReadBasketExport(TBuffer&, TClonesArray* list, Int_t n); | virtual void ReadBasketExport(TBuffer&, TClonesArray* list, Int_t n); | |||
virtual void ReadValue(ifstream&); | virtual void ReadValue(ifstream&); | |||
virtual void SetAddress(void* addr = 0); | virtual void SetAddress(void* addr = 0); | |||
virtual void SetMaximum(Char_t max) { fMaximum = max; } | virtual void SetMaximum(Char_t max) { fMaximum = max; } | |||
virtual void SetMinimum(Char_t min) { fMinimum = min; } | virtual void SetMinimum(Char_t min) { fMinimum = min; } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TList.h | TList.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TList.h 23198 2008-04-14 09:23:08Z rdm $ | // @(#)root/cont:$Id: TList.h 32781 2010-03-26 13:06:14Z pcanal $ | |||
// Author: Fons Rademakers 10/08/95 | // Author: Fons Rademakers 10/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 33 | skipping to change at line 33 | |||
#ifndef ROOT_TSeqCollection | #ifndef ROOT_TSeqCollection | |||
#include "TSeqCollection.h" | #include "TSeqCollection.h" | |||
#endif | #endif | |||
#ifndef ROOT_TString | #ifndef ROOT_TString | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
#include <iterator> | #include <iterator> | |||
#if (__GNUC__ >= 3) && !defined(__INTEL_COMPILER) | ||||
// Prevent -Weffc++ from complaining about the inheritance | ||||
// TListIter from std::iterator. | ||||
#pragma GCC system_header | ||||
#endif | ||||
const Bool_t kSortAscending = kTRUE; | const Bool_t kSortAscending = kTRUE; | |||
const Bool_t kSortDescending = !kSortAscending; | const Bool_t kSortDescending = !kSortAscending; | |||
class TObjLink; | class TObjLink; | |||
class TListIter; | class TListIter; | |||
class TList : public TSeqCollection { | class TList : public TSeqCollection { | |||
friend class TListIter; | friend class TListIter; | |||
skipping to change at line 86 | skipping to change at line 92 | |||
virtual void AddFirst(TObject *obj, Option_t *opt); | virtual void AddFirst(TObject *obj, Option_t *opt); | |||
virtual void AddLast(TObject *obj); | virtual void AddLast(TObject *obj); | |||
virtual void AddLast(TObject *obj, Option_t *opt); | virtual void AddLast(TObject *obj, Option_t *opt); | |||
virtual void AddAt(TObject *obj, Int_t idx); | virtual void AddAt(TObject *obj, Int_t idx); | |||
virtual void AddAfter(const TObject *after, TObject *obj); | virtual void AddAfter(const TObject *after, TObject *obj); | |||
virtual void AddAfter(TObjLink *after, TObject *obj); | virtual void AddAfter(TObjLink *after, TObject *obj); | |||
virtual void AddBefore(const TObject *before, TObject *obj); | virtual void AddBefore(const TObject *before, TObject *obj); | |||
virtual void AddBefore(TObjLink *before, TObject *obj); | virtual void AddBefore(TObjLink *before, TObject *obj); | |||
virtual TObject *Remove(TObject *obj); | virtual TObject *Remove(TObject *obj); | |||
virtual TObject *Remove(TObjLink *lnk); | virtual TObject *Remove(TObjLink *lnk); | |||
virtual void RemoveLast(); | ||||
virtual void RecursiveRemove(TObject *obj); | virtual void RecursiveRemove(TObject *obj); | |||
virtual TObject *At(Int_t idx) const; | virtual TObject *At(Int_t idx) const; | |||
virtual TObject *After(const TObject *obj) const; | virtual TObject *After(const TObject *obj) const; | |||
virtual TObject *Before(const TObject *obj) const; | virtual TObject *Before(const TObject *obj) const; | |||
virtual TObject *First() const; | virtual TObject *First() const; | |||
virtual TObjLink *FirstLink() const { return fFirst; } | virtual TObjLink *FirstLink() const { return fFirst; } | |||
virtual TObject **GetObjectRef(const TObject *obj) const; | virtual TObject **GetObjectRef(const TObject *obj) const; | |||
virtual TObject *Last() const; | virtual TObject *Last() const; | |||
virtual TObjLink *LastLink() const { return fLast; } | virtual TObjLink *LastLink() const { return fLast; } | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 8 lines changed or added | |||
TMakeProject.h | TMakeProject.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TMakeProject.h 29360 2009-07-06 21:10:23Z pcanal $ | // @(#)root/io:$Id: TMakeProject.h 32336 2010-02-12 15:03:23Z 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 39 | skipping to change at line 39 | |||
class TStreamerElement; | class TStreamerElement; | |||
class TMakeProject | class TMakeProject | |||
{ | { | |||
private: | private: | |||
static void GenerateMissingStreamerInfo(TList *extrainfos, const char *c lname, Bool_t iscope); | static void GenerateMissingStreamerInfo(TList *extrainfos, const char *c lname, Bool_t iscope); | |||
public: | public: | |||
static void AddUniqueStatement(FILE *fp, const char *statement, char *in clist); | static void AddUniqueStatement(FILE *fp, const char *statement, char *in clist); | |||
static void AddInclude(FILE *fp, const char *header, Bool_t system, char *inclist); | static void AddInclude(FILE *fp, const char *header, Bool_t system, char *inclist); | |||
static void ChopFileName(TString &name, Int_t limit); | static void ChopFileName(TString &name, Int_t limit); | |||
static TString GetHeaderName(const char *name, Bool_t includeNested = kF ALSE); | static TString GetHeaderName(const char *name, const TList *extrainfos, Bool_t includeNested = kFALSE); | |||
static UInt_t GenerateClassPrefix(FILE *fp, const char *clname, Bool_t t op, TString &protoname, UInt_t *numberOfClasses, Int_t implementEmptyClass = kFALSE, Bool_t needGenericTemplate = kFALSE); | static UInt_t GenerateClassPrefix(FILE *fp, const char *clname, Bool_t t op, TString &protoname, UInt_t *numberOfClasses, Int_t implementEmptyClass = kFALSE, Bool_t needGenericTemplate = kFALSE); | |||
static void GenerateMissingStreamerInfos(TList *extrainfos, TStreamerEle ment *element); | static void GenerateMissingStreamerInfos(TList *extrainfos, TStreamerEle ment *element); | |||
static void GenerateMissingStreamerInfos(TList *extrainfos, const char * clname); | static void GenerateMissingStreamerInfos(TList *extrainfos, const char * clname); | |||
static UInt_t GenerateForwardDeclaration(FILE *fp, const char *clname, c | static UInt_t GenerateForwardDeclaration(FILE *fp, const char *clname, c | |||
har *inclist, Bool_t implementEmptyClass = kFALSE, Bool_t needGenericTempla | har *inclist, Bool_t implementEmptyClass, Bool_t needGenericTemplate, const | |||
te = kFALSE); | TList *extrainfos); | |||
static UInt_t GenerateIncludeForTemplate(FILE *fp, const char *clname, c | static UInt_t GenerateIncludeForTemplate(FILE *fp, const char *clname, c | |||
har *inclist, Bool_t forward); | har *inclist, Bool_t forward, const TList *extrainfos); | |||
static TString UpdateAssociativeToVector(const char *name); | static TString UpdateAssociativeToVector(const char *name); | |||
}; | }; | |||
#endif // ROOT_TMakeProject | #endif // ROOT_TMakeProject | |||
End of changes. 3 change blocks. | ||||
7 lines changed or deleted | 7 lines changed or added | |||
TMath.h | TMath.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: TMath.h 29937 2009-08-27 14:15:39Z brun $ | // @(#)root/mathcore:$Id: TMath.h 32037 2010-01-18 11:09:23Z brun $ | |||
// 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 238 | skipping to change at line 238 | |||
Float_t Normalize(Float_t v[3]); // Normalize a vector | Float_t Normalize(Float_t v[3]); // Normalize a vector | |||
Double_t Normalize(Double_t v[3]); // Normalize a vector | Double_t Normalize(Double_t v[3]); // Normalize a vector | |||
//Calculate the Normalized Cross Product of two vectors | //Calculate the Normalized Cross Product of two vectors | |||
template <typename T> inline T NormCross(const T v1[3],const T v2[3],T o ut[3]); | template <typename T> inline T NormCross(const T v1[3],const T v2[3],T o ut[3]); | |||
// Calculate a normal vector of a plane | // Calculate a normal vector of a plane | |||
template <typename T> T *Normal2Plane(const T v1[3],const T v2[3],const T v3[3], T normal[3]); | template <typename T> T *Normal2Plane(const T v1[3],const T v2[3],const T v3[3], T normal[3]); | |||
/* ************************ */ | /* ************************ */ | |||
/* * Polinomial Functions * */ | /* * Polynomial Functions * */ | |||
/* ************************ */ | /* ************************ */ | |||
Bool_t RootsCubic(const Double_t coef[4],Double_t &a, Double_t &b, Do uble_t &c); | Bool_t RootsCubic(const Double_t coef[4],Double_t &a, Double_t &b, Do uble_t &c); | |||
/* *********************** */ | /* *********************** */ | |||
/* * Statistic Functions * */ | /* * Statistic Functions * */ | |||
/* *********************** */ | /* *********************** */ | |||
Double_t Binomial(Int_t n,Int_t k); // Calculate the binomial coefficie nt n over k | Double_t Binomial(Int_t n,Int_t k); // Calculate the binomial coefficie nt n over k | |||
Double_t BinomialI(Double_t p, Int_t n, Int_t k); | Double_t BinomialI(Double_t p, Int_t n, Int_t k); | |||
skipping to change at line 277 | skipping to change at line 277 | |||
Double_t StudentI(Double_t T, Double_t ndf); | Double_t StudentI(Double_t T, Double_t ndf); | |||
Double_t StudentQuantile(Double_t p, Double_t ndf, Bool_t lower_tail=kTR UE); | Double_t StudentQuantile(Double_t p, Double_t ndf, Bool_t lower_tail=kTR UE); | |||
Double_t Vavilov(Double_t x, Double_t kappa, Double_t beta2); | Double_t Vavilov(Double_t x, Double_t kappa, Double_t beta2); | |||
Double_t VavilovI(Double_t x, Double_t kappa, Double_t beta2); | Double_t VavilovI(Double_t x, Double_t kappa, Double_t beta2); | |||
Double_t Voigt(Double_t x, Double_t sigma, Double_t lg, Int_t R = 4); | Double_t Voigt(Double_t x, Double_t sigma, Double_t lg, Int_t R = 4); | |||
/* ************************** */ | /* ************************** */ | |||
/* * Statistics over arrays * */ | /* * Statistics over arrays * */ | |||
/* ************************** */ | /* ************************** */ | |||
//Mean, Geometric Mean, Median, RMS | //Mean, Geometric Mean, Median, RMS(sigma) | |||
template <typename T> Double_t Mean(Long64_t n, const T *a, const Double _t *w=0); | template <typename T> Double_t Mean(Long64_t n, const T *a, const Double _t *w=0); | |||
template <typename Iterator> Double_t Mean(Iterator first, Iterator last ); | template <typename Iterator> Double_t Mean(Iterator first, Iterator last ); | |||
template <typename Iterator, typename WeightIterator> Double_t Mean(Iter ator first, Iterator last, WeightIterator w); | template <typename Iterator, typename WeightIterator> Double_t Mean(Iter ator first, Iterator last, WeightIterator w); | |||
template <typename T> Double_t GeomMean(Long64_t n, const T *a); | template <typename T> Double_t GeomMean(Long64_t n, const T *a); | |||
template <typename Iterator> Double_t GeomMean(Iterator first, Iterator last); | template <typename Iterator> Double_t GeomMean(Iterator first, Iterator last); | |||
template <typename T> Double_t RMS(Long64_t n, const T *a); | template <typename T> Double_t RMS(Long64_t n, const T *a); | |||
template <typename Iterator> Double_t RMS(Iterator first, Iterator last) ; | template <typename Iterator> Double_t RMS(Iterator first, Iterator last) ; | |||
skipping to change at line 668 | skipping to change at line 668 | |||
{ | { | |||
// Return the geometric mean of an array a of size n. | // Return the geometric mean of an array a of size n. | |||
// geometric_mean = (Prod_i=0,n-1 |a[i]|)^1/n | // geometric_mean = (Prod_i=0,n-1 |a[i]|)^1/n | |||
return TMath::GeomMean(a, a+n); | return TMath::GeomMean(a, a+n); | |||
} | } | |||
template <typename Iterator> | template <typename Iterator> | |||
Double_t TMath::RMS(Iterator first, Iterator last) | Double_t TMath::RMS(Iterator first, Iterator last) | |||
{ | { | |||
// Return the RMS of an array defined by the iterators. | // Return the Standard Deviation of an array defined by the iterators. | |||
// Note that this function returns the sigma(standard deviation) and | ||||
// not the root mean square of the array. | ||||
Double_t n = 0; | Double_t n = 0; | |||
Double_t tot = 0, tot2 =0, adouble; | Double_t tot = 0, tot2 =0, adouble; | |||
while ( first != last ) { | while ( first != last ) { | |||
adouble=Double_t(*first); | adouble=Double_t(*first); | |||
tot += adouble; tot2 += adouble*adouble; | tot += adouble; tot2 += adouble*adouble; | |||
++first; | ++first; | |||
++n; | ++n; | |||
} | } | |||
Double_t n1 = 1./n; | Double_t n1 = 1./n; | |||
Double_t mean = tot*n1; | Double_t mean = tot*n1; | |||
Double_t rms = TMath::Sqrt(TMath::Abs(tot2*n1 -mean*mean)); | Double_t rms = TMath::Sqrt(TMath::Abs(tot2*n1 -mean*mean)); | |||
return rms; | return rms; | |||
} | } | |||
template <typename T> | template <typename T> | |||
Double_t TMath::RMS(Long64_t n, const T *a) | Double_t TMath::RMS(Long64_t n, const T *a) | |||
{ | { | |||
// Return the RMS of an array a with length n. | // Return the Standard Deviation of an array a with length n. | |||
// Note that this function returns the sigma(standard deviation) and | ||||
// not the root mean square of the array. | ||||
return TMath::RMS(a, a+n); | return TMath::RMS(a, a+n); | |||
} | } | |||
template <typename Iterator, typename Element> | template <typename Iterator, typename Element> | |||
Iterator TMath::BinarySearch(Iterator first, Iterator last, Element value) | Iterator TMath::BinarySearch(Iterator first, Iterator last, Element value) | |||
{ | { | |||
// Binary search in an array defined by its iterators. | // Binary search in an array defined by its iterators. | |||
// | // | |||
// The values in the iterators range are supposed to be sorted | // The values in the iterators range are supposed to be sorted | |||
End of changes. 5 change blocks. | ||||
5 lines changed or deleted | 9 lines changed or added | |||
TMatrixDfwd.h | TMatrixDfwd.h | |||
---|---|---|---|---|
skipping to change at line 20 | skipping to change at line 20 | |||
#define ROOT_TMatrixDfwd | #define ROOT_TMatrixDfwd | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
// // | // // | |||
// TMatrixD // | // TMatrixD // | |||
// // | // // | |||
// Forward declaration of TMatrixT<Double_t> // | // Forward declaration of TMatrixT<Double_t> // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_Rtypes | ||||
#include "Rtypes.h" | ||||
#endif | ||||
template<class Element> class TMatrixT; | template<class Element> class TMatrixT; | |||
typedef TMatrixT<Double_t> TMatrixD; | typedef TMatrixT<Double_t> TMatrixD; | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 4 lines changed or added | |||
TMatrixT.h | TMatrixT.h | |||
---|---|---|---|---|
// @(#)root/matrix:$Id: TMatrixT.h 27658 2009-02-28 05:34:57Z pcanal $ | // @(#)root/matrix:$Id: TMatrixT.h 32616 2010-03-15 16:56:42Z 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_TMatrixT | #ifndef ROOT_TMatrixT | |||
#define ROOT_TMatrixT | #define ROOT_TMatrixT | |||
skipping to change at line 49 | skipping to change at line 49 | |||
protected: | protected: | |||
Element fDataStack[TMatrixTBase<Element>::kSizeMax]; //! data container | Element fDataStack[TMatrixTBase<Element>::kSizeMax]; //! data container | |||
Element *fElements; //[fNelems] elemen ts themselves | Element *fElements; //[fNelems] elemen ts themselves | |||
Element *New_m (Int_t size); | Element *New_m (Int_t size); | |||
void Delete_m(Int_t size,Element*&); | void Delete_m(Int_t size,Element*&); | |||
Int_t Memcpy_m(Element *newp,const Element *oldp,Int_t copySize, | Int_t Memcpy_m(Element *newp,const Element *oldp,Int_t copySize, | |||
Int_t newSize,Int_t oldSize); | Int_t newSize,Int_t oldSize); | |||
void Allocate(Int_t nrows,Int_t ncols,Int_t row_lwb = 0,Int_t col_lw b = 0,Int_t init = 0, | void Allocate(Int_t nrows,Int_t ncols,Int_t row_lwb = 0,Int_t col_lw b = 0,Int_t init = 0, | |||
Int_t nr_nonzeros = -1); | Int_t /*nr_nonzeros*/ = -1); | |||
public: | public: | |||
enum {kWorkMax = 100}; | enum {kWorkMax = 100}; | |||
enum EMatrixCreatorsOp1 { kZero,kUnit,kTransposed,kInverted,kAtA }; | enum EMatrixCreatorsOp1 { kZero,kUnit,kTransposed,kInverted,kAtA }; | |||
enum EMatrixCreatorsOp2 { kMult,kTransposeMult,kInvMult,kMultTranspose,k Plus,kMinus }; | enum EMatrixCreatorsOp2 { kMult,kTransposeMult,kInvMult,kMultTranspose,k Plus,kMinus }; | |||
TMatrixT(): fElements(0) { } | TMatrixT(): fElements(0) { } | |||
TMatrixT(Int_t nrows,Int_t ncols); | TMatrixT(Int_t nrows,Int_t ncols); | |||
TMatrixT(Int_t row_lwb,Int_t row_upb,Int_t col_lwb,Int_t col_upb); | TMatrixT(Int_t row_lwb,Int_t row_upb,Int_t col_lwb,Int_t col_upb); | |||
skipping to change at line 133 | skipping to change at line 133 | |||
TMatrixT <Element> &Use (Int_t nrows,Int_t ncols,Element *data); | TMatrixT <Element> &Use (Int_t nrows,Int_t ncols,Element *data); | |||
const TMatrixT <Element> &Use (Int_t nrows,Int_t ncols,const El ement *data) const; | const TMatrixT <Element> &Use (Int_t nrows,Int_t ncols,const El ement *data) const; | |||
TMatrixT <Element> &Use (TMatrixT<Element> &a); | TMatrixT <Element> &Use (TMatrixT<Element> &a); | |||
const TMatrixT <Element> &Use (const TMatrixT<Element> &a) cons t; | const TMatrixT <Element> &Use (const TMatrixT<Element> &a) cons t; | |||
virtual TMatrixTBase<Element> &GetSub (Int_t row_lwb,Int_t row_upb,Int_ t col_lwb,Int_t col_upb, | virtual TMatrixTBase<Element> &GetSub (Int_t row_lwb,Int_t row_upb,Int_ t col_lwb,Int_t col_upb, | |||
TMatrixTBase<Element> &target,Op tion_t *option="S") const; | TMatrixTBase<Element> &target,Op tion_t *option="S") const; | |||
TMatrixT <Element> GetSub (Int_t row_lwb,Int_t row_upb,Int_ t col_lwb,Int_t col_upb,Option_t *option="S") const; | TMatrixT <Element> GetSub (Int_t row_lwb,Int_t row_upb,Int_ t col_lwb,Int_t col_upb,Option_t *option="S") const; | |||
virtual TMatrixTBase<Element> &SetSub (Int_t row_lwb,Int_t col_lwb,cons t TMatrixTBase<Element> &source); | virtual TMatrixTBase<Element> &SetSub (Int_t row_lwb,Int_t col_lwb,cons t TMatrixTBase<Element> &source); | |||
virtual TMatrixTBase<Element> &ResizeTo(Int_t nrows,Int_t ncols,Int_t nr | virtual TMatrixTBase<Element> &ResizeTo(Int_t nrows,Int_t ncols,Int_t /* | |||
_nonzeros=-1); | nr_nonzeros*/ =-1); | |||
virtual TMatrixTBase<Element> &ResizeTo(Int_t row_lwb,Int_t row_upb,Int_ | virtual TMatrixTBase<Element> &ResizeTo(Int_t row_lwb,Int_t row_upb,Int_ | |||
t col_lwb,Int_t col_upb,Int_t nr_nonzeros=-1); | t col_lwb,Int_t col_upb,Int_t /*nr_nonzeros*/ =-1); | |||
inline TMatrixTBase<Element> &ResizeTo(const TMatrixT<Element> &m) { | inline TMatrixTBase<Element> &ResizeTo(const TMatrixT<Element> &m) { | |||
return ResizeTo(m.GetRowLwb(),m .GetRowUpb(),m.GetColLwb(),m.GetColUpb()); | return ResizeTo(m.GetRowLwb(),m .GetRowUpb(),m.GetColLwb(),m.GetColUpb()); | |||
} | } | |||
virtual Double_t Determinant () const; | virtual Double_t Determinant () const; | |||
virtual void Determinant (Double_t &d1,Double_t &d2) const; | virtual void Determinant (Double_t &d1,Double_t &d2) const; | |||
TMatrixT<Element> &Invert (Double_t *det=0); | TMatrixT<Element> &Invert (Double_t *det=0); | |||
TMatrixT<Element> &InvertFast (Double_t *det=0); | TMatrixT<Element> &InvertFast (Double_t *det=0); | |||
TMatrixT<Element> &Transpose (const TMatrixT<Element> &source) ; | TMatrixT<Element> &Transpose (const TMatrixT<Element> &source) ; | |||
End of changes. 3 change blocks. | ||||
6 lines changed or deleted | 6 lines changed or added | |||
TMatrixTSparse.h | TMatrixTSparse.h | |||
---|---|---|---|---|
// @(#)root/matrix:$Id: TMatrixTSparse.h 30103 2009-09-11 03:15:27Z brun $ | // @(#)root/matrix:$Id: TMatrixTSparse.h 32616 2010-03-15 16:56:42Z 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_TMatrixTSparse | #ifndef ROOT_TMatrixTSparse | |||
#define ROOT_TMatrixTSparse | #define ROOT_TMatrixTSparse | |||
skipping to change at line 105 | skipping to change at line 105 | |||
virtual TMatrixTBase<Element> &SetRowIndexArray(Int_t *data) { memmove (fRowIndex,data,(this->fNrows+1)*sizeof(Int_t)); return *this; } | virtual TMatrixTBase<Element> &SetRowIndexArray(Int_t *data) { memmove (fRowIndex,data,(this->fNrows+1)*sizeof(Int_t)); return *this; } | |||
virtual TMatrixTBase<Element> &SetColIndexArray(Int_t *data) { memmove (fColIndex,data,this->fNelems*sizeof(Int_t)); return *this; } | virtual TMatrixTBase<Element> &SetColIndexArray(Int_t *data) { memmove (fColIndex,data,this->fNelems*sizeof(Int_t)); return *this; } | |||
TMatrixTSparse<Element> &SetSparseIndex (Int_t nelem_new); | TMatrixTSparse<Element> &SetSparseIndex (Int_t nelem_new); | |||
TMatrixTSparse<Element> &SetSparseIndex (const TMatrixTBase<Ele ment> &another); | TMatrixTSparse<Element> &SetSparseIndex (const TMatrixTBase<Ele ment> &another); | |||
TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixTSparse<E lement> &a,const TMatrixTSparse<Element> &b); | TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixTSparse<E lement> &a,const TMatrixTSparse<Element> &b); | |||
TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixT <E lement> &a,const TMatrixTSparse<Element> &b); | TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixT <E lement> &a,const TMatrixTSparse<Element> &b); | |||
TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixTSparse<E lement> &a,const TMatrixT <Element> &b) | TMatrixTSparse<Element> &SetSparseIndexAB(const TMatrixTSparse<E lement> &a,const TMatrixT <Element> &b) | |||
{ return SetSparseIndexAB(b,a ); } | { return SetSparseIndexAB(b,a ); } | |||
virtual void GetMatrix2Array (Element *data,Option_t *option="") const; | virtual void GetMatrix2Array (Element *data,Option_t * /*option*/ ="") const; | |||
virtual TMatrixTBase<Element> &SetMatrixArray (const Element *data,Op tion_t * /*option*/="") | virtual TMatrixTBase<Element> &SetMatrixArray (const Element *data,Op tion_t * /*option*/="") | |||
{ memcpy(fElements,data ,this->fNelems*sizeof(Element)); return *this; } | { memcpy(fElements,data ,this->fNelems*sizeof(Element)); return *this; } | |||
virtual TMatrixTBase<Element> &SetMatrixArray (Int_t nr_nonzeros,Int_ t *irow,Int_t *icol,Element *data); | virtual TMatrixTBase<Element> &SetMatrixArray (Int_t nr_nonzeros,Int_ t *irow,Int_t *icol,Element *data); | |||
virtual TMatrixTBase<Element> &InsertRow (Int_t row,Int_t col,co nst Element *v,Int_t n=-1); | virtual TMatrixTBase<Element> &InsertRow (Int_t row,Int_t col,co nst Element *v,Int_t n=-1); | |||
virtual void ExtractRow (Int_t row,Int_t col, Element *v,Int_t n=-1) const; | virtual void ExtractRow (Int_t row,Int_t col, Element *v,Int_t n=-1) const; | |||
virtual TMatrixTBase<Element> &ResizeTo(Int_t nrows,Int_t ncols,Int_t nr_nonzeros=-1); | virtual TMatrixTBase<Element> &ResizeTo(Int_t nrows,Int_t ncols,Int_t nr_nonzeros=-1); | |||
virtual TMatrixTBase<Element> &ResizeTo(Int_t row_lwb,Int_t row_upb,In t_t col_lwb,Int_t col_upb,Int_t nr_nonzeros=-1); | virtual TMatrixTBase<Element> &ResizeTo(Int_t row_lwb,Int_t row_upb,In t_t col_lwb,Int_t col_upb,Int_t nr_nonzeros=-1); | |||
inline TMatrixTBase<Element> &ResizeTo(const TMatrixTSparse<Element> &m) {return ResizeTo(m.GetRowLwb(),m.GetRowUpb(),m.GetColLwb(), | inline TMatrixTBase<Element> &ResizeTo(const TMatrixTSparse<Element> &m) {return ResizeTo(m.GetRowLwb(),m.GetRowUpb(),m.GetColLwb(), | |||
m.GetColUpb(),m.GetNoElements()); } | m.GetColUpb(),m.GetNoElements()); } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TMatrixTSym.h | TMatrixTSym.h | |||
---|---|---|---|---|
// @(#)root/matrix:$Id: TMatrixTSym.h 27658 2009-02-28 05:34:57Z pcanal $ | // @(#)root/matrix:$Id: TMatrixTSym.h 32616 2010-03-15 16:56:42Z 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_TMatrixTSym | #ifndef ROOT_TMatrixTSym | |||
#define ROOT_TMatrixTSym | #define ROOT_TMatrixTSym | |||
skipping to change at line 48 | skipping to change at line 48 | |||
protected: | protected: | |||
Element fDataStack[TMatrixTBase<Element>::kSizeMax]; //! data container | Element fDataStack[TMatrixTBase<Element>::kSizeMax]; //! data container | |||
Element *fElements; //[fNelems] elemen ts themselves | Element *fElements; //[fNelems] elemen ts themselves | |||
Element *New_m (Int_t size); | Element *New_m (Int_t size); | |||
void Delete_m(Int_t size,Element*&); | void Delete_m(Int_t size,Element*&); | |||
Int_t Memcpy_m(Element *newp,const Element *oldp,Int_t copySize, | Int_t Memcpy_m(Element *newp,const Element *oldp,Int_t copySize, | |||
Int_t newSize,Int_t oldSize); | Int_t newSize,Int_t oldSize); | |||
void Allocate(Int_t nrows,Int_t ncols,Int_t row_lwb = 0,Int_t col_lw b = 0,Int_t init = 0, | void Allocate(Int_t nrows,Int_t ncols,Int_t row_lwb = 0,Int_t col_lw b = 0,Int_t init = 0, | |||
Int_t nr_nonzeros = -1); | Int_t /*nr_nonzeros*/ = -1); | |||
public: | public: | |||
enum {kWorkMax = 100}; // size of work array | enum {kWorkMax = 100}; // size of work array | |||
enum EMatrixCreatorsOp1 { kZero,kUnit,kTransposed,kInverted,kAtA }; | enum EMatrixCreatorsOp1 { kZero,kUnit,kTransposed,kInverted,kAtA }; | |||
enum EMatrixCreatorsOp2 { kPlus,kMinus }; | enum EMatrixCreatorsOp2 { kPlus,kMinus }; | |||
TMatrixTSym() { fElements = 0; } | TMatrixTSym() { fElements = 0; } | |||
explicit TMatrixTSym(Int_t nrows); | explicit TMatrixTSym(Int_t nrows); | |||
TMatrixTSym(Int_t row_lwb,Int_t row_upb); | TMatrixTSym(Int_t row_lwb,Int_t row_upb); | |||
skipping to change at line 117 | skipping to change at line 117 | |||
TMatrixTSym <Element> &GetSub (Int_t row_lwb,Int_t row_up b,TMatrixTSym<Element> &target,Option_t *option="S") const; | TMatrixTSym <Element> &GetSub (Int_t row_lwb,Int_t row_up b,TMatrixTSym<Element> &target,Option_t *option="S") const; | |||
virtual TMatrixTBase<Element> &GetSub (Int_t row_lwb,Int_t row_up b,Int_t col_lwb,Int_t col_upb, | virtual TMatrixTBase<Element> &GetSub (Int_t row_lwb,Int_t row_up b,Int_t col_lwb,Int_t col_upb, | |||
TMatrixTBase<Element> &targ et,Option_t *option="S") const; | TMatrixTBase<Element> &targ et,Option_t *option="S") const; | |||
TMatrixTSym <Element> GetSub (Int_t row_lwb,Int_t row_up b,Int_t col_lwb,Int_t col_upb,Option_t *option="S") const; | TMatrixTSym <Element> GetSub (Int_t row_lwb,Int_t row_up b,Int_t col_lwb,Int_t col_upb,Option_t *option="S") const; | |||
TMatrixTSym <Element> &SetSub (Int_t row_lwb,const TMatri xTBase<Element> &source); | TMatrixTSym <Element> &SetSub (Int_t row_lwb,const TMatri xTBase<Element> &source); | |||
virtual TMatrixTBase<Element> &SetSub (Int_t row_lwb,Int_t col_lw b,const TMatrixTBase<Element> &source); | virtual TMatrixTBase<Element> &SetSub (Int_t row_lwb,Int_t col_lw b,const TMatrixTBase<Element> &source); | |||
virtual TMatrixTBase<Element> &SetMatrixArray(const Element *data, Optio n_t *option=""); | virtual TMatrixTBase<Element> &SetMatrixArray(const Element *data, Optio n_t *option=""); | |||
virtual TMatrixTBase<Element> &Shift (Int_t row_shift,Int_t col_ shift); | virtual TMatrixTBase<Element> &Shift (Int_t row_shift,Int_t col_ shift); | |||
virtual TMatrixTBase<Element> &ResizeTo (Int_t nrows,Int_t ncols,In | virtual TMatrixTBase<Element> &ResizeTo (Int_t nrows,Int_t ncols,In | |||
t_t nr_nonzeros=-1); | t_t /*nr_nonzeros*/ =-1); | |||
virtual TMatrixTBase<Element> &ResizeTo (Int_t row_lwb,Int_t row_up | virtual TMatrixTBase<Element> &ResizeTo (Int_t row_lwb,Int_t row_up | |||
b,Int_t col_lwb,Int_t col_upb,Int_t nr_nonzeros=-1); | b,Int_t col_lwb,Int_t col_upb,Int_t /*nr_nonzeros*/ =-1); | |||
inline TMatrixTBase<Element> &ResizeTo (const TMatrixTSym<Element> &m) { | inline TMatrixTBase<Element> &ResizeTo (const TMatrixTSym<Element> &m) { | |||
return ResizeTo(m.GetRowLwb (),m.GetRowUpb(),m.GetColLwb(),m.GetColUpb()); } | return ResizeTo(m.GetRowLwb (),m.GetRowUpb(),m.GetColLwb(),m.GetColUpb()); } | |||
virtual Double_t Determinant () const; | virtual Double_t Determinant () const; | |||
virtual void Determinant (Double_t &d1,Double_t &d2) const; | virtual void Determinant (Double_t &d1,Double_t &d2) const; | |||
TMatrixTSym<Element> &Invert (Double_t *det=0); | TMatrixTSym<Element> &Invert (Double_t *det=0); | |||
TMatrixTSym<Element> &InvertFast (Double_t *det=0); | TMatrixTSym<Element> &InvertFast (Double_t *det=0); | |||
TMatrixTSym<Element> &Transpose (const TMatrixTSym<Element> &source); | TMatrixTSym<Element> &Transpose (const TMatrixTSym<Element> &source); | |||
inline TMatrixTSym<Element> &T () { return this->Transpose (*this); } | inline TMatrixTSym<Element> &T () { return this->Transpose (*this); } | |||
End of changes. 3 change blocks. | ||||
6 lines changed or deleted | 6 lines changed or added | |||
TMemStat.h | TMemStat.h | |||
---|---|---|---|---|
// @(#)root/memstat:$Name$:$Id: TMemStat.h 30815 2009-10-20 13:49:22Z rdm $ | // @(#)root/memstat:$Id: TMemStat.h 32847 2010-03-31 10:29:17Z anar $ | |||
// Author: D.Bertini and M.Ivanov 18/06/2007 -- Anar Manafov (A.Manafov@g | // Author: Anar Manafov (A.Manafov@gsi.de) 2008-03-02 | |||
si.de) 28/04/2008 | ||||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2010, 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_TMemStat | #ifndef ROOT_TMemStat | |||
#define ROOT_TMemStat | #define ROOT_TMemStat | |||
// STD | class TMemStat: public TObject { | |||
#include <memory> | ||||
#include <vector> | ||||
#include <set> | ||||
// ROOT | ||||
#ifndef ROOT_TString | ||||
#include "TString.h" | ||||
#endif | ||||
#ifndef ROOT_TObjArray | ||||
#include "TObjArray.h" | ||||
#endif | ||||
#ifndef ROOT_TFile | ||||
#include "TFile.h" | ||||
#endif | ||||
#ifndef ROOT_TObjString | ||||
#include "TObjString.h" | ||||
#endif | ||||
class TArrayI; | ||||
class TBits; | ||||
class TTree; | ||||
class TMemStatManager; | ||||
class TGraph; | ||||
class TMemStatCodeInfo; | ||||
class TMemStatInfoStamp; | ||||
typedef std::vector<UInt_t> UIntVector_t; | ||||
typedef std::vector<Int_t> IntVector_t; | ||||
typedef std::auto_ptr<TFile> TFilePtr; | ||||
class TMemStat: public TObject | ||||
{ | ||||
public: | ||||
typedef std::set<std::string> Selection_t; | ||||
enum ESelection { kFunction, kLibrary }; | ||||
enum StatType { kTotalAllocCount = 0, kAllocCount = 2, kTotalAllocSize | ||||
= 1, kAllocSize = 3, kUndef = 4}; | ||||
enum StampType { kCurrent = 0, kMaxSize = 1, kMaxCount = 2}; | ||||
enum OperType { kAND = 0, kOR = 1, kNOT = 2}; | ||||
private: | private: | |||
StatType fSortStat; // sorting statistic type | Bool_t fIsActive; // is object attached to MemStat | |||
StampType fSortStamp; // sorting stamp type | ||||
Double_t fMaximum; // maximum value of all graph | ||||
s | ||||
UInt_t fSortDeep; // Deepness of the informatio | ||||
n to be print - draw | ||||
UInt_t fStackDeep; // Deepness of the stack info | ||||
rmation | ||||
UInt_t fMaxStringLength; // max length of information | ||||
string | ||||
Int_t fSelected; // index of selected object | ||||
Bool_t fIsActive; // is object attached to MemS | ||||
tat | ||||
Bool_t fOrder; // sorting order | ||||
UIntVector_t fSelectedCodeIndex; // vector of indexes of selec | ||||
ted items - code | ||||
UIntVector_t fSelectedStackIndex; // vector of indexes of selec | ||||
ted items - stack | ||||
IntVector_t fArrayIndexes; // indexes of selected object | ||||
s | ||||
TBits* fSelectedCodeBitmap; // bitmask of selected item | ||||
s - code | ||||
TBits* fSelectedStackBitmap; // bitmask of selected item | ||||
s - stack | ||||
TFilePtr fFile; // current file with informat | ||||
ion - stamps | ||||
TObjArray* fStampArray; // array of stamp names | ||||
TObjArray* fArray; // array of objects to draw | ||||
TObjArray* fArrayGraphics; // array of graphic objects | ||||
TObjArray fDisablePrintLib; // disable printing for libra | ||||
ries | ||||
TObjArray fDisablePrintCode; // disable printing for libra | ||||
ries | ||||
TString fOption; // current options | ||||
TTree* fTree; // current tree with informat | ||||
ion - stamps | ||||
TTree* fTreeSys; // tree with system informati | ||||
on | ||||
TMemStatInfoStamp* fStackSummary; // summary information for se | ||||
lected stack | ||||
TMemStatManager* fManager; // current MemStatManager | ||||
private : | ||||
Int_t DistancetoPrimitive(Int_t px, Int_t py); | ||||
Bool_t GetMemStat(const char * fname, Int_t entry); | ||||
Bool_t EnabledCode(const TMemStatCodeInfo &info) const; | ||||
void ExecuteEvent(Int_t event, Int_t px, Int_t py); | ||||
void MakeCodeArray(); | ||||
TGraph* MakeGraph(StatType statType, Int_t id, Int_t type, Double_t & | ||||
xmax, Double_t &ymax); | ||||
TObjArray* MakeGraphCode(StatType statType, Int_t nentries); | ||||
TObjArray* MakeGraphStack(StatType statType, Int_t nentries); | ||||
void MakeStampsText(); | ||||
void MakeStackArray(); | ||||
void ProcessOption(Option_t *option); | ||||
void RefreshSelect(); | ||||
public: | public: | |||
TMemStat(Option_t* option = "read"); | TMemStat(Option_t* option = "read"); | |||
virtual ~TMemStat(); | virtual ~TMemStat(); | |||
public: | ClassDef(TMemStat, 0) // a user interface class of MemStat | |||
void AddStamp(const char*stampName); | ||||
void Draw(Option_t *option = ""); | ||||
void GetFillSelection(Selection_t *_Container, ESelection _S | ||||
election) const; | ||||
const Option_t* GetOption() const { | ||||
return fOption.Data(); | ||||
} | ||||
TObjArray* GetStampList(); | ||||
UInt_t GetStackDeep() const | ||||
{ | ||||
return fStackDeep; | ||||
} | ||||
UInt_t GetSortDeep() const | ||||
{ | ||||
return fSortDeep; | ||||
} | ||||
UInt_t GetMaxStringLength() const | ||||
{ | ||||
return fMaxStringLength; | ||||
} | ||||
virtual char *GetObjectInfo(Int_t px, Int_t py) const; | ||||
void MakeReport(const char * lib = "", const char *fun = "", | ||||
Option_t* option = NULL, const char *fileNam | ||||
e = ""); | ||||
void MakeHisMemoryStamp(Int_t topDiff); | ||||
void MakeHisMemoryTime(); | ||||
void Paint(Option_t *option = ""); | ||||
void PrintCode(Int_t nentries = 10) const; | ||||
void PrintCodeWithID(UInt_t index) const; | ||||
void PrintStack(Int_t nentries = 10, UInt_t deep = 1) const; | ||||
void PrintStackWithID(UInt_t _id, UInt_t _deep = 0) const; | ||||
void Report(Option_t* option = ""); | ||||
void ResetSelection(); | ||||
void SetAutoStamp(Int_t autoStampSize = 2000000, Int_t autoS | ||||
tampAlloc = 200000); | ||||
void SetCurrentStamp(const char *stampName); | ||||
void SetCurrentStamp(const TObjString &stampName); | ||||
void SetSortStat(StatType NewVal) | ||||
{ | ||||
fSortStat = NewVal; | ||||
} | ||||
void SetSortStamp(StampType NewVal) | ||||
{ | ||||
fSortStamp= NewVal; | ||||
} | ||||
void SetStackDeep(UInt_t NewVal) | ||||
{ | ||||
fStackDeep = NewVal; | ||||
} | ||||
void SetSortDeep(UInt_t NewVal) | ||||
{ | ||||
fSortDeep = NewVal; | ||||
} | ||||
void SelectCode(const char *contlib = "", | ||||
const char *contfunction = "", OperType oTyp | ||||
e = kOR); | ||||
void SelectStack(OperType oType = kOR); | ||||
void SortCode(StatType sortType, StampType stampType); | ||||
void SortStack(StatType sortType, StampType stampType); | ||||
ClassDef(TMemStat, 0) // a user interface class of memstat | ||||
}; | }; | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
169 lines changed or deleted | 11 lines changed or added | |||
TMemStatHelpers.h | TMemStatHelpers.h | |||
---|---|---|---|---|
// @(#)root/memstat:$Name$:$Id: TMemStatHelpers.h 30815 2009-10-20 13:49:22 | // @(#)root/memstat:$Id: TMemStatHelpers.h 32768 2010-03-25 15:34:18Z pcana | |||
Z rdm $ | l $ | |||
// Author: Anar Manafov (A.Manafov@gsi.de) 09/05/2008 | // Author: Anar Manafov (A.Manafov@gsi.de) 2008-03-02 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2010, 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_TMemStatHelpers | #ifndef ROOT_TMemStatHelpers | |||
#define ROOT_TMemStatHelpers | #define ROOT_TMemStatHelpers | |||
// ROOT | // ROOT | |||
#ifndef ROOT_TString | ||||
#include "TString.h" | #include "TString.h" | |||
#endif | ||||
#ifndef ROOT_TObjString | ||||
#include "TObjString.h" | #include "TObjString.h" | |||
#endif | ||||
#ifndef ROOT_TCollection | ||||
#include "TCollection.h" | #include "TCollection.h" | |||
#endif | ||||
// STD | // STD | |||
#include <string> | #include <string> | |||
#include <functional> | #include <functional> | |||
#include <algorithm> | #include <algorithm> | |||
#include <cctype> | #include <cctype> | |||
class TObject; | class TObject; | |||
namespace Memstat | namespace memstat { | |||
{ | std::string dig2bytes(Long64_t bytes); | |||
std::string dig2bytes(Long64_t bytes); | ||||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
struct SFind_t : std::binary_function<TObject*, TString, bool> { | struct SFind_t : std::binary_function<TObject*, TString, bool> { | |||
bool operator()(TObject *_Obj, const TString &_ToFind) const | bool operator()(TObject *_Obj, const TString &_ToFind) const { | |||
{ | TObjString *str(dynamic_cast<TObjString*>(_Obj)); | |||
TObjString *str(dynamic_cast<TObjString*>(_Obj)); | if(!str) | |||
if (!str) | return false; | |||
return false; | return !str->String().CompareTo(_ToFind); | |||
return !str->String().CompareTo(_ToFind); | } | |||
} | }; | |||
}; | ||||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
template<class T> | template<class T> | |||
Int_t find_string( const T &_Container, const TString &_ToFind ) | Int_t find_string(const T &_Container, const TString &_ToFind) | |||
{ | { | |||
// This function retuns an index in _Container of found element. | // This function retuns an index in _Container of found element. | |||
// Returns -1 if there was no element found. | // Returns -1 if there was no element found. | |||
typedef TIterCategory<T> iterator_t; | typedef TIterCategory<T> iterator_t; | |||
iterator_t iter(&_Container); | iterator_t iter(&_Container); | |||
iterator_t found( | iterator_t found( | |||
std::find_if(iter.Begin(), iterator_t::End(), bind2nd(SFind_t(), _ToF | std::find_if(iter.Begin(), iterator_t::End(), bind2nd(SFind_t(), _ | |||
ind)) | ToFind)) | |||
); | ); | |||
return ( ( !(*found) )? -1: std::distance(iter.Begin(), found) ); | return ((!(*found)) ? -1 : std::distance(iter.Begin(), found)); | |||
} | } | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
// HACK: because of the bug in gcc 3.3 we need to use this nasty ToLower an d ToUpper instead of direct calls of tolower (tolower.. is inline in this v ersion of std lib)... | // HACK: because of the bug in gcc 3.3 we need to use this nasty ToLower an d ToUpper instead of direct calls of tolower (tolower.. is inline in this v ersion of std lib)... | |||
struct ToLower_t | struct ToLower_t { | |||
{ | char operator()(char c) const { | |||
char operator() ( char c ) const | return std::tolower(c); | |||
{ | } | |||
return std::tolower( c ); | }; | |||
} | ||||
}; | ||||
}; | } | |||
#endif | #endif | |||
End of changes. 11 change blocks. | ||||
51 lines changed or deleted | 40 lines changed or added | |||
TMinuitMinimizer.h | TMinuitMinimizer.h | |||
---|---|---|---|---|
// @(#)root/minuit:$Id: TMinuitMinimizer.h 31604 2009-12-07 19:04:33Z monet a $ | // @(#)root/minuit:$Id: TMinuitMinimizer.h 32479 2010-03-05 14:31:15Z monet a $ | |||
// Author: L. Moneta Wed Oct 25 16:28:55 2006 | // Author: L. Moneta Wed Oct 25 16:28:55 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 TMinuitMinimizer | // Header file for class TMinuitMinimizer | |||
skipping to change at line 193 | skipping to change at line 193 | |||
protected: | protected: | |||
/// implementation of FCN for Minuit | /// implementation of FCN for Minuit | |||
static void Fcn( int &, double * , double & f, double * , int); | static void Fcn( int &, double * , double & f, double * , int); | |||
/// implementation of FCN for Minuit when user provided gradient is used | /// implementation of FCN for Minuit when user provided gradient is used | |||
static void FcnGrad( int &, double * g, double & f, double * , int); | static void FcnGrad( int &, double * g, double & f, double * , int); | |||
/// reset | /// reset | |||
void DoClear(); | void DoClear(); | |||
///release a parameter that is fixed when it is redefined | ||||
void DoReleaseFixParameter( int ivar); | ||||
/// retrieve minimum parameters and errors from TMinuit | /// retrieve minimum parameters and errors from TMinuit | |||
void RetrieveParams(); | void RetrieveParams(); | |||
/// retrieve error matrix from TMinuit | /// retrieve error matrix from TMinuit | |||
void RetrieveErrorMatrix(); | void RetrieveErrorMatrix(); | |||
private: | private: | |||
bool fUsed; | bool fUsed; | |||
bool fMinosRun; | bool fMinosRun; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TObjArray.h | TObjArray.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TObjArray.h 30137 2009-09-14 10:12:23Z rdm $ | // @(#)root/cont:$Id: TObjArray.h 32781 2010-03-26 13:06:14Z pcanal $ | |||
// Author: Fons Rademakers 11/09/95 | // Author: Fons Rademakers 11/09/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 | |||
// elements (shrinking can be done by hand). // | // elements (shrinking can be done by hand). // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TSeqCollection | #ifndef ROOT_TSeqCollection | |||
#include "TSeqCollection.h" | #include "TSeqCollection.h" | |||
#endif | #endif | |||
#include <iterator> | #include <iterator> | |||
#if (__GNUC__ >= 3) && !defined(__INTEL_COMPILER) | ||||
// Prevent -Weffc++ from complaining about the inheritance | ||||
// TObjArrayIter from std::iterator. | ||||
#pragma GCC system_header | ||||
#endif | ||||
class TObjArrayIter; | class TObjArrayIter; | |||
class TObjArray : public TSeqCollection { | class TObjArray : public TSeqCollection { | |||
friend class TObjArrayIter; | friend class TObjArrayIter; | |||
friend class TClonesArray; | friend class TClonesArray; | |||
protected: | protected: | |||
TObject **fCont; //!Array contents | TObject **fCont; //!Array contents | |||
Int_t fLowerBound; //Lower bound of the array | Int_t fLowerBound; //Lower bound of the array | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
TPacketizerAdaptive.h | TPacketizerAdaptive.h | |||
---|---|---|---|---|
// @(#)root/proofplayer:$Id: TPacketizerAdaptive.h 30859 2009-10-24 14:53:0 7Z ganis $ | // @(#)root/proofplayer:$Id: TPacketizerAdaptive.h 32204 2010-02-03 19:17:4 0Z 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 60 | skipping to change at line 60 | |||
public: // public because of Sun CC bug | public: // public because of Sun CC bug | |||
class TFileNode; | class TFileNode; | |||
class TFileStat; | class TFileStat; | |||
class TSlaveStat; | class TSlaveStat; | |||
private: | private: | |||
TList *fFileNodes; // nodes with files | TList *fFileNodes; // nodes with files | |||
TList *fUnAllocated; // nodes with unallocated files | TList *fUnAllocated; // nodes with unallocated files | |||
TList *fActive; // nodes with unfinished files | TList *fActive; // nodes with unfinished files | |||
TMap *fSlaveStats; // slave status, keyed by correspondig TSl | ||||
ave | ||||
Int_t fMaxPerfIdx; // maximum of our slaves' performance inde x | Int_t fMaxPerfIdx; // maximum of our slaves' performance inde x | |||
Float_t fFractionOfRemoteFiles; // fraction of TDSetElements | Float_t fFractionOfRemoteFiles; // fraction of TDSetElements | |||
// that are on non slaves | // that are on non slaves | |||
Long64_t fNEventsOnRemLoc; // number of events in currently | Long64_t fNEventsOnRemLoc; // number of events in currently | |||
// unalloc files on non-worker lo c. | // unalloc files on non-worker lo c. | |||
Float_t fBaseLocalPreference; // indicates how much more likely | Float_t fBaseLocalPreference; // indicates how much more likely | |||
// the nodes will be to open their local files (1 means indifferent) | // the nodes will be to open their local files (1 means indifferent) | |||
Bool_t fForceLocal; // if 1 - eliminate the remote processing | Bool_t fForceLocal; // if 1 - eliminate the remote processing | |||
skipping to change at line 91 | skipping to change at line 89 | |||
void RemoveActiveNode(TFileNode *); | void RemoveActiveNode(TFileNode *); | |||
TFileStat *GetNextUnAlloc(TFileNode *node = 0); | TFileStat *GetNextUnAlloc(TFileNode *node = 0); | |||
TFileStat *GetNextActive(); | TFileStat *GetNextActive(); | |||
void RemoveActive(TFileStat *file); | void RemoveActive(TFileStat *file); | |||
void Reset(); | void Reset(); | |||
void ValidateFiles(TDSet *dset, TList *slaves); | void ValidateFiles(TDSet *dset, TList *slaves); | |||
Int_t ReassignPacket(TDSetElement *e, TList **listOfMissingFile s); | Int_t ReassignPacket(TDSetElement *e, TList **listOfMissingFile s); | |||
void SplitPerHost(TList *elements, TList **listOfMissingFiles) ; | void SplitPerHost(TList *elements, TList **listOfMissingFiles) ; | |||
Int_t AddProcessed(TSlave *sl, TProofProgressStatus *st, | ||||
Double_t latency, TList **listOfMissingFiles | ||||
= 0); | ||||
public: | public: | |||
static Long_t fgMaxSlaveCnt; // maximum number of workers per filenod e (Long_t to avoid | static Long_t fgMaxSlaveCnt; // maximum number of workers per filenod e (Long_t to avoid | |||
// warnings from backward compatibility support) | // warnings from backward compatibility support) | |||
static Int_t fgPacketAsAFraction; // used to calculate the packet siz e | static Int_t fgPacketAsAFraction; // used to calculate the packet siz e | |||
// fPacketSize = fTotalEntries / (fPacket AsAFraction * nslaves) | // fPacketSize = fTotalEntries / (fPacket AsAFraction * nslaves) | |||
// fPacketAsAFraction can be interpreted as follows: | // fPacketAsAFraction can be interpreted as follows: | |||
// assuming all slaves have equal process ing rate, packet size | // assuming all slaves have equal process ing rate, packet size | |||
// is (#events processed by 1 slave) / fP acketSizeAsAFraction. | // is (#events processed by 1 slave) / fP acketSizeAsAFraction. | |||
// It can be set with PROOF_PacketAsAFrac tion in input list. | // It can be set with PROOF_PacketAsAFrac tion in input list. | |||
static Double_t fgMinPacketTime; // minimum packet time | static Double_t fgMinPacketTime; // minimum packet time | |||
static Double_t fgMaxPacketTime; // maximum packet time | static Double_t fgMaxPacketTime; // maximum packet time | |||
static Int_t fgStrategy; // 0 means the classic and 1 (default) - the adaptive strategy | static Int_t fgStrategy; // 0 means the classic and 1 (default) - the adaptive strategy | |||
TPacketizerAdaptive(TDSet *dset, TList *slaves, Long64_t first, Long64_t num, | TPacketizerAdaptive(TDSet *dset, TList *slaves, Long64_t first, Long64_t num, | |||
TList *input, TProofProgressStatus *st); | TList *input, TProofProgressStatus *st); | |||
virtual ~TPacketizerAdaptive(); | virtual ~TPacketizerAdaptive(); | |||
Int_t AddProcessed(TSlave *sl, TProofProgressStatus *st, | ||||
Double_t latency, TList **listOfMissingFiles | ||||
= 0); | ||||
Int_t GetEstEntriesProcessed(Float_t, Long64_t &ent, Long64_t &b ytes, Long64_t &calls); | Int_t GetEstEntriesProcessed(Float_t, Long64_t &ent, Long64_t &b ytes, Long64_t &calls); | |||
Float_t GetCurrentRate(Bool_t &all); | Float_t GetCurrentRate(Bool_t &all); | |||
Int_t CalculatePacketSize(TObject *slstat, Long64_t cachesz, Int _t learnent); | Int_t CalculatePacketSize(TObject *slstat, Long64_t cachesz, Int _t learnent); | |||
TDSetElement *GetNextPacket(TSlave *sl, TMessage *r); | TDSetElement *GetNextPacket(TSlave *sl, TMessage *r); | |||
void MarkBad(TSlave *s, TProofProgressStatus *status, TList **m issingFiles); | void MarkBad(TSlave *s, TProofProgressStatus *status, TList **m issingFiles); | |||
Int_t GetActiveWorkers(); | Int_t GetActiveWorkers(); | |||
ClassDef(TPacketizerAdaptive,0) //Generate work packets for parallel pr ocessing | ClassDef(TPacketizerAdaptive,0) //Generate work packets for parallel pr ocessing | |||
}; | }; | |||
End of changes. 4 change blocks. | ||||
7 lines changed or deleted | 4 lines changed or added | |||
TPadPainter.h | TPadPainter.h | |||
---|---|---|---|---|
skipping to change at line 78 | skipping to change at line 78 | |||
void DrawPolyLine(Int_t n, const Double_t *x, const Double_t *y); | void DrawPolyLine(Int_t n, const Double_t *x, const Double_t *y); | |||
void DrawPolyLine(Int_t n, const Float_t *x, const Float_t *y); | void DrawPolyLine(Int_t n, const Float_t *x, const Float_t *y); | |||
void DrawPolyLineNDC(Int_t n, const Double_t *u, const Double_t *v); | void DrawPolyLineNDC(Int_t n, const Double_t *u, const Double_t *v); | |||
//TPad needs both versions. | //TPad needs both versions. | |||
void DrawPolyMarker(Int_t n, const Double_t *x, const Double_t *y); | void DrawPolyMarker(Int_t n, const Double_t *x, const Double_t *y); | |||
void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y); | void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y); | |||
void DrawText(Double_t x, Double_t y, const char *text, ETextMode mo de); | void DrawText(Double_t x, Double_t y, const char *text, ETextMode mo de); | |||
void DrawTextNDC(Double_t u, Double_t v, const char *text, ETextMode mode); | void DrawTextNDC(Double_t u, Double_t v, const char *text, ETextMode mode); | |||
//jpg, png, bmp, gif output. | ||||
void SaveImage(TVirtualPad *pad, const char *fileName, Int_t type) c | ||||
onst; | ||||
private: | private: | |||
TPadPainter(const TPadPainter &rhs); | TPadPainter(const TPadPainter &rhs); | |||
TPadPainter & operator = (const TPadPainter &rhs); | TPadPainter & operator = (const TPadPainter &rhs); | |||
ClassDef(TPadPainter, 0) //Abstract interface for painting in TPad | ClassDef(TPadPainter, 0) //Abstract interface for painting in TPad | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 5 lines changed or added | |||
TParticlePDG.h | TParticlePDG.h | |||
---|---|---|---|---|
// @(#)root/eg:$Id: TParticlePDG.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/eg:$Id: TParticlePDG.h 31956 2010-01-04 10:13:13Z brun $ | |||
// Author: Pasha Murat 12/02/99 | // Author: Pasha Murat 12/02/99 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 TParticlePDG_hh | #ifndef TParticlePDG_hh | |||
skipping to change at line 32 | skipping to change at line 32 | |||
class TParticlePDG : public TNamed { | class TParticlePDG : public TNamed { | |||
public: | public: | |||
//------------------------------------------------------------------------- ----- | //------------------------------------------------------------------------- ----- | |||
// data members | // data members | |||
//------------------------------------------------------------------------- ----- | //------------------------------------------------------------------------- ----- | |||
protected: | protected: | |||
Int_t fPdgCode; // PDG code of the particle | Int_t fPdgCode; // PDG code of the particle | |||
Double_t fMass; // particle mass in GeV | Double_t fMass; // particle mass in GeV | |||
Double_t fCharge; // charge in units of |e|/3 | Double_t fCharge; // charge in units of |e|/3 | |||
Double_t fLifetime; // proper lifetime in nanos econds | Double_t fLifetime; // proper lifetime in secon ds | |||
Double_t fWidth; // total width in GeV | Double_t fWidth; // total width in GeV | |||
Int_t fParity; | Int_t fParity; | |||
Double_t fSpin; | Double_t fSpin; | |||
Double_t fIsospin; // isospin | Double_t fIsospin; // isospin | |||
Double_t fI3; // i3 | Double_t fI3; // i3 | |||
Int_t fStrangeness; // flavours are defined if i3 != -1 | Int_t fStrangeness; // flavours are defined if i3 != -1 | |||
Int_t fCharm; // 1 or -1 for C-particles, | Int_t fCharm; // 1 or -1 for C-particles, | |||
// 0 for others | // 0 for others | |||
Int_t fBeauty; // | Int_t fBeauty; // | |||
Int_t fTop; // | Int_t fTop; // | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TPieEditor.h | TPieEditor.h | |||
---|---|---|---|---|
// @(#)root/ged:$Id: TPieEditor.h 31945 2009-12-21 19:03:21Z rdm $ | ||||
// Author: Guido Volpi 04/10/2007 | // Author: Guido Volpi 04/10/2007 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 34 | skipping to change at line 35 | |||
#endif | #endif | |||
class TPie; | class TPie; | |||
class TGButtonGroup; | class TGButtonGroup; | |||
class TGTextEntry; | class TGTextEntry; | |||
class TGCheckButton; | class TGCheckButton; | |||
class TGRadioButton; | class TGRadioButton; | |||
class TGNumberEntry; | class TGNumberEntry; | |||
class TGColorSelect; | class TGColorSelect; | |||
class TGFontTypeComboBox; | class TGFontTypeComboBox; | |||
class TGCombox; | class TGComboBox; | |||
class TPieEditor : public TGedFrame { | class TPieEditor : public TGedFrame { | |||
protected: | protected: | |||
char fDrawShape; // Shape of the Graph (simple, smooth , bar) | char fDrawShape; // Shape of the Graph (simple, smooth , bar) | |||
TGTextEntry *fTitle; // Contains the title of the graph | TGTextEntry *fTitle; // Contains the title of the graph | |||
Int_t fTitlePrec; // font precision level | Int_t fTitlePrec; // font precision level | |||
TPie *fPie; // Pie object | TPie *fPie; // Pie object | |||
TGButtonGroup *fgr; // Group the Radiobuttons: | TGButtonGroup *fgr; // Group the Radiobuttons: | |||
TGRadioButton *fLblDirH; // Draw slice's labels horizontal | TGRadioButton *fLblDirH; // Draw slice's labels horizontal | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TPluginManager.h | TPluginManager.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TPluginManager.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TPluginManager.h 32284 2010-02-08 15:57:44Z rdm $ | |||
// Author: Fons Rademakers 26/1/2002 | // Author: Fons Rademakers 26/1/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 30 | skipping to change at line 30 | |||
// a list of plugin handlers. A plugin handler knows which plugin // | // a list of plugin handlers. A plugin handler knows which plugin // | |||
// library to load to get a specific class that is used to extend the // | // library to load to get a specific class that is used to extend the // | |||
// functionality of a specific base class and how to create an object // | // functionality of a specific base class and how to create an object // | |||
// of this class. For example, to extend the base class TFile to be // | // of this class. For example, to extend the base class TFile to be // | |||
// able to read RFIO files one needs to load the plugin library // | // able to read RFIO files one needs to load the plugin library // | |||
// libRFIO.so which defines the TRFIOFile class. This loading should // | // libRFIO.so which defines the TRFIOFile class. This loading should // | |||
// be triggered when a given URI contains a regular expression defined // | // be triggered when a given URI contains a regular expression defined // | |||
// by the handler. // | // by the handler. // | |||
// Plugin handlers can be defined via macros in a list of plugin // | // Plugin handlers can be defined via macros in a list of plugin // | |||
// directories. With $ROOTSYS/etc/plugins the default top plugin // | // directories. With $ROOTSYS/etc/plugins the default top plugin // | |||
// directory specified in $ROOTSYS/etc/system.rootrc. The macros must // | // directory specified in $ROOTSYS/etc/system.rootrc. Additional // | |||
// have names like <BaseClass>/PX0_<PluginClass>.C, e.g.: // | // directories can be specified by adding them to the end of the list. // | |||
// Macros for identical plugin handlers in later directories will // | ||||
// override previous ones (the inverse of normal search path behavior). // | ||||
// The macros must have names like <BaseClass>/PX0_<PluginClass>.C, // | ||||
// e.g.: // | ||||
// TFile/P10_TRFIOFile.C, TSQLServer/P20_TMySQLServer.C, etc. // | // TFile/P10_TRFIOFile.C, TSQLServer/P20_TMySQLServer.C, etc. // | |||
// to allow easy sorting and grouping. If the BaseClass is in a // | // to allow easy sorting and grouping. If the BaseClass is in a // | |||
// namespace the directory must have the name NameSpace@@BaseClass as // | // namespace the directory must have the name NameSpace@@BaseClass as // | |||
// : is a reserved pathname character on some operating systems. // | // : is a reserved pathname character on some operating systems. // | |||
// Macros not beginning with 'P' and ending with ".C" are ignored. // | // Macros not beginning with 'P' and ending with ".C" are ignored. // | |||
// These macros typically look like: // | // These macros typically look like: // | |||
// // | // // | |||
// void P10_TDCacheFile() // | // void P10_TDCacheFile() // | |||
// { // | // { // | |||
// gPluginMgr->AddHandler("TFile", "^dcache", "TDCacheFile", // | // gPluginMgr->AddHandler("TFile", "^dcache", "TDCacheFile", // | |||
skipping to change at line 136 | skipping to change at line 140 | |||
const char *GetRegexp() const { return fRegexp; } | const char *GetRegexp() const { return fRegexp; } | |||
const char *GetPlugin() const { return fPlugin; } | const char *GetPlugin() const { return fPlugin; } | |||
const char *GetCtor() const { return fCtor; } | const char *GetCtor() const { return fCtor; } | |||
const char *GetOrigin() const { return fOrigin; } | const char *GetOrigin() const { return fOrigin; } | |||
Bool_t CanHandle(const char *base, const char *uri); | Bool_t CanHandle(const char *base, const char *uri); | |||
void SetupCallEnv(); | void SetupCallEnv(); | |||
public: | public: | |||
const char *GetClass() const { return fClass; } | const char *GetClass() const { return fClass; } | |||
Int_t CheckPlugin(); | Int_t CheckPlugin() const; | |||
Int_t LoadPlugin(); | Int_t LoadPlugin(); | |||
Long_t ExecPlugin(Int_t nargs, ...); | Long_t ExecPlugin(Int_t nargs, ...); | |||
void Print(Option_t *opt = "") const; | ||||
ClassDef(TPluginHandler,3) // Handler for plugin libraries | ClassDef(TPluginHandler,3) // Handler for plugin libraries | |||
}; | }; | |||
class TPluginManager : public TObject { | class TPluginManager : public TObject { | |||
private: | private: | |||
TList *fHandlers; // list of plugin handlers | TList *fHandlers; // list of plugin handlers | |||
THashTable *fBasesLoaded; //! table of base classes already checked or loaded | THashTable *fBasesLoaded; //! table of base classes already checked or loaded | |||
Bool_t fReadingDirs; //! true if we are running LoadHandlersFromPl uginDirs | Bool_t fReadingDirs; //! true if we are running LoadHandlersFromPl uginDirs | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 10 lines changed or added | |||
TProof.h | TProof.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TProof.h 31520 2009-12-03 12:58:41Z brun $ | // @(#)root/proof:$Id: TProof.h 33209 2010-04-26 10:27:40Z 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 26 | skipping to change at line 26 | |||
// // | // // | |||
// TProof // | // TProof // | |||
// // | // // | |||
// This class controls a Parallel ROOT Facility, PROOF, cluster. // | // This class controls a Parallel ROOT Facility, PROOF, cluster. // | |||
// It fires the worker servers, it keeps track of how many workers are // | // It fires the worker servers, it keeps track of how many workers are // | |||
// running, it keeps track of the workers running status, it broadcasts // | // running, it keeps track of the workers running status, it broadcasts // | |||
// messages to all workers, it collects results, etc. // | // messages to all workers, it collects results, etc. // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TProof | ||||
#include "TProof.h" | ||||
#endif | ||||
#ifndef ROOT_TProofMgr | #ifndef ROOT_TProofMgr | |||
#include "TProofMgr.h" | #include "TProofMgr.h" | |||
#endif | #endif | |||
#ifndef ROOT_TProofDebug | #ifndef ROOT_TProofDebug | |||
#include "TProofDebug.h" | #include "TProofDebug.h" | |||
#endif | #endif | |||
#ifndef ROOT_TString | #ifndef ROOT_TString | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
#ifndef ROOT_MessageTypes | #ifndef ROOT_MessageTypes | |||
#include "MessageTypes.h" | #include "MessageTypes.h" | |||
#endif | #endif | |||
#ifndef ROOT_TMD5 | #ifndef ROOT_TMD5 | |||
#include "TMD5.h" | #include "TMD5.h" | |||
#endif | #endif | |||
#ifndef ROOT_TRegexp | ||||
#include "TRegexp.h" | ||||
#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 | |||
skipping to change at line 93 | skipping to change at line 93 | |||
class TQueryResult; | class TQueryResult; | |||
class TSignalHandler; | class TSignalHandler; | |||
class TSlave; | class TSlave; | |||
class TSemaphore; | class TSemaphore; | |||
class TSocket; | class TSocket; | |||
class TTree; | class TTree; | |||
class TVirtualMutex; | class TVirtualMutex; | |||
class TFileCollection; | class TFileCollection; | |||
class TMap; | class TMap; | |||
class TDataSetManager; | class TDataSetManager; | |||
class TMacro; | ||||
// protocol changes: | // protocol changes: | |||
// 1 -> 2: new arguments for Process() command, option added | // 1 -> 2: new arguments for Process() command, option added | |||
// 2 -> 3: package manager enabling protocol changed | // 2 -> 3: package manager enabling protocol changed | |||
// 3 -> 4: introduction of multi-level-master support | // 3 -> 4: introduction of multi-level-master support | |||
// 4 -> 5: added friends support | // 4 -> 5: added friends support | |||
// 5 -> 6: drop TFTP, support for asynchronous queries | // 5 -> 6: drop TFTP, support for asynchronous queries | |||
// 6 -> 7: support for multisessions, archieve, retrieve, ... | // 6 -> 7: support for multisessions, archieve, retrieve, ... | |||
// 7 -> 8: return number of entries in GetNextPacket | // 7 -> 8: return number of entries in GetNextPacket | |||
// 8 -> 9: support for stateless connection via xproofd | // 8 -> 9: support for stateless connection via xproofd | |||
skipping to change at line 122 | skipping to change at line 123 | |||
// 18 -> 19: TProofProgressStatus used in kPROOF_PROGRESS, kPROOF_STOPPROCE SS | // 18 -> 19: TProofProgressStatus used in kPROOF_PROGRESS, kPROOF_STOPPROCE SS | |||
// and kPROOF_GETNEXTPACKET messages in Master - worker communica tion | // and kPROOF_GETNEXTPACKET messages in Master - worker communica tion | |||
// 19 -> 20: Fix the asynchronous mode (required changes in some messages) | // 19 -> 20: Fix the asynchronous mode (required changes in some messages) | |||
// 20 -> 21: Add support for session queuing | // 20 -> 21: Add support for session queuing | |||
// 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, | ||||
// package download, dataset caching | ||||
// PROOF magic constants | // PROOF magic constants | |||
const Int_t kPROOF_Protocol = 27; // protocol versi on number | const Int_t kPROOF_Protocol = 28; // 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_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_InputDataFile = "inputdata.root"; // Defaul t input data file name | const char* const kPROOF_InputDataFile = "inputdata.root"; // Defaul t input data file name | |||
#ifndef R__WIN32 | #ifndef R__WIN32 | |||
skipping to change at line 260 | skipping to change at line 264 | |||
Int_t fMergedObjects; // Total number of objects it must accept from other workers | Int_t fMergedObjects; // Total number of objects it must accept from other workers | |||
// (-1 == not set yet) | // (-1 == not set yet) | |||
Int_t fWorkersToMerge; // Number of workers that are merged on th is merger | Int_t fWorkersToMerge; // Number of workers that are merged on th is merger | |||
// (does not change during time) | // (does not change during time) | |||
Int_t fMergedWorkers; // Current number of already merged worker s | Int_t fMergedWorkers; // Current number of already merged worker s | |||
// (does change during time as workers are being merged) | // (does change during time as workers are being merged) | |||
TList *fWorkers; // List of already assigned workers | TList *fWorkers; // List of already assigned workers | |||
Bool_t fIsActive; // Merger state | Bool_t fIsActive; // Merger state | |||
public: | TMergerInfo(const TMergerInfo&); // Not implemented | |||
TMergerInfo& operator=(const TMergerInfo&); // Not implemented | ||||
public: | ||||
TMergerInfo(TSlave *t, Int_t port, Int_t forHowManyWorkers) : | TMergerInfo(TSlave *t, Int_t port, Int_t forHowManyWorkers) : | |||
fMerger(t), fPort(port), fMergedObjects(0), fWorkersToMerge( forHowManyWorkers), | fMerger(t), fPort(port), fMergedObjects(0), fWorkersToMerge( forHowManyWorkers), | |||
fMergedWorkers(0), fWorkers(0), fIsActive(kTRUE) { } | fMergedWorkers(0), fWorkers(0), fIsActive(kTRUE) { } | |||
virtual ~TMergerInfo(); | virtual ~TMergerInfo(); | |||
void AddWorker(TSlave *sl); | void AddWorker(TSlave *sl); | |||
TList *GetWorkers() { return fWorkers; } | TList *GetWorkers() { return fWorkers; } | |||
TSlave *GetMerger() { return fMerger; } | TSlave *GetMerger() { return fMerger; } | |||
Int_t GetPort() { return fPort; } | Int_t GetPort() { return fPort; } | |||
skipping to change at line 302 | skipping to change at line 308 | |||
TString fExp; | TString fExp; | |||
Int_t fIdx; | Int_t fIdx; | |||
Int_t fNWrks; | Int_t fNWrks; | |||
static char fgCr[4]; | static char fgCr[4]; | |||
public: | public: | |||
TProofMergePrg() : fExp(), fIdx(-1), fNWrks(-1) { } | TProofMergePrg() : fExp(), fIdx(-1), fNWrks(-1) { } | |||
const char *Export() { fExp.Form("%c (%d workers still sending) ", fg Cr[fIdx], fNWrks); | const char *Export() { fExp.Form("%c (%d workers still sending) ", fg Cr[fIdx], fNWrks); | |||
return fExp.Data(); } | return fExp.Data(); } | |||
void DecreaseNWrks() { fNWrks--; } | void DecreaseNWrks() { fNWrks--; } | |||
void IncreaseNWrks() { fNWrks++; } | ||||
void IncreaseIdx() { fIdx++; if (fIdx == 4) fIdx = 0; } | void IncreaseIdx() { fIdx++; if (fIdx == 4) fIdx = 0; } | |||
void Reset(Int_t n = -1) { fIdx = -1; SetNWrks(n); } | void Reset(Int_t n = -1) { fIdx = -1; SetNWrks(n); } | |||
void SetNWrks(Int_t n) { fNWrks = n; } | void SetNWrks(Int_t n) { fNWrks = n; } | |||
}; | }; | |||
class TProof : public TNamed, public TQObject { | class TProof : public TNamed, public TQObject { | |||
friend class TPacketizer; | friend class TPacketizer; | |||
friend class TPacketizerDev; | friend class TPacketizerDev; | |||
friend class TPacketizerAdaptive; | friend class TPacketizerAdaptive; | |||
skipping to change at line 423 | skipping to change at line 430 | |||
kCheckDataSetName = 2, //Check wheter dataset of this name exists | kCheckDataSetName = 2, //Check wheter dataset of this name exists | |||
kGetDataSets = 3, //List datasets saved on the master node | kGetDataSets = 3, //List datasets saved on the master node | |||
kRegisterDataSet = 4, //Save a TList object as a dataset | kRegisterDataSet = 4, //Save a TList object as a dataset | |||
kGetDataSet = 5, //Get a TFileCollection of TFileInfo objec ts | kGetDataSet = 5, //Get a TFileCollection of TFileInfo objec ts | |||
kVerifyDataSet = 6, //Try open all files from a dataset and re port results | kVerifyDataSet = 6, //Try open all files from a dataset and re port results | |||
kRemoveDataSet = 7, //Remove a dataset but leave files belongi ng to it | kRemoveDataSet = 7, //Remove a dataset but leave files belongi ng to it | |||
kMergeDataSet = 8, //Add new files to an existing dataset | kMergeDataSet = 8, //Add new files to an existing dataset | |||
kShowDataSets = 9, //Shows datasets, returns formatted output | kShowDataSets = 9, //Shows datasets, returns formatted output | |||
kGetQuota = 10, //Get quota info per group | kGetQuota = 10, //Get quota info per group | |||
kShowQuota = 11, //Show quotas | kShowQuota = 11, //Show quotas | |||
kSetDefaultTreeName = 12 //Set the default tree name | kSetDefaultTreeName = 12, //Set the default tree name | |||
kCache = 13 //Show/clear cache | ||||
}; | }; | |||
enum ESendFileOpt { | enum ESendFileOpt { | |||
kAscii = 0x0, | kAscii = 0x0, | |||
kBinary = 0x1, | kBinary = 0x1, | |||
kForce = 0x2, | kForce = 0x2, | |||
kForward = 0x4, | kForward = 0x4, | |||
kCpBin = 0x8, | kCpBin = 0x8, | |||
kCp = 0x10 | kCp = 0x10 | |||
}; | }; | |||
enum EProofWrkListAction { | enum EProofWrkListAction { | |||
skipping to change at line 594 | skipping to change at line 602 | |||
Int_t SendPrint(Option_t *option=""); | Int_t SendPrint(Option_t *option=""); | |||
Int_t Ping(ESlaves list); | Int_t Ping(ESlaves list); | |||
void Interrupt(EUrgent type, ESlaves list = kActive); | void Interrupt(EUrgent type, ESlaves list = kActive); | |||
void AskStatistics(); | void AskStatistics(); | |||
void AskParallel(); | void AskParallel(); | |||
Int_t GoParallel(Int_t nodes, Bool_t accept = kFALSE, Bool_t random = kFALSE); | Int_t GoParallel(Int_t nodes, Bool_t accept = kFALSE, Bool_t random = kFALSE); | |||
Int_t SetParallelSilent(Int_t nodes, Bool_t random = kFALSE); | Int_t SetParallelSilent(Int_t nodes, Bool_t random = kFALSE); | |||
void RecvLogFile(TSocket *s, Int_t size); | void RecvLogFile(TSocket *s, Int_t size); | |||
void NotifyLogMsg(const char *msg, const char *sfx = "\n"); | void NotifyLogMsg(const char *msg, const char *sfx = "\n"); | |||
Int_t BuildPackage(const char *package, EBuildPackageOpt opt = kBuild All); | Int_t BuildPackage(const char *package, EBuildPackageOpt opt = kBuild All); | |||
Int_t BuildPackageOnClient(const TString &package); | Int_t BuildPackageOnClient(const char *package, Int_t opt = 0, TStrin g *path = 0); | |||
Int_t LoadPackage(const char *package, Bool_t notOnClient = kFALSE); | Int_t LoadPackage(const char *package, Bool_t notOnClient = kFALSE); | |||
Int_t LoadPackageOnClient(const TString &package); | Int_t LoadPackageOnClient(const char *package); | |||
Int_t UnloadPackage(const char *package); | Int_t UnloadPackage(const char *package); | |||
Int_t UnloadPackageOnClient(const char *package); | Int_t UnloadPackageOnClient(const char *package); | |||
Int_t UnloadPackages(); | Int_t UnloadPackages(); | |||
Int_t UploadPackageOnClient(const TString &package, EUploadPackageOpt opt, TMD5 *md5); | Int_t UploadPackageOnClient(const char *package, EUploadPackageOpt op t, TMD5 *md5); | |||
Int_t DisablePackage(const char *package); | Int_t DisablePackage(const char *package); | |||
Int_t DisablePackageOnClient(const char *package); | Int_t DisablePackageOnClient(const char *package); | |||
Int_t DisablePackages(); | Int_t DisablePackages(); | |||
void Activate(TList *slaves = 0); | void Activate(TList *slaves = 0); | |||
Int_t Broadcast(const TMessage &mess, TList *slaves); | Int_t Broadcast(const TMessage &mess, TList *slaves); | |||
Int_t Broadcast(const TMessage &mess, ESlaves list = kActive); | Int_t Broadcast(const TMessage &mess, ESlaves list = kActive); | |||
Int_t Broadcast(const char *mess, Int_t kind, TList *slaves); | Int_t Broadcast(const char *mess, Int_t kind, TList *slaves); | |||
Int_t Broadcast(const char *mess, Int_t kind = kMESS_STRING, ESlaves list = kActive); | Int_t Broadcast(const char *mess, Int_t kind = kMESS_STRING, ESlaves list = kActive); | |||
Int_t Broadcast(Int_t kind, TList *slaves) { return Broadcast(0, kind , slaves); } | Int_t Broadcast(Int_t kind, TList *slaves) { return Broadcast(0, kind , slaves); } | |||
skipping to change at line 676 | skipping to change at line 684 | |||
void AskForOutput(TSlave *sl); | void AskForOutput(TSlave *sl); | |||
void FinalizationDone() { fFinalizationRunning = kFALSE; } | void FinalizationDone() { fFinalizationRunning = kFALSE; } | |||
void ResetMergePrg(); | void ResetMergePrg(); | |||
void ParseConfigField(const char *config); | void ParseConfigField(const char *config); | |||
Bool_t Prompt(const char *p); | Bool_t Prompt(const char *p); | |||
void ClearDataProgress(Int_t r, Int_t t); | void ClearDataProgress(Int_t r, Int_t t); | |||
static TList *GetDataSetSrvMaps(const TString &srvmaps); | ||||
protected: | protected: | |||
TProof(); // For derived classes to use | TProof(); // For derived classes to use | |||
Int_t Init(const char *masterurl, const char *conffile, | void InitMembers(); | |||
const char *confdir, Int_t loglevel, | Int_t Init(const char *masterurl, const char *conffile, | |||
const char *alias = 0); | const char *confdir, Int_t loglevel, | |||
const char *alias = 0); | ||||
virtual Bool_t StartSlaves(Bool_t attach = kFALSE); | virtual Bool_t StartSlaves(Bool_t attach = kFALSE); | |||
Int_t AddWorkers(TList *wrks); | Int_t AddWorkers(TList *wrks); | |||
Int_t RemoveWorkers(TList *wrks); | Int_t RemoveWorkers(TList *wrks); | |||
void SetPlayer(TVirtualProofPlayer *player); | void SetPlayer(TVirtualProofPlayer *player); | |||
TVirtualProofPlayer *GetPlayer() const { return fPlayer; } | TVirtualProofPlayer *GetPlayer() const { return fPlayer; } | |||
virtual TVirtualProofPlayer *MakePlayer(const char *player = 0, TSocket *s = 0); | virtual TVirtualProofPlayer *MakePlayer(const char *player = 0, TSocket *s = 0); | |||
void UpdateDialog(); | void UpdateDialog(); | |||
skipping to change at line 726 | skipping to change at line 737 | |||
static Int_t AssertDataSet(TDSet *dset, TList *input, | static Int_t AssertDataSet(TDSet *dset, TList *input, | |||
TDataSetManager *mgr, TString &emsg); | TDataSetManager *mgr, TString &emsg); | |||
// Input data handling | // Input data handling | |||
static Int_t GetInputData(TList *input, const char *cachedir, TString &e msg); | static Int_t GetInputData(TList *input, const char *cachedir, TString &e msg); | |||
static Int_t SaveInputData(TQueryResult *qr, const char *cachedir, TStri ng &emsg); | static Int_t SaveInputData(TQueryResult *qr, const char *cachedir, TStri ng &emsg); | |||
static Int_t SendInputData(TQueryResult *qr, TProof *p, TString &emsg); | static Int_t SendInputData(TQueryResult *qr, TProof *p, TString &emsg); | |||
// Parse CINT commands | // Parse CINT commands | |||
static Bool_t GetFileInCmd(const char *cmd, TString &fn); | static Bool_t GetFileInCmd(const char *cmd, TString &fn); | |||
// Pipe execution of commands | ||||
static void SystemCmd(const char *cmd, Int_t fdout); | ||||
public: | public: | |||
TProof(const char *masterurl, const char *conffile = kPROOF_ConfFile, | TProof(const char *masterurl, const char *conffile = kPROOF_ConfFile, | |||
const char *confdir = kPROOF_ConfDir, Int_t loglevel = 0, | const char *confdir = kPROOF_ConfDir, Int_t loglevel = 0, | |||
const char *alias = 0, TProofMgr *mgr = 0); | const char *alias = 0, TProofMgr *mgr = 0); | |||
virtual ~TProof(); | virtual ~TProof(); | |||
void cd(Int_t id = -1); | void cd(Int_t id = -1); | |||
Int_t Ping(); | Int_t Ping(); | |||
void Touch(); | void Touch(); | |||
skipping to change at line 784 | skipping to change at line 798 | |||
void SetLogLevel(Int_t level, UInt_t mask = TProofDebug::kAll); | void SetLogLevel(Int_t level, UInt_t mask = TProofDebug::kAll); | |||
void Close(Option_t *option=""); | void Close(Option_t *option=""); | |||
virtual void Print(Option_t *option="") const; | virtual void Print(Option_t *option="") const; | |||
//-- cache and package management | //-- cache and package management | |||
virtual void ShowCache(Bool_t all = kFALSE); | virtual void ShowCache(Bool_t all = kFALSE); | |||
virtual void ClearCache(const char *file = 0); | virtual void ClearCache(const char *file = 0); | |||
TList *GetListOfPackages(); | TList *GetListOfPackages(); | |||
TList *GetListOfEnabledPackages(); | TList *GetListOfEnabledPackages(); | |||
void ShowPackages(Bool_t all = kFALSE); | void ShowPackages(Bool_t all = kFALSE, Bool_t redirlog = kFALSE); | |||
void ShowEnabledPackages(Bool_t all = kFALSE); | void ShowEnabledPackages(Bool_t all = kFALSE); | |||
Int_t ClearPackages(); | Int_t ClearPackages(); | |||
Int_t ClearPackage(const char *package); | Int_t ClearPackage(const char *package); | |||
Int_t DownloadPackage(const char *par, const char *dstdir = 0); | ||||
Int_t EnablePackage(const char *package, Bool_t notOnClient = kFAL SE); | Int_t EnablePackage(const char *package, Bool_t notOnClient = kFAL SE); | |||
Int_t UploadPackage(const char *par, EUploadPackageOpt opt = kUnta r); | Int_t UploadPackage(const char *par, EUploadPackageOpt opt = kUnta r); | |||
Int_t Load(const char *macro, Bool_t notOnClient = kFALSE, Bool_t uniqueOnly = kTRUE, | Int_t Load(const char *macro, Bool_t notOnClient = kFALSE, Bool_t uniqueOnly = kTRUE, | |||
TList *wrks = 0); | TList *wrks = 0); | |||
Int_t AddDynamicPath(const char *libpath, Bool_t onClient = kFALSE , TList *wrks = 0); | Int_t AddDynamicPath(const char *libpath, Bool_t onClient = kFALSE , TList *wrks = 0); | |||
Int_t AddIncludePath(const char *incpath, Bool_t onClient = kFALSE , TList *wrks = 0); | Int_t AddIncludePath(const char *incpath, Bool_t onClient = kFALSE , TList *wrks = 0); | |||
Int_t RemoveDynamicPath(const char *libpath, Bool_t onClient = kFA LSE); | Int_t RemoveDynamicPath(const char *libpath, Bool_t onClient = kFA LSE); | |||
Int_t RemoveIncludePath(const char *incpath, Bool_t onClient = kFA LSE); | Int_t RemoveIncludePath(const char *incpath, Bool_t onClient = kFA LSE); | |||
skipping to change at line 831 | skipping to change at line 846 | |||
virtual Bool_t ExistsDataSet(const char *dataset); | virtual Bool_t ExistsDataSet(const char *dataset); | |||
void ShowDataSet(const char *dataset = "", const char* opt = "M") ; | void ShowDataSet(const char *dataset = "", const char* opt = "M") ; | |||
virtual Int_t RemoveDataSet(const char *dataset, const char* optStr = "" ); | virtual Int_t RemoveDataSet(const char *dataset, const char* optStr = "" ); | |||
virtual Int_t VerifyDataSet(const char *dataset, const char* optStr = "" ); | virtual Int_t VerifyDataSet(const char *dataset, const char* optStr = "" ); | |||
virtual TFileCollection *GetDataSet(const char *dataset, const char* opt Str = ""); | virtual TFileCollection *GetDataSet(const char *dataset, const char* opt Str = ""); | |||
TList *FindDataSets(const char *searchString, const char* optStr = ""); | TList *FindDataSets(const char *searchString, const char* optStr = ""); | |||
virtual Int_t SetDataSetTreeName( const char *dataset, const char *treen ame); | virtual Int_t SetDataSetTreeName( const char *dataset, const char *treen ame); | |||
virtual void ShowDataSetCache(const char *dataset = 0); | ||||
virtual void ClearDataSetCache(const char *dataset = 0); | ||||
void ShowData(); | void ShowData(); | |||
void ClearData(UInt_t what = kUnregistered, const char *dsname = 0); | void ClearData(UInt_t what = kUnregistered, const char *dsname = 0); | |||
const char *GetMaster() const { return fMaster; } | const char *GetMaster() const { return fMaster; } | |||
const char *GetConfDir() const { return fConfDir; } | const char *GetConfDir() const { return fConfDir; } | |||
const char *GetConfFile() const { return fConfFile; } | const char *GetConfFile() const { return fConfFile; } | |||
const char *GetUser() const { return fUrl.GetUser(); } | const char *GetUser() const { return fUrl.GetUser(); } | |||
const char *GetGroup() const { return fGroup; } | const char *GetGroup() const { return fGroup; } | |||
const char *GetWorkDir() const { return fWorkDir; } | const char *GetWorkDir() const { return fWorkDir; } | |||
const char *GetSessionTag() const { return GetName(); } | const char *GetSessionTag() const { return GetName(); } | |||
skipping to change at line 859 | skipping to change at line 877 | |||
Int_t GetSeqNum() const { return fSeqNum; } | Int_t GetSeqNum() const { return fSeqNum; } | |||
Int_t GetSessionID() const { return fSessionID; } | Int_t GetSessionID() const { return fSessionID; } | |||
TList *GetListOfSlaveInfos(); | TList *GetListOfSlaveInfos(); | |||
Bool_t UseDynamicStartup() const { return fDynamicStartup; } | Bool_t UseDynamicStartup() const { return fDynamicStartup; } | |||
EQueryMode GetQueryMode(Option_t *mode = 0) const; | EQueryMode GetQueryMode(Option_t *mode = 0) const; | |||
void SetQueryMode(EQueryMode mode); | void SetQueryMode(EQueryMode mode); | |||
void SetRealTimeLog(Bool_t on = kTRUE); | void SetRealTimeLog(Bool_t on = kTRUE); | |||
void GetStatistics(Bool_t verbose = kFALSE); | ||||
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; } | |||
Bool_t IsLite() const { return (fServType == TProofMgr::kProofLite) ; } | Bool_t IsLite() const { return (fServType == TProofMgr::kProofLite) ; } | |||
Bool_t IsProofd() const { return (fServType == TProofMgr::kProofd); } | Bool_t IsProofd() const { return (fServType == TProofMgr::kProofd); } | |||
Bool_t IsFolder() const { return kTRUE; } | Bool_t IsFolder() const { return kTRUE; } | |||
Bool_t IsMaster() const { return fMasterServ; } | Bool_t IsMaster() const { return fMasterServ; } | |||
Bool_t IsValid() const { return fValid; } | Bool_t IsValid() const { return fValid; } | |||
Bool_t IsParallel() const { return GetParallel() > 0 ? kTRUE : kFAL SE; } | Bool_t IsParallel() const { return GetParallel() > 0 ? kTRUE : kFAL SE; } | |||
skipping to change at line 937 | skipping to change at line 956 | |||
void ResetProgressDialog(const char *sel, Int_t sz, | void ResetProgressDialog(const char *sel, Int_t sz, | |||
Long64_t fst, Long64_t ent); //*SIGNAL* | Long64_t fst, Long64_t ent); //*SIGNAL* | |||
void StartupMessage(const char *msg, Bool_t status, Int_t done, | void StartupMessage(const char *msg, Bool_t status, Int_t done, | |||
Int_t total); //*SIGNAL* | Int_t total); //*SIGNAL* | |||
void DataSetStatus(const char *msg, Bool_t status, | void DataSetStatus(const char *msg, Bool_t status, | |||
Int_t done, Int_t total); //*SIGNAL* | Int_t done, Int_t total); //*SIGNAL* | |||
void SendDataSetStatus(const char *msg, UInt_t n, UInt_t tot, Boo l_t st); | void SendDataSetStatus(const char *msg, UInt_t n, UInt_t tot, Boo l_t st); | |||
void GetLog(Int_t start = -1, Int_t end = -1); | void GetLog(Int_t start = -1, Int_t end = -1); | |||
TMacro *GetLastLog(); | ||||
void PutLog(TQueryResult *qr); | void PutLog(TQueryResult *qr); | |||
void ShowLog(Int_t qry = -1); | void ShowLog(Int_t qry = -1); | |||
void ShowLog(const char *queryref); | void ShowLog(const char *queryref); | |||
Bool_t SendingLogToWindow() const { return fLogToWindowOnly; } | Bool_t SendingLogToWindow() const { return fLogToWindowOnly; } | |||
void SendLogToWindow(Bool_t mode) { fLogToWindowOnly = mode; } | void SendLogToWindow(Bool_t mode) { fLogToWindowOnly = mode; } | |||
void ResetProgressDialogStatus() { fProgressDialogStarted = kFALS E; } | void ResetProgressDialogStatus() { fProgressDialogStarted = kFALS E; } | |||
virtual TTree *GetTreeHeader(TDSet *tdset); | virtual TTree *GetTreeHeader(TDSet *tdset); | |||
TList *GetOutputNames(); | TList *GetOutputNames(); | |||
End of changes. 22 change blocks. | ||||
14 lines changed or deleted | 35 lines changed or added | |||
TProofLite.h | TProofLite.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TProofLite.h 31719 2009-12-09 10:31:17Z ganis $ | // @(#)root/proof:$Id: TProofLite.h 33209 2010-04-26 10:27:40Z 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 123 | skipping to change at line 123 | |||
// Dataset handling | // Dataset handling | |||
Bool_t RegisterDataSet(const char *dsName, TFileCollection *ds, const char *opt = ""); | Bool_t RegisterDataSet(const char *dsName, TFileCollection *ds, const char *opt = ""); | |||
Bool_t ExistsDataSet(const char *uri); | Bool_t ExistsDataSet(const char *uri); | |||
TMap *GetDataSets(const char *uri = "", const char * = 0); | TMap *GetDataSets(const char *uri = "", const char * = 0); | |||
void ShowDataSets(const char *uri = "", const char * = 0); | void ShowDataSets(const char *uri = "", const char * = 0); | |||
TFileCollection *GetDataSet(const char *uri, const char * = 0); | TFileCollection *GetDataSet(const char *uri, const char * = 0); | |||
Int_t RemoveDataSet(const char *uri, const char * = 0); | Int_t RemoveDataSet(const char *uri, const char * = 0); | |||
Int_t VerifyDataSet(const char *uri, const char * = 0); | Int_t VerifyDataSet(const char *uri, const char * = 0); | |||
Int_t SetDataSetTreeName( const char *dataset, const char *treename); | Int_t SetDataSetTreeName( const char *dataset, const char *treename); | |||
void ShowDataSetCache(const char *dataset = 0); | ||||
void ClearDataSetCache(const char *dataset = 0); | ||||
// Browsing | // Browsing | |||
TTree *GetTreeHeader(TDSet *tdset); | TTree *GetTreeHeader(TDSet *tdset); | |||
static Int_t GetNumberOfWorkers(const char *url = 0); | static Int_t GetNumberOfWorkers(const char *url = 0); | |||
ClassDef(TProofLite,0) //PROOF control class | ClassDef(TProofLite,0) //PROOF control class | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||
TProofProgressLog.h | TProofProgressLog.h | |||
---|---|---|---|---|
// @(#)root/sessionviewer:$Id: TProofProgressLog.h 30815 2009-10-20 13:49:2 2Z rdm $ | // @(#)root/sessionviewer:$Id: TProofProgressLog.h 32203 2010-02-03 18:47:3 4Z 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_TProofProgressLog | #ifndef ROOT_TProofProgressLog | |||
#define ROOT_TProofProgressLog | #define ROOT_TProofProgressLog | |||
skipping to change at line 72 | skipping to change at line 72 | |||
TGTextButton *fGrepButton; //grep button | TGTextButton *fGrepButton; //grep button | |||
TGTextButton *fUrlButton; //rebuild button | TGTextButton *fUrlButton; //rebuild button | |||
TGCheckButton *fAllLines; // display all lines button | TGCheckButton *fAllLines; // display all lines button | |||
TGCheckButton *fRawLines; // display raw lines button | TGCheckButton *fRawLines; // display raw lines button | |||
TGSplitButton *fAllWorkers; // display all workers button | TGSplitButton *fAllWorkers; // display all workers button | |||
TGVerticalFrame *fVworkers; // Vertical frame | TGVerticalFrame *fVworkers; // Vertical frame | |||
Bool_t fFullText; // 0 - when grep was called | Bool_t fFullText; // 0 - when grep was called | |||
Int_t fTextType; // Type of retrieval | Int_t fTextType; // Type of retrieval | |||
void Init(Int_t w = 700, Int_t h = 300); | void Init(Int_t w = 700, Int_t h = 600); | |||
public: | public: | |||
TProofProgressLog(TProofProgressDialog *d, Int_t w = 700, Int_t h = 300) | TProofProgressLog(TProofProgressDialog *d, Int_t w = 700, Int_t h = 600) | |||
; | ; | |||
TProofProgressLog(const char *url = 0, Int_t sessionidx = 0, Int_t w = 7 | TProofProgressLog(const char *url = 0, Int_t sessionidx = 0, Int_t w = 7 | |||
00, Int_t h = 300); | 00, Int_t h = 600); | |||
virtual ~TProofProgressLog(); | virtual ~TProofProgressLog(); | |||
void BuildLogList(Bool_t create = kFALSE); | void BuildLogList(Bool_t create = kFALSE); | |||
void DoLog(Bool_t grep=kFALSE); | void DoLog(Bool_t grep=kFALSE); | |||
void LogMessage(const char *msg, Bool_t all); | void LogMessage(const char *msg, Bool_t all); | |||
void Rebuild(); | void Rebuild(); | |||
void LoadBuffer(const char *buffer); | void LoadBuffer(const char *buffer); | |||
void AddBuffer(const char *buffer); | void AddBuffer(const char *buffer); | |||
End of changes. 3 change blocks. | ||||
6 lines changed or deleted | 6 lines changed or added | |||
TPythia6.h | TPythia6.h | |||
---|---|---|---|---|
// @(#)root/pythia6:$Id: TPythia6.h 26120 2008-11-10 11:59:12Z brun $ | // @(#)root/pythia6:$Id: TPythia6.h 32513 2010-03-09 21:10:43Z brun $ | |||
// Author: Rene Brun 19/10/99 | // Author: Rene Brun 19/10/99 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 319 | skipping to change at line 319 | |||
void OpenFortranFile(int lun, char* name); | void OpenFortranFile(int lun, char* name); | |||
void CloseFortranFile(int lun); | void CloseFortranFile(int lun); | |||
int Pychge(int kf); | int Pychge(int kf); | |||
int Pycomp(int kf); | int Pycomp(int kf); | |||
void Pydiff(); | void Pydiff(); | |||
void Pyedit(int medit); | void Pyedit(int medit); | |||
void Pyevnt(); | void Pyevnt(); | |||
void Py1ent(Int_t line, Int_t kf, Double_t pe, Double_t thet a, Double_t phi); | void Py1ent(Int_t line, Int_t kf, Double_t pe, Double_t thet a, Double_t phi); | |||
void Pyexec(); | void Pyexec(); | |||
void Pyhepc(int mconv); | void Pyhepc(int mconv); | |||
void Pygive(const char *param); | ||||
void Pyinit(char* frame, char* beam, char* target, double wi nt); | void Pyinit(char* frame, char* beam, char* target, double wi nt); | |||
void Pylist(int flag); | void Pylist(int flag); | |||
double Pymass(int kf); | double Pymass(int kf); | |||
void Pyname(int kf, char* name); | void Pyname(int kf, char* name); | |||
double Pyr(int idummy); | double Pyr(int idummy); | |||
void Pyrget(int lun, int move); | void Pyrget(int lun, int move); | |||
void Pyrset(int lun, int move); | void Pyrset(int lun, int move); | |||
void Pystat(int flag); | void Pystat(int flag); | |||
void Pytest(int flag); | void Pytest(int flag); | |||
void Pytune(int itune); | void Pytune(int itune); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TQRootApplication.h | TQRootApplication.h | |||
---|---|---|---|---|
// @(#)root/qtgsi:$Id: TQRootApplication.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/qtgsi:$Id: TQRootApplication.h 32344 2010-02-15 16:15:57Z belle not $ | |||
// Author: Denis Bertini, M. AL-Turany 01/11/2000 | // Author: Denis Bertini, M. AL-Turany 01/11/2000 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 52 | skipping to change at line 52 | |||
#endif | #endif | |||
private: | private: | |||
TQRootApplication(const TQRootApplication &); | TQRootApplication(const TQRootApplication &); | |||
TQRootApplication& operator=(const TQRootApplication &); | TQRootApplication& operator=(const TQRootApplication &); | |||
protected: | protected: | |||
QTimer *fQTimer; // Qt timer that poll the event loop of ROOT | QTimer *fQTimer; // Qt timer that poll the event loop of ROOT | |||
TTimer *fRTimer; // Root timer | TTimer *fRTimer; // Root timer | |||
public: | public: | |||
static Bool_t fgDebug, fgWarning; // debug and warning flags | static Bool_t fgDebug, fgWarning; // debug and warning flags | |||
TQRootApplication(int argc, char **argv,int poll=0); | TQRootApplication(int &argc, char **argv,int poll=0); | |||
~TQRootApplication(); | ~TQRootApplication(); | |||
void SetDebugOn(){ fgDebug=kTRUE; } | void SetDebugOn(){ fgDebug=kTRUE; } | |||
void SetWarningOn(){ fgWarning=kTRUE;} | void SetWarningOn(){ fgWarning=kTRUE;} | |||
public slots: | public slots: | |||
void Execute(); | void Execute(); | |||
void Quit(); | void Quit(); | |||
public: | public: | |||
ClassDef(TQRootApplication,1) //creates Qt environement interface with the ROOT windowing system | ClassDef(TQRootApplication,1) //creates Qt environement interface with the ROOT windowing system | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TQtClientFilter.h | TQtClientFilter.h | |||
---|---|---|---|---|
// @(#)root/qt:$Id: TQtClientFilter.h 23343 2008-04-21 04:44:58Z brun $ | // @(#)root/qt:$Id: TQtClientFilter.h 32141 2010-01-28 16:42:30Z bellenot $ | |||
// Author: Valeri Fine 21/01/2002 | // Author: Valeri Fine 21/01/2002 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | |||
* Copyright (C) 2002 by Valeri Fine. * | * Copyright (C) 2002 by Valeri Fine. * | |||
* 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 | |||
static Bool_t SelectGrab(Event_t &event, UInt_t selectEventMask, QMouseE vent &me); | static Bool_t SelectGrab(Event_t &event, UInt_t selectEventMask, QMouseE vent &me); | |||
public: | public: | |||
TQtClientFilter():fRootEventQueue(0),fNotifyClient(0),fKeyGrabber(0){;} | TQtClientFilter():fRootEventQueue(0),fNotifyClient(0),fKeyGrabber(0){;} | |||
virtual ~TQtClientFilter(); | virtual ~TQtClientFilter(); | |||
static TQtClientWidget *GetPointerGrabber(); | static TQtClientWidget *GetPointerGrabber(); | |||
static TQtClientWidget *GetButtonGrabber(); | static TQtClientWidget *GetButtonGrabber(); | |||
static void SetButtonGrabber(TQtClientWidget *grabber); | static void SetButtonGrabber(TQtClientWidget *grabber); | |||
static void GrabPointer(TQtClientWidget *grabber, UInt_t evmask, Window_ t confine, | static void GrabPointer(TQtClientWidget *grabber, UInt_t evmask, Window_ t confine, | |||
QCursor *cursor, Bool_t grab = kTRUE, | QCursor *cursor, Bool_t grab = kTRUE, | |||
Bool_t owner_events = kTRUE); | Bool_t owner_events = kTRUE); | |||
static TQtPointerGrabber *PointerGrabber() { return fgGrabber; } | static TQtPointerGrabber *PointerGrabber(); | |||
public slots: | public slots: | |||
void AppendButtonGrab (TQtClientWidget *); | void AppendButtonGrab (TQtClientWidget *); | |||
void RemoveButtonGrab (QObject *); | void RemoveButtonGrab (QObject *); | |||
#ifndef Q_MOC_RUN | #ifndef Q_MOC_RUN | |||
//MOC_SKIP_BEGIN | //MOC_SKIP_BEGIN | |||
ClassDef(TQtClientFilter,0) // Map Qt and ROOT event | ClassDef(TQtClientFilter,0) // Map Qt and ROOT event | |||
//MOC_SKIP_END | //MOC_SKIP_END | |||
#endif | #endif | |||
}; | }; | |||
skipping to change at line 143 | skipping to change at line 143 | |||
void DisactivateGrabbing(){ ActivateGrabbing(kFALSE); } | void DisactivateGrabbing(){ ActivateGrabbing(kFALSE); } | |||
Bool_t IsGrabSelected(UInt_t selectEventMask) const; | Bool_t IsGrabSelected(UInt_t selectEventMask) const; | |||
Bool_t IsGrabbing(TQtClientWidget *grabbed) const { return (grabbed == f PointerGrabber); } | Bool_t IsGrabbing(TQtClientWidget *grabbed) const { return (grabbed == f PointerGrabber); } | |||
void SetGrabPointer( TQtClientWidget *grabber, UInt_t evGrabMask, UInt _t evInputMask | void SetGrabPointer( TQtClientWidget *grabber, UInt_t evGrabMask, UInt _t evInputMask | |||
, QCursor *cursor, Bool_t grab = kTRUE | , QCursor *cursor, Bool_t grab = kTRUE | |||
, Bool_t owner_events = kTRUE, QWidget *confine=0); | , Bool_t owner_events = kTRUE, QWidget *confine=0); | |||
bool SelectGrab(Event_t &event, UInt_t selectEventMask,QMouseEvent &mo use); | bool SelectGrab(Event_t &event, UInt_t selectEventMask,QMouseEvent &mo use); | |||
}; | }; | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline TQtClientWidget *TQtClientFilter::GetPointerGrabber() | ||||
{ return fgPointerGrabber; } | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline TQtClientWidget *TQtClientFilter::GetButtonGrabber() | ||||
{ return fgButtonGrabber; } | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline void TQtClientFilter::SetButtonGrabber(TQtClientWidget *grabber) | ||||
{ fgButtonGrabber = grabber; } | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline void TQtClientFilter::AppendButtonGrab(TQtClientWidget *widget) | ||||
{ fButtonGrabList.append(widget);} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline void TQtClientFilter::RemoveButtonGrab(QObject *widget) | ||||
{ | ||||
TQtClientWidget *wid = (TQtClientWidget *)widget; | ||||
if ((fgButtonGrabber == wid) && fgGrabber) fgGrabber->DisactivateGrabbin | ||||
g(); | ||||
#if (QT_VERSION >= 0x040000) | ||||
fButtonGrabList.removeAll(wid); | ||||
#else | ||||
fButtonGrabList.remove(wid); | ||||
#endif | ||||
} | ||||
//_________________________________________________________________________ | ||||
_____ | ||||
inline TQtEventQueue *TQtClientFilter::Queue() { | inline TQtEventQueue *TQtClientFilter::Queue() { | |||
TQtEventQueue *save = fRootEventQueue; | TQtEventQueue *save = fRootEventQueue; | |||
// fprintf(stderr," Queue %d \n", save ? save->count():-1); | // fprintf(stderr," Queue %d \n", save ? save->count():-1); | |||
return save; | return save; | |||
} | } | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
36 lines changed or deleted | 2 lines changed or added | |||
TQtTimer.h | TQtTimer.h | |||
---|---|---|---|---|
// @(#)root/qt:$Id: TQtTimer.h 28205 2009-04-14 19:38:00Z brun $ | // @(#)root/qt:$Id: TQtTimer.h 32141 2010-01-28 16:42:30Z bellenot $ | |||
// Author: Valery Fine 09/08/2004 | // Author: Valery Fine 09/08/2004 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | |||
* Copyright (C) 2002 by Valeri Fine. * | * Copyright (C) 2002 by Valeri Fine. * | |||
* 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 | |||
protected slots: | protected slots: | |||
virtual void AwakeRootEvent(); | virtual void AwakeRootEvent(); | |||
public: | public: | |||
virtual ~TQtTimer(){} | virtual ~TQtTimer(){} | |||
static TQtTimer *Create(QObject *parent=0); | static TQtTimer *Create(QObject *parent=0); | |||
static TQtTimer *QtTimer(); | static TQtTimer *QtTimer(); | |||
ClassDef(TQtTimer,0) // QTimer to awake the ROOT event loop from Qt event loop | ClassDef(TQtTimer,0) // QTimer to awake the ROOT event loop from Qt event loop | |||
}; | }; | |||
inline TQtTimer *TQtTimer::QtTimer(){ return fgQTimer; } | ||||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 1 lines changed or added | |||
TQtWidget.h | TQtWidget.h | |||
---|---|---|---|---|
// @(#)root/qt:$Id: TQtWidget.h 30386 2009-09-23 19:06:28Z brun $ | // @(#)root/qt:$Id: TQtWidget.h 32417 2010-02-27 03:42:53Z brun $ | |||
// Author: Valeri Fine 21/01/2002 | // Author: Valeri Fine 21/01/2002 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | |||
* Copyright (C) 2003 by Valeri Fine. * | * Copyright (C) 2003 by Valeri Fine. * | |||
* 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 244 | skipping to change at line 244 | |||
public slots: | public slots: | |||
virtual void cd(); | virtual void cd(); | |||
virtual void cd(int subpadnumber); | virtual void cd(int subpadnumber); | |||
void Disconnect(); | void Disconnect(); | |||
void Refresh(); | void Refresh(); | |||
virtual bool Save(const QString &fileName) const; | virtual bool Save(const QString &fileName) const; | |||
virtual bool Save(const char *fileName) const; | virtual bool Save(const char *fileName) const; | |||
virtual bool Save(const QString &fileName,const char *format,int quality =60) const; | virtual bool Save(const QString &fileName,const char *format,int quality =60) const; | |||
virtual bool Save(const char *fileName,const char *format,int quality =60) const; | virtual bool Save(const char *fileName,const char *format,int quality =60) const; | |||
#ifndef __CINT__ | ||||
protected slots: | protected slots: | |||
void RefreshCB(); | void RefreshCB(); | |||
#ifndef __CINT__ | ||||
signals: | signals: | |||
// emit the Qt signal when the double buffer of the TCamvas has been fil led up | // emit the Qt signal when the double buffer of the TCamvas has been fil led up | |||
void CanvasPainted(); // Signal the TCanvas has been painted onto the s creen | void CanvasPainted(); // Signal the TCanvas has been painted onto the s creen | |||
void Saved(bool ok); // Signal the TCanvas has been saved into the fil e | void Saved(bool ok); // Signal the TCanvas has been saved into the fil e | |||
void RootEventProcessed(TObject *selected, unsigned int event, TCanvas * c); | void RootEventProcessed(TObject *selected, unsigned int event, TCanvas * c); | |||
#endif | #endif | |||
#ifndef Q_MOC_RUN | #ifndef Q_MOC_RUN | |||
ClassDef(TQtWidget,0) // QWidget to back ROOT TCanvas (Can be used with Qt designer) | ClassDef(TQtWidget,0) // QWidget to back ROOT TCanvas (Can be used with Qt designer) | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TROOT.h | TROOT.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TROOT.h 31136 2009-11-12 21:25:38Z pcanal $ | // @(#)root/base:$Id: TROOT.h 32970 2010-04-13 16:36:38Z rdm $ | |||
// 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 57 | skipping to change at line 57 | |||
class TPluginManager; | class TPluginManager; | |||
class TProcessUUID; | class TProcessUUID; | |||
class TClassGenerator; | class TClassGenerator; | |||
class TVirtualMutex; | class TVirtualMutex; | |||
R__EXTERN TVirtualMutex *gROOTMutex; | R__EXTERN TVirtualMutex *gROOTMutex; | |||
class TROOT : public TDirectory { | class TROOT : public TDirectory { | |||
friend class TCint; | friend class TCint; | |||
friend class TCling; | ||||
private: | private: | |||
Int_t fLineIsProcessing; //To synchronize multi-threads | Int_t fLineIsProcessing; //To synchronize multi-threads | |||
static Int_t fgDirLevel; //Indentation level for ls() | static Int_t fgDirLevel; //Indentation level for ls() | |||
static Bool_t fgRootInit; //Singleton initialization flag | static Bool_t fgRootInit; //Singleton initialization flag | |||
static Bool_t fgMemCheck; //Turn on memory leak checker | static Bool_t fgMemCheck; //Turn on memory leak checker | |||
TROOT(const TROOT&); //Not implemented | TROOT(const TROOT&); //Not implemented | |||
TROOT& operator=(const TROOT&); //Not implemented | TROOT& operator=(const TROOT&); //Not implemented | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TRandom.h | TRandom.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: TRandom.h 27771 2009-03-15 18:09:18Z brun $ | // @(#)root/mathcore:$Id: TRandom.h 32526 2010-03-10 14:56:13Z moneta $ | |||
// Author: Rene Brun 15/12/95 | // Author: Rene Brun 15/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 48 | skipping to change at line 48 | |||
virtual Double_t Exp(Double_t tau); | virtual Double_t Exp(Double_t tau); | |||
virtual Double_t Gaus(Double_t mean=0, Double_t sigma=1); | virtual Double_t Gaus(Double_t mean=0, Double_t sigma=1); | |||
virtual UInt_t GetSeed() const {return fSeed;} | virtual UInt_t GetSeed() const {return fSeed;} | |||
virtual UInt_t Integer(UInt_t imax); | virtual UInt_t Integer(UInt_t imax); | |||
virtual Double_t Landau(Double_t mean=0, Double_t sigma=1); | virtual Double_t Landau(Double_t mean=0, Double_t sigma=1); | |||
virtual Int_t Poisson(Double_t mean); | virtual Int_t Poisson(Double_t mean); | |||
virtual Double_t PoissonD(Double_t mean); | virtual Double_t PoissonD(Double_t mean); | |||
virtual void Rannor(Float_t &a, Float_t &b); | virtual void Rannor(Float_t &a, Float_t &b); | |||
virtual void Rannor(Double_t &a, Double_t &b); | virtual void Rannor(Double_t &a, Double_t &b); | |||
virtual void ReadRandom(const char *filename); | virtual void ReadRandom(const char *filename); | |||
virtual void SetSeed(UInt_t seed=65539); | virtual void SetSeed(UInt_t seed=0); | |||
virtual Double_t Rndm(Int_t i=0); | virtual Double_t Rndm(Int_t i=0); | |||
virtual void RndmArray(Int_t n, Float_t *array); | virtual void RndmArray(Int_t n, Float_t *array); | |||
virtual void RndmArray(Int_t n, Double_t *array); | virtual void RndmArray(Int_t n, Double_t *array); | |||
virtual void Sphere(Double_t &x, Double_t &y, Double_t &z, Double_t r); | virtual void Sphere(Double_t &x, Double_t &y, Double_t &z, Double_t r); | |||
virtual Double_t Uniform(Double_t x1=1); | virtual Double_t Uniform(Double_t x1=1); | |||
virtual Double_t Uniform(Double_t x1, Double_t x2); | virtual Double_t Uniform(Double_t x1, Double_t x2); | |||
virtual void WriteRandom(const char *filename); | virtual void WriteRandom(const char *filename); | |||
ClassDef(TRandom,1) //Simple Random number generator (periodicity = 10* *9) | ClassDef(TRandom,1) //Simple Random number generator (periodicity = 10* *9) | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TRefArray.h | TRefArray.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TRefArray.h 23530 2008-04-24 16:22:51Z rdm $ | // @(#)root/cont:$Id: TRefArray.h 32781 2010-03-26 13:06:14Z pcanal $ | |||
// Author: Rene Brun 02/10/2001 | // Author: Rene Brun 02/10/2001 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 33 | skipping to change at line 33 | |||
#ifndef ROOT_TSeqCollection | #ifndef ROOT_TSeqCollection | |||
#include "TSeqCollection.h" | #include "TSeqCollection.h" | |||
#endif | #endif | |||
#ifndef ROOT_TProcessID | #ifndef ROOT_TProcessID | |||
#include "TProcessID.h" | #include "TProcessID.h" | |||
#endif | #endif | |||
#include <iterator> | #include <iterator> | |||
#if (__GNUC__ >= 3) && !defined(__INTEL_COMPILER) | ||||
// Prevent -Weffc++ from complaining about the inheritance | ||||
// TRefArrayIter from std::iterator. | ||||
#pragma GCC system_header | ||||
#endif | ||||
class TSystem; | class TSystem; | |||
class TRefArrayIter; | class TRefArrayIter; | |||
class TRefArray : public TSeqCollection { | class TRefArray : public TSeqCollection { | |||
friend class TRefArrayIter; | friend class TRefArrayIter; | |||
protected: | protected: | |||
TProcessID *fPID; //Pointer to Process Unique Identifier | TProcessID *fPID; //Pointer to Process Unique Identifier | |||
UInt_t *fUIDs; //[fSize] To store uids of referenced object s | UInt_t *fUIDs; //[fSize] To store uids of referenced object s | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
TRootContextMenu.h | TRootContextMenu.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TRootContextMenu.h 28021 2009-04-01 11:10:27Z bellenot $ | // @(#)root/gui:$Id: TRootContextMenu.h 32061 2010-01-20 07:51:15Z bellenot $ | |||
// Author: Fons Rademakers 12/02/98 | // Author: Fons Rademakers 12/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 57 | skipping to change at line 57 | |||
virtual void DisplayPopup(Int_t x, Int_t y); | virtual void DisplayPopup(Int_t x, Int_t y); | |||
virtual void Dialog(TObject *object, TMethod *method); | virtual void Dialog(TObject *object, TMethod *method); | |||
virtual void Dialog(TObject *object, TFunction *function); | virtual void Dialog(TObject *object, TFunction *function); | |||
virtual void DrawEntry(TGMenuEntry *entry); | virtual void DrawEntry(TGMenuEntry *entry); | |||
TRootDialog *GetDialog() const { return fDialog; }; | TRootDialog *GetDialog() const { return fDialog; }; | |||
virtual Bool_t HandleButton(Event_t *event); | virtual Bool_t HandleButton(Event_t *event); | |||
virtual Bool_t HandleCrossing(Event_t *event); | virtual Bool_t HandleCrossing(Event_t *event); | |||
virtual Bool_t HandleMotion(Event_t *event); | virtual Bool_t HandleMotion(Event_t *event); | |||
virtual void OnlineHelp(); | virtual void OnlineHelp(); | |||
virtual void RecursiveRemove(TObject *obj); | ||||
Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2); | Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2); | |||
protected: | protected: | |||
TGPopupMenu * FindHierarchy(const char *commentstring, TString &last_com ponent); | TGPopupMenu * FindHierarchy(const char *commentstring, TString &last_com ponent); | |||
void AddEntrySorted(TGPopupMenu *current, const char *s, Int_t id, void *ud = 0, | void AddEntrySorted(TGPopupMenu *current, const char *s, Int_t id, void *ud = 0, | |||
const TGPicture *p = 0, Bool_t sorted = kTRUE); | const TGPicture *p = 0, Bool_t sorted = kTRUE); | |||
ClassDef(TRootContextMenu,0) //ROOT native GUI context sensitive popup menu | ClassDef(TRootContextMenu,0) //ROOT native GUI context sensitive popup menu | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TSQLStructure.h | TSQLStructure.h | |||
---|---|---|---|---|
// @(#)root/sql:$Id: TSQLStructure.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/sql:$Id: TSQLStructure.h 32337 2010-02-12 16:09:35Z 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 324 | skipping to change at line 324 | |||
extern const char* CT_Value; | extern const char* CT_Value; | |||
extern const char* cfg_Version; | extern const char* cfg_Version; | |||
extern const char* cfg_UseSufixes; | extern const char* cfg_UseSufixes; | |||
extern const char* cfg_ArrayLimit; | extern const char* cfg_ArrayLimit; | |||
extern const char* cfg_TablesType; | extern const char* cfg_TablesType; | |||
extern const char* cfg_UseTransactions; | extern const char* cfg_UseTransactions; | |||
extern const char* cfg_UseIndexes; | extern const char* cfg_UseIndexes; | |||
extern const char* cfg_LockingMode; | extern const char* cfg_LockingMode; | |||
extern const char* cfg_ModifyCounter; | extern const char* cfg_ModifyCounter; | |||
}; | } | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TSchemaHelper.h | TSchemaHelper.h | |||
---|---|---|---|---|
// @(#)root/core:$Id: TSchemaHelper.h 30815 2009-10-20 13:49:22Z rdm $ | // @(#)root/core:$Id: TSchemaHelper.h 32737 2010-03-24 17:16:51Z pcanal $ | |||
// author: Lukasz Janyst <ljanyst@cern.ch> | // author: Lukasz Janyst <ljanyst@cern.ch> | |||
#ifndef ROOT_TSchemaHelper | #ifndef ROOT_TSchemaHelper | |||
#define ROOT_TSchemaHelper | #define ROOT_TSchemaHelper | |||
#include <string> | #include <string> | |||
#ifndef ROOT_Rtypes | #ifndef ROOT_Rtypes | |||
#include "Rtypes.h" | #include "Rtypes.h" | |||
#endif | #endif | |||
namespace ROOT | namespace ROOT | |||
{ | { | |||
struct TSchemaHelper | struct TSchemaHelper | |||
{ | { | |||
TSchemaHelper(): fTarget(), fSourceClass(), | TSchemaHelper(): fTarget(), fSourceClass(), | |||
fSource(), fCode(), fVersion(), fChecksum(), | fSource(), fCode(), fVersion(), fChecksum(), | |||
fInclude(), fEmbed(kTRUE), fFunctionPtr( 0 ) {} | fInclude(), fEmbed(kTRUE), fFunctionPtr( 0 ), | |||
fAttributes() {} | ||||
std::string fTarget; | std::string fTarget; | |||
std::string fSourceClass; | std::string fSourceClass; | |||
std::string fSource; | std::string fSource; | |||
std::string fCode; | std::string fCode; | |||
std::string fVersion; | std::string fVersion; | |||
std::string fChecksum; | std::string fChecksum; | |||
std::string fInclude; | std::string fInclude; | |||
bool fEmbed; | bool fEmbed; | |||
void* fFunctionPtr; | void* fFunctionPtr; | |||
std::string fAttributes; | ||||
TSchemaHelper(const TSchemaHelper &tsh) : | TSchemaHelper(const TSchemaHelper &tsh) : | |||
fTarget(tsh.fTarget), fSourceClass(tsh.fSourceClass), | fTarget(tsh.fTarget), fSourceClass(tsh.fSourceClass), | |||
fSource(tsh.fSource), fCode(tsh.fCode), fVersion(tsh.fVersion), fChe | fSource(tsh.fSource), fCode(tsh.fCode), fVersion(tsh.fVersion),fChec | |||
cksum(tsh.fChecksum), | ksum(tsh.fChecksum), | |||
fInclude(tsh.fInclude), fEmbed(tsh.fEmbed), fFunctionPtr(tsh.fFuncti | fInclude(tsh.fInclude), fEmbed(tsh.fEmbed), fFunctionPtr(tsh.fFuncti | |||
onPtr) {} | onPtr), | |||
fAttributes(tsh.fAttributes) {} | ||||
TSchemaHelper& operator=(const TSchemaHelper &) {return *this;} // No t implemented | TSchemaHelper& operator=(const TSchemaHelper &) {return *this;} // No t implemented | |||
}; | }; | |||
} | } | |||
#endif // ROOT_TSchemaHelper | #endif // ROOT_TSchemaHelper | |||
End of changes. 4 change blocks. | ||||
6 lines changed or deleted | 9 lines changed or added | |||
TSchemaRule.h | TSchemaRule.h | |||
---|---|---|---|---|
// @(#)root/core:$Id: TSchemaRule.h 27938 2009-03-26 09:53:23Z pcanal $ | // @(#)root/core:$Id: TSchemaRule.h 32644 2010-03-17 13:58:28Z pcanal $ | |||
// author: Lukasz Janyst <ljanyst@cern.ch> | // author: Lukasz Janyst <ljanyst@cern.ch> | |||
#ifndef ROOT_TSchemaRule | #ifndef ROOT_TSchemaRule | |||
#define ROOT_TSchemaRule | #define ROOT_TSchemaRule | |||
class TBuffer; | class TBuffer; | |||
class TVirtualObject; | class TVirtualObject; | |||
class TObjArray; | class TObjArray; | |||
#include "TObject.h" | #include "TObject.h" | |||
skipping to change at line 39 | skipping to change at line 39 | |||
} RuleType_t; | } RuleType_t; | |||
typedef void (*ReadFuncPtr_t)( char*, TVirtualObject* ); | typedef void (*ReadFuncPtr_t)( char*, TVirtualObject* ); | |||
typedef void (*ReadRawFuncPtr_t)( char*, TBuffer&); | typedef void (*ReadRawFuncPtr_t)( char*, TBuffer&); | |||
TSchemaRule(); | TSchemaRule(); | |||
virtual ~TSchemaRule(); | virtual ~TSchemaRule(); | |||
TSchemaRule( const TSchemaRule& rhs ); | TSchemaRule( const TSchemaRule& rhs ); | |||
TSchemaRule& operator = ( const TSchemaRule& rhs ); | TSchemaRule& operator = ( const TSchemaRule& rhs ); | |||
Bool_t operator == ( const TSchemaRule& rhs ); | ||||
void Clear(Option_t * /*option*/ =""); | ||||
Bool_t SetFromRule( const char *rule ); | ||||
const char *GetVersion( ) const; | ||||
Bool_t SetVersion( const TString& version ); | Bool_t SetVersion( const TString& version ); | |||
Bool_t TestVersion( Int_t version ) const; | Bool_t TestVersion( Int_t version ) const; | |||
Bool_t SetChecksum( const TString& checksum ); | Bool_t SetChecksum( const TString& checksum ); | |||
Bool_t TestChecksum( UInt_t checksum ) const; | Bool_t TestChecksum( UInt_t checksum ) const; | |||
void SetSourceClass( const TString& classname ); | void SetSourceClass( const TString& classname ); | |||
TString GetSourceClass() const; | const char *GetSourceClass() const; | |||
void SetTargetClass( const TString& classname ); | ||||
const char *GetTargetClass() const; | ||||
void SetTarget( const TString& target ); | void SetTarget( const TString& target ); | |||
const TObjArray* GetTarget() const; | const TObjArray* GetTarget() const; | |||
const char *GetTargetString() const; | ||||
void SetSource( const TString& source ); | void SetSource( const TString& source ); | |||
const TObjArray* GetSource() const; | const TObjArray* GetSource() const; | |||
void SetEmbed( Bool_t embed ); | void SetEmbed( Bool_t embed ); | |||
Bool_t GetEmbed() const; | Bool_t GetEmbed() const; | |||
Bool_t IsAliasRule() const; | Bool_t IsAliasRule() const; | |||
Bool_t IsRenameRule() const; | Bool_t IsRenameRule() const; | |||
Bool_t IsValid() const; | Bool_t IsValid() const; | |||
void SetCode( const TString& code ); | void SetCode( const TString& code ); | |||
TString GetCode() const; | const char *GetCode() const; | |||
void SetAttributes( const TString& attributes ); | ||||
const char *GetAttributes() const; | ||||
Bool_t HasTarget( const TString& target ) const; | Bool_t HasTarget( const TString& target ) const; | |||
Bool_t HasSource( const TString& source ) const; | Bool_t HasSource( const TString& source ) const; | |||
void SetReadFunctionPointer( ReadFuncPtr_t ptr ); | void SetReadFunctionPointer( ReadFuncPtr_t ptr ); | |||
ReadFuncPtr_t GetReadFunctionPointer() const; | ReadFuncPtr_t GetReadFunctionPointer() const; | |||
void SetReadRawFunctionPointer( ReadRawFuncPtr_t ptr ) ; | void SetReadRawFunctionPointer( ReadRawFuncPtr_t ptr ) ; | |||
ReadRawFuncPtr_t GetReadRawFunctionPointer() const; | ReadRawFuncPtr_t GetReadRawFunctionPointer() const; | |||
void SetInclude( const TString& include ); | void SetInclude( const TString& include ); | |||
const TObjArray* GetInclude() const; | const TObjArray* GetInclude() const; | |||
void SetRuleType( RuleType_t type ); | void SetRuleType( RuleType_t type ); | |||
RuleType_t GetRuleType() const; | RuleType_t GetRuleType() const; | |||
Bool_t Conflicts( const TSchemaRule* rule ) const; | Bool_t Conflicts( const TSchemaRule* rule ) const; | |||
void AsString( TString &out, const char *options = "" ) const; | ||||
void ls(Option_t *option="") const; | void ls(Option_t *option="") const; | |||
// Bool_t GenerateFor( const TStreamerInfo *info ); | ||||
ClassDef( TSchemaRule, 1 ); | ClassDef( TSchemaRule, 1 ); | |||
private: | private: | |||
Bool_t ProcessVersion( const TString& version ) const; | Bool_t ProcessVersion( const TString& version ) const; | |||
Bool_t ProcessChecksum( const TString& checksum ) const; | Bool_t ProcessChecksum( const TString& checksum ) const; | |||
static void ProcessList( TObjArray* array, const TString& list ); | static void ProcessList( TObjArray* array, const TString& list ); | |||
static void ProcessDeclaration( TObjArray* array, const TString& l ist ); | static void ProcessDeclaration( TObjArray* array, const TString& l ist ); | |||
TString fVersion; // Source version s tring | TString fVersion; // Source version s tring | |||
mutable std::vector<std::pair<Int_t, Int_t> >* fVersionVect; // ! Source version vector (for searching purposes) | mutable std::vector<std::pair<Int_t, Int_t> >* fVersionVect; // ! Source version vector (for searching purposes) | |||
TString fChecksum; // Source checksum string | TString fChecksum; // Source checksum string | |||
mutable std::vector<UInt_t>* fChecksumVect; //! Source checksum vector (for searching purposes) | mutable std::vector<UInt_t>* fChecksumVect; //! Source checksum vector (for searching purposes) | |||
TString fSourceClass; // Source clss | TString fSourceClass; // Source class | |||
TString fTargetClass; // Target class, th | ||||
is is the owner of this rule object. | ||||
TString fTarget; // Target data mamb er string | TString fTarget; // Target data mamb er string | |||
mutable TObjArray* fTargetVect; //! Target data memb er vector (for searching purposes) | mutable TObjArray* fTargetVect; //! Target data memb er vector (for searching purposes) | |||
TString fSource; // Source data memb er string | TString fSource; // Source data memb er string | |||
mutable TObjArray* fSourceVect; //! Source data memb er vector (for searching purposes) | mutable TObjArray* fSourceVect; //! Source data memb er vector (for searching purposes) | |||
TString fInclude; // Includes string | TString fInclude; // Includes string | |||
mutable TObjArray* fIncludeVect; //! Includes vector | mutable TObjArray* fIncludeVect; //! Includes vector | |||
TString fCode; // User specified c ode snippet | TString fCode; // User specified c ode snippet | |||
Bool_t fEmbed; // Value determinin g if the rule should be embedded | Bool_t fEmbed; // Value determinin g if the rule should be embedded | |||
ReadFuncPtr_t fReadFuncPtr; //! Conversion funct ion pointer for read rule | ReadFuncPtr_t fReadFuncPtr; //! Conversion funct ion pointer for read rule | |||
ReadRawFuncPtr_t fReadRawFuncPtr; //! Conversion funct ion pointer for readraw rule | ReadRawFuncPtr_t fReadRawFuncPtr; //! Conversion funct ion pointer for readraw rule | |||
RuleType_t fRuleType; // Type of the rule | RuleType_t fRuleType; // Type of the rule | |||
TString fAttributes; // Attributes to be applied to the member (like Owner/NotOwner) | ||||
}; | }; | |||
} // End of namespace ROOT | } // End of namespace ROOT | |||
#endif // ROOT_TSchemaRule | #endif // ROOT_TSchemaRule | |||
End of changes. 11 change blocks. | ||||
5 lines changed or deleted | 19 lines changed or added | |||
TSchemaRuleSet.h | TSchemaRuleSet.h | |||
---|---|---|---|---|
// @(#)root/core:$Id: TSchemaRuleSet.h 29272 2009-06-30 19:24:06Z pcanal $ | // @(#)root/core:$Id: TSchemaRuleSet.h 32644 2010-03-17 13:58:28Z 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 25 | skipping to change at line 25 | |||
namespace ROOT { | namespace ROOT { | |||
class TSchemaRule; | class TSchemaRule; | |||
class TSchemaMatch: public TObjArray | class TSchemaMatch: public TObjArray | |||
{ | { | |||
public: | public: | |||
virtual ~TSchemaMatch() {}; | virtual ~TSchemaMatch() {}; | |||
const TSchemaRule* GetRuleWithSource( const TString& name ) const; | const TSchemaRule* GetRuleWithSource( const TString& name ) const; | |||
const TSchemaRule* GetRuleWithTarget( const TString& name ) const; | const TSchemaRule* GetRuleWithTarget( const TString& name ) const; | |||
Bool_t HasRuleWithSource( const TString& name ) const; | Bool_t HasRuleWithSource( const TString& name, Bool_t | |||
Bool_t HasRuleWithTarget( const TString& name ) const; | needingAlloc ) const; | |||
Bool_t HasRuleWithTarget( const TString& name, Bool_t | ||||
willset ) const; | ||||
ClassDef(TSchemaMatch,0); | ClassDef(TSchemaMatch,0); | |||
}; | }; | |||
class TSchemaRuleSet: public TObject | class TSchemaRuleSet: public TObject | |||
{ | { | |||
public: | public: | |||
enum EConsistencyCheck { | ||||
kNoCheck = 0, | ||||
kCheckAll = 1, | ||||
kCheckConflict = 2 | ||||
}; | ||||
TSchemaRuleSet(); | TSchemaRuleSet(); | |||
virtual ~TSchemaRuleSet(); | virtual ~TSchemaRuleSet(); | |||
Bool_t AddRule( TSchemaRule* rule, Bool_t checkConsis | Bool_t AddRule( TSchemaRule* rule, EConsistencyCheck | |||
tency = kTRUE ); | checkConsistency = kCheckAll ); | |||
Bool_t AddRules( TSchemaRuleSet* rules, Bool_t checkC | Bool_t AddRules( TSchemaRuleSet* rules, EConsistencyC | |||
onsistency = kTRUE ); | heck checkConsistency = kCheckAll ); | |||
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; | |||
const TObjArray* GetPersistentRules() const; | const TObjArray* GetPersistentRules() const; | |||
void RemoveRule( TSchemaRule* rule ); | void RemoveRule( TSchemaRule* rule ); | |||
void RemoveRules( TObjArray* rules ); | void RemoveRules( TObjArray* rules ); | |||
void SetClass( TClass* cls ); | void SetClass( TClass* cls ); | |||
void ls(Option_t *option="") const; | void ls(Option_t *option="") const; | |||
void AsString(TString &out) const; | ||||
ClassDef( TSchemaRuleSet, 1 ) | ClassDef( TSchemaRuleSet, 1 ) | |||
private: | private: | |||
TObjArray* fPersistentRules; // Array of the rules that will be embeded in the file | TObjArray* fPersistentRules; // Array of the rules that will be embeded in the file | |||
TObjArray* fRemainingRules; //! Array of non-persisten rules - just for cleanup purposes - owns the elements | TObjArray* fRemainingRules; //! Array of non-persisten rules - just for cleanup purposes - owns the elements | |||
TObjArray* fAllRules; //! Array of all rules | TObjArray* fAllRules; //! Array of all rules | |||
TClassRef fClass; //! Targe t class pointer (for consistency checking) | TClassRef fClass; //! Targe t class pointer (for consistency checking) | |||
TString fClassName; // Targe t class name | TString fClassName; // Targe t class name | |||
Int_t fVersion; // Targe t class version | Int_t fVersion; // Targe t class version | |||
End of changes. 5 change blocks. | ||||
7 lines changed or deleted | 16 lines changed or added | |||
TStreamerElement.h | TStreamerElement.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TStreamerElement.h 31565 2009-12-04 18:44:27Z pcanal $ | // @(#)root/meta:$Id: TStreamerElement.h 32586 2010-03-12 14:00:16Z 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 114 | skipping to change at line 114 | |||
virtual void ls(Option_t *option="") const; | virtual void ls(Option_t *option="") const; | |||
virtual void SetArrayDim(Int_t dim); | virtual void SetArrayDim(Int_t dim); | |||
virtual void SetMaxIndex(Int_t dim, Int_t max); | virtual void SetMaxIndex(Int_t dim, Int_t max); | |||
virtual void SetOffset(Int_t offset) {fOffset=offset;} | virtual void SetOffset(Int_t offset) {fOffset=offset;} | |||
virtual void SetTObjectOffset(Int_t tobjoffset) {fTObjectOffset=tobj offset;} | virtual void SetTObjectOffset(Int_t tobjoffset) {fTObjectOffset=tobj offset;} | |||
virtual void SetStreamer(TMemberStreamer *streamer); | virtual void SetStreamer(TMemberStreamer *streamer); | |||
virtual void SetSize(Int_t dsize) {fSize = dsize;} | virtual void SetSize(Int_t dsize) {fSize = dsize;} | |||
virtual void SetNewType(Int_t dtype) {fNewType = dtype;} | virtual void SetNewType(Int_t dtype) {fNewType = dtype;} | |||
virtual void SetNewClass( TClass* cl ) { fNewClass= cl; } | virtual void SetNewClass( TClass* cl ) { fNewClass= cl; } | |||
virtual void SetType(Int_t dtype) {fType = dtype;} | virtual void SetType(Int_t dtype) {fType = dtype;} | |||
virtual void SetTypeName(const char *name) {fTypeName = name;} | virtual void SetTypeName(const char *name) {fTypeName = name; fClass Object = (TClass*)-1; } | |||
virtual void Update(const TClass *oldClass, TClass *newClass); | virtual void Update(const TClass *oldClass, TClass *newClass); | |||
ClassDef(TStreamerElement,4) //Base class for one element (data member) to be Streamed | ClassDef(TStreamerElement,4) //Base class for one element (data member) to be Streamed | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerBase : public TStreamerElement { | class TStreamerBase : public TStreamerElement { | |||
private: | private: | |||
TStreamerBase(const TStreamerBase &); // Not implemented | TStreamerBase(const TStreamerBase &); // Not implemented | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TStreamerInfo.h | TStreamerInfo.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TStreamerInfo.h 30905 2009-10-28 16:51:47Z pcanal $ | // @(#)root/io:$Id: TStreamerInfo.h 33173 2010-04-24 21:35:39Z 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 99 | skipping to change at line 99 | |||
Int_t fNumber; //!Unique identifier | Int_t fNumber; //!Unique identifier | |||
Int_t fNdata; //!number of optmized types | Int_t fNdata; //!number of optmized types | |||
Int_t fSize; //!size of the persistent class | Int_t fSize; //!size of the persistent class | |||
Int_t *fType; //![fNdata] | Int_t *fType; //![fNdata] | |||
Int_t *fNewType; //![fNdata] | Int_t *fNewType; //![fNdata] | |||
Int_t *fOffset; //![fNdata] | Int_t *fOffset; //![fNdata] | |||
Int_t *fLength; //![fNdata] | Int_t *fLength; //![fNdata] | |||
ULong_t *fElem; //![fNdata] | ULong_t *fElem; //![fNdata] | |||
ULong_t *fMethod; //![fNdata] | ULong_t *fMethod; //![fNdata] | |||
TCompInfo *fComp; //![fNdata] additional info | TCompInfo *fComp; //![fNdata] additional info | |||
Bool_t fOptimized; //! true if has been optimized | ||||
TClass *fClass; //!pointer to class | TClass *fClass; //!pointer to class | |||
TObjArray *fElements; //Array of TStreamerElements | TObjArray *fElements; //Array of TStreamerElements | |||
Version_t fOldVersion; //! Version of the TStreamerInfo o bject read from the file | Version_t fOldVersion; //! Version of the TStreamerInfo o bject read from the file | |||
Bool_t fIsBuilt; //! true if the TStreamerInfo has | Int_t fNVirtualInfoLoc; //! Number of virtual info locatio | |||
been 'built' | n to update. | |||
ULong_t *fVirtualInfoLoc; //![fNVirtualInfoLoc] Location of | ||||
the pointer to the TStreamerInfo inside the object (when emulated) | ||||
ULong_t fLiveCount; //! Number of outstanding pointer | ||||
to this StreamerInfo. | ||||
static Int_t fgCount; //Number of TStreamerInfo instance s | static Int_t fgCount; //Number of TStreamerInfo instance s | |||
static TStreamerElement *fgElement; //Pointer to current TStreamerElem ent | static TStreamerElement *fgElement; //Pointer to current TStreamerElem ent | |||
static Double_t GetValueAux(Int_t type, void *ladd, int k, Int_t len); | static Double_t GetValueAux(Int_t type, void *ladd, int k, Int_t len); | |||
static void PrintValueAux(char *ladd, Int_t atype, TStreamerElemen t * aElement, Int_t aleng, Int_t *count); | static void PrintValueAux(char *ladd, Int_t atype, TStreamerElemen t * aElement, Int_t aleng, Int_t *count); | |||
UInt_t GenerateIncludes(FILE *fp, char *inclist); | UInt_t GenerateIncludes(FILE *fp, char *inclist, const TList *extrainfos); | |||
void GenerateDeclaration(FILE *fp, FILE *sfp, const TList * subClasses, Bool_t top = kTRUE); | void GenerateDeclaration(FILE *fp, FILE *sfp, const TList * subClasses, Bool_t top = kTRUE); | |||
void InsertArtificialElements(const TObjArray *rules); | void InsertArtificialElements(const TObjArray *rules); | |||
void DestructorImpl(void* p, Bool_t dtorOnly); | ||||
private: | private: | |||
TStreamerInfo(const TStreamerInfo&); // TStreamerInfo are cop iable. Not Implemented. | TStreamerInfo(const TStreamerInfo&); // TStreamerInfo are cop iable. Not Implemented. | |||
TStreamerInfo& operator=(const TStreamerInfo&); // TStreamerInfo are cop iable. Not Implemented. | TStreamerInfo& operator=(const TStreamerInfo&); // TStreamerInfo are cop iable. Not Implemented. | |||
public: | public: | |||
//status bits | //status bits | |||
enum { kCannotOptimize = BIT(12), | enum { kCannotOptimize = BIT(12), | |||
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) | ||||
}; | }; | |||
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, | |||
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, | |||
skipping to change at line 180 | skipping to change at line 183 | |||
void BuildCheck(); | void BuildCheck(); | |||
void BuildEmulated(TFile *file); | void BuildEmulated(TFile *file); | |||
void BuildOld(); | void BuildOld(); | |||
virtual Bool_t BuildFor( const TClass *cl ); | virtual Bool_t BuildFor( const TClass *cl ); | |||
void CallShowMembers(void* obj, TMemberInspector &insp, c har *parent) const; | void CallShowMembers(void* obj, TMemberInspector &insp, c har *parent) const; | |||
void Clear(Option_t *); | void Clear(Option_t *); | |||
Bool_t CompareContent(TClass *cl,TVirtualStreamerInfo *info , Bool_t warn, Bool_t complete); | Bool_t CompareContent(TClass *cl,TVirtualStreamerInfo *info , Bool_t warn, Bool_t complete); | |||
void Compile(); | void Compile(); | |||
void ComputeSize(); | void ComputeSize(); | |||
void ForceWriteInfo(TFile *file, Bool_t force=kFALSE); | void ForceWriteInfo(TFile *file, Bool_t force=kFALSE); | |||
Int_t GenerateHeaderFile(const char *dirname, const TList | Int_t GenerateHeaderFile(const char *dirname, const TList | |||
*subClasses = 0); | *subClasses = 0, const TList *extrainfos = 0); | |||
TClass *GetActualClass(const void *obj) const; | ||||
TClass *GetClass() const {return fClass;} | TClass *GetClass() const {return fClass;} | |||
UInt_t GetCheckSum() const {return fCheckSum;} | UInt_t GetCheckSum() const {return fCheckSum;} | |||
UInt_t GetCheckSum(UInt_t code) const; | UInt_t GetCheckSum(UInt_t code) const; | |||
Int_t GetClassVersion() const {return fClassVersion;} | Int_t GetClassVersion() const {return fClassVersion;} | |||
Int_t GetDataMemberOffset(TDataMember *dm, TMemberStreamer *&streamer) const; | Int_t GetDataMemberOffset(TDataMember *dm, TMemberStreamer *&streamer) const; | |||
TObjArray *GetElements() const {return fElements;} | TObjArray *GetElements() const {return fElements;} | |||
ULong_t *GetElems() const {return fElem;} | ULong_t *GetElems() const {return fElem;} | |||
Int_t GetNdata() const {return fNdata;} | Int_t GetNdata() const {return fNdata;} | |||
Int_t GetNumber() const {return fNumber;} | Int_t GetNumber() const {return fNumber;} | |||
Int_t *GetLengths() const {return fLength;} | Int_t *GetLengths() const {return fLength;} | |||
skipping to change at line 206 | skipping to change at line 210 | |||
Int_t GetOnFileClassVersion() const {return fOnFileClassVe rsion;} | Int_t GetOnFileClassVersion() const {return fOnFileClassVe rsion;} | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
Int_t GetSizeElements() const; | Int_t GetSizeElements() const; | |||
TStreamerElement *GetStreamerElement(const char*datamember, Int_t& off set) const; | TStreamerElement *GetStreamerElement(const char*datamember, Int_t& off set) const; | |||
TStreamerElement *GetStreamerElementReal(Int_t i, Int_t j) const; | TStreamerElement *GetStreamerElementReal(Int_t i, Int_t j) const; | |||
Int_t *GetTypes() const {return fType;} | Int_t *GetTypes() const {return fType;} | |||
Double_t GetValue(char *pointer, Int_t i, Int_t j, Int_t len) const; | Double_t GetValue(char *pointer, Int_t i, Int_t j, Int_t len) const; | |||
Double_t GetValueClones(TClonesArray *clones, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | Double_t GetValueClones(TClonesArray *clones, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | |||
Double_t GetValueSTL(TVirtualCollectionProxy *cont, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | Double_t GetValueSTL(TVirtualCollectionProxy *cont, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | |||
Double_t GetValueSTLP(TVirtualCollectionProxy *cont, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | Double_t GetValueSTLP(TVirtualCollectionProxy *cont, Int_t i, Int_t j, Int_t k, Int_t eoffset) const; | |||
Bool_t IsBuilt() const { return fIsBuilt; } | ||||
Bool_t IsOptimized() const {return fOptimized;} | ||||
Int_t IsRecovered() const {return TestBit(kRecovered);} | ||||
void ls(Option_t *option="") const; | void ls(Option_t *option="") const; | |||
TVirtualStreamerInfo *NewInfo(TClass *cl) {return new TStreamerInfo(cl); } | TVirtualStreamerInfo *NewInfo(TClass *cl) {return new TStreamerInfo(cl); } | |||
void *New(void *obj = 0); | void *New(void *obj = 0); | |||
void *NewArray(Long_t nElements, void* ary = 0); | void *NewArray(Long_t nElements, void* ary = 0); | |||
void Destructor(void* p, Bool_t dtorOnly = kFALSE); | void Destructor(void* p, Bool_t dtorOnly = kFALSE); | |||
void DeleteArray(void* p, Bool_t dtorOnly = kFALSE); | void DeleteArray(void* p, Bool_t dtorOnly = kFALSE); | |||
void PrintValue(const char *name, char *pointer, Int_t i, Int_t len, Int_t lenmax=1000) const; | void PrintValue(const char *name, char *pointer, Int_t i, Int_t len, Int_t lenmax=1000) const; | |||
void PrintValueClones(const char *name, TClonesArray *clo nes, Int_t i, Int_t eoffset, Int_t lenmax=1000) const; | void PrintValueClones(const char *name, TClonesArray *clo nes, Int_t i, Int_t eoffset, Int_t lenmax=1000) const; | |||
void PrintValueSTL(const char *name, TVirtualCollectionPr oxy *cont, Int_t i, Int_t eoffset, Int_t lenmax=1000) const; | void PrintValueSTL(const char *name, TVirtualCollectionPr oxy *cont, Int_t i, Int_t eoffset, Int_t lenmax=1000) const; | |||
skipping to change at line 280 | skipping to change at line 281 | |||
Int_t WriteBufferAux (TBuffer &b, char ** const &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | Int_t WriteBufferAux (TBuffer &b, char ** const &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | |||
Int_t WriteBufferAux (TBuffer &b, const TVirtualColle ctionProxy &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | Int_t WriteBufferAux (TBuffer &b, const TVirtualColle ctionProxy &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | |||
Int_t WriteBufferAux (TBuffer &b, const TPointerColle ctionAdapter &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | Int_t WriteBufferAux (TBuffer &b, const TPointerColle ctionAdapter &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | |||
Int_t WriteBufferAux (TBuffer &b, const TVirtualArray &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | Int_t WriteBufferAux (TBuffer &b, const TVirtualArray &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | |||
#else | #else | |||
template <class T> | template <class T> | |||
Int_t WriteBufferAux (TBuffer &b, const T &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | Int_t WriteBufferAux (TBuffer &b, const T &arr, Int_t first,Int_t narr,Int_t eoffset,Int_t mode); | |||
#endif | #endif | |||
//WARNING this class version must be the same as TVirtualStreamerInfo | //WARNING this class version must be the same as TVirtualStreamerInfo | |||
ClassDef(TStreamerInfo,8) //Streamer information for one class version | ClassDef(TStreamerInfo,9) //Streamer information for one class version | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 9 change blocks. | ||||
12 lines changed or deleted | 15 lines changed or added | |||
TString.h | TString.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TString.h 30974 2009-11-04 23:42:44Z rdm $ | // @(#)root/base:$Id: TString.h 32426 2010-03-01 17:16:05Z 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 468 | skipping to change at line 468 | |||
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, "%9.9g", f); return operator+=(s); } | { char s[32]; 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]; 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]; sprintf(s, "%llu", ul); return operator+=(s); } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TSystem.h | TSystem.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TSystem.h 27497 2009-02-18 16:16:06Z rdm $ | // @(#)root/base:$Id: TSystem.h 32406 2010-02-25 12:50:14Z pcanal $ | |||
// Author: Fons Rademakers 15/09/95 | // Author: Fons Rademakers 15/09/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 262 | skipping to change at line 262 | |||
TProcessEventTimer(Long_t delay); | TProcessEventTimer(Long_t delay); | |||
Bool_t Notify() { return kTRUE; } | Bool_t Notify() { return kTRUE; } | |||
Bool_t ProcessEvents(); | Bool_t ProcessEvents(); | |||
ClassDef(TProcessEventTimer,0) // Process pending events at fixed time intervals | ClassDef(TProcessEventTimer,0) // Process pending events at fixed time intervals | |||
}; | }; | |||
class TSystem : public TNamed { | class TSystem : public TNamed { | |||
public: | public: | |||
enum EAclicMode { kDefault, kDebug, kOpt }; | enum EAclicMode { kDefault, kDebug, kOpt }; | |||
enum EAclicProperties { | ||||
kFlatBuildDir = BIT(0) // If set and a BuildDir is selected | ||||
, then do not created subdirectories | ||||
}; | ||||
protected: | protected: | |||
TFdSet *fReadmask; //!Files that should be checked for read events | TFdSet *fReadmask; //!Files that should be checked for read events | |||
TFdSet *fWritemask; //!Files that should be checked for write events | TFdSet *fWritemask; //!Files that should be checked for write events | |||
TFdSet *fReadready; //!Files with reads waiting | TFdSet *fReadready; //!Files with reads waiting | |||
TFdSet *fWriteready; //!Files with writes waiting | TFdSet *fWriteready; //!Files with writes waiting | |||
TFdSet *fSignals; //!Signals that were trapped | TFdSet *fSignals; //!Signals that were trapped | |||
Int_t fNfd; //Number of fd's in masks | Int_t fNfd; //Number of fd's in masks | |||
Int_t fMaxrfd; //Largest fd in read mask | Int_t fMaxrfd; //Largest fd in read mask | |||
Int_t fMaxwfd; //Largest fd in write mask | Int_t fMaxwfd; //Largest fd in write mask | |||
skipping to change at line 307 | skipping to change at line 310 | |||
TString fFlagsDebug; //Flags for debug compilation | TString fFlagsDebug; //Flags for debug compilation | |||
TString fFlagsOpt; //Flags for optimized compilation | TString fFlagsOpt; //Flags for optimized compilation | |||
TString fListPaths; //List of all include (fIncludePath + interpreter include path). Cache used by GetIncludePath | TString fListPaths; //List of all include (fIncludePath + interpreter include path). Cache used by GetIncludePath | |||
TString fIncludePath; //Used to expand $IncludePath in the directives given to SetMakeSharedLib and SetMakeExe | TString fIncludePath; //Used to expand $IncludePath in the directives given to SetMakeSharedLib and SetMakeExe | |||
TString fLinkedLibs; //Used to expand $LinkedLibs in the directives given to SetMakeSharedLib and SetMakeExe | TString fLinkedLibs; //Used to expand $LinkedLibs in the directives given to SetMakeSharedLib and SetMakeExe | |||
TString fSoExt; //Extension of shared library (.so, .sl, .a, .dll, etc.) | TString fSoExt; //Extension of shared library (.so, .sl, .a, .dll, etc.) | |||
TString fObjExt; //Extension of object files (.o, .ob j, etc.) | TString fObjExt; //Extension of object files (.o, .ob j, etc.) | |||
EAclicMode fAclicMode; //Whether the compilation should be done debug or opt | EAclicMode fAclicMode; //Whether the compilation should be done debug or opt | |||
TString fMakeSharedLib; //Directive used to build a shared l ibrary | TString fMakeSharedLib; //Directive used to build a shared l ibrary | |||
TString fMakeExe; //Directive used to build an executa ble | TString fMakeExe; //Directive used to build an executa ble | |||
TString fLinkdefSuffix; //Default suffix for linkdef files t | TString fLinkdefSuffix; //Default suffix for linkdef files t | |||
o be used by ACLiC | o be used by ACLiC (see EACLiCProperties) | |||
Int_t fAclicProperties; //Various boolean flag for change AC | ||||
LiC's behavior. | ||||
TSeqCollection *fCompiled; //List of shared libs from compiled macros to be deleted | TSeqCollection *fCompiled; //List of shared libs from compiled macros to be deleted | |||
TSeqCollection *fHelpers; //List of helper classes for alterna tive file/directory access | TSeqCollection *fHelpers; //List of helper classes for alterna tive file/directory access | |||
TSystem *FindHelper(const char *path, void *dirptr = 0); | TSystem *FindHelper(const char *path, void *dirptr = 0); | |||
virtual Bool_t ConsistentWith(const char *path, void *dirptr = 0 ); | virtual Bool_t ConsistentWith(const char *path, void *dirptr = 0 ); | |||
virtual const char *ExpandFileName(const char *fname); | virtual const char *ExpandFileName(const char *fname); | |||
virtual void SigAlarmInterruptsSyscalls(Bool_t) { } | virtual void SigAlarmInterruptsSyscalls(Bool_t) { } | |||
virtual const char *GetLinkedLibraries(); | virtual const char *GetLinkedLibraries(); | |||
virtual void DoBeep(Int_t /*freq*/=-1, Int_t /*duration*/=-1) const { printf("\a"); fflush(stdout); } | virtual void DoBeep(Int_t /*freq*/=-1, Int_t /*duration*/=-1) const { printf("\a"); fflush(stdout); } | |||
skipping to change at line 502 | skipping to change at line 506 | |||
//---- System, CPU and Memory info | //---- System, CPU and Memory info | |||
virtual int GetSysInfo(SysInfo_t *info) const; | virtual int GetSysInfo(SysInfo_t *info) const; | |||
virtual int GetCpuInfo(CpuInfo_t *info, Int_t sampleTime = 1 000) const; | virtual int GetCpuInfo(CpuInfo_t *info, Int_t sampleTime = 1 000) const; | |||
virtual int GetMemInfo(MemInfo_t *info) const; | virtual int GetMemInfo(MemInfo_t *info) const; | |||
virtual int GetProcInfo(ProcInfo_t *info) const; | virtual int GetProcInfo(ProcInfo_t *info) const; | |||
//---- ACLiC (Automatic Compiler of Shared Library for CINT) | //---- ACLiC (Automatic Compiler of Shared Library for CINT) | |||
virtual void AddIncludePath(const char *includePath); | virtual void AddIncludePath(const char *includePath); | |||
virtual void AddLinkedLibs(const char *linkedLib); | virtual void AddLinkedLibs(const char *linkedLib); | |||
virtual int CompileMacro(const char *filename, Option_t *opt ="", const char* library_name = "", const char* build_dir = "", UInt_t dirm ode = 0); | virtual int CompileMacro(const char *filename, Option_t *opt ="", const char* library_name = "", const char* build_dir = "", UInt_t dirm ode = 0); | |||
virtual Int_t GetAclicProperties() const; | ||||
virtual const char *GetBuildArch() const; | virtual const char *GetBuildArch() const; | |||
virtual const char *GetBuildCompiler() const; | virtual const char *GetBuildCompiler() const; | |||
virtual const char *GetBuildCompilerVersion() const; | virtual const char *GetBuildCompilerVersion() const; | |||
virtual const char *GetBuildNode() const; | virtual const char *GetBuildNode() const; | |||
virtual const char *GetBuildDir() const; | virtual const char *GetBuildDir() const; | |||
virtual const char *GetFlagsDebug() const; | virtual const char *GetFlagsDebug() const; | |||
virtual const char *GetFlagsOpt() const; | virtual const char *GetFlagsOpt() const; | |||
virtual const char *GetIncludePath(); | virtual const char *GetIncludePath(); | |||
virtual const char *GetLinkedLibs() const; | virtual const char *GetLinkedLibs() const; | |||
virtual const char *GetLinkdefSuffix() const; | virtual const char *GetLinkdefSuffix() const; | |||
virtual EAclicMode GetAclicMode() const; | virtual EAclicMode GetAclicMode() const; | |||
virtual const char *GetMakeExe() const; | virtual const char *GetMakeExe() const; | |||
virtual const char *GetMakeSharedLib() const; | virtual const char *GetMakeSharedLib() const; | |||
virtual const char *GetSoExt() const; | virtual const char *GetSoExt() const; | |||
virtual const char *GetObjExt() const; | virtual const char *GetObjExt() const; | |||
virtual void SetBuildDir(const char*); | virtual void SetBuildDir(const char* build_dir, Bool_t isflat = kFALSE); | |||
virtual void SetFlagsDebug(const char *); | virtual void SetFlagsDebug(const char *); | |||
virtual void SetFlagsOpt(const char *); | virtual void SetFlagsOpt(const char *); | |||
virtual void SetIncludePath(const char *includePath); | virtual void SetIncludePath(const char *includePath); | |||
virtual void SetMakeExe(const char *directives); | virtual void SetMakeExe(const char *directives); | |||
virtual void SetAclicMode(EAclicMode mode); | virtual void SetAclicMode(EAclicMode mode); | |||
virtual void SetMakeSharedLib(const char *directives); | virtual void SetMakeSharedLib(const char *directives); | |||
virtual void SetLinkedLibs(const char *linkedLibs); | virtual void SetLinkedLibs(const char *linkedLibs); | |||
virtual void SetLinkdefSuffix(const char *suffix); | virtual void SetLinkdefSuffix(const char *suffix); | |||
virtual void SetSoExt(const char *soExt); | virtual void SetSoExt(const char *soExt); | |||
virtual void SetObjExt(const char *objExt); | virtual void SetObjExt(const char *objExt); | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 11 lines changed or added | |||
TTF.h | TTF.h | |||
---|---|---|---|---|
// @(#)root/graf:$Id: TTF.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/graf:$Id: TTF.h 32449 2010-03-04 10:30:03Z couet $ | |||
// Author: Olivier Couet 01/10/02 | // Author: Olivier Couet 01/10/02 | |||
// Author: Fons Rademakers 21/11/98 | // Author: Fons Rademakers 21/11/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 67 | skipping to change at line 67 | |||
friend class TGX11TTF; | friend class TGX11TTF; | |||
friend class TGWin32; | friend class TGWin32; | |||
private: | private: | |||
enum { kTTMaxFonts = 32, kMaxGlyphs = 1024 }; | enum { kTTMaxFonts = 32, kMaxGlyphs = 1024 }; | |||
static Int_t fgAscent; // string ascent, used to co mpute Y alignment | static Int_t fgAscent; // string ascent, used to co mpute Y alignment | |||
static FT_BBox fgCBox; // string control box | static FT_BBox fgCBox; // string control box | |||
static FT_CharMap fgCharMap[kTTMaxFonts]; // font character map | static FT_CharMap fgCharMap[kTTMaxFonts]; // font character map | |||
static Int_t fgCurFontIdx; // current font index | static Int_t fgCurFontIdx; // current font index | |||
static Int_t fgSymbItaFontIdx; // Symbol italic font index | ||||
static Int_t fgFontCount; // number of fonts loaded | static Int_t fgFontCount; // number of fonts loaded | |||
static char *fgFontName[kTTMaxFonts]; // font name | static char *fgFontName[kTTMaxFonts]; // font name | |||
static FT_Face fgFace[kTTMaxFonts]; // font face | static FT_Face fgFace[kTTMaxFonts]; // font face | |||
static TTGlyph fgGlyphs[kMaxGlyphs]; // glyphs | static TTGlyph fgGlyphs[kMaxGlyphs]; // glyphs | |||
static Bool_t fgHinting; // use hinting (true by defa ult) | static Bool_t fgHinting; // use hinting (true by defa ult) | |||
static Bool_t fgInit; // true if the Init has been called | static Bool_t fgInit; // true if the Init has been called | |||
static Bool_t fgKerning; // use kerning (true by defa ult) | static Bool_t fgKerning; // use kerning (true by defa ult) | |||
static FT_Library fgLibrary; // FreeType font library | static FT_Library fgLibrary; // FreeType font library | |||
static Int_t fgNumGlyphs; // number of glyphs in the s tring | static Int_t fgNumGlyphs; // number of glyphs in the s tring | |||
static FT_Matrix *fgRotMatrix; // rotation matrix | static FT_Matrix *fgRotMatrix; // rotation matrix | |||
skipping to change at line 106 | skipping to change at line 107 | |||
static Bool_t GetHinting(); | static Bool_t GetHinting(); | |||
static Bool_t GetKerning(); | static Bool_t GetKerning(); | |||
static Int_t GetNumGlyphs(); | static Int_t GetNumGlyphs(); | |||
static FT_Matrix *GetRotMatrix(); | static FT_Matrix *GetRotMatrix(); | |||
static Bool_t GetSmoothing(); | static Bool_t GetSmoothing(); | |||
static Int_t GetWidth(); | static Int_t GetWidth(); | |||
static void SetHinting(Bool_t state); | static void SetHinting(Bool_t state); | |||
static void SetKerning(Bool_t state); | static void SetKerning(Bool_t state); | |||
static void SetSmoothing(Bool_t state); | static void SetSmoothing(Bool_t state); | |||
static void GetTextExtent(UInt_t &w, UInt_t &h, char *text); | static void GetTextExtent(UInt_t &w, UInt_t &h, char *text); | |||
static void GetTextAdvance(UInt_t &a, char *text); | ||||
static void SetTextFont(Font_t fontnumber); | static void SetTextFont(Font_t fontnumber); | |||
static Int_t SetTextFont(const char *fontname); | static Int_t SetTextFont(const char *fontname, Int_t italic=0); | |||
static void SetTextSize(Float_t textsize); | static void SetTextSize(Float_t textsize); | |||
static Bool_t IsInitialized(); | static Bool_t IsInitialized(); | |||
static void Version(Int_t &major, Int_t &minor, Int_t &patch); | static void Version(Int_t &major, Int_t &minor, Int_t &patch); | |||
ClassDef(TTF,0) //Interface to TTF font handling | ClassDef(TTF,0) //Interface to TTF font handling | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TText.h | TText.h | |||
---|---|---|---|---|
// @(#)root/graf:$Id: TText.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/graf:$Id: TText.h 33120 2010-04-21 14:29:04Z couet $ | |||
// Author: Nicolas Brun 12/12/94 | // Author: Nicolas 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 57 | skipping to change at line 57 | |||
virtual TText *DrawText(Double_t x, Double_t y, const char *text); | virtual TText *DrawText(Double_t x, Double_t y, const char *text); | |||
virtual TText *DrawTextNDC(Double_t x, Double_t y, const char *text); | virtual TText *DrawTextNDC(Double_t x, Double_t y, const char *text); | |||
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | |||
virtual void GetControlBox(Int_t x, Int_t y, Double_t theta, | virtual void GetControlBox(Int_t x, Int_t y, Double_t theta, | |||
Int_t cBoxX[4], Int_t cBoxY[4]); | Int_t cBoxX[4], Int_t cBoxY[4]); | |||
Double_t GetX() const { return fX; } | Double_t GetX() const { return fX; } | |||
virtual void GetBoundingBox(UInt_t &w, UInt_t &h, Bool_t angle = kFA LSE); | virtual void GetBoundingBox(UInt_t &w, UInt_t &h, Bool_t angle = kFA LSE); | |||
virtual void GetTextAscentDescent(UInt_t &a, UInt_t &d, const char * text) const; | virtual void GetTextAscentDescent(UInt_t &a, UInt_t &d, const char * text) const; | |||
virtual void GetTextExtent(UInt_t &w, UInt_t &h, const char *text) c onst; | virtual void GetTextExtent(UInt_t &w, UInt_t &h, const char *text) c onst; | |||
virtual void GetTextAdvance(UInt_t &a, const char *text, const Bool_ t kern=kTRUE) const; | ||||
Double_t GetY() const { return fY; } | Double_t GetY() const { return fY; } | |||
virtual void ls(Option_t *option="") const; | virtual void ls(Option_t *option="") const; | |||
virtual void Paint(Option_t *option=""); | virtual void Paint(Option_t *option=""); | |||
virtual void PaintControlBox(Int_t x, Int_t y, Double_t theta); | virtual void PaintControlBox(Int_t x, Int_t y, Double_t theta); | |||
virtual void PaintText(Double_t x, Double_t y, const char *text); | virtual void PaintText(Double_t x, Double_t y, const char *text); | |||
virtual void PaintTextNDC(Double_t u, Double_t v, const char *text); | virtual void PaintTextNDC(Double_t u, Double_t v, const char *text); | |||
virtual void Print(Option_t *option="") const; | virtual void Print(Option_t *option="") const; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetNDC(Bool_t isNDC=kTRUE); | virtual void SetNDC(Bool_t isNDC=kTRUE); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TThread.h | TThread.h | |||
---|---|---|---|---|
// @(#)root/thread:$Id: TThread.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/thread:$Id: TThread.h 32890 2010-04-07 08:51:48Z rdm $ | |||
// Author: Fons Rademakers 02/07/97 | // Author: Fons Rademakers 02/07/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 126 | skipping to change at line 126 | |||
static void AfterCancel(TThread *th); | static void AfterCancel(TThread *th); | |||
TThread(const TThread&); // not implemented | TThread(const TThread&); // not implemented | |||
TThread& operator=(const TThread&); // not implemented | TThread& operator=(const TThread&); // not implemented | |||
public: | public: | |||
TThread(VoidRtnFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority ); | TThread(VoidRtnFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority ); | |||
TThread(VoidFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority); | TThread(VoidFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority); | |||
TThread(const char *thname, VoidRtnFunc_t fn, void *arg = 0, EPriority p ri = kNormalPriority); | TThread(const char *thname, VoidRtnFunc_t fn, void *arg = 0, EPriority p ri = kNormalPriority); | |||
TThread(const char *thname, VoidFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority); | TThread(const char *thname, VoidFunc_t fn, void *arg = 0, EPriority pri = kNormalPriority); | |||
TThread(Int_t id = 0); | TThread(Long_t id = 0); | |||
virtual ~TThread(); | virtual ~TThread(); | |||
Int_t Kill(); | Int_t Kill(); | |||
Int_t Run(void *arg = 0); | Int_t Run(void *arg = 0); | |||
void SetPriority(EPriority pri); | void SetPriority(EPriority pri); | |||
void Delete(Option_t *option="") { TObject::Delete(option); } | void Delete(Option_t *option="") { TObject::Delete(option); } | |||
EPriority GetPriority() const { return fPriority; } | EPriority GetPriority() const { return fPriority; } | |||
EState GetState() const { return fState; } | EState GetState() const { return fState; } | |||
Long_t GetId() const { return fId; } | Long_t GetId() const { return fId; } | |||
static void Ps(); | static void Ps(); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TTimeStamp.h | TTimeStamp.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TTimeStamp.h 29770 2009-08-12 16:40:27Z rdm $ | // @(#)root/base:$Id: TTimeStamp.h 32404 2010-02-25 12:06:10Z rdm $ | |||
// Author: R. Hatcher 30/9/2001 | // Author: R. Hatcher 30/9/2001 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 120 | skipping to change at line 120 | |||
Int_t fNanoSec; // nanoseconds | Int_t fNanoSec; // nanoseconds | |||
void NormalizeNanoSec(); | void NormalizeNanoSec(); | |||
public: | public: | |||
// empty ctor (builds current time with nsec field incremented from stat ic) | // empty ctor (builds current time with nsec field incremented from stat ic) | |||
TTimeStamp(); | TTimeStamp(); | |||
// construction from timespec struct | // construction from timespec struct | |||
TTimeStamp(const timespec_t &ts) : | TTimeStamp(const timespec_t &ts) : | |||
fSec(ts.tv_sec), fNanoSec(ts.tv_nsec) { NormalizeNanoSec(); } | fSec(Int_t(ts.tv_sec)), fNanoSec(ts.tv_nsec) { NormalizeNanoSec(); } | |||
// construction from time_t and separate nsec | // construction from time_t and separate nsec | |||
TTimeStamp(time_t t, Int_t nsec) : | TTimeStamp(time_t t, Int_t nsec) : | |||
fSec(t), fNanoSec(nsec) { NormalizeNanoSec(); } | fSec(Int_t(t)), fNanoSec(nsec) { NormalizeNanoSec(); } | |||
// construction from bits and pieces | // construction from bits and pieces | |||
TTimeStamp(UInt_t year, UInt_t month, | TTimeStamp(UInt_t year, UInt_t month, | |||
UInt_t day, UInt_t hour, | UInt_t day, UInt_t hour, | |||
UInt_t min, UInt_t sec, | UInt_t min, UInt_t sec, | |||
UInt_t nsec = 0, Bool_t isUTC = kTRUE, Int_t secOffset = 0); | UInt_t nsec = 0, Bool_t isUTC = kTRUE, Int_t secOffset = 0); | |||
// compatibility with TDatime | // compatibility with TDatime | |||
TTimeStamp(UInt_t date, UInt_t time, UInt_t nsec, | TTimeStamp(UInt_t date, UInt_t time, UInt_t nsec, | |||
Bool_t isUTC = kTRUE, Int_t secOffset = 0); | Bool_t isUTC = kTRUE, Int_t secOffset = 0); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
TTree.h | TTree.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TTree.h 31561 2009-12-04 16:31:47Z brun $ | // @(#)root/tree:$Id: TTree.h 32894 2010-04-07 15:00:21Z 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 248 | skipping to change at line 248 | |||
template <class T> TBranch *Branch(const char* name, T* obj, Int_t bufsi ze = 32000, Int_t splitlevel = 99) | template <class T> TBranch *Branch(const char* name, T* obj, Int_t bufsi ze = 32000, Int_t splitlevel = 99) | |||
{ | { | |||
// See BranchImp for details | // See BranchImp for details | |||
return BranchImpRef(name, TBuffer::GetClass(typeid(T)), TDataType::Ge tType(typeid(T)), obj, bufsize, splitlevel); | return BranchImpRef(name, TBuffer::GetClass(typeid(T)), TDataType::Ge tType(typeid(T)), obj, bufsize, splitlevel); | |||
} | } | |||
virtual TBranch *Bronch(const char* name, const char* classname, void* addobj, Int_t bufsize = 32000, Int_t splitlevel = 99); | virtual TBranch *Bronch(const char* name, const char* classname, void* addobj, Int_t bufsize = 32000, Int_t splitlevel = 99); | |||
virtual TBranch *BranchOld(const char* name, const char* classnam e, void* addobj, Int_t bufsize = 32000, Int_t splitlevel = 1); | virtual TBranch *BranchOld(const char* name, const char* classnam e, void* addobj, Int_t bufsize = 32000, Int_t splitlevel = 1); | |||
virtual TBranch *BranchRef(); | virtual TBranch *BranchRef(); | |||
virtual void Browse(TBrowser*); | virtual void Browse(TBrowser*); | |||
virtual Int_t BuildIndex(const char* majorname, const char* mi norname = "0"); | virtual Int_t BuildIndex(const char* majorname, const char* mi norname = "0"); | |||
TStreamerInfo *BuildStreamerInfo(TClass* cl, void* pointer = 0) ; | TStreamerInfo *BuildStreamerInfo(TClass* cl, void* pointer = 0, Bool_t canOptimize = kTRUE); | |||
virtual TFile *ChangeFile(TFile* file); | virtual TFile *ChangeFile(TFile* file); | |||
virtual TTree *CloneTree(Long64_t nentries = -1, Option_t* opti on = ""); | virtual TTree *CloneTree(Long64_t nentries = -1, Option_t* opti on = ""); | |||
virtual void CopyAddresses(TTree*,Bool_t undo = kFALSE); | virtual void CopyAddresses(TTree*,Bool_t undo = kFALSE); | |||
virtual Long64_t CopyEntries(TTree* tree, Long64_t nentries = -1) ; | virtual Long64_t CopyEntries(TTree* tree, Long64_t nentries = -1, Option_t *option = ""); | |||
virtual TTree *CopyTree(const char* selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); | virtual TTree *CopyTree(const char* selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); | |||
virtual TBasket *CreateBasket(TBranch*); | virtual TBasket *CreateBasket(TBranch*); | |||
virtual void DirectoryAutoAdd(TDirectory *); | virtual void DirectoryAutoAdd(TDirectory *); | |||
Int_t Debug() const { return fDebug; } | Int_t Debug() const { return fDebug; } | |||
virtual void Delete(Option_t* option = ""); // *MENU* | virtual void Delete(Option_t* option = ""); // *MENU* | |||
virtual void Draw(Option_t* opt) { Draw(opt, "", "", 10000000 00, 0); } | virtual void Draw(Option_t* opt) { Draw(opt, "", "", 10000000 00, 0); } | |||
virtual Long64_t Draw(const char* varexp, const TCut& selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); | virtual Long64_t Draw(const char* varexp, const TCut& selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); | |||
virtual Long64_t Draw(const char* varexp, const char* selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); // *MENU* | virtual Long64_t Draw(const char* varexp, const char* selection, Option_t* option = "", Long64_t nentries = 1000000000, Long64_t firstentry = 0); // *MENU* | |||
virtual void DropBaskets(); | virtual void DropBaskets(); | |||
virtual void DropBuffers(Int_t nbytes); | virtual void DropBuffers(Int_t nbytes); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
TTreeTableInterface.h | TTreeTableInterface.h | |||
---|---|---|---|---|
skipping to change at line 24 | skipping to change at line 24 | |||
#ifndef ROOT_TVirtualTableInterface | #ifndef ROOT_TVirtualTableInterface | |||
#include "TVirtualTableInterface.h" | #include "TVirtualTableInterface.h" | |||
#endif | #endif | |||
class TTree; | class TTree; | |||
class TObjArray; | class TObjArray; | |||
class TTreeFormula; | class TTreeFormula; | |||
class TTreeFormulaManager; | class TTreeFormulaManager; | |||
class TSelectorDraw; | class TSelectorDraw; | |||
class TEntryList; | class TEntryList; | |||
class TList; | ||||
class TTreeTableInterface : public TVirtualTableInterface { | class TTreeTableInterface : public TVirtualTableInterface { | |||
private: | private: | |||
TTree *fTree; // Data in a TTree | TTree *fTree; // Data in a TTree | |||
TList *fFormulas; // Array of TTreeFormulas to display v alues | TList *fFormulas; // Array of TTreeFormulas to display v alues | |||
Long64_t fEntry; // Present entry number in fTree. | Long64_t fEntry; // Present entry number in fTree. | |||
Long64_t fNEntries; // Number of entries in the tree. | Long64_t fNEntries; // Number of entries in the tree. | |||
Long64_t fFirstEntry; // First entry. | Long64_t fFirstEntry; // First entry. | |||
TTreeFormulaManager *fManager; // Coordinator for the formulas. | TTreeFormulaManager *fManager; // Coordinator for the formulas. | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
TUnuran.h | TUnuran.h | |||
---|---|---|---|---|
// @(#)root/unuran:$Id: TUnuran.h 21604 2008-01-09 09:19:57Z moneta $ | // @(#)root/unuran:$Id: TUnuran.h 33181 2010-04-25 10:15:08Z moneta $ | |||
// Author: L. Moneta Tue Sep 26 16:25:09 2006 | // Author: L. Moneta Tue Sep 26 16:25:09 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 TUnuran | // Header file for class TUnuran | |||
skipping to change at line 190 | skipping to change at line 190 | |||
*/ | */ | |||
bool SampleMulti(double * x); | bool SampleMulti(double * x); | |||
/** | /** | |||
Sample discrete distributions | Sample discrete distributions | |||
User is responsible for having previously correctly initialized with TUnuran::Init | User is responsible for having previously correctly initialized with TUnuran::Init | |||
*/ | */ | |||
int SampleDiscr(); | int SampleDiscr(); | |||
/** | /** | |||
set the random engine. | ||||
Must be called before init to have effect | ||||
*/ | ||||
void SetRandom(TRandom * r) { | ||||
fRng = r; | ||||
} | ||||
/** | ||||
return instance of the random engine used | ||||
*/ | ||||
TRandom * GetRandom() { | ||||
return fRng; | ||||
} | ||||
/** | ||||
set the seed for the random number generator | set the seed for the random number generator | |||
*/ | */ | |||
void SetSeed(unsigned int seed); | void SetSeed(unsigned int seed); | |||
/** | /** | |||
set log level | set log level | |||
*/ | */ | |||
bool SetLogLevel(unsigned int iflag = 1); | bool SetLogLevel(unsigned int iflag = 1); | |||
/** | /** | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 16 lines changed or added | |||
TUnuranContDist.h | TUnuranContDist.h | |||
---|---|---|---|---|
// @(#)root/unuran:$Id: TUnuranContDist.h 30749 2009-10-15 16:33:04Z brun $ | // @(#)root/unuran:$Id: TUnuranContDist.h 33181 2010-04-25 10:15:08Z moneta $ | |||
// Authors: L. Moneta, J. Leydold Wed Feb 28 2007 | // Authors: L. Moneta, J. Leydold Wed Feb 28 2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class TUnuranContDist | // Header file for class TUnuranContDist | |||
skipping to change at line 60 | skipping to change at line 60 | |||
Constructor from a TF1 objects specifying the pdf and optionally from another function | Constructor from a TF1 objects specifying the pdf and optionally from another function | |||
representing the derivative of the pdf. The flag isLogPdf can be used to pass instead of the pdf | representing the derivative of the pdf. The flag isLogPdf can be used to pass instead of the pdf | |||
(and its derivative) the log (and the derivative of the log) of the p df. | (and its derivative) the log (and the derivative of the log) of the p df. | |||
By default the distribution has not domain set (it is defined between [-inf,+inf], no mode, no pdf area and no | By default the distribution has not domain set (it is defined between [-inf,+inf], no mode, no pdf area and no | |||
cdf explicity defined. UnuRan, if needed, can compute some of this qu antities, but the user if he knows them can | cdf explicity defined. UnuRan, if needed, can compute some of this qu antities, but the user if he knows them can | |||
set them in order to speed up the algorithm. For example in case of t he Cdf, if the user has not set it, a numerical | set them in order to speed up the algorithm. For example in case of t he Cdf, if the user has not set it, a numerical | |||
integration algorithm is used to estimate the Cdf from the Pdf. | integration algorithm is used to estimate the Cdf from the Pdf. | |||
In case an algorithm requires only the Cdf (no Pdf), an empty distrib ution can be constructed and then the user must | In case an algorithm requires only the Cdf (no Pdf), an empty distrib ution can be constructed and then the user must | |||
set afterwards the Cdf. | set afterwards the Cdf. | |||
*/ | */ | |||
TUnuranContDist (TF1 * pdf = 0, TF1 * deriv = 0, bool isLogPdf = false ) ; | explicit TUnuranContDist (TF1 * pdf = 0, TF1 * deriv = 0, bool isLogPdf = false ); | |||
/** | /** | |||
Constructor as before but from a generic function object interface fo r one-dim functions | Constructor as before but from a generic function object interface fo r one-dim functions | |||
*/ | */ | |||
TUnuranContDist (const ROOT::Math::IGenFunction & pdf, const ROOT::Math: :IGenFunction * dpdf = 0, bool isLogPdf = false); | explicit TUnuranContDist (const ROOT::Math::IGenFunction & pdf, const RO OT::Math::IGenFunction * dpdf = 0, bool isLogPdf = false, bool copyFunc = f alse); | |||
/** | /** | |||
Destructor | Destructor | |||
*/ | */ | |||
virtual ~TUnuranContDist (); | virtual ~TUnuranContDist (); | |||
/** | /** | |||
Copy constructor | Copy constructor | |||
*/ | */ | |||
TUnuranContDist(const TUnuranContDist &); | TUnuranContDist(const TUnuranContDist &); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
TUnuranMultiContDist.h | TUnuranMultiContDist.h | |||
---|---|---|---|---|
// @(#)root/unuran:$Id: TUnuranMultiContDist.h 30749 2009-10-15 16:33:04Z b run $ | // @(#)root/unuran:$Id: TUnuranMultiContDist.h 33181 2010-04-25 10:15:08Z m oneta $ | |||
// Authors: L. Moneta, J. Leydold Wed Feb 28 2007 | // Authors: L. Moneta, J. Leydold Wed Feb 28 2007 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2006 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for class TUnuranMultiContDist | // Header file for class TUnuranMultiContDist | |||
skipping to change at line 107 | skipping to change at line 107 | |||
*/ | */ | |||
void SetDomain(const double *xmin, const double *xmax) { | void SetDomain(const double *xmin, const double *xmax) { | |||
if (xmin == 0 || xmax == 0) return; | if (xmin == 0 || xmax == 0) return; | |||
fXmin = std::vector<double>(xmin,xmin+NDim()); | fXmin = std::vector<double>(xmin,xmin+NDim()); | |||
fXmax = std::vector<double>(xmax,xmax+NDim()); | fXmax = std::vector<double>(xmax,xmax+NDim()); | |||
} | } | |||
/** | /** | |||
set the mode of the distribution (coordinates of the distribution max imum values) | set the mode of the distribution (coordinates of the distribution max imum values) | |||
*/ | */ | |||
void SetMode(double * x) { | void SetMode(const double * x) { | |||
fMode = std::vector<double>(x,x+NDim()); | fMode = std::vector<double>(x,x+NDim()); | |||
} | } | |||
/** | /** | |||
get the distribution lower domain values. Return a null pointer if do main is not defined | get the distribution lower domain values. Return a null pointer if do main is not defined | |||
*/ | */ | |||
const double * GetLowerDomain() const { | const double * GetLowerDomain() const { | |||
if (fXmin.size() == 0 || ( fXmin.size() != fXmax.size() ) ) return 0; | if (fXmin.size() == 0 || ( fXmin.size() != fXmax.size() ) ) return 0; | |||
return &fXmin[0]; | return &fXmin[0]; | |||
} | } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TUrl.h | TUrl.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TUrl.h 31537 2009-12-03 16:45:40Z rdm $ | // @(#)root/base:$Id: TUrl.h 33098 2010-04-19 22:54:51Z rdm $ | |||
// Author: Fons Rademakers 17/01/97 | // Author: Fons Rademakers 17/01/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 42 | skipping to change at line 42 | |||
#ifndef ROOT_TMap | #ifndef ROOT_TMap | |||
#include "TMap.h" | #include "TMap.h" | |||
#endif | #endif | |||
class THashList; | class THashList; | |||
class TMap; | class TMap; | |||
class TUrl : public TObject { | class TUrl : public TObject { | |||
private: | private: | |||
TString fUrl; // full URL | mutable TString fUrl; // full URL | |||
TString fProtocol; // protocol: http, ftp, news, root, proof, ... | TString fProtocol; // protocol: http, ftp, news, root, proof, ... | |||
TString fUser; // user name | TString fUser; // user name | |||
TString fPasswd; // password | TString fPasswd; // password | |||
TString fHost; // remote host | TString fHost; // remote host | |||
TString fFile; // remote object | TString fFile; // remote object | |||
TString fAnchor; // anchor in object (after #) | TString fAnchor; // anchor in object (after #) | |||
TString fOptions; // options/search (after ?) | TString fOptions; // options/search (after ?) | |||
mutable TString fFileOA; //!file with option and anchor | mutable TString fFileOA; //!file with option and anchor | |||
mutable TString fHostFQ; //!fully qualified host name | mutable TString fHostFQ; //!fully qualified host name | |||
Int_t fPort; // port through which to contact remote server | Int_t fPort; // port through which to contact remote server | |||
mutable TMap *fOptionsMap; //!map containing options key/value pairs | mutable TMap *fOptionsMap; //!map containing options key/value pairs | |||
static TObjArray *fgSpecialProtocols; // list of special protocols | static TObjArray *fgSpecialProtocols; // list of special protocols | |||
static THashList *fgHostFQDNs; // list of resolved host FQDNs | static THashList *fgHostFQDNs; // list of resolved host FQDNs | |||
void FindFile(char *u, Bool_t stripDoubleSlash = kTRUE); | void FindFile(char *u, Bool_t stripDoubleSlash = kTRUE); | |||
enum EStatusBits { kUrlWithDefaultPort = BIT(14), kUrlHasDefaultPort = B | ||||
IT(15) }; | ||||
public: | public: | |||
TUrl() : fUrl(), fProtocol(), fUser(), fPasswd(), fHost(), fFile(), | TUrl() : fUrl(), fProtocol(), fUser(), fPasswd(), fHost(), fFile(), | |||
fAnchor(), fOptions(), fFileOA(), fHostFQ(), fPort(-1), fOption sMap(0) { } | fAnchor(), fOptions(), fFileOA(), fHostFQ(), fPort(-1), fOption sMap(0) { } | |||
TUrl(const char *url, Bool_t defaultIsFile = kFALSE); | TUrl(const char *url, Bool_t defaultIsFile = kFALSE); | |||
TUrl(const TUrl &url); | TUrl(const TUrl &url); | |||
TUrl &operator=(const TUrl &rhs); | TUrl &operator=(const TUrl &rhs); | |||
virtual ~TUrl(); | virtual ~TUrl(); | |||
const char *GetUrl(Bool_t withDeflt = kFALSE); | const char *GetUrl(Bool_t withDeflt = kFALSE) const; | |||
const char *GetProtocol() const { return fProtocol; } | const char *GetProtocol() const { return fProtocol; } | |||
const char *GetUser() const { return fUser; } | const char *GetUser() const { return fUser; } | |||
const char *GetPasswd() const { return fPasswd; } | const char *GetPasswd() const { return fPasswd; } | |||
const char *GetHost() const { return fHost; } | const char *GetHost() const { return fHost; } | |||
const char *GetHostFQDN() const; | const char *GetHostFQDN() const; | |||
const char *GetFile() const { return fFile; } | const char *GetFile() const { return fFile; } | |||
const char *GetAnchor() const { return fAnchor; } | const char *GetAnchor() const { return fAnchor; } | |||
const char *GetOptions() const { return fOptions; } | const char *GetOptions() const { return fOptions; } | |||
const char *GetValueFromOptions(const char *key) const; | const char *GetValueFromOptions(const char *key) const; | |||
Int_t GetIntValueFromOptions(const char *key) const; | Int_t GetIntValueFromOptions(const char *key) const; | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 6 lines changed or added | |||
TVirtualFFT.h | TVirtualFFT.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TVirtualFFT.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TVirtualFFT.h 32181 2010-02-02 10:03:01Z brun $ | |||
// Author: Anna Kreshuk 10/04/2006 | // Author: Anna Kreshuk 10/04/2006 | |||
#ifndef ROOT_TVirtualFFT | #ifndef ROOT_TVirtualFFT | |||
#define ROOT_TVirtualFFT | #define ROOT_TVirtualFFT | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
// | // | |||
// TVirtualFFT | // TVirtualFFT | |||
// | // | |||
// TVirtualFFT is an interface class for Fast Fourier Transforms. | // TVirtualFFT is an interface class for Fast Fourier Transforms. | |||
skipping to change at line 31 | skipping to change at line 31 | |||
// FFT: | // FFT: | |||
// - "C2CFORWARD" - a complex input/output discrete Fourier transform (DFT) | // - "C2CFORWARD" - a complex input/output discrete Fourier transform (DFT) | |||
// in one or more dimensions, -1 in the exponent | // in one or more dimensions, -1 in the exponent | |||
// - "C2CBACKWARD"- a complex input/output discrete Fourier transform (DFT) | // - "C2CBACKWARD"- a complex input/output discrete Fourier transform (DFT) | |||
// in one or more dimensions, +1 in the exponent | // in one or more dimensions, +1 in the exponent | |||
// - "R2C" - a real-input/complex-output discrete Fourier transform (DFT) | // - "R2C" - a real-input/complex-output discrete Fourier transform (DFT) | |||
// in one or more dimensions, | // in one or more dimensions, | |||
// - "C2R" - inverse transforms to "R2C", taking complex input | // - "C2R" - inverse transforms to "R2C", taking complex input | |||
// (storing the non-redundant half of a logically Hermitia n array) | // (storing the non-redundant half of a logically Hermitia n array) | |||
// to real output | // to real output | |||
// - "R2HC" - a real-input DFT with output in | // - "R2HC" - a real-input DFT with output in "halfcomplex" format, | |||
// i.e. real and imaginary parts for a transform of size n stored as | // i.e. real and imaginary parts for a transform of size n stored as | |||
// r0, r1, r2, ..., rn/2, i(n+1)/2-1, ..., i2, i1 | // r0, r1, r2, ..., rn/2, i(n+1)/2-1, ..., i2, i1 | |||
// - "HC2R" - computes the reverse of FFTW_R2HC, above | // - "HC2R" - computes the reverse of FFTW_R2HC, above | |||
// - "DHT" - computes a discrete Hartley transform | // - "DHT" - computes a discrete Hartley transform | |||
// | // | |||
// Sine/cosine transforms: | // Sine/cosine transforms: | |||
// Different types of transforms are specified by parameter kind of the Sin eCosine() static | // Different types of transforms are specified by parameter kind of the Sin eCosine() static | |||
// function. 4 different kinds of sine and cosine transforms are available | // function. 4 different kinds of sine and cosine transforms are available | |||
// DCT-I (REDFT00 in FFTW3 notation)- kind=0 | // DCT-I (REDFT00 in FFTW3 notation)- kind=0 | |||
// DCT-II (REDFT10 in FFTW3 notation)- kind=1 | // DCT-II (REDFT10 in FFTW3 notation)- kind=1 | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TVirtualGeoTrack.h | TVirtualGeoTrack.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TVirtualGeoTrack.h 21425 2007-12-17 15:59:27Z brun $ | // @(#)root/geom:$Id: TVirtualGeoTrack.h 33212 2010-04-26 12:19:20Z agheata $ | |||
// Author: Andrei Gheata 2003/04/10 | // Author: Andrei Gheata 2003/04/10 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 64 | skipping to change at line 64 | |||
TVirtualGeoTrack& operator=(const TVirtualGeoTrack&); | TVirtualGeoTrack& operator=(const TVirtualGeoTrack&); | |||
public: | public: | |||
TVirtualGeoTrack(); | TVirtualGeoTrack(); | |||
TVirtualGeoTrack(Int_t id, Int_t pdgcode, TVirtualGeoTrack *parent=0, TO bject *particle=0); | TVirtualGeoTrack(Int_t id, Int_t pdgcode, TVirtualGeoTrack *parent=0, TO bject *particle=0); | |||
virtual ~TVirtualGeoTrack(); | virtual ~TVirtualGeoTrack(); | |||
virtual TVirtualGeoTrack *AddDaughter(Int_t id, Int_t pdgcode, TObject * particle=0) = 0; | virtual TVirtualGeoTrack *AddDaughter(Int_t id, Int_t pdgcode, TObject * particle=0) = 0; | |||
virtual Int_t AddDaughter(TVirtualGeoTrack *other) = 0; | virtual Int_t AddDaughter(TVirtualGeoTrack *other) = 0; | |||
virtual void AddPoint(Double_t x, Double_t y, Double_t z, Double_ t t) = 0; | virtual void AddPoint(Double_t x, Double_t y, Double_t z, Double_ t t) = 0; | |||
virtual TVirtualGeoTrack *FindTrackWithId(Int_t id) const; | ||||
Int_t GetId() const {return fId;} | Int_t GetId() const {return fId;} | |||
virtual Int_t GetDaughterId(Int_t index) const {return GetDaughter (index)->GetId();} | virtual Int_t GetDaughterId(Int_t index) const {return GetDaughter (index)->GetId();} | |||
TVirtualGeoTrack *GetDaughter(Int_t index) const {return (TVirtualGeoT rack*)fTracks->At(index);} | TVirtualGeoTrack *GetDaughter(Int_t index) const {return (TVirtualGeoT rack*)fTracks->At(index);} | |||
TVirtualGeoTrack *GetMother() const {return fParent;} | TVirtualGeoTrack *GetMother() const {return fParent;} | |||
TObject *GetMotherParticle() const {return (fParent)?fParent- >GetParticle():0;} | TObject *GetMotherParticle() const {return (fParent)?fParent- >GetParticle():0;} | |||
virtual const char *GetName() const; | virtual const char *GetName() const; | |||
Int_t GetNdaughters() const {return (fTracks)?fTracks->Get EntriesFast():0;} | Int_t GetNdaughters() const {return (fTracks)?fTracks->Get EntriesFast():0;} | |||
virtual Int_t GetNpoints() const = 0; | virtual Int_t GetNpoints() const = 0; | |||
Int_t GetParentId() const {return (fParent)?fParent->Get Id():-1;} | Int_t GetParentId() const {return (fParent)?fParent->Get Id():-1;} | |||
TObject *GetParticle() const {return fParticle;} | TObject *GetParticle() const {return fParticle;} | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TVirtualPacketizer.h | TVirtualPacketizer.h | |||
---|---|---|---|---|
// @(#)root/proofplayer:$Id: TVirtualPacketizer.h 30899 2009-10-28 12:22:17 Z ganis $ | // @(#)root/proofplayer:$Id: TVirtualPacketizer.h 32204 2010-02-03 19:17:40 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 52 | skipping to change at line 52 | |||
#ifndef ROOT_TProofProgressStatus | #ifndef ROOT_TProofProgressStatus | |||
#include "TProofProgressStatus.h" | #include "TProofProgressStatus.h" | |||
#endif | #endif | |||
class TDSet; | class TDSet; | |||
class TDSetElement; | class TDSetElement; | |||
class TSlave; | class TSlave; | |||
class TMessage; | class TMessage; | |||
class TNtupleD; | class TNtupleD; | |||
class TProofProgressInfo; | class TProofProgressInfo; | |||
class TMap; | ||||
class TVirtualPacketizer : public TObject { | class TVirtualPacketizer : public TObject { | |||
friend class TPacketizer; | ||||
friend class TPacketizerAdaptive; | ||||
friend class TPacketizerProgressive; | ||||
friend class TPacketizerUnit; | ||||
public: // public because of Sun CC bug | public: // public because of Sun CC bug | |||
class TVirtualSlaveStat; | class TVirtualSlaveStat; | |||
private: | protected: | |||
enum EUseEstOpt { // Option for usage of estimated values | enum EUseEstOpt { // Option for usage of estimated values | |||
kEstOff = 0, | kEstOff = 0, | |||
kEstCurrent = 1, | kEstCurrent = 1, | |||
kEstAverage = 2 | kEstAverage = 2 | |||
}; | }; | |||
TMap *fSlaveStats; // slave status, keyed by correspondig TSlave | ||||
TProofProgressStatus *fProgressStatus; // pointer to status in the playe r. | TProofProgressStatus *fProgressStatus; // pointer to status in the playe r. | |||
TTimer *fProgress; // progress updates timer | TTimer *fProgress; // progress updates timer | |||
Long64_t fTotalEntries; // total number of entries to be distributed; | Long64_t fTotalEntries; // total number of entries to be distributed; | |||
// not used in the progressive packetizer | // not used in the progressive packetizer | |||
TList *fFailedPackets;// a list of packets that failed while processi ng | TList *fFailedPackets;// a list of packets that failed while processi ng | |||
// Members for progress info | // Members for progress info | |||
Long_t fStartTime; // time offset | Long_t fStartTime; // time offset | |||
Float_t fInitTime; // time before processing | Float_t fInitTime; // time before processing | |||
Float_t fProcTime; // time since start of processing | Float_t fProcTime; // time since start of processing | |||
Float_t fTimeUpdt; // time between updates | Float_t fTimeUpdt; // time between updates | |||
TNtupleD *fCircProg; // Keeps circular info for "instantenous" | TNtupleD *fCircProg; // Keeps circular info for "instantenous" | |||
// rate calculations | // rate calculations | |||
Long_t fCircN; // Circularity | Long_t fCircN; // Circularity | |||
EUseEstOpt fUseEstOpt; // Control usage of estimated values for the pr ogress info | EUseEstOpt fUseEstOpt; // Control usage of estimated values for the pr ogress info | |||
TVirtualPacketizer(const TVirtualPacketizer &); // no implementation, w | ||||
ill generate | ||||
void operator=(const TVirtualPacketizer &); // error on accidental | ||||
usage | ||||
virtual Bool_t HandleTimer(TTimer *timer); | ||||
TDSetElement *CreateNewPacket(TDSetElement* base, Long64_t first, Long6 | ||||
4_t num); | ||||
protected: | ||||
Bool_t fValid; // Constructed properly? | Bool_t fValid; // Constructed properly? | |||
Bool_t fStop; // Termination of Process() requested? | Bool_t fStop; // Termination of Process() requested? | |||
TString fDataSet; // Name of the dataset being processed (for d | ||||
ataset-driven runs) | ||||
TVirtualPacketizer(TList *input, TProofProgressStatus *st = 0); | TVirtualPacketizer(TList *input, TProofProgressStatus *st = 0); | |||
Long64_t GetEntries(Bool_t tree, TDSetElement *e); // Num of entries or | TVirtualPacketizer(const TVirtualPacketizer &); // no implementation, w | |||
objects | ill generate | |||
void operator=(const TVirtualPacketizer &); // error on accidental | ||||
usage | ||||
TDSetElement *CreateNewPacket(TDSetElement* base, Long64_t first, Long6 | ||||
4_t num); | ||||
Long64_t GetEntries(Bool_t tree, TDSetElement *e); // Num of entri | ||||
es or objects | ||||
virtual Bool_t HandleTimer(TTimer *timer); | ||||
public: | public: | |||
enum EStatusBits { kIsInitializing = BIT(16), kIsDone = BIT(17) }; | enum EStatusBits { kIsInitializing = BIT(16), kIsDone = BIT(17) }; | |||
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.); } | |||
skipping to change at line 128 | skipping to change at line 125 | |||
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; } | |||
virtual void MarkBad(TSlave * /*s*/, TProofProgressStatus * /*status*/, TList ** /*missingFiles*/) { return; } | virtual void MarkBad(TSlave * /*s*/, TProofProgressStatus * /*status*/, TList ** /*missingFiles*/) { return; } | |||
virtual Int_t AddProcessed(TSlave * /*sl*/, TProofProgressStatus * /*st* /, | virtual Int_t AddProcessed(TSlave * /*sl*/, TProofProgressStatus * /*st* /, | |||
Double_t /*lat*/, TList ** /*missingFiles*/) { return 0 ; } | Double_t /*lat*/, TList ** /*missingFiles*/) { return 0 ; } | |||
TProofProgressStatus *GetStatus() { return fProgressStatus; } | TProofProgressStatus *GetStatus() { return fProgressStatus; } | |||
void SetProgressStatus(TProofProgressStatus *st) { fProgressSta tus = st; } | void SetProgressStatus(TProofProgressStatus *st) { fProgressSta tus = st; } | |||
void SetTotalEntries(Long64_t ent) { fTotalEntries = ent; } | ||||
TMap *GetSlaveStats() const { return fSlaveStats; } | ||||
virtual Int_t GetActiveWorkers() { return -1; } | virtual Int_t GetActiveWorkers() { return -1; } | |||
ClassDef(TVirtualPacketizer,0) //Generate work packets for parallel pro cessing | ClassDef(TVirtualPacketizer,0) //Generate work packets for parallel pro cessing | |||
}; | }; | |||
//------------------------------------------------------------------------- ----- | //------------------------------------------------------------------------- ----- | |||
class TVirtualPacketizer::TVirtualSlaveStat : public TObject { | class TVirtualPacketizer::TVirtualSlaveStat : public TObject { | |||
End of changes. 9 change blocks. | ||||
20 lines changed or deleted | 21 lines changed or added | |||
TVirtualPadPainter.h | TVirtualPadPainter.h | |||
---|---|---|---|---|
skipping to change at line 90 | skipping to change at line 90 | |||
virtual void DrawPolyLine(Int_t n, const Double_t *x, const Double_t *y) = 0; | virtual void DrawPolyLine(Int_t n, const Double_t *x, const Double_t *y) = 0; | |||
virtual void DrawPolyLine(Int_t n, const Float_t *x, const Float_t * y) = 0; | virtual void DrawPolyLine(Int_t n, const Float_t *x, const Float_t * y) = 0; | |||
virtual void DrawPolyLineNDC(Int_t n, const Double_t *u, const Doubl e_t *v) = 0; | virtual void DrawPolyLineNDC(Int_t n, const Double_t *u, const Doubl e_t *v) = 0; | |||
virtual void DrawPolyMarker(Int_t n, const Double_t *x, const Double _t *y) = 0; | virtual void DrawPolyMarker(Int_t n, const Double_t *x, const Double _t *y) = 0; | |||
virtual void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y) = 0; | virtual void DrawPolyMarker(Int_t n, const Float_t *x, const Float_t *y) = 0; | |||
virtual void DrawText(Double_t x, Double_t y, const char *text, ETex tMode mode) = 0; | virtual void DrawText(Double_t x, Double_t y, const char *text, ETex tMode mode) = 0; | |||
virtual void DrawTextNDC(Double_t u, Double_t v, const char *text, E TextMode mode) = 0; | virtual void DrawTextNDC(Double_t u, Double_t v, const char *text, E TextMode mode) = 0; | |||
//gif, jpg, png, bmp output. | ||||
virtual void SaveImage(TVirtualPad *pad, const char *fileName, Int_t | ||||
type) const = 0; | ||||
static TVirtualPadPainter *PadPainter(Option_t *opt = ""); | static TVirtualPadPainter *PadPainter(Option_t *opt = ""); | |||
ClassDef(TVirtualPadPainter, 0)//Painter interface for pad. | ClassDef(TVirtualPadPainter, 0)//Painter interface for pad. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 4 lines changed or added | |||
TVirtualStreamerInfo.h | TVirtualStreamerInfo.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TVirtualStreamerInfo.h 30905 2009-10-28 16:51:47Z pca nal $ | // @(#)root/meta:$Id: TVirtualStreamerInfo.h 32586 2010-03-12 14:00:16Z pca nal $ | |||
// Author: Rene Brun 05/02/2007 | // Author: Rene Brun 05/02/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 39 | skipping to change at line 39 | |||
class TObjArray; | class TObjArray; | |||
class TStreamerElement; | class TStreamerElement; | |||
class TStreamerBasicType; | class TStreamerBasicType; | |||
class TVirtualCollectionProxy; | class TVirtualCollectionProxy; | |||
class TClassStreamer; | class TClassStreamer; | |||
namespace ROOT { class TCollectionProxyInfo; } | namespace ROOT { class TCollectionProxyInfo; } | |||
class TVirtualStreamerInfo : public TNamed { | class TVirtualStreamerInfo : public TNamed { | |||
protected: | protected: | |||
Bool_t fOptimized; //! true if the Streamer has been | ||||
optimized | ||||
Bool_t fIsBuilt; //! true if the StreamerInfo has b | ||||
een 'built' | ||||
protected: | ||||
static Bool_t fgCanDelete; //True if ReadBuffer can delete ob ject | static Bool_t fgCanDelete; //True if ReadBuffer can delete ob ject | |||
static Bool_t fgOptimize; //True if optimization on | static Bool_t fgOptimize; //True if optimization on | |||
static Bool_t fgStreamMemberWise; //True if the collections are to b e stream "member-wise" (when possible). | static Bool_t fgStreamMemberWise; //True if the collections are to b e stream "member-wise" (when possible). | |||
static TVirtualStreamerInfo *fgInfoFactory; | static TVirtualStreamerInfo *fgInfoFactory; | |||
TVirtualStreamerInfo(const TVirtualStreamerInfo& info); | TVirtualStreamerInfo(const TVirtualStreamerInfo& info); | |||
TVirtualStreamerInfo& operator=(const TVirtualStreamerInfo&); | TVirtualStreamerInfo& operator=(const TVirtualStreamerInfo&); | |||
public: | public: | |||
//status bits | //status bits | |||
enum { kCannotOptimize = BIT(12), | enum { kCannotOptimize = BIT(12), | |||
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) | ||||
}; | }; | |||
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, | |||
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, | |||
skipping to change at line 108 | skipping to change at line 113 | |||
virtual void Build() = 0; | virtual void Build() = 0; | |||
virtual void BuildCheck() = 0; | virtual void BuildCheck() = 0; | |||
virtual void BuildEmulated(TFile *file) = 0; | virtual void BuildEmulated(TFile *file) = 0; | |||
virtual void BuildOld() = 0; | virtual void BuildOld() = 0; | |||
virtual Bool_t BuildFor( const TClass *cl ) = 0; | virtual Bool_t BuildFor( const TClass *cl ) = 0; | |||
virtual void CallShowMembers(void* obj, TMemberInspector &insp, c har *parent) const = 0; | virtual void CallShowMembers(void* obj, TMemberInspector &insp, c har *parent) const = 0; | |||
virtual void Clear(Option_t *) = 0; | virtual void Clear(Option_t *) = 0; | |||
virtual Bool_t CompareContent(TClass *cl,TVirtualStreamerInfo *info , Bool_t warn, Bool_t complete) = 0; | virtual Bool_t CompareContent(TClass *cl,TVirtualStreamerInfo *info , Bool_t warn, Bool_t complete) = 0; | |||
virtual void Compile() = 0; | virtual void Compile() = 0; | |||
virtual void ForceWriteInfo(TFile *file, Bool_t force=kFALSE) = 0 ; | virtual void ForceWriteInfo(TFile *file, Bool_t force=kFALSE) = 0 ; | |||
virtual Int_t GenerateHeaderFile(const char *dirname, const TList | virtual Int_t GenerateHeaderFile(const char *dirname, const TList | |||
*subClasses = 0) = 0; | *subClasses = 0, const TList *extrainfos = 0) = 0; | |||
virtual TClass *GetActualClass(const void *obj) const = 0; | ||||
virtual TClass *GetClass() const = 0; | virtual TClass *GetClass() const = 0; | |||
virtual UInt_t GetCheckSum() const = 0; | virtual UInt_t GetCheckSum() const = 0; | |||
virtual Int_t GetClassVersion() const = 0; | virtual Int_t GetClassVersion() const = 0; | |||
virtual ULong_t *GetElems() const = 0; | virtual ULong_t *GetElems() const = 0; | |||
virtual TObjArray *GetElements() const = 0; | virtual TObjArray *GetElements() const = 0; | |||
virtual Int_t GetOffset(const char *) const = 0; | virtual Int_t GetOffset(const char *) const = 0; | |||
virtual Int_t *GetOffsets() const = 0; | virtual Int_t *GetOffsets() const = 0; | |||
virtual Version_t GetOldVersion() const = 0; | virtual Version_t GetOldVersion() const = 0; | |||
virtual Int_t GetOnFileClassVersion() const = 0; | virtual Int_t GetOnFileClassVersion() const = 0; | |||
virtual Int_t GetNumber() const = 0; | virtual Int_t GetNumber() const = 0; | |||
virtual Int_t GetSize() const = 0; | virtual Int_t GetSize() const = 0; | |||
virtual TStreamerElement *GetStreamerElement(const char*datamember, In t_t& offset) const = 0; | virtual TStreamerElement *GetStreamerElement(const char*datamember, In t_t& offset) const = 0; | |||
virtual Bool_t IsBuilt() const = 0; | Bool_t IsBuilt() const { return fIsBuilt; } | |||
virtual Bool_t IsOptimized() const = 0; | Bool_t IsCompiled() const { return TestBit(kIsCompiled); } | |||
virtual Int_t IsRecovered() const {return TestBit(kRecovered);} | Bool_t IsOptimized() const { return fOptimized; } | |||
Int_t IsRecovered() const { return TestBit(kRecovered); } | ||||
virtual void ls(Option_t *option="") const = 0; | virtual void ls(Option_t *option="") const = 0; | |||
virtual TVirtualStreamerInfo *NewInfo(TClass *cl) = 0; | virtual TVirtualStreamerInfo *NewInfo(TClass *cl) = 0; | |||
virtual void *New(void *obj = 0) = 0; | virtual void *New(void *obj = 0) = 0; | |||
virtual void *NewArray(Long_t nElements, void* ary = 0) = 0; | virtual void *NewArray(Long_t nElements, void* ary = 0) = 0; | |||
virtual void Destructor(void* p, Bool_t dtorOnly = kFALSE) = 0; | virtual void Destructor(void* p, Bool_t dtorOnly = kFALSE) = 0; | |||
virtual void DeleteArray(void* p, Bool_t dtorOnly = kFALSE) = 0; | virtual void DeleteArray(void* p, Bool_t dtorOnly = kFALSE) = 0; | |||
virtual void SetCheckSum(UInt_t checksum) = 0; | virtual void SetCheckSum(UInt_t checksum) = 0; | |||
virtual void SetClass(TClass *cl) = 0; | virtual void SetClass(TClass *cl) = 0; | |||
virtual void SetClassVersion(Int_t vers) = 0; | virtual void SetClassVersion(Int_t vers) = 0; | |||
End of changes. 5 change blocks. | ||||
7 lines changed or deleted | 16 lines changed or added | |||
TVirtualX.h | TVirtualX.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TVirtualX.h 31347 2009-11-20 18:03:00Z brun $ | // @(#)root/base:$Id: TVirtualX.h 32427 2010-03-01 18:25:58Z 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 158 | skipping to change at line 158 | |||
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 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; | ||||
//---- 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); | |||
virtual void MapSubwindows(Window_t id); | virtual void MapSubwindows(Window_t id); | |||
virtual void MapRaised(Window_t id); | virtual void MapRaised(Window_t id); | |||
virtual void UnmapWindow(Window_t id); | virtual void UnmapWindow(Window_t id); | |||
virtual void DestroyWindow(Window_t id); | virtual void DestroyWindow(Window_t id); | |||
virtual void DestroySubwindows(Window_t id); | virtual void DestroySubwindows(Window_t id); | |||
virtual void RaiseWindow(Window_t id); | virtual void RaiseWindow(Window_t id); | |||
skipping to change at line 328 | skipping to change at line 329 | |||
virtual void ConvertSelection(Window_t, Atom_t&, Atom_t&, Atom_t &, Time_t&); | virtual void ConvertSelection(Window_t, Atom_t&, Atom_t&, Atom_t &, Time_t&); | |||
virtual Bool_t SetSelectionOwner(Window_t, Atom_t&); | virtual Bool_t SetSelectionOwner(Window_t, Atom_t&); | |||
virtual void ChangeProperties(Window_t id, Atom_t property, Atom _t type, | virtual void ChangeProperties(Window_t id, Atom_t property, Atom _t type, | |||
Int_t format, UChar_t *data, Int_t len); | Int_t format, UChar_t *data, Int_t len); | |||
virtual void SetDNDAware(Window_t, Atom_t *); | virtual void SetDNDAware(Window_t, Atom_t *); | |||
virtual void SetTypeList(Window_t win, Atom_t prop, Atom_t *type list); | virtual void SetTypeList(Window_t win, Atom_t prop, Atom_t *type list); | |||
virtual Window_t FindRWindow(Window_t win, Window_t dragwin, Window_ t input, int x, int y, int maxd); | virtual Window_t FindRWindow(Window_t win, Window_t dragwin, Window_ t input, int x, int y, int maxd); | |||
virtual Bool_t IsDNDAware(Window_t win, Atom_t *typelist); | virtual Bool_t IsDNDAware(Window_t win, Atom_t *typelist); | |||
virtual Bool_t IsCmdThread() const { return kTRUE; } | virtual Bool_t IsCmdThread() const { return kTRUE; } | |||
static TVirtualX *&Instance(); | static TVirtualX *&Instance(); | |||
ClassDef(TVirtualX,0) //ABC defining a generic interface to graphics sy stem | ClassDef(TVirtualX,0) //ABC defining a generic interface to graphics sy stem | |||
}; | }; | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
#define gVirtualX (TVirtualX::Instance()) | #define gVirtualX (TVirtualX::Instance()) | |||
R__EXTERN TVirtualX *(*gPtr2VirtualX)(); | R__EXTERN TVirtualX *(*gPtr2VirtualX)(); | |||
#endif | #endif | |||
R__EXTERN TVirtualX *gGXBatch; | R__EXTERN TVirtualX *gGXBatch; | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||
TXMLEngine.h | TXMLEngine.h | |||
---|---|---|---|---|
// @(#)root/xml:$Id: TXMLEngine.h 31815 2009-12-10 16:27:22Z brun $ | // @(#)root/xml:$Id: TXMLEngine.h 32188 2010-02-02 17:41:23Z 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 43 | skipping to change at line 43 | |||
XMLNodePointer_t AllocateNode(const char *name, XMLNodePointer_t parent ); | XMLNodePointer_t AllocateNode(const char *name, XMLNodePointer_t parent ); | |||
XMLAttrPointer_t AllocateAttr(const char *name, const char *value, XMLN odePointer_t xmlnode); | XMLAttrPointer_t AllocateAttr(const char *name, const char *value, XMLN odePointer_t xmlnode); | |||
XMLAttrPointer_t AllocateAttr(Ssiz_t namelen, Ssiz_t valuelen, XMLNodeP ointer_t xmlnode); | XMLAttrPointer_t AllocateAttr(Ssiz_t namelen, Ssiz_t valuelen, XMLNodeP ointer_t xmlnode); | |||
XMLNsPointer_t FindNs(XMLNodePointer_t xmlnode, const char* nsname); | XMLNsPointer_t FindNs(XMLNodePointer_t xmlnode, const char* nsname); | |||
void TruncateNsExtension(XMLNodePointer_t xmlnode); | void TruncateNsExtension(XMLNodePointer_t xmlnode); | |||
void UnpackSpecialCharacters(char* target, const char* sour ce, int srclen); | void UnpackSpecialCharacters(char* target, const char* sour ce, int srclen); | |||
void OutputValue(char* value, TXMLOutputStream* out); | void OutputValue(char* value, TXMLOutputStream* out); | |||
void SaveNode(XMLNodePointer_t xmlnode, TXMLOutputStream* o ut, Int_t layout, Int_t level); | void SaveNode(XMLNodePointer_t xmlnode, TXMLOutputStream* o ut, Int_t layout, Int_t level); | |||
XMLNodePointer_t ReadNode(XMLNodePointer_t xmlparent, TXMLInputStream* inp, Int_t& resvalue); | XMLNodePointer_t ReadNode(XMLNodePointer_t xmlparent, TXMLInputStream* inp, Int_t& resvalue); | |||
void DisplayError(Int_t error, Int_t linenumber); | void DisplayError(Int_t error, Int_t linenumber); | |||
XMLDocPointer_t ParseStream(TXMLInputStream* input); | ||||
Bool_t fSkipComments; //! if true, do not create comments nodes in document during parsing | Bool_t fSkipComments; //! if true, do not create comments nodes in document during parsing | |||
public: | public: | |||
TXMLEngine(); | TXMLEngine(); | |||
virtual ~TXMLEngine(); | virtual ~TXMLEngine(); | |||
void SetSkipComments(bool on = kTRUE) { fSkipComments = on; } | void SetSkipComments(bool on = kTRUE) { fSkipComments = on; } | |||
Bool_t GetSkipComments() const { return fSkipComments; } | Bool_t GetSkipComments() const { return fSkipComments; } | |||
skipping to change at line 110 | skipping to change at line 111 | |||
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); | |||
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. 3 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||
ToyMCSampler.h | ToyMCSampler.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: ToyMCSampler.h 31276 2009-11-18 15:06:42Z moneta $ | // @(#)root/roostats:$Id: ToyMCSampler.h 33206 2010-04-26 09:59:06Z moneta $ | |||
// 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 | |||
TypeBase.h | TypeBase.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: TypeBase.h 29288 2009-07-01 13:03:35Z axel $ | // @(#)root/reflex:$Id: TypeBase.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_TypeBase | #ifndef Reflex_TypeBase | |||
#define Reflex_TypeBase | #define Reflex_TypeBase | |||
skipping to change at line 262 | skipping to change at line 262 | |||
/** | /** | |||
* SimpleName returns the name of the type as a reference. It provides a | * SimpleName returns the name of the type as a reference. It provides a | |||
* simplified but faster generation of a type name. Attention currently it | * simplified but faster generation of a type name. Attention currently it | |||
* is not guaranteed that Name() and SimpleName() return the same charac ter | * is not guaranteed that Name() and SimpleName() return the same charac ter | |||
* layout of a name (ie. spacing, commas, etc. ) | * layout of a name (ie. spacing, commas, etc. ) | |||
* @param pos will indicate where in the returned reference the requeste d name starts | * @param pos will indicate where in the returned reference the requeste d name starts | |||
* @param mod The only 'mod' support is SCOPED | * @param mod The only 'mod' support is SCOPED | |||
* @return name of type | * @return name of type | |||
*/ | */ | |||
virtual const std::string& SimpleName(size_t& pos, | virtual const char* SimpleName(size_t& pos, | |||
unsigned int mod = 0) const; | unsigned int mod = 0) const; | |||
/** | /** | |||
* FunctionParameterAt returns the nth FunctionParameterAt | * FunctionParameterAt returns the nth FunctionParameterAt | |||
* @param nth nth FunctionParameterAt | * @param nth nth FunctionParameterAt | |||
* @return pointer to nth FunctionParameterAt At | * @return pointer to nth FunctionParameterAt At | |||
*/ | */ | |||
virtual Type FunctionParameterAt(size_t nth) const; | virtual Type FunctionParameterAt(size_t nth) const; | |||
/** | /** | |||
* FunctionParameterSize will return the number of parameters of this fu nction | * FunctionParameterSize will return the number of parameters of this fu nction | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
TypeBuilder.h | TypeBuilder.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: TypeBuilder.h 30749 2009-10-15 16:33:04Z brun $ | // @(#)root/reflex:$Id: TypeBuilder.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_TypeBuilder | #ifndef Reflex_TypeBuilder | |||
#define Reflex_TypeBuilder | #define Reflex_TypeBuilder | |||
skipping to change at line 28 | skipping to change at line 28 | |||
#include <vector> | #include <vector> | |||
#if defined(__ICC) | #if defined(__ICC) | |||
# define OffsetOf(c1, mem) (long (&((volatile const char &)((c1*) 0)->mem)) ) | # define OffsetOf(c1, mem) (long (&((volatile const char &)((c1*) 0)->mem)) ) | |||
#else | #else | |||
# define OffsetOf(c1, mem) ((size_t) (&reinterpret_cast<const volatile char &>(((c1*) 64)->mem)) - 64) | # define OffsetOf(c1, mem) ((size_t) (&reinterpret_cast<const volatile char &>(((c1*) 64)->mem)) - 64) | |||
#endif | #endif | |||
namespace Reflex { | namespace Reflex { | |||
template<typename FUNC> | ||||
void* FuncToVoidPtr(FUNC f) { | ||||
union Cnv_t { | ||||
Cnv_t(FUNC ff): fFunc(ff) {} | ||||
FUNC fFunc; | ||||
void* fPtr; | ||||
} u(f); | ||||
return u.fPtr; | ||||
} | ||||
template <typename FUNC> | ||||
FUNC VoidPtrToFunc(void* p) { | ||||
union Cnv_t { | ||||
Cnv_t(void* pp): fPtr(pp) {} | ||||
FUNC fFunc; | ||||
void* fPtr; | ||||
} u(p); | ||||
return u.fFunc; | ||||
} | ||||
class RFLX_API Literal { | ||||
public: | ||||
Literal(const char*); | ||||
~Literal(); | ||||
operator const char*() const { return fPtr; } | ||||
private: | ||||
const char* fPtr; | ||||
}; | ||||
RFLX_API Type TypeBuilder(const char* n, | RFLX_API Type TypeBuilder(const char* n, | |||
unsigned int modifiers = 0); | unsigned int modifiers = 0); | |||
RFLX_API Type ConstBuilder(const Type& t); | RFLX_API Type ConstBuilder(const Type& t); | |||
RFLX_API Type VolatileBuilder(const Type& t); | RFLX_API Type VolatileBuilder(const Type& t); | |||
RFLX_API Type PointerBuilder(const Type& t, | RFLX_API Type PointerBuilder(const Type& t, | |||
const std::type_info& ti = typeid(UnknownType) ); | const std::type_info& ti = typeid(UnknownType) ); | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 30 lines changed or added | |||
TypeName.h | TypeName.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: TypeName.h 29288 2009-07-01 13:03:35Z axel $ | // @(#)root/reflex:$Id: TypeName.h 32228 2010-02-05 16:13:09Z axel $ | |||
// Author: Stefan Roiser 2004 | // Author: Stefan Roiser 2004 | |||
// Copyright CERN, CH-1211 Geneva 23, 2004-2006, 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. | |||
#ifndef Reflex_TypeName | #ifndef Reflex_TypeName | |||
#define Reflex_TypeName | #define Reflex_TypeName | |||
// Include files | // Include files | |||
#include "Reflex/Kernel.h" | #include "Reflex/Kernel.h" | |||
#include <string> | #include "LiteralString.h" | |||
#include <typeinfo> | #include <typeinfo> | |||
namespace Reflex { | namespace Reflex { | |||
// forward declarations | // forward declarations | |||
class TypeBase; | ||||
class Type; | class Type; | |||
class TypeBase; | ||||
/** | /** | |||
* class TypeName TypeName.h Reflex/TypeName.h | * class TypeName TypeName.h Reflex/TypeName.h | |||
* @author Stefan Roiser | * @author Stefan Roiser | |||
* @date 06/11/2004 | * @date 06/11/2004 | |||
* @ingroup Ref | * @ingroup Ref | |||
*/ | */ | |||
class RFLX_API TypeName { | class RFLX_API TypeName { | |||
friend class Type; | friend class Type; | |||
friend class TypeBase; | friend class TypeBase; | |||
skipping to change at line 77 | skipping to change at line 77 | |||
* Hide this type from any lookup by appending the string " @HIDDEN@" to its name. | * Hide this type from any lookup by appending the string " @HIDDEN@" to its name. | |||
*/ | */ | |||
void HideName(); | void HideName(); | |||
/** | /** | |||
* Un-Hide this type from any lookup by removing the string " @HIDDEN@" to its name. | * Un-Hide this type from any lookup by removing the string " @HIDDEN@" to its name. | |||
*/ | */ | |||
void UnhideName(); | void UnhideName(); | |||
/** | /** | |||
* Name will return the string representation of the At (unique) | * Name returns a char* pointer to the unqualified At Name | |||
* @return At Name as a string | ||||
*/ | ||||
const std::string& Name() const; | ||||
/** | ||||
* Name_c_str returns a char* pointer to the unqualified At Name | ||||
* @ return c string to unqualified At Name | * @ return c string to unqualified At Name | |||
*/ | */ | |||
const char* Name_c_str() const; | const char* Name() const; | |||
const LiteralString& LiteralName() const { return fName; } | ||||
/** | /** | |||
* At returns the At object of this TypeName | * At returns the At object of this TypeName | |||
* @return corresponding Type to this TypeName | * @return corresponding Type to this TypeName | |||
*/ | */ | |||
Type ThisType() const; | Type ThisType() const; | |||
/** | /** | |||
* Unload reflection information for this type. | ||||
*/ | ||||
void Unload(); | ||||
/** | ||||
* At will return a pointer to the nth Type in the system | * At will return a pointer to the nth Type in the system | |||
* @param nth number of At to return | * @param nth number of At to return | |||
* @return pointer to nth Type in the system | * @return pointer to nth Type in the system | |||
*/ | */ | |||
static Type TypeAt(size_t nth); | static Type TypeAt(size_t nth); | |||
/** | /** | |||
* Size will return the number of currently defined types in | * Size will return the number of currently defined types in | |||
* the system | * the system | |||
* @return number of currently defined types | * @return number of currently defined types | |||
skipping to change at line 122 | skipping to change at line 123 | |||
private: | private: | |||
/** destructor */ | /** destructor */ | |||
~TypeName(); | ~TypeName(); | |||
/** Set the type_info in the hash_map to this */ | /** Set the type_info in the hash_map to this */ | |||
void SetTypeId(const std::type_info& ti) const; | void SetTypeId(const std::type_info& ti) const; | |||
private: | private: | |||
/** the Name of the At */ | /** the Name of the At */ | |||
std::string fName; | LiteralString fName; | |||
/** | /** | |||
* pointer to a TypebeBase if the At is implemented | * pointer to a TypebeBase if the At is implemented | |||
* @label type base | * @label type base | |||
* @link aggregation | * @link aggregation | |||
* @supplierCardinality 1 | * @supplierCardinality 1 | |||
* @clientCardinality 1 | * @clientCardinality 1 | |||
*/ | */ | |||
mutable | mutable | |||
TypeBase * fTypeBase; | TypeBase * fTypeBase; | |||
skipping to change at line 148 | skipping to change at line 149 | |||
* @supplierCardinality 1 | * @supplierCardinality 1 | |||
* @clientCardinality 1 | * @clientCardinality 1 | |||
*/ | */ | |||
Type* fThisType; | Type* fThisType; | |||
}; // class TypeName | }; // class TypeName | |||
} // namespace Reflex | } // namespace Reflex | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline const std::string& | ||||
Reflex::TypeName::Name() const { | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
return fName; | ||||
} | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
inline const char* | inline const char* | |||
Reflex::TypeName::Name_c_str() const { | Reflex::TypeName::Name() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
return fName.c_str(); | return fName.c_str(); | |||
} | } | |||
#endif // Reflex_TypeName | #endif // Reflex_TypeName | |||
End of changes. 11 change blocks. | ||||
23 lines changed or deleted | 15 lines changed or added | |||
UnBinData.h | UnBinData.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: UnBinData.h 28946 2009-06-11 15:39:14Z moneta $ | // @(#)root/mathcore:$Id: UnBinData.h 33180 2010-04-25 10:14:07Z moneta $ | |||
// Author: L. Moneta Wed Aug 30 11:15:23 2006 | // Author: L. Moneta Wed Aug 30 11:15:23 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 UnBinData | // Header file for class UnBinData | |||
skipping to change at line 175 | skipping to change at line 175 | |||
/** | /** | |||
destructor, delete pointer to internal data or external data wrapper | destructor, delete pointer to internal data or external data wrapper | |||
*/ | */ | |||
virtual ~UnBinData() { | virtual ~UnBinData() { | |||
if (fDataVector) delete fDataVector; | if (fDataVector) delete fDataVector; | |||
if (fDataWrapper) delete fDataWrapper; | if (fDataWrapper) delete fDataWrapper; | |||
} | } | |||
/** | /** | |||
preallocate a data set given size and dimension | preallocate a data set given size and dimension | |||
if a vector already exists with correct fimension (point size) extend | if a vector already exists with correct dimension (point size) extend | |||
the existing one | the existing one | |||
keep the previous one | to a total size of maxpoints (equivalent to a Resize) | |||
*/ | */ | |||
void Initialize(unsigned int maxpoints, unsigned int dim = 1); | void Initialize(unsigned int maxpoints, unsigned int dim = 1); | |||
/** | /** | |||
return fit point size (for unbin data is equivalent to coordinate dim ension) | return fit point size (for unbin data is equivalent to coordinate dim ension) | |||
*/ | */ | |||
unsigned int PointSize() const { | unsigned int PointSize() const { | |||
return fDim; | return fDim; | |||
} | } | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
VirtualIntegrator.h | VirtualIntegrator.h | |||
---|---|---|---|---|
skipping to change at line 103 | skipping to change at line 103 | |||
class VirtualIntegratorOneDim : public VirtualIntegrator { | class VirtualIntegratorOneDim : public VirtualIntegrator { | |||
public: | public: | |||
/// destructor: no operation | /// destructor: no operation | |||
virtual ~VirtualIntegratorOneDim() {} | virtual ~VirtualIntegratorOneDim() {} | |||
/// evaluate integral | /// evaluate integral | |||
virtual double Integral(double a, double b) = 0; | virtual double Integral(double a, double b) = 0; | |||
/// set integration function (flag control if function must be copied in | /// set integration function | |||
side) | virtual void SetFunction(const IGenFunction &) = 0; | |||
virtual void SetFunction(const IGenFunction &, bool copy = false) = 0; | ||||
/// evaluate un-defined integral (between -inf, + inf) | /// evaluate un-defined integral (between -inf, + inf) | |||
virtual double Integral() = 0; | virtual double Integral() = 0; | |||
/// evaluate integral over the (a, +inf) | /// evaluate integral over the (a, +inf) | |||
virtual double IntegralUp(double a) = 0; | virtual double IntegralUp(double a) = 0; | |||
/// evaluate integral over the (-inf, b) | /// evaluate integral over the (-inf, b) | |||
virtual double IntegralLow(double b) = 0; | virtual double IntegralLow(double b) = 0; | |||
End of changes. 1 change blocks. | ||||
3 lines changed or deleted | 2 lines changed or added | |||
WrappedFunction.h | WrappedFunction.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: WrappedFunction.h 26866 2008-12-12 10:50:07Z mone ta $ | // @(#)root/mathcore:$Id: WrappedFunction.h 33180 2010-04-25 10:14:07Z mone ta $ | |||
// 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 32 | skipping to change at line 32 | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
#ifndef ROOT_Math_WrappedFunction | #ifndef ROOT_Math_WrappedFunction | |||
#define ROOT_Math_WrappedFunction | #define ROOT_Math_WrappedFunction | |||
#ifndef ROOT_Math_IFunction | #ifndef ROOT_Math_IFunction | |||
#include "IFunction.h" | #include "IFunction.h" | |||
#endif | #endif | |||
#include <iostream> | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
struct NullTypeFunc1D {}; | struct NullTypeFunc1D {}; | |||
typedef double( * FreeFunctionPtr ) (double ); | typedef double( * FreeFunctionPtr ) (double ); | |||
typedef double( * FreeMultiFunctionPtr ) (const double *); | typedef double( * FreeMultiFunctionPtr ) (const double *); | |||
/** | /** | |||
Template class to wrap any C++ callable object which takes one argument | Template class to wrap any C++ callable object which takes one argument | |||
i.e. implementing operator() (double x) in a One-dimensional function in terface. | i.e. implementing operator() (double x) in a One-dimensional function in terface. | |||
It provides a ROOT::Math::IGenFunction-like signature | It provides a ROOT::Math::IGenFunction-like signature | |||
Note: If you want to wrap just the reference (to avoid copying) you need | ||||
to use | ||||
Func& or const Func & as template parameter. The former should be used | ||||
when the | ||||
operator() is not a const method of Func | ||||
@ingroup GenFunc | @ingroup GenFunc | |||
*/ | */ | |||
template< typename Func = FreeFunctionPtr > | template< typename Func = FreeFunctionPtr > | |||
class WrappedFunction : public IGenFunction { | class WrappedFunction : public IGenFunction { | |||
public: | public: | |||
/** | /** | |||
construct from the pointer to the object and the member function | construct from the pointer to the object and the member function | |||
skipping to change at line 132 | skipping to change at line 134 | |||
FuncObj * fObj; | FuncObj * fObj; | |||
MemFuncPtr fMemFunc; | MemFuncPtr fMemFunc; | |||
}; // WrappedMemFunction | }; // WrappedMemFunction | |||
/** | /** | |||
Template class to wrap any C++ callable object | Template class to wrap any C++ callable object | |||
implementing operator() (const double * x) in a multi-dimensional functi on interface. | implementing operator() (const double * x) in a multi-dimensional functi on interface. | |||
It provides a ROOT::Math::IGenMultiFunction-like signature | It provides a ROOT::Math::IGenMultiFunction-like signature | |||
Note: If you want to wrap just the reference (to avoid copying) you need | ||||
to use | ||||
Func& or const Func & as template parameter. The former should be used w | ||||
hen the | ||||
operator() is not a const method of Func | ||||
@ingroup GenFunc | @ingroup GenFunc | |||
*/ | */ | |||
template< typename Func = FreeMultiFunctionPtr > | template< typename Func = FreeMultiFunctionPtr > | |||
class WrappedMultiFunction : public IMultiGenFunction { | class WrappedMultiFunction : public IMultiGenFunction { | |||
public: | public: | |||
/** | /** | |||
construct from the pointer to the object and the member function | construct from the pointer to the object and the member function | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 13 lines changed or added | |||
WrappedMultiTF1.h | WrappedMultiTF1.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: WrappedMultiTF1.h 31207 2009-11-16 16:52:00Z mone ta $ | // @(#)root/mathmore:$Id: WrappedMultiTF1.h 32265 2010-02-08 10:10:44Z mone ta $ | |||
// Author: L. Moneta Wed Sep 6 09:52:26 2006 | // Author: L. Moneta Wed Sep 6 09:52:26 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 WrappedTFunction | // Header file for class WrappedTFunction | |||
skipping to change at line 125 | skipping to change at line 125 | |||
/// evaluate function passing coordinates x and vector of parameters | /// evaluate function passing coordinates x and vector of parameters | |||
double DoEvalPar (const double * x, const double * p ) const { | double DoEvalPar (const double * x, const double * p ) const { | |||
if (fFunc->GetMethodCall() ) fFunc->InitArgs(x,p); // needed for in terpreted functions | if (fFunc->GetMethodCall() ) fFunc->InitArgs(x,p); // needed for in terpreted functions | |||
return fFunc->EvalPar(x,p); | return fFunc->EvalPar(x,p); | |||
} | } | |||
/// evaluate the partial derivative with respect to the parameter | /// evaluate the partial derivative with respect to the parameter | |||
double DoParameterDerivative(const double * x, const double * p, unsigne d int ipar) const; | double DoParameterDerivative(const double * x, const double * p, unsigne d int ipar) const; | |||
bool fLinear; // flag for linear functions | bool fLinear; // flag for linear functions | |||
bool fPolynomial; // flag for polynomial functions | ||||
TF1 * fFunc; // pointer to ROOT function | TF1 * fFunc; // pointer to ROOT function | |||
unsigned int fDim; // cached value of dimension | unsigned int fDim; // cached value of dimension | |||
std::vector<double> fParams; // cached vector with parameter values | std::vector<double> fParams; // cached vector with parameter values | |||
static double fgEps; // epsilon used in derivative calculation h ~ eps |p| | static double fgEps; // epsilon used in derivative calculation h ~ eps |p| | |||
}; | }; | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 1 lines changed or added | |||
cintdictversion.h | cintdictversion.h | |||
---|---|---|---|---|
skipping to change at line 18 | skipping to change at line 18 | |||
************************************************************************ | ************************************************************************ | |||
* Copyright(c) 1995~2008 Masaharu Goto (cint@pcroot.cern.ch) | * Copyright(c) 1995~2008 Masaharu Goto (cint@pcroot.cern.ch) | |||
* | * | |||
* For the licensing terms see the file COPYING | * For the licensing terms see the file COPYING | |||
* | * | |||
************************************************************************/ | ************************************************************************/ | |||
#ifndef INCLUDE_CINTDICTVERSION | #ifndef INCLUDE_CINTDICTVERSION | |||
#define INCLUDE_CINTDICTVERSION | #define INCLUDE_CINTDICTVERSION | |||
#define G__CINTDICTVERSION 20090608 | #define G__CINTDICTVERSION 20100330 | |||
#endif /* INCLUDE_CINTDICTVERSION */ | #endif /* INCLUDE_CINTDICTVERSION */ | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 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 lxbuild147.cern.ch 2.6.18-164.6.1.el5 #1 SMP Wed Nov 4 09:08:07 CET 2009 i686 i686 i386 GNU/Linux" | #define BUILD_NODE "Linux lxbuild147.cern.ch 2.6.18-164.11.1.el5 #1 SMP Wed Jan 20 13:19:07 CET 2010 i686 i686 i386 GNU/Linux" | |||
#define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3/i686-slc5-gcc34-opt/b in/g++" | #define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3/i686-slc5-gcc34-opt/b in/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++ $ObjectFil es -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++ $ObjectFil es -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 | |||
configcint.h | configcint.h | |||
---|---|---|---|---|
skipping to change at line 12 | skipping to change at line 12 | |||
#define G__CFG_ARCH "linux" | #define G__CFG_ARCH "linux" | |||
#define G__CFG_IMPLIBEXT ".a" | #define G__CFG_IMPLIBEXT ".a" | |||
#define G__CFG_LDOUT "-o " | #define G__CFG_LDOUT "-o " | |||
#define G__CFG_LIBL "-l@imp@" | #define G__CFG_LIBL "-l@imp@" | |||
#define G__CFG_LIBEXT ".a" | #define G__CFG_LIBEXT ".a" | |||
#define G__CFG_MANGLEPATHS "echo " | #define G__CFG_MANGLEPATHS "echo " | |||
#define G__CFG_PLATFORMO "" | #define G__CFG_PLATFORMO "" | |||
#define G__CFG_AR "ar qcs" | #define G__CFG_AR "ar qcs" | |||
#define G__CFG_COREVERSION "cint" | #define G__CFG_COREVERSION "cint" | |||
#define G__CFG_CC "gcc" | #define G__CFG_CC "gcc" | |||
#define G__CFG_CFLAGS "-pipe -m32 -Wall -W -fPIC -Iinclude -DG__REGEXP -DG __UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO -DG__STD_EXCEPT ION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY -Icint/cint/inc -Icint/c int/src -Icint/cint/src/dict" | #define G__CFG_CFLAGS "-pipe -m32 -Wall -W -fPIC -Iinclude -DG__REGEXP -DG __UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO -DG__STD_EXCEPT ION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY -Icint/cint/inc -Icint/c int/src -Icint/cint/src/dict -pthread" | |||
#define G__CFG_CMACROS "-DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -D G__ROOT -DG__REDIRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY" | #define G__CFG_CMACROS "-DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -D G__ROOT -DG__REDIRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY" | |||
#define G__CFG_COMP "-c " | #define G__CFG_COMP "-c " | |||
#define G__CFG_CPP "g++ -E -C" | #define G__CFG_CPP "g++ -E -C" | |||
#define G__CFG_COUT "-o " | #define G__CFG_COUT "-o " | |||
#define G__CFG_COUTEXE "-o " | #define G__CFG_COUTEXE "-o " | |||
#define G__CFG_INCP "-I" | #define G__CFG_INCP "-I" | |||
#define G__CFG_CXX "g++" | #define G__CFG_CXX "g++" | |||
#define G__CFG_CXXFLAGS "-pipe -m32 -Wall -W -Woverloaded-virtual -fPIC -Ii nclude -DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__RED IRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY - Icint/cint/inc -Icint/cint/src -Icint/cint/src/dict" | #define G__CFG_CXXFLAGS "-pipe -m32 -Wall -W -Woverloaded-virtual -fPIC -Ii nclude -DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__RED IRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEINFO -DG__CINTBODY - Icint/cint/inc -Icint/cint/src -Icint/cint/src/dict -pthread" | |||
#define G__CFG_CXXMACROS "-DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEIN FO -DG__CINTBODY" | #define G__CFG_CXXMACROS "-DG__REGEXP -DG__UNIX -DG__SHAREDLIB -DG__OSFDLL -DG__ROOT -DG__REDIRECTIO -DG__STD_EXCEPTION -DG__HAVE_CONFIG -DG__NOMAKEIN FO -DG__CINTBODY" | |||
#define G__CFG_LD "g++" | #define G__CFG_LD "g++" | |||
#define G__CFG_LDFLAGS "-m32 -O2 " | #define G__CFG_LDFLAGS "-m32 -O2 " | |||
#define G__CFG_LIBP "-L" | #define G__CFG_LIBP "-L" | |||
#define G__CFG_SOFLAGS "-shared -Wl,-soname," | #define G__CFG_SOFLAGS "-shared -Wl,-soname," | |||
#define G__CFG_SOOUT G__CFG_LDOUT | #define G__CFG_SOOUT G__CFG_LDOUT | |||
#define G__CFG_OBJEXT ".o" | #define G__CFG_OBJEXT ".o" | |||
#define G__CFG_EXEEXT "" | #define G__CFG_EXEEXT "" | |||
#define G__CFG_SOEXT ".so" | #define G__CFG_SOEXT ".so" | |||
#define G__CFG_DEBUG "" | #define G__CFG_DEBUG "" | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
tableDescriptor.h | tableDescriptor.h | |||
---|---|---|---|---|
/* @(#)root/table:$Id: tableDescriptor.h 21414 2007-12-17 14:15:59Z brun $ */ | /* @(#)root/table:$Id: tableDescriptor.h 31945 2009-12-21 19:03:21Z 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. * | |||
*************************************************************************/ | *************************************************************************/ | |||
/* tableDescriptor.h */ | /* tableDescriptor.h */ | |||
#ifndef TABLEDESCRIPTOR_H | #ifndef TABLEDESCRIPTOR_H | |||
skipping to change at line 71 | skipping to change at line 71 | |||
char *fColumnName; /* The name of this data-member */ | char *fColumnName; /* The name of this data-member */ | |||
unsigned int *fIndexArray; /* The array of the sizes for each dimension s fIndexArray[fDimensions] */ | unsigned int *fIndexArray; /* The array of the sizes for each dimension s fIndexArray[fDimensions] */ | |||
#else | #else | |||
char fColumnName[32]; /* The name of this data-member: see dst ype.h for dsl compatible mode */ | char fColumnName[32]; /* The name of this data-member: see dst ype.h for dsl compatible mode */ | |||
unsigned int fIndexArray[3]; /* The array of the sizes for each dimen sions fIndexArray[fDimensions]*/ | unsigned int fIndexArray[3]; /* The array of the sizes for each dimen sions fIndexArray[fDimensions]*/ | |||
#endif | #endif | |||
unsigned int fOffset; /* The first byte in the row of this column */ | unsigned int fOffset; /* The first byte in the row of this column */ | |||
unsigned int fSize; /* The full size of the selected column in b ytes */ | unsigned int fSize; /* The full size of the selected column in b ytes */ | |||
unsigned int fTypeSize; /* The type size of the selected column in b ytes */ | unsigned int fTypeSize; /* The type size of the selected column in b ytes */ | |||
unsigned int fDimensions; /* The number of the dimensions for array */ | unsigned int fDimensions; /* The number of the dimensions for array */ | |||
Int_t fType; /* The data type of the selected column */ | int fType; /* The data type of the selected column */ | |||
} TABLEDESCRIPTOR_ST; | } TABLEDESCRIPTOR_ST; | |||
// $Log: tableDescriptor.h,v $ | // $Log: tableDescriptor.h,v $ | |||
// Revision 1.2 2003/01/27 20:41:36 brun | // Revision 1.2 2003/01/27 20:41:36 brun | |||
// New version of the Table package by Valeri Fine. | // New version of the Table package by Valeri Fine. | |||
// New classes TIndexTable TResponseIterator TResponseTable TTableMap | // New classes TIndexTable TResponseIterator TResponseTable TTableMap | |||
// | // | |||
// Revision 1.1.1.1 2002/05/28 12:32:02 fisyak | // Revision 1.1.1.1 2002/05/28 12:32:02 fisyak | |||
// | // | |||
// | // | |||
// Revision 1.1 2002/05/27 16:26:59 rdm | // Revision 1.1 2002/05/27 16:26:59 rdm | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||