Api.h | Api.h | |||
---|---|---|---|---|
skipping to change at line 55 | skipping to change at line 55 | |||
#include "Typedf.h" | #include "Typedf.h" | |||
#include "Token.h" | #include "Token.h" | |||
#include <vector> | #include <vector> | |||
#include <string> | #include <string> | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
struct G__includepath; | struct G__includepath; | |||
#endif | #endif | |||
extern "C" { | ||||
#ifndef __CINT__ | ||||
G__EXPORT | ||||
#endif | ||||
int G__Lsizeof(const char *typenamein); | ||||
} | ||||
struct G__ConstStringList; | ||||
struct G__Preprocessfilekey; | ||||
struct G__Deffuncmacro; | ||||
struct G__Definedtemplateclass; | ||||
struct G__Definetemplatefunc; | ||||
/********************************************************************* | ||||
* scratch upto dictionary position | ||||
*********************************************************************/ | ||||
struct G__dictposition { | ||||
/* global variable table position */ | ||||
struct G__var_array *var; | ||||
int ig15; | ||||
/* struct tagnum */ | ||||
int tagnum; | ||||
/* const string table */ | ||||
struct G__ConstStringList *conststringpos; | ||||
/* typedef table */ | ||||
int typenum; | ||||
/* global function table position */ | ||||
struct G__ifunc_table *ifunc; | ||||
int ifn; | ||||
/* include path */ | ||||
struct G__includepath *ipath; | ||||
/* shared library file */ | ||||
int allsl; | ||||
/* preprocessfilekey */ | ||||
struct G__Preprocessfilekey *preprocessfilekey; | ||||
/* input file */ | ||||
int nfile; | ||||
/* macro table */ | ||||
struct G__Deffuncmacro *deffuncmacro; | ||||
/* template class */ | ||||
struct G__Definedtemplateclass *definedtemplateclass; | ||||
/* function template */ | ||||
struct G__Definetemplatefunc *definedtemplatefunc; | ||||
char* ptype; /* struct,union,enum,class */ | ||||
}; | ||||
namespace Cint { | namespace Cint { | |||
/********************************************************************* | /********************************************************************* | |||
* $xxx object resolution function, pointer to a class object | * $xxx object resolution function, pointer to a class object | |||
* | * | |||
* Usage: | * Usage: | |||
* | * | |||
* void YourGetObject(char *name,G__ClassInfo *type) { | * void YourGetObject(char *name,G__ClassInfo *type) { | |||
* void *p; | * void *p; | |||
* // Whatever you want to fill type and pointetr to the object info | * // Whatever you want to fill type and pointetr to the object info | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 47 lines changed or added | |||
Chi2FCN.h | Chi2FCN.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Chi2FCN.h 26014 2008-10-29 16:37:28Z moneta $ | // @(#)root/mathcore:$Id: Chi2FCN.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: L. Moneta Tue Sep 5 09:13:32 2006 | // Author: L. Moneta Tue Sep 5 09:13:32 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 Chi2FCN | // Header file for class Chi2FCN | |||
#ifndef ROOT_Fit_Chi2FCN | #ifndef ROOT_Fit_Chi2FCN | |||
#define ROOT_Fit_Chi2FCN | #define ROOT_Fit_Chi2FCN | |||
#ifndef ROOT_Math_FitMethodunction | #ifndef ROOT_Math_FitMethodFunction | |||
#include "Math/FitMethodFunction.h" | #include "Math/FitMethodFunction.h" | |||
#endif | #endif | |||
#ifndef ROOT_Math_IParamFunction | #ifndef ROOT_Math_IParamFunction | |||
#include "Math/IParamFunction.h" | #include "Math/IParamFunction.h" | |||
#endif | #endif | |||
#ifndef ROOT_Fit_BinData | #ifndef ROOT_Fit_BinData | |||
#include "Fit/BinData.h" | #include "Fit/BinData.h" | |||
#endif | #endif | |||
skipping to change at line 179 | skipping to change at line 179 | |||
const BinData & fData; | const BinData & fData; | |||
mutable IModelFunction & fFunc; | mutable IModelFunction & fFunc; | |||
mutable unsigned int fNEffPoints; // number of effective points used in the fit | mutable unsigned int fNEffPoints; // number of effective points used in the fit | |||
mutable std::vector<double> fGrad; // for derivatives | mutable std::vector<double> fGrad; // for derivatives | |||
}; | }; | |||
// define useful typedef's | ||||
typedef Chi2FCN<ROOT::Math::IMultiGenFunction> Chi2Function; | ||||
typedef Chi2FCN<ROOT::Math::IMultiGradFunction> Chi2GradFunction; | ||||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_Chi2FCN */ | #endif /* ROOT_Fit_Chi2FCN */ | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 6 lines changed or added | |||
CombinedCalculator.h | CombinedCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: CombinedCalculator.h 26324 2008-11-20 17:17:32Z m oneta $ | // @(#)root/roostats:$Id: CombinedCalculator.h 26964 2008-12-16 16:30:01Z 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_CombinedCalculator | #ifndef ROOSTATS_CombinedCalculator | |||
skipping to change at line 83 | skipping to change at line 83 | |||
CombinedCalculator(){ | CombinedCalculator(){ | |||
// default constructor | // default constructor | |||
fWS = 0; | fWS = 0; | |||
fNullParams = 0; | fNullParams = 0; | |||
fAlternateParams = 0; | fAlternateParams = 0; | |||
fPOI = 0; | fPOI = 0; | |||
fNuisParams = 0; | fNuisParams = 0; | |||
fOwnsWorkspace = false; | fOwnsWorkspace = false; | |||
} | } | |||
CombinedCalculator(RooWorkspace* ws, RooAbsData* data, RooAbsPdf* pdf , RooArgSet* paramsOfInterest, | CombinedCalculator(RooWorkspace& ws, RooAbsData& data, RooAbsPdf& pdf , RooArgSet& paramsOfInterest, | |||
Double_t size = 0.05, RooArgSet* nullParams = 0, R ooArgSet* altParams = 0){ | Double_t size = 0.05, RooArgSet* nullParams = 0, R ooArgSet* altParams = 0){ | |||
// alternate constructor | // alternate constructor | |||
SetWorkspace(ws); | SetWorkspace(ws); | |||
SetData(data); | SetData(data); | |||
SetPdf(pdf); | SetPdf(pdf); | |||
SetParameters(paramsOfInterest); | SetParameters(paramsOfInterest); | |||
SetSize(size); | SetSize(size); | |||
if(nullParams ) | if(nullParams ) | |||
SetNullParameters(nullParams); | SetNullParameters(*nullParams); | |||
else | else | |||
SetNullParameters(paramsOfInterest); | SetNullParameters(paramsOfInterest); | |||
SetAlternateParameters(altParams); | if (altParams) SetAlternateParameters(*altParams); | |||
fOwnsWorkspace = false; | fOwnsWorkspace = false; | |||
} | } | |||
CombinedCalculator(RooAbsData* data, RooAbsPdf* pdf, RooArgSet* param sOfInterest, | CombinedCalculator(RooAbsData& data, RooAbsPdf& pdf, RooArgSet& param sOfInterest, | |||
Double_t size = 0.05, RooArgSet* nullParams = 0, R ooArgSet* altParams = 0){ | Double_t size = 0.05, RooArgSet* nullParams = 0, R ooArgSet* altParams = 0){ | |||
// alternate constructor | // alternate constructor | |||
fWS = new RooWorkspace(); | fWS = new RooWorkspace(); | |||
fOwnsWorkspace = true; | fOwnsWorkspace = true; | |||
SetData(data); | SetData(data); | |||
SetPdf(pdf); | SetPdf(pdf); | |||
SetParameters(paramsOfInterest); | SetParameters(paramsOfInterest); | |||
SetSize(size); | SetSize(size); | |||
if(nullParams ) | if(nullParams ) | |||
SetNullParameters(nullParams); | SetNullParameters(*nullParams); | |||
else | else | |||
SetNullParameters(paramsOfInterest); | SetNullParameters(paramsOfInterest); | |||
SetAlternateParameters(altParams); | if (altParams) SetAlternateParameters(*altParams); | |||
} | } | |||
virtual ~CombinedCalculator() { | virtual ~CombinedCalculator() { | |||
// destructor. | // destructor. | |||
if( fOwnsWorkspace && fWS) delete fWS; | if( fOwnsWorkspace && fWS) delete fWS; | |||
// commented out b/c currently the calculator does not own these. Change if we clone. | // commented out b/c currently the calculator does not own these. Change if we clone. | |||
// if (fWS) delete fWS; | // if (fWS) delete fWS; | |||
// if (fNullParams) delete fNullParams; | // if (fNullParams) delete fNullParams; | |||
// if (fAlternateParams) delete fAlternateParams; | // if (fAlternateParams) delete fAlternateParams; | |||
// if (fPOI) delete fPOI; | // if (fPOI) delete fPOI; | |||
skipping to change at line 141 | skipping to change at line 141 | |||
// 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 SetSize(Double_t size) {fSize = size;} | virtual void SetSize(Double_t size) {fSize = size;} | |||
// set the confidence level for the interval (eg. 0.95 for a 95% Conf idence Interval) | // set the confidence level for the interval (eg. 0.95 for a 95% Conf idence Interval) | |||
virtual void SetConfidenceLevel(Double_t cl) {fSize = 1.-cl;} | virtual void SetConfidenceLevel(Double_t cl) {fSize = 1.-cl;} | |||
// 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;} | |||
// set a workspace that owns all the necessary components for the ana lysis | // set a workspace that owns all the necessary components for the ana lysis | |||
virtual void SetWorkspace(RooWorkspace* ws) { | virtual void SetWorkspace(RooWorkspace & ws) { | |||
if (!fWS) | if (!fWS) | |||
fWS = ws; | fWS = &ws; | |||
else{ | else{ | |||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | |||
fWS->merge(*ws); | fWS->merge(ws); | |||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | |||
} | } | |||
} | } | |||
// Set the DataSet, add to the the workspace if not already there | // Set the DataSet, add to the the workspace if not already there | |||
virtual void SetData(RooAbsData* data) { | virtual void SetData(RooAbsData & data) { | |||
if (!fWS) | if (!fWS) { | |||
fWS = new RooWorkspace(); | fWS = new RooWorkspace(); | |||
if (! fWS->data( data->GetName() ) ){ | fOwnsWorkspace = true; | |||
} | ||||
if (! fWS->data( data.GetName() ) ){ | ||||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | |||
fWS->import(*data); | fWS->import(data); | |||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | |||
} | } | |||
SetData( data->GetName() ); | SetData( data.GetName() ); | |||
}; | }; | |||
// Set the Pdf, add to the the workspace if not already there | // Set the Pdf, add to the the workspace if not already there | |||
virtual void SetPdf(RooAbsPdf* pdf) { | virtual void SetPdf(RooAbsPdf& pdf) { | |||
if (!fWS) | if (!fWS) | |||
fWS = new RooWorkspace(); | fWS = new RooWorkspace(); | |||
if (! fWS->pdf( pdf->GetName() ) ){ | if (! fWS->pdf( pdf.GetName() ) ){ | |||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::ERR OR) ; | |||
fWS->import(*pdf); | fWS->import(pdf); | |||
RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | RooMsgService::instance().setGlobalKillBelow(RooMsgService::DEB UG) ; | |||
} | } | |||
SetPdf( pdf->GetName() ); | SetPdf( pdf.GetName() ); | |||
} | } | |||
// Set the Pdf, add to the the workspace if not already there | // Set the Pdf, add to the the workspace if not already there | |||
virtual void SetCommonPdf(RooAbsPdf* pdf) { SetPdf(pdf);} | virtual void SetCommonPdf(RooAbsPdf& pdf) { SetPdf(pdf);} | |||
// Set the Pdf, add to the the workspace if not already there | // Set the Pdf, add to the the workspace if not already there | |||
virtual void SetNullPdf(RooAbsPdf* pdf) { SetPdf(pdf);} | virtual void SetNullPdf(RooAbsPdf& pdf) { SetPdf(pdf);} | |||
// Set the Pdf, add to the the workspace if not already there | // Set the Pdf, add to the the workspace if not already there | |||
virtual void SetAlternatePdf(RooAbsPdf* pdf) { SetPdf(pdf);} | virtual void SetAlternatePdf(RooAbsPdf& pdf) { SetPdf(pdf);} | |||
// 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) {fPdfName = name;} | virtual void SetPdf(const char* name) {fPdfName = name;} | |||
// specify the name of the dataset in the workspace to be used | // specify the name of the dataset in the workspace to be used | |||
virtual void SetData(const char* name){fDataName = name;} | virtual void SetData(const char* name){fDataName = name;} | |||
// specify the parameters of interest in the interval | // specify the parameters of interest in the interval | |||
virtual void SetParameters(RooArgSet* set) {fPOI = set;} | virtual void SetParameters(RooArgSet& set) {fPOI = &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) {fNuisParams = set ;} | virtual void SetNuisanceParameters(RooArgSet& set) {fNuisParams = &se t;} | |||
// from HypoTestCalculator | // from HypoTestCalculator | |||
// set the PDF for the null hypothesis. Needs to be the common one | // set the PDF for the null hypothesis. Needs to be the common one | |||
virtual void SetNullPdf(const char* name) {SetPdf(name);} | virtual void SetNullPdf(const char* name) {SetPdf(name);} | |||
// set the PDF for the alternate hypothesis. Needs to be the common o ne | // set the PDF for the alternate hypothesis. Needs to be the common o ne | |||
virtual void SetAlternatePdf(const char* name) {SetPdf(name);} | virtual void SetAlternatePdf(const char* name) {SetPdf(name);} | |||
// set a common PDF for both the null and alternate hypotheses | // set a common PDF for both the null and alternate hypotheses | |||
virtual void SetCommonPdf(const char* name) {SetPdf(name);} | virtual void SetCommonPdf(const char* name) {SetPdf(name);} | |||
// set parameter values for the null if using a common PDF | // set parameter values for the null if using a common PDF | |||
virtual void SetNullParameters(RooArgSet* set) {fNullParams = set;} | virtual void SetNullParameters(RooArgSet& set) {fNullParams = &set;} | |||
// set parameter values for the alternate if using a common PDF | // set parameter values for the alternate if using a common PDF | |||
virtual void SetAlternateParameters(RooArgSet* set) {fAlternateParams = set;} | virtual void SetAlternateParameters(RooArgSet& set) {fAlternateParams = &set;} | |||
protected: | protected: | |||
Double_t fSize; // size of the test (eg. specified rate of Type I err or) | Double_t fSize; // size of the test (eg. specified rate of Type I err or) | |||
RooWorkspace* fWS; // a workspace that owns all the components to be used by the calculator | RooWorkspace* fWS; // a workspace that owns all the components to be used by the calculator | |||
const char* fPdfName; // name of common PDF in workspace | const char* fPdfName; // name of common PDF in workspace | |||
const char* fDataName; // name of data set in workspace | const char* fDataName; // name of data set in workspace | |||
RooArgSet* fNullParams; // RooArgSet specifying null parameters for h ypothesis test | RooArgSet* fNullParams; // RooArgSet specifying null parameters for h ypothesis test | |||
RooArgSet* fAlternateParams; // RooArgSet specifying alternate parame ters for hypothesis test | RooArgSet* fAlternateParams; // RooArgSet specifying alternate parame ters for hypothesis test | |||
RooArgSet* fPOI; // RooArgSet specifying parameters of interest for interval | RooArgSet* fPOI; // RooArgSet specifying parameters of interest for interval | |||
End of changes. 25 change blocks. | ||||
26 lines changed or deleted | 28 lines changed or added | |||
CramerInversion.icc | CramerInversion.icc | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: CramerInversion.icc 22041 2008-02-07 13:41:22Z mon eta $ | // @(#)root/smatrix:$Id: CramerInversion.icc 26866 2008-12-12 10:50:07Z mon eta $ | |||
// Authors: L. Moneta 2005 | // Authors: L. Moneta 2005 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2005 , LCG ROOT MathLib Team * | * Copyright (c) 2005 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// | // | |||
// Cramer optmized inversion for matrices up to size 5x5. | // Cramer optmized inversion for matrices up to size 5x5. | |||
skipping to change at line 36 | skipping to change at line 36 | |||
namespace Math { | namespace Math { | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// Inversion for 3x3 matrices | // Inversion for 3x3 matrices | |||
//========================================================================= ===== | //========================================================================= ===== | |||
/** | /** | |||
Inversion for a 3x3 matrix | Inversion for a 3x3 matrix | |||
*/ | */ | |||
template <class MatrixRep> | template <class MatrixRep> | |||
bool Inverter<3>::Dinv(MatrixRep & rhs) { | bool FastInverter<3>::Dinv(MatrixRep & rhs) { | |||
typedef typename MatrixRep::value_type Scalar; | typedef typename MatrixRep::value_type Scalar; | |||
// check matrix sizes ?? | // check matrix sizes ?? | |||
// Scalar * pM = rhs.Array(); | // Scalar * pM = rhs.Array(); | |||
const Scalar c00 = rhs[4] * rhs[8] - rhs[5] * rhs[7]; | const Scalar c00 = rhs[4] * rhs[8] - rhs[5] * rhs[7]; | |||
const Scalar c01 = rhs[5] * rhs[6] - rhs[3] * rhs[8]; | const Scalar c01 = rhs[5] * rhs[6] - rhs[3] * rhs[8]; | |||
const Scalar c02 = rhs[3] * rhs[7] - rhs[4] * rhs[6]; | const Scalar c02 = rhs[3] * rhs[7] - rhs[4] * rhs[6]; | |||
skipping to change at line 126 | skipping to change at line 126 | |||
#define F30 12 | #define F30 12 | |||
#define F31 13 | #define F31 13 | |||
#define F32 14 | #define F32 14 | |||
#define F33 15 | #define F33 15 | |||
/** | /** | |||
Inversion for a 4x4 matrix | Inversion for a 4x4 matrix | |||
*/ | */ | |||
template <class MatrixRep> | template <class MatrixRep> | |||
bool Inverter<4>::Dinv(MatrixRep & rhs) { | bool FastInverter<4>::Dinv(MatrixRep & rhs) { | |||
typedef typename MatrixRep::value_type Scalar; | typedef typename MatrixRep::value_type Scalar; | |||
// check matrix sizes ?? | // check matrix sizes ?? | |||
// Scalar * pM = rhs.Array(); | // Scalar * pM = rhs.Array(); | |||
// Find all NECESSARY 2x2 dets: (18 of them) | // Find all NECESSARY 2x2 dets: (18 of them) | |||
const Scalar det2_12_01 = rhs[F10]*rhs[F21] - rhs[F11]*rhs[F20]; | const Scalar det2_12_01 = rhs[F10]*rhs[F21] - rhs[F11]*rhs[F20]; | |||
skipping to change at line 267 | skipping to change at line 267 | |||
#define M40 20 | #define M40 20 | |||
#define M41 21 | #define M41 21 | |||
#define M42 22 | #define M42 22 | |||
#define M43 23 | #define M43 23 | |||
#define M44 24 | #define M44 24 | |||
/** | /** | |||
Inversion for a 5x5 matrix | Inversion for a 5x5 matrix | |||
*/ | */ | |||
template <class MatrixRep> | template <class MatrixRep> | |||
bool Inverter<5>::Dinv(MatrixRep & rhs) { | bool FastInverter<5>::Dinv(MatrixRep & rhs) { | |||
typedef typename MatrixRep::value_type Scalar; | typedef typename MatrixRep::value_type Scalar; | |||
// check matrix sizes ?? | // check matrix sizes ?? | |||
// Scalar * pM = rhs.Array(); | // Scalar * pM = rhs.Array(); | |||
// Find all NECESSARY 2x2 dets: (30 of them) | // Find all NECESSARY 2x2 dets: (30 of them) | |||
const Scalar det2_23_01 = rhs[M20]*rhs[M31] - rhs[M21]*rhs[M30]; | const Scalar det2_23_01 = rhs[M20]*rhs[M31] - rhs[M21]*rhs[M30]; | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
CramerInversionSym.icc | CramerInversionSym.icc | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: CramerInversionSym.icc 22041 2008-02-07 13:41:22Z moneta $ | // @(#)root/smatrix:$Id: CramerInversionSym.icc 26866 2008-12-12 10:50:07Z moneta $ | |||
// Authors: L. Moneta 2005 | // Authors: L. Moneta 2005 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2005 , LCG ROOT MathLib Team * | * Copyright (c) 2005 , LCG ROOT MathLib Team * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// | // | |||
// Cramer optmized inversion for symmetric matrices up to size 5x5. | // Cramer optmized inversion for symmetric matrices up to size 5x5. | |||
skipping to change at line 33 | skipping to change at line 33 | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
//========================================================================= ===== | //========================================================================= ===== | |||
/** | /** | |||
Inversion for a 3x3 symmetric matrix | Inversion for a 3x3 symmetric matrix | |||
*/ | */ | |||
template <class T> | template <class T> | |||
bool Inverter<3>::Dinv(MatRepSym<T,3> & rhs) { | bool FastInverter<3>::Dinv(MatRepSym<T,3> & rhs) { | |||
typedef T Scalar; | typedef T Scalar; | |||
// check matrix sizes ?? | // check matrix sizes ?? | |||
const Scalar c00 = rhs[4] * rhs[8] - rhs[5] * rhs[5]; | const Scalar c00 = rhs[4] * rhs[8] - rhs[5] * rhs[5]; | |||
const Scalar c01 = rhs[5] * rhs[2] - rhs[1] * rhs[8]; | const Scalar c01 = rhs[5] * rhs[2] - rhs[1] * rhs[8]; | |||
const Scalar c02 = rhs[1] * rhs[5] - rhs[4] * rhs[2]; | const Scalar c02 = rhs[1] * rhs[5] - rhs[4] * rhs[2]; | |||
const Scalar c11 = rhs[8] * rhs[0] - rhs[2] * rhs[2]; | const Scalar c11 = rhs[8] * rhs[0] - rhs[2] * rhs[2]; | |||
const Scalar c12 = rhs[2] * rhs[1] - rhs[5] * rhs[0]; | const Scalar c12 = rhs[2] * rhs[1] - rhs[5] * rhs[0]; | |||
skipping to change at line 116 | skipping to change at line 116 | |||
#define SF30 3 | #define SF30 3 | |||
#define SF31 7 | #define SF31 7 | |||
#define SF32 11 | #define SF32 11 | |||
#define SF33 15 | #define SF33 15 | |||
/** | /** | |||
Inversion for a 4x4 symmetric matrix | Inversion for a 4x4 symmetric matrix | |||
*/ | */ | |||
template <class T> | template <class T> | |||
bool Inverter<4>::Dinv(MatRepSym<T,4> & rhs) { | bool FastInverter<4>::Dinv(MatRepSym<T,4> & rhs) { | |||
typedef T Scalar; | typedef T Scalar; | |||
// Find all NECESSARY 2x2 dets: (14 of them) | // Find all NECESSARY 2x2 dets: (14 of them) | |||
const Scalar mDet2_12_01 = rhs[SF10]*rhs[SF21] - rhs[SF11]*rhs[SF20]; | const Scalar mDet2_12_01 = rhs[SF10]*rhs[SF21] - rhs[SF11]*rhs[SF20]; | |||
const Scalar mDet2_12_02 = rhs[SF10]*rhs[SF22] - rhs[SF12]*rhs[SF20]; | const Scalar mDet2_12_02 = rhs[SF10]*rhs[SF22] - rhs[SF12]*rhs[SF20]; | |||
const Scalar mDet2_12_12 = rhs[SF11]*rhs[SF22] - rhs[SF12]*rhs[SF21]; | const Scalar mDet2_12_12 = rhs[SF11]*rhs[SF22] - rhs[SF12]*rhs[SF21]; | |||
const Scalar mDet2_13_01 = rhs[SF10]*rhs[SF31] - rhs[SF11]*rhs[SF30]; | const Scalar mDet2_13_01 = rhs[SF10]*rhs[SF31] - rhs[SF11]*rhs[SF30]; | |||
const Scalar mDet2_13_02 = rhs[SF10]*rhs[SF32] - rhs[SF12]*rhs[SF30]; | const Scalar mDet2_13_02 = rhs[SF10]*rhs[SF32] - rhs[SF12]*rhs[SF30]; | |||
skipping to change at line 231 | skipping to change at line 231 | |||
#define SM40 4 | #define SM40 4 | |||
#define SM41 9 | #define SM41 9 | |||
#define SM42 14 | #define SM42 14 | |||
#define SM43 19 | #define SM43 19 | |||
#define SM44 24 | #define SM44 24 | |||
/** | /** | |||
Inversion for a 5x5 symmetric matrix | Inversion for a 5x5 symmetric matrix | |||
*/ | */ | |||
template <class T> | template <class T> | |||
bool Inverter<5>::Dinv(MatRepSym<T,5> & rhs) { | bool FastInverter<5>::Dinv(MatRepSym<T,5> & rhs) { | |||
typedef T Scalar; | typedef T Scalar; | |||
// Find all NECESSARY 2x2 dets: (25 of them) | // Find all NECESSARY 2x2 dets: (25 of them) | |||
const Scalar mDet2_23_01 = rhs[SM20]*rhs[SM31] - rhs[SM21]*rhs[SM30]; | const Scalar mDet2_23_01 = rhs[SM20]*rhs[SM31] - rhs[SM21]*rhs[SM30]; | |||
const Scalar mDet2_23_02 = rhs[SM20]*rhs[SM32] - rhs[SM22]*rhs[SM30]; | const Scalar mDet2_23_02 = rhs[SM20]*rhs[SM32] - rhs[SM22]*rhs[SM30]; | |||
const Scalar mDet2_23_03 = rhs[SM20]*rhs[SM33] - rhs[SM23]*rhs[SM30]; | const Scalar mDet2_23_03 = rhs[SM20]*rhs[SM33] - rhs[SM23]*rhs[SM30]; | |||
const Scalar mDet2_23_12 = rhs[SM21]*rhs[SM32] - rhs[SM22]*rhs[SM31]; | const Scalar mDet2_23_12 = rhs[SM21]*rhs[SM32] - rhs[SM22]*rhs[SM31]; | |||
const Scalar mDet2_23_13 = rhs[SM21]*rhs[SM33] - rhs[SM23]*rhs[SM31]; | const Scalar mDet2_23_13 = rhs[SM21]*rhs[SM33] - rhs[SM23]*rhs[SM31]; | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
DataMbr.h | DataMbr.h | |||
---|---|---|---|---|
skipping to change at line 35 | skipping to change at line 35 | |||
* | * | |||
* | * | |||
*********************************************************************/ | *********************************************************************/ | |||
class | class | |||
#ifndef __CINT__ | #ifndef __CINT__ | |||
G__EXPORT | G__EXPORT | |||
#endif | #endif | |||
G__DataMemberInfo { | G__DataMemberInfo { | |||
public: | public: | |||
~G__DataMemberInfo() {} | ~G__DataMemberInfo() {} | |||
G__DataMemberInfo(): handle(0), index(0), belongingclass(NULL), type() | G__DataMemberInfo(); | |||
{ Init(); } | G__DataMemberInfo(const G__DataMemberInfo& dmi); | |||
G__DataMemberInfo(const G__DataMemberInfo& dmi): | G__DataMemberInfo(class G__ClassInfo &a); | |||
handle(dmi.handle), index(dmi.index), belongingclass(dmi.belongingclass | G__DataMemberInfo& operator=(const G__DataMemberInfo& dmi); | |||
), | ||||
type(dmi.type) {} | ||||
G__DataMemberInfo(class G__ClassInfo &a): handle(0), index(0), belongingc | ||||
lass(NULL), type() | ||||
{ Init(a); } | ||||
G__DataMemberInfo& operator=(const G__DataMemberInfo& dmi) { | ||||
handle=dmi.handle; index=dmi.index; belongingclass=dmi.belongingclass; | ||||
type=dmi.type; return *this;} | ||||
void Init(); | void Init(); | |||
void Init(class G__ClassInfo &a); | void Init(class G__ClassInfo &a); | |||
void Init(long handlinin,long indexin,G__ClassInfo *belongingclassin); | void Init(long handlinin,long indexin,G__ClassInfo *belongingclassin); | |||
long Handle() { return(handle); } | long Handle() { return(handle); } | |||
int Index() { return ((int)index); } | int Index() { return ((int)index); } | |||
const char *Name() ; | const char *Name(); | |||
const char *Title() ; | const char *Title(); | |||
G__TypeInfo* Type() { return(&type); } | G__TypeInfo* Type(); | |||
long Property(); | long Property(); | |||
long Offset() ; | long Offset() ; | |||
int Bitfield(); | int Bitfield(); | |||
int ArrayDim() ; | int ArrayDim() ; | |||
int MaxIndex(int dim) ; | int MaxIndex(int dim) ; | |||
G__ClassInfo* MemberOf() { return(belongingclass); } | G__ClassInfo* MemberOf(); | |||
void SetGlobalcomp(int globalcomp); | void SetGlobalcomp(int globalcomp); | |||
int IsValid(); | int IsValid(); | |||
int SetFilePos(const char* fname); | int SetFilePos(const char* fname); | |||
int Next(); | int Next(); | |||
int Prev(); | int Prev(); | |||
enum error_code { VALID, NOT_INT, NOT_DEF, IS_PRIVATE, UNKNOWN }; | enum error_code { VALID, NOT_INT, NOT_DEF, IS_PRIVATE, UNKNOWN }; | |||
const char *ValidArrayIndex(int *errnum = 0, char **errstr = 0); | const char *ValidArrayIndex(int *errnum = 0, char **errstr = 0); | |||
const char *FileName(); | const char *FileName(); | |||
End of changes. 3 change blocks. | ||||
16 lines changed or deleted | 8 lines changed or added | |||
Dinv.h | Dinv.h | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: Dinv.h 22041 2008-02-07 13:41:22Z moneta $ | // @(#)root/smatrix:$Id: Dinv.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Authors: T. Glebe, L. Moneta 2005 | // Authors: T. Glebe, L. Moneta 2005 | |||
#ifndef ROOT_Math_Dinv | #ifndef ROOT_Math_Dinv | |||
#define ROOT_Math_Dinv | #define ROOT_Math_Dinv | |||
// ******************************************************************** | // ******************************************************************** | |||
// | // | |||
// source: | // source: | |||
// | // | |||
// type: source code | // type: source code | |||
// | // | |||
skipping to change at line 43 | skipping to change at line 43 | |||
#include "Math/Dfactir.h" | #include "Math/Dfactir.h" | |||
#include "Math/Dfinv.h" | #include "Math/Dfinv.h" | |||
#include "Math/Dsinv.h" | #include "Math/Dsinv.h" | |||
#endif | #endif | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
/** | /** | |||
Matrix Inverter class (generic class used for matrix sizes larger than 6x6) | Matrix Inverter class | |||
Class to specialize calls to Dinv. Dinv computes the inverse of a squar e | Class to specialize calls to Dinv. Dinv computes the inverse of a squar e | |||
matrix if dimension idim and order n. The content of the matrix will be | matrix if dimension idim and order n. The content of the matrix will be | |||
replaced by its inverse. In case the inversion fails, the matrix conten t is | replaced by its inverse. In case the inversion fails, the matrix conten t is | |||
destroyed. Invert specializes Dinv by the matrix order. E.g. if the ord er | destroyed. Invert specializes Dinv by the matrix order. E.g. if the ord er | |||
of the matrix is two, the routine Inverter<2> is called which implement s | of the matrix is two, the routine Inverter<2> is called which implement s | |||
Cramers rule. | Cramers rule. | |||
@author T. Glebe | @author T. Glebe | |||
*/ | */ | |||
//========================================================================= ===== | //========================================================================= ===== | |||
skipping to change at line 143 | skipping to change at line 143 | |||
static int DfinvMatrix(MatRepStd<T,idim,n> & rhs, unsigned int * work); | static int DfinvMatrix(MatRepStd<T,idim,n> & rhs, unsigned int * work); | |||
/** | /** | |||
Bunch-Kaufman method for inversion of symmetric matrices | Bunch-Kaufman method for inversion of symmetric matrices | |||
*/ | */ | |||
template <class T> | template <class T> | |||
static void InvertBunchKaufman(MatRepSym<T,idim> & rhs, int &ifail); | static void InvertBunchKaufman(MatRepSym<T,idim> & rhs, int &ifail); | |||
}; // class Inverter | }; // class Inverter | |||
// fast inverter class using Cramer inversion | ||||
// by default use other default inversion | ||||
/** | ||||
Fast Matrix Inverter class | ||||
Class to specialize calls to Dinv. Dinv computes the inverse of a squar | ||||
e | ||||
matrix if dimension idim and order n. The content of the matrix will be | ||||
replaced by its inverse. In case the inversion fails, the matrix conten | ||||
t is | ||||
destroyed. Invert specializes Dinv by the matrix order. E.g. if the ord | ||||
er | ||||
of the matrix is less than 5 , the class implements | ||||
Cramers rule. | ||||
Be careful that for matrix with high condition the accuracy of the Cram | ||||
er rule is much poorer | ||||
@author L. Moneta | ||||
*/ | ||||
template <unsigned int idim, unsigned int n = idim> | ||||
class FastInverter { | ||||
public: | ||||
/// | ||||
template <class MatrixRep> | ||||
static bool Dinv(MatrixRep& rhs) { | ||||
return Inverter<idim,n>::Dinv(rhs); | ||||
} | ||||
template <class T> | ||||
static bool Dinv(MatRepSym<T,idim> & rhs) { | ||||
return Inverter<idim,n>::Dinv(rhs); | ||||
} | ||||
}; | ||||
/** Inverter<0>. | /** Inverter<0>. | |||
In case of zero order, do nothing. | In case of zero order, do nothing. | |||
@author T. Glebe | @author T. Glebe | |||
*/ | */ | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// Inverter<0> | // Inverter<0> | |||
//========================================================================= ===== | //========================================================================= ===== | |||
template <> | template <> | |||
class Inverter<0> { | class Inverter<0> { | |||
skipping to change at line 237 | skipping to change at line 265 | |||
rhs[1] = -s * rhs[1]; | rhs[1] = -s * rhs[1]; | |||
rhs[2] = s * rhs[0]; | rhs[2] = s * rhs[0]; | |||
rhs[0] = c11; | rhs[0] = c11; | |||
return true; | return true; | |||
} | } | |||
}; | }; | |||
/** | /** | |||
3x3 direct matrix inversion | 3x3 direct matrix inversion suing Cramer Rule | |||
@author T. Glebe | use only for FastInverter | |||
*/ | */ | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// Inverter<3> | // FastInverter<3> | |||
//========================================================================= ===== | //========================================================================= ===== | |||
template <> | template <> | |||
class Inverter<3> { | class FastInverter<3> { | |||
public: | public: | |||
/// | /// | |||
// use Cramer Rule | // use Cramer Rule | |||
template <class MatrixRep> | template <class MatrixRep> | |||
static bool Dinv(MatrixRep& rhs); | static bool Dinv(MatrixRep& rhs); | |||
template <class T> | template <class T> | |||
static bool Dinv(MatRepSym<T,3> & rhs); | static bool Dinv(MatRepSym<T,3> & rhs); | |||
}; | }; | |||
/** | /** | |||
4x4 matrix inversion using Cramers rule. | 4x4 matrix inversion using Cramers rule. | |||
*/ | */ | |||
template <> | template <> | |||
class Inverter<4> { | class FastInverter<4> { | |||
public: | public: | |||
/// | /// | |||
template <class MatrixRep> | template <class MatrixRep> | |||
static bool Dinv(MatrixRep& rhs); | static bool Dinv(MatrixRep& rhs); | |||
template <class T> | template <class T> | |||
static bool Dinv(MatRepSym<T,4> & rhs); | static bool Dinv(MatRepSym<T,4> & rhs); | |||
}; | }; | |||
/** | /** | |||
5x5 Matrix inversion using Cramers rule. | 5x5 Matrix inversion using Cramers rule. | |||
*/ | */ | |||
template <> | template <> | |||
class Inverter<5> { | class FastInverter<5> { | |||
public: | public: | |||
/// | /// | |||
template <class MatrixRep> | template <class MatrixRep> | |||
static bool Dinv(MatrixRep& rhs); | static bool Dinv(MatrixRep& rhs); | |||
template <class T> | template <class T> | |||
static bool Dinv(MatRepSym<T,5> & rhs); | static bool Dinv(MatRepSym<T,5> & rhs); | |||
}; | }; | |||
End of changes. 8 change blocks. | ||||
8 lines changed or deleted | 40 lines changed or added | |||
FitConfig.h | FitConfig.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: FitConfig.h 25486 2008-09-22 12:43:03Z moneta $ | // @(#)root/mathcore:$Id: FitConfig.h 26508 2008-11-28 14:22:29Z moneta $ | |||
// Author: L. Moneta Thu Sep 21 16:21:29 2006 | // Author: L. Moneta Thu Sep 21 16:21:29 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 FitConfig | // Header file for class FitConfig | |||
skipping to change at line 117 | skipping to change at line 117 | |||
#ifndef __CINT__ // this method fails on Windows | #ifndef __CINT__ // this method fails on Windows | |||
/** | /** | |||
set all the minimizer options using class MinimizerOptions | set all the minimizer options using class MinimizerOptions | |||
*/ | */ | |||
void SetMinimizerOptions(const ROOT::Math::MinimizerOptions & minopt); | void SetMinimizerOptions(const ROOT::Math::MinimizerOptions & minopt); | |||
#endif | #endif | |||
/** | /** | |||
set minimizer type | set minimizer type | |||
*/ | */ | |||
void SetMinimizer(const std::string & type, std::string algo = "") { | void SetMinimizer(const char * type, const char * algo = 0) { | |||
fMinimizerType = type; | if (type) fMinimizerType = type; | |||
fMinimAlgoType = algo; | if (algo) fMinimAlgoType = algo; | |||
} | } | |||
/** | /** | |||
return type of minimizer package | return type of minimizer package | |||
*/ | */ | |||
const std::string & MinimizerType() const { return fMinimizerType; } | const std::string & MinimizerType() const { return fMinimizerType; } | |||
/** | /** | |||
return type of minimizer algorithms | return type of minimizer algorithms | |||
*/ | */ | |||
skipping to change at line 157 | skipping to change at line 157 | |||
///set parabolic erros | ///set parabolic erros | |||
void SetParabErrors(bool on) { fParabErrors = on; } | void SetParabErrors(bool on) { fParabErrors = on; } | |||
///set Minos erros | ///set Minos erros | |||
void SetMinosErrors(bool on) { fMinosErrors = on; } | void SetMinosErrors(bool on) { fMinosErrors = on; } | |||
/** | /** | |||
static function to control default minimizer type and algorithm | static function to control default minimizer type and algorithm | |||
*/ | */ | |||
static void SetDefaultMinimizer(const std::string & type, const std::str ing & algo = ""); | static void SetDefaultMinimizer(const char * type, const char * algo = 0 ); | |||
protected: | protected: | |||
private: | private: | |||
bool fNormErrors; // flag for error normalization | bool fNormErrors; // flag for error normalization | |||
bool fParabErrors; // get correct parabolic errors estimate (call Hess e after minimizing) | bool fParabErrors; // get correct parabolic errors estimate (call Hess e after minimizing) | |||
bool fMinosErrors; // do full error analysis using Minos | bool fMinosErrors; // do full error analysis using Minos | |||
std::vector<ROOT::Fit::ParameterSettings> fSettings; // vector with the parameter settings | std::vector<ROOT::Fit::ParameterSettings> fSettings; // vector with the parameter settings | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
FitResult.h | FitResult.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: FitResult.h 26014 2008-10-29 16:37:28Z moneta $ | // @(#)root/mathcore:$Id: FitResult.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: L. Moneta Wed Aug 30 11:05:34 2006 | // Author: L. Moneta Wed Aug 30 11:05:34 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 FitResult | // Header file for class FitResult | |||
skipping to change at line 62 | skipping to change at line 62 | |||
typedef ROOT::Math::IParamMultiFunction IModelFunction; | typedef ROOT::Math::IParamMultiFunction IModelFunction; | |||
/** | /** | |||
Default constructor for an empty (non valid) fit result | Default constructor for an empty (non valid) fit result | |||
*/ | */ | |||
FitResult (); | FitResult (); | |||
/** | /** | |||
Construct from a Minimizer instance | Construct from a Minimizer instance | |||
*/ | */ | |||
FitResult(ROOT::Math::Minimizer & min, const FitConfig & fconfig, IModel Function * f, bool isValid, unsigned int sizeOfData = 0, bool binFit = true , const ROOT::Math::IMultiGenFunction * chi2func = 0, bool minosErr = false , unsigned int ncalls = 0); | FitResult(ROOT::Math::Minimizer & min, const FitConfig & fconfig, const IModelFunction * f, bool isValid, unsigned int sizeOfData = 0, bool binFit = true, const ROOT::Math::IMultiGenFunction * chi2func = 0, bool minosErr = false, unsigned int ncalls = 0); | |||
/** | /** | |||
Copy constructor. | Copy constructor. | |||
*/ | */ | |||
FitResult(const FitResult &); | FitResult(const FitResult &); | |||
/** | /** | |||
Assignment operator | Assignment operator | |||
*/ | */ | |||
FitResult & operator = (const FitResult & rhs); | FitResult & operator = (const FitResult & rhs); | |||
/** | /** | |||
Destructor (no operations) | Destructor | |||
*/ | */ | |||
~FitResult () {} | ~FitResult (); | |||
public: | public: | |||
/** minimization quantities **/ | /** minimization quantities **/ | |||
/// minimizer type | /// minimizer type | |||
const std::string & MinimizerType() const { return fMinimType; } | const std::string & MinimizerType() const { return fMinimType; } | |||
/// True if fit successful, otherwise false. | /// True if fit successful, otherwise false. | |||
bool IsValid() const { return fValid; } | bool IsValid() const { return fValid; } | |||
skipping to change at line 271 | skipping to change at line 271 | |||
bool fValid; // flag for indicating valid fit | bool fValid; // flag for indicating valid fit | |||
bool fNormalized; // flag for indicating is errors are normalized | bool fNormalized; // flag for indicating is errors are normalized | |||
unsigned int fNFree; // number of fit free parameters (total paramet ers are in size of parameter vector) | unsigned int fNFree; // number of fit free parameters (total paramet ers are in size of parameter vector) | |||
unsigned int fNdf; // number of degree of freedom | unsigned int fNdf; // number of degree of freedom | |||
unsigned int fNCalls; // number of function calls | unsigned int fNCalls; // number of function calls | |||
int fStatus; // minimizer status code | int fStatus; // minimizer status code | |||
double fVal; // minimum function value | double fVal; // minimum function value | |||
double fEdm; // expected distance from mimimum | double fEdm; // expected distance from mimimum | |||
double fChi2; // fit chi2 value (different than fval in case of chi2 fits) | double fChi2; // fit chi2 value (different than fval in case of chi2 fits) | |||
IModelFunction * fFitFunc; // model function result of the fit. It is gi ven by Fitter but it is managed by FitResult | IModelFunction * fFitFunc; // model function resulting from the fit. It is given by Fitter but it is managed by FitResult | |||
std::vector<unsigned int> fFixedParams; // list of fixed parameters | std::vector<unsigned int> fFixedParams; // list of fixed parameters | |||
std::vector<unsigned int> fBoundParams; // list of limited parameters | std::vector<unsigned int> fBoundParams; // list of limited parameters | |||
std::vector<double> fParams; // parameter values. Size is total number of parameters | std::vector<double> fParams; // parameter values. Size is total number of parameters | |||
std::vector<double> fErrors; // errors | std::vector<double> fErrors; // errors | |||
std::vector<double> fCovMatrix; // covariance matrix (size is n par*(npar+1)/2) where npar is total parameters | std::vector<double> fCovMatrix; // covariance matrix (size is n par*(npar+1)/2) where npar is total parameters | |||
std::vector<double> fGlobalCC; // global Correlation coefficie nt | std::vector<double> fGlobalCC; // global Correlation coefficie nt | |||
std::vector<std::pair<double,double> > fMinosErrors; // vector contain s the two Minos errors | std::vector<std::pair<double,double> > fMinosErrors; // vector contain s the two Minos errors | |||
std::string fMinimType; // string indicating type of minimizer | std::string fMinimType; // string indicating type of minimi | |||
zer | ||||
std::vector<std::string> fParNames; // parameter names (only with FCN o | ||||
nly fites, when fFitFunc=0) | ||||
}; | }; | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_FitResult */ | #endif /* ROOT_Fit_FitResult */ | |||
End of changes. 6 change blocks. | ||||
6 lines changed or deleted | 9 lines changed or added | |||
Fitter.h | Fitter.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Fitter.h 25529 2008-09-25 09:53:11Z moneta $ | // @(#)root/mathcore:$Id: Fitter.h 26866 2008-12-12 10:50: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 38 | skipping to change at line 38 | |||
#endif | #endif | |||
#ifndef ROOT_Fit_FitResult | #ifndef ROOT_Fit_FitResult | |||
#include "Fit/FitResult.h" | #include "Fit/FitResult.h" | |||
#endif | #endif | |||
#ifndef ROOT_Math_IParamFunctionfwd | #ifndef ROOT_Math_IParamFunctionfwd | |||
#include "Math/IParamFunctionfwd.h" | #include "Math/IParamFunctionfwd.h" | |||
#endif | #endif | |||
#include <memory> | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
class Minimizer; | class Minimizer; | |||
} | } | |||
/** | /** | |||
Namespace for the fitting classes | Namespace for the fitting classes | |||
@ingroup Fit | @ingroup Fit | |||
*/ | */ | |||
skipping to change at line 91 | skipping to change at line 93 | |||
/** | /** | |||
Default constructor | Default constructor | |||
*/ | */ | |||
Fitter (); | Fitter (); | |||
/** | /** | |||
Destructor | Destructor | |||
*/ | */ | |||
~Fitter (); | ~Fitter (); | |||
private: | ||||
/** | /** | |||
Copy constructor | Copy constructor (disabled, class is not copyable) | |||
*/ | */ | |||
Fitter(const Fitter &); | Fitter(const Fitter &); | |||
/** | /** | |||
Assignment operator | Assignment operator (disabled, class is not copyable) | |||
*/ | */ | |||
Fitter & operator = (const Fitter & rhs); | Fitter & operator = (const Fitter & rhs); | |||
public: | public: | |||
/** | /** | |||
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> | |||
skipping to change at line 146 | 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 given FCN function. Give optionally initial parameter v | fit using the given FCN function represented by a multi-dimensional f | |||
alues and data size to get Ndf. If parameters are not given it is assumed | unction interface | |||
that the parameter settings are used | (ROOT::Math::IMultiGenFunction). | |||
Give optionally initial the parameter values and data size to have th | ||||
e fit Ndf correctly | ||||
set in the FitResult. | ||||
If the parameters values are not given (parameter pointers=0) the | ||||
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 | ||||
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 gradient FCN function. Give also initial paramete | Fit using the given FCN function representing a multi-dimensional gra | |||
r values and data size to get Ndf | dient function | |||
interface (ROOT::Math::IMultiGradFunction). In this case the minimize | ||||
r will use the | ||||
gradient information provided by the function. | ||||
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 187 | skipping to change at line 211 | |||
*/ | */ | |||
void SetFunction(const IGradModelFunction & func); | void SetFunction(const IGradModelFunction & func); | |||
/** | /** | |||
Set the fitted function from 1D gradient parametric function interfac e | Set the fitted function from 1D gradient parametric function interfac e | |||
*/ | */ | |||
void SetFunction(const IGradModel1DFunction & func); | void SetFunction(const IGradModel1DFunction & func); | |||
/** | /** | |||
get fit result | get fit result | |||
*/ | */ | |||
const FitResult & Result() const { return fResult; } | const FitResult & Result() const { | |||
assert( fResult.get() ); | ||||
return *fResult; | ||||
} | ||||
/** | /** | |||
access to the fit configuration (const method) | access to the fit configuration (const method) | |||
*/ | */ | |||
const FitConfig & Config() const { return fConfig; } | const FitConfig & Config() const { return fConfig; } | |||
/** | /** | |||
access to the configuration (non const method) | access to the configuration (non const method) | |||
*/ | */ | |||
FitConfig & Config() { return fConfig; } | FitConfig & Config() { return fConfig; } | |||
/** | ||||
query if fit is binned. In cse of false teh fit can be unbinned | ||||
or is not defined (like in case of fitting through a ::FitFCN) | ||||
*/ | ||||
bool IsBinFit() const { return fBinFit; } | ||||
/** | ||||
return pointer to last used minimizer | ||||
(is NULL in case fit is not yet done) | ||||
This pointer will be valid as far as the data, the objective function | ||||
and the fitter class have not been deleted. | ||||
To be used only after fitting. | ||||
*/ | ||||
ROOT::Math::Minimizer * GetMinimizer() { return fMinimizer.get(); } | ||||
/** | ||||
return pointer to last used objective function | ||||
(is NULL in case fit is not yet done) | ||||
This pointer will be valid as far as the data and the fitter class | ||||
have not been deleted. To be used after the fitting | ||||
*/ | ||||
ROOT::Math::IMultiGenFunction * GetFCN() { return fObjFunction.get(); } | ||||
protected: | protected: | |||
/// least square fit | /// least square fit | |||
bool DoLeastSquareFit(const BinData & data); | bool DoLeastSquareFit(const BinData & data); | |||
/// binned likelihood fit | /// binned likelihood fit | |||
bool DoLikelihoodFit(const BinData & data); | bool DoLikelihoodFit(const BinData & data); | |||
/// un-binned likelihood fit | /// un-binned likelihood fit | |||
bool DoLikelihoodFit(const UnBinData & data); | bool DoLikelihoodFit(const UnBinData & data); | |||
/// linear least square fit | /// linear least square fit | |||
bool DoLinearFit(const BinData & data); | bool DoLinearFit(const BinData & data); | |||
/// do minimization | /// do minimization | |||
template<class ObjFunc> | template<class ObjFunc> | |||
bool DoMinimization(ROOT::Math::Minimizer & min, const ObjFunc & f, unsi gned int dataSize, const ROOT::Math::IMultiGenFunction * chifunc = 0); | bool DoMinimization(const ObjFunc & f, unsigned int dataSize, const ROOT ::Math::IMultiGenFunction * chifunc = 0); | |||
private: | private: | |||
bool fUseGradient; // flag to indicate if using gradient or not | bool fUseGradient; // flag to indicate if using gradient or not | |||
IModelFunction * fFunc; // copy of the fitted function containing on o utput the fit result | bool fBinFit; // flag to indicate if fit is binned (in case o f false the fit is unbinned or undefined) | |||
FitResult fResult; // object containing the result of the fit | IModelFunction * fFunc; // copy of the fitted function containing on o utput the fit result (managed by FitResult) | |||
FitConfig fConfig; // fitter configuration (options and parameter settings) | FitConfig fConfig; // fitter configuration (options and parameter settings) | |||
std::auto_ptr<ROOT::Fit::FitResult> fResult; //! pointer to the object | ||||
containing the result of the fit | ||||
std::auto_ptr<ROOT::Math::Minimizer> fMinimizer; //! pointer to used m | ||||
inimizer | ||||
std::auto_ptr<ROOT::Math::IMultiGenFunction> fObjFunction; //! pointer | ||||
to used objective function | ||||
}; | }; | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
// implementation of inline methods | ||||
#ifndef __CINT__ | ||||
#ifndef ROOT_Math_WrappedFunction | ||||
#include "Math/WrappedFunction.h" | ||||
#endif | ||||
template<class Function> | ||||
bool ROOT::Fit::Fitter::FitFCN(unsigned int npar, Function f, const double | ||||
* par, unsigned int datasize) { | ||||
ROOT::Math::WrappedMultiFunction<Function> wf(f,npar); | ||||
return FitFCN(wf,par,datasize); | ||||
} | ||||
#endif // endif __CINT__ | ||||
#endif /* ROOT_Fit_Fitter */ | #endif /* ROOT_Fit_Fitter */ | |||
End of changes. 16 change blocks. | ||||
12 lines changed or deleted | 95 lines changed or added | |||
GSLMinimizer.h | GSLMinimizer.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLMinimizer.h 25486 2008-09-22 12:43:03Z moneta $ | // @(#)root/mathmore:$Id: GSLMinimizer.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: L. Moneta Wed Oct 18 11:48:00 2006 | // Author: L. Moneta Wed Oct 18 11:48:00 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 139 | skipping to change at line 139 | |||
#ifdef LATER | #ifdef LATER | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
/// set upper/lower limited variable (override if minimizer supports the m ) | /// set upper/lower limited variable (override if minimizer supports the m ) | |||
virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | |||
#endif | #endif | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int ivar, double val ); | ||||
/// set the values of all existing variables (array must be dimensioned | ||||
to the size of existing parameters) | ||||
virtual bool SetVariableValues(const double * x); | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fMinVal; } | virtual double MinValue() const { return fMinVal; } | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const { return 0; } // not impl. } | virtual double Edm() const { return 0; } // not impl. } | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
GSLNLSMinimizer.h | GSLNLSMinimizer.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLNLSMinimizer.h 25486 2008-09-22 12:43:03Z mone ta $ | // @(#)root/mathmore:$Id: GSLNLSMinimizer.h 26866 2008-12-12 10:50: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 191 | skipping to change at line 191 | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
/// set upper/lower limited variable (override if minimizer supports the m ) | /// set upper/lower limited variable (override if minimizer supports the m ) | |||
virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | |||
#endif | #endif | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int ivar, double val ); | ||||
/// set the values of all existing variables (array must be dimensioned | ||||
to the size of existing parameters) | ||||
virtual bool SetVariableValues(const double * x); | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fMinVal; } | virtual double MinValue() const { return fMinVal; } | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const { return 0; } // not impl. } | virtual double Edm() const { return 0; } // not impl. } | |||
/// return pointer to X values at the minimum | /// return pointer to X values at the minimum | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
GSLSimAnMinimizer.h | GSLSimAnMinimizer.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: GSLSimAnMinimizer.h 23619 2008-04-30 15:25:15Z mo neta $ | // @(#)root/mathmore:$Id: GSLSimAnMinimizer.h 26866 2008-12-12 10:50:07Z 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 114 | skipping to change at line 114 | |||
#ifdef LATER | #ifdef LATER | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
/// set upper/lower limited variable (override if minimizer supports the m ) | /// set upper/lower limited variable (override if minimizer supports the m ) | |||
virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | |||
#endif | #endif | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int ivar, double val ); | ||||
/// set the values of all existing variables (array must be dimensioned | ||||
to the size of the existing parameters) | ||||
virtual bool SetVariableValues(const double * x); | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fMinVal; } | virtual double MinValue() const { return fMinVal; } | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const { return 0; } // not impl. } | virtual double Edm() const { return 0; } // not impl. } | |||
/// return pointer to X values at the minimum | /// return pointer to X values at the minimum | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
G__ci.h | G__ci.h | |||
---|---|---|---|---|
skipping to change at line 896 | skipping to change at line 896 | |||
}; | }; | |||
/************************************************************************** | /************************************************************************** | |||
* struct of internal data | * struct of internal data | |||
* | * | |||
**************************************************************************/ | **************************************************************************/ | |||
struct G__DUMMY_FOR_CINT7 { | struct G__DUMMY_FOR_CINT7 { | |||
void* fTypeName; | void* fTypeName; | |||
unsigned int fModifiers; | unsigned int fModifiers; | |||
}; | }; | |||
#ifdef __cplusplus | ||||
struct G__value { | ||||
#else | ||||
typedef struct { | typedef struct { | |||
#endif | ||||
union { | union { | |||
double d; | double d; | |||
long i; /* used to be int */ | long i; /* used to be int */ | |||
#if defined(G__PRIVATE_GVALUE) && !defined(_WINDOWS) | #if defined(G__PRIVATE_GVALUE) && !defined(_WINDOWS) | |||
#if defined(private) && defined(ROOT_RVersion) | #if defined(private) && defined(ROOT_RVersion) | |||
#define G__alt_private private | #define G__alt_private private | |||
#undef private | #undef private | |||
#endif | #endif | |||
private: | private: | |||
#endif | #endif | |||
skipping to change at line 939 | skipping to change at line 943 | |||
#define private public | #define private public | |||
#endif | #endif | |||
#endif | #endif | |||
int type; | int type; | |||
int tagnum; | int tagnum; | |||
int typenum; | int typenum; | |||
#ifndef G__OLDIMPLEMENTATION1259 | #ifndef G__OLDIMPLEMENTATION1259 | |||
G__SIGNEDCHAR_T isconst; | G__SIGNEDCHAR_T isconst; | |||
#endif | #endif | |||
struct G__DUMMY_FOR_CINT7 dummyForCint7; | struct G__DUMMY_FOR_CINT7 dummyForCint7; | |||
} G__value ; | #ifdef __cplusplus | |||
} | ||||
#else | ||||
} G__value | ||||
#endif | ||||
; | ||||
/************************************************************************** | /************************************************************************** | |||
* reference type argument for precompiled function | * reference type argument for precompiled function | |||
**************************************************************************/ | **************************************************************************/ | |||
#define G__Mfloat(buf) (buf.obj.fl=(float)G__double(buf)) | #define G__Mfloat(buf) (buf.obj.fl=(float)G__double(buf)) | |||
#define G__Mdouble(buf) buf.obj.d | #define G__Mdouble(buf) buf.obj.d | |||
#define G__Mchar(buf) (buf.obj.ch=(char)buf.obj.i) | #define G__Mchar(buf) (buf.obj.ch=(char)buf.obj.i) | |||
#define G__Mshort(buf) (buf.obj.sh=(short)buf.obj.i) | #define G__Mshort(buf) (buf.obj.sh=(short)buf.obj.i) | |||
#define G__Mint(buf) (buf.obj.in=(int)buf.obj.i) | #define G__Mint(buf) (buf.obj.in=(int)buf.obj.i) | |||
#define G__Mlong(buf) buf.obj.i | #define G__Mlong(buf) buf.obj.i | |||
skipping to change at line 1096 | skipping to change at line 1105 | |||
#define G__RETURN_IMMEDIATE 2 | #define G__RETURN_IMMEDIATE 2 | |||
#define G__RETURN_TRY -1 | #define G__RETURN_TRY -1 | |||
#define G__RETURN_EXIT1 4 | #define G__RETURN_EXIT1 4 | |||
#define G__RETURN_EXIT2 5 | #define G__RETURN_EXIT2 5 | |||
/************************************************************************** | /************************************************************************** | |||
* struct declaration to avoid error (compiler dependent) | * struct declaration to avoid error (compiler dependent) | |||
**************************************************************************/ | **************************************************************************/ | |||
struct G__ifunc_table; | struct G__ifunc_table; | |||
struct G__var_array; | struct G__var_array; | |||
struct G__dictposition; // decl in Api.h because of Cint7's having C++ cont | ||||
/********************************************************************* | ent | |||
* scratch upto dictionary position | ||||
*********************************************************************/ | ||||
struct G__dictposition { | ||||
/* global variable table position */ | ||||
struct G__var_array *var; | ||||
int ig15; | ||||
/* struct tagnum */ | ||||
int tagnum; | ||||
/* const string table */ | ||||
struct G__ConstStringList *conststringpos; | ||||
/* typedef table */ | ||||
int typenum; | ||||
/* global function table position */ | ||||
struct G__ifunc_table *ifunc; | ||||
int ifn; | ||||
/* include path */ | ||||
struct G__includepath *ipath; | ||||
/* shared library file */ | ||||
int allsl; | ||||
/* preprocessfilekey */ | ||||
struct G__Preprocessfilekey *preprocessfilekey; | ||||
/* input file */ | ||||
int nfile; | ||||
/* macro table */ | ||||
struct G__Deffuncmacro *deffuncmacro; | ||||
/* template class */ | ||||
struct G__Definedtemplateclass *definedtemplateclass; | ||||
/* function template */ | ||||
struct G__Definetemplatefunc *definedtemplatefunc; | ||||
char* ptype; /* struct,union,enum,class */ | ||||
}; | ||||
/************************************************************************** | /************************************************************************** | |||
* comment information | * comment information | |||
* | * | |||
**************************************************************************/ | **************************************************************************/ | |||
struct G__comment_info { | struct G__comment_info { | |||
union { | union { | |||
char *com; | char *com; | |||
fpos_t pos; | fpos_t pos; | |||
} p; | } p; | |||
skipping to change at line 1669 | skipping to change at line 1645 | |||
#endif | #endif | |||
extern G__EXPORT void G__SetUseCINTSYSDIR G__P((int UseCINTSYSDIR)); | 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__SetCINTSYSDIR G__P((char* cintsysdir)); | |||
extern G__EXPORT void G__set_eolcallback G__P((void* eolcallback)); | 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 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__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 void G__SetCatchException G__P((int mode)); | |||
extern G__EXPORT int G__GetCatchException G__P((void)); | extern G__EXPORT int G__GetCatchException G__P((void)); | |||
extern G__EXPORT int G__Lsizeof G__P((const char *typenamein)); | ||||
#ifdef G__ASM_WHOLEFUNC | #ifdef G__ASM_WHOLEFUNC | |||
/************************************************************************** | /************************************************************************** | |||
* Interface method to run bytecode function | * 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)); | extern G__EXPORT int G__exec_bytecode G__P((G__value *result7,G__CONST char *funcname,struct G__param *libp,int hash)); | |||
#endif | #endif | |||
/************************************************************************** | /************************************************************************** | |||
* Exported Cint API functions | * Exported Cint API functions | |||
End of changes. 5 change blocks. | ||||
35 lines changed or deleted | 13 lines changed or added | |||
HFitInterface.h | HFitInterface.h | |||
---|---|---|---|---|
// @(#)root/hist:$Id: HFitInterface.h 25876 2008-10-18 09:35:00Z moneta $ | // @(#)root/hist:$Id: HFitInterface.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: L. Moneta Thu Aug 31 10:40:20 2006 | // Author: L. Moneta Thu Aug 31 10:40:20 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 TH1Interface | // Header file for class HFitInterface | |||
// set of free functions used to couple the ROOT data object with the fitti | ||||
ng classes | ||||
// avoid including this file when running CINT since free functions cannot | ||||
be re-defined | ||||
#if !defined(__CINT__) || defined(__MAKECINT__) | ||||
#ifndef ROOT_HFitInterface | #ifndef ROOT_HFitInterface | |||
#define ROOT_HFitInterface | #define ROOT_HFitInterface | |||
class TH1; | class TH1; | |||
class TF1; | class TF1; | |||
class TF2; | class TF2; | |||
class TGraph; | class TGraph; | |||
class TGraphErrors; | class TGraphErrors; | |||
class TGraph2D; | class TGraph2D; | |||
skipping to change at line 67 | skipping to change at line 71 | |||
fitting function for a TGraph2D (called from TGraph2D::Fit) | fitting function for a TGraph2D (called from TGraph2D::Fit) | |||
*/ | */ | |||
int FitObject(TGraph2D * gr, TF1 *f1 , Foption_t & option , const ROO T::Math::MinimizerOptions & moption, const char *goption, ROOT::Fit::DataRa nge & range); | int FitObject(TGraph2D * gr, TF1 *f1 , Foption_t & option , const ROO T::Math::MinimizerOptions & moption, const char *goption, ROOT::Fit::DataRa nge & range); | |||
#endif | #endif | |||
/** | /** | |||
fit an unbin data set (from tree or from histogram buffer) | fit an unbin data set (from tree or from histogram buffer) | |||
using a TF1 pointer and fit options. | using a TF1 pointer and fit options. | |||
N.B. ownership of fit data is passed to the UnBinFit function whi ch will be responsible of | N.B. ownership of fit data is passed to the UnBinFit function whi ch will be responsible of | |||
deleting the data after the fit. User calling this function MUST NOT delete UnBinData after | deleting the data after the fit. User calling this function MUST NOT delete UnBinData after | |||
calling it | calling it. | |||
*/ | */ | |||
int UnBinFit(ROOT::Fit::UnBinData * data, TF1 * f1 , Foption_t & opti on , const ROOT::Math::MinimizerOptions & moption); | int UnBinFit(ROOT::Fit::UnBinData * data, TF1 * f1 , Foption_t & opti on , const ROOT::Math::MinimizerOptions & moption); | |||
/** | /** | |||
fill the data vector from a TH1. Pass also the TF1 function which is | fill the data vector from a TH1. Pass also the TF1 function which is | |||
needed in case of integral option and to reject points rejected b y the function | needed in case of integral option and to reject points rejected b y the function | |||
*/ | */ | |||
void FillData ( BinData & dv, const TH1 * hist, TF1 * func = 0); | void FillData ( BinData & dv, const TH1 * hist, TF1 * func = 0); | |||
/** | /** | |||
skipping to change at line 111 | skipping to change at line 115 | |||
/** | /** | |||
compute confidence intervals at level cl for a fitted histogram h1 in a TGraphErrors gr | compute confidence intervals at level cl for a fitted histogram h1 in a TGraphErrors gr | |||
*/ | */ | |||
bool GetConfidenceIntervals(const TH1 * h1, const ROOT::Fit::FitResul t & r, TGraphErrors * gr, double cl = 0.95); | bool GetConfidenceIntervals(const TH1 * h1, const ROOT::Fit::FitResul t & r, TGraphErrors * gr, double cl = 0.95); | |||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_TH1Interface */ | #endif /* ROOT_Fit_TH1Interface */ | |||
#endif /* not CINT OR MAKE_CINT */ | ||||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 9 lines changed or added | |||
HybridCalculator.h | HybridCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: HybridCalculator.h 26434 2008-11-24 21:29:32Z mon eta $ | // @(#)root/roostats:$Id: HybridCalculator.h 26964 2008-12-16 16:30:01Z mon eta $ | |||
/************************************************************************* | /************************************************************************* | |||
* Project: RooStats * | * Project: RooStats * | |||
* Package: RooFit/RooStats * | * Package: RooFit/RooStats * | |||
* Authors: * | * Authors: * | |||
* Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke * | * Kyle Cranmer, Lorenzo Moneta, Gregory Schott, Wouter Verkerke * | |||
************************************************************************* | ************************************************************************* | |||
* Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2008, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
skipping to change at line 25 | skipping to change at line 25 | |||
#ifndef ROOSTATS_HybridCalculator | #ifndef ROOSTATS_HybridCalculator | |||
#define ROOSTATS_HybridCalculator | #define ROOSTATS_HybridCalculator | |||
#ifndef ROOSTATS_HypoTestCalculator | #ifndef ROOSTATS_HypoTestCalculator | |||
#include "RooStats/HypoTestCalculator.h" | #include "RooStats/HypoTestCalculator.h" | |||
#endif | #endif | |||
#include <vector> | #include <vector> | |||
#include "TH1.h" | #ifndef ROOSTATS_HypoTestResult | |||
#include "RooStats/HybridResult.h" | #include "RooStats/HybridResult.h" | |||
#endif | ||||
class TH1; | ||||
namespace RooStats { | namespace RooStats { | |||
class HybridCalculator : /*public HypoTestCalculator ,*/ public TNamed { | class HybridCalculator : public HypoTestCalculator , public TNamed { | |||
public: | public: | |||
/// Constructor with only name and title | ||||
HybridCalculator(const char *name = 0, | ||||
const char *title = 0); | ||||
/// Constructor for HybridCalculator | /// Constructor for HybridCalculator | |||
HybridCalculator(const char *name, | HybridCalculator(const char *name, | |||
const char *title, | const char *title, | |||
RooAbsPdf& sb_model, | RooAbsPdf& sb_model, | |||
RooAbsPdf& b_model, | RooAbsPdf& b_model, | |||
RooArgList& observables, | RooArgList& observables, | |||
RooArgSet& nuisance_parameters, | RooArgSet& nuisance_parameters, | |||
RooAbsPdf& prior_pdf); | RooAbsPdf& prior_pdf); | |||
/// Constructor for HybridCalculator using a data set and pdf instan | ||||
ces | ||||
HybridCalculator(RooAbsData& data, | ||||
RooAbsPdf& sb_model, | ||||
RooAbsPdf& b_model, | ||||
RooArgSet* nuisance_parameters, | ||||
RooAbsPdf* prior_pdf); | ||||
/// Constructor for HybridCalculator using name, title, a data set an | ||||
d pdf instances | ||||
HybridCalculator(const char *name, | ||||
const char *title, | ||||
RooAbsData& data, | ||||
RooAbsPdf& sb_model, | ||||
RooAbsPdf& b_model, | ||||
RooArgSet* nuisance_parameters, | ||||
RooAbsPdf* prior_pdf); | ||||
private: // not yet available | ||||
/// Constructor for HybridCalculator using name, title, a workspace a | ||||
nd pdf names | ||||
HybridCalculator(RooWorkspace & wks, | ||||
const char* data, | ||||
const char* sb_model, | ||||
const char* b_model, | ||||
RooArgSet* nuisance_parameters, | ||||
const char* prior_pdf); | ||||
/// Constructor for HybridCalculator using name, title, a workspace a | ||||
nd pdf names | ||||
HybridCalculator(const char *name, | ||||
const char *title, | ||||
RooWorkspace & wks, | ||||
const char* data, | ||||
const char* sb_model, | ||||
const char* b_model, | ||||
RooArgSet* nuisance_parameters, | ||||
const char* prior_pdf); | ||||
public: | ||||
/// Destructor of HybridCalculator | /// Destructor of HybridCalculator | |||
virtual ~HybridCalculator(); | virtual ~HybridCalculator(); | |||
/// inherited methods from HypoTestCalculanterface | ||||
virtual HybridResult* GetHypoTest() const; | ||||
// inherited setter methods from HypoTestCalculator | ||||
private: | ||||
// set a workspace that owns all the necessary components for the ana | ||||
lysis | ||||
virtual void SetWorkspace(RooWorkspace& ws); | ||||
// set the PDF for the null hypothesis (only B) | ||||
virtual void SetNullPdf(const char* name) { fBModelName = name; } | ||||
// set the PDF for the alternate hypothesis (S+B) | ||||
virtual void SetAlternatePdf(const char* name ) { fSbModelName = name | ||||
;} | ||||
// set a common PDF for both the null and alternate hypotheses | ||||
virtual void SetCommonPdf(const char* name) {fSbModelName = name; } | ||||
public: | ||||
// Set a common PDF for both the null and alternate | ||||
virtual void SetCommonPdf(RooAbsPdf & pdf) { fSbModel = &pdf; } | ||||
// Set the PDF for the null (only B) | ||||
virtual void SetNullPdf(RooAbsPdf& pdf) { fBModel = &pdf; } | ||||
// Set the PDF for the alternate hypothesis ( i.e. S+B) | ||||
virtual void SetAlternatePdf(RooAbsPdf& pdf) { fSbModel = &pdf; } | ||||
// specify the name of the dataset in the workspace to be used | ||||
virtual void SetData(const char* name) { fDataName = name; } | ||||
// Set the DataSet, add to the the workspace if not already there | ||||
virtual void SetData(RooAbsData& data) { fData = &data; } | ||||
// set parameter values for the null if using a common PDF | ||||
virtual void SetNullParameters(RooArgSet& ) { } // not needed | ||||
// set parameter values for the alternate if using a common PDF | ||||
virtual void SetAlternateParameters(RooArgSet&) {} // not needed | ||||
// additional methods specific for HybridCalculator | ||||
// set a prior pdf for the nuisance parameters | ||||
void SetNuisancePdf(RooAbsPdf & prior_pdf) { | ||||
fPriorPdf = &prior_pdf; | ||||
fUsePriorPdf = true; // if set by default turn it on | ||||
} | ||||
// set name of a prior pdf for the nuisance parameters in the previo | ||||
usly given workspace | ||||
void SetNuisancePdf(const char * name) { | ||||
fPriorPdfName = name; | ||||
fUsePriorPdf = true; // if set by default turn it on | ||||
} | ||||
// set the nuisance parameters to be marginalized | ||||
void SetNuisanceParameters(RooArgSet & params) { fParameters = ¶m | ||||
s; } | ||||
// set number of toy MC | ||||
void SetNumberOfToys(unsigned int ntoys) { fNToys = ntoys; } | ||||
// control use of the pdf for the nuisance parameter and marginalize | ||||
them | ||||
void UseNuisance(bool on = true) { fUsePriorPdf = on; } | ||||
void SetTestStatistics(int index); | void SetTestStatistics(int index); | |||
HybridResult* Calculate(TH1& data, unsigned int nToys, bool usePriors | ||||
); | HybridResult* Calculate(TH1& data, unsigned int nToys, bool usePriors | |||
HybridResult* Calculate(RooTreeData& data, unsigned int nToys, bool u | ) const; | |||
sePriors); | HybridResult* Calculate(RooTreeData& data, unsigned int nToys, bool u | |||
HybridResult* Calculate(unsigned int nToys, bool usePriors); | sePriors) const; | |||
void PrintMore(const char* options); | HybridResult* Calculate(unsigned int nToys, bool usePriors) const; | |||
void PrintMore(const char* options) const; | ||||
private: | private: | |||
void RunToys(std::vector<double>& bVals, std::vector<double>& sbVals, | void RunToys(std::vector<double>& bVals, std::vector<double>& sbVals, | |||
unsigned int nToys, bool usePriors); | unsigned int nToys, bool usePriors) const; | |||
// check input parameters before performing the calculation | ||||
bool DoCheckInputs() const; | ||||
// initialize all the data and pdf by using a workspace as input | ||||
bool DoInitializeFromWS(); | ||||
RooAbsPdf& fSbModel; // The pdf of the signal+background model | ||||
RooAbsPdf& fBModel; // The pdf of the background model | ||||
RooArgList& fObservables; // Collection of the observables of the mod | ||||
el | ||||
RooArgSet& fParameters; // Collection of the nuisance parameters in t | ||||
he model | ||||
RooAbsPdf& fPriorPdf; // Prior PDF of the nuisance parameters | ||||
unsigned int fTestStatisticsIdx; // Index of the test statistics to u se | unsigned int fTestStatisticsIdx; // Index of the test statistics to u se | |||
unsigned int fNToys; // number of Toys MC | ||||
bool fUsePriorPdf; // use a prior for nuisance paramet | ||||
ers | ||||
RooAbsPdf* fSbModel; // The pdf of the signal+background model | ||||
RooAbsPdf* fBModel; // The pdf of the background model | ||||
mutable RooArgList* fObservables; // Collection of the observables of | ||||
the model | ||||
RooArgSet* fParameters; // Collection of the nuisance parameters in t | ||||
he model | ||||
RooAbsPdf* fPriorPdf; // Prior PDF of the nuisance parameters | ||||
RooAbsData * fData; // pointer to the data sets | ||||
//bool fOwnsWorkspace; // flag indicating if calculator manages th | ||||
e workspace | ||||
RooWorkspace * fWS; // a workspace that owns all the components t | ||||
o be used by the calculator | ||||
TString fSbModelName; // name of pdf of the signal+background model | ||||
TString fBModelName; // name of pdf of the background model | ||||
TString fPriorPdfName; // name of pdf of the background model | ||||
TString fDataName; // name of the dataset in the workspace | ||||
protected: | protected: | |||
ClassDef(HybridCalculator,1) // Hypothesis test calculator using a B ayesian-frequentist hybrid method | ClassDef(HybridCalculator,1) // Hypothesis test calculator using a B ayesian-frequentist hybrid method | |||
}; | }; | |||
} | } | |||
#endif | #endif | |||
End of changes. 11 change blocks. | ||||
19 lines changed or deleted | 148 lines changed or added | |||
HypoTestCalculator.h | HypoTestCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: HypoTestCalculator.h 26434 2008-11-24 21:29:32Z m oneta $ | // @(#)root/roostats:$Id: HypoTestCalculator.h 26964 2008-12-16 16:30:01Z 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_HypoTestCalculator | #ifndef ROOSTATS_HypoTestCalculator | |||
skipping to change at line 68 | skipping to change at line 68 | |||
// Concrete implementations should have a constructor like: | // Concrete implementations should have a constructor like: | |||
// HypoTestCalculator(RooWorkspace*, RooAbsData*,RooAbsPdf*, RooAbsPd f*, RooArgSet*, RooArgSet*) | // HypoTestCalculator(RooWorkspace*, RooAbsData*,RooAbsPdf*, RooAbsPd f*, RooArgSet*, RooArgSet*) | |||
// Concrete implementations should have a constructor like: | // Concrete implementations should have a constructor like: | |||
// HypoTestCalculator(RooAbsData*,RooAbsPdf*, RooAbsPdf*, RooArgSet*, RooArgSet*) | // HypoTestCalculator(RooAbsData*,RooAbsPdf*, RooAbsPdf*, RooArgSet*, RooArgSet*) | |||
virtual ~HypoTestCalculator() {} | virtual ~HypoTestCalculator() {} | |||
// main interface to get a HypoTestResult, pure virtual | // main interface to get a HypoTestResult, pure virtual | |||
virtual HypoTestResult* GetHypoTest() const = 0; | virtual HypoTestResult* GetHypoTest() const = 0; | |||
// Initialize the calculator from a given data set, a null pdf and an | ||||
alternate pdf. | ||||
// The null parameters and alternate parameters can be optionally pas | ||||
sed otherwise by default | ||||
// the parameters of the pdf's will be used. | ||||
// In addition, one can give optionally a nuisance pdf with nuisance | ||||
parameters to be marginalized | ||||
virtual void Initialize(RooAbsData & data, RooAbsPdf & nullPdf, RooAb | ||||
sPdf & alternatePdf, | ||||
RooArgSet * nullParameters = 0, RooArgSet * a | ||||
lternateParameters = 0, | ||||
RooArgSet * nuisanceParameters = 0, RooAbsPdf | ||||
* nuisancePdf = 0 ) { | ||||
SetData(data); | ||||
SetNullPdf(nullPdf); | ||||
SetAlternatePdf(alternatePdf); | ||||
if (nullParameters) SetNullParameters(*nullParameters); | ||||
if (alternateParameters) SetAlternateParameters(*alternateParamete | ||||
rs); | ||||
if (nuisanceParameters) SetNuisanceParameters(*nuisanceParameters) | ||||
; | ||||
if (nuisancePdf) SetNuisancePdf(*nuisancePdf); | ||||
} | ||||
// Initialize the calculator from a given data set and a common pdf | ||||
for null and alternate hypothesis. | ||||
// In this case the null parameters and alternate parameters must be | ||||
given. | ||||
// In addition, one can give optionally a nuisance pdf with nuisance | ||||
parameters to be marginalized | ||||
virtual void Initialize(RooAbsData & data, RooAbsPdf & commonPdf, | ||||
RooArgSet & nullParameters, RooArgSet & alter | ||||
nateParameters, | ||||
RooArgSet * nuisanceParameters = 0, RooAbsPdf | ||||
* nuisancePdf = 0 ) { | ||||
Initialize(data, commonPdf, commonPdf, &nullParameters, &alternate | ||||
Parameters, nuisanceParameters, nuisancePdf); | ||||
} | ||||
// Initialize the calculator from a workspace and names for the data | ||||
set, | ||||
// the null pdf and the alternate pdf. | ||||
// The null parameters and alternate parameters can be optionally pas | ||||
sed otherwise by default | ||||
// the parameters of the pdf's will be used. | ||||
// In addition, one can give optionally a nuisance pdf with nuisance | ||||
parameters to be marginalized | ||||
virtual void Initialize(RooWorkspace & ws, const char * data, const c | ||||
har * nullPdf, const char * alternatePdf, | ||||
RooArgSet * nullParameters = 0, RooArgSet * a | ||||
lternateParameters = 0, | ||||
RooArgSet * nuisanceParameters = 0, const cha | ||||
r * nuisancePdf = 0 ) { | ||||
SetWorkspace(ws); | ||||
SetData(data); | ||||
SetNullPdf(nullPdf); | ||||
SetAlternatePdf(alternatePdf); | ||||
if (nullParameters) SetNullParameters(*nullParameters); | ||||
if (alternateParameters) SetAlternateParameters(*alternateParamete | ||||
rs); | ||||
if (nuisanceParameters) SetNuisanceParameters(*nuisanceParameters) | ||||
; | ||||
if (nuisancePdf) SetNuisancePdf(nuisancePdf); | ||||
} | ||||
// Initialize the calculator from a workspace and names for the data | ||||
set and a common pdf | ||||
// for both the null and the alternate hypothesis. | ||||
// In this case the null parameters and alternate parameters must be | ||||
given. | ||||
// In addition, one can give optionally a nuisance pdf with nuisance | ||||
parameters to be marginalized | ||||
virtual void Initialize(RooWorkspace & ws, const char * data, const c | ||||
har * commonPdf, | ||||
RooArgSet & nullParameters, RooArgSet & alter | ||||
nateParameters, | ||||
RooArgSet * nuisanceParameters = 0, const cha | ||||
r * nuisancePdf = 0 ) { | ||||
Initialize(ws, data, commonPdf, commonPdf, &nullParameters, &alter | ||||
nateParameters, nuisanceParameters, nuisancePdf); | ||||
} | ||||
// set a workspace that owns all the necessary components for the ana lysis | // set a workspace that owns all the necessary components for the ana lysis | |||
virtual void SetWorkspace(RooWorkspace* ws) = 0; | virtual void SetWorkspace(RooWorkspace& ws) = 0; | |||
// set the PDF for the null hypothesis | // set the PDF for the null hypothesis | |||
virtual void SetNullPdf(const char* name) = 0; | virtual void SetNullPdf(const char* name) = 0; | |||
// set the PDF for the alternate hypothesis | // set the PDF for the alternate hypothesis | |||
virtual void SetAlternatePdf(const char* name) = 0; | virtual void SetAlternatePdf(const char* name) = 0; | |||
// set a common PDF for both the null and alternate hypotheses | // set a common PDF for both the null and alternate hypotheses | |||
virtual void SetCommonPdf(const char* name) = 0; | virtual void SetCommonPdf(const char* name) { | |||
SetNullPdf(name); | ||||
SetAlternatePdf(name); | ||||
} | ||||
// Set a common PDF for both the null and alternate, add to the the w orkspace if not already there | // Set a common PDF for both the null and alternate, add to the the w orkspace if not already there | |||
virtual void SetCommonPdf(RooAbsPdf* pdf) = 0; | virtual void SetCommonPdf(RooAbsPdf& pdf) { | |||
SetNullPdf(pdf); | ||||
SetAlternatePdf(pdf); | ||||
} | ||||
// Set the PDF for the null, add to the the workspace if not already there | // Set the PDF for the null, add to the the workspace if not already there | |||
virtual void SetNullPdf(RooAbsPdf* pdf) = 0; | virtual void SetNullPdf(RooAbsPdf& pdf) = 0; | |||
// Set the PDF for the alternate hypothesis, add to the the workspace if not already there | // Set the PDF for the alternate hypothesis, add to the the workspace if not already there | |||
virtual void SetAlternatePdf(RooAbsPdf* pdf) = 0; | virtual void SetAlternatePdf(RooAbsPdf& pdf) = 0; | |||
// specify the name of the dataset in the workspace to be used | // specify the name of the dataset in the workspace to be used | |||
virtual void SetData(const char* name) = 0; | virtual void SetData(const char* name) = 0; | |||
// Set the DataSet, add to the the workspace if not already there | // Set the DataSet, add to the the workspace if not already there | |||
virtual void SetData(RooAbsData* data) = 0; | virtual void SetData(RooAbsData& data) = 0; | |||
// set parameter values for the null if using a common PDF | // set parameter values for the null if using a common PDF | |||
virtual void SetNullParameters(RooArgSet*) = 0; | virtual void SetNullParameters(RooArgSet&) = 0; | |||
// set parameter values for the alternate if using a common PDF | // set parameter values for the alternate if using a common PDF | |||
virtual void SetAlternateParameters(RooArgSet*) = 0; | virtual void SetAlternateParameters(RooArgSet&) = 0; | |||
// set the pdf name for an auxillary measurement of the nuisance whic | ||||
h will be marginalized by the calculator | ||||
// needs to be implemented by the derived class only if this feature | ||||
is supported | ||||
virtual void SetNuisancePdf(const char * ) {} | ||||
// set the pdf for an auxillary measurement which will be marginalize | ||||
d by the calculator | ||||
// needs to be implemented by the derived class only if this feature | ||||
is supported | ||||
virtual void SetNuisancePdf(RooAbsPdf &) {} | ||||
// set the parameters for the constraned pdf which will be marginali | ||||
zed by the calculator | ||||
// needs to be implemented by the derived class if this feature is su | ||||
pported | ||||
virtual void SetNuisanceParameters(RooArgSet &) {} | ||||
protected: | protected: | |||
ClassDef(HypoTestCalculator,1) // Interface for tools doing hypothes is tests | ClassDef(HypoTestCalculator,1) // Interface for tools doing hypothes is tests | |||
}; | }; | |||
} | } | |||
#endif | #endif | |||
End of changes. 10 change blocks. | ||||
9 lines changed or deleted | 115 lines changed or added | |||
IntervalCalculator.h | IntervalCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: IntervalCalculator.h 26324 2008-11-20 17:17:32Z m oneta $ | // @(#)root/roostats:$Id: IntervalCalculator.h 26964 2008-12-16 16:30:01Z 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_IntervalCalculator | #ifndef ROOSTATS_IntervalCalculator | |||
skipping to change at line 72 | skipping to change at line 72 | |||
virtual ~IntervalCalculator() {} | virtual ~IntervalCalculator() {} | |||
// Main interface to get a ConfInterval, pure virtual | // Main interface to get a ConfInterval, pure virtual | |||
virtual ConfInterval* GetInterval() const = 0; | virtual ConfInterval* GetInterval() const = 0; | |||
// 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 = 0; | virtual Double_t Size() const = 0; | |||
// Get the Confidence level for the test | // Get the Confidence level for the test | |||
virtual Double_t ConfidenceLevel() const = 0; | virtual Double_t ConfidenceLevel() const = 0; | |||
// set a workspace that owns all the necessary components for the ana lysis | // set a workspace that owns all the necessary components for the ana lysis | |||
virtual void SetWorkspace(RooWorkspace* ws) = 0; | virtual void SetWorkspace(RooWorkspace& ws) = 0; | |||
// Set the DataSet, add to the the workspace if not already there | // Set the DataSet, add to the the workspace if not already there | |||
virtual void SetData(RooAbsData*) = 0; | virtual void SetData(RooAbsData&) = 0; | |||
// Set the Pdf, add to the the workspace if not already there | // Set the Pdf, add to the the workspace if not already there | |||
virtual void SetPdf(RooAbsPdf*) = 0; | virtual void SetPdf(RooAbsPdf&) = 0; | |||
// specify the name of the dataset in the workspace to be used | // specify the name of the dataset in the workspace to be used | |||
virtual void SetData(const char* name) = 0; | virtual void SetData(const char* name) = 0; | |||
// 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) = 0; | virtual void SetPdf(const char* name) = 0; | |||
// specify the parameters of interest in the interval | // specify the parameters of interest in the interval | |||
virtual void SetParameters(RooArgSet*) = 0; | virtual void SetParameters(RooArgSet&) = 0; | |||
// specify the nuisance parameters (eg. the rest of the parameters) | // specify the nuisance parameters (eg. the rest of the parameters) | |||
virtual void SetNuisanceParameters(RooArgSet*) = 0; | virtual void SetNuisanceParameters(RooArgSet&) = 0; | |||
// 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 SetSize(Double_t size) = 0; | virtual void SetSize(Double_t size) = 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) = 0; | virtual void SetConfidenceLevel(Double_t cl) = 0; | |||
protected: | protected: | |||
ClassDef(IntervalCalculator,1) // Interface for tools setting limit s (producing confidence intervals) | ClassDef(IntervalCalculator,1) // Interface for tools setting limit s (producing confidence intervals) | |||
}; | }; | |||
} | } | |||
End of changes. 6 change blocks. | ||||
6 lines changed or deleted | 6 lines changed or added | |||
LogLikelihoodFCN.h | LogLikelihoodFCN.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: LogLikelihoodFCN.h 26014 2008-10-29 16:37:28Z mon eta $ | // @(#)root/mathcore:$Id: LogLikelihoodFCN.h 26541 2008-12-01 10:00:52Z mon eta $ | |||
// 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 156 | skipping to change at line 156 | |||
const UnBinData & fData; | const UnBinData & fData; | |||
mutable IModelFunction & fFunc; | mutable IModelFunction & fFunc; | |||
mutable unsigned int fNEffPoints; // number of effective points used in the fit | mutable unsigned int fNEffPoints; // number of effective points used in the fit | |||
mutable std::vector<double> fGrad; // for derivatives | mutable std::vector<double> fGrad; // for derivatives | |||
}; | }; | |||
// define useful typedef's | ||||
typedef LogLikelihoodFCN<ROOT::Math::IMultiGenFunction> LogLikelihoo | ||||
dFunction; | ||||
typedef LogLikelihoodFCN<ROOT::Math::IMultiGradFunction> LogLikelihoo | ||||
dGradFunction; | ||||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_LogLikelihoodFCN */ | #endif /* ROOT_Fit_LogLikelihoodFCN */ | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
MatrixInversion.icc | MatrixInversion.icc | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: MatrixInversion.icc 23735 2008-05-07 21:18:33Z mon eta $ | // @(#)root/smatrix:$Id: MatrixInversion.icc 26866 2008-12-12 10:50:07Z mon eta $ | |||
// Authors: CLHEP authors, L. Moneta 2006 | // Authors: CLHEP authors, L. Moneta 2006 | |||
#include "Math/SVector.h" | ||||
#include <limits> | ||||
#ifndef ROOT_Math_MatrixInversion_icc | #ifndef ROOT_Math_MatrixInversion_icc | |||
#define ROOT_Math_MatrixInversion_icc | #define ROOT_Math_MatrixInversion_icc | |||
#include "Math/SVector.h" | ||||
#include <limits> | ||||
// inversion algorithms for matrices | // inversion algorithms for matrices | |||
// taken from CLHEP (L. Moneta May 2006) | // taken from CLHEP (L. Moneta May 2006) | |||
namespace ROOT { | namespace ROOT { | |||
namespace Math { | namespace Math { | |||
/** General Inversion for a symmetric matrix | /** General Inversion for a symmetric matrix | |||
Bunch-Kaufman diagonal pivoting method | Bunch-Kaufman diagonal pivoting method | |||
It is decribed in J.R. Bunch, L. Kaufman (1977). | It is decribed in J.R. Bunch, L. Kaufman (1977). | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
Member.h | Member.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: Member.h 26193 2008-11-14 14:12:27Z axel $ | // @(#)root/reflex:$Id: Member.h 26631 2008-12-03 15:50:16Z 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-2006, All rights reserved. | |||
// | // | |||
// Permission to use, copy, modify, and distribute this software for any | // Permission to use, copy, modify, and distribute this software for any | |||
// purpose is hereby granted without fee, provided that this copyright and | // purpose is hereby granted without fee, provided that this copyright and | |||
// permissions notice appear in all copies and derivatives. | // permissions notice appear in all copies and derivatives. | |||
// | // | |||
// This software is provided "as is" without express or implied warranty. | // This software is provided "as is" without express or implied warranty. | |||
skipping to change at line 434 | skipping to change at line 434 | |||
Reverse_Type_Iterator TemplateArgument_RBegin() const; | Reverse_Type_Iterator TemplateArgument_RBegin() const; | |||
Reverse_Type_Iterator TemplateArgument_REnd() const; | Reverse_Type_Iterator TemplateArgument_REnd() const; | |||
/** | /** | |||
* TemplateFamily returns the corresponding MemberTemplate if any | * TemplateFamily returns the corresponding MemberTemplate if any | |||
* @return corresponding MemberTemplate | * @return corresponding MemberTemplate | |||
*/ | */ | |||
MemberTemplate TemplateFamily() const; | MemberTemplate TemplateFamily() const; | |||
/** | /** | |||
* ToMemberBase returns the underlying, internal MemberBase | ||||
* @return memberbase pointer | ||||
*/ | ||||
MemberBase* ToMemberBase() const; | ||||
/** | ||||
* TypeOf returns the member type | * TypeOf returns the member type | |||
* @return member type | * @return member type | |||
*/ | */ | |||
Type TypeOf() const; | Type TypeOf() const; | |||
/** | /** | |||
* UpdateFunctionParameterNames updates the names of parameters | * UpdateFunctionParameterNames updates the names of parameters | |||
* @param parameters new list of ';' separated parameter names, must not specify default values | * @param parameters new list of ';' separated parameter names, must not specify default values | |||
*/ | */ | |||
void UpdateFunctionParameterNames(const char* parameters); | void UpdateFunctionParameterNames(const char* parameters); | |||
skipping to change at line 899 | skipping to change at line 905 | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline Reflex::MemberTemplate Reflex::Member::TemplateFamily() const { | inline Reflex::MemberTemplate Reflex::Member::TemplateFamily() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if ( * this ) return fMemberBase->TemplateFamily(); | if ( * this ) return fMemberBase->TemplateFamily(); | |||
return Dummy::MemberTemplate(); | return Dummy::MemberTemplate(); | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline Reflex::MemberBase* Reflex::Member::ToMemberBase() const { | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
return fMemberBase; | ||||
} | ||||
//------------------------------------------------------------------------- | ||||
------ | ||||
inline Reflex::Type Reflex::Member::TypeOf() const { | inline Reflex::Type Reflex::Member::TypeOf() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if ( *this ) return fMemberBase->TypeOf(); | if ( *this ) return fMemberBase->TypeOf(); | |||
return Dummy::Type(); | return Dummy::Type(); | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline void Reflex::Member::UpdateFunctionParameterNames(const char* parame ters) { | inline void Reflex::Member::UpdateFunctionParameterNames(const char* parame ters) { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
if (*this) return fMemberBase->UpdateFunctionParameterNames(parameters); | if (*this) return fMemberBase->UpdateFunctionParameterNames(parameters); | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 15 lines changed or added | |||
MemberBase.h | MemberBase.h | |||
---|---|---|---|---|
// @(#)root/reflex:$Id: MemberBase.h 26193 2008-11-14 14:12:27Z axel $ | // @(#)root/reflex:$Id: MemberBase.h 26631 2008-12-03 15:50:16Z 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-2006, All rights reserved. | |||
// | // | |||
// Permission to use, copy, modify, and distribute this software for any | // Permission to use, copy, modify, and distribute this software for any | |||
// purpose is hereby granted without fee, provided that this copyright and | // purpose is hereby granted without fee, provided that this copyright and | |||
// permissions notice appear in all copies and derivatives. | // permissions notice appear in all copies and derivatives. | |||
// | // | |||
// This software is provided "as is" without express or implied warranty. | // This software is provided "as is" without express or implied warranty. | |||
skipping to change at line 506 | skipping to change at line 506 | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline Reflex::TYPE Reflex::MemberBase::MemberType() const { | inline Reflex::TYPE Reflex::MemberBase::MemberType() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
return fMemberType; | return fMemberType; | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline std::string Reflex::MemberBase::Name( unsigned int mod ) const { | inline std::string Reflex::MemberBase::Name( unsigned int mod ) const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
std::string s = ""; | ||||
if ( 0 != ( mod & ( SCOPED | S ))) { | if ( 0 != ( mod & ( SCOPED | S ))) { | |||
s += DeclaringScope().Name( mod ); | std::string s(DeclaringScope().Name( mod )); | |||
if ( ! DeclaringScope().IsTopScope()) s += "::"; | if ( ! DeclaringScope().IsTopScope()) s += "::"; | |||
s += fName; | ||||
return s; | ||||
} | } | |||
s += fName; | return fName; | |||
return s; | ||||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline size_t Reflex::MemberBase::Offset() const { | inline size_t Reflex::MemberBase::Offset() const { | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
return 0; | return 0; | |||
} | } | |||
//------------------------------------------------------------------------- ------ | //------------------------------------------------------------------------- ------ | |||
inline size_t Reflex::MemberBase::FunctionParameterSize( bool /* required * / ) const { | inline size_t Reflex::MemberBase::FunctionParameterSize( bool /* required * / ) const { | |||
End of changes. 5 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
Minimizer.h | Minimizer.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: Minimizer.h 26014 2008-10-29 16:37:28Z moneta $ | // @(#)root/mathcore:$Id: Minimizer.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: L. Moneta Fri Sep 22 15:06:47 2006 | // Author: L. Moneta Fri Sep 22 15:06:47 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 Minimizer | // Header file for class Minimizer | |||
skipping to change at line 182 | skipping to change at line 182 | |||
return SetLimitedVariable(ivar, name, val, step, - std::numeric_limit s<double>::infinity(), upper ); | return SetLimitedVariable(ivar, name, val, step, - std::numeric_limit s<double>::infinity(), upper ); | |||
} | } | |||
/// set upper/lower limited variable (override if minimizer supports the m ) | /// set upper/lower limited variable (override if minimizer supports the m ) | |||
virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */) { | virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */) { | |||
return SetVariable(ivar, name, val, step ); | return SetVariable(ivar, name, val, step ); | |||
} | } | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int ivar , const std::string & na me , double val ) { | virtual bool SetFixedVariable(unsigned int ivar , const std::string & na me , double val ) { | |||
return SetLimitedVariable(ivar, name, val, 0., val, val); | return SetLimitedVariable(ivar, name, val, 0., val, val); | |||
} | } | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int , double ) { return false; } | ||||
/// set the values of all existing variables (array must be dimensioned | ||||
to the size of the existing parameters) | ||||
virtual bool SetVariableValues(const double * x) { | ||||
bool ret = true; | ||||
unsigned int i = 0; | ||||
while ( i <= NDim() && ret) { | ||||
SetVariableValue(i,x[i] ); i++; | ||||
} | ||||
return ret; | ||||
} | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize() = 0; | virtual bool Minimize() = 0; | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const = 0; | virtual double MinValue() const = 0; | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const = 0; | virtual double Edm() const = 0; | |||
skipping to change at line 239 | skipping to change at line 250 | |||
/** | /** | |||
return global correlation coefficient for variable i | return global correlation coefficient for variable i | |||
This is a number between zero and one which gives | This is a number between zero and one which gives | |||
the correlation between the i-th parameter and that linear combinati on of all | the correlation between the i-th parameter and that linear combinati on of all | |||
other parameters which is most strongly correlated with i. | other parameters which is most strongly correlated with i. | |||
Minimizer must overload method if implemented | Minimizer must overload method if implemented | |||
*/ | */ | |||
virtual double GlobalCC(unsigned int ) const { return -1; } | virtual double GlobalCC(unsigned int ) const { return -1; } | |||
/// minos error for variable i, return false if Minos failed or not supp | /** | |||
orted | minos error for variable i, return false if Minos failed or not suppo | |||
rted | ||||
*/ | ||||
virtual bool GetMinosError(unsigned int /* i */, double & errLow, double & errUp) { | virtual bool GetMinosError(unsigned int /* i */, double & errLow, double & errUp) { | |||
errLow = 0; errUp = 0; | errLow = 0; errUp = 0; | |||
return false; | return false; | |||
} | } | |||
/** | ||||
scan function minimum for variable i. Variable and funciton must be s | ||||
et before using Scan | ||||
Return false if an error or if minimizer does not support this funcit | ||||
onality | ||||
*/ | ||||
virtual bool Scan(unsigned int /* i */, unsigned int & /* nstep */, doub | ||||
le * /* x */, double * /* y */, | ||||
double /*xmin */ = 0, double /*xmax*/ = 0) { | ||||
return false; | ||||
} | ||||
/** | ||||
find the contour points (xi,xj) of the function for parameter i and j | ||||
around the minimum | ||||
The contour will be find for value of the function = Min + ErrorUp(); | ||||
*/ | ||||
virtual bool Contour(unsigned int /* i */, unsigned int /* j */, unsigne | ||||
d int &/* np */, | ||||
double * /* xi */, double * /* xj */) { | ||||
return false; | ||||
} | ||||
/// return reference to the objective function | /// return reference to the objective function | |||
///virtual const ROOT::Math::IGenFunction & Function() const = 0; | ///virtual const ROOT::Math::IGenFunction & Function() const = 0; | |||
/// print the result according to set level. | /// print the result according to set level (implemented for TMinuit for mantaining Minuit-style printing) | |||
virtual void PrintResults() {} | virtual void PrintResults() {} | |||
// get name of variables (override if minimizer support storing of varia ble names) | // get name of variables (override if minimizer support storing of varia ble names) | |||
//virtual std::string VariableName(unsigned int ivar) const { return "x_ " + ROOT::Math::Util::ToString(ivar); } | //virtual std::string VariableName(unsigned int ivar) const { return "x_ " + ROOT::Math::Util::ToString(ivar); } | |||
/** minimizer configuration parameters **/ | /** minimizer configuration parameters **/ | |||
/// set print level | /// set print level | |||
int PrintLevel() const { return fDebug; } | int PrintLevel() const { return fDebug; } | |||
skipping to change at line 276 | skipping to change at line 307 | |||
double Tolerance() const { return fTol; } | double Tolerance() const { return fTol; } | |||
/// strategy | /// strategy | |||
int Strategy() const { return fStrategy; } | int Strategy() const { return fStrategy; } | |||
/// status code of minimizer | /// status code of minimizer | |||
int Status() const { return fStatus; } | int Status() const { return fStatus; } | |||
/// return the statistical scale used for calculate the error | /// return the statistical scale used for calculate the error | |||
/// is typically 1 for Chi2 and 0.5 for likelihood minimization | /// is typically 1 for Chi2 and 0.5 for likelihood minimization | |||
double ErrorUp() const { return fUp; } | double ErrorDef() const { return fUp; } | |||
///return true if Minimizer has performed a detailed error validation (e .g. run Hesse for Minuit) | ///return true if Minimizer has performed a detailed error validation (e .g. run Hesse for Minuit) | |||
bool IsValidError() const { return fValidError; } | bool IsValidError() const { return fValidError; } | |||
/// set print level | /// set print level | |||
void SetPrintLevel(int level) { fDebug = level; } | void SetPrintLevel(int level) { fDebug = level; } | |||
///set maximum of function calls | ///set maximum of function calls | |||
void SetMaxFunctionCalls(unsigned int maxfcn) { if (maxfcn > 0) fMaxCall s = maxfcn; } | void SetMaxFunctionCalls(unsigned int maxfcn) { if (maxfcn > 0) fMaxCall s = maxfcn; } | |||
/// set maximum iterations (one iteration can have many function calls) | /// set maximum iterations (one iteration can have many function calls) | |||
void SetMaxIterations(unsigned int maxiter) { if (maxiter > 0) fMaxIter = maxiter; } | void SetMaxIterations(unsigned int maxiter) { if (maxiter > 0) fMaxIter = maxiter; } | |||
/// set the tolerance | /// set the tolerance | |||
void SetTolerance(double tol) { fTol = tol; } | void SetTolerance(double tol) { fTol = tol; } | |||
///set the strategy | ///set the strategy | |||
void SetStrategy(int strategyLevel) { fStrategy = strategyLevel; } | void SetStrategy(int strategyLevel) { fStrategy = strategyLevel; } | |||
/// set scale for calculating the errors | /// set scale for calculating the errors | |||
void SetErrorUp(double up) { fUp = up; } | void SetErrorDef(double up) { fUp = up; } | |||
/// flag to check if minimizer needs to perform accurate error analysis (e.g. run Hesse for Minuit) | /// flag to check if minimizer needs to perform accurate error analysis (e.g. run Hesse for Minuit) | |||
void SetValidError(bool on) { fValidError = on; } | void SetValidError(bool on) { fValidError = on; } | |||
protected: | protected: | |||
//private: | //private: | |||
// keep protected to be accessible by the derived classes | // keep protected to be accessible by the derived classes | |||
End of changes. 7 change blocks. | ||||
6 lines changed or deleted | 43 lines changed or added | |||
MinimizerOptions.h | MinimizerOptions.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: MinimizerOptions.h 25507 2008-09-23 07:54:18Z mon eta $ | // @(#)root/mathcore:$Id: MinimizerOptions.h 26508 2008-11-28 14:22:29Z mon eta $ | |||
// Author: L. Moneta Fri Aug 15 2008 | // Author: L. Moneta Fri Aug 15 2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2008 LCG ROOT Math Team, CERN/PH-SFT * | * Copyright (c) 2008 LCG ROOT Math Team, CERN/PH-SFT * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
#ifndef ROOT_Math_MinimizerOptions | #ifndef ROOT_Math_MinimizerOptions | |||
skipping to change at line 32 | skipping to change at line 32 | |||
Minimizer options | Minimizer options | |||
@ingroup MultiMin | @ingroup MultiMin | |||
*/ | */ | |||
class MinimizerOptions { | class MinimizerOptions { | |||
public: | public: | |||
// static methods for setting and retrieving the default options | // static methods for setting and retrieving the default options | |||
static void SetDefaultMinimizer(const std::string & type, const std::str ing & algo); | static void SetDefaultMinimizer(const char * type, const char * algo = 0 ); | |||
static void SetDefaultErrorDef( double up); | static void SetDefaultErrorDef( double up); | |||
static void SetDefaultTolerance(double tol); | static void SetDefaultTolerance(double tol); | |||
static void SetDefaultMaxFunctionCalls(int maxcall); | static void SetDefaultMaxFunctionCalls(int maxcall); | |||
static void SetDefaultMaxIterations(int maxiter); | static void SetDefaultMaxIterations(int maxiter); | |||
static void SetDefaultStrategy(int strat); | static void SetDefaultStrategy(int strat); | |||
static void SetDefaultPrintLevel(int level); | static void SetDefaultPrintLevel(int level); | |||
static const std::string & DefaultMinimizerType(); | static const std::string & DefaultMinimizerType(); | |||
static const std::string & DefaultMinimizerAlgo(); | static const std::string & DefaultMinimizerAlgo(); | |||
static double DefaultErrorDef(); | static double DefaultErrorDef(); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
Minuit2Minimizer.h | Minuit2Minimizer.h | |||
---|---|---|---|---|
skipping to change at line 114 | skipping to change at line 114 | |||
virtual bool SetVariable(unsigned int ivar, const std::string & name, do uble val, double step); | virtual bool SetVariable(unsigned int ivar, const std::string & name, do uble val, double step); | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
/// set upper/lower limited variable (override if minimizer supports the m ) | /// set upper/lower limited variable (override if minimizer supports the m ) | |||
virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | virtual bool SetLimitedVariable(unsigned int ivar , const std::string & name , double val , double step , double /* lower */, double /* upper */); | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | |||
/// set variable | ||||
virtual bool SetVariableValue(unsigned int ivar, double val); | ||||
virtual bool SetVariableValues(const double * val); | ||||
/// get name of variables (override if minimizer support storing of vari able names) | /// get name of variables (override if minimizer support storing of vari able names) | |||
virtual std::string VariableName(unsigned int ivar) const; | virtual std::string VariableName(unsigned int ivar) const; | |||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fState.Fval(); } | virtual double MinValue() const { return fState.Fval(); } | |||
skipping to change at line 180 | skipping to change at line 183 | |||
virtual double Correlation(unsigned int i, unsigned int j ) const; | virtual double Correlation(unsigned int i, unsigned int j ) const; | |||
/** | /** | |||
get global correlation coefficient for the variable i. This is a numb er between zero and one which gives | get global correlation coefficient for the variable i. This is a numb er between zero and one which gives | |||
the correlation between the i-th variable and that linear combinatio n of all other variables which | the correlation between the i-th variable and that linear combinatio n of all other variables which | |||
is most strongly correlated with i. | is most strongly correlated with i. | |||
If the variable is fixed or const the return value is zero | If the variable is fixed or const the return value is zero | |||
*/ | */ | |||
virtual double GlobalCC(unsigned int i) const; | virtual double GlobalCC(unsigned int i) const; | |||
/// minos error for parameter i, return false if Minos failed | /** | |||
get the minos error for parameter i, return false if Minos failed | ||||
A minimizaiton must be performed befre, return false if no minimizati | ||||
on has been done | ||||
*/ | ||||
virtual bool GetMinosError(unsigned int i, double & errLow, double & err Up); | virtual bool GetMinosError(unsigned int i, double & errLow, double & err Up); | |||
/** | ||||
scan a parameter i around the minimum. A minimization must have been | ||||
done before, | ||||
return false if it is not the case | ||||
*/ | ||||
virtual bool Scan(unsigned int i, unsigned int & nstep, double * x, doub | ||||
le * y, double xmin = 0, double xmax = 0); | ||||
/** | ||||
find the contour points (xi,xj) of the function for parameter i and j | ||||
around the minimum | ||||
The contour will be find for value of the function = Min + ErrorUp(); | ||||
*/ | ||||
virtual bool Contour(unsigned int i, unsigned int j, unsigned int & npoi | ||||
nts, double *xi, double *xj); | ||||
/// return reference to the objective function | /// return reference to the objective function | |||
///virtual const ROOT::Math::IGenFunction & Function() const; | ///virtual const ROOT::Math::IGenFunction & Function() const; | |||
protected: | protected: | |||
// protected function for accessing the internal Minuit2 object. Needed for derived classes | // protected function for accessing the internal Minuit2 object. Needed for derived classes | |||
virtual const ROOT::Minuit2::ModularFunctionMinimizer * GetMinimizer() c onst { return fMinimizer; } | virtual const ROOT::Minuit2::ModularFunctionMinimizer * GetMinimizer() c onst { return fMinimizer; } | |||
virtual void SetMinimizer( ROOT::Minuit2::ModularFunctionMinimizer * m) { fMinimizer = m; } | virtual void SetMinimizer( ROOT::Minuit2::ModularFunctionMinimizer * m) { fMinimizer = m; } | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 24 lines changed or added | |||
MnPrint.h | MnPrint.h | |||
---|---|---|---|---|
// @(#)root/minuit2:$Id: MnPrint.h 20880 2007-11-19 11:23:41Z rdm $ | // @(#)root/minuit2:$Id: MnPrint.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 | // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * | * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
#ifndef ROOT_Minuit2_MnPrint | #ifndef ROOT_Minuit2_MnPrint | |||
#define ROOT_Minuit2_MnPrint | #define ROOT_Minuit2_MnPrint | |||
skipping to change at line 121 | skipping to change at line 121 | |||
::Info("Minuit2",str); | ::Info("Minuit2",str); | |||
#define MN_ERROR_MSG(str) \ | #define MN_ERROR_MSG(str) \ | |||
::Error("Minuit2",str); | ::Error("Minuit2",str); | |||
# define MN_INFO_VAL(x) \ | # define MN_INFO_VAL(x) \ | |||
{std::string str = std::string(#x) + std::string(" = ") + ROOT::Math::Ut il::ToString(x); \ | {std::string str = std::string(#x) + std::string(" = ") + ROOT::Math::Ut il::ToString(x); \ | |||
::Info("Minuit2",str.c_str() );} | ::Info("Minuit2",str.c_str() );} | |||
# define MN_ERROR_VAL(x) \ | # define MN_ERROR_VAL(x) \ | |||
{std::string str = std::string(#x) + std::string(" = ") + ROOT::Math::Ut il::ToString(x); \ | {std::string str = std::string(#x) + std::string(" = ") + ROOT::Math::Ut il::ToString(x); \ | |||
::Error("Minuit2",str.c_str() );} | ::Error("Minuit2",str.c_str() );} | |||
# define MM_INFO_MSG2(loc,txt) \ | # define MN_INFO_MSG2(loc,txt) \ | |||
{std::string str = std::string(loc) + std::string(" : ") + std::string(t xt); \ | {std::string str = std::string(loc) + std::string(" : ") + std::string(t xt); \ | |||
::Info("Minuit2",str.c_str() );} | ::Info("Minuit2",str.c_str() );} | |||
# define MN_ERROR_MSG2(loc,txt) \ | # define MN_ERROR_MSG2(loc,txt) \ | |||
{std::string str = std::string(loc) + std::string(" : ") + std::string(t xt); \ | {std::string str = std::string(loc) + std::string(" : ") + std::string(t xt); \ | |||
::Error("Minuit2",str.c_str() );} | ::Error("Minuit2",str.c_str() );} | |||
# define MN_INFO_VAL2(loc,x) \ | # define MN_INFO_VAL2(loc,x) \ | |||
{std::string str = std::string(loc) + std::string(" : ") + std::string(# x) + std::string(" = ") + ROOT::Math::Util::ToString(x); \ | {std::string str = std::string(loc) + std::string(" : ") + std::string(# x) + std::string(" = ") + ROOT::Math::Util::ToString(x); \ | |||
::Info("Minuit2",str.c_str() );} | ::Info("Minuit2",str.c_str() );} | |||
# define MN_ERROR_VAL2(loc,x) \ | # define MN_ERROR_VAL2(loc,x) \ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
ModulekNN.h | ModulekNN.h | |||
---|---|---|---|---|
// @(#)root/tmva $Id: ModulekNN.h 22689 2008-03-17 16:21:23Z rdm $ | // @(#)root/tmva $Id: ModulekNN.h 27001 2008-12-18 08:38:09Z brun $ | |||
// Author: Rustem Ospanov | // Author: Rustem Ospanov | |||
/************************************************************************** ******** | /************************************************************************** ******** | |||
* 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 : ModulekNN * | * Class : ModulekNN * | |||
* Web : http://tmva.sourceforge.net * | * Web : http://tmva.sourceforge.net * | |||
* * | * * | |||
* Description: * | * Description: * | |||
* Module for k-nearest neighbor algorithm * | * Module for k-nearest neighbor algorithm * | |||
skipping to change at line 112 | skipping to change at line 112 | |||
public: | public: | |||
ModulekNN(); | ModulekNN(); | |||
~ModulekNN(); | ~ModulekNN(); | |||
void Clear(); | void Clear(); | |||
void Add(const Event &event); | void Add(const Event &event); | |||
Bool_t Fill(const UShort_t odepth, UInt_t ifrac, const std::string &option = ""); | Bool_t Fill(UShort_t odepth, UInt_t ifrac, const std::string &opti on = ""); | |||
Bool_t Find(Event event, UInt_t nfind = 100) const; | Bool_t Find(Event event, UInt_t nfind = 100) const; | |||
Bool_t Find(UInt_t nfind, const std::string &option) const; | Bool_t Find(UInt_t nfind, const std::string &option) const; | |||
const EventVec& GetEventVec() const; | const EventVec& GetEventVec() const; | |||
const List& GetkNNList() const; | const List& GetkNNList() const; | |||
const Event& GetkNNEvent() const; | const Event& GetkNNEvent() const; | |||
const VarMap& GetVarMap() const; | const VarMap& GetVarMap() const; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
ParamFunctor.h | ParamFunctor.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: ParamFunctor.h 25863 2008-10-17 18:53:10Z brun $ | // @(#)root/mathcore:$Id: ParamFunctor.h 26722 2008-12-08 10:35:18Z 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 * | |||
* * | * * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
// Header file for Functor classes. | // Header file for Functor classes. | |||
skipping to change at line 219 | skipping to change at line 219 | |||
*/ | */ | |||
template <class PtrObj, typename MemFn> | template <class PtrObj, typename MemFn> | |||
ParamFunctor(const PtrObj& p, MemFn memFn) | ParamFunctor(const PtrObj& p, MemFn memFn) | |||
: fImpl(new ParamMemFunHandler<ParamFunctor, PtrObj, MemFn>(p, memFn) ) | : fImpl(new ParamMemFunHandler<ParamFunctor, PtrObj, MemFn>(p, memFn) ) | |||
{} | {} | |||
/** | /** | |||
construct from another generic Functor of multi-dimension | construct from another generic Functor of multi-dimension | |||
*/ | */ | |||
template <typename Func> | template <typename Func> | |||
ParamFunctor( const Func & f) : | explicit ParamFunctor( const Func & f) : | |||
fImpl(new ParamFunctorHandler<ParamFunctor,Func>(f) ) | fImpl(new ParamFunctorHandler<ParamFunctor,Func>(f) ) | |||
{} | {} | |||
// specialization used in TF1 | // specialization used in TF1 | |||
typedef double (* FreeFunc ) (double * , double *); | typedef double (* FreeFunc ) (double * , double *); | |||
ParamFunctor(FreeFunc f) : | ParamFunctor(FreeFunc f) : | |||
fImpl(new ParamFunctorHandler<ParamFunctor,FreeFunc>(f) ) | fImpl(new ParamFunctorHandler<ParamFunctor,FreeFunc>(f) ) | |||
{ | { | |||
} | } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
PoissonLikelihoodFCN.h | PoissonLikelihoodFCN.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: PoissonLikelihoodFCN.h 26014 2008-10-29 16:37:28Z moneta $ | // @(#)root/mathcore:$Id: PoissonLikelihoodFCN.h 26541 2008-12-01 10:00:52Z moneta $ | |||
// 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 150 | skipping to change at line 150 | |||
unsigned int fNDim; | unsigned int fNDim; | |||
unsigned int fNPoints; // size of the data | unsigned int fNPoints; // size of the data | |||
mutable unsigned int fNEffPoints; // number of effective points used in the fit | mutable unsigned int fNEffPoints; // number of effective points used in the fit | |||
mutable unsigned int fNCalls; | mutable unsigned int fNCalls; | |||
mutable std::vector<double> fGrad; // for derivatives | mutable std::vector<double> fGrad; // for derivatives | |||
}; | }; | |||
// define useful typedef's | ||||
typedef PoissonLikelihoodFCN<ROOT::Math::IMultiGenFunction> PoissonLL | ||||
Function; | ||||
typedef PoissonLikelihoodFCN<ROOT::Math::IMultiGradFunction> PoissonL | ||||
LGradFunction; | ||||
} // end namespace Fit | } // end namespace Fit | |||
} // end namespace ROOT | } // end namespace ROOT | |||
#endif /* ROOT_Fit_PoissonLikelihoodFCN */ | #endif /* ROOT_Fit_PoissonLikelihoodFCN */ | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
ProfileLikelihoodCalculator.h | ProfileLikelihoodCalculator.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: ProfileLikelihoodCalculator.h 26324 2008-11-20 17 :17:32Z moneta $ | // @(#)root/roostats:$Id: ProfileLikelihoodCalculator.h 26964 2008-12-16 16 :30:01Z 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_ProfileLikelihoodCalculator | #ifndef ROOSTATS_ProfileLikelihoodCalculator | |||
skipping to change at line 24 | skipping to change at line 24 | |||
#ifndef ROOSTATS_CombinedCalculator | #ifndef ROOSTATS_CombinedCalculator | |||
#include "RooStats/CombinedCalculator.h" | #include "RooStats/CombinedCalculator.h" | |||
#endif | #endif | |||
namespace RooStats { | namespace RooStats { | |||
class ProfileLikelihoodCalculator : public CombinedCalculator { | class ProfileLikelihoodCalculator : public CombinedCalculator { | |||
public: | public: | |||
ProfileLikelihoodCalculator(); | ProfileLikelihoodCalculator(); | |||
ProfileLikelihoodCalculator(RooWorkspace* ws, RooAbsData* data, RooAb sPdf* pdf, RooArgSet* paramsOfInterest, | ProfileLikelihoodCalculator(RooWorkspace& ws, RooAbsData& data, RooAb sPdf& pdf, RooArgSet& paramsOfInterest, | |||
Double_t size = 0.05, RooArgSet* nullPara ms = 0, RooArgSet* altParams = 0); | Double_t size = 0.05, RooArgSet* nullPara ms = 0, RooArgSet* altParams = 0); | |||
ProfileLikelihoodCalculator(RooAbsData* data, RooAbsPdf* pdf, RooArgS et* paramsOfInterest, | ProfileLikelihoodCalculator(RooAbsData& data, RooAbsPdf& pdf, RooArgS et& paramsOfInterest, | |||
Double_t size = 0.05, RooArgSet* nullPara ms = 0, RooArgSet* altParams = 0); | Double_t size = 0.05, RooArgSet* nullPara ms = 0, RooArgSet* altParams = 0); | |||
virtual ~ProfileLikelihoodCalculator(); | virtual ~ProfileLikelihoodCalculator(); | |||
// main interface, implemented | // main interface, implemented | |||
virtual ConfInterval* GetInterval() const ; | virtual ConfInterval* GetInterval() const ; | |||
// main interface, implemented | // main interface, implemented | |||
virtual HypoTestResult* GetHypoTest() const; | virtual HypoTestResult* GetHypoTest() const; | |||
protected: | protected: | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
RConfig.h | RConfig.h | |||
---|---|---|---|---|
/* @(#)root/base:$Id: RConfig.h 25546 2008-09-25 21:09:09Z rdm $ */ | /* @(#)root/base:$Id: RConfig.h 26871 2008-12-12 12:21:08Z 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 487 | skipping to change at line 487 | |||
# define NEED_SNPRINTF | # define NEED_SNPRINTF | |||
# define ANSICPP | # define ANSICPP | |||
# else | # else | |||
# define MSDOS | # define MSDOS | |||
# define NEED_STRCASECMP | # define NEED_STRCASECMP | |||
# define R__BYTESWAP | # define R__BYTESWAP | |||
# endif | # endif | |||
#endif | #endif | |||
#ifdef _MSC_VER | #ifdef _MSC_VER | |||
# if !defined(__CINT__) && !defined(ROOT_w32pragma) | ||||
/* needed for compatibility with ROOT's STL usage */ | ||||
# error Missing #include of %ROOTSYS%\include\w32pragma.h! | ||||
# endif | ||||
# define R__VISUAL_CPLUSPLUS | # define R__VISUAL_CPLUSPLUS | |||
# define NEED_STRING | # define NEED_STRING | |||
# define NEED_STRCASECMP | # define NEED_STRCASECMP | |||
# define NEED_SNPRINTF | # define NEED_SNPRINTF | |||
# define ANSICPP | # define ANSICPP | |||
# define R__VECNEWDELETE /* supports overloading of new[] and delete[] */ | # define R__VECNEWDELETE /* supports overloading of new[] and delete[] */ | |||
# define R__PLACEMENTDELETE /* supports overloading placement delete */ | # define R__PLACEMENTDELETE /* supports overloading placement delete */ | |||
# define R__PLACEMENTINLINE /* placement new/delete is inline in <new> */ | # define R__PLACEMENTINLINE /* placement new/delete is inline in <new> */ | |||
# if _MSC_VER >= 1200 | # if _MSC_VER >= 1200 | |||
# define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | # define R__ANSISTREAM /* ANSI C++ Standard Library conformant */ | |||
End of changes. 2 change blocks. | ||||
5 lines changed or deleted | 1 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/ i686-slc5-gcc43-opt PYTHONDIR=/afs/cern.ch/sw/lcg/external/Python/2.5/i686- slc5-gcc43-opt --fail-on-missing --enable-cintex --enable-explicitlink --en able-gdml --enable-genvector --enable-mathmore --enable-minuit2 --enable-my sql --enable-oracle --enable-python --enable-qt --enable-qtgsi --enable-ref lex --enable-roofit --enable-table --enable-unuran --with-castor-incdir=/af s/cern.ch/sw/lcg/external/castor/2.1.6-12/i686-slc5-gcc43-opt/usr/include/s hift --with-castor-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-12/i686 -slc5-gcc43-opt/usr/lib --with-cern-libdir=/afs/cern.ch/sw/lcg/external/cer nlib/2005/i686-slc5-gcc43-opt/lib --with-dcap-libdir=/afs/cern.ch/sw/lcg/ex ternal/dcap/1.2.35/i686-slc5-gcc43-opt/lib --with-dcap-incdir=/afs/cern.ch/ sw/lcg/external/dcap/1.2.35/i686-slc5-gcc43-opt/include --with-fftw3-incdir =/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/include --wit h-fftw3-libdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt /lib --with-gccxml=/afs/cern.ch/sw/lcg/external/gccxml/0.7.0_20070615/i686- slc5-gcc43-opt/bin --with-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfa l/1.10.17/i686-slc5-gcc43-opt/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg/ex ternal/Grid/gfal/1.10.17/i686-slc5-gcc43-opt/include --with-globus-incdir=/ afs/cern.ch/sw/lcg/external/Grid/globus/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt /globus/include --with-globus-libdir=/afs/cern.ch/sw/lcg/external/Grid/glob us/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt/globus/lib --with-gsl-incdir=/afs/ce rn.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/include --with-gsl-libdi r=/afs/cern.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/lib --with-mysq l-incdir=/afs/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5-gcc43-opt/incl ude --with-mysql-libdir=/afs/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5 -gcc43-opt/lib --with-oracle-incdir=/afs/cern.ch/sw/lcg/external/oracle/10. 2.0.3-full/i686-slc5-gcc43-opt/include --with-oracle-libdir=/afs/cern.ch/sw /lcg/external/oracle/10.2.0.3-full/i686-slc5-gcc43-opt/lib --with-shift-inc dir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-12/i686-slc5-gcc43-opt/usr/in clude/shift --with-shift-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-1 2/i686-slc5-gcc43-opt/usr/lib" | #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/i686- slc5-gcc43-opt --fail-on-missing --enable-cintex --enable-explicitlink --en able-gdml --enable-genvector --enable-mathmore --enable-minuit2 --enable-my sql --enable-oracle --enable-python --enable-qt --enable-qtgsi --enable-ref lex --enable-roofit --enable-table --enable-unuran --with-castor-incdir=/af s/cern.ch/sw/lcg/external/castor/2.1.6-12/i686-slc5-gcc43-opt/usr/include/s hift --with-castor-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-12/i686 -slc5-gcc43-opt/usr/lib --with-cern-libdir=/afs/cern.ch/sw/lcg/external/cer nlib/2005/i686-slc5-gcc43-opt/lib --with-dcap-libdir=/afs/cern.ch/sw/lcg/ex ternal/dcap/1.2.35/i686-slc5-gcc43-opt/lib --with-dcap-incdir=/afs/cern.ch/ sw/lcg/external/dcap/1.2.35/i686-slc5-gcc43-opt/include --with-fftw3-incdir =/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt/include --wit h-fftw3-libdir=/afs/cern.ch/sw/lcg/external/fftw3/3.1.2/i686-slc5-gcc43-opt /lib --with-gccxml=/afs/cern.ch/sw/lcg/external/gccxml/0.9.0_20081130/i686- slc5-gcc43-opt/bin --with-gfal-libdir=/afs/cern.ch/sw/lcg/external/Grid/gfa l/1.10.17/i686-slc5-gcc43-opt/lib --with-gfal-incdir=/afs/cern.ch/sw/lcg/ex ternal/Grid/gfal/1.10.17/i686-slc5-gcc43-opt/include --with-globus-incdir=/ afs/cern.ch/sw/lcg/external/Grid/globus/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt /globus/include --with-globus-libdir=/afs/cern.ch/sw/lcg/external/Grid/glob us/4.0.3-VDT-1.6.0/i686-slc5-gcc43-opt/globus/lib --with-gsl-incdir=/afs/ce rn.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/include --with-gsl-libdi r=/afs/cern.ch/sw/lcg/external/GSL/1.10/i686-slc5-gcc43-opt/lib --with-mysq l-incdir=/afs/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5-gcc43-opt/incl ude --with-mysql-libdir=/afs/cern.ch/sw/lcg/external/mysql/5.0.18/i686-slc5 -gcc43-opt/lib --with-oracle-incdir=/afs/cern.ch/sw/lcg/external/oracle/10. 2.0.3-full/i686-slc5-gcc43-opt/include --with-oracle-libdir=/afs/cern.ch/sw /lcg/external/oracle/10.2.0.3-full/i686-slc5-gcc43-opt/lib --with-shift-inc dir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-12/i686-slc5-gcc43-opt/usr/in clude/shift --with-shift-libdir=/afs/cern.ch/sw/lcg/external/castor/2.1.6-1 2/i686-slc5-gcc43-opt/usr/lib" | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 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.21/06" | #define ROOT_RELEASE "5.22/00" | |||
#define ROOT_RELEASE_DATE "Nov 25 2008" | #define ROOT_RELEASE_DATE "Dec 17 2008" | |||
#define ROOT_RELEASE_TIME "20:39:52" | #define ROOT_RELEASE_TIME "18:11:02" | |||
#define ROOT_SVN_REVISION 26464 | #define ROOT_SVN_REVISION 26997 | |||
#define ROOT_SVN_BRANCH "trunk" | #define ROOT_SVN_BRANCH "trunk" | |||
#define ROOT_VERSION_CODE 333062 | #define ROOT_VERSION_CODE 333312 | |||
#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 | |||
RooAbsArg.h | RooAbsArg.h | |||
---|---|---|---|---|
skipping to change at line 305 | skipping to change at line 305 | |||
return kTRUE ; // we should never get here | return kTRUE ; // we should never get here | |||
} | } | |||
// Cache management | // Cache management | |||
void registerCache(RooAbsCache& cache) ; | void registerCache(RooAbsCache& cache) ; | |||
void unRegisterCache(RooAbsCache& cache) ; | void unRegisterCache(RooAbsCache& cache) ; | |||
Int_t numCaches() const ; | Int_t numCaches() const ; | |||
RooAbsCache* getCache(Int_t index) const ; | RooAbsCache* getCache(Int_t index) const ; | |||
enum OperMode { Auto=0, AClean=1, ADirty=2 } ; | enum OperMode { Auto=0, AClean=1, ADirty=2 } ; | |||
inline OperMode operMode() const { return _operMode ; } | inline OperMode operMode() const { return _operMode==AClean ? (flipAClean () ? ADirty : AClean ) : _operMode ; } | |||
void setOperMode(OperMode mode, Bool_t recurseADirty=kTRUE) ; | void setOperMode(OperMode mode, Bool_t recurseADirty=kTRUE) ; | |||
static UInt_t crc32(const char* data) ; | static UInt_t crc32(const char* data) ; | |||
Bool_t addOwnedComponents(const RooArgSet& comps) ; | Bool_t addOwnedComponents(const RooArgSet& comps) ; | |||
const RooArgSet* ownedComponents() const { return _ownedComponents ; } | const RooArgSet* ownedComponents() const { return _ownedComponents ; } | |||
void setProhibitServerRedirect(Bool_t flag) { _prohibitServerRedirect = f lag ; } | void setProhibitServerRedirect(Bool_t flag) { _prohibitServerRedirect = f lag ; } | |||
protected: | protected: | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
RooAbsData.h | RooAbsData.h | |||
---|---|---|---|---|
skipping to change at line 64 | skipping to change at line 64 | |||
// Add one ore more rows of data | // Add one ore more rows of data | |||
virtual void add(const RooArgSet& row, Double_t weight=1) = 0 ; | virtual void add(const RooArgSet& row, Double_t weight=1) = 0 ; | |||
virtual void fill() = 0 ; | virtual void fill() = 0 ; | |||
// Load a given row of data | // Load a given row of data | |||
virtual inline const RooArgSet* get() const { | virtual inline const RooArgSet* get() const { | |||
// Return current row of dataset | // Return current row of dataset | |||
return &_vars ; | return &_vars ; | |||
} | } | |||
virtual Double_t weight() const = 0 ; | virtual Double_t weight() const = 0 ; | |||
virtual Bool_t valid() const = 0 ; | ||||
enum ErrorType { Poisson, SumW2, None } ; | enum ErrorType { Poisson, SumW2, None } ; | |||
virtual Double_t weightError(ErrorType etype=Poisson) const ; | virtual Double_t weightError(ErrorType etype=Poisson) const ; | |||
virtual void weightError(Double_t& lo, Double_t& hi, ErrorType etype=Pois son) const ; | virtual void weightError(Double_t& lo, Double_t& hi, ErrorType etype=Pois son) const ; | |||
virtual const RooArgSet* get(Int_t index) const = 0 ; | virtual const RooArgSet* get(Int_t index) const = 0 ; | |||
virtual Int_t numEntries(Bool_t useWeights=kFALSE) const = 0 ; | virtual Int_t numEntries(Bool_t useWeights=kFALSE) const = 0 ; | |||
virtual Double_t sumEntries(const char* cutSpec=0, const char* cutRange=0 ) const = 0 ; | virtual Double_t sumEntries(const char* cutSpec=0, const char* cutRange=0 ) const = 0 ; | |||
virtual Bool_t isWeighted() const { | virtual Bool_t isWeighted() const { | |||
// Do events in dataset have weights? | // Do events in dataset have weights? | |||
return kFALSE ; | return kFALSE ; | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
RooDataHist.h | RooDataHist.h | |||
---|---|---|---|---|
skipping to change at line 97 | skipping to change at line 97 | |||
Double_t sum(Bool_t correctForBinSize) const ; | Double_t sum(Bool_t correctForBinSize) const ; | |||
Double_t sum(const RooArgSet& sumSet, const RooArgSet& sliceSet, Bool_t c orrectForBinSize) ; | Double_t sum(const RooArgSet& sumSet, const RooArgSet& sliceSet, Bool_t c orrectForBinSize) ; | |||
virtual Double_t weight() const { | virtual Double_t weight() const { | |||
// Return weight of current bin | // Return weight of current bin | |||
return _curWeight ; | return _curWeight ; | |||
} | } | |||
Double_t weight(const RooArgSet& bin, Int_t intOrder=1, Bool_t correctFor BinSize=kFALSE, Bool_t cdfBoundaries=kFALSE) ; | Double_t weight(const RooArgSet& bin, Int_t intOrder=1, Bool_t correctFor BinSize=kFALSE, Bool_t cdfBoundaries=kFALSE) ; | |||
Double_t binVolume() const { return _curVolume ; } | Double_t binVolume() const { return _curVolume ; } | |||
Double_t binVolume(const RooArgSet& bin) ; | Double_t binVolume(const RooArgSet& bin) ; | |||
virtual Bool_t valid() const ; | ||||
TIterator* sliceIterator(RooAbsArg& sliceArg, const RooArgSet& otherArgs) ; | TIterator* sliceIterator(RooAbsArg& sliceArg, const RooArgSet& otherArgs) ; | |||
virtual void weightError(Double_t& lo, Double_t& hi, ErrorType etype=Pois son) const ; | virtual void weightError(Double_t& lo, Double_t& hi, ErrorType etype=Pois son) const ; | |||
virtual Double_t weightError(ErrorType etype=Poisson) const { | virtual Double_t weightError(ErrorType etype=Poisson) const { | |||
// Return symmetric error on current bin calculated either from Poisson statistics or from SumOfWeights | // Return symmetric error on current bin calculated either from Poisson statistics or from SumOfWeights | |||
Double_t lo,hi ; | Double_t lo,hi ; | |||
weightError(lo,hi,etype) ; | weightError(lo,hi,etype) ; | |||
return (lo+hi)/2 ; | return (lo+hi)/2 ; | |||
} | } | |||
skipping to change at line 126 | skipping to change at line 127 | |||
virtual void printValue(ostream& os) const ; | virtual void printValue(ostream& os) const ; | |||
void SetName(const char *name) ; | void SetName(const char *name) ; | |||
void SetNameTitle(const char *name, const char* title) ; | void SetNameTitle(const char *name, const char* title) ; | |||
protected: | protected: | |||
friend class RooAbsCachedPdf ; | friend class RooAbsCachedPdf ; | |||
friend class RooAbsCachedReal ; | friend class RooAbsCachedReal ; | |||
friend class RooDataHistSliceIter ; | friend class RooDataHistSliceIter ; | |||
friend class RooAbsOptTestStatistic ; | ||||
void cacheValidEntries() ; | ||||
void setAllWeights(Double_t value) ; | void setAllWeights(Double_t value) ; | |||
void initialize(Bool_t fillTree=kTRUE) ; | void initialize(Bool_t fillTree=kTRUE) ; | |||
RooDataHist(const char* name, const char* title, RooDataHist* h, const Ro oArgSet& varSubset, | RooDataHist(const char* name, const char* title, RooDataHist* h, const Ro oArgSet& varSubset, | |||
const RooFormulaVar* cutVar, const char* cutRange, Int_t nStar t, Int_t nStop, Bool_t copyCache) ; | const RooFormulaVar* cutVar, const char* cutRange, Int_t nStar t, Int_t nStop, Bool_t copyCache) ; | |||
RooAbsData* reduceEng(const RooArgSet& varSubset, const RooFormulaVar* cu tVar, const char* cutRange=0, | RooAbsData* reduceEng(const RooArgSet& varSubset, const RooFormulaVar* cu tVar, const char* cutRange=0, | |||
Int_t nStart=0, Int_t nStop=2000000000, Bool_t copyC ache=kTRUE) ; | Int_t nStart=0, Int_t nStop=2000000000, Bool_t copyC ache=kTRUE) ; | |||
Double_t interpolateDim(RooRealVar& dim, const RooAbsBinning* binning, Do uble_t xval, Int_t intOrder, Bool_t correctForBinSize, Bool_t cdfBoundaries ) ; | Double_t interpolateDim(RooRealVar& dim, const RooAbsBinning* binning, Do uble_t xval, Int_t intOrder, Bool_t correctForBinSize, Bool_t cdfBoundaries ) ; | |||
void calculatePartialBinVolume(const RooArgSet& dimSet) const ; | void calculatePartialBinVolume(const RooArgSet& dimSet) const ; | |||
skipping to change at line 153 | skipping to change at line 158 | |||
Int_t _arrSize ; // Size of the weight array | Int_t _arrSize ; // Size of the weight array | |||
Int_t* _idxMult ; //! Multiplier jump table for index calculation | Int_t* _idxMult ; //! Multiplier jump table for index calculation | |||
Double_t* _wgt ; //[_arrSize] Weight array | Double_t* _wgt ; //[_arrSize] Weight array | |||
Double_t* _errLo ; //[_arrSize] Low-side error on weight array | Double_t* _errLo ; //[_arrSize] Low-side error on weight array | |||
Double_t* _errHi ; //[_arrSize] High-side error on weight array | Double_t* _errHi ; //[_arrSize] High-side error on weight array | |||
Double_t* _sumw2 ; //[_arrSize] Sum of weights^2 | Double_t* _sumw2 ; //[_arrSize] Sum of weights^2 | |||
Double_t* _binv ; //[_arrSize] Bin volume array | Double_t* _binv ; //[_arrSize] Bin volume array | |||
RooArgSet _realVars ; // Real dimensions of the dataset | RooArgSet _realVars ; // Real dimensions of the dataset | |||
TIterator* _realIter ; //! Iterator over realVars | TIterator* _realIter ; //! Iterator over realVars | |||
Bool_t* _binValid ; //! Valid bins with current range definition | ||||
mutable Double_t _curWeight ; // Weight associated with the current coord inate | mutable Double_t _curWeight ; // Weight associated with the current coord inate | |||
mutable Double_t _curWgtErrLo ; // Error on weight associated with the cu rrent coordinate | mutable Double_t _curWgtErrLo ; // Error on weight associated with the cu rrent coordinate | |||
mutable Double_t _curWgtErrHi ; // Error on weight associated with the cu rrent coordinate | mutable Double_t _curWgtErrHi ; // Error on weight associated with the cu rrent coordinate | |||
mutable Double_t _curSumW2 ; // Current sum of weights^2 | mutable Double_t _curSumW2 ; // Current sum of weights^2 | |||
mutable Double_t _curVolume ; // Volume of bin enclosing current coordina te | mutable Double_t _curVolume ; // Volume of bin enclosing current coordina te | |||
mutable Int_t _curIndex ; // Current index | mutable Int_t _curIndex ; // Current index | |||
mutable std::vector<Double_t>* _pbinv ; //! Partial bin volume array | mutable std::vector<Double_t>* _pbinv ; //! Partial bin volume array | |||
mutable RooCacheManager<std::vector<Double_t> > _pbinvCacheMgr ; // Cache manager for arrays of partial bin volumes | mutable RooCacheManager<std::vector<Double_t> > _pbinvCacheMgr ; // Cache manager for arrays of partial bin volumes | |||
End of changes. 3 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added | |||
RooStatsUtils.h | RooStatsUtils.h | |||
---|---|---|---|---|
// @(#)root/roostats:$Id: RooStatsUtils.h 26324 2008-11-20 17:17:32Z moneta $ | // @(#)root/roostats:$Id: RooStatsUtils.h 26981 2008-12-17 08:17:00Z moneta $ | |||
// Author: Kyle Cranmer 28/07/2008 | // Author: Kyle Cranmer 28/07/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 31 | skipping to change at line 31 | |||
#endif | #endif | |||
#include "RooArgSet.h" | #include "RooArgSet.h" | |||
#include "RooRealVar.h" | #include "RooRealVar.h" | |||
namespace RooStats { | namespace RooStats { | |||
// returns one-sided significance corresponding to a p-value | // returns one-sided significance corresponding to a p-value | |||
inline Double_t PValueToSignificance(Double_t pvalue){ | inline Double_t PValueToSignificance(Double_t pvalue){ | |||
// return sqrt(2.)*TMath::ErfInverse(1 - 2.*pvalue); | // return sqrt(2.)*TMath::ErfInverse(1 - 2.*pvalue); | |||
return TMath::Abs(TMath::NormQuantile(pvalue) ); | return TMath::Abs(::ROOT::Math::normal_quantile(pvalue,1) ); | |||
} | } | |||
// returns p-value corresponding to a 1-sided significance | // returns p-value corresponding to a 1-sided significance | |||
inline Double_t SignificanceToPValue(Double_t Z){ | inline Double_t SignificanceToPValue(Double_t Z){ | |||
// return .5*TMath::Erfc( Z /sqrt(2.)); | // return .5*TMath::Erfc( Z /sqrt(2.)); | |||
return ::ROOT::Math::normal_cdf_c(Z); | return ::ROOT::Math::normal_cdf_c(Z); | |||
} | } | |||
inline void SetParameters(RooArgSet* desiredVals, RooArgSet* paramsToChan ge){ | inline void SetParameters(RooArgSet* desiredVals, RooArgSet* paramsToChan ge){ | |||
TIter it = desiredVals->createIterator(); | TIter it = desiredVals->createIterator(); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
RooTreeData.h | RooTreeData.h | |||
---|---|---|---|---|
skipping to change at line 62 | skipping to change at line 62 | |||
RooTreeData(RooTreeData const & other, const char* newname=0) ; | RooTreeData(RooTreeData const & other, const char* newname=0) ; | |||
virtual ~RooTreeData() ; | virtual ~RooTreeData() ; | |||
virtual Bool_t changeObservableName(const char* from, const char* to) ; | virtual Bool_t changeObservableName(const char* from, const char* to) ; | |||
// Load a given row of data | // Load a given row of data | |||
virtual void fill() { Fill() ; } ; | virtual void fill() { Fill() ; } ; | |||
virtual const RooArgSet* get(Int_t index) const; | virtual const RooArgSet* get(Int_t index) const; | |||
virtual const RooArgSet* get() const { return &_vars ; } | virtual const RooArgSet* get() const { return &_vars ; } | |||
virtual Bool_t valid() const ; | ||||
virtual RooAbsArg* addColumn(RooAbsArg& var, Bool_t adjustRange=kTRUE) ; | virtual RooAbsArg* addColumn(RooAbsArg& var, Bool_t adjustRange=kTRUE) ; | |||
virtual RooArgSet* addColumns(const RooArgList& varList) ; | virtual RooArgSet* addColumns(const RooArgList& varList) ; | |||
virtual Int_t numEntries(Bool_t useWeights=kFALSE) const ; | virtual Int_t numEntries(Bool_t useWeights=kFALSE) const ; | |||
virtual void reset() { Reset() ; } | virtual void reset() { Reset() ; } | |||
using RooAbsData::table ; | using RooAbsData::table ; | |||
virtual Roo1DTable* table(const RooAbsCategory& cat, const char* cuts="", const char* opts="") const ; | virtual Roo1DTable* table(const RooAbsCategory& cat, const char* cuts="", const char* opts="") const ; | |||
virtual RooPlot* statOn(RooPlot* frame, | virtual RooPlot* statOn(RooPlot* frame, | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added | |||
RootFinder.h | RootFinder.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: RootFinder.h 25486 2008-09-22 12:43:03Z moneta $ | // @(#)root/tmva $Id: RootFinder.h 20882 2007-11-19 11:31:26Z rdm $ | |||
// Authors: L. Moneta, A. Zsenei 08/2005 | // Author: Andreas Hoecker, Joerg Stelzer, Helge Voss, Kai Voss | |||
/********************************************************************** | /************************************************************************** | |||
* * | ******** | |||
* Copyright (c) 2004 ROOT Foundation, CERN/PH-SFT * | * Project: TMVA - a Root-integrated toolkit for multivariate data analysis | |||
* * | * | |||
* This library is free software; you can redistribute it and/or * | * Package: TMVA | |||
* modify it under the terms of the GNU General Public License * | * | |||
* as published by the Free Software Foundation; either version 2 * | * Class : RootFinder | |||
* of the License, or (at your option) any later version. * | * | |||
* * | * Web : http://tmva.sourceforge.net | |||
* This library is distributed in the hope that it will be useful, * | * | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of * | * | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * | * | |||
* General Public License for more details. * | * Description: | |||
* * | * | |||
* You should have received a copy of the GNU General Public License * | * Root finding using Brents algorithm | |||
* along with this library (see file COPYING); if not, write * | * | |||
* to the Free Software Foundation, Inc., 59 Temple Place, Suite * | * (translated from CERNLIB function RZERO) | |||
* 330, Boston, MA 02111-1307 USA, or contact the author. * | * | |||
* * | * | |||
**********************************************************************/ | * | |||
* Authors (alphabetical): | ||||
// Header file for class RootFinder | * | |||
// | * Andreas Hoecker <Andreas.Hocker@cern.ch> - CERN, Switzerland | |||
// Created by: moneta at Sun Nov 14 16:59:55 2004 | * | |||
// | * Xavier Prudent <prudent@lapp.in2p3.fr> - LAPP, France | |||
// Last update: Sun Nov 14 16:59:55 2004 | * | |||
// | * Helge Voss <Helge.Voss@cern.ch> - MPI-K Heidelberg, German | |||
#ifndef ROOT_Math_RootFinder | y * | |||
#define ROOT_Math_RootFinder | * Kai Voss <Kai.Voss@cern.ch> - U. of Victoria, Canada | |||
* | ||||
* | ||||
* | ||||
* Copyright (c) 2005: | ||||
* | ||||
* CERN, Switzerland | ||||
* | ||||
* U. of Victoria, Canada | ||||
* | ||||
* MPI-K Heidelberg, Germany | ||||
* | ||||
* LAPP, Annecy, France | ||||
* | ||||
* | ||||
* | ||||
* Redistribution and use in source and binary forms, with or without | ||||
* | ||||
* modification, are permitted according to the terms listed in LICENSE | ||||
* | ||||
* (http://tmva.sourceforge.net/LICENSE) | ||||
* | ||||
************************************************************************** | ||||
********/ | ||||
#ifndef ROOT_TMVA_RootFinder | ||||
#define ROOT_TMVA_RootFinder | ||||
////////////////////////////////////////////////////////////////////////// | ||||
// // | ||||
// RootFinder // | ||||
// // | ||||
// Root finding using Brents algorithm // | ||||
// (translated from CERNLIB function RZERO) // | ||||
// // | ||||
////////////////////////////////////////////////////////////////////////// | ||||
#ifndef ROOT_Math_IFunctionfwd | #include "TObject.h" | |||
#include "Math/IFunctionfwd.h" | ||||
#endif | ||||
#ifndef ROOT_Math_IRootFinderMethod | #ifndef ROOT_TMVA_MsgLogger | |||
#include "Math/IRootFinderMethod.h" | #include "TMVA/MsgLogger.h" | |||
#endif | #endif | |||
/** | namespace TMVA { | |||
@defgroup RootFinders One-dimensional Root-Finding algorithms | ||||
@ingroup NumAlgo | class RootFinder : public TObject { | |||
*/ | ||||
public: | ||||
namespace ROOT { | ||||
namespace Math { | ||||
//_________________________________________________________________________ | ||||
____________ | ||||
/** | ||||
Class to find the Root of one dimensional functions. | ||||
The class is templated on the type of Root solver algorithms. | ||||
The possible types of Root-finding algorithms are: | ||||
<ul> | ||||
<li>Root Bracketing Algorithms which they do not require function | ||||
derivatives | ||||
<ol> | ||||
<li>Roots::Bisection | ||||
<li>Roots::FalsePos | ||||
<li>Roots::Brent | ||||
</ol> | ||||
<li>Root Finding Algorithms using Derivatives | ||||
<ol> | ||||
<li>Roots::Newton | ||||
<li>Roots::Secant | ||||
<li>Roots::Steffenson | ||||
</ol> | ||||
</ul> | ||||
This class does not cupport copying | ||||
@ingroup RootFinders | ||||
*/ | ||||
class RootFinder { | ||||
public: | ||||
enum EType { kBRENT, // Methods | ||||
from MathCore | ||||
kGSL_BISECTION, kGSL_FALSE_POS, kGSL_BRENT, // GSL Nor | ||||
mal | ||||
kGSL_NEWTON, kGSL_SECANT, kGSL_STEFFENSON // GSL Der | ||||
ivatives | ||||
}; | ||||
/** | ||||
Construct a Root-Finder algorithm | ||||
*/ | ||||
RootFinder(RootFinder::EType type = RootFinder::kBRENT); | ||||
virtual ~RootFinder(); | ||||
private: | ||||
// usually copying is non trivial, so we make this unaccessible | ||||
RootFinder(const RootFinder & ) {} | ||||
RootFinder & operator = (const RootFinder & rhs) | ||||
{ | ||||
if (this == &rhs) return *this; // time saving self-test | ||||
return *this; | ||||
} | ||||
public: | ||||
int SetMethod(RootFinder::EType type = RootFinder::kBRENT); | ||||
/** | ||||
Provide to the solver the function and the initial search inter | ||||
val [xlow, xup] | ||||
for algorithms not using derivatives (bracketing algorithms) | ||||
The templated function f must be of a type implementing the \a | ||||
operator() method, | ||||
<em> double operator() ( double x ) </em> | ||||
Returns non zero if interval is not valid (i.e. does not contai | ||||
ns a root) | ||||
*/ | ||||
int SetFunction( const IGenFunction & f, double xlow, double xup) | ||||
{ | ||||
return fSolver->SetFunction( f, xlow, xup); | ||||
} | ||||
/** | ||||
Provide to the solver the function and an initial estimate of t | ||||
he root, | ||||
for algorithms using derivatives. | ||||
The templated function f must be of a type implementing the \a | ||||
operator() | ||||
and the \a Gradient() methods. | ||||
<em> double operator() ( double x ) </em> | ||||
Returns non zero if starting point is not valid | ||||
*/ | ||||
int SetFunction( const IGradFunction & f, double xstart) { | ||||
return fSolver->SetFunction( f, xstart); | ||||
} | ||||
template<class Function, class Derivative> | ||||
int Solve(Function f, Derivative d, double start, | ||||
int maxIter = 100, double absTol = 1E-3, double relTol = | ||||
1E-6); | ||||
template<class Function> | ||||
int Solve(Function f, double min, double max, | ||||
int maxIter = 100, double absTol = 1E-3, double relTol = | ||||
1E-6); | ||||
/** | ||||
Compute the roots iterating until the estimate of the Root is | ||||
within the required tolerance returning | ||||
the iteration Status | ||||
*/ | ||||
int Solve( int maxIter = 100, double absTol = 1E-3, double relTol | ||||
= 1E-6) { | ||||
return fSolver->Solve( maxIter, absTol, relTol ); | ||||
} | ||||
/** | ||||
Return the number of iteration performed to find the Root. | ||||
*/ | ||||
int Iterations() const { | ||||
return fSolver->Iterations(); | ||||
} | ||||
/** | ||||
Perform a single iteration and return the Status | ||||
*/ | ||||
int Iterate() { | ||||
return fSolver->Iterate(); | ||||
} | ||||
/** | ||||
Return the current and latest estimate of the Root | ||||
*/ | ||||
double Root() const { | ||||
return fSolver->Root(); | ||||
} | ||||
/** | ||||
Return the current and latest estimate of the lower value of th | ||||
e Root-finding interval (for bracketing algorithms) | ||||
*/ | ||||
/* double XLower() const { */ | ||||
/* return fSolver->XLower(); */ | ||||
/* } */ | ||||
/** | ||||
Return the current and latest estimate of the upper value of th | ||||
e Root-finding interval (for bracketing algorithms) | ||||
*/ | ||||
/* double XUpper() const { */ | ||||
/* return fSolver->XUpper(); */ | ||||
/* } */ | ||||
/** | ||||
Get Name of the Root-finding solver algorithm | ||||
*/ | ||||
const char * Name() const { | ||||
return fSolver->Name(); | ||||
} | ||||
#ifdef LATER | ||||
/** | ||||
Test convertgence Status of current iteration using interval va | ||||
lues (for bracketing algorithms) | ||||
*/ | ||||
static int TestInterval( double xlow, double xup, double epsAbs, d | ||||
ouble epsRel) { | ||||
return GSLRootHelper::TestInterval(xlow, xup, epsAbs, epsRel); | ||||
} | ||||
/** | ||||
Test convergence Status of current iteration using last Root es | ||||
timates (for algorithms using function derivatives) | ||||
*/ | ||||
static int TestDelta( double r1, double r0, double epsAbs, double | ||||
epsRel) { | ||||
return GSLRootHelper::TestDelta(r1, r0, epsAbs, epsRel); | ||||
} | ||||
/** | ||||
Test function residual | ||||
*/ | ||||
static int TestResidual(double f, double epsAbs) { | ||||
return GSLRootHelper::TestResidual(f, epsAbs); | ||||
} | ||||
#endif | ||||
protected: | RootFinder( Double_t (*rootVal)( Double_t ), | |||
Double_t rootMin, Double_t rootMax, | ||||
Int_t maxIterations = 100, | ||||
Double_t absTolerance = 0.0 ); | ||||
virtual ~RootFinder( void ); | ||||
private: | // returns the root of the function | |||
Double_t Root( Double_t refValue ); | ||||
IRootFinderMethod* fSolver; // type of algorithm to be used | private: | |||
}; | Double_t fRootMin; // minimum root value | |||
Double_t fRootMax; // maximum root value | ||||
Int_t fMaxIter; // maximum number of iterations | ||||
Double_t fAbsTol; // absolute tolerance deviation | ||||
} // namespace Math | // function pointer | |||
} // namespace ROOT | Double_t (*fGetRootVal)( Double_t ); | |||
#include "Math/WrappedFunction.h" | ||||
#include "Math/Functor.h" | ||||
template<class Function, class Derivative> | ||||
int ROOT::Math::RootFinder::Solve(Function f, Derivative d, double start, | ||||
int maxIter, double absTol, double relTol | ||||
) | ||||
{ | ||||
ROOT::Math::GradFunctor1D wf(f, d); | ||||
if (fSolver) fSolver->SetFunction(wf, start); | ||||
return Solve(maxIter, absTol, relTol); | ||||
} | ||||
template<class Function> | ||||
int ROOT::Math::RootFinder::Solve(Function f, double min, double max, | ||||
int maxIter, double absTol, double relTol | ||||
) | ||||
{ | ||||
ROOT::Math::WrappedFunction<Function> wf(f); | ||||
if (fSolver) fSolver->SetFunction(wf, min, max); | ||||
return Solve(maxIter, absTol, relTol); | ||||
} | ||||
#endif /* ROOT_Math_RootFinder */ | mutable MsgLogger fLogger; // message logger | |||
ClassDef(RootFinder,0) // Root finding using Brents algorithm | ||||
}; | ||||
} // namespace TMVA | ||||
#endif | ||||
End of changes. 11 change blocks. | ||||
253 lines changed or deleted | 88 lines changed or added | |||
SMatrix.h | SMatrix.h | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: SMatrix.h 21553 2007-12-21 10:55:46Z moneta $ | // @(#)root/smatrix:$Id: SMatrix.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: T. Glebe, L. Moneta, J. Palacios 2005 | // Author: T. Glebe, L. Moneta, J. Palacios 2005 | |||
#ifndef ROOT_Math_SMatrix | #ifndef ROOT_Math_SMatrix | |||
#define ROOT_Math_SMatrix | #define ROOT_Math_SMatrix | |||
/************************************************************************** ******* | /************************************************************************** ******* | |||
// | // | |||
// source: | // source: | |||
// | // | |||
// type: source code | // type: source code | |||
skipping to change at line 458 | skipping to change at line 458 | |||
/** | /** | |||
Invert a square Matrix and returns a new matrix. In case the inversi on fails | Invert a square Matrix and returns a new matrix. In case the inversi on fails | |||
the current matrix is returned. | the current matrix is returned. | |||
\param ifail . ifail will be set to 0 when inversion is successfull. | \param ifail . ifail will be set to 0 when inversion is successfull. | |||
See ROOT::Math::SMatrix::Invert for the inversion algorithm | See ROOT::Math::SMatrix::Invert for the inversion algorithm | |||
*/ | */ | |||
SMatrix<T,D1,D2,R> Inverse(int & ifail ) const; | SMatrix<T,D1,D2,R> Inverse(int & ifail ) const; | |||
/** | /** | |||
Fast Invertion of a square Matrix ( this method changes the current m | ||||
atrix). | ||||
Return true if inversion is successfull. | ||||
The method used is based on direct inversion using the Cramer rule fo | ||||
r | ||||
matrices upto 5x5. Afterwards the same defult algorithm of Invert() i | ||||
s used. | ||||
Note that this method is faster but can suffer from much larger numer | ||||
ical accuracy | ||||
when the condition of the matrix is large | ||||
*/ | ||||
bool InvertFast(); | ||||
/** | ||||
Invert a square Matrix and returns a new matrix. In case the inversi | ||||
on fails | ||||
the current matrix is returned. | ||||
\param ifail . ifail will be set to 0 when inversion is successfull. | ||||
See ROOT::Math::SMatrix::InverseFast for the inversion algorithm | ||||
*/ | ||||
SMatrix<T,D1,D2,R> InverseFast(int & ifail ) const; | ||||
/** | ||||
determinant of square Matrix via Dfact. | determinant of square Matrix via Dfact. | |||
Return true when the calculation is successfull. | Return true when the calculation is successfull. | |||
\param det will contain the calculated determinant value | \param det will contain the calculated determinant value | |||
\b Note: this will destroy the contents of the Matrix! | \b Note: this will destroy the contents of the Matrix! | |||
*/ | */ | |||
bool Det(T& det); | bool Det(T& det); | |||
/** | /** | |||
determinant of square Matrix via Dfact. | determinant of square Matrix via Dfact. | |||
Return true when the calculation is successfull. | Return true when the calculation is successfull. | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 24 lines changed or added | |||
SMatrix.icc | SMatrix.icc | |||
---|---|---|---|---|
// @(#)root/smatrix:$Id: SMatrix.icc 23735 2008-05-07 21:18:33Z moneta $ | // @(#)root/smatrix:$Id: SMatrix.icc 26866 2008-12-12 10:50:07Z moneta $ | |||
// Authors: T. Glebe, L. Moneta 2005 | // Authors: T. Glebe, L. Moneta 2005 | |||
#ifndef ROOT_Math_SMatrix_icc | #ifndef ROOT_Math_SMatrix_icc | |||
#define ROOT_Math_SMatrix_icc | #define ROOT_Math_SMatrix_icc | |||
// ******************************************************************** | // ******************************************************************** | |||
// | // | |||
// source: | // source: | |||
// | // | |||
// type: source code | // type: source code | |||
// | // | |||
skipping to change at line 396 | skipping to change at line 396 | |||
//========================================================================= ===== | //========================================================================= ===== | |||
// invert | // invert | |||
//========================================================================= ===== | //========================================================================= ===== | |||
template <class T, unsigned int D1, unsigned int D2, class R> | template <class T, unsigned int D1, unsigned int D2, class R> | |||
inline bool SMatrix<T,D1,D2,R>::Invert() { | inline bool SMatrix<T,D1,D2,R>::Invert() { | |||
STATIC_CHECK( D1 == D2,SMatrix_not_square); | STATIC_CHECK( D1 == D2,SMatrix_not_square); | |||
return Inverter<D1,D2>::Dinv((*this).fRep); | return Inverter<D1,D2>::Dinv((*this).fRep); | |||
} | } | |||
// invert returning a new matrix | ||||
template <class T, unsigned int D1, unsigned int D2, class R> | template <class T, unsigned int D1, unsigned int D2, class R> | |||
inline SMatrix<T,D1,D2,R> SMatrix<T,D1,D2,R>::Inverse(int & ifail) const { | inline SMatrix<T,D1,D2,R> SMatrix<T,D1,D2,R>::Inverse(int & ifail) const { | |||
SMatrix<T,D1,D2,R> tmp(*this); | SMatrix<T,D1,D2,R> tmp(*this); | |||
bool ok = tmp.Invert(); | bool ok = tmp.Invert(); | |||
ifail = 0; | ifail = 0; | |||
if (!ok) ifail = 1; | if (!ok) ifail = 1; | |||
return tmp; | return tmp; | |||
} | } | |||
// fast inversion | ||||
template <class T, unsigned int D1, unsigned int D2, class R> | ||||
inline bool SMatrix<T,D1,D2,R>::InvertFast() { | ||||
STATIC_CHECK( D1 == D2,SMatrix_not_square); | ||||
return FastInverter<D1,D2>::Dinv((*this).fRep); | ||||
} | ||||
// fast inversion returning a new matrix | ||||
template <class T, unsigned int D1, unsigned int D2, class R> | ||||
inline SMatrix<T,D1,D2,R> SMatrix<T,D1,D2,R>::InverseFast(int & ifail) cons | ||||
t { | ||||
SMatrix<T,D1,D2,R> tmp(*this); | ||||
bool ok = tmp.Invert(); | ||||
ifail = 0; | ||||
if (!ok) ifail = 1; | ||||
return tmp; | ||||
} | ||||
//========================================================================= ===== | //========================================================================= ===== | |||
// det | // det | |||
//========================================================================= ===== | //========================================================================= ===== | |||
template <class T, unsigned int D1, unsigned int D2, class R> | template <class T, unsigned int D1, unsigned int D2, class R> | |||
inline bool SMatrix<T,D1,D2,R>::Det(T& det) { | inline bool SMatrix<T,D1,D2,R>::Det(T& det) { | |||
STATIC_CHECK( D1 == D2,SMatrix_not_square); | STATIC_CHECK( D1 == D2,SMatrix_not_square); | |||
// return Dfact<SMatrix<T,D1,D1>, D1, D1>(*this,det); | // return Dfact<SMatrix<T,D1,D1>, D1, D1>(*this,det); | |||
//return Dfact<R, D1, D1>(fRep, det); | //return Dfact<R, D1, D1>(fRep, det); | |||
return Determinant<D1,D2>::Dfact(fRep, det); | return Determinant<D1,D2>::Dfact(fRep, det); | |||
} | } | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 20 lines changed or added | |||
TArchiveFile.h | TArchiveFile.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TArchiveFile.h 25343 2008-09-02 08:44:16Z rdm $ | // @(#)root/io:$Id: TArchiveFile.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Fons Rademakers 30/6/04 | // Author: Fons Rademakers 30/6/04 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 40 | skipping to change at line 40 | |||
#ifndef ROOT_TDatime | #ifndef ROOT_TDatime | |||
#include "TDatime.h" | #include "TDatime.h" | |||
#endif | #endif | |||
class TFile; | class TFile; | |||
class TArchiveMember; | class TArchiveMember; | |||
class TObjArray; | class TObjArray; | |||
class TArchiveFile : public TObject { | class TArchiveFile : public TObject { | |||
protected: | private: | |||
TArchiveFile(const TArchiveFile&); // Not implemented because | ||||
TArchiveFile can not be copied. | ||||
TArchiveFile& operator=(const TArchiveFile&); // Not implemented because | ||||
TArchiveFile can not be copied. | ||||
TArchiveFile(const TArchiveFile&); // Not implemented | protected: | |||
TArchiveFile& operator=(const TArchiveFile&); // Not implemented | ||||
TString fArchiveName; // Archive file name | TString fArchiveName; // Archive file name | |||
TString fMemberName; // Sub-file name | TString fMemberName; // Sub-file name | |||
Int_t fMemberIndex; // Index of sub-file in archive | Int_t fMemberIndex; // Index of sub-file in archive | |||
TFile *fFile; // File stream used to access the archive | TFile *fFile; // File stream used to access the archive | |||
TObjArray *fMembers; // Members in this archive | TObjArray *fMembers; // Members in this archive | |||
TArchiveMember *fCurMember; // Current archive member | TArchiveMember *fCurMember; // Current archive member | |||
static Bool_t ParseUrl(const char *url, TString &archive, TString &membe r, TString &type); | static Bool_t ParseUrl(const char *url, TString &archive, TString &membe r, TString &type); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 7 lines changed or added | |||
TAtomicCountGcc.h | TAtomicCountGcc.h | |||
---|---|---|---|---|
// @(#)root/thread:$Id: TAtomicCountGcc.h 25775 2008-10-10 07:10:33Z rdm $ | // @(#)root/thread:$Id: TAtomicCountGcc.h 26634 2008-12-03 17:39:25Z rdm $ | |||
// Author: Fons Rademakers 14/11/06 | // Author: Fons Rademakers 14/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 31 | skipping to change at line 31 | |||
// // | // // | |||
// This implementation uses GNU libstdc++ v3 atomic primitives, see // | // This implementation uses GNU libstdc++ v3 atomic primitives, see // | |||
// http://gcc.gnu.org/onlinedocs/porting/Thread-safety.html. // | // http://gcc.gnu.org/onlinedocs/porting/Thread-safety.html. // | |||
// // | // // | |||
// ATTENTION: Don't use this file directly, it is included by // | // ATTENTION: Don't use this file directly, it is included by // | |||
// TAtomicCount.h. // | // TAtomicCount.h. // | |||
// // | // // | |||
////////////////////////////////////////////////////////////////////////// | ////////////////////////////////////////////////////////////////////////// | |||
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 2) || \ | #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 2) || \ | |||
(defined(__APPLE_CC__) && __APPLE_CC__ > 5000) | (defined(__APPLE_CC__) && __APPLE_CC__ > 5000 && !defined(MAC_OS_X_VER SION_10_6)) | |||
#include <bits/atomicity.h> | #include <bits/atomicity.h> | |||
#else | #else | |||
#include <ext/atomicity.h> | #include <ext/atomicity.h> | |||
#endif | #endif | |||
#if defined(__GLIBCXX__) // g++ 3.4+ | #if defined(__GLIBCXX__) // g++ 3.4+ | |||
using __gnu_cxx::__atomic_add; | using __gnu_cxx::__atomic_add; | |||
using __gnu_cxx::__exchange_and_add; | using __gnu_cxx::__exchange_and_add; | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TAttBBox.h | TAttBBox.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TAttBBox.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TAttBBox.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// 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 33 | skipping to change at line 33 | |||
void BBoxInit(Float_t infinity=1e6); | void BBoxInit(Float_t infinity=1e6); | |||
void BBoxZero(Float_t epsilon=0, Float_t x=0, Float_t y=0, Float_t z=0); | void BBoxZero(Float_t epsilon=0, Float_t x=0, Float_t y=0, Float_t z=0); | |||
void BBoxClear(); | void BBoxClear(); | |||
void BBoxCheckPoint(Float_t x, Float_t y, Float_t z); | void BBoxCheckPoint(Float_t x, Float_t y, Float_t z); | |||
void BBoxCheckPoint(const Float_t* p); | void BBoxCheckPoint(const Float_t* p); | |||
void AssertBBoxExtents(Float_t epsilon=0.005); | void AssertBBoxExtents(Float_t epsilon=0.005); | |||
TAttBBox(const TAttBBox& tab) | TAttBBox(const TAttBBox& tab) : fBBox(0) { | |||
: fBBox(tab.fBBox) { } | BBoxInit(); if(tab.fBBox) for(Int_t i=0; i<6; i++) fBBox[i]=tab.fBBox | |||
[i]; | ||||
} | ||||
public: | public: | |||
TAttBBox(): fBBox(0) { } | TAttBBox(): fBBox(0) { } | |||
virtual ~TAttBBox() { BBoxClear(); } | virtual ~TAttBBox() { BBoxClear(); } | |||
TAttBBox& operator=(const TAttBBox& tab) | TAttBBox& operator=(const TAttBBox& tab) | |||
{if(this!=&tab) {BBoxInit(); if(tab.fBBox) for(Int_t i=0; i<6; i++) fB Box[i]=tab.fBBox[i];} | {if(this!=&tab) {BBoxInit(); if(tab.fBBox) for(Int_t i=0; i<6; i++) fB Box[i]=tab.fBBox[i];} | |||
return *this;} | return *this;} | |||
Bool_t GetBBoxOK() const { return fBBox != 0; } | Bool_t GetBBoxOK() const { return fBBox != 0; } | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 5 lines changed or added | |||
TBackCompFitter.h | TBackCompFitter.h | |||
---|---|---|---|---|
// @(#)root/minuit2:$Id: TBackCompFitter.h 26378 2008-11-22 11:46:21Z monet a $ | // @(#)root/minuit2:$Id: TBackCompFitter.h 26866 2008-12-12 10:50:07Z monet a $ | |||
// Author: L. Moneta 08/2008 | // Author: L. Moneta 08/2008 | |||
/********************************************************************** | /********************************************************************** | |||
* * | * * | |||
* Copyright (c) 2008 ROOT Foundation, CERN/PH-SFT * | * Copyright (c) 2008 ROOT Foundation, CERN/PH-SFT * | |||
* * | * * | |||
**********************************************************************/ | **********************************************************************/ | |||
#ifndef ROOT_TBackCompFitter_H_ | #ifndef ROOT_TBackCompFitter_H_ | |||
#define ROOT_TBackCompFitter_H_ | #define ROOT_TBackCompFitter_H_ | |||
#ifndef ROOT_TVirtualFitter | #ifndef ROOT_TVirtualFitter | |||
#include "TVirtualFitter.h" | #include "TVirtualFitter.h" | |||
#endif | #endif | |||
#ifndef ROOT_Fit_Fitter | #ifndef ROOT_Fit_Fitter | |||
#include "Fit/Fitter.h" | #include "Fit/Fitter.h" | |||
#endif | #endif | |||
#ifndef ROOT_Fit_DataVector | ||||
#include "Fit/DataVector.h" | ||||
#endif | ||||
#ifndef ROOT_Math_IFunctionfwd | #ifndef ROOT_Math_IFunctionfwd | |||
#include "Math/IFunctionfwd.h" | #include "Math/IFunctionfwd.h" | |||
#endif | #endif | |||
#include <vector> | #include <vector> | |||
/** | /** | |||
TVirtualFitter backward compatibility implementation using new ROOT::Fi t::Fitter | TVirtualFitter backward compatibility implementation using new ROOT::Fi t::Fitter | |||
*/ | */ | |||
class TGraph; | ||||
namespace ROOT { | namespace ROOT { | |||
namespace Fit { | namespace Fit { | |||
class FitData; | class FitData; | |||
} | } | |||
} | } | |||
class TBackCompFitter : public TVirtualFitter { | class TBackCompFitter : public TVirtualFitter { | |||
public: | public: | |||
TBackCompFitter(); | TBackCompFitter(); | |||
TBackCompFitter(ROOT::Fit::Fitter & fitter, ROOT::Fit::FitData * ); | //TBackCompFitter(ROOT::Fit::Fitter & fitter, ROOT::Fit::FitData * ); | |||
TBackCompFitter( std::auto_ptr<ROOT::Fit::Fitter> fitter, std::auto_ptr | ||||
<ROOT::Fit::FitData> data ); | ||||
virtual ~TBackCompFitter(); | virtual ~TBackCompFitter(); | |||
public: | public: | |||
// inherited interface | // inherited interface | |||
virtual Double_t Chisquare(Int_t npar, Double_t *params) const; | virtual Double_t Chisquare(Int_t npar, Double_t *params) const; | |||
virtual void Clear(Option_t *option=""); | virtual void Clear(Option_t *option=""); | |||
virtual Int_t ExecuteCommand(const char *command, Double_t *args, In t_t nargs); | virtual Int_t ExecuteCommand(const char *command, Double_t *args, In t_t nargs); | |||
virtual void FixParameter(Int_t ipar); | virtual void FixParameter(Int_t ipar); | |||
skipping to change at line 86 | skipping to change at line 93 | |||
virtual void ReleaseParameter(Int_t ipar); | virtual void ReleaseParameter(Int_t ipar); | |||
virtual void SetFitMethod(const char *name); | virtual void SetFitMethod(const char *name); | |||
virtual Int_t SetParameter(Int_t ipar,const char *parname,Double_t v alue,Double_t verr,Double_t vlow, Double_t vhigh); | virtual Int_t SetParameter(Int_t ipar,const char *parname,Double_t v alue,Double_t verr,Double_t vlow, Double_t vhigh); | |||
virtual void SetFCN(void (*fcn)(Int_t &, Double_t *, Double_t &f, D ouble_t *, Int_t) ); | virtual void SetFCN(void (*fcn)(Int_t &, Double_t *, Double_t &f, D ouble_t *, Int_t) ); | |||
// this for CINT (interactive functions) | // this for CINT (interactive functions) | |||
virtual void SetFCN(void * ); | virtual void SetFCN(void * ); | |||
// for using interpreted function passed by the user | // for using interpreted function passed by the user | |||
virtual void SetMethodCall(TMethodCall * m) { fMethodCall = m; } | virtual void SetMethodCall(TMethodCall * m) { fMethodCall = m; } | |||
///!!!! new method (of this interface) | ||||
// get reference to Fit configuration (NOTE: it will be invalid when cla | ||||
ss is deleted) | ||||
ROOT::Fit::FitConfig & GetFitConfig() { return fFitter->Config(); } | ||||
// get reference to Fit Result object (NOTE: it will be invalid when cla | ||||
ss is deleted) | ||||
const ROOT::Fit::FitResult & GetFitResult() const { return fFitter->Resu | ||||
lt(); } | ||||
// scan likelihood value of parameter and fill the given graph. | ||||
bool Scan(unsigned int ipar, TGraph * gr, double xmin = 0, double xmax | ||||
= 0); | ||||
// // scan likelihood value for two parameters and fill the given graph | ||||
. | ||||
// bool Scan2D(unsigned int ipar, unsigned int jpar, TGraph2D * gr, | ||||
// double xmin = 0, double xmax = 0, double ymin = | ||||
0, double ymax = 0); | ||||
// create contour of two parameters around the minimum | ||||
// pass as option confidence level: default is a value of 0.683 | ||||
bool Contour(unsigned int ipar, unsigned int jpar, TGraph * gr , double | ||||
confLevel = 0.683); | ||||
// set FCN using new interface | // set FCN using new interface | |||
virtual void SetObjFunction( ROOT::Math::IMultiGenFunction * f); | virtual void SetObjFunction( ROOT::Math::IMultiGenFunction * f); | |||
// recreate minimizer and FCN for TMinuit fits and standard printout | // recreate minimizer and FCN for TMinuit fits and standard printout | |||
void ReCreateMinimizer(); | void ReCreateMinimizer(); | |||
protected: | protected: | |||
// internal methods | // internal methods | |||
bool ValidParameterIndex(int ipar) const; | bool ValidParameterIndex(int ipar) const; | |||
void DoSetDimension(); | void DoSetDimension(); | |||
private: | private: | |||
ROOT::Fit::FitData * fFitData; | //ROOT::Fit::FitData * fFitData; | |||
std::auto_ptr<ROOT::Fit::FitData> fFitData; //! data of the fit (manag | ||||
ed by TBackCompFitter) | ||||
std::auto_ptr<ROOT::Fit::Fitter> fFitter; //! pointer to fitter obje | ||||
ct (managed by TBackCompFitter) | ||||
ROOT::Math::Minimizer * fMinimizer; | ROOT::Math::Minimizer * fMinimizer; | |||
ROOT::Fit::Fitter fFitter; | ||||
ROOT::Math::IMultiGenFunction * fObjFunc; | ROOT::Math::IMultiGenFunction * fObjFunc; | |||
ROOT::Math::IParamMultiFunction * fModelFunc; | ||||
mutable std::vector<double> fCovar; // cached covariance matrix (NxN) | mutable std::vector<double> fCovar; // cached covariance matrix (NxN) | |||
ClassDef(TBackCompFitter,1) // Class providing backward compatibility f or fitting by implementing the TVirtualFitter interface | ClassDef(TBackCompFitter,1) // Class providing backward compatibility f or fitting by implementing the TVirtualFitter interface | |||
}; | }; | |||
#endif //ROOT_TBackCompFitter_H_ | #endif //ROOT_TBackCompFitter_H_ | |||
End of changes. 8 change blocks. | ||||
4 lines changed or deleted | 42 lines changed or added | |||
TBaseClass.h | TBaseClass.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TBaseClass.h 24077 2008-05-31 19:39:09Z brun $ | // @(#)root/meta:$Id: TBaseClass.h 26606 2008-12-02 20:36:09Z 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 33 | skipping to change at line 33 | |||
#ifndef ROOT_TDictionary | #ifndef ROOT_TDictionary | |||
#include "TDictionary.h" | #include "TDictionary.h" | |||
#endif | #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&operator=(const TBaseClass&); // Not implemented | ||||
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 | TClass *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); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TBasket.h | TBasket.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TBasket.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/tree:$Id: TBasket.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 19/01/96 | // Author: Rene Brun 19/01/96 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 37 | skipping to change at line 37 | |||
#ifndef ROOT_TKey | #ifndef ROOT_TKey | |||
#include "TKey.h" | #include "TKey.h" | |||
#endif | #endif | |||
class TFile; | class TFile; | |||
class TTree; | class TTree; | |||
class TBranch; | class TBranch; | |||
class TBasket : public TKey { | class TBasket : public TKey { | |||
private: | ||||
TBasket(const TBasket&); // TBasket objects are not copiable. | ||||
TBasket& operator=(const TBasket&); // TBasket objects are not copiable. | ||||
protected: | protected: | |||
Int_t fBufferSize; //fBuffer length in bytes | Int_t fBufferSize; //fBuffer length in bytes | |||
Int_t fNevBufSize; //Length in Int_t of fEntryOffset OR fixed length of each entry if fEntryOffset is null! | Int_t fNevBufSize; //Length in Int_t of fEntryOffset OR fixed length of each entry if fEntryOffset is null! | |||
Int_t fNevBuf; //Number of entries in basket | Int_t fNevBuf; //Number of entries in basket | |||
Int_t fLast; //Pointer to last used byte in basket | Int_t fLast; //Pointer to last used byte in basket | |||
Bool_t fHeaderOnly; //True when only the basket header must be read/written | Bool_t fHeaderOnly; //True when only the basket header must be read/written | |||
Int_t *fDisplacement; //![fNevBuf] Displacement of entries in fB uffer(TKey) | Int_t *fDisplacement; //![fNevBuf] Displacement of entries in fB uffer(TKey) | |||
Int_t *fEntryOffset; //[fNevBuf] Offset of entries in fBuffer(T Key) | Int_t *fEntryOffset; //[fNevBuf] Offset of entries in fBuffer(T Key) | |||
TBranch *fBranch; //Pointer to the basket support branch | TBranch *fBranch; //Pointer to the basket support branch | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TBasketSQL.h | TBasketSQL.h | |||
---|---|---|---|---|
// @(#)root/tree:$Id: TBasketSQL.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/tree:$Id: TBasketSQL.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Philippe Canal 2005 | // Author: Philippe Canal 2005 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 32 | skipping to change at line 32 | |||
#include <vector> | #include <vector> | |||
#include "TBasket.h" | #include "TBasket.h" | |||
class TSQLResult; | class TSQLResult; | |||
class TSQLRow; | class TSQLRow; | |||
class TBufferSQL; | class TBufferSQL; | |||
class TBasketSQL : public TBasket | class TBasketSQL : public TBasket | |||
{ | { | |||
private: | ||||
TBasketSQL(const TBasketSQL&); // TBasketSQL objects are not | ||||
copiable. | ||||
TBasketSQL& operator=(const TBasketSQL&); // TBasketSQL objects are not | ||||
copiable. | ||||
protected: | protected: | |||
TSQLResult **fResultPtr; //! | TSQLResult **fResultPtr; //! | |||
TSQLRow **fRowPtr; //! | TSQLRow **fRowPtr; //! | |||
TString *fInsertQuery; //! | TString *fInsertQuery; //! | |||
public: | public: | |||
TBasketSQL(); | TBasketSQL(); | |||
TBasketSQL(const char *name, const char *title, | TBasketSQL(const char *name, const char *title, | |||
TBranch *branch, TSQLResult **rs, | TBranch *branch, TSQLResult **rs, | |||
TString *insert_query, std::vector<Int_t> *vc, TSQLRow **row) ; | TString *insert_query, std::vector<Int_t> *vc, TSQLRow **row) ; | |||
~TBasketSQL(); | ~TBasketSQL(); | |||
void PrepareBasket(Long64_t entry); | void PrepareBasket(Long64_t entry); | |||
virtual Int_t ReadBasketBuffers(Long64_t pos, Int_t len, TFile *file); | virtual Int_t ReadBasketBuffers(Long64_t pos, Int_t len, TFile *file); | |||
virtual Int_t ReadBasketBytes(Long64_t pos, TFile *file); | virtual Int_t ReadBasketBytes(Long64_t pos, TFile *file); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 11 lines changed or added | |||
TBrowser.h | TBrowser.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TBrowser.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TBrowser.h 26615 2008-12-03 00:57:41Z pcanal $ | |||
// Author: Fons Rademakers 25/10/95 | // Author: Fons Rademakers 25/10/95 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 43 | skipping to change at line 43 | |||
#endif | #endif | |||
class TContextMenu; | class TContextMenu; | |||
class TBrowserTimer; | class TBrowserTimer; | |||
class TBrowser : public TNamed { | class TBrowser : public TNamed { | |||
private: | private: | |||
TObject *fLastSelectedObject; //!The last TObject selected by user | TObject *fLastSelectedObject; //!The last TObject selected by user | |||
TBrowser(const TBrowser&); // TBrowser can not be copied sin | ||||
ce we do not know the type of the TBrowserImp (and it can not be 'Cloned') | ||||
TBrowser& operator=(const TBrowser&); // TBrowser can not be copied sin | ||||
ce we do not know the type of the TBrowserImp (and it can not be 'Cloned') | ||||
protected: | protected: | |||
TBrowserImp *fImp; //!Window system specific browser im plementation | TBrowserImp *fImp; //!Window system specific browser im plementation | |||
TBrowserTimer *fTimer; //!Browser's timer | TBrowserTimer *fTimer; //!Browser's timer | |||
TContextMenu *fContextMenu; //!Context menu pointer | TContextMenu *fContextMenu; //!Context menu pointer | |||
Bool_t fNeedRefresh; //True if the browser needs refresh | Bool_t fNeedRefresh; //True if the browser needs refresh | |||
TBrowser(const TBrowser&); | ||||
TBrowser& operator=(const TBrowser&); | ||||
public: | public: | |||
enum { | enum { | |||
kNoHidden = BIT(9) // don't show '.' files and directories | kNoHidden = BIT(9) // don't show '.' files and directories | |||
}; | }; | |||
TBrowser(const char *name="Browser", const char *title="ROOT Object Brow ser", TBrowserImp *extimp=0, Option_t *opt=""); | TBrowser(const char *name="Browser", const char *title="ROOT Object Brow ser", TBrowserImp *extimp=0, Option_t *opt=""); | |||
TBrowser(const char *name, const char *title, UInt_t width, UInt_t heigh t, TBrowserImp *extimp=0, Option_t *opt=""); | TBrowser(const char *name, const char *title, UInt_t width, UInt_t heigh t, TBrowserImp *extimp=0, Option_t *opt=""); | |||
TBrowser(const char *name, const char *title, Int_t x, Int_t y, UInt_t w idth, UInt_t height, TBrowserImp *extimp=0, Option_t *opt=""); | TBrowser(const char *name, const char *title, Int_t x, Int_t y, UInt_t w idth, UInt_t height, TBrowserImp *extimp=0, Option_t *opt=""); | |||
TBrowser(const char *name, TObject *obj, const char *title="ROOT Object Browser", Option_t *opt=""); | TBrowser(const char *name, TObject *obj, const char *title="ROOT Object Browser", Option_t *opt=""); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added | |||
TCanvasImp.h | TCanvasImp.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TCanvasImp.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TCanvasImp.h 26760 2008-12-09 15:56:43Z brun $ | |||
// Author: Fons Rademakers 16/11/95 | // Author: Fons Rademakers 16/11/95 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 71 | skipping to change at line 71 | |||
virtual void SetCanvasSize(UInt_t w, UInt_t h); | virtual void SetCanvasSize(UInt_t w, UInt_t h); | |||
virtual void Show() { } | virtual void Show() { } | |||
virtual void ShowMenuBar(Bool_t show = kTRUE); | virtual void ShowMenuBar(Bool_t show = kTRUE); | |||
virtual void ShowStatusBar(Bool_t show = kTRUE); | virtual void ShowStatusBar(Bool_t show = kTRUE); | |||
virtual void RaiseWindow(); | virtual void RaiseWindow(); | |||
virtual void ReallyDelete(); | virtual void ReallyDelete(); | |||
virtual void ShowEditor(Bool_t show = kTRUE); | virtual void ShowEditor(Bool_t show = kTRUE); | |||
virtual void ShowToolBar(Bool_t show = kTRUE); | virtual void ShowToolBar(Bool_t show = kTRUE); | |||
virtual Bool_t HasEditor() const { return kFALSE; } | ||||
virtual Bool_t HasMenuBar() const { return kFALSE; } | ||||
virtual Bool_t HasStatusBar() const { return kFALSE; } | ||||
virtual Bool_t HasToolBar() const { return kFALSE; } | ||||
ClassDef(TCanvasImp,0) //ABC describing main window protocol | ClassDef(TCanvasImp,0) //ABC describing main window protocol | |||
}; | }; | |||
inline TCanvasImp::TCanvasImp(TCanvas *c, const char *, UInt_t, UInt_t) : f Canvas(c) { } | inline TCanvasImp::TCanvasImp(TCanvas *c, const char *, UInt_t, UInt_t) : f Canvas(c) { } | |||
inline TCanvasImp::TCanvasImp(TCanvas *c, const char *, Int_t, Int_t, UInt_ t, UInt_t) : fCanvas(c) { } | inline TCanvasImp::TCanvasImp(TCanvas *c, const char *, Int_t, Int_t, UInt_ t, UInt_t) : fCanvas(c) { } | |||
inline UInt_t TCanvasImp::GetWindowGeometry(Int_t &x, Int_t &y, UInt_t &w, UInt_t &h) | inline UInt_t TCanvasImp::GetWindowGeometry(Int_t &x, Int_t &y, UInt_t &w, UInt_t &h) | |||
{ x = y = 0; w = h = 0; return 0;} | { x = y = 0; w = h = 0; return 0;} | |||
inline void TCanvasImp::SetStatusText(const char *, Int_t) { } | inline void TCanvasImp::SetStatusText(const char *, Int_t) { } | |||
inline void TCanvasImp::SetWindowPosition(Int_t, Int_t) { } | inline void TCanvasImp::SetWindowPosition(Int_t, Int_t) { } | |||
inline void TCanvasImp::SetWindowSize(UInt_t, UInt_t) { } | inline void TCanvasImp::SetWindowSize(UInt_t, UInt_t) { } | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
TCint.h | TCint.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TCint.h 25283 2008-08-27 16:56:42Z pcanal $ | // @(#)root/meta:$Id: TCint.h 26888 2008-12-12 21:43:12Z 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 184 | skipping to change at line 184 | |||
virtual void SetRTLD_LAZY() const; | virtual void SetRTLD_LAZY() const; | |||
virtual void SetTempLevel(int val) const; | virtual void SetTempLevel(int val) const; | |||
virtual int UnloadFile(const char *path) const; | virtual int UnloadFile(const char *path) const; | |||
// G__CallFunc interface | // G__CallFunc interface | |||
virtual void CallFunc_Delete(void *func) const; | virtual void CallFunc_Delete(void *func) const; | |||
virtual void CallFunc_Exec(CallFunc_t *func, void *address) const; | virtual void CallFunc_Exec(CallFunc_t *func, void *address) const; | |||
virtual Long_t CallFunc_ExecInt(CallFunc_t *func, void *address) cons t; | virtual Long_t CallFunc_ExecInt(CallFunc_t *func, void *address) cons t; | |||
virtual Long_t CallFunc_ExecInt64(CallFunc_t *func, void *address) co nst; | virtual Long_t CallFunc_ExecInt64(CallFunc_t *func, void *address) co nst; | |||
virtual Double_t CallFunc_ExecDouble(CallFunc_t *func, void *address) c onst; | virtual Double_t CallFunc_ExecDouble(CallFunc_t *func, void *address) c onst; | |||
virtual void *CallFunc_Factory() const; | virtual CallFunc_t *CallFunc_Factory() const; | |||
virtual void *CallFunc_FactoryCopy(CallFunc_t *func) const; | virtual CallFunc_t *CallFunc_FactoryCopy(CallFunc_t *func) const; | |||
virtual void *CallFunc_FactoryMethod(CallFunc_t *func) const; | virtual MethodInfo_t *CallFunc_FactoryMethod(CallFunc_t *func) const; | |||
virtual void CallFunc_Init(CallFunc_t *func) const; | virtual void CallFunc_Init(CallFunc_t *func) const; | |||
virtual bool CallFunc_IsValid(CallFunc_t *func) const; | virtual bool CallFunc_IsValid(CallFunc_t *func) const; | |||
virtual void CallFunc_ResetArg(CallFunc_t *func) const; | virtual void CallFunc_ResetArg(CallFunc_t *func) const; | |||
virtual void CallFunc_SetArg(CallFunc_t *func, Long_t param) const; | virtual void CallFunc_SetArg(CallFunc_t *func, Long_t param) const; | |||
virtual void CallFunc_SetArg(CallFunc_t *func, Double_t param) const; | virtual void CallFunc_SetArg(CallFunc_t *func, Double_t param) const; | |||
virtual void CallFunc_SetArg(CallFunc_t *func, Long64_t param) const; | virtual void CallFunc_SetArg(CallFunc_t *func, Long64_t param) const; | |||
virtual void CallFunc_SetArg(CallFunc_t *func, ULong64_t param) const; | virtual void CallFunc_SetArg(CallFunc_t *func, ULong64_t param) const; | |||
virtual void CallFunc_SetArgArray(CallFunc_t *func, Long_t *paramArr, Int_t nparam) const; | virtual void CallFunc_SetArgArray(CallFunc_t *func, Long_t *paramArr, Int_t nparam) const; | |||
virtual void CallFunc_SetArgs(CallFunc_t *func, const char *param) con st; | virtual void CallFunc_SetArgs(CallFunc_t *func, const char *param) con st; | |||
virtual void CallFunc_SetFunc(CallFunc_t *func, ClassInfo_t *info, con st char *method, const char *params, Long_t *Offset) const; | virtual void CallFunc_SetFunc(CallFunc_t *func, ClassInfo_t *info, con st char *method, const char *params, Long_t *Offset) const; | |||
virtual void CallFunc_SetFunc(CallFunc_t *func, MethodInfo_t *info) co nst; | virtual void CallFunc_SetFunc(CallFunc_t *func, MethodInfo_t *info) co nst; | |||
virtual void CallFunc_SetFuncProto(CallFunc_t *func, ClassInfo_t *info , const char *method, const char *proto, Long_t *Offset) const; | virtual void CallFunc_SetFuncProto(CallFunc_t *func, ClassInfo_t *info , const char *method, const char *proto, Long_t *Offset) const; | |||
// G__ClassInfo interface | // G__ClassInfo interface | |||
virtual Long_t ClassInfo_ClassProperty(ClassInfo_t *info) const; | virtual Long_t ClassInfo_ClassProperty(ClassInfo_t *info) const; | |||
virtual void ClassInfo_Delete(ClassInfo_t *info) const; | virtual void ClassInfo_Delete(ClassInfo_t *info) const; | |||
virtual void ClassInfo_Delete(ClassInfo_t *info, void *arena) const; | virtual void ClassInfo_Delete(ClassInfo_t *info, void *arena) const; | |||
virtual void ClassInfo_DeleteArray(ClassInfo_t *info, void *arena, boo l dtorOnly) const; | virtual void ClassInfo_DeleteArray(ClassInfo_t *info, void *arena, boo l dtorOnly) const; | |||
virtual void ClassInfo_Destruct(ClassInfo_t *info, void *arena) const; | virtual void ClassInfo_Destruct(ClassInfo_t *info, void *arena) const; | |||
virtual void *ClassInfo_Factory() const; | virtual ClassInfo_t *ClassInfo_Factory() const; | |||
virtual void *ClassInfo_Factory(ClassInfo_t *cl) const; | virtual ClassInfo_t *ClassInfo_Factory(G__value * /* value */) const; | |||
virtual void *ClassInfo_Factory(const char *name) const; | virtual ClassInfo_t *ClassInfo_Factory(ClassInfo_t *cl) const; | |||
virtual ClassInfo_t *ClassInfo_Factory(const char *name) const; | ||||
virtual int ClassInfo_GetMethodNArg(ClassInfo_t *info, const char *me thod,const char *proto) const; | virtual int ClassInfo_GetMethodNArg(ClassInfo_t *info, const char *me thod,const char *proto) const; | |||
virtual bool ClassInfo_HasDefaultConstructor(ClassInfo_t *info) const; | virtual bool ClassInfo_HasDefaultConstructor(ClassInfo_t *info) const; | |||
virtual bool ClassInfo_HasMethod(ClassInfo_t *info, const char *name) const; | virtual bool ClassInfo_HasMethod(ClassInfo_t *info, const char *name) const; | |||
virtual void ClassInfo_Init(ClassInfo_t *info, const char *funcname) c onst; | virtual void ClassInfo_Init(ClassInfo_t *info, const char *funcname) c onst; | |||
virtual void ClassInfo_Init(ClassInfo_t *info, int tagnum) const; | virtual void ClassInfo_Init(ClassInfo_t *info, int tagnum) const; | |||
virtual bool ClassInfo_IsBase(ClassInfo_t *info, const char *name) con st; | virtual bool ClassInfo_IsBase(ClassInfo_t *info, const char *name) con st; | |||
virtual bool ClassInfo_IsEnum(const char *name) const; | virtual bool ClassInfo_IsEnum(const char *name) const; | |||
virtual bool ClassInfo_IsLoaded(ClassInfo_t *info) const; | virtual bool ClassInfo_IsLoaded(ClassInfo_t *info) const; | |||
virtual bool ClassInfo_IsValid(ClassInfo_t *info) const; | virtual bool ClassInfo_IsValid(ClassInfo_t *info) const; | |||
virtual bool ClassInfo_IsValidMethod(ClassInfo_t *info, const char *me thod,const char *proto, Long_t *offset) const; | virtual bool ClassInfo_IsValidMethod(ClassInfo_t *info, const char *me thod,const char *proto, Long_t *offset) const; | |||
skipping to change at line 236 | skipping to change at line 237 | |||
virtual int ClassInfo_Size(ClassInfo_t *info) const; | virtual int ClassInfo_Size(ClassInfo_t *info) const; | |||
virtual Long_t ClassInfo_Tagnum(ClassInfo_t *info) const; | virtual Long_t ClassInfo_Tagnum(ClassInfo_t *info) const; | |||
virtual const char *ClassInfo_FileName(ClassInfo_t *info) const; | virtual const char *ClassInfo_FileName(ClassInfo_t *info) const; | |||
virtual const char *ClassInfo_FullName(ClassInfo_t *info) const; | virtual const char *ClassInfo_FullName(ClassInfo_t *info) const; | |||
virtual const char *ClassInfo_Name(ClassInfo_t *info) const; | virtual const char *ClassInfo_Name(ClassInfo_t *info) const; | |||
virtual const char *ClassInfo_Title(ClassInfo_t *info) const; | virtual const char *ClassInfo_Title(ClassInfo_t *info) const; | |||
virtual const char *ClassInfo_TmpltName(ClassInfo_t *info) const; | virtual const char *ClassInfo_TmpltName(ClassInfo_t *info) const; | |||
// G__BaseClassInfo interface | // G__BaseClassInfo interface | |||
virtual void BaseClassInfo_Delete(BaseClassInfo_t *bcinfo) const; | virtual void BaseClassInfo_Delete(BaseClassInfo_t *bcinfo) const; | |||
virtual void *BaseClassInfo_Factory(ClassInfo_t *info) const; | virtual BaseClassInfo_t *BaseClassInfo_Factory(ClassInfo_t *info) const ; | |||
virtual int BaseClassInfo_Next(BaseClassInfo_t *bcinfo) const; | virtual int BaseClassInfo_Next(BaseClassInfo_t *bcinfo) const; | |||
virtual int BaseClassInfo_Next(BaseClassInfo_t *bcinfo, int onlyDirec t) const; | virtual int BaseClassInfo_Next(BaseClassInfo_t *bcinfo, int onlyDirec t) const; | |||
virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t *bcinfo) const; | virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t *bcinfo) const; | |||
virtual Long_t BaseClassInfo_Property(BaseClassInfo_t *bcinfo) const; | virtual Long_t BaseClassInfo_Property(BaseClassInfo_t *bcinfo) const; | |||
virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t *bcinfo) const; | virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t *bcinfo) const; | |||
virtual const char *BaseClassInfo_FullName(BaseClassInfo_t *bcinfo) cons t; | virtual const char *BaseClassInfo_FullName(BaseClassInfo_t *bcinfo) cons t; | |||
virtual const char *BaseClassInfo_Name(BaseClassInfo_t *bcinfo) const; | virtual const char *BaseClassInfo_Name(BaseClassInfo_t *bcinfo) const; | |||
virtual const char *BaseClassInfo_TmpltName(BaseClassInfo_t *bcinfo) con st; | virtual const char *BaseClassInfo_TmpltName(BaseClassInfo_t *bcinfo) con st; | |||
// G__DataMemberInfo interface | // G__DataMemberInfo interface | |||
virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t *dminfo) const; | virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t *dminfo) const; | |||
virtual void DataMemberInfo_Delete(DataMemberInfo_t *dminfo) const; | virtual void DataMemberInfo_Delete(DataMemberInfo_t *dminfo) const; | |||
virtual void *DataMemberInfo_Factory(ClassInfo_t *clinfo = 0) const; | virtual DataMemberInfo_t *DataMemberInfo_Factory(ClassInfo_t *clinfo = | |||
virtual void *DataMemberInfo_FactoryCopy(DataMemberInfo_t *dminfo) cons | 0) const; | |||
t; | virtual DataMemberInfo_t *DataMemberInfo_FactoryCopy(DataMemberInfo_t * | |||
dminfo) const; | ||||
virtual bool DataMemberInfo_IsValid(DataMemberInfo_t *dminfo) const; | virtual bool DataMemberInfo_IsValid(DataMemberInfo_t *dminfo) const; | |||
virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t *dminfo, Int_t d im) const; | virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t *dminfo, Int_t d im) const; | |||
virtual int DataMemberInfo_Next(DataMemberInfo_t *dminfo) const; | virtual int DataMemberInfo_Next(DataMemberInfo_t *dminfo) const; | |||
virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t *dminfo) const; | virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t *dminfo) const; | |||
virtual Long_t DataMemberInfo_Property(DataMemberInfo_t *dminfo) const; | virtual Long_t DataMemberInfo_Property(DataMemberInfo_t *dminfo) const; | |||
virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t *dminfo) con st; | virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t *dminfo) con st; | |||
virtual int DataMemberInfo_TypeSize(DataMemberInfo_t *dminfo) const; | virtual int DataMemberInfo_TypeSize(DataMemberInfo_t *dminfo) const; | |||
virtual const char *DataMemberInfo_TypeName(DataMemberInfo_t *dminfo) co nst; | virtual const char *DataMemberInfo_TypeName(DataMemberInfo_t *dminfo) co nst; | |||
virtual const char *DataMemberInfo_TypeTrueName(DataMemberInfo_t *dminfo ) const; | virtual const char *DataMemberInfo_TypeTrueName(DataMemberInfo_t *dminfo ) const; | |||
virtual const char *DataMemberInfo_Name(DataMemberInfo_t *dminfo) const; | virtual const char *DataMemberInfo_Name(DataMemberInfo_t *dminfo) const; | |||
virtual const char *DataMemberInfo_Title(DataMemberInfo_t *dminfo) const ; | virtual const char *DataMemberInfo_Title(DataMemberInfo_t *dminfo) const ; | |||
virtual const char *DataMemberInfo_ValidArrayIndex(DataMemberInfo_t *dmi nfo) const; | virtual const char *DataMemberInfo_ValidArrayIndex(DataMemberInfo_t *dmi nfo) const; | |||
// G__MethodInfo interface | // G__MethodInfo interface | |||
virtual void MethodInfo_CreateSignature(MethodInfo_t *minfo, TString & signature) const; | virtual void MethodInfo_CreateSignature(MethodInfo_t *minfo, TString & signature) const; | |||
virtual void MethodInfo_Delete(MethodInfo_t *minfo) const; | virtual void MethodInfo_Delete(MethodInfo_t *minfo) const; | |||
virtual void *MethodInfo_Factory() const; | virtual MethodInfo_t *MethodInfo_Factory() const; | |||
virtual void *MethodInfo_FactoryCopy(MethodInfo_t *minfo) const; | virtual MethodInfo_t *MethodInfo_FactoryCopy(MethodInfo_t *minfo) const | |||
virtual void *MethodInfo_InterfaceMethod(MethodInfo_t *minfo) const; | ; | |||
virtual MethodInfo_t *MethodInfo_InterfaceMethod(MethodInfo_t *minfo) c | ||||
onst; | ||||
virtual bool MethodInfo_IsValid(MethodInfo_t *minfo) const; | virtual bool MethodInfo_IsValid(MethodInfo_t *minfo) const; | |||
virtual int MethodInfo_NArg(MethodInfo_t *minfo) const; | virtual int MethodInfo_NArg(MethodInfo_t *minfo) const; | |||
virtual int MethodInfo_NDefaultArg(MethodInfo_t *minfo) const; | virtual int MethodInfo_NDefaultArg(MethodInfo_t *minfo) const; | |||
virtual int MethodInfo_Next(MethodInfo_t *minfo) const; | virtual int MethodInfo_Next(MethodInfo_t *minfo) const; | |||
virtual Long_t MethodInfo_Property(MethodInfo_t *minfo) const; | virtual Long_t MethodInfo_Property(MethodInfo_t *minfo) const; | |||
virtual void *MethodInfo_Type(MethodInfo_t *minfo) const; | virtual TypeInfo_t *MethodInfo_Type(MethodInfo_t *minfo) const; | |||
virtual const char *MethodInfo_GetMangledName(MethodInfo_t *minfo) const ; | virtual const char *MethodInfo_GetMangledName(MethodInfo_t *minfo) const ; | |||
virtual const char *MethodInfo_GetPrototype(MethodInfo_t *minfo) const; | virtual const char *MethodInfo_GetPrototype(MethodInfo_t *minfo) const; | |||
virtual const char *MethodInfo_Name(MethodInfo_t *minfo) const; | virtual const char *MethodInfo_Name(MethodInfo_t *minfo) const; | |||
virtual const char *MethodInfo_TypeName(MethodInfo_t *minfo) const; | virtual const char *MethodInfo_TypeName(MethodInfo_t *minfo) const; | |||
virtual const char *MethodInfo_Title(MethodInfo_t *minfo) const; | virtual const char *MethodInfo_Title(MethodInfo_t *minfo) const; | |||
// G__MethodArgInfo interface | // G__MethodArgInfo interface | |||
virtual void MethodArgInfo_Delete(MethodArgInfo_t *marginfo) const; | virtual void MethodArgInfo_Delete(MethodArgInfo_t *marginfo) const; | |||
virtual void *MethodArgInfo_Factory() const; | virtual MethodArgInfo_t *MethodArgInfo_Factory() const; | |||
virtual void *MethodArgInfo_FactoryCopy(MethodArgInfo_t *marginfo) cons | virtual MethodArgInfo_t *MethodArgInfo_FactoryCopy(MethodArgInfo_t *mar | |||
t; | ginfo) const; | |||
virtual bool MethodArgInfo_IsValid(MethodArgInfo_t *marginfo) const; | virtual bool MethodArgInfo_IsValid(MethodArgInfo_t *marginfo) const; | |||
virtual int MethodArgInfo_Next(MethodArgInfo_t *marginfo) const; | virtual int MethodArgInfo_Next(MethodArgInfo_t *marginfo) const; | |||
virtual Long_t MethodArgInfo_Property(MethodArgInfo_t *marginfo) const; | virtual Long_t MethodArgInfo_Property(MethodArgInfo_t *marginfo) const; | |||
virtual const char *MethodArgInfo_DefaultValue(MethodArgInfo_t *marginfo ) const; | virtual const char *MethodArgInfo_DefaultValue(MethodArgInfo_t *marginfo ) const; | |||
virtual const char *MethodArgInfo_Name(MethodArgInfo_t *marginfo) const; | virtual const char *MethodArgInfo_Name(MethodArgInfo_t *marginfo) const; | |||
virtual const char *MethodArgInfo_TypeName(MethodArgInfo_t *marginfo) co nst; | virtual const char *MethodArgInfo_TypeName(MethodArgInfo_t *marginfo) co nst; | |||
// G__TypeInfo interface | // G__TypeInfo interface | |||
virtual void TypeInfo_Delete(TypeInfo_t *tinfo) const; | virtual void TypeInfo_Delete(TypeInfo_t *tinfo) const; | |||
virtual void *TypeInfo_Factory() const; | virtual TypeInfo_t *TypeInfo_Factory() const; | |||
virtual TypeInfo_t *TypeInfo_Factory(G__value * /* value */) const; | ||||
virtual TypeInfo_t *TypeInfo_FactoryCopy(TypeInfo_t * /* tinfo */) const | ||||
; | ||||
virtual void TypeInfo_Init(TypeInfo_t *tinfo, const char *funcname) co nst; | virtual void TypeInfo_Init(TypeInfo_t *tinfo, const char *funcname) co nst; | |||
virtual bool TypeInfo_IsValid(TypeInfo_t *tinfo) const; | virtual bool TypeInfo_IsValid(TypeInfo_t *tinfo) const; | |||
virtual const char *TypeInfo_Name(TypeInfo_t * /* info */) const; | ||||
virtual Long_t TypeInfo_Property(TypeInfo_t *tinfo) const; | virtual Long_t TypeInfo_Property(TypeInfo_t *tinfo) const; | |||
virtual int TypeInfo_RefType(TypeInfo_t * /* tinfo */) const; | ||||
virtual int TypeInfo_Size(TypeInfo_t *tinfo) const; | virtual int TypeInfo_Size(TypeInfo_t *tinfo) const; | |||
virtual const char *TypeInfo_TrueName(TypeInfo_t *tinfo) const; | virtual const char *TypeInfo_TrueName(TypeInfo_t *tinfo) const; | |||
// G__TypedefInfo interface | // G__TypedefInfo interface | |||
virtual void TypedefInfo_Delete(TypedefInfo_t *tinfo) const; | virtual void TypedefInfo_Delete(TypedefInfo_t *tinfo) const; | |||
virtual void *TypedefInfo_Factory() const; | virtual TypedefInfo_t *TypedefInfo_Factory() const; | |||
virtual TypedefInfo_t *TypedefInfo_FactoryCopy(TypedefInfo_t *tinfo) co | ||||
nst; | ||||
virtual void TypedefInfo_Init(TypedefInfo_t *tinfo, const char *funcna me) const; | virtual void TypedefInfo_Init(TypedefInfo_t *tinfo, const char *funcna me) const; | |||
virtual bool TypedefInfo_IsValid(TypedefInfo_t *tinfo) const; | virtual bool TypedefInfo_IsValid(TypedefInfo_t *tinfo) const; | |||
virtual Long_t TypedefInfo_Property(TypedefInfo_t *tinfo) const; | virtual Long_t TypedefInfo_Property(TypedefInfo_t *tinfo) const; | |||
virtual int TypedefInfo_Size(TypedefInfo_t *tinfo) const; | virtual int TypedefInfo_Size(TypedefInfo_t *tinfo) const; | |||
virtual const char *TypedefInfo_TrueName(TypedefInfo_t *tinfo) const; | virtual const char *TypedefInfo_TrueName(TypedefInfo_t *tinfo) const; | |||
virtual const char *TypedefInfo_Name(TypedefInfo_t *tinfo) const; | virtual const char *TypedefInfo_Name(TypedefInfo_t *tinfo) const; | |||
virtual const char *TypedefInfo_Title(TypedefInfo_t *tinfo) const; | virtual const char *TypedefInfo_Title(TypedefInfo_t *tinfo) const; | |||
ClassDef(TCint,0) //Interface to CINT C/C++ interpreter | ClassDef(TCint,0) //Interface to CINT C/C++ interpreter | |||
}; | }; | |||
End of changes. 12 change blocks. | ||||
20 lines changed or deleted | 31 lines changed or added | |||
TClass.h | TClass.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TClass.h 25450 2008-09-18 21:13:42Z pcanal $ | // @(#)root/meta:$Id: TClass.h 26606 2008-12-02 20:36:09Z 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 182 | skipping to change at line 182 | |||
// These are the above-referenced hash tables. (The pointers are null | // These are the above-referenced hash tables. (The pointers are null | |||
// if no entries have been made.) There are actually two variants. | // if no entries have been made.) There are actually two variants. | |||
// In the first, the typedef names are resolved with | // In the first, the typedef names are resolved with | |||
// TClassEdit::ResolveTypedef; in the second, the class names | // TClassEdit::ResolveTypedef; in the second, the class names | |||
// are first massaged with TClassEdit::ShortType with kDropStlDefault. | // are first massaged with TClassEdit::ShortType with kDropStlDefault. | |||
// (??? Are the two distinct tables really needed?) | // (??? Are the two distinct tables really needed?) | |||
static THashTable* fgClassTypedefHash; | static THashTable* fgClassTypedefHash; | |||
static THashTable* fgClassShortTypedefHash; | static THashTable* fgClassShortTypedefHash; | |||
protected: | private: | |||
TClass(const TClass& tc); | TClass(const TClass& tc); | |||
TClass& operator=(const TClass&); | TClass& operator=(const TClass&); | |||
protected: | ||||
TVirtualStreamerInfo *FindStreamerInfo(TObjArray* arr, UInt_t checks um) const; | TVirtualStreamerInfo *FindStreamerInfo(TObjArray* arr, UInt_t checks um) const; | |||
public: | public: | |||
TClass(); | TClass(); | |||
TClass(const char *name, Bool_t silent = kFALSE); | TClass(const char *name, Bool_t silent = kFALSE); | |||
TClass(const char *name, Version_t cversion, | TClass(const char *name, Version_t cversion, | |||
const char *dfil = 0, const char *ifil = 0, | const char *dfil = 0, const char *ifil = 0, | |||
Int_t dl = 0, Int_t il = 0, Bool_t silent = kFALSE); | Int_t dl = 0, Int_t il = 0, Bool_t silent = kFALSE); | |||
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, | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 4 lines changed or added | |||
TContextMenu.h | TContextMenu.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TContextMenu.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TContextMenu.h 26615 2008-12-03 00:57:41Z pcanal $ | |||
// Author: Nenad Buncic 08/02/96 | // Author: Nenad Buncic 08/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 46 | skipping to change at line 46 | |||
class TVirtualPad; | class TVirtualPad; | |||
class TObjArray; | class TObjArray; | |||
class TBrowser; | class TBrowser; | |||
class TToggle; | class TToggle; | |||
class TClassMenuItem; | class TClassMenuItem; | |||
class TContextMenu : public TNamed { | class TContextMenu : public TNamed { | |||
friend class TContextMenuImp; | friend class TContextMenuImp; | |||
private: | ||||
TContextMenu(const TContextMenu&); // TContextMenu can not be | ||||
copied since we do not know the actual type of the TContextMenuImp (and it | ||||
can not be 'Cloned') | ||||
TContextMenu& operator=(const TContextMenu&); // TContextMenu can not be | ||||
copied since we do not know the actual type of the TContextMenuImp (and it | ||||
can not be 'Cloned') | ||||
protected: | protected: | |||
TContextMenuImp *fContextMenuImp; //!Context menu system specific i mplementation | TContextMenuImp *fContextMenuImp; //!Context menu system specific i mplementation | |||
TFunction *fSelectedMethod; //selected method | TFunction *fSelectedMethod; //selected method | |||
TObject *fSelectedObject; //selected object | TObject *fSelectedObject; //selected object | |||
TObject *fCalledObject; //object to call | TObject *fCalledObject; //object to call | |||
TClassMenuItem *fSelectedMenuItem; //selected class menu item | TClassMenuItem *fSelectedMenuItem; //selected class menu item | |||
TVirtualPad *fSelectedCanvas; //selected canvas (if exist) | TVirtualPad *fSelectedCanvas; //selected canvas (if exist) | |||
TVirtualPad *fSelectedPad; //selected pad (if exist) | TVirtualPad *fSelectedPad; //selected pad (if exist) | |||
TBrowser *fBrowser; //selected browser (if exist) | TBrowser *fBrowser; //selected browser (if exist) | |||
TContextMenu(const TContextMenu&); | ||||
TContextMenu& operator=(const TContextMenu&); | ||||
virtual void DisplayPopUp(Int_t x, Int_t y) | virtual void DisplayPopUp(Int_t x, Int_t y) | |||
{ if (fContextMenuImp) fContextMenuImp->DisplayPopup(x, y); } | { if (fContextMenuImp) fContextMenuImp->DisplayPopup(x, y); } | |||
private: | private: | |||
TContextMenu(); | TContextMenu(); | |||
public: | public: | |||
TContextMenu(const char *name, const char *title = "Context sensitive po pup menu"); | TContextMenu(const char *name, const char *title = "Context sensitive po pup menu"); | |||
virtual ~TContextMenu(); | virtual ~TContextMenu(); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 9 lines changed or added | |||
TDocOutput.h | TDocOutput.h | |||
---|---|---|---|---|
// @(#)root/html:$Id: TDocOutput.h 23908 2008-05-19 15:25:29Z axel $ | // @(#)root/html:$Id: TDocOutput.h 26807 2008-12-10 17:47:42Z axel $ | |||
// Author: Axel Naumann 2007-01-09 | // Author: Axel Naumann 2007-01-09 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 36 | skipping to change at line 36 | |||
#ifndef ROOT_Riosfwd | #ifndef ROOT_Riosfwd | |||
#include "Riosfwd.h" | #include "Riosfwd.h" | |||
#endif | #endif | |||
#ifndef ROOT_TDocParser | #ifndef ROOT_TDocParser | |||
#include "TDocParser.h" | #include "TDocParser.h" | |||
#endif | #endif | |||
class TClass; | class TClass; | |||
class TDataMember; | class TDataMember; | |||
class TDataType; | class TDataType; | |||
class TGClient; | ||||
class THtml; | class THtml; | |||
class TModuleDocInfo; | class TModuleDocInfo; | |||
class TString; | class TString; | |||
class TSubString; | class TSubString; | |||
class TVirtualPad; | class TVirtualPad; | |||
class TDocOutput: public TObject { | class TDocOutput: public TObject { | |||
protected: | protected: | |||
enum EGraphvizTool { | enum EGraphvizTool { | |||
kDot, | kDot, | |||
skipping to change at line 75 | skipping to change at line 76 | |||
void WriteModuleLinks(std::ostream& out, TModuleDocInfo* super ); | void WriteModuleLinks(std::ostream& out, TModuleDocInfo* super ); | |||
void WriteTopLinks(std::ostream& out, TModuleDocInfo* module, const char* classname = 0); | void WriteTopLinks(std::ostream& out, TModuleDocInfo* module, const char* classname = 0); | |||
public: | public: | |||
enum EFileType { kSource, kInclude, kTree, kDoc }; | enum EFileType { kSource, kInclude, kTree, kDoc }; | |||
TDocOutput(THtml& html); | TDocOutput(THtml& html); | |||
virtual ~TDocOutput(); | virtual ~TDocOutput(); | |||
virtual void AdjustSourcePath(TString& line, const char* relpath = ".. /"); | virtual void AdjustSourcePath(TString& line, const char* relpath = ".. /"); | |||
void Convert(std::istream& in, const char* outfilename, const | void Convert(std::istream& in, const char* infilename, | |||
char *title, | const char* outfilename, const char *title, | |||
const char *relpath = "../"); | const char *relpath = "../", | |||
Int_t includeOutput = 0, | ||||
const char* context = "", | ||||
TGClient* gclient = 0); | ||||
Bool_t CopyHtmlFile(const char *sourceName, const char *destName =""); | Bool_t CopyHtmlFile(const char *sourceName, const char *destName =""); | |||
virtual void CreateClassIndex(); | virtual void CreateClassIndex(); | |||
virtual void CreateModuleIndex(); | virtual void CreateModuleIndex(); | |||
virtual void CreateProductIndex(); | virtual void CreateProductIndex(); | |||
virtual void CreateTypeIndex(); | virtual void CreateTypeIndex(); | |||
virtual void CreateClassTypeDefs(); | virtual void CreateClassTypeDefs(); | |||
virtual void CreateHierarchy(); | virtual void CreateHierarchy(); | |||
virtual void DecorateEntityBegin(TString& str, Ssiz_t& pos, TDocParser ::EParseContext type); | virtual void DecorateEntityBegin(TString& str, Ssiz_t& pos, TDocParser ::EParseContext type); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 8 lines changed or added | |||
TDocParser.h | TDocParser.h | |||
---|---|---|---|---|
// @(#)root/html:$Id: TDocParser.h 23908 2008-05-19 15:25:29Z axel $ | // @(#)root/html:$Id: TDocParser.h 26807 2008-12-10 17:47:42Z axel $ | |||
// Author: Axel Naumann 2007-01-09 | // Author: Axel Naumann 2007-01-09 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 | |||
TDocOutput* fDocOutput; // TDocOutput invoking us | TDocOutput* fDocOutput; // TDocOutput invoking us | |||
UInt_t fLineNo; // current line number | UInt_t fLineNo; // current line number | |||
TString fLineRaw; // current line | TString fLineRaw; // current line | |||
TString fLineStripped; // current line without surrounding spa ces | TString fLineStripped; // current line without surrounding spa ces | |||
TString fLineComment; // current line with links and dire ctives for doc | TString fLineComment; // current line with links and dire ctives for doc | |||
TString fLineSource; // current line with links | TString fLineSource; // current line with links | |||
TString fComment; // current comment | TString fComment; // current comment | |||
TString fFirstClassDoc; // first class-doc found - per file, ta ken if fLastClassDoc is empty | TString fFirstClassDoc; // first class-doc found - per file, ta ken if fLastClassDoc is empty | |||
TString fLastClassDoc; // last class-doc found - becomes class doc at ClassImp or first method | TString fLastClassDoc; // last class-doc found - becomes class doc at ClassImp or first method | |||
TClass* fCurrentClass; // current class context of sources bei ng parsed | TClass* fCurrentClass; // current class context of sources bei ng parsed | |||
TClass* fRecentClass; // recently seen class context of sourc es being parsed, e.g. for Convert() | ||||
TString fCurrentModule; // current module context of sources be ing parsed | TString fCurrentModule; // current module context of sources be ing parsed | |||
TString fCurrentMethodTag;// name_idx of the currently parsed met hod | TString fCurrentMethodTag;// name_idx of the currently parsed met hod | |||
Int_t fDirectiveCount; // index of directive for current metho d | Int_t fDirectiveCount; // index of directive for current metho d | |||
TString fCurrentFile; // current source / header file name | TString fCurrentFile; // current source / header file name | |||
std::map<std::string /*name*/, Int_t > fMethodCounts; // current cla ss's method names | std::map<std::string /*name*/, Int_t > fMethodCounts; // current cla ss's method names | |||
EDocContext fDocContext; // current context of parsed sources fo r documenting | EDocContext fDocContext; // current context of parsed sources fo r documenting | |||
std::list<UInt_t> fParseContext; // current context of parsed sources | std::list<UInt_t> fParseContext; // current context of parsed sources | |||
Bool_t fCheckForMethod; // whether to check the current line fo r a method | Bool_t fCheckForMethod; // whether to check the current line fo r a method | |||
enum { | enum { | |||
kClassDoc_Uninitialized, | kClassDoc_Uninitialized, | |||
skipping to change at line 133 | skipping to change at line 134 | |||
TList fDirectiveHandlers;// handler for doc directives (TDocDir ective objects) | TList fDirectiveHandlers;// handler for doc directives (TDocDir ective objects) | |||
std::set<UInt_t> fExtraLinesWithAnchor; // lines that need an additional anchor | std::set<UInt_t> fExtraLinesWithAnchor; // lines that need an additional anchor | |||
TString fSourceInfo[kNumSourceInfos];// author, last changed, ... | TString fSourceInfo[kNumSourceInfos];// author, last changed, ... | |||
TList fMethods[3]; // methods as TMethodWrapper objects (b y access) | TList fMethods[3]; // methods as TMethodWrapper objects (b y access) | |||
TList fDataMembers[6]; // data members (by access, plus enums) | TList fDataMembers[6]; // data members (by access, plus enums) | |||
static std::set<std::string> fgKeywords; // C++ keywords | static std::set<std::string> fgKeywords; // C++ keywords | |||
void AddClassMethodsRecursively(TBaseClass* bc); | void AddClassMethodsRecursively(TBaseClass* bc); | |||
void AddClassDataMembersRecursively(TBaseClass* bc); | void AddClassDataMembersRecursively(TBaseClass* bc); | |||
void AnchorFromLine(TString& anchor); | ||||
EParseContext Context() const { return fParseContext.empty() ? kComment : (EParseContext)(fParseContext.back() & kParseContextMask); } | EParseContext Context() const { return fParseContext.empty() ? kComment : (EParseContext)(fParseContext.back() & kParseContextMask); } | |||
virtual void ExpandCPPLine(TString& line, Ssiz_t& pos); | virtual void ExpandCPPLine(TString& line, Ssiz_t& pos); | |||
virtual Bool_t HandleDirective(TString& keyword, Ssiz_t& pos, | virtual Bool_t HandleDirective(TString& keyword, Ssiz_t& pos, | |||
TString& word, Ssiz_t& copiedToCommentUpTo); | TString& word, Ssiz_t& copiedToCommentUpTo); | |||
virtual void InitKeywords() const; | virtual void InitKeywords() const; | |||
virtual TClass* IsDirective(const TString& line, Ssiz_t pos, const TStri ng& word, Bool_t& begin) const; | virtual TClass* IsDirective(const TString& line, Ssiz_t pos, const TStri ng& word, Bool_t& begin) const; | |||
TMethod* LocateMethodInCurrentLine(Ssiz_t& posMethodName, TString& ret, | TMethod* LocateMethodInCurrentLine(Ssiz_t& posMethodName, TString& ret, | |||
TString& name, TString& params, std::ostream &srcOut, TString &anchor , | TString& name, TString& params, std::ostream &srcOut, TString &anchor , | |||
std::ifstream& sourcefile, Bool_t allowPureVirtual); | std::ifstream& sourcefile, Bool_t allowPureVirtual); | |||
void LocateMethodsInSource(std::ostream& out); | void LocateMethodsInSource(std::ostream& out); | |||
skipping to change at line 166 | skipping to change at line 166 | |||
TString& name, TString& params, | TString& name, TString& params, | |||
const char* file, TString& anchor, | const char* file, TString& anchor, | |||
TString& codeOneLiner); | TString& codeOneLiner); | |||
void WriteSourceLine(std::ostream& out); | void WriteSourceLine(std::ostream& out); | |||
public: | public: | |||
TDocParser(TClassDocOutput& docOutput, TClass* cl); | TDocParser(TClassDocOutput& docOutput, TClass* cl); | |||
TDocParser(TDocOutput& docOutput); | TDocParser(TDocOutput& docOutput); | |||
virtual ~TDocParser(); | virtual ~TDocParser(); | |||
void Convert(std::ostream& out, std::istream& in, const char* r | static void AnchorFromLine(const TString& line, TString& anchor); | |||
elpath); | void Convert(std::ostream& out, std::istream& in, const char* r | |||
elpath, | ||||
Bool_t isCode); | ||||
void DecrementMethodCount(const char* name); | void DecrementMethodCount(const char* name); | |||
virtual void DecorateKeywords(std::ostream& out, const char* text); | virtual void DecorateKeywords(std::ostream& out, const char* text); | |||
virtual void DecorateKeywords(TString& text); | virtual void DecorateKeywords(TString& text); | |||
virtual void DeleteDirectiveOutput() const; | virtual void DeleteDirectiveOutput() const; | |||
const TList* GetMethods(EAccess access) const { return &fMethods[access ]; } | const TList* GetMethods(EAccess access) const { return &fMethods[access ]; } | |||
TClass* GetCurrentClass() const { return fCurrentClass; } | TClass* GetCurrentClass() const { return fCurrentClass; } | |||
void GetCurrentModule(TString& out_module) const; | void GetCurrentModule(TString& out_module) const; | |||
TDocOutput* GetDocOutput() const { return fDocOutput; } | TDocOutput* GetDocOutput() const { return fDocOutput; } | |||
const TList* GetDataMembers(EAccess access) const { return &fDataMember s[access]; } | const TList* GetDataMembers(EAccess access) const { return &fDataMember s[access]; } | |||
const TList* GetEnums(EAccess access) const { return &fDataMembers[acce ss+3]; } | const TList* GetEnums(EAccess access) const { return &fDataMembers[acce ss+3]; } | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added | |||
TEveCalo.h | TEveCalo.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCalo.h 25245 2008-08-25 21:44:09Z matevz $ | // @(#)root/eve:$Id: TEveCalo.h 26772 2008-12-09 19:57:49Z 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 151 | skipping to change at line 151 | |||
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; | |||
Bool_t fRnrEndCapFrame; | ||||
Bool_t fRnrBarrelFrame; | ||||
Color_t fFrameColor; | ||||
UChar_t fFrameTransparency; | ||||
virtual void BuildCellIdCache(); | virtual void BuildCellIdCache(); | |||
public: | public: | |||
TEveCalo3D(TEveCaloData* d=0, const Text_t* n="TEveCalo3D", const Text_t * t="xx"):TEveCaloViz(d, n, t){} | TEveCalo3D(TEveCaloData* d=0, const Text_t* n="TEveCalo3D", const Text_t * t="xx"); | |||
virtual ~TEveCalo3D() {} | virtual ~TEveCalo3D() {} | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
virtual Bool_t CanEditMainColor() const { return kTRUE; } | ||||
virtual Bool_t CanEditMainTransparency() const { return kTRUE; } | ||||
void SetRnrFrame(Bool_t e, Bool_t b) { fRnrEndCapFrame = e; fRnr | ||||
BarrelFrame = b; } | ||||
void GetRnrFrame(Bool_t &e, Bool_t &b) const { e = fRnrEndCapFrame; b = | ||||
fRnrBarrelFrame; } | ||||
ClassDef(TEveCalo3D, 0); // Class for 3D visualization of calorimeter ev ent data. | ClassDef(TEveCalo3D, 0); // Class for 3D visualization of calorimeter ev ent data. | |||
}; | }; | |||
/************************************************************************** / | /************************************************************************** / | |||
/************************************************************************** / | /************************************************************************** / | |||
class TEveCalo2D : public TEveCaloViz, | class TEveCalo2D : public TEveCaloViz, | |||
public TEveProjected | public TEveProjected | |||
{ | { | |||
friend class TEveCalo2DGL; | friend class TEveCalo2DGL; | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 16 lines changed or added | |||
TEveCalo3DGL.h | TEveCalo3DGL.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCalo3DGL.h 24214 2008-06-11 14:48:35Z matevz $ | // @(#)root/eve:$Id: TEveCalo3DGL.h 26772 2008-12-09 19:57:49Z 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 29 | skipping to change at line 29 | |||
class TEveCalo3DGL : public TGLObject | class TEveCalo3DGL : public TGLObject | |||
{ | { | |||
private: | private: | |||
TEveCalo3DGL(const TEveCalo3DGL&); // Not implemented | TEveCalo3DGL(const TEveCalo3DGL&); // Not implemented | |||
TEveCalo3DGL& operator=(const TEveCalo3DGL&); // Not implemented | TEveCalo3DGL& operator=(const TEveCalo3DGL&); // Not implemented | |||
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 RenderGridBarrel() const; | ||||
void RenderGrid(TGLRnrCtx & rnrCtx) const; | ||||
Float_t RenderBarrelCell(const TEveCaloData::CellData_t &cell, Float_t t owerH, Float_t offset) const; | Float_t RenderBarrelCell(const TEveCaloData::CellData_t &cell, Float_t t owerH, Float_t offset) const; | |||
Float_t RenderEndCapCell(const TEveCaloData::CellData_t &cell, Float_t t owerH, Float_t offset) const; | Float_t RenderEndCapCell(const TEveCaloData::CellData_t &cell, Float_t t owerH, Float_t offset) const; | |||
protected: | protected: | |||
TEveCalo3D *fM; // Model object. | TEveCalo3D *fM; // Model object. | |||
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 Bool_t ShouldDLCache(const 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 & 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. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TEveCaloData.h | TEveCaloData.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveCaloData.h 25245 2008-08-25 21:44:09Z matevz $ | // @(#)root/eve:$Id: TEveCaloData.h 26561 2008-12-01 17:35:55Z 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 242 | skipping to change at line 242 | |||
Float_t phi, Float_t phiRng, | Float_t phi, Float_t phiRng, | |||
vCellId_t &out) const; | vCellId_t &out) const; | |||
virtual void Rebin(TAxis *ax, TAxis *ay, vCellId_t &in, Bool_t et, Rebin Data_t &out) const; | virtual void Rebin(TAxis *ax, TAxis *ay, vCellId_t &in, Bool_t et, Rebin Data_t &out) const; | |||
virtual void GetCellData(const TEveCaloData::CellId_t &id, TEveCaloData: :CellData_t& data) const; | virtual void GetCellData(const TEveCaloData::CellId_t &id, TEveCaloData: :CellData_t& data) const; | |||
virtual void GetEtaLimits(Double_t &min, Double_t &max) const { min=fEta Min, max=fEtaMax;} | virtual void GetEtaLimits(Double_t &min, Double_t &max) const { min=fEta Min, max=fEtaMax;} | |||
virtual void GetPhiLimits(Double_t &min, Double_t &max) const { min=fPhi Min; max=fPhiMax;} | virtual void GetPhiLimits(Double_t &min, Double_t &max) const { min=fPhi Min; max=fPhiMax;} | |||
virtual void DataChanged(); | virtual void DataChanged(); | |||
void SetAxisFromBins(Double_t epsX=0.001, Double_t epsY=0.001); | ||||
ClassDef(TEveCaloDataVec, 0); // Manages calorimeter event data. | ClassDef(TEveCaloDataVec, 0); // Manages calorimeter event data. | |||
}; | }; | |||
/************************************************************************** / | /************************************************************************** / | |||
/************************************************************************** / | /************************************************************************** / | |||
class TEveCaloDataHist: public TEveCaloData | class TEveCaloDataHist: public TEveCaloData | |||
{ | { | |||
private: | private: | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TEveElement.h | TEveElement.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveElement.h 26367 2008-11-21 18:08:30Z matevz $ | // @(#)root/eve:$Id: TEveElement.h 26717 2008-12-07 22:07:55Z 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 101 | skipping to change at line 101 | |||
UChar_t fMainTransparency; // Main-transparency variable. | UChar_t fMainTransparency; // Main-transparency variable. | |||
Color_t *fMainColorPtr; // Pointer to main-color variab le. | Color_t *fMainColorPtr; // Pointer to main-color variab le. | |||
TEveTrans *fMainTrans; // Pointer to main transformati on matrix. | TEveTrans *fMainTrans; // Pointer to main transformati on matrix. | |||
sLTI_t fItems; //! Set of list-tree-items. | sLTI_t fItems; //! Set of list-tree-items. | |||
TRef fSource; // External object that is repr esented by this element. | TRef fSource; // External object that is repr esented by this element. | |||
void *fUserData; //! Externally assigned and cont rolled user data. | void *fUserData; //! Externally assigned and cont rolled user data. | |||
virtual void PreDeleteElement(); | ||||
virtual void RemoveElementsInternal(); | virtual void RemoveElementsInternal(); | |||
public: | public: | |||
TEveElement(); | TEveElement(); | |||
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 { return new TEveElement(*this ); } | virtual TEveElement* CloneElement() const { return new TEveElement(*this ); } | |||
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 Text_t* GetElementName() const; | virtual const Text_t* GetElementName() const; | |||
virtual const Text_t* GetElementTitle() const; | virtual const Text_t* GetElementTitle() const; | |||
virtual void SetElementName (const Text_t* name); | virtual void SetElementName (const Text_t* name); | |||
virtual void SetElementTitle(const Text_t* title); | virtual void SetElementTitle(const Text_t* title); | |||
virtual void SetElementNameTitle(const Text_t* name, const Text_t* title ); | virtual void SetElementNameTitle(const Text_t* name, const Text_t* title ); | |||
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); | |||
Bool_t FindVizModel(); | Bool_t FindVizModel(); | |||
Bool_t ApplyVizTag(const TString& tag, const TString& fallback_t ag=""); | Bool_t ApplyVizTag(const TString& tag, const TString& fallback_t ag=""); | |||
skipping to change at line 178 | skipping to change at line 180 | |||
void EnableListElements (Bool_t rnr_self=kTRUE, Bool_t rnr_children=kTR UE); // *MENU* | void EnableListElements (Bool_t rnr_self=kTRUE, Bool_t rnr_children=kTR UE); // *MENU* | |||
void DisableListElements(Bool_t rnr_self=kFALSE, Bool_t rnr_children=kFA LSE); // *MENU* | void DisableListElements(Bool_t rnr_self=kFALSE, Bool_t rnr_children=kFA LSE); // *MENU* | |||
Bool_t GetDestroyOnZeroRefCnt() const { return fDestroyOnZeroRefCnt; } | Bool_t GetDestroyOnZeroRefCnt() const { return fDestroyOnZeroRefCnt; } | |||
void SetDestroyOnZeroRefCnt(Bool_t d) { fDestroyOnZeroRefCnt = d; } | void SetDestroyOnZeroRefCnt(Bool_t d) { fDestroyOnZeroRefCnt = d; } | |||
Int_t GetDenyDestroy() const { return fDenyDestroy; } | Int_t GetDenyDestroy() const { return fDenyDestroy; } | |||
void IncDenyDestroy() { ++fDenyDestroy; } | void IncDenyDestroy() { ++fDenyDestroy; } | |||
void DecDenyDestroy() { if (--fDenyDestroy <= 0) CheckReferenceC ount("TEveElement::DecDenyDestroy "); } | void DecDenyDestroy() { if (--fDenyDestroy <= 0) CheckReferenceC ount("TEveElement::DecDenyDestroy "); } | |||
Int_t GetParentIgnoreCnt() const { return fParentIgnoreCnt; } | ||||
void IncParentIgnoreCnt() { ++fParentIgnoreCnt; } | ||||
void DecParentIgnoreCnt() { if (--fParentIgnoreCnt <= 0) CheckRe | ||||
ferenceCount("TEveElement::DecParentIgnoreCnt "); } | ||||
virtual void PadPaint(Option_t* option); | virtual void PadPaint(Option_t* option); | |||
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 403 | skipping to change at line 409 | |||
TClass *fChildClass; // Class of acceptable children, others are reje cted. | TClass *fChildClass; // Class of acceptable children, others are reje cted. | |||
public: | public: | |||
TEveElementList(const Text_t* n="TEveElementList", const Text_t* t="", | TEveElementList(const Text_t* n="TEveElementList", const Text_t* t="", | |||
Bool_t doColor=kFALSE); | Bool_t doColor=kFALSE); | |||
TEveElementList(const TEveElementList& e); | TEveElementList(const TEveElementList& e); | |||
virtual ~TEveElementList() {} | virtual ~TEveElementList() {} | |||
virtual TEveElementList* CloneElement() const { return new TEveElementLi st(*this); } | virtual TEveElementList* CloneElement() const { return new TEveElementLi st(*this); } | |||
virtual const Text_t* GetElementName() const { return TNamed::GetName() | virtual const Text_t* GetElementName() const { return GetName(); } | |||
; } | virtual const Text_t* GetElementTitle() const { return GetTitle(); } | |||
virtual const Text_t* GetElementTitle() const { return TNamed::GetTitle( | ||||
); } | virtual void SetElementName (const Text_t* name) | |||
virtual void SetElementName (const Text_t* name) { TNamed::SetName(name | { TNamed::SetName(name); NameTitleChanged(); } | |||
); } | ||||
virtual void SetElementTitle(const Text_t* title) { TNamed::SetTitle(tit | virtual void SetElementTitle(const Text_t* title) | |||
le); } | { TNamed::SetTitle(title); NameTitleChanged(); } | |||
virtual void SetElementNameTitle(const Text_t* name, const Text_t* title ) | virtual void SetElementNameTitle(const Text_t* name, const Text_t* title ) | |||
{ TNamed::SetNameTitle(name, title); } | { 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); | |||
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. | |||
}; | }; | |||
End of changes. 6 change blocks. | ||||
10 lines changed or deleted | 18 lines changed or added | |||
TEveManager.h | TEveManager.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveManager.h 26274 2008-11-18 20:32:48Z matevz $ | // @(#)root/eve:$Id: TEveManager.h 26717 2008-12-07 22:07:55Z 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 45 | skipping to change at line 45 | |||
class TEveSelection; | class TEveSelection; | |||
class TEveGListTreeEditorFrame; | class TEveGListTreeEditorFrame; | |||
class TEveBrowser; | class TEveBrowser; | |||
class TEveGedEditor; | class TEveGedEditor; | |||
class TEveViewer; class TEveViewerList; | class TEveViewer; class TEveViewerList; | |||
class TEveScene; class TEveSceneList; | class TEveScene; class TEveSceneList; | |||
class TEveEventManager; | class TEveEventManager; | |||
class TEveWindowManager; | ||||
class TEveManager | class TEveManager | |||
{ | { | |||
TEveManager(const TEveManager&); // Not implemented | TEveManager(const TEveManager&); // Not implemented | |||
TEveManager& operator=(const TEveManager&); // Not implemented | TEveManager& operator=(const TEveManager&); // Not implemented | |||
public: | public: | |||
class TRedrawDisabler | class TRedrawDisabler | |||
{ | { | |||
private: | private: | |||
skipping to change at line 94 | skipping to change at line 95 | |||
TMap *fGeometries; | TMap *fGeometries; | |||
TMap *fGeometryAliases; | TMap *fGeometryAliases; | |||
TEveBrowser *fBrowser; | TEveBrowser *fBrowser; | |||
TEveGListTreeEditorFrame *fLTEFrame; | TEveGListTreeEditorFrame *fLTEFrame; | |||
TEveGedEditor *fEditor; | TEveGedEditor *fEditor; | |||
TGStatusBar *fStatusBar; | TGStatusBar *fStatusBar; | |||
TFolder *fMacroFolder; | TFolder *fMacroFolder; | |||
TEveWindowManager *fWindowManager; | ||||
TEveViewerList *fViewers; | TEveViewerList *fViewers; | |||
TEveSceneList *fScenes; | TEveSceneList *fScenes; | |||
TEveViewer *fViewer; // First / default gl-viewer. | ||||
TEveScene *fGlobalScene; | TEveScene *fGlobalScene; | |||
TEveScene *fEventScene; | TEveScene *fEventScene; | |||
TEveEventManager *fCurrentEvent; | TEveEventManager *fCurrentEvent; | |||
Int_t fRedrawDisabled; | Int_t fRedrawDisabled; | |||
Bool_t fFullRedraw; | Bool_t fFullRedraw; | |||
Bool_t fResetCameras; | Bool_t fResetCameras; | |||
Bool_t fDropLogicals; | Bool_t fDropLogicals; | |||
Bool_t fKeepEmptyCont; | Bool_t fKeepEmptyCont; | |||
Bool_t fTimerActive; | Bool_t fTimerActive; | |||
skipping to change at line 140 | skipping to change at line 141 | |||
TEveElementList* GetOrphanage() const { return fOrphanage; } | TEveElementList* GetOrphanage() const { return fOrphanage; } | |||
Bool_t GetUseOrphanage() const { return fUseOrphanage; } | Bool_t GetUseOrphanage() const { return fUseOrphanage; } | |||
void SetUseOrphanage(Bool_t o) { fUseOrphanage = o; } | void SetUseOrphanage(Bool_t o) { fUseOrphanage = o; } | |||
void ClearOrphanage(); | void ClearOrphanage(); | |||
TEveBrowser* GetBrowser() const { return fBrowser; } | TEveBrowser* GetBrowser() const { return fBrowser; } | |||
TEveGListTreeEditorFrame* GetLTEFrame() const { return fLTEFrame; } | TEveGListTreeEditorFrame* GetLTEFrame() const { return fLTEFrame; } | |||
TEveGedEditor* GetEditor() const { return fEditor; } | TEveGedEditor* GetEditor() const { return fEditor; } | |||
TGStatusBar* GetStatusBar() const { return fStatusBar; } | TGStatusBar* GetStatusBar() const { return fStatusBar; } | |||
TEveWindowManager* GetWindowManager() const { return fWindowManager; } | ||||
TEveSceneList* GetScenes() const { return fScenes; } | TEveSceneList* GetScenes() const { return fScenes; } | |||
TEveViewerList* GetViewers() const { return fViewers; } | TEveViewerList* GetViewers() const { return fViewers; } | |||
TEveViewer* GetDefViewer() const { return fViewer; } | ||||
TEveScene* GetGlobalScene() const { return fGlobalScene; } | TEveScene* GetGlobalScene() const { return fGlobalScene; } | |||
TEveScene* GetEventScene() const { return fEventScene; } | TEveScene* GetEventScene() const { return fEventScene; } | |||
TEveEventManager* GetCurrentEvent() const { return fCurrentEvent; } | TEveEventManager* GetCurrentEvent() const { return fCurrentEvent; } | |||
void SetCurrentEvent(TEveEventManager* mgr) { fCurrentEvent = mgr; } | void SetCurrentEvent(TEveEventManager* mgr) { fCurrentEvent = mgr; } | |||
TCanvas* AddCanvasTab(const char* name); | TCanvas* AddCanvasTab(const char* name); | |||
TGWindow* GetMainWindow() const; | TGWindow* GetMainWindow() const; | |||
TGLViewer* GetGLViewer() const; | TEveViewer* GetDefaultViewer() const; | |||
TGLViewer* GetDefaultGLViewer() const; | ||||
TEveViewer* SpawnNewViewer(const Text_t* name, const Text_t* title="", Bool_t embed=kTRUE); | TEveViewer* SpawnNewViewer(const Text_t* name, const Text_t* title="", Bool_t embed=kTRUE); | |||
TEveScene* SpawnNewScene(const Text_t* name, const Text_t* title=""); | TEveScene* SpawnNewScene(const Text_t* name, const Text_t* title=""); | |||
TFolder* GetMacroFolder() const { return fMacroFolder; } | TFolder* GetMacroFolder() const { return fMacroFolder; } | |||
TMacro* GetMacro(const Text_t* name) const; | TMacro* GetMacro(const Text_t* name) const; | |||
void EditElement(TEveElement* element); | void EditElement(TEveElement* element); | |||
void DisableRedraw() { ++fRedrawDisabled; } | void DisableRedraw() { ++fRedrawDisabled; } | |||
void EnableRedraw() { --fRedrawDisabled; if (fRedrawDisabled <= 0) Redr aw3D(); } | void EnableRedraw() { --fRedrawDisabled; if (fRedrawDisabled <= 0) Redr aw3D(); } | |||
skipping to change at line 225 | skipping to change at line 228 | |||
TGeoManager* GetGeometry(const TString& filename); | TGeoManager* GetGeometry(const TString& filename); | |||
TGeoManager* GetGeometryByAlias(const TString& alias); | TGeoManager* GetGeometryByAlias(const TString& alias); | |||
TGeoManager* GetDefaultGeometry(); | TGeoManager* GetDefaultGeometry(); | |||
void RegisterGeometryAlias(const TString& alias, const TString& filename); | void RegisterGeometryAlias(const TString& alias, const TString& filename); | |||
void SetStatusLine(const char* text); | void SetStatusLine(const char* text); | |||
void ClearROOTClassSaved(); | void ClearROOTClassSaved(); | |||
void CloseEveWindow(); | void CloseEveWindow(); | |||
static TEveManager* Create(Bool_t map_window=kTRUE, Option_t* opt="FI"); | static TEveManager* Create(Bool_t map_window=kTRUE, Option_t* opt="FIV") ; | |||
static void Terminate(); | static void Terminate(); | |||
ClassDef(TEveManager, 0); // Eve application manager. | ClassDef(TEveManager, 0); // Eve application manager. | |||
}; | }; | |||
R__EXTERN TEveManager* gEve; | R__EXTERN TEveManager* gEve; | |||
#endif | #endif | |||
End of changes. 8 change blocks. | ||||
5 lines changed or deleted | 8 lines changed or added | |||
TEvePointSet.h | TEvePointSet.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEvePointSet.h 26168 2008-11-12 21:21:29Z matevz $ | // @(#)root/eve:$Id: TEvePointSet.h 26662 2008-12-04 20:25:08Z 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 66 | skipping to change at line 66 | |||
virtual TEvePointSet* CloneElement() const { return new TEvePointSet(*th is); } | virtual TEvePointSet* CloneElement() const { return new TEvePointSet(*th is); } | |||
virtual void ComputeBBox(); | virtual void ComputeBBox(); | |||
void Reset(Int_t n_points=0, Int_t n_int_ids=0); | void Reset(Int_t n_points=0, Int_t n_int_ids=0); | |||
Int_t GrowFor(Int_t n_points); | Int_t GrowFor(Int_t n_points); | |||
virtual const Text_t* GetTitle() const { return fTitle; } | virtual const Text_t* GetTitle() const { return fTitle; } | |||
virtual const Text_t* GetElementName() const { return TPointSet3D::Get Name(); } | virtual const Text_t* GetElementName() const { return TPointSet3D::Get Name(); } | |||
virtual const Text_t* GetElementTitle() const { return fTitle; } | virtual const Text_t* GetElementTitle() const { return fTitle; } | |||
virtual void SetElementName (const Text_t* n) { fName = n; } | virtual void SetElementName (const Text_t* n) { fName = n; NameTitleCh | |||
virtual void SetTitle(const Text_t* t) { fTitle = t; } | anged(); } | |||
virtual void SetElementTitle(const Text_t* t) { fTitle = t; } | virtual void SetTitle(const Text_t* t) { fTitle = t; NameTitleCh | |||
anged(); } | ||||
virtual void SetElementTitle(const Text_t* t) { fTitle = t; NameTitleCh | ||||
anged(); } | ||||
virtual void SetElementNameTitle(const Text_t* n, const Text_t* t) | virtual void SetElementNameTitle(const Text_t* n, const Text_t* t) | |||
{ fName = n; fTitle = t; } | { fName = n; fTitle = t; NameTitleChanged(); } | |||
Int_t GetIntIdsPerPoint() const { return fIntIdsPerPoint; } | Int_t GetIntIdsPerPoint() const { return fIntIdsPerPoint; } | |||
Int_t* GetPointIntIds(Int_t p) const; | Int_t* GetPointIntIds(Int_t p) const; | |||
Int_t GetPointIntId(Int_t p, Int_t i) const; | Int_t GetPointIntId(Int_t p, Int_t i) const; | |||
void SetPointIntIds(Int_t* ids); | void SetPointIntIds(Int_t* ids); | |||
void SetPointIntIds(Int_t n, Int_t* ids); | void SetPointIntIds(Int_t n, Int_t* ids); | |||
virtual void SetMarkerColor(Color_t col) { SetMainColor(col); } | virtual void SetMarkerColor(Color_t col) { SetMainColor(col); } | |||
End of changes. 3 change blocks. | ||||
5 lines changed or deleted | 8 lines changed or added | |||
TEveTrackPropagator.h | TEveTrackPropagator.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveTrackPropagator.h 26367 2008-11-21 18:08:30Z matev z $ | // @(#)root/eve:$Id: TEveTrackPropagator.h 26778 2008-12-09 21:56:51Z matev z $ | |||
// Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 | // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 46 | skipping to change at line 46 | |||
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 = 0; | ||||
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 | |||
{ | { | |||
protected: | protected: | |||
skipping to change at line 95 | skipping to change at line 98 | |||
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 { return TMath::Max(fBIn.Mag() | ||||
, fBOut.Mag()); } | ||||
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 | |||
{ | { | |||
skipping to change at line 137 | skipping to change at line 142 | |||
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 fPlDir; // Momentum parallel to mag field. | Float_t fPlDir; // Momentum parallel to mag field. | |||
Float_t fTStep; // Transverse step arc-length in cm. | Float_t fTStep; // Transverse step arc-length in cm. | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
Helix_t(); | Helix_t(); | |||
void Update(const TEveVector & p, const TEveVector& b, Bool_t fullUpd | void UpdateHelix(const TEveVector & p, const TEveVector& b, Bool_t fu | |||
ate, Float_t fraction = -1); | llUpdate, Float_t fraction = -1); | |||
void UpdateRG (const TEveVector & p, const TEveVector& b, Float_t b | ||||
Max = -1, Float_t maxStep = -1); | ||||
void Step (const TEveVector4& v, const TEveVector& p, TEveVector4& v Out, TEveVector& pOut); | void Step (const TEveVector4& v, const TEveVector& p, TEveVector4& v Out, TEveVector& pOut); | |||
Float_t GetStep() { return fTStep * TMath::Sqrt(1 + fLam*fLam); } | Float_t GetStep() { return fTStep * TMath::Sqrt(1 + fLam*fLam); } | |||
Float_t GetStep2() { return fTStep * fTStep * (1 + fLam*fLam); } | Float_t GetStep2() { return fTStep * fTStep * (1 + fLam*fLam); } | |||
}; | }; | |||
enum EStepper_e { kHelix, kRungeKutta }; | ||||
private: | private: | |||
TEveTrackPropagator(const TEveTrackPropagator&); // Not imple mented | TEveTrackPropagator(const TEveTrackPropagator&); // Not imple mented | |||
TEveTrackPropagator& operator=(const TEveTrackPropagator&); // Not imple mented | TEveTrackPropagator& operator=(const TEveTrackPropagator&); // Not imple mented | |||
protected: | protected: | |||
// Magnetic field | 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). | |||
Float_t fMaxStepRG; // Maximum step size in stepper | ||||
RungeKuta. | ||||
// Path-mark / first-vertex control | // Path-mark / first-vertex control | |||
Bool_t fEditPathMarks; // Show widgets for path-mark c ontrol in GUI editor. | Bool_t fEditPathMarks; // Show widgets for path-mark c ontrol in GUI editor. | |||
Bool_t fFitDaughters; // Pass through daughter creati on points when extrapolating a track. | Bool_t fFitDaughters; // Pass through daughter creati on points when extrapolating a track. | |||
Bool_t fFitReferences; // Pass through given track-ref erences when extrapolating a track. | Bool_t fFitReferences; // Pass through given track-ref erences when extrapolating a track. | |||
Bool_t fFitDecay; // Pass through decay point whe n extrapolating a track. | Bool_t fFitDecay; // Pass through decay point whe n extrapolating a track. | |||
Bool_t fFitCluster2Ds; // Pass through 2D-clusters whe n extrapolating a track. | Bool_t fFitCluster2Ds; // Pass through 2D-clusters whe n extrapolating a track. | |||
Bool_t fRnrDaughters; // Render daughter path-marks. | Bool_t fRnrDaughters; // Render daughter path-marks. | |||
Bool_t fRnrReferences; // Render track-reference path- marks. | Bool_t fRnrReferences; // Render track-reference path- marks. | |||
Bool_t fRnrDecay; // Render decay path-marks. | Bool_t fRnrDecay; // Render decay path-marks. | |||
Bool_t fRnrCluster2Ds; // Render 2D-clusters. | Bool_t fRnrCluster2Ds; // Render 2D-clusters. | |||
skipping to change at line 181 | skipping to change at line 191 | |||
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 StepHelix(TEveVector4 &v, TEveVector &p, TEveVector4 &vOut, TEve Vector &pOut); | void Step(TEveVector4 &v, TEveVector &p, TEveVector4 &vOut, TEveVecto r &pOut, Float_t fraction); | |||
Bool_t HelixToVertex(TEveVector& v, TEveVector& p); | Bool_t LoopToVertex(TEveVector& v, TEveVector& p); | |||
void HelixToBounds(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); | ||||
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); | Bool_t PointOverVertex(const TEveVector4& v0, const TEveVector4& v); | |||
public: | public: | |||
TEveTrackPropagator(const Text_t* n="TEveTrackPropagator", const Text_t* t="", | TEveTrackPropagator(const Text_t* n="TEveTrackPropagator", const Text_t* t="", | |||
TEveMagField* field=0); | TEveMagField* field=0); | |||
virtual ~TEveTrackPropagator(); | virtual ~TEveTrackPropagator(); | |||
virtual void OnZeroRefCount(); | virtual void OnZeroRefCount(); | |||
virtual void CheckReferenceCount(const TEveException& eh="TEveElement::C heckReferenceCount "); | virtual void CheckReferenceCount(const TEveException& eh="TEveElement::C heckReferenceCount "); | |||
virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw=kF ALSE); | virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw=kF ALSE); | |||
// propagation | // propagation | |||
void InitTrack(TEveVector &v, TEveVector &p, Float_t beta, Int_t charg e); | void InitTrack(TEveVector& v, Int_t charge); | |||
void ResetTrack(); | void ResetTrack(); | |||
void GoToBounds(TEveVector& p); | void GoToBounds(TEveVector& p); | |||
Bool_t GoToVertex(TEveVector& v, TEveVector& p); | Bool_t GoToVertex(TEveVector& v, TEveVector& p); | |||
Bool_t IntersectPlane(const TEveVector& p, const TEveVector& point, cons t TEveVector& normal, | Bool_t IntersectPlane(const TEveVector& p, const TEveVector& point, cons t TEveVector& normal, | |||
TEveVector& itsect); | TEveVector& itsect); | |||
void FillPointSet(TEvePointSet* ps) const; | void FillPointSet(TEvePointSet* ps) const; | |||
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 SetDelta(Float_t x); | |||
skipping to change at line 242 | skipping to change at line 256 | |||
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;} | ||||
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 { return fH.fMinAng; } | |||
Float_t GetDelta() const { return fH.fDelta; } | 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; } | |||
skipping to change at line 271 | skipping to change at line 287 | |||
static Bool_t IsOutsideBounds(const TEveVector& point, Float_t maxRsqr, Float_t maxZ); | static Bool_t IsOutsideBounds(const TEveVector& point, Float_t maxRsqr, Float_t maxZ); | |||
static Float_t fgDefMagField; // Default value for constant solenoid magnetic field. | static Float_t fgDefMagField; // Default value for constant solenoid magnetic field. | |||
static const Float_t fgkB2C; // Constant for conversion of momentum to curvature. | static const Float_t fgkB2C; // Constant for conversion of momentum to curvature. | |||
static TEveTrackPropagator fgDefStyle; // Default track render-style. | static TEveTrackPropagator fgDefStyle; // Default track render-style. | |||
ClassDef(TEveTrackPropagator, 0); // Calculates path of a particle takin g into account special path-marks and imposed boundaries. | ClassDef(TEveTrackPropagator, 0); // Calculates path of a particle takin g into account special path-marks and imposed boundaries. | |||
}; | }; | |||
//_________________________________________________________________________ _____ | ||||
inline Bool_t TEveTrackPropagator::IsOutsideBounds(const TEveVector& point, | inline Bool_t TEveTrackPropagator::IsOutsideBounds(const TEveVector& point, | |||
Float_t maxRsq r, | Float_t maxRsq r, | |||
Float_t maxZ) | Float_t maxZ) | |||
{ | { | |||
// Return true if point% is outside of cylindrical bounds detrmined by | // Return true if point% is outside of cylindrical bounds detrmined by | |||
// square radius and z. | // square radius and z. | |||
return TMath::Abs(point.fZ) > maxZ || | return TMath::Abs(point.fZ) > maxZ || | |||
point.fX*point.fX + point.fY*point.fY > maxRsqr; | point.fX*point.fX + point.fY*point.fY > maxRsqr; | |||
} | } | |||
//_________________________________________________________________________ _____ | ||||
inline Bool_t TEveTrackPropagator::PointOverVertex(const TEveVector4 &v0, | inline Bool_t TEveTrackPropagator::PointOverVertex(const TEveVector4 &v0, | |||
const TEveVector4 &v) | const TEveVector4 &v) | |||
{ | { | |||
Float_t dotV = fH.fB.fX*(v0.fX-v.fX) | Float_t dotV = fH.fB.fX*(v0.fX-v.fX) | |||
+ fH.fB.fY*(v0.fY-v.fY) | + fH.fB.fY*(v0.fY-v.fY) | |||
+ fH.fB.fZ*(v0.fZ-v.fZ); | + fH.fB.fZ*(v0.fZ-v.fZ); | |||
return (fH.fPlDir > 0 && dotV < 0) || (fH.fPlDir < 0 && dotV >0); | return (fH.fPlDir > 0 && dotV < 0) || (fH.fPlDir < 0 && dotV >0); | |||
} | } | |||
End of changes. 17 change blocks. | ||||
9 lines changed or deleted | 31 lines changed or added | |||
TEveViewer.h | TEveViewer.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TEveViewer.h 25245 2008-08-25 21:44:09Z matevz $ | // @(#)root/eve:$Id: TEveViewer.h 26850 2008-12-11 21:45:13Z 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_TEveViewer | #ifndef ROOT_TEveViewer | |||
#define ROOT_TEveViewer | #define ROOT_TEveViewer | |||
#include "TEveElement.h" | #include "TEveElement.h" | |||
#include "TEveWindow.h" | ||||
class TGWindow; | class TGWindow; | |||
class TGedEditor; | class TGedEditor; | |||
class TGLViewer; | class TGLViewer; | |||
class TGLPhysicalShape; | class TGLPhysicalShape; | |||
class TEveScene; | class TEveScene; | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
// TEveViewer | // TEveViewer | |||
/************************************************************************** ****/ | /************************************************************************** ****/ | |||
class TEveViewer : public TEveElementList | class TEveViewer : public TEveWindowFrame | |||
{ | { | |||
private: | private: | |||
TEveViewer(const TEveViewer&); // Not implemented | TEveViewer(const TEveViewer&); // Not implemented | |||
TEveViewer& operator=(const TEveViewer&); // Not implemented | TEveViewer& operator=(const TEveViewer&); // Not implemented | |||
protected: | protected: | |||
TGLViewer *fGLViewer; | TGLViewer *fGLViewer; | |||
TGFrame *fGLViewerFrame; | ||||
public: | public: | |||
TEveViewer(const Text_t* n="TEveViewer", const Text_t* t=""); | TEveViewer(const Text_t* n="TEveViewer", const Text_t* t=""); | |||
virtual ~TEveViewer() {} | virtual ~TEveViewer(); | |||
virtual void PreUndock(); | ||||
virtual void PostDock(); | ||||
TGLViewer* GetGLViewer() const { return fGLViewer; } | TGLViewer* GetGLViewer() const { return fGLViewer; } | |||
void SetGLViewer(TGLViewer* s); | void SetGLViewer(TGLViewer* viewer, TGFrame* frame); | |||
void SpawnGLViewer(const TGWindow* parent, TGedEditor* ged); | void SpawnGLViewer(TGedEditor* ged); | |||
void SpawnGLEmbeddedViewer(Int_t border=0); | ||||
void Redraw(Bool_t resetCameras=kFALSE); | void Redraw(Bool_t resetCameras=kFALSE); | |||
virtual void AddScene(TEveScene* scene); | virtual void AddScene(TEveScene* scene); | |||
virtual void RemoveElementLocal(TEveElement* el); | virtual void RemoveElementLocal(TEveElement* el); | |||
virtual void RemoveElementsLocal(); | virtual void RemoveElementsLocal(); | |||
virtual TObject* GetEditorObject(const TEveException& eh="TEveViewer::Ge tEditorObject ") const; | virtual TObject* GetEditorObject(const TEveException& eh="TEveViewer::Ge tEditorObject ") const; | |||
virtual Bool_t HandleElementPaste(TEveElement* el); | virtual Bool_t HandleElementPaste(TEveElement* el); | |||
skipping to change at line 77 | skipping to change at line 83 | |||
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; | |||
public: | public: | |||
TEveViewerList(const Text_t* n="TEveViewerList", const Text_t* t=""); | TEveViewerList(const Text_t* n="TEveViewerList", const Text_t* t=""); | |||
virtual ~TEveViewerList() {} | virtual ~TEveViewerList() {} | |||
virtual void AddElement(TEveElement* el); | ||||
virtual void RemoveElementLocal(TEveElement* el); | ||||
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 SceneDestructing(TEveScene* scene); | void SceneDestructing(TEveScene* scene); | |||
// -------------------------------- | // -------------------------------- | |||
void OnMouseOver(TGLPhysicalShape* shape, UInt_t state); | void OnMouseOver(TGLPhysicalShape* shape, UInt_t state); | |||
End of changes. 7 change blocks. | ||||
5 lines changed or deleted | 17 lines changed or added | |||
TFitEditor.h | TFitEditor.h | |||
---|---|---|---|---|
// @(#)root/fitpanel:$Id: TFitEditor.h 26245 2008-11-17 16:32:49Z moneta $ | // @(#)root/fitpanel:$Id: TFitEditor.h 26866 2008-12-12 10:50:07Z moneta $ | |||
// Author: Ilka Antcheva, Lorenzo Moneta, David Gonzalez Maline 10/08/2006 | // Author: Ilka Antcheva, Lorenzo Moneta, David Gonzalez Maline 10/08/2006 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 156 | skipping to change at line 156 | |||
TGNumberEntryField *fTolerance; // contains tolerance set for mi nimization | TGNumberEntryField *fTolerance; // contains tolerance set for mi nimization | |||
TGNumberEntryField *fIterations; // contains maximum number of it erations | TGNumberEntryField *fIterations; // contains maximum number of it erations | |||
TGStatusBar *fStatusBar; // statusbar widget | TGStatusBar *fStatusBar; // statusbar widget | |||
static TFitEditor *fgFitDialog; // singleton fit panel | static TFitEditor *fgFitDialog; // singleton fit panel | |||
TGComboBox* BuildDataSetList(TGFrame *parent, Int_t id); | TGComboBox* BuildDataSetList(TGFrame *parent, Int_t id); | |||
TGComboBox* BuildMethodList(TGFrame *parent, Int_t id); | TGComboBox* BuildMethodList(TGFrame *parent, Int_t id); | |||
void GetRanges(ROOT::Fit::DataRange&); | void GetRanges(ROOT::Fit::DataRange&); | |||
TF1* GetFitFunction(); | ||||
TList* GetFitObjectListOfFunctions(); | TList* GetFitObjectListOfFunctions(); | |||
void DrawSelection(bool restore = false); | void DrawSelection(bool restore = false); | |||
Int_t CheckFunctionString(const char* str); | Int_t CheckFunctionString(const char* str); | |||
void CreateFunctionGroup(); | void CreateFunctionGroup(); | |||
void CreateGeneralTab(); | void CreateGeneralTab(); | |||
void CreateMinimizationTab(); | void CreateMinimizationTab(); | |||
void MakeTitle(TGCompositeFrame *parent, const char *title); | void MakeTitle(TGCompositeFrame *parent, const char *title); | |||
TF1* HasFitFunction(); | TF1* HasFitFunction(); | |||
void SetEditable(Bool_t); | void SetEditable(Bool_t); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TFumiliMinimizer.h | TFumiliMinimizer.h | |||
---|---|---|---|---|
// @(#)root/fumili:$Id: TFumiliMinimizer.h 25486 2008-09-22 12:43:03Z monet a $ | // @(#)root/fumili:$Id: TFumiliMinimizer.h 26866 2008-12-12 10:50:07Z 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 TFumiliMinimizer | // Header file for class TFumiliMinimizer | |||
skipping to change at line 94 | skipping to change at line 94 | |||
#ifdef LATER | #ifdef LATER | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
#endif | #endif | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int ivar, double val ); | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fMinVal; } | virtual double MinValue() const { return fMinVal; } | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const { return fEdm; } | virtual double Edm() const { return fEdm; } | |||
/// return pointer to X values at the minimum | /// return pointer to X values at the minimum | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TGHtml.h | TGHtml.h | |||
---|---|---|---|---|
skipping to change at line 139 | skipping to change at line 139 | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// Various data types. This code is designed to run on a modern cached | // Various data types. This code is designed to run on a modern cached | |||
// architecture where the CPU runs a lot faster than the memory bus. Hence | // architecture where the CPU runs a lot faster than the memory bus. Hence | |||
// we try to pack as much data into as small a space as possible so that it | // we try to pack as much data into as small a space as possible so that it | |||
// is more likely to fit in cache. The extra CPU instruction or two needed | // is more likely to fit in cache. The extra CPU instruction or two needed | |||
// to unpack the data is not normally an issue since we expect the speed of | // to unpack the data is not normally an issue since we expect the speed of | |||
// the memory bus to be the limiting factor. | // the memory bus to be the limiting factor. | |||
typedef unsigned char Html_u8; // 8-bit unsigned integer | typedef unsigned char Html_u8_t; // 8-bit unsigned integer | |||
typedef short Html_16; // 16-bit signed integer | typedef short Html_16_t; // 16-bit signed integer | |||
typedef unsigned short Html_u16; // 16-bit unsigned integer | typedef unsigned short Html_u16_t; // 16-bit unsigned integer | |||
typedef int Html_32; // 32-bit signed integer | typedef int Html_32_t; // 32-bit signed integer | |||
// An instance of the following structure is used to record style | // An instance of the following structure is used to record style | |||
// information on each Html element. | // information on each Html element. | |||
struct SHtmlStyle { | struct SHtmlStyle_t { | |||
unsigned int font : 6; // Font to use for display | unsigned int fFont : 6; // Font to use for display | |||
unsigned int color : 6; // Foreground color | unsigned int fColor : 6; // Foreground color | |||
signed int subscript : 4; // Positive for <sup>, negative for <sub> | signed int fSubscript : 4; // Positive for <sup>, negative for <su | |||
unsigned int align : 2; // Horizontal alignment | b> | |||
unsigned int bgcolor : 6; // Background color | unsigned int fAlign : 2; // Horizontal alignment | |||
unsigned int expbg : 1; // Set to 1 if bgcolor explicitely set | unsigned int fBgcolor : 6; // Background color | |||
unsigned int flags : 7; // the STY_ flags below | unsigned int fExpbg : 1; // Set to 1 if bgcolor explicitely set | |||
unsigned int fFlags : 7; // the STY_ flags below | ||||
}; | }; | |||
// We allow 8 different font families: Normal, Bold, Italic and Bold-Italic | // We allow 8 different font families: Normal, Bold, Italic and Bold-Italic | |||
// in either variable or constant width. Within each family there can be up | // in either variable or constant width. Within each family there can be up | |||
// to 7 font sizes from 1 (the smallest) up to 7 (the largest). Hence, the | // to 7 font sizes from 1 (the smallest) up to 7 (the largest). Hence, the | |||
// widget can use a maximum of 56 fonts. The ".font" field of the style is | // widget can use a maximum of 56 fonts. The ".font" field of the style is | |||
// an integer between 0 and 55 which indicates which font to use. | // an integer between 0 and 55 which indicates which font to use. | |||
// HP: we further subdivide the .font field into two 3-bit subfields (size | // HP: we further subdivide the .font field into two 3-bit subfields (size | |||
// and family). That makes easier to manipulate the family field. | // and family). That makes easier to manipulate the family field. | |||
skipping to change at line 182 | skipping to change at line 182 | |||
#define CWFont(X) ((X) | 32) | #define CWFont(X) ((X) | 32) | |||
#define FontSize(X) ((X) & 007) | #define FontSize(X) ((X) & 007) | |||
#define FontFamily(X) ((X) & 070) | #define FontFamily(X) ((X) & 070) | |||
#define FONT_Any -1 | #define FONT_Any -1 | |||
#define FONT_Default 3 | #define FONT_Default 3 | |||
#define FontSwitch(Size, Bold, Italic, Cw) \ | #define FontSwitch(Size, Bold, Italic, Cw) \ | |||
((Size) | ((Bold+(Italic)*2+(Cw)*4) << 3)) | ((Size) | ((Bold+(Italic)*2+(Cw)*4) << 3)) | |||
// Macros for manipulating the fontValid bitmap of an TGHtml object. | // Macros for manipulating the fontValid bitmap of an TGHtml object. | |||
#define FontIsValid(I) ((fontValid[(I)>>3] & (1<<((I)&3)))!=0) | #define FontIsValid(I) ((fFontValid[(I)>>3] & (1<<((I)&3)))!=0) | |||
#define FontSetValid(I) (fontValid[(I)>>3] |= (1<<((I)&3))) | #define FontSetValid(I) (fFontValid[(I)>>3] |= (1<<((I)&3))) | |||
#define FontClearValid(I) (fontValid[(I)>>3] &= ~(1<<((I)&3))) | #define FontClearValid(I) (fFontValid[(I)>>3] &= ~(1<<((I)&3))) | |||
// Information about available colors. | // Information about available colors. | |||
// | // | |||
// The widget will use at most N_COLOR colors. 4 of these colors are | // The widget will use at most N_COLOR colors. 4 of these colors are | |||
// predefined. The rest are user selectable by options to various markups. | // predefined. The rest are user selectable by options to various markups. | |||
// (Ex: <font color=red>) | // (Ex: <font color=red>) | |||
// | // | |||
// All colors are stored in the apColor[] array of the main widget object. | // All colors are stored in the apColor[] array of the main widget object. | |||
// The ".color" field of the SHtmlStyle is an integer between 0 and | // The ".color" field of the SHtmlStyle_t is an integer between 0 and | |||
// N_COLOR-1 which indicates which of these colors to use. | // N_COLOR-1 which indicates which of these colors to use. | |||
#define N_COLOR 32 // Total number of colors | #define N_COLOR 32 // Total number of colors | |||
#define COLOR_Normal 0 // Index for normal color (black) | #define COLOR_Normal 0 // Index for normal color (black) | |||
#define COLOR_Unvisited 1 // Index for unvisited hyperlinks | #define COLOR_Unvisited 1 // Index for unvisited hyperlinks | |||
#define COLOR_Visited 2 // Color for visited hyperlinks | #define COLOR_Visited 2 // Color for visited hyperlinks | |||
#define COLOR_Selection 3 // Background color for the selection | #define COLOR_Selection 3 // Background color for the selection | |||
#define COLOR_Background 4 // Default background color | #define COLOR_Background 4 // Default background color | |||
#define N_PREDEFINED_COLOR 5 // Number of predefined colors | #define N_PREDEFINED_COLOR 5 // Number of predefined colors | |||
// The "align" field of the style determines how text is justified | // The "align" field of the style determines how text is justified | |||
// horizontally. ALIGN_None means that the alignment is not specified. | // horizontally. ALIGN_None means that the alignment is not specified. | |||
// (It should probably default to ALIGN_Left in this case.) | // (It should probably default to ALIGN_Left in this case.) | |||
#define ALIGN_Left 1 | #define ALIGN_Left 1 | |||
#define ALIGN_Right 2 | #define ALIGN_Right 2 | |||
#define ALIGN_Center 3 | #define ALIGN_Center 3 | |||
#define ALIGN_None 0 | #define ALIGN_None 0 | |||
// Possible value of the "flags" field of SHtmlStyle are shown below. | // Possible value of the "flags" field of SHtmlStyle_t are shown below. | |||
// | // | |||
// STY_Preformatted If set, the current text occurred within | // STY_Preformatted If set, the current text occurred within | |||
// <pre>..</pre> | // <pre>..</pre> | |||
// | // | |||
// STY_StrikeThru Draw a solid line thru the middle of this text. | // STY_StrikeThru Draw a solid line thru the middle of this text. | |||
// | // | |||
// STY_Underline This text should drawn with an underline. | // STY_Underline This text should drawn with an underline. | |||
// | // | |||
// STY_NoBreak This text occurs within <nobr>..</nobr> | // STY_NoBreak This text occurs within <nobr>..</nobr> | |||
// | // | |||
skipping to change at line 250 | skipping to change at line 250 | |||
#define STY_FontMask (STY_StrikeThru|STY_Underline) | #define STY_FontMask (STY_StrikeThru|STY_Underline) | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// The first thing done with input HTML text is to parse it into | // The first thing done with input HTML text is to parse it into | |||
// TGHtmlElements. All sizing and layout is done using these elements. | // TGHtmlElements. All sizing and layout is done using these elements. | |||
// Every element contains at least this much information: | // Every element contains at least this much information: | |||
class TGHtmlElement : public TObject { | class TGHtmlElement : public TObject { | |||
public: | public: | |||
TGHtmlElement(int etype = 0); | TGHtmlElement(int etype = 0); | |||
virtual int IsMarkup() const { return (type > Html_Block); } | virtual int IsMarkup() const { return (fType > Html_Block); } | |||
virtual const char *MarkupArg(const char * /*tag*/, const char * /*zDefau | virtual const char *MarkupArg(const char * /*tag*/, const char * /*zDefa | |||
lt*/) { return 0; } | ult*/) { return 0; } | |||
virtual int GetAlignment(int dflt) { return dflt; } | virtual int GetAlignment(int dflt) { return dflt; } | |||
virtual int GetOrderedListType(int dflt) { return dflt; } | virtual int GetOrderedListType(int dflt) { return dflt; } | |||
virtual int GetUnorderedListType(int dflt) { return dflt; } | virtual int GetUnorderedListType(int dflt) { return dflt; } | |||
virtual int GetVerticalAlignment(int dflt) { return dflt; } | virtual int GetVerticalAlignment(int dflt) { return dflt; } | |||
public: | public: | |||
TGHtmlElement *pNext; // Next input token in a list of them all | TGHtmlElement *fPNext; // Next input token in a list of them all | |||
TGHtmlElement *pPrev; // Previous token in a list of them all | TGHtmlElement *fPPrev; // Previous token in a list of them all | |||
SHtmlStyle style; // The rendering style for this token | SHtmlStyle_t fStyle; // The rendering style for this token | |||
Html_u8 type; // The token type. | Html_u8_t fType; // The token type. | |||
Html_u8 flags; // The HTML_ flags below | Html_u8_t fFlags; // The HTML_ flags below | |||
Html_16 count; // Various uses, depending on "type" | Html_16_t fCount; // Various uses, depending on "type" | |||
int id; // Unique identifier | int fElId; // Unique identifier | |||
int offs; // Offset within zText | int fOffs; // Offset within zText | |||
}; | }; | |||
// Bitmasks for the "flags" field of the TGHtmlElement | // Bitmasks for the "flags" field of the TGHtmlElement | |||
#define HTML_Visible 0x01 // This element produces "ink" | #define HTML_Visible 0x01 // This element produces "ink" | |||
#define HTML_NewLine 0x02 // type == Html_Space and ends with newline | #define HTML_NewLine 0x02 // type == Html_Space and ends with newline | |||
#define HTML_Selected 0x04 // Some or all of this Html_Block is selected | #define HTML_Selected 0x04 // Some or all of this Html_Block is selected | |||
// Used by Html_Block elements only. | // Used by Html_Block elements only. | |||
// Each text element holds additional information as shown here. Notice tha t | // Each text element holds additional information as shown here. Notice tha t | |||
// extra space is allocated so that zText[] will be large enough to hold th e | // extra space is allocated so that zText[] will be large enough to hold th e | |||
// complete text of the element. X and y coordinates are relative to the | // complete text of the element. X and y coordinates are relative to the | |||
// virtual canvas. The y coordinate refers to the baseline. | // virtual canvas. The y coordinate refers to the baseline. | |||
class TGHtmlTextElement : public TGHtmlElement { | class TGHtmlTextElement : public TGHtmlElement { | |||
public: | public: | |||
TGHtmlTextElement(int size); | TGHtmlTextElement(int size); | |||
virtual ~TGHtmlTextElement(); | virtual ~TGHtmlTextElement(); | |||
Html_32 y; // y coordinate where text should be rendered | Html_32_t fY; // y coordinate where text should be ren | |||
Html_16 x; // x coordinate where text should be rendered | dered | |||
Html_16 w; // width of this token in pixels | Html_16_t fX; // x coordinate where text should be ren | |||
Html_u8 ascent; // height above the baseline | dered | |||
Html_u8 descent; // depth below the baseline | Html_16_t fW; // width of this token in pixels | |||
Html_u8 spaceWidth; // Width of one space in the current font | Html_u8_t fAscent; // height above the baseline | |||
char *zText; // Text for this element. Null terminated | Html_u8_t fDescent; // depth below the baseline | |||
Html_u8_t fSpaceWidth; // Width of one space in the current fon | ||||
t | ||||
char *fZText; // Text for this element. Null terminate | ||||
d | ||||
}; | }; | |||
// Each space element is represented like this: | // Each space element is represented like this: | |||
class TGHtmlSpaceElement : public TGHtmlElement { | class TGHtmlSpaceElement : public TGHtmlElement { | |||
public: | public: | |||
TGHtmlSpaceElement() : TGHtmlElement(Html_Space) {} | TGHtmlSpaceElement() : TGHtmlElement(Html_Space) {} | |||
Html_16 w; // Width of a single space in current font | Html_16_t fW; // Width of a single space in current fon | |||
Html_u8 ascent; // height above the baseline | t | |||
Html_u8 descent; // depth below the baseline | Html_u8_t fAscent; // height above the baseline | |||
Html_u8_t fDescent; // depth below the baseline | ||||
}; | }; | |||
// Most markup uses this class. Some markup extends this class with | // Most markup uses this class. Some markup extends this class with | |||
// additional information, but most use it as is, at the very least. | // additional information, but most use it as is, at the very least. | |||
// | // | |||
// If the markup doesn't have arguments (the "count" field of | // If the markup doesn't have arguments (the "count" field of | |||
// TGHtmlElement is 0) then the extra "argv" field of this class | // TGHtmlElement is 0) then the extra "argv" field of this class | |||
// is not allocated and should not be used. | // is not allocated and should not be used. | |||
class TGHtmlMarkupElement : public TGHtmlElement { | class TGHtmlMarkupElement : public TGHtmlElement { | |||
public: | public: | |||
TGHtmlMarkupElement(int type, int argc, int arglen[], char *argv[]); | TGHtmlMarkupElement(int type, int argc, int arglen[], char *argv[]); | |||
virtual ~TGHtmlMarkupElement(); | virtual ~TGHtmlMarkupElement(); | |||
virtual const char *MarkupArg(const char *tag, const char *zDefault); | virtual const char *MarkupArg(const char *tag, const char *zDefault); | |||
virtual int GetAlignment(int dflt); | virtual int GetAlignment(int dflt); | |||
virtual int GetOrderedListType(int dflt); | virtual int GetOrderedListType(int dflt); | |||
virtual int GetUnorderedListType(int dflt); | virtual int GetUnorderedListType(int dflt); | |||
virtual int GetVerticalAlignment(int dflt); | virtual int GetVerticalAlignment(int dflt); | |||
public://protected: | public://protected: | |||
char **argv; | char **fArgv; | |||
}; | }; | |||
// The maximum number of columns allowed in a table. Any columns beyond | // The maximum number of columns allowed in a table. Any columns beyond | |||
// this number are ignored. | // this number are ignored. | |||
#define HTML_MAX_COLUMNS 40 | #define HTML_MAX_COLUMNS 40 | |||
// This class is used for each <table> element. | // This class is used for each <table> element. | |||
// | // | |||
// In the minW[] and maxW[] arrays, the [0] element is the overall | // In the minW[] and maxW[] arrays, the [0] element is the overall | |||
// minimum and maximum width, including cell padding, spacing and | // minimum and maximum width, including cell padding, spacing and | |||
// the "hspace". All other elements are the minimum and maximum | // the "hspace". All other elements are the minimum and maximum | |||
// width for the contents of individual cells without any spacing or | // width for the contents of individual cells without any spacing or | |||
// padding. | // padding. | |||
class TGHtmlTable : public TGHtmlMarkupElement { | class TGHtmlTable : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlTable(int type, int argc, int arglen[], char *argv[]); | TGHtmlTable(int type, int argc, int arglen[], char *argv[]); | |||
~TGHtmlTable(); | ~TGHtmlTable(); | |||
public: | public: | |||
Html_u8 borderWidth; // Width of the border | Html_u8_t fBorderWidth; // Width of the border | |||
Html_u8 nCol; // Number of columns | Html_u8_t fNCol; // Number of columns | |||
Html_u16 nRow; // Number of rows | Html_u16_t fNRow; // Number of rows | |||
Html_32 y; // top edge of table border | Html_32_t fY; // top edge of table border | |||
Html_32 h; // height of the table border | Html_32_t fH; // height of the table border | |||
Html_16 x; // left edge of table border | Html_16_t fX; // left edge of table border | |||
Html_16 w; // width of the table border | Html_16_t fW; // width of the table border | |||
int minW[HTML_MAX_COLUMNS+1]; // minimum width of each column | int fMinW[HTML_MAX_COLUMNS+1]; // minimum width of each colum | |||
int maxW[HTML_MAX_COLUMNS+1]; // maximum width of each column | n | |||
TGHtmlElement *pEnd; // Pointer to the end tag element | int fMaxW[HTML_MAX_COLUMNS+1]; // maximum width of each colum | |||
TImage *bgImage; // A background for the entire table | n | |||
int hasbg; // 1 if a table above has bgImage | TGHtmlElement *fPEnd; // Pointer to the end tag elem | |||
ent | ||||
TImage *fBgImage; // A background for the entire | ||||
table | ||||
int fHasbg; // 1 if a table above has bgIm | ||||
age | ||||
}; | }; | |||
// Each <td> or <th> markup is represented by an instance of the | // Each <td> or <th> markup is represented by an instance of the | |||
// following class. | // following class. | |||
// | // | |||
// Drawing for a cell is a sunken 3D border with the border width given | // Drawing for a cell is a sunken 3D border with the border width given | |||
// by the borderWidth field in the associated <table> object. | // by the borderWidth field in the associated <table> object. | |||
class TGHtmlCell : public TGHtmlMarkupElement { | class TGHtmlCell : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlCell(int type, int argc, int arglen[], char *argv[]); | TGHtmlCell(int type, int argc, int arglen[], char *argv[]); | |||
~TGHtmlCell(); | ~TGHtmlCell(); | |||
public: | public: | |||
Html_16 rowspan; // Number of rows spanned by this cell | Html_16_t fRowspan; // Number of rows spanned by this cell | |||
Html_16 colspan; // Number of columns spanned by this cell | Html_16_t fColspan; // Number of columns spanned by this cell | |||
Html_16 x; // X coordinate of left edge of border | Html_16_t fX; // X coordinate of left edge of border | |||
Html_16 w; // Width of the border | Html_16_t fW; // Width of the border | |||
Html_32 y; // Y coordinate of top of border indentation | Html_32_t fY; // Y coordinate of top of border indentati | |||
Html_32 h; // Height of the border | on | |||
TGHtmlTable *pTable; // Pointer back to the <table> | Html_32_t fH; // Height of the border | |||
TGHtmlElement *pRow; // Pointer back to the <tr> | TGHtmlTable *fPTable; // Pointer back to the <table> | |||
TGHtmlElement *pEnd; // Element that ends this cell | TGHtmlElement *fPRow; // Pointer back to the <tr> | |||
TImage *bgImage; // Background for the cell | TGHtmlElement *fPEnd; // Element that ends this cell | |||
TImage *fBgImage; // Background for the cell | ||||
}; | }; | |||
// This class is used for </table>, </td>, <tr>, </tr> and </th> elements. | // This class is used for </table>, </td>, <tr>, </tr> and </th> elements. | |||
// It points back to the <table> element that began the table. It is also | // It points back to the <table> element that began the table. It is also | |||
// used by </a> to point back to the original <a>. I'll probably think of | // used by </a> to point back to the original <a>. I'll probably think of | |||
// other uses before all is said and done... | // other uses before all is said and done... | |||
class TGHtmlRef : public TGHtmlMarkupElement { | class TGHtmlRef : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlRef(int type, int argc, int arglen[], char *argv[]); | TGHtmlRef(int type, int argc, int arglen[], char *argv[]); | |||
~TGHtmlRef(); | ~TGHtmlRef(); | |||
public: | public: | |||
TGHtmlElement *pOther; // Pointer to some other Html element | TGHtmlElement *fPOther; // Pointer to some other Html element | |||
TImage *bgImage; // A background for the entire row | TImage *fBgImage; // A background for the entire row | |||
}; | }; | |||
// An instance of the following class is used to represent | // An instance of the following class is used to represent | |||
// each <LI> markup. | // each <LI> markup. | |||
class TGHtmlLi : public TGHtmlMarkupElement { | class TGHtmlLi : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlLi(int type, int argc, int arglen[], char *argv[]); | TGHtmlLi(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_u8 ltype; // What type of list is this? | Html_u8_t fLtype; // What type of list is this? | |||
Html_u8 ascent; // height above the baseline | Html_u8_t fAscent; // height above the baseline | |||
Html_u8 descent; // depth below the baseline | Html_u8_t fDescent; // depth below the baseline | |||
Html_16 cnt; // Value for this element (if inside <OL>) | Html_16_t fCnt; // Value for this element (if inside <OL>) | |||
Html_16 x; // X coordinate of the bullet | Html_16_t fX; // X coordinate of the bullet | |||
Html_32 y; // Y coordinate of the bullet | Html_32_t fY; // Y coordinate of the bullet | |||
}; | }; | |||
// The ltype field of an TGHtmlLi or TGHtmlListStart object can take on | // The ltype field of an TGHtmlLi or TGHtmlListStart object can take on | |||
// any of the following values to indicate what type of bullet to draw. | // any of the following values to indicate what type of bullet to draw. | |||
// The value in TGHtmlLi will take precedence over the value in | // The value in TGHtmlLi will take precedence over the value in | |||
// TGHtmlListStart if the two values differ. | // TGHtmlListStart if the two values differ. | |||
#define LI_TYPE_Undefined 0 // If in TGHtmlLi, use the TGHtmlListStart value | #define LI_TYPE_Undefined 0 // If in TGHtmlLi, use the TGHtmlListStart value | |||
#define LI_TYPE_Bullet1 1 // A solid circle | #define LI_TYPE_Bullet1 1 // A solid circle | |||
#define LI_TYPE_Bullet2 2 // A hollow circle | #define LI_TYPE_Bullet2 2 // A hollow circle | |||
skipping to change at line 436 | skipping to change at line 436 | |||
#define LI_TYPE_Enum_1 4 // Arabic numbers | #define LI_TYPE_Enum_1 4 // Arabic numbers | |||
#define LI_TYPE_Enum_A 5 // A, B, C, ... | #define LI_TYPE_Enum_A 5 // A, B, C, ... | |||
#define LI_TYPE_Enum_a 6 // a, b, c, ... | #define LI_TYPE_Enum_a 6 // a, b, c, ... | |||
#define LI_TYPE_Enum_I 7 // Capitalized roman numerals | #define LI_TYPE_Enum_I 7 // Capitalized roman numerals | |||
#define LI_TYPE_Enum_i 8 // Lower-case roman numerals | #define LI_TYPE_Enum_i 8 // Lower-case roman numerals | |||
// An instance of this class is used for <UL> or <OL> markup. | // An instance of this class is used for <UL> or <OL> markup. | |||
class TGHtmlListStart : public TGHtmlMarkupElement { | class TGHtmlListStart : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlListStart(int type, int argc, int arglen[], char *argv[]); | TGHtmlListStart(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_u8 ltype; // One of the LI_TYPE_ defines above | Html_u8_t fLtype; // One of the LI_TYPE_ defines above | |||
Html_u8 compact; // True if the COMPACT flag is present | Html_u8_t fCompact; // True if the COMPACT flag is present | |||
Html_u16 cnt; // Next value for <OL> | Html_u16_t fCnt; // Next value for <OL> | |||
Html_u16 width; // How much space to allow for indentation | Html_u16_t fWidth; // How much space to allow for indentation | |||
TGHtmlListStart *lPrev; // Next higher level list, or NULL | TGHtmlListStart *fLPrev; // Next higher level list, or NULL | |||
}; | }; | |||
#define HTML_MAP_RECT 1 | #define HTML_MAP_RECT 1 | |||
#define HTML_MAP_CIRCLE 2 | #define HTML_MAP_CIRCLE 2 | |||
#define HTML_MAP_POLY 3 | #define HTML_MAP_POLY 3 | |||
class TGHtmlMapArea : public TGHtmlMarkupElement { | class TGHtmlMapArea : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlMapArea(int type, int argc, int arglen[], char *argv[]); | TGHtmlMapArea(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
int mType; | int fMType; | |||
int *coords; | int *fCoords; | |||
int num; | int fNum; | |||
}; | }; | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// Structure to chain extension data onto. | // Structure to chain extension data onto. | |||
struct SHtmlExtensions { | struct SHtmlExtensions_t { | |||
void *exts; | void *fExts; | |||
int typ; | int fTyp; | |||
int flags; | int fFlags; | |||
SHtmlExtensions *next; | SHtmlExtensions_t *fNext; | |||
}; | }; | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// Information about each image on the HTML widget is held in an instance | // Information about each image on the HTML widget is held in an instance | |||
// of the following class. All images are held on a list attached to the | // of the following class. All images are held on a list attached to the | |||
// main widget object. | // main widget object. | |||
// | // | |||
// This class is NOT an element. The <IMG> element is represented by an | // This class is NOT an element. The <IMG> element is represented by an | |||
// TGHtmlImageMarkup object below. There is one TGHtmlImageMarkup for each | // TGHtmlImageMarkup object below. There is one TGHtmlImageMarkup for each | |||
// <IMG> in the source HTML. There is one of these objects for each unique | // <IMG> in the source HTML. There is one of these objects for each unique | |||
// image loaded. (If two <IMG> specify the same image, there are still two | // image loaded. (If two <IMG> specify the same image, there are still two | |||
// TGHtmlImageMarkup objects but only one TGHtmlImage object that is shared | // TGHtmlImageMarkup objects but only one TGHtmlImage object that is shared | |||
// between them.) | // between them.) | |||
class TGHtml; | class TGHtml; | |||
class TGHtmlImageMarkup; | class TGHtmlImageMarkup; | |||
class TGHtmlImage : public TObject { | class TGHtmlImage : public TObject { | |||
public: | public: | |||
TGHtmlImage(TGHtml *htm, const char *url, const char *width, | TGHtmlImage(TGHtml *htm, const char *url, const char *width, | |||
const char *height); | const char *height); | |||
virtual ~TGHtmlImage(); | virtual ~TGHtmlImage(); | |||
public: | public: | |||
TGHtml *_html; // The owner of this image | TGHtml *fHtml; // The owner of this image | |||
TImage *image; // The image token | TImage *fImage; // The image token | |||
Html_32 w; // Requested width of this image (0 if none) | Html_32_t fW; // Requested width of this image | |||
Html_32 h; // Requested height of this image (0 if none) | (0 if none) | |||
char *zUrl; // The URL for this image. | Html_32_t fH; // Requested height of this image | |||
char *zWidth, *zHeight; // Width and height in the <img> markup. | (0 if none) | |||
TGHtmlImage *pNext; // Next image on the list | char *fZUrl; // The URL for this image. | |||
TGHtmlImageMarkup *pList; // List of all <IMG> markups that use this | char *fZWidth, *fZHeight; // Width and height in the <img> | |||
// same image | markup. | |||
TTimer *timer; // for animations | TGHtmlImage *fPNext; // Next image on the list | |||
TGHtmlImageMarkup *fPList; // List of all <IMG> markups that | ||||
use this | ||||
// same image | ||||
TTimer *fTimer; // for animations | ||||
}; | }; | |||
// Each <img> markup is represented by an instance of the following | // Each <img> markup is represented by an instance of the following | |||
// class. | // class. | |||
// | // | |||
// If pImage == 0, then we use the alternative text in zAlt. | // If pImage == 0, then we use the alternative text in zAlt. | |||
class TGHtmlImageMarkup : public TGHtmlMarkupElement { | class TGHtmlImageMarkup : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlImageMarkup(int type, int argc, int arglen[], char *argv[]); | TGHtmlImageMarkup(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_u8 align; // Alignment. See IMAGE_ALIGN_ defines below | Html_u8_t fAlign; // Alignment. See IMAGE_ALIGN_ defin | |||
Html_u8 textAscent; // Ascent of text font in force at the <IMG> | es below | |||
Html_u8 textDescent; // Descent of text font in force at the <IMG> | Html_u8_t fTextAscent; // Ascent of text font in force at t | |||
Html_u8 redrawNeeded; // Need to redraw this image because the image | he <IMG> | |||
// content changed. | Html_u8_t fTextDescent; // Descent of text font in force at | |||
Html_16 h; // Actual height of the image | the <IMG> | |||
Html_16 w; // Actual width of the image | Html_u8_t fRedrawNeeded; // Need to redraw this image because | |||
Html_16 ascent; // How far image extends above "y" | the image | |||
Html_16 descent; // How far image extends below "y" | // content changed. | |||
Html_16 x; // X coordinate of left edge of the image | Html_16_t fH; // Actual height of the image | |||
Html_32 y; // Y coordinate of image baseline | Html_16_t fW; // Actual width of the image | |||
const char *zAlt; // Alternative text | Html_16_t fAscent; // How far image extends above "y" | |||
TGHtmlImage *pImage; // Corresponding TGHtmlImage object | Html_16_t fDescent; // How far image extends below "y" | |||
TGHtmlElement *pMap; // usemap | Html_16_t fX; // X coordinate of left edge of the | |||
TGHtmlImageMarkup *iNext; // Next markup using the same TGHtmlImage objec | image | |||
t | Html_32_t fY; // Y coordinate of image baseline | |||
const char *fZAlt; // Alternative text | ||||
TGHtmlImage *fPImage; // Corresponding TGHtmlImage object | ||||
TGHtmlElement *fPMap; // usemap | ||||
TGHtmlImageMarkup *fINext; // Next markup using the same TGHtml | ||||
Image object | ||||
}; | }; | |||
// Allowed alignments for images. These represent the allowed arguments | // Allowed alignments for images. These represent the allowed arguments | |||
// to the "align=" field of the <IMG> markup. | // to the "align=" field of the <IMG> markup. | |||
#define IMAGE_ALIGN_Bottom 0 | #define IMAGE_ALIGN_Bottom 0 | |||
#define IMAGE_ALIGN_Middle 1 | #define IMAGE_ALIGN_Middle 1 | |||
#define IMAGE_ALIGN_Top 2 | #define IMAGE_ALIGN_Top 2 | |||
#define IMAGE_ALIGN_TextTop 3 | #define IMAGE_ALIGN_TextTop 3 | |||
#define IMAGE_ALIGN_AbsMiddle 4 | #define IMAGE_ALIGN_AbsMiddle 4 | |||
skipping to change at line 558 | skipping to change at line 558 | |||
// (later...) We also use this for the <APPLET> markup. That way, | // (later...) We also use this for the <APPLET> markup. That way, | |||
// the window we create for an <APPLET> responds to the TGHtml::MapControls () | // the window we create for an <APPLET> responds to the TGHtml::MapControls () | |||
// and TGHtml::UnmapControls() function calls. For an <APPLET>, the | // and TGHtml::UnmapControls() function calls. For an <APPLET>, the | |||
// pForm field is NULL. (Later still...) <EMBED> works just like | // pForm field is NULL. (Later still...) <EMBED> works just like | |||
// <APPLET> so it uses this class too. | // <APPLET> so it uses this class too. | |||
class TGHtmlForm; | class TGHtmlForm; | |||
class TGHtmlInput : public TGHtmlMarkupElement { | class TGHtmlInput : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlInput(int type, int argc, int arglen[], char *argv[]); | TGHtmlInput(int type, int argc, int arglen[], char *argv[]); | |||
void Empty(); | void Empty(); | |||
public: | public: | |||
TGHtmlForm *pForm; // The <FORM> to which this belongs | TGHtmlForm *fPForm; // The <FORM> to which this belongs | |||
TGHtmlInput *iNext; // Next element in a list of all input elements | TGHtmlInput *fINext; // Next element in a list of all input ele | |||
TGFrame *frame; // The xclass window that implements this contro | ments | |||
l | TGFrame *fFrame; // The xclass window that implements this | |||
TGHtml *html; // The HTML widget this control is attached to | control | |||
TGHtmlElement *pEnd; // End tag for <TEXTAREA>, etc. | TGHtml *fHtml; // The HTML widget this control is attache | |||
Html_u16 inpId; // Unique id for this element | d to | |||
Html_u16 subId; // For radio - an id, for select - option count | TGHtmlElement *fPEnd; // End tag for <TEXTAREA>, etc. | |||
Html_32 y; // Baseline for this input element | Html_u16_t fInpId; // Unique id for this element | |||
Html_u16 x; // Left edge | Html_u16_t fSubId; // For radio - an id, for select - option | |||
Html_u16 w, h; // Width and height of this control | count | |||
Html_u8 padLeft; // Extra padding on left side of the control | Html_32_t fY; // Baseline for this input element | |||
Html_u8 align; // One of the IMAGE_ALIGN_xxx types | Html_u16_t fX; // Left edge | |||
Html_u8 textAscent; // Ascent for the current font | Html_u16_t fW, fH; // Width and height of this control | |||
Html_u8 textDescent; // descent for the current font | Html_u8_t fPadLeft; // Extra padding on left side of the contr | |||
Html_u8 itype; // What type of input is this? | ol | |||
Html_u8 sized; // True if this input has been sized already | Html_u8_t fAlign; // One of the IMAGE_ALIGN_xxx types | |||
Html_u16 cnt; // Used to derive widget name. 0 if no widget | Html_u8_t fTextAscent; // Ascent for the current font | |||
Html_u8_t fTextDescent; // descent for the current font | ||||
Html_u8_t fItype; // What type of input is this? | ||||
Html_u8_t fSized; // True if this input has been sized alrea | ||||
dy | ||||
Html_u16_t fCnt; // Used to derive widget name. 0 if no wid | ||||
get | ||||
}; | }; | |||
// An input control can be one of the following types. See the | // An input control can be one of the following types. See the | |||
// comment about <APPLET> on the TGHtmlInput class insight into | // comment about <APPLET> on the TGHtmlInput class insight into | |||
// INPUT_TYPE_Applet. | // INPUT_TYPE_Applet. | |||
#define INPUT_TYPE_Unknown 0 | #define INPUT_TYPE_Unknown 0 | |||
#define INPUT_TYPE_Checkbox 1 | #define INPUT_TYPE_Checkbox 1 | |||
#define INPUT_TYPE_File 2 | #define INPUT_TYPE_File 2 | |||
#define INPUT_TYPE_Hidden 3 | #define INPUT_TYPE_Hidden 3 | |||
skipping to change at line 608 | skipping to change at line 608 | |||
#define INPUT_TYPE_Applet 12 | #define INPUT_TYPE_Applet 12 | |||
#define INPUT_TYPE_Button 13 | #define INPUT_TYPE_Button 13 | |||
// There can be multiple <FORM> entries on a single HTML page. | // There can be multiple <FORM> entries on a single HTML page. | |||
// Each one must be given a unique number for identification purposes, | // Each one must be given a unique number for identification purposes, | |||
// and so we can generate unique state variable names for radiobuttons, | // and so we can generate unique state variable names for radiobuttons, | |||
// checkbuttons, and entry boxes. | // checkbuttons, and entry boxes. | |||
class TGHtmlForm : public TGHtmlMarkupElement { | class TGHtmlForm : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlForm(int type, int argc, int arglen[], char *argv[]); | TGHtmlForm(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_u16 formId; // Unique number assigned to this form | Html_u16_t fFormId; // Unique number assigned to this form | |||
unsigned int elements; // Number of elements | unsigned int fElements; // Number of elements | |||
unsigned int hasctl; // Has controls | unsigned int fHasctl; // Has controls | |||
TGHtmlElement *pFirst; // First form element | TGHtmlElement *fPFirst; // First form element | |||
TGHtmlElement *pEnd; // Pointer to end tag element | TGHtmlElement *fPEnd; // Pointer to end tag element | |||
}; | }; | |||
// Information used by a <HR> markup | // Information used by a <HR> markup | |||
class TGHtmlHr : public TGHtmlMarkupElement { | class TGHtmlHr : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlHr(int type, int argc, int arglen[], char *argv[]); | TGHtmlHr(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_32 y; // Baseline for this input element | Html_32_t fY; // Baseline for this input element | |||
Html_u16 x; // Left edge | Html_u16_t fX; // Left edge | |||
Html_u16 w, h; // Width and height of this control | Html_u16_t fW, fH; // Width and height of this control | |||
Html_u8 is3D; // Is it drawn 3D? | Html_u8_t fIs3D; // Is it drawn 3D? | |||
}; | }; | |||
// Information used by a <A> markup | // Information used by a <A> markup | |||
class TGHtmlAnchor : public TGHtmlMarkupElement { | class TGHtmlAnchor : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlAnchor(int type, int argc, int arglen[], char *argv[]); | TGHtmlAnchor(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
Html_32 y; // Top edge for this element | Html_32_t fY; // Top edge for this element | |||
}; | }; | |||
// Information about the <SCRIPT> markup. The parser treats <SCRIPT> | // Information about the <SCRIPT> markup. The parser treats <SCRIPT> | |||
// specially. All text between <SCRIPT> and </SCRIPT> is captured and | // specially. All text between <SCRIPT> and </SCRIPT> is captured and | |||
// is indexed to by the nStart field of this class. | // is indexed to by the nStart field of this class. | |||
// | // | |||
// The nStart field indexs to a spot in the zText field of the TGHtml objec t. | // The nStart field indexs to a spot in the zText field of the TGHtml objec t. | |||
// The nScript field determines how long the script is. | // The nScript field determines how long the script is. | |||
class TGHtmlScript : public TGHtmlMarkupElement { | class TGHtmlScript : public TGHtmlMarkupElement { | |||
public: | public: | |||
TGHtmlScript(int type, int argc, int arglen[], char *argv[]); | TGHtmlScript(int type, int argc, int arglen[], char *argv[]); | |||
public: | public: | |||
int nStart; // Start of the script (index into TGHtml::zText | int fNStart; // Start of the script (index into TGHtml::zText) | |||
) | int fNScript; // Number of characters of text in zText holding | |||
int nScript; // Number of characters of text in zText holding | // the complete text of this script | |||
// the complete text of this script | ||||
}; | }; | |||
// A block is a single unit of display information. This can be one or more | // A block is a single unit of display information. This can be one or more | |||
// text elements, or the border of table, or an image, etc. | // text elements, or the border of table, or an image, etc. | |||
// | // | |||
// Blocks are used to improve display speed and to improve the speed of | // Blocks are used to improve display speed and to improve the speed of | |||
// linear searchs through the token list. A single block will typically | // linear searchs through the token list. A single block will typically | |||
// contain enough information to display a dozen or more Text and Space | // contain enough information to display a dozen or more Text and Space | |||
// elements all with a single call to OXFont::DrawChars(). The blocks are | // elements all with a single call to OXFont::DrawChars(). The blocks are | |||
// linked together on their own list, so we can search them much faster tha n | // linked together on their own list, so we can search them much faster tha n | |||
// elements (since there are fewer of them.) | // elements (since there are fewer of them.) | |||
// | // | |||
// Of course, you can construct pathological HTML that has as many Blocks a s | // Of course, you can construct pathological HTML that has as many Blocks a s | |||
// it has normal tokens. But you haven't lost anything. Using blocks just | // it has normal tokens. But you haven't lost anything. Using blocks just | |||
// speeds things up in the common case. | // speeds things up in the common case. | |||
// | // | |||
// Much of the information needed for display is held in the original | // Much of the information needed for display is held in the original | |||
// TGHtmlElement objects. "pNext" points to the first object in the list | // TGHtmlElement objects. "fPNext" points to the first object in the list | |||
// which can be used to find the "style" "x" and "y". | // which can be used to find the "style" "x" and "y". | |||
// | // | |||
// If n is zero, then "pNext" might point to a special TGHtmlElement | // If n is zero, then "fPNext" might point to a special TGHtmlElement | |||
// that defines some other kind of drawing, like <LI> or <IMG> or <INPUT>. | // that defines some other kind of drawing, like <LI> or <IMG> or <INPUT>. | |||
class TGHtmlBlock : public TGHtmlElement { | class TGHtmlBlock : public TGHtmlElement { | |||
public: | public: | |||
TGHtmlBlock(); | TGHtmlBlock(); | |||
virtual ~TGHtmlBlock(); | virtual ~TGHtmlBlock(); | |||
public: | public: | |||
char *z; // Space to hold text when n > 0 | char *fZ; // Space to hold text when n > 0 | |||
int top, bottom; // Extremes of y coordinates | int fTop, fBottom; // Extremes of y coordinates | |||
Html_u16 left, right; // Left and right boundry of this object | Html_u16_t fLeft, fRight; // Left and right boundry of this objec | |||
Html_u16 n; // Number of characters in z[] | t | |||
TGHtmlBlock *bPrev, *bNext; // Linked list of all Blocks | Html_u16_t fN; // Number of characters in z[] | |||
TGHtmlBlock *fBPrev, *fBNext; // Linked list of all Blocks | ||||
}; | }; | |||
// A stack of these structures is used to keep track of nested font and | // A stack of these structures is used to keep track of nested font and | |||
// style changes. This allows us to easily revert to the previous style | // style changes. This allows us to easily revert to the previous style | |||
// when we encounter and end-tag like </em> or </h3>. | // when we encounter and end-tag like </em> or </h3>. | |||
// | // | |||
// This stack is used to keep track of the current style while walking | // This stack is used to keep track of the current style while walking | |||
// the list of elements. After all elements have been assigned a style, | // the list of elements. After all elements have been assigned a style, | |||
// the information in this stack is no longer used. | // the information in this stack is no longer used. | |||
struct SHtmlStyleStack { | struct SHtmlStyleStack_t { | |||
SHtmlStyleStack *pNext; // Next style on the stack | SHtmlStyleStack_t *fPNext; // Next style on the stack | |||
int type; // A markup that ends this style. Ex: Html_EndEM | int fType; // A markup that ends this style. Ex: Html_ | |||
SHtmlStyle style; // The currently active style. | EndEM | |||
SHtmlStyle_t fStyle; // The currently active style. | ||||
}; | }; | |||
// A stack of the following structures is used to remember the | // A stack of the following structures is used to remember the | |||
// left and right margins within a layout context. | // left and right margins within a layout context. | |||
struct SHtmlMargin { | struct SHtmlMargin_t { | |||
int indent; // Size of the current margin | int fIndent; // Size of the current margin | |||
int bottom; // Y value at which this margin expires | int fBottom; // Y value at which this margin expires | |||
int tag; // Markup that will cancel this margin | int fTag; // Markup that will cancel this margin | |||
SHtmlMargin *pNext; // Previous margin | SHtmlMargin_t *fPNext; // Previous margin | |||
}; | }; | |||
// How much space (in pixels) used for a single level of indentation due | // How much space (in pixels) used for a single level of indentation due | |||
// to a <UL> or <DL> or <BLOCKQUOTE>, etc. | // to a <UL> or <DL> or <BLOCKQUOTE>, etc. | |||
#define HTML_INDENT 36 | #define HTML_INDENT 36 | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// A layout context holds all state information used by the layout engine. | // A layout context holds all state information used by the layout engine. | |||
class TGHtmlLayoutContext : public TObject { | class TGHtmlLayoutContext : public TObject { | |||
public: | public: | |||
TGHtmlLayoutContext(); | TGHtmlLayoutContext(); | |||
void LayoutBlock(); | void LayoutBlock(); | |||
void Reset(); | void Reset(); | |||
void PopIndent(); | void PopIndent(); | |||
void PushIndent(); | void PushIndent(); | |||
protected: | protected: | |||
void PushMargin(SHtmlMargin **ppMargin, int indent, int bottom, int tag); | void PushMargin(SHtmlMargin_t **ppMargin, int indent, int bottom, int ta | |||
void PopOneMargin(SHtmlMargin **ppMargin); | g); | |||
void PopMargin(SHtmlMargin **ppMargin, int tag); | void PopOneMargin(SHtmlMargin_t **ppMargin); | |||
void PopExpiredMargins(SHtmlMargin **ppMarginStack, int y); | void PopMargin(SHtmlMargin_t **ppMargin, int tag); | |||
void ClearMarginStack(SHtmlMargin **ppMargin); | void PopExpiredMargins(SHtmlMargin_t **ppMarginStack, int y); | |||
void ClearMarginStack(SHtmlMargin_t **ppMargin); | ||||
TGHtmlElement *GetLine(TGHtmlElement *pStart, TGHtmlElement *pEnd, | ||||
int width, int minX, int *actualWidth); | TGHtmlElement *GetLine(TGHtmlElement *pStart, TGHtmlElement *pEnd, | |||
int width, int minX, int *actualWidth); | ||||
void FixAnchors(TGHtmlElement *p, TGHtmlElement *pEnd, int y); | ||||
int FixLine(TGHtmlElement *pStart, TGHtmlElement *pEnd, | void FixAnchors(TGHtmlElement *p, TGHtmlElement *pEnd, int y); | |||
int bottom, int width, int actualWidth, int leftMargin, | int FixLine(TGHtmlElement *pStart, TGHtmlElement *pEnd, | |||
int *maxX); | int bottom, int width, int actualWidth, int leftMargin, | |||
void Paragraph(TGHtmlElement *p); | int *maxX); | |||
void ComputeMargins(int *pX, int *pY, int *pW); | void Paragraph(TGHtmlElement *p); | |||
void ClearObstacle(int mode); | void ComputeMargins(int *pX, int *pY, int *pW); | |||
TGHtmlElement *DoBreakMarkup(TGHtmlElement *p); | void ClearObstacle(int mode); | |||
int InWrapAround(); | TGHtmlElement *DoBreakMarkup(TGHtmlElement *p); | |||
void WidenLine(int reqWidth, int *pX, int *pY, int *pW); | int InWrapAround(); | |||
void WidenLine(int reqWidth, int *pX, int *pY, int *pW); | ||||
TGHtmlElement *TableLayout(TGHtmlTable *p); | ||||
TGHtmlElement *TableLayout(TGHtmlTable *p); | ||||
public: | ||||
TGHtml *html; // The html widget undergoing layout | public: | |||
TGHtmlElement *pStart; // Start of elements to layout | TGHtml *fHtml; // The html widget undergoing layout | |||
TGHtmlElement *pEnd; // Stop when reaching this element | TGHtmlElement *fPStart; // Start of elements to layout | |||
int headRoom; // Extra space wanted above this line | TGHtmlElement *fPEnd; // Stop when reaching this element | |||
int top; // Absolute top of drawing area | int fHeadRoom; // Extra space wanted above this lin | |||
int bottom; // Bottom of previous line | e | |||
int left, right; // Left and right extremes of drawing area | int fTop; // Absolute top of drawing area | |||
int pageWidth; // Width of the layout field, including | int fBottom; // Bottom of previous line | |||
// the margins | int fLeft, fRight; // Left and right extremes of drawin | |||
int maxX, maxY; // Maximum X and Y values of paint | g area | |||
SHtmlMargin *leftMargin; // Stack of left margins | int fPageWidth; // Width of the layout field, includ | |||
SHtmlMargin *rightMargin; // Stack of right margins | ing | |||
// the margins | ||||
int fMaxX, fMaxY; // Maximum X and Y values of paint | ||||
SHtmlMargin_t *fLeftMargin; // Stack of left margins | ||||
SHtmlMargin_t *fRightMargin; // Stack of right margins | ||||
}; | }; | |||
// With 28 different fonts and 16 colors, we could in principle have | // With 28 different fonts and 16 colors, we could in principle have | |||
// as many as 448 different GCs. But in practice, a single page of | // as many as 448 different GCs. But in practice, a single page of | |||
// HTML will typically have much less than this. So we won't try to | // HTML will typically have much less than this. So we won't try to | |||
// keep all GCs on hand. Instead, we'll keep around the most recently | // keep all GCs on hand. Instead, we'll keep around the most recently | |||
// used GCs and allocate new ones as necessary. | // used GCs and allocate new ones as necessary. | |||
// | // | |||
// The following structure is used to build a cache of GCs in the | // The following structure is used to build a cache of GCs in the | |||
// main widget object. | // main widget object. | |||
#define N_CACHE_GC 32 | #define N_CACHE_GC 32 | |||
struct GcCache { | ||||
GContext_t gc; // The graphics context | struct GcCache_t { | |||
Html_u8 font; // Font used for this context | GContext_t fGc; // The graphics context | |||
Html_u8 color; // Color used for this context | Html_u8_t fFont; // Font used for this context | |||
Html_u8 index; // Index used for LRU replacement | Html_u8_t fColor; // Color used for this context | |||
Html_u8_t fIndex; // Index used for LRU replacement | ||||
}; | }; | |||
// An SHtmlIndex is a reference to a particular character within a | // An SHtmlIndex_t is a reference to a particular character within a | |||
// particular Text or Space token. | // particular Text or Space token. | |||
struct SHtmlIndex { | struct SHtmlIndex_t { | |||
TGHtmlElement *p; // The token containing the character | TGHtmlElement *fP; // The token containing the character | |||
int i; // Index of the character | int fI; // Index of the character | |||
}; | }; | |||
// Used by the tokenizer | // Used by the tokenizer | |||
struct SHtmlTokenMap { | struct SHtmlTokenMap_t { | |||
const char *zName; // Name of a markup | const char *fZName; // Name of a markup | |||
Html_16 type; // Markup type code | Html_16_t fType; // Markup type code | |||
Html_16 objType; // Which kind of TGHtml... object to alocate | Html_16_t fObjType; // Which kind of TGHtml... object to al | |||
SHtmlTokenMap *pCollide; // Hash table collision chain | ocate | |||
SHtmlTokenMap_t *fPCollide; // Hash table collision chain | ||||
}; | }; | |||
// Markup element types to be allocated by the tokenizer. | // Markup element types to be allocated by the tokenizer. | |||
// Do not confuse with .type field in TGHtmlElement | // Do not confuse with .type field in TGHtmlElement | |||
#define O_HtmlMarkupElement 0 | #define O_HtmlMarkupElement 0 | |||
#define O_HtmlCell 1 | #define O_HtmlCell 1 | |||
#define O_HtmlTable 2 | #define O_HtmlTable 2 | |||
#define O_HtmlRef 3 | #define O_HtmlRef 3 | |||
#define O_HtmlLi 4 | #define O_HtmlLi 4 | |||
skipping to change at line 826 | skipping to change at line 827 | |||
#define O_HtmlImageMarkup 6 | #define O_HtmlImageMarkup 6 | |||
#define O_HtmlInput 7 | #define O_HtmlInput 7 | |||
#define O_HtmlForm 8 | #define O_HtmlForm 8 | |||
#define O_HtmlHr 9 | #define O_HtmlHr 9 | |||
#define O_HtmlAnchor 10 | #define O_HtmlAnchor 10 | |||
#define O_HtmlScript 11 | #define O_HtmlScript 11 | |||
#define O_HtmlMapArea 12 | #define O_HtmlMapArea 12 | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// The HTML widget. A derivate of OXView. | // The HTML widget. A derivate of TGView. | |||
class TGListBox; | class TGListBox; | |||
class THashTable; | class THashTable; | |||
class TGHtml : public TGView { | class TGHtml : public TGView { | |||
public: | public: | |||
TGHtml(const TGWindow *p, int w, int h, int id = -1); | TGHtml(const TGWindow *p, int w, int h, int id = -1); | |||
virtual ~TGHtml(); | virtual ~TGHtml(); | |||
virtual Bool_t HandleFocusChange(Event_t *event); | virtual Bool_t HandleFocusChange(Event_t *event); | |||
virtual Bool_t HandleButton(Event_t *event); | virtual Bool_t HandleButton(Event_t *event); | |||
virtual Bool_t HandleMotion(Event_t *event); | virtual Bool_t HandleMotion(Event_t *event); | |||
virtual Bool_t HandleIdleEvent(TGIdleHandler *i); | virtual Bool_t HandleIdleEvent(TGIdleHandler *i); | |||
virtual Bool_t HandleTimer(TTimer *timer); | virtual Bool_t HandleTimer(TTimer *timer); | |||
virtual Bool_t ProcessMessage(Long_t, Long_t, Long_t); | virtual Bool_t ProcessMessage(Long_t, Long_t, Long_t); | |||
virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | |||
virtual Bool_t ItemLayout(); | virtual Bool_t ItemLayout(); | |||
Bool_t HandleHtmlInput(TGHtmlInput *pr, Event_t *event); | Bool_t HandleHtmlInput(TGHtmlInput *pr, Event_t *event); | |||
Bool_t HandleRadioButton(TGHtmlInput *p); | Bool_t HandleRadioButton(TGHtmlInput *p); | |||
public: // user commands | public: // user commands | |||
int ParseText(char *text, const char *index = 0); | int ParseText(char *text, const char *index = 0); | |||
void SetTableRelief(int relief); | void SetTableRelief(int relief); | |||
int GetTableRelief() const { return tableRelief; } | int GetTableRelief() const { return fTableRelief; } | |||
void SetRuleRelief(int relief); | void SetRuleRelief(int relief); | |||
int GetRuleRelief() const { return ruleRelief; } | int GetRuleRelief() const { return fRuleRelief; } | |||
int GetRulePadding() const { return rulePadding; } | int GetRulePadding() const { return fRulePadding; } | |||
void UnderlineLinks(int onoff); | void UnderlineLinks(int onoff); | |||
void SetBaseUri(const char *uri); | void SetBaseUri(const char *uri); | |||
const char *GetBaseUri() const { return zBase; } | const char *GetBaseUri() const { return fZBase; } | |||
int GotoAnchor(const char *name); | int GotoAnchor(const char *name); | |||
public: // reloadable methods | public: // reloadable methods | |||
// called when the widget is cleared | // called when the widget is cleared | |||
virtual void Clear(Option_t * = ""); | virtual void Clear(Option_t * = ""); | |||
// User function to resolve URIs | // User function to resolve URIs | |||
virtual char *ResolveUri(const char *uri); | virtual char *ResolveUri(const char *uri); | |||
// User function to get an image from a URL | // User function to get an image from a URL | |||
virtual TImage *LoadImage(const char *uri, int w = 0, int h = 0) ;// | virtual TImage *LoadImage(const char *uri, int w = 0, int h = 0) ;// | |||
// { return 0; } | // { return 0; } | |||
// User function to tell if a hyperlink has already been visited | // User function to tell if a hyperlink has already been visited | |||
virtual int IsVisited(const char * /*url*/) | virtual int IsVisited(const char * /*url*/) | |||
{ return kFALSE; } | { return kFALSE; } | |||
// User function to to process tokens of the given type | // User function to to process tokens of the given type | |||
virtual int ProcessToken(TGHtmlElement * /*pElem*/, const char * /*name*/ | virtual int ProcessToken(TGHtmlElement * /*pElem*/, const char * /*name* | |||
, int /*type*/) | /, int /*type*/) | |||
{ return kFALSE; } | { return kFALSE; } | |||
virtual TGFont *GetFont(int iFont); | virtual TGFont *GetFont(int iFont); | |||
// The HTML parser will invoke the following methods from time | // The HTML parser will invoke the following methods from time | |||
// to time to find out information it needs to complete formatting of | // to time to find out information it needs to complete formatting of | |||
// the document. | // the document. | |||
// Method for handling <frameset> markup | // Method for handling <frameset> markup | |||
virtual int ProcessFrame() | virtual int ProcessFrame() | |||
{ return kFALSE; } | { return kFALSE; } | |||
// Method to process applets | // Method to process applets | |||
virtual TGFrame *ProcessApplet(TGHtmlInput * /*input*/) | virtual TGFrame *ProcessApplet(TGHtmlInput * /*input*/) | |||
{ return 0; } | { return 0; } | |||
// Called when parsing forms | // Called when parsing forms | |||
virtual int FormCreate(TGHtmlForm * /*form*/, const char * /*zUrl*/, cons | virtual int FormCreate(TGHtmlForm * /*form*/, const char * /*zUrl*/, con | |||
t char * /*args*/) | st char * /*args*/) | |||
{ return kFALSE; } | { return kFALSE; } | |||
// Called when user presses Submit | // Called when user presses Submit | |||
virtual int FormAction(TGHtmlForm * /*form*/, int /*id*/) | virtual int FormAction(TGHtmlForm * /*form*/, int /*id*/) | |||
{ return kFALSE; } | { return kFALSE; } | |||
// Invoked to find font names | // Invoked to find font names | |||
virtual char *GetFontName() | virtual char *GetFontName() | |||
{ return 0; } | { return 0; } | |||
// Invoked for each <SCRIPT> markup | // Invoked for each <SCRIPT> markup | |||
virtual char *ProcessScript(TGHtmlScript * /*script*/) | virtual char *ProcessScript(TGHtmlScript * /*script*/) | |||
{ return 0; } | { return 0; } | |||
public: | public: | |||
const char *GetText() const { return zText; } | const char *GetText() const { return fZText; } | |||
int GetMarginWidth() { return margins.fL + margins.fR; } | int GetMarginWidth() { return fMargins.fL + fMargins.fR; } | |||
int GetMarginHeight() { return margins.fT + margins.fB; } | int GetMarginHeight() { return fMargins.fT + fMargins.fB; } | |||
TGHtmlInput *GetInputElement(int x, int y); | TGHtmlInput *GetInputElement(int x, int y); | |||
const char *GetHref(int x, int y, const char **target = 0); | const char *GetHref(int x, int y, const char **target = 0); | |||
TGHtmlImage *GetImage(TGHtmlImageMarkup *p); | TGHtmlImage *GetImage(TGHtmlImageMarkup *p); | |||
int InArea(TGHtmlMapArea *p, int left, int top, int x, int y); | int InArea(TGHtmlMapArea *p, int left, int top, int x, int y); | |||
TGHtmlElement *GetMap(const char *name); | TGHtmlElement *GetMap(const char *name); | |||
void ResetBlocks() { firstBlock = lastBlock = 0; } | void ResetBlocks() { fFirstBlock = fLastBlock = 0; } | |||
int ElementCoords(TGHtmlElement *p, int i, int pct, int *coords); | int ElementCoords(TGHtmlElement *p, int i, int pct, int *coords); | |||
TGHtmlElement *TableDimensions(TGHtmlTable *pStart, int lineWidth); | TGHtmlElement *TableDimensions(TGHtmlTable *pStart, int lineWidth); | |||
int CellSpacing(TGHtmlElement *pTable); | int CellSpacing(TGHtmlElement *pTable); | |||
void MoveVertically(TGHtmlElement *p, TGHtmlElement *pLast, int dy); | void MoveVertically(TGHtmlElement *p, TGHtmlElement *pLast, int dy); | |||
void PrintList(TGHtmlElement *first, TGHtmlElement *last); | void PrintList(TGHtmlElement *first, TGHtmlElement *last); | |||
char *GetTokenName(TGHtmlElement *p); | char *GetTokenName(TGHtmlElement *p); | |||
char *DumpToken(TGHtmlElement *p); | char *DumpToken(TGHtmlElement *p); | |||
void EncodeText(TGString *str, const char *z); | void EncodeText(TGString *str, const char *z); | |||
protected: | protected: | |||
void _Clear(); | void HClear(); | |||
void ClearGcCache(); | void ClearGcCache(); | |||
void ResetLayoutContext(); | void ResetLayoutContext(); | |||
void Redraw(); | void Redraw(); | |||
void ComputeVirtualSize(); | void ComputeVirtualSize(); | |||
void ScheduleRedraw(); | void ScheduleRedraw(); | |||
void RedrawArea(int left, int top, int right, int bottom); | void RedrawArea(int left, int top, int right, int bottom); | |||
void RedrawBlock(TGHtmlBlock *p); | void RedrawBlock(TGHtmlBlock *p); | |||
void RedrawEverything(); | void RedrawEverything(); | |||
void RedrawText(int y); | void RedrawText(int y); | |||
float colorDistance(ColorStruct_t *pA, ColorStruct_t *pB); | float ColorDistance(ColorStruct_t *pA, ColorStruct_t *pB); | |||
int isDarkColor(ColorStruct_t *p); | int IsDarkColor(ColorStruct_t *p); | |||
int isLightColor(ColorStruct_t *p); | int IsLightColor(ColorStruct_t *p); | |||
int GetColorByName(const char *zColor); | int GetColorByName(const char *zColor); | |||
int GetDarkShadowColor(int iBgColor); | int GetDarkShadowColor(int iBgColor); | |||
int GetLightShadowColor(int iBgColor); | int GetLightShadowColor(int iBgColor); | |||
int GetColorByValue(ColorStruct_t *pRef); | int GetColorByValue(ColorStruct_t *pRef); | |||
void FlashCursor(); | void FlashCursor(); | |||
GContext_t GetGC(int color, int font); | GContext_t GetGC(int color, int font); | |||
GContext_t GetAnyGC(); | GContext_t GetAnyGC(); | |||
void AnimateImage(TGHtmlImage *image); | void AnimateImage(TGHtmlImage *image); | |||
void ImageChanged(TGHtmlImage *image, int newWidth, int newHeight); | void ImageChanged(TGHtmlImage *image, int newWidth, int newHeight); | |||
int GetImageAlignment(TGHtmlElement *p); | int GetImageAlignment(TGHtmlElement *p); | |||
int GetImageAt(int x, int y); | int GetImageAt(int x, int y); | |||
const char *GetPctWidth(TGHtmlElement *p, char *opt, char *ret); | const char *GetPctWidth(TGHtmlElement *p, char *opt, char *ret); | |||
void TableBgndImage(TGHtmlElement *p); | void TableBgndImage(TGHtmlElement *p); | |||
TGHtmlElement *FillOutBlock(TGHtmlBlock *p); | TGHtmlElement *FillOutBlock(TGHtmlBlock *p); | |||
void UnlinkAndFreeBlock(TGHtmlBlock *pBlock); | void UnlinkAndFreeBlock(TGHtmlBlock *pBlock); | |||
void AppendBlock(TGHtmlElement *pToken, TGHtmlBlock *pBlock); | void AppendBlock(TGHtmlElement *pToken, TGHtmlBlock *pBlock); | |||
void StringHW(const char *str, int *h, int *w); | void StringHW(const char *str, int *h, int *w); | |||
TGHtmlElement *MinMax(TGHtmlElement *p, int *pMin, int *pMax, | TGHtmlElement *MinMax(TGHtmlElement *p, int *pMin, int *pMax, | |||
int lineWidth, int hasbg); | int lineWidth, int hasbg); | |||
void DrawSelectionBackground(TGHtmlBlock *pBlock, Drawable_t Drawable_t, | void DrawSelectionBackground(TGHtmlBlock *pBlock, Drawable_t Drawable_t, | |||
int x, int y); | int x, int y); | |||
void DrawRect(Drawable_t drawable, TGHtmlElement *src, | void DrawRect(Drawable_t drawable, TGHtmlElement *src, | |||
int x, int y, int w, int h, int depth, int relief); | int x, int y, int w, int h, int depth, int relief); | |||
void BlockDraw(TGHtmlBlock *pBlock, Drawable_t wid, | void BlockDraw(TGHtmlBlock *pBlock, Drawable_t wid, | |||
int left, int top, | int left, int top, | |||
int width, int height, Pixmap_t pixmap); | int width, int height, Pixmap_t pixmap); | |||
void DrawImage(TGHtmlImageMarkup *image, Drawable_t wid, | void DrawImage(TGHtmlImageMarkup *image, Drawable_t wid, | |||
int left, int top, | int left, int top, | |||
int right, int bottom); | int right, int bottom); | |||
void DrawTableBgnd(int x, int y, int w, int h, Drawable_t d, TImage *imag | void DrawTableBgnd(int x, int y, int w, int h, Drawable_t d, TImage *ima | |||
e); | ge); | |||
TGHtmlElement *FindStartOfNextBlock(TGHtmlElement *p, int *pCnt); | TGHtmlElement *FindStartOfNextBlock(TGHtmlElement *p, int *pCnt); | |||
void FormBlocks(); | void FormBlocks(); | |||
void AppendElement(TGHtmlElement *pElem); | void AppendElement(TGHtmlElement *pElem); | |||
int Tokenize(); | int Tokenize(); | |||
void AppToken(TGHtmlElement *pNew, TGHtmlElement *p, int offs); | void AppToken(TGHtmlElement *pNew, TGHtmlElement *p, int offs); | |||
TGHtmlMarkupElement *MakeMarkupEntry(int objType, int type, int argc, | TGHtmlMarkupElement *MakeMarkupEntry(int objType, int type, int argc, | |||
int arglen[], char *argv[]); | int arglen[], char *argv[]); | |||
void TokenizerAppend(const char *text); | void TokenizerAppend(const char *text); | |||
TGHtmlElement *InsertToken(TGHtmlElement *pToken, | TGHtmlElement *InsertToken(TGHtmlElement *pToken, | |||
char *zType, char *zArgs, int offs); | char *zType, char *zArgs, int offs); | |||
SHtmlTokenMap *NameToPmap(char *zType); | SHtmlTokenMap_t *NameToPmap(char *zType); | |||
int NameToType(char *zType); | int NameToType(char *zType); | |||
const char *TypeToName(int type); | const char *TypeToName(int type); | |||
int TextInsertCmd(int argc, char **argv); | int TextInsertCmd(int argc, char **argv); | |||
SHtmlTokenMap* GetMarkupMap(int n); | SHtmlTokenMap_t* GetMarkupMap(int n); | |||
TGHtmlElement *TokenByIndex(int N, int flag); | TGHtmlElement *TokenByIndex(int N, int flag); | |||
int TokenNumber(TGHtmlElement *p); | int TokenNumber(TGHtmlElement *p); | |||
void maxIndex(TGHtmlElement *p, int *pIndex, int isLast); | void MaxIndex(TGHtmlElement *p, int *pIndex, int isLast); | |||
int IndexMod(TGHtmlElement **pp, int *ip, char *cp); | int IndexMod(TGHtmlElement **pp, int *ip, char *cp); | |||
void FindIndexInBlock(TGHtmlBlock *pBlock, int x, | void FindIndexInBlock(TGHtmlBlock *pBlock, int x, | |||
TGHtmlElement **ppToken, int *pIndex); | ||||
void IndexToBlockIndex(SHtmlIndex_t sIndex, | ||||
TGHtmlBlock **ppBlock, int *piIndex); | ||||
int DecodeBaseIndex(const char *zBase, | ||||
TGHtmlElement **ppToken, int *pIndex); | TGHtmlElement **ppToken, int *pIndex); | |||
void IndexToBlockIndex(SHtmlIndex sIndex, | int GetIndex(const char *zIndex, TGHtmlElement **ppToken, int *pIndex); | |||
TGHtmlBlock **ppBlock, int *piIndex); | ||||
int DecodeBaseIndex(const char *zBase, | void LayoutDoc(); | |||
TGHtmlElement **ppToken, int *pIndex); | ||||
int GetIndex(const char *zIndex, TGHtmlElement **ppToken, int *pIndex); | int MapControls(); | |||
void UnmapControls(); | ||||
void LayoutDoc(); | void DeleteControls(); | |||
int ControlSize(TGHtmlInput *p); | ||||
int MapControls(); | void SizeAndLink(TGFrame *frame, TGHtmlInput *pElem); | |||
void UnmapControls(); | int FormCount(TGHtmlInput *p, int radio); | |||
void DeleteControls(); | void AddFormInfo(TGHtmlElement *p); | |||
int ControlSize(TGHtmlInput *p); | void AddSelectOptions(TGListBox *lb, TGHtmlElement *p, TGHtmlElement *pE | |||
void SizeAndLink(TGFrame *frame, TGHtmlInput *pElem); | nd); | |||
int FormCount(TGHtmlInput *p, int radio); | void AppendText(TGString *str, TGHtmlElement *pFirst, TGHtmlElement *pEn | |||
void AddFormInfo(TGHtmlElement *p); | d); | |||
void AddSelectOptions(TGListBox *lb, TGHtmlElement *p, TGHtmlElement *pEn | ||||
d); | void UpdateSelection(int forceUpdate); | |||
void AppendText(TGString *str, TGHtmlElement *pFirst, TGHtmlElement *pEnd | void UpdateSelectionDisplay(); | |||
); | void LostSelection(); | |||
int SelectionSet(const char *startIx, const char *endIx); | ||||
void UpdateSelection(int forceUpdate); | void UpdateInsert(); | |||
void UpdateSelectionDisplay(); | int SetInsert(const char *insIx); | |||
void LostSelection(); | ||||
int SelectionSet(const char *startIx, const char *endIx); | const char *GetUid(const char *string); | |||
void UpdateInsert(); | ColorStruct_t *AllocColor(const char *name); | |||
int SetInsert(const char *insIx); | ColorStruct_t *AllocColorByValue(ColorStruct_t *color); | |||
void FreeColor(ColorStruct_t *color); | ||||
const char *GetUid(const char *string); | ||||
ColorStruct_t *AllocColor(const char *name); | SHtmlStyle_t GetCurrentStyle(); | |||
ColorStruct_t *AllocColorByValue(ColorStruct_t *color); | void PushStyleStack(int tag, SHtmlStyle_t style); | |||
void FreeColor(ColorStruct_t *color); | SHtmlStyle_t PopStyleStack(int tag); | |||
SHtmlStyle GetCurrentStyle(); | void MakeInvisible(TGHtmlElement *p_first, TGHtmlElement *p_last); | |||
void PushStyleStack(int tag, SHtmlStyle style); | int GetLinkColor(const char *zURL); | |||
SHtmlStyle PopStyleStack(int tag); | void AddStyle(TGHtmlElement *p); | |||
void Sizer(); | ||||
void MakeInvisible(TGHtmlElement *p_first, TGHtmlElement *p_last); | ||||
int GetLinkColor(const char *zURL); | int NextMarkupType(TGHtmlElement *p); | |||
void AddStyle(TGHtmlElement *p); | ||||
void Sizer(); | TGHtmlElement *AttrElem(const char *name, char *value); | |||
int NextMarkupType(TGHtmlElement *p); | public: | |||
void AppendArglist(TGString *str, TGHtmlMarkupElement *pElem); | ||||
TGHtmlElement *AttrElem(const char *name, char *value); | TGHtmlElement *FindEndNest(TGHtmlElement *sp, int en, TGHtmlElement *lp) | |||
; | ||||
public: | TGString *ListTokens(TGHtmlElement *p, TGHtmlElement *pEnd); | |||
void AppendArglist(TGString *str, TGHtmlMarkupElement *pElem); | TGString *TableText(TGHtmlTable *pTable, int flags); | |||
TGHtmlElement *FindEndNest(TGHtmlElement *sp, int en, TGHtmlElement *lp); | ||||
TGString *ListTokens(TGHtmlElement *p, TGHtmlElement *pEnd); | virtual void MouseOver(const char *uri) { Emit("MouseOver(const char *)" | |||
TGString *TableText(TGHtmlTable *pTable, int flags); | ,uri); } // *SIGNAL* | |||
virtual void MouseDown(const char *uri) { Emit("MouseDown(const char *) | ||||
virtual void MouseOver(const char *uri) { Emit("MouseOver(const char *)", | ",uri); } // *SIGNAL* | |||
uri); } // *SIGNAL* | virtual void ButtonClicked(const char *name, const char *val); // *SIGNA | |||
virtual void MouseDown(const char *uri) { Emit("MouseDown(const char *)" | L* | |||
,uri); } // *SIGNAL* | virtual void SubmitClicked(const char *val); // *SIGNAL* | |||
virtual void ButtonClicked(const char *name, const char *val); // *SIGNAL | virtual void CheckToggled(const char *name, Bool_t on, const char *val); | |||
* | // *SIGNAL* | |||
virtual void SubmitClicked(const char *val); // *SIGNAL* | virtual void RadioChanged(const char *name, const char *val); // *SIGNAL | |||
virtual void CheckToggled(const char *name, Bool_t on, const char *val); | * | |||
// *SIGNAL* | virtual void InputSelected(const char *name, const char *val); //*SIGN | |||
virtual void RadioChanged(const char *name, const char *val); // *SIGNAL* | AL* | |||
virtual void InputSelected(const char *name, const char *val); //*SIGNA | virtual void SavePrimitive(ostream &out, Option_t * = ""); | |||
L* | ||||
virtual void SavePrimitive(ostream &out, Option_t * = ""); | ||||
protected: | protected: | |||
virtual void UpdateBackgroundStart(); | virtual void UpdateBackgroundStart(); | |||
protected: | protected: | |||
TGHtmlElement *pFirst; // First HTML token on a list of them all | TGHtmlElement *fPFirst; // First HTML token on a list of them a | |||
TGHtmlElement *pLast; // Last HTML token on the list | ll | |||
int nToken; // Number of HTML tokens on the list. | TGHtmlElement *fPLast; // Last HTML token on the list | |||
// Html_Block tokens don't count. | int fNToken; // Number of HTML tokens on the list. | |||
TGHtmlElement *lastSized; // Last HTML element that has been sized | // Html_Block tokens don't count. | |||
TGHtmlElement *nextPlaced; // Next HTML element that needs to be | TGHtmlElement *fLastSized; // Last HTML element that has been size | |||
// positioned on canvas. | d | |||
TGHtmlBlock *firstBlock; // List of all TGHtmlBlock tokens | TGHtmlElement *fNextPlaced; // Next HTML element that needs to be | |||
TGHtmlBlock *lastBlock; // Last TGHtmlBlock in the list | // positioned on canvas. | |||
TGHtmlInput *firstInput; // First <INPUT> element | TGHtmlBlock *fFirstBlock; // List of all TGHtmlBlock tokens | |||
TGHtmlInput *lastInput; // Last <INPUT> element | TGHtmlBlock *fLastBlock; // Last TGHtmlBlock in the list | |||
int nInput; // The number of <INPUT> elements | TGHtmlInput *fFirstInput; // First <INPUT> element | |||
int nForm; // The number of <FORM> elements | TGHtmlInput *fLastInput; // Last <INPUT> element | |||
int varId; // Used to construct a unique name for a | int fNInput; // The number of <INPUT> elements | |||
// global array used by <INPUT> elements | int fNForm; // The number of <FORM> elements | |||
int inputIdx; // Unique input index | int fVarId; // Used to construct a unique name for | |||
int radioIdx; // Unique radio index | a | |||
// global array used by <INPUT> element | ||||
// Information about the selected region of text | s | |||
int fInputIdx; // Unique input index | ||||
SHtmlIndex selBegin; // Start of the selection | int fRadioIdx; // Unique radio index | |||
SHtmlIndex selEnd; // End of the selection | ||||
TGHtmlBlock *pSelStartBlock; // Block in which selection starts | // Information about the selected region of text | |||
Html_16 selStartIndex; // Index in pSelStartBlock of first selecte | ||||
d | SHtmlIndex_t fSelBegin; // Start of the selection | |||
// character | SHtmlIndex_t fSelEnd; // End of the selection | |||
Html_16 selEndIndex; // Index of last selecte char in pSelEndBlo | TGHtmlBlock *fPSelStartBlock; // Block in which selection starts | |||
ck | Html_16_t fSelStartIndex; // Index in pSelStartBlock of first sel | |||
TGHtmlBlock *pSelEndBlock; // Block in which selection ends | ected | |||
// character | ||||
// Information about the insertion cursor | Html_16_t fSelEndIndex; // Index of last selecte char in pSelEn | |||
dBlock | ||||
int insOnTime; // How long the cursor states one (millisec | TGHtmlBlock *fPSelEndBlock; // Block in which selection ends | |||
) | ||||
int insOffTime; // How long it is off (milliseconds) | // Information about the insertion cursor | |||
int insStatus; // Is it visible? | ||||
TTimer *insTimer; // Timer used to flash the insertion cursor | int fInsOnTime; // How long the cursor states one (mill | |||
SHtmlIndex ins; // The insertion cursor position | isec) | |||
TGHtmlBlock *pInsBlock; // The TGHtmlBlock containing the cursor | int fInsOffTime; // How long it is off (milliseconds) | |||
int insIndex; // Index in pInsBlock of the cursor | int fInsStatus; // Is it visible? | |||
TTimer *fInsTimer; // Timer used to flash the insertion cu | ||||
// The following fields hold state information used by the tokenizer. | rsor | |||
SHtmlIndex_t fIns; // The insertion cursor position | ||||
char *zText; // Complete text of the unparsed HTML | TGHtmlBlock *fPInsBlock; // The TGHtmlBlock containing the curso | |||
int nText; // Number of characters in zText | r | |||
int nAlloc; // Space allocated for zText | int fInsIndex; // Index in pInsBlock of the cursor | |||
int nComplete; // How much of zText has actually been | ||||
// converted into tokens | // The following fields hold state information used by the tokenizer. | |||
int iCol; // The column in which zText[nComplete] | ||||
// occurs. Used to resolve tabs in input | char *fZText; // Complete text of the unparsed HTML | |||
int iPlaintext; // If not zero, this is the token type that | int fNText; // Number of characters in zText | |||
// caused us to go into plaintext mode. One | int fNAlloc; // Space allocated for zText | |||
// of Html_PLAINTEXT, Html_LISTING or | int fNComplete; // How much of zText has actually been | |||
// Html_XMP | // converted into tokens | |||
TGHtmlScript *pScript; // <SCRIPT> currently being parsed | int fICol; // The column in which zText[nComplete] | |||
// occurs. Used to resolve tabs in inpu | ||||
TGIdleHandler *fIdle; | t | |||
int fIPlaintext; // If not zero, this is the token type | ||||
// These fields hold state information used by the HtmlAddStyle routine. | that | |||
// We have to store this state information here since HtmlAddStyle | // caused us to go into plaintext mode. | |||
// operates incrementally. This information must be carried from | One | |||
// one incremental execution to the next. | // of Html_PLAINTEXT, Html_LISTING or | |||
// Html_XMP | ||||
SHtmlStyleStack *styleStack; // The style stack | TGHtmlScript *fPScript; // <SCRIPT> currently being parsed | |||
int paraAlignment; // Justification associated with <p> | ||||
int rowAlignment; // Justification associated with <tr> | TGIdleHandler *fIdle; | |||
int anchorFlags; // Style flags associated with <A>...</A> | ||||
int inDt; // Style flags associated with <DT>...</DT> | // These fields hold state information used by the HtmlAddStyle routine. | |||
int inTr; // True if within <tr>..</tr> | // We have to store this state information here since HtmlAddStyle | |||
int inTd; // True if within <td>..</td> or <th>..</th | // operates incrementally. This information must be carried from | |||
> | // one incremental execution to the next. | |||
TGHtmlAnchor *anchorStart; // Most recent <a href=...> | ||||
TGHtmlForm *formStart; // Most recent <form> | SHtmlStyleStack_t *fStyleStack; // The style stack | |||
TGHtmlInput *formElemStart; // Most recent <textarea> or <select> | int fParaAlignment; // Justification associated with <p> | |||
TGHtmlInput *formElemLast; // Most recent <input>, <textarea> or <sel | int fRowAlignment; // Justification associated with <tr | |||
ect> | > | |||
TGHtmlListStart *innerList; // The inner most <OL> or <UL> | int fAnchorFlags; // Style flags associated with <A>.. | |||
TGHtmlElement *loEndPtr; // How far AddStyle has gone to | .</A> | |||
TGHtmlForm *loFormStart; // For AddStyle | int fInDt; // Style flags associated with <DT>. | |||
..</DT> | ||||
// These fields are used to hold the state of the layout engine. | int fInTr; // True if within <tr>..</tr> | |||
// Because the layout is incremental, this state must be held for | int fInTd; // True if within <td>..</td> or <th | |||
// the life of the widget. | >..</th> | |||
TGHtmlAnchor *fAnchorStart; // Most recent <a href=...> | ||||
TGHtmlLayoutContext layoutContext; | TGHtmlForm *fFormStart; // Most recent <form> | |||
TGHtmlInput *fFormElemStart; // Most recent <textarea> or <select | ||||
// Information used when displaying the widget: | > | |||
TGHtmlInput *fFormElemLast; // Most recent <input>, <textarea> o | ||||
int highlightWidth; // Width in pixels of highlight to draw | r <select> | |||
// around widget when it has the focus. | TGHtmlListStart *fInnerList; // The inner most <OL> or <UL> | |||
// <= 0 means don't draw a highlight. | TGHtmlElement *fLoEndPtr; // How far AddStyle has gone to | |||
TGInsets margins; // document margins (separation between th | TGHtmlForm *fLoFormStart; // For AddStyle | |||
e | ||||
// edge of the clip window and rendered HTM | // These fields are used to hold the state of the layout engine. | |||
L). | // Because the layout is incremental, this state must be held for | |||
ColorStruct_t *highlightBgColorPtr; // Color for drawing traversal highl | // the life of the widget. | |||
ight | ||||
// area when highlight is off. | TGHtmlLayoutContext fLayoutContext; | |||
ColorStruct_t *highlightColorPtr; // Color for drawing traversal highl | ||||
ight. | // Information used when displaying the widget: | |||
TGFont *aFont[N_FONT]; // Information about all screen fonts | ||||
char fontValid[(N_FONT+7)/8]; // If bit N%8 of work N/8 of this field is | int fHighlightWidth; // Width in pixels of highligh | |||
0 | t to draw | |||
// if aFont[N] needs to be reallocated befo | // around widget when it has t | |||
re | he focus. | |||
// being used. | // <= 0 means don't draw a hig | |||
ColorStruct_t *apColor[N_COLOR]; // Information about all colors | hlight. | |||
long colorUsed; // bit N is 1 if color N is in use. Only | TGInsets fMargins; // document margins (separatio | |||
// applies to colors that aren't predefined | n between the | |||
int iDark[N_COLOR]; // Dark 3D shadow of color K is iDark[K] | // edge of the clip window and | |||
int iLight[N_COLOR]; // Light 3D shadow of color K is iLight[K] | rendered HTML). | |||
ColorStruct_t *bgColor; // Background color of the HTML docu | ColorStruct_t *fHighlightBgColorPtr; // Color for drawing traversal | |||
ment | highlight | |||
ColorStruct_t *fgColor; // Color of normal text. apColor[0] | // area when highlight is off. | |||
ColorStruct_t *newLinkColor; // Color of unvisitied links. apColo | ColorStruct_t *fHighlightColorPtr; // Color for drawing traversal | |||
r[1] | highlight. | |||
ColorStruct_t *oldLinkColor; // Color of visitied links. apColor[ | TGFont *fAFont[N_FONT]; // Information about all scree | |||
2] | n fonts | |||
ColorStruct_t *selectionColor; // Background color for selections | char fFontValid[(N_FONT+7)/8]; // If bit N%8 of work N/8 of | |||
GcCache aGcCache[N_CACHE_GC]; // A cache of GCs for general use | this field is 0 | |||
int GcNextToFree; | // if aFont[N] needs to be rea | |||
int lastGC; // Index of recently used GC | llocated before | |||
TGHtmlImage *imageList; // A list of all images | // being used. | |||
TImage *bgImage; // Background image | ColorStruct_t *fApColor[N_COLOR]; // Information about all color | |||
s | ||||
int formPadding; // Amount to pad form elements by | Long_t fColorUsed; // bit N is 1 if color N is in | |||
int overrideFonts; // TRUE if we should override fonts | use. Only | |||
int overrideColors; // TRUE if we should override colors | // applies to colors that aren | |||
int underlineLinks; // TRUE if we should underline hyperlinks | 't predefined | |||
int HasScript; // TRUE if we can do scripts for this page | int fIDark[N_COLOR]; // Dark 3D shadow of color K i | |||
int HasFrames; // TRUE if we can do frames for this page | s iDark[K] | |||
int AddEndTags; // TRUE if we add /LI etc. | int fILight[N_COLOR]; // Light 3D shadow of color K | |||
int TableBorderMin; // Force tables to have min border size | is iLight[K] | |||
int varind; // Index suffix for unique global var name | ColorStruct_t *fBgColor; // Background color of the HTM | |||
L document | ||||
// Information about the selection | ColorStruct_t *fFgColor; // Color of normal text. apCol | |||
or[0] | ||||
int exportSelection; // True if the selection is automatically | ColorStruct_t *fNewLinkColor; // Color of unvisitied links. | |||
// exported to the clipboard | apColor[1] | |||
ColorStruct_t *fOldLinkColor; // Color of visitied links. ap | ||||
// Miscellaneous information: | Color[2] | |||
ColorStruct_t *fSelectionColor; // Background color for select | ||||
int tableRelief; // 3d effects on <TABLE> | ions | |||
int ruleRelief; // 3d effects on <HR> | GcCache_t fAGcCache[N_CACHE_GC]; // A cache of GCs for general | |||
int rulePadding; // extra pixels above and below <HR> | use | |||
const char *zBase; // The base URI | int fGcNextToFree; | |||
char *zBaseHref; // zBase as modified by <BASE HREF=..> mark | int fLastGC; // Index of recently used GC | |||
up | TGHtmlImage *fImageList; // A list of all images | |||
Cursor_t cursor; // Current cursor for window, or None. | TImage *fBgImage; // Background image | |||
int maxX, maxY; // Maximum extent of any "paint" that appea | ||||
rs | int fFormPadding; // Amount to pad form elements | |||
// on the virtual canvas. Used to compute | by | |||
// scrollbar positions. | int fOverrideFonts; // TRUE if we should override | |||
int dirtyLeft, dirtyTop; // Top left corner of region to redraw. The | fonts | |||
se | int fOverrideColors; // TRUE if we should override | |||
// are physical screen coordinates relative | colors | |||
to | int fUnderlineLinks; // TRUE if we should underline | |||
// the clip win, not main window. | hyperlinks | |||
int dirtyRight, dirtyBottom; // Bottom right corner of region to redraw | int fHasScript; // TRUE if we can do scripts f | |||
int flags; // Various flags; see below for definitions | or this page | |||
. | int fHasFrames; // TRUE if we can do frames fo | |||
int idind; | r this page | |||
int inParse; // Prevent update if parsing | int fAddEndTags; // TRUE if we add /LI etc. | |||
char *zGoto; // Label to goto right after layout | int fTableBorderMin; // Force tables to have min bo | |||
rder size | ||||
SHtmlExtensions *exts; // Pointer to user extension data | int fVarind; // Index suffix for unique glo | |||
bal var name | ||||
THashTable *fUidTable; // Hash table for some used string values | ||||
// like color names, etc. | // Information about the selection | |||
const char *_lastUri; // Used in HandleMotion | ||||
int _exiting; // True if the widget is being destroyed | int fExportSelection; // True if the selection is au | |||
tomatically | ||||
// exported to the clipboard | ||||
// Miscellaneous information: | ||||
int fTableRelief; // 3d effects on <TABLE> | ||||
int fRuleRelief; // 3d effects on <HR> | ||||
int fRulePadding; // extra pixels above and belo | ||||
w <HR> | ||||
const char *fZBase; // The base URI | ||||
char *fZBaseHref; // zBase as modified by <BASE | ||||
HREF=..> markup | ||||
Cursor_t fCursor; // Current cursor for window, | ||||
or None. | ||||
int fMaxX, fMaxY; // Maximum extent of any "pain | ||||
t" that appears | ||||
// on the virtual canvas. Used | ||||
to compute | ||||
// scrollbar positions. | ||||
int fDirtyLeft, fDirtyTop; // Top left corner of region t | ||||
o redraw. These | ||||
// are physical screen coordin | ||||
ates relative to | ||||
// the clip win, not main wind | ||||
ow. | ||||
int fDirtyRight, fDirtyBottom; // Bottom right corner of | ||||
region to redraw | ||||
int fFlags; // Various flags; see below fo | ||||
r definitions. | ||||
int fIdind; | ||||
int fInParse; // Prevent update if parsing | ||||
char *fZGoto; // Label to goto right after l | ||||
ayout | ||||
SHtmlExtensions_t *fExts; // Pointer to user extension d | ||||
ata | ||||
THashTable *fUidTable; // Hash table for some used st | ||||
ring values | ||||
// like color names, etc. | ||||
const char *fLastUri; // Used in HandleMotion | ||||
int fExiting; // True if the widget is being | ||||
destroyed | ||||
ClassDef(TGHtml, 0); | ClassDef(TGHtml, 0); // HTML widget | |||
}; | }; | |||
// Flag bits "flags" field of the Html widget: | // Flag bits "flags" field of the Html widget: | |||
// | // | |||
// REDRAW_PENDING An idle handler has already been queued to | // REDRAW_PENDING An idle handler has already been queued to | |||
// call the TGHtml::Redraw() method. | // call the TGHtml::Redraw() method. | |||
// | // | |||
// GOT_FOCUS This widget currently has input focus. | // GOT_FOCUS This widget currently has input focus. | |||
// | // | |||
// HSCROLL Horizontal scrollbar position needs to be | // HSCROLL Horizontal scrollbar position needs to be | |||
skipping to change at line 1278 | skipping to change at line 1279 | |||
// | // | |||
// STYLER_RUNNING There is a call to HtmlAddStyle() in process. | // STYLER_RUNNING There is a call to HtmlAddStyle() in process. | |||
// Used to prevent a recursive call to HtmlAddStyle( ). | // Used to prevent a recursive call to HtmlAddStyle( ). | |||
// | // | |||
// INSERT_FLASHING True if there is a timer scheduled that will togg le | // INSERT_FLASHING True if there is a timer scheduled that will togg le | |||
// the state of the insertion cursor. | // the state of the insertion cursor. | |||
// | // | |||
// REDRAW_IMAGES One or more TGHtmlImageMarkup objects have their | // REDRAW_IMAGES One or more TGHtmlImageMarkup objects have their | |||
// redrawNeeded flag set. | // redrawNeeded flag set. | |||
#define REDRAW_PENDING 0x000001 | #define REDRAW_PENDING 0x000001 | |||
#define GOT_FOCUS 0x000002 | #define GOT_FOCUS 0x000002 | |||
#define HSCROLL 0x000004 | #define HSCROLL 0x000004 | |||
#define VSCROLL 0x000008 | #define VSCROLL 0x000008 | |||
#define RELAYOUT 0x000010 | #define RELAYOUT 0x000010 | |||
#define RESIZE_ELEMENTS 0x000020 | #define RESIZE_ELEMENTS 0x000020 | |||
#define REDRAW_FOCUS 0x000040 | #define REDRAW_FOCUS 0x000040 | |||
#define REDRAW_TEXT 0x000080 | #define REDRAW_TEXT 0x000080 | |||
#define EXTEND_LAYOUT 0x000100 | #define EXTEND_LAYOUT 0x000100 | |||
#define STYLER_RUNNING 0x000200 | #define STYLER_RUNNING 0x000200 | |||
#define INSERT_FLASHING 0x000400 | #define INSERT_FLASHING 0x000400 | |||
End of changes. 98 change blocks. | ||||
640 lines changed or deleted | 719 lines changed or added | |||
TGHtmlUri.h | TGHtmlUri.h | |||
---|---|---|---|---|
skipping to change at line 55 | skipping to change at line 55 | |||
URI_FRAGMENT_MASK) | URI_FRAGMENT_MASK) | |||
//---------------------------------------------------------------------- | //---------------------------------------------------------------------- | |||
// A parsed URI is held in an instance of the following class. | // A parsed URI is held in an instance of the following class. | |||
// | // | |||
// The examples are from the URI | // The examples are from the URI | |||
// http://192.168.1.1:8080/cgi-bin/printenv?name=xyzzy&addr=none#frag | // http://192.168.1.1:8080/cgi-bin/printenv?name=xyzzy&addr=none#frag | |||
class TGHtmlUri : public TObject { | class TGHtmlUri : public TObject { | |||
public: | public: | |||
TGHtmlUri(const char *zUri = 0); | TGHtmlUri(const char *zUri = 0); | |||
TGHtmlUri(const TGHtmlUri *uri); | TGHtmlUri(const TGHtmlUri *uri); | |||
virtual ~TGHtmlUri(); | virtual ~TGHtmlUri(); | |||
char *BuildUri(); | char *BuildUri(); | |||
int EqualsUri(const TGHtmlUri *uri, int field_mask = URI_FULL_MASK); | int EqualsUri(const TGHtmlUri *uri, int field_mask = URI_FULL_MASK); | |||
public: | public: | |||
int ComponentLength(const char *z, const char *zInit, const char *zTerm); | int ComponentLength(const char *z, const char *zInit, const char *zTerm) ; | |||
char *zScheme; // Ex: "http" | char *fZScheme; // Ex: "http" | |||
char *zAuthority; // Ex: "192.168.1.1:8080" | char *fZAuthority; // Ex: "192.168.1.1:8080" | |||
char *zPath; // Ex: "cgi-bin/printenv" | char *fZPath; // Ex: "cgi-bin/printenv" | |||
char *zQuery; // Ex: "name=xyzzy&addr=none" | char *fZQuery; // Ex: "name=xyzzy&addr=none" | |||
char *zFragment; // Ex: "frag" | char *fZFragment; // Ex: "frag" | |||
}; | }; | |||
#endif // ROOT_TGHtmlUri | #endif // ROOT_TGHtmlUri | |||
End of changes. 4 change blocks. | ||||
11 lines changed or deleted | 11 lines changed or added | |||
TGLEmbeddedViewer.h | TGLEmbeddedViewer.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLEmbeddedViewer.h 25642 2008-10-01 11:04:06Z matevz $ | // @(#)root/gl:$Id: TGLEmbeddedViewer.h 26849 2008-12-11 21:39:15Z matevz $ | |||
// Author: Bertrand Bellenot 23/01/2008 | // Author: Bertrand Bellenot 23/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 31 | skipping to change at line 31 | |||
#endif | #endif | |||
class TGLRenderArea; | class TGLRenderArea; | |||
class TGLEventHandler; | class TGLEventHandler; | |||
class TGLEmbeddedViewer : public TGLViewer | class TGLEmbeddedViewer : public TGLViewer | |||
{ | { | |||
private: | private: | |||
// GUI components | // GUI components | |||
TGCompositeFrame *fFrame; | TGCompositeFrame *fFrame; | |||
Int_t fBorder; | ||||
void CreateFrames(Int_t border); | void CreateFrames(); | |||
TGLEmbeddedViewer(const TGLEmbeddedViewer&); // Not implemented | TGLEmbeddedViewer(const TGLEmbeddedViewer&); // Not implemented | |||
TGLEmbeddedViewer& operator=(const TGLEmbeddedViewer&); // Not implement ed | TGLEmbeddedViewer& operator=(const TGLEmbeddedViewer&); // Not implement ed | |||
public: | public: | |||
TGLEmbeddedViewer(const TGWindow *parent, TVirtualPad *pad=0, Int_t bord er=2); | TGLEmbeddedViewer(const TGWindow *parent, TVirtualPad *pad=0, Int_t bord er=2); | |||
~TGLEmbeddedViewer(); | ~TGLEmbeddedViewer(); | |||
virtual void CreateGLWidget(); | ||||
virtual void DestroyGLWidget(); | ||||
virtual const char *GetName() const { return "GLViewer"; } | virtual const char *GetName() const { return "GLViewer"; } | |||
TGCompositeFrame* GetFrame() const { return fFrame; } | TGCompositeFrame* GetFrame() const { return fFrame; } | |||
TGLOrthoCamera *GetOrthoXOYCamera() { return &fOrthoXOYCamera; } | TGLOrthoCamera *GetOrthoXOYCamera() { return &fOrthoXOYCamera; } | |||
TGLOrthoCamera *GetOrthoXOZCamera() { return &fOrthoXOZCamera; } | TGLOrthoCamera *GetOrthoXOZCamera() { return &fOrthoXOZCamera; } | |||
TGLOrthoCamera *GetOrthoZOYCamera() { return &fOrthoZOYCamera; } | TGLOrthoCamera *GetOrthoZOYCamera() { return &fOrthoZOYCamera; } | |||
ClassDef(TGLEmbeddedViewer, 0); // Embedded GL viewer. | ClassDef(TGLEmbeddedViewer, 0); // Embedded GL viewer. | |||
}; | }; | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 6 lines changed or added | |||
TGLFontManager.h | TGLFontManager.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLFontManager.h 26772 2008-12-09 19:57:49Z matevz $ | ||||
// Author: Olivier Couet 12/04/2007 | ||||
/************************************************************************* | ||||
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * | ||||
* All rights reserved. * | ||||
* * | ||||
* For the licensing terms see $ROOTSYS/LICENSE. * | ||||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | ||||
*************************************************************************/ | ||||
#ifndef ROOT_TGLFontManager | #ifndef ROOT_TGLFontManager | |||
#define ROOT_TGLFontManager | #define ROOT_TGLFontManager | |||
#include "TObjArray.h" | #include "TObjArray.h" | |||
#include <list> | #include <list> | |||
#include <vector> | #include <vector> | |||
#include <map> | #include <map> | |||
class FTFont; | class FTFont; | |||
class TGLFontManager; | class TGLFontManager; | |||
skipping to change at line 130 | skipping to change at line 141 | |||
virtual ~TGLFontManager(); | virtual ~TGLFontManager(); | |||
void RegisterFont(Int_t size, Int_t file, TGLFont::EMode mode, TGLFont & out); | void RegisterFont(Int_t size, Int_t file, TGLFont::EMode mode, TGLFont & out); | |||
void RegisterFont(Int_t size, const Text_t* name, TGLFont::EMode mode, TGLFont& out); | void RegisterFont(Int_t size, const Text_t* name, TGLFont::EMode mode, TGLFont& out); | |||
void ReleaseFont(TGLFont& font); | void ReleaseFont(TGLFont& font); | |||
static TObjArray* GetFontFileArray(); | static TObjArray* GetFontFileArray(); | |||
static FontSizeVec_t* GetFontSizeArray(); | static FontSizeVec_t* GetFontSizeArray(); | |||
static Int_t GetFontSize(Float_t ds, Int_t min = -1, Int_t m ax = -1); | static Int_t GetFontSize(Float_t ds, Int_t min = -1, Int_t m ax = -1); | |||
static const char* GetFontNameFromId(Int_t); | ||||
void ClearFontTrash(); | void ClearFontTrash(); | |||
ClassDef(TGLFontManager, 0); // A FreeType GL font manager. | ClassDef(TGLFontManager, 0); // A FreeType GL font manager. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
0 lines changed or deleted | 12 lines changed or added | |||
TGLSAViewer.h | TGLSAViewer.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLSAViewer.h 26274 2008-11-18 20:32:48Z matevz $ | // @(#)root/gl:$Id: TGLSAViewer.h 26849 2008-12-11 21:39:15Z 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 27 | skipping to change at line 27 | |||
#endif | #endif | |||
#ifndef ROOT_TString | #ifndef ROOT_TString | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
class TGWindow; | class TGWindow; | |||
class TGFrame; | class TGFrame; | |||
class TGCompositeFrame; | class TGCompositeFrame; | |||
class TGPopupMenu; | class TGPopupMenu; | |||
class TGLSAFrame; | ||||
class TGedEditor; | class TGedEditor; | |||
class TGLPShapeObj; | class TGLPShapeObj; | |||
class TGLRenderArea; // Remove - replace with TGLManager | ||||
class TGLEventHandler; | class TGLEventHandler; | |||
class TGMenuBar; | class TGMenuBar; | |||
////////////////////////////////////////////////////////////////////////// | //_________________________________________________________________________ | |||
// // | _____ | |||
// TGLSAViewer // | // | |||
// // | ||||
// The top level standalone viewer object - created via plugin manager. // | ||||
// TGLSAViewer | // TGLSAViewer | |||
////////////////////////////////////////////////////////////////////////// | // | |||
// The top-level standalone GL viewer. | ||||
// TODO: This really needs to be re-examined along with GUI parts in TGLVie | ||||
wer. | ||||
// It still contiains lots of legacy parts for binding to external GUI (TGL | ||||
Editors) | ||||
// which could be neater. | ||||
class TGLSAViewer : public TGLViewer | class TGLSAViewer : public TGLViewer | |||
{ | { | |||
public: | public: | |||
enum EGLSACommands { | enum EGLSACommands { | |||
kGLHelpAbout, kGLHelpViewer, | kGLHelpAbout, kGLHelpViewer, | |||
kGLPerspYOZ, kGLPerspXOZ, kGLPerspXOY, | kGLPerspYOZ, kGLPerspXOZ, kGLPerspXOY, | |||
kGLXOY, kGLXOZ, kGLZOY, | kGLXOY, kGLXOZ, kGLZOY, | |||
kGLXnOY, kGLXnOZ, kGLZnOY, | kGLXnOY, kGLXnOZ, kGLZnOY, | |||
kGLOrthoRotate, kGLOrthoDolly, | kGLOrthoRotate, kGLOrthoDolly, | |||
kGLSaveEPS, kGLSavePDF, kGLSavePNG, kGLSaveGIF, kGLSaveAnimGIF, | kGLSaveEPS, kGLSavePDF, kGLSavePNG, kGLSaveGIF, kGLSaveAnimGIF, | |||
kGLSaveJPG, kGLSaveAS, kGLCloseViewer, kGLQuitROOT, | kGLSaveJPG, kGLSaveAS, kGLCloseViewer, kGLQuitROOT, | |||
kGLEditObject }; | kGLEditObject }; | |||
private: | private: | |||
// GUI components | // GUI components | |||
TGLSAFrame *fFrame; | TGCompositeFrame *fFrame; | |||
TGPopupMenu *fFileMenu; | TGPopupMenu *fFileMenu; | |||
TGPopupMenu *fFileSaveMenu; | TGPopupMenu *fFileSaveMenu; | |||
TGPopupMenu *fCameraMenu; | TGPopupMenu *fCameraMenu; | |||
TGPopupMenu *fHelpMenu; | TGPopupMenu *fHelpMenu; | |||
// Ged | // Ged | |||
TGCompositeFrame *fLeftVerticalFrame; | TGCompositeFrame *fLeftVerticalFrame; | |||
TGedEditor *fGedEditor; | TGedEditor *fGedEditor; | |||
TGLPShapeObj *fPShapeWrap; | TGLPShapeObj *fPShapeWrap; | |||
TGCompositeFrame *fRightVerticalFrame; | ||||
TString fDirName; | TString fDirName; | |||
Int_t fTypeIdx; | Int_t fTypeIdx; | |||
Bool_t fOverwrite; | Bool_t fOverwrite; | |||
TGMenuBar *fMenuBar; | TGMenuBar *fMenuBar; | |||
Bool_t fDeleteMenuBar; | ||||
// 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(); | |||
void CreateFrames(); | void CreateFrames(); | |||
// non-copyable class | // non-copyable class | |||
TGLSAViewer(const TGLSAViewer &); | TGLSAViewer(const TGLSAViewer &); | |||
TGLSAViewer & operator = (const TGLSAViewer &); | TGLSAViewer & operator = (const TGLSAViewer &); | |||
public: | public: | |||
TGLSAViewer(TVirtualPad *pad); | TGLSAViewer(TVirtualPad *pad); | |||
TGLSAViewer(const TGWindow *parent, TVirtualPad *pad, TGedEditor *ged = 0); | TGLSAViewer(const TGWindow *parent, TVirtualPad *pad, TGedEditor *ged = 0); | |||
~TGLSAViewer(); | ~TGLSAViewer(); | |||
virtual void CreateGLWidget(); | ||||
virtual void DestroyGLWidget(); | ||||
virtual const char* GetName() const { return "GLViewer"; } | virtual const char* GetName() const { return "GLViewer"; } | |||
virtual void SelectionChanged(); // *SIGNAL* | virtual void SelectionChanged(); // *SIGNAL* | |||
virtual void OverlayDragFinished(); // *SIGNAL* | virtual void OverlayDragFinished(); // *SIGNAL* | |||
virtual void RefreshPadEditor(TObject* changed=0); | virtual void RefreshPadEditor(TObject* changed=0); | |||
void Show(); | void Show(); | |||
void Close(); | void Close(); | |||
void DeleteMenuBar(); | ||||
// 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); | |||
TGLSAFrame* GetFrame() const { return fFrame; } | TGCompositeFrame* GetFrame() const { return fFrame; } | |||
TGCompositeFrame* GetLeftVerticalFrame() const { return fLeftVerticalFra me; } | TGCompositeFrame* GetLeftVerticalFrame() const { return fLeftVerticalFra me; } | |||
TGedEditor* GetGedEditor() const { return fGedEditor; } | TGedEditor* GetGedEditor() const { return fGedEditor; } | |||
void ToggleEditObject(); | void ToggleEditObject(); | |||
void ToggleOrthoRotate(); | void ToggleOrthoRotate(); | |||
void ToggleOrthoDolly(); | void ToggleOrthoDolly(); | |||
ClassDef(TGLSAViewer, 0); // Standalone GL viewer. | ClassDef(TGLSAViewer, 0); // Standalone GL viewer. | |||
}; | }; | |||
End of changes. 12 change blocks. | ||||
20 lines changed or deleted | 18 lines changed or added | |||
TGLScenePad.h | TGLScenePad.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLScenePad.h 26367 2008-11-21 18:08:30Z matevz $ | // @(#)root/gl:$Id: TGLScenePad.h 26649 2008-12-04 11:30:23Z 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_TGLScenePad | #ifndef ROOT_TGLScenePad | |||
#define ROOT_TGLScenePad | #define ROOT_TGLScenePad | |||
skipping to change at line 91 | skipping to change at line 91 | |||
virtual Int_t DistancetoPrimitive(Int_t /*px*/, Int_t /*py*/) { return 9999; } | virtual Int_t DistancetoPrimitive(Int_t /*px*/, Int_t /*py*/) { return 9999; } | |||
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 PreferLocalFrame() const { return kTRUE; } | virtual Bool_t PreferLocalFrame() const { return kTRUE; } | |||
virtual void BeginScene(); | virtual void BeginScene(); | |||
virtual Bool_t BuildingScene() const { return CurrentLock() == kModifyLo ck; } | virtual Bool_t BuildingScene() const { return CurrentLock() == kModifyLo ck; } | |||
virtual void EndScene(); | virtual void EndScene(); | |||
virtual Int_t AddObject(const TBuffer3D& buffer, Bool_t* addChildren = 0); | virtual Int_t AddObject(const TBuffer3D& buffer, Bool_t* addChildren = 0); | |||
virtual Int_t AddObject(UInt_t physicalID, const TBuffer3D& buffer, Boo | virtual Int_t AddObject(UInt_t physicalID, const TBuffer3D& buffer, Boo | |||
l_t* addChildren = kFALSE); | l_t* addChildren = 0); | |||
virtual Bool_t OpenComposite(const TBuffer3D& buffer, Bool_t* addChildre | virtual Bool_t OpenComposite(const TBuffer3D& buffer, Bool_t* addChildre | |||
n = kFALSE); | n = 0); | |||
virtual void CloseComposite(); | virtual void CloseComposite(); | |||
virtual void AddCompositeOp(UInt_t operation); | virtual void AddCompositeOp(UInt_t operation); | |||
ClassDef(TGLScenePad, 0); // GL-scene filled via TPad-TVirtualViewer int erface. | ClassDef(TGLScenePad, 0); // GL-scene filled via TPad-TVirtualViewer int erface. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
5 lines changed or deleted | 5 lines changed or added | |||
TGLViewer.h | TGLViewer.h | |||
---|---|---|---|---|
// @(#)root/gl:$Id: TGLViewer.h 26367 2008-11-21 18:08:30Z matevz $ | // @(#)root/gl:$Id: TGLViewer.h 26849 2008-12-11 21:39:15Z 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 196 | skipping to change at line 196 | |||
virtual void AddCompositeOp(UInt_t) {} | virtual void AddCompositeOp(UInt_t) {} | |||
virtual void PrintObjects(); | virtual void PrintObjects(); | |||
virtual void ResetCameras() { SetupCameras(kTRUE); } | virtual void ResetCameras() { SetupCameras(kTRUE); } | |||
virtual void ResetCamerasAfterNextUpdate() { fResetCamerasOnNextUpdate = kTRUE; } | virtual void ResetCamerasAfterNextUpdate() { fResetCamerasOnNextUpdate = kTRUE; } | |||
virtual void RefreshPadEditor(TObject* = 0) {} | virtual void RefreshPadEditor(TObject* = 0) {} | |||
TGLWidget* GetGLWidget() { return fGLWidget; } | TGLWidget* GetGLWidget() { return fGLWidget; } | |||
virtual void CreateGLWidget() {} | ||||
virtual void DestroyGLWidget() {} | ||||
Int_t GetDev() const { return fGLDevice; } | Int_t GetDev() const { return fGLDevice; } | |||
Color_t GetClearColor() const { return fClearColor; } | Color_t GetClearColor() const { return fClearColor; } | |||
void SetClearColor(Color_t col) { fClearColor = col; } | void SetClearColor(Color_t col) { fClearColor = col; } | |||
Bool_t GetSmartRefresh() const { return fSmartRefresh; } | Bool_t GetSmartRefresh() const { return fSmartRefresh; } | |||
void SetSmartRefresh(Bool_t smart_ref) { fSmartRefresh = smart_ref; } | void SetSmartRefresh(Bool_t smart_ref) { fSmartRefresh = smart_ref; } | |||
TGLLightSet* GetLightSet() const { return fLightSet; } | TGLLightSet* GetLightSet() const { return fLightSet; } | |||
TGLClipSet * GetClipSet() const { return fClipSet; } | TGLClipSet * GetClipSet() const { return fClipSet; } | |||
// External GUI component interface | // External GUI component interface | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TGMenu.h | TGMenu.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TGMenu.h 26290 2008-11-19 11:49:09Z bellenot $ | // @(#)root/gui:$Id: TGMenu.h 26554 2008-12-01 16:35:47Z bellenot $ | |||
// Author: Fons Rademakers 09/01/98 | // Author: Fons Rademakers 09/01/98 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 259 | skipping to change at line 259 | |||
class TGMenuTitle : public TGFrame { | class TGMenuTitle : public TGFrame { | |||
protected: | protected: | |||
TGPopupMenu *fMenu; // attached popup menu | TGPopupMenu *fMenu; // attached popup menu | |||
TGHotString *fLabel; // menu title | TGHotString *fLabel; // menu title | |||
Int_t fTitleId; // id of selected menu item | Int_t fTitleId; // id of selected menu item | |||
void *fTitleData; // user data associated with selected item | void *fTitleData; // user data associated with selected item | |||
Bool_t fState; // menu title state (active/not activ e) | Bool_t fState; // menu title state (active/not activ e) | |||
Int_t fHkeycode; // hot key code | Int_t fHkeycode; // hot key code | |||
FontStruct_t fFontStruct; // font | FontStruct_t fFontStruct; // font | |||
Pixel_t fTextColor; // text color | ||||
GContext_t fNormGC, fSelGC; // normal and selection graphics cont exts | GContext_t fNormGC, fSelGC; // normal and selection graphics cont exts | |||
virtual void DoRedraw(); | virtual void DoRedraw(); | |||
static const TGFont *fgDefaultFont; | static const TGFont *fgDefaultFont; | |||
static const TGGC *fgDefaultSelectedGC; | static const TGGC *fgDefaultSelectedGC; | |||
static const TGGC *fgDefaultGC; | static const TGGC *fgDefaultGC; | |||
private: | private: | |||
TGMenuTitle(const TGMenuTitle&); // not implemented | TGMenuTitle(const TGMenuTitle&); // not implemented | |||
skipping to change at line 282 | skipping to change at line 283 | |||
static FontStruct_t GetDefaultFontStruct(); | static FontStruct_t GetDefaultFontStruct(); | |||
static const TGGC &GetDefaultSelectedGC(); | static const TGGC &GetDefaultSelectedGC(); | |||
static const TGGC &GetDefaultGC(); | static const TGGC &GetDefaultGC(); | |||
TGMenuTitle(const TGWindow *p = 0, TGHotString *s = 0, TGPopupMenu *menu = 0, | TGMenuTitle(const TGWindow *p = 0, TGHotString *s = 0, TGPopupMenu *menu = 0, | |||
GContext_t norm = GetDefaultGC()(), | GContext_t norm = GetDefaultGC()(), | |||
FontStruct_t font = GetDefaultFontStruct(), | FontStruct_t font = GetDefaultFontStruct(), | |||
UInt_t options = 0); | UInt_t options = 0); | |||
virtual ~TGMenuTitle() { if (fLabel) delete fLabel; } | virtual ~TGMenuTitle() { if (fLabel) delete fLabel; } | |||
Pixel_t GetTextColor() const { return fTextColor; } | ||||
void SetTextColor(Pixel_t col) { fTextColor = col; } | ||||
virtual void SetState(Bool_t state); | virtual void SetState(Bool_t state); | |||
Bool_t GetState() const { return fState; } | Bool_t GetState() const { return fState; } | |||
Int_t GetHotKeyCode() const { return fHkeycode; } | Int_t GetHotKeyCode() const { return fHkeycode; } | |||
TGPopupMenu *GetMenu() const { return fMenu; } | TGPopupMenu *GetMenu() const { return fMenu; } | |||
const char *GetName() const { return fLabel ? fLabel->GetString() : 0; } | const char *GetName() const { return fLabel ? fLabel->GetString() : 0; } | |||
virtual void DoSendMessage(); | virtual void DoSendMessage(); | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
ClassDef(TGMenuTitle,0) // Menu title class | ClassDef(TGMenuTitle,0) // Menu title class | |||
}; | }; | |||
skipping to change at line 345 | skipping to change at line 348 | |||
TGPopupMenu *before = 0); | TGPopupMenu *before = 0); | |||
virtual void AddPopup(const char *s, TGPopupMenu *menu, TGLayoutHints *l , | virtual void AddPopup(const char *s, TGPopupMenu *menu, TGLayoutHints *l , | |||
TGPopupMenu *before = 0); | TGPopupMenu *before = 0); | |||
virtual TGPopupMenu *AddPopup(const TString &s, Int_t padleft = 4, Int_t padright = 0, | virtual TGPopupMenu *AddPopup(const TString &s, Int_t padleft = 4, Int_t padright = 0, | |||
Int_t padtop = 0, Int_t padbottom = 0); | Int_t padtop = 0, Int_t padbottom = 0); | |||
virtual void AddTitle(TGMenuTitle *title, TGLayoutHints *l, TGPopupMenu *before = 0); | virtual void AddTitle(TGMenuTitle *title, TGLayoutHints *l, TGPopupMenu *before = 0); | |||
virtual TGPopupMenu *GetPopup(const char *s); | virtual TGPopupMenu *GetPopup(const char *s); | |||
virtual TGPopupMenu *RemovePopup(const char *s); | virtual TGPopupMenu *RemovePopup(const char *s); | |||
virtual TList *GetTitles() const { return fTitles; } | ||||
virtual Bool_t HandleButton(Event_t *event); | virtual Bool_t HandleButton(Event_t *event); | |||
virtual Bool_t HandleMotion(Event_t *event); | virtual Bool_t HandleMotion(Event_t *event); | |||
virtual Bool_t HandleKey(Event_t *event); | virtual Bool_t HandleKey(Event_t *event); | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void Layout(); | virtual void Layout(); | |||
void PopupConnection(); | void PopupConnection(); | |||
TGFrameElement* GetLastOnLeft(); | TGFrameElement* GetLastOnLeft(); | |||
ClassDef(TGMenuBar,0) // Menu bar class | ClassDef(TGMenuBar,0) // Menu bar class | |||
}; | }; | |||
End of changes. 4 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TGPack.h | TGPack.h | |||
---|---|---|---|---|
// @(#)root/eve:$Id: TGPack.h 25239 2008-08-25 19:08:32Z bellenot $ | // @(#)root/eve:$Id: TGPack.h 26800 2008-12-10 16:20:20Z bellenot $ | |||
// 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 32 | skipping to change at line 32 | |||
protected: | protected: | |||
Bool_t fVertical; | Bool_t fVertical; | |||
Bool_t fUseSplitters; | Bool_t fUseSplitters; | |||
Int_t fSplitterLen; | Int_t fSplitterLen; | |||
Int_t fDragOverflow; //! | Int_t fDragOverflow; //! | |||
Int_t GetFrameLength(const TGFrame* f) const { return fVertical ? f->GetHeight() : f->GetWidth(); } | Int_t GetFrameLength(const TGFrame* f) const { return fVertical ? f->GetHeight() : f->GetWidth(); } | |||
Int_t GetLength() const { return GetFrameL ength(this); } | Int_t GetLength() const { return GetFrameL ength(this); } | |||
Int_t GetAvailableLength() const; | ||||
void SetFrameLength (TGFrame* f, Int_t len); | void SetFrameLength (TGFrame* f, Int_t len); | |||
void SetFramePosition(TGFrame* f, Int_t pos); | void SetFramePosition(TGFrame* f, Int_t pos); | |||
Int_t NumberOfRealFrames() const; | Int_t NumberOfRealFrames() const; | |||
Int_t LengthOfRealFrames() const; | Int_t LengthOfRealFrames() const; | |||
void ResizeExistingFrames(Int_t amount); | void ResizeExistingFrames(Int_t amount); | |||
void ExpandExistingFrames(Int_t amount); | void ExpandExistingFrames(Int_t amount); | |||
void ShrinkExistingFrames(Int_t amount); | void ShrinkExistingFrames(Int_t amount); | |||
void RefitFramesToPack(); | void RefitFramesToPack(); | |||
void FindFrames(TGFrame* splitter, TGFrame*& f0, TGFrame*& f1) ; | void FindFrames(TGFrame* splitter, TGFrame*& f0, TGFrame*& f1) ; | |||
void AddFrameInternal(TGFrame *f, TGLayoutHints* l = 0); | ||||
Int_t RemoveFrameInternal(TGFrame *f); | ||||
public: | public: | |||
TGPack(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1, | TGPack(const TGWindow *p = 0, UInt_t w = 1, UInt_t h = 1, UInt_t options | |||
UInt_t options = 0, | = 0, | |||
Pixel_t back = GetDefaultFrameBackground()); | Pixel_t back = GetDefaultFrameBackground()); | |||
TGPack(TGClient *c, Window_t id, const TGWindow *parent = 0); | TGPack(TGClient *c, Window_t id, const TGWindow *parent = 0); | |||
virtual ~TGPack(); | virtual ~TGPack(); | |||
virtual void AddFrame(TGFrame *f, TGLayoutHints *l = 0); | virtual void AddFrame(TGFrame *f, TGLayoutHints *l = 0); | |||
virtual void DeleteFrame(TGFrame *f); | ||||
virtual void RemoveFrame(TGFrame *f); | virtual void RemoveFrame(TGFrame *f); | |||
virtual void ShowFrame(TGFrame *f); | virtual void ShowFrame(TGFrame *f); | |||
virtual void HideFrame(TGFrame *f); | virtual void HideFrame(TGFrame *f); | |||
using TGCompositeFrame::Resize; | using TGCompositeFrame::Resize; | |||
virtual void Resize(UInt_t w = 0, UInt_t h = 0); | virtual void Resize(UInt_t w = 0, UInt_t h = 0); | |||
virtual void MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0); | virtual void MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0); | |||
virtual void Layout(); | virtual void Layout(); | |||
void EqualizeFrames(); | ||||
void HandleSplitterStart(); | void HandleSplitterStart(); | |||
void HandleSplitterResize(Int_t delta); | void HandleSplitterResize(Int_t delta); | |||
// ---------------------------------------------------------------- | // ---------------------------------------------------------------- | |||
// Once children are present, this should be kept fixed, or rewritten. | ||||
// OK to change when there is one child. | ||||
Bool_t GetVertical() const { return fVertical; } | Bool_t GetVertical() const { return fVertical; } | |||
void SetVertical(Bool_t x) { fVertical = x; } | void SetVertical(Bool_t x); | |||
// For now assume this is always true. Lenght of splitter = 4 pixels. | // For now assume this is always true. Lenght of splitter = 4 pixels. | |||
//Bool_t GetUseSplitters() const { return fUseSplitters; } | // Bool_t GetUseSplitters() const { return fUseSplitters; } | |||
//void SetUseSplitters(Bool_t x) { fUseSplitters = x; } | // void SetUseSplitters(Bool_t x) { fUseSplitters = x; } | |||
ClassDef(TGPack, 0); // Short description. | ClassDef(TGPack, 0); // Horizontal or vertical stack of frames. | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 10 change blocks. | ||||
9 lines changed or deleted | 14 lines changed or added | |||
TGStatusBar.h | TGStatusBar.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TGStatusBar.h 23115 2008-04-10 13:35:37Z rdm $ | // @(#)root/gui:$Id: TGStatusBar.h 26692 2008-12-06 10:54:36Z bellenot $ | |||
// Author: Fons Rademakers 23/01/98 | // Author: Fons Rademakers 23/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 64 | skipping to change at line 64 | |||
TGStatusBar(const TGWindow *p = 0, UInt_t w = 4, UInt_t h = 2, | TGStatusBar(const TGWindow *p = 0, UInt_t w = 4, UInt_t h = 2, | |||
UInt_t options = kSunkenFrame | kHorizontalFrame, | UInt_t options = kSunkenFrame | kHorizontalFrame, | |||
Pixel_t back = GetDefaultFrameBackground()); | Pixel_t back = GetDefaultFrameBackground()); | |||
virtual ~TGStatusBar(); | virtual ~TGStatusBar(); | |||
virtual void DrawBorder(); | virtual void DrawBorder(); | |||
virtual void SetText(TGString *text, Int_t partidx = 0); | virtual void SetText(TGString *text, Int_t partidx = 0); | |||
virtual void SetText(const char *text, Int_t partidx = 0); | virtual void SetText(const char *text, Int_t partidx = 0); | |||
void AddText(const char *text, Int_t partidx = 0) | void AddText(const char *text, Int_t partidx = 0) | |||
{ SetText(text, partidx); } //*MENU* | { SetText(text, partidx); } //*MENU* | |||
const char *GetText(Int_t partidx = 0) const; | ||||
virtual void SetParts(Int_t npart); //*MENU* | virtual void SetParts(Int_t npart); //*MENU* | |||
virtual void SetParts(Int_t *parts, Int_t npart); | virtual void SetParts(Int_t *parts, Int_t npart); | |||
void Draw3DCorner(Bool_t corner) { f3DCorner = corner; } | void Draw3DCorner(Bool_t corner) { f3DCorner = corner; } | |||
TGCompositeFrame *GetBarPart(Int_t npart) const; | TGCompositeFrame *GetBarPart(Int_t npart) const; | |||
TGDimension GetDefaultSize() const; | TGDimension GetDefaultSize() const; | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
ClassDef(TGStatusBar,0) // Status bar widget | ClassDef(TGStatusBar,0) // Status bar widget | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TGTable.h | TGTable.h | |||
---|---|---|---|---|
skipping to change at line 42 | skipping to change at line 42 | |||
class TGTableFrame; | class TGTableFrame; | |||
class TGTableHeaderFrame; | class TGTableHeaderFrame; | |||
class TGTextButton; | class TGTextButton; | |||
class TGNumberEntryField; | class TGNumberEntryField; | |||
class TGLabel; | class TGLabel; | |||
class TGTextEntry; | class TGTextEntry; | |||
class TTableRange; | class TTableRange; | |||
class TGTable : public TGCompositeFrame, public TGWidget { | class TGTable : public TGCompositeFrame, public TGWidget { | |||
private: | protected: | |||
TObjArray *fRows; // Array of rows | TObjArray *fRows; // Array of rows | |||
TObjArray *fRowHeaders; // Array of row headers | TObjArray *fRowHeaders; // Array of row headers | |||
TObjArray *fColumnHeaders; // Array of column headers | TObjArray *fColumnHeaders; // Array of column headers | |||
TGTableHeader *fTableHeader; // Top left element of the table | TGTableHeader *fTableHeader; // Top left element of the table | |||
Bool_t fReadOnly; // Table readonly state | Bool_t fReadOnly; // Table readonly state | |||
Pixel_t fSelectColor; // Select Color | Pixel_t fSelectColor; // Select Color | |||
Int_t fTMode; // Text justify mode | Int_t fTMode; // Text justify mode | |||
Bool_t fAllData; // Is the data bigger than the table | Bool_t fAllData; // Is the data bigger than the table | |||
TTableRange *fCurrentRange; // Range of data currently loaded | TTableRange *fCurrentRange; // Range of data currently loaded | |||
TTableRange *fDataRange; // Full range of the data set | TTableRange *fDataRange; // Full range of the data set | |||
skipping to change at line 97 | skipping to change at line 97 | |||
// Data members to keep track of LayoutHints that can't be | // Data members to keep track of LayoutHints that can't be | |||
// automatically cleaned | // automatically cleaned | |||
TList *fCellHintsList; | TList *fCellHintsList; | |||
TList *fRHdrHintsList; | TList *fRHdrHintsList; | |||
TList *fCHdrHintsList; | TList *fCHdrHintsList; | |||
TList *fMainHintsList; // List for all hints used in the main table fr ame | TList *fMainHintsList; // List for all hints used in the main table fr ame | |||
// Add rows and/or colums to the edge of the table. | // Add rows and/or colums to the edge of the table. | |||
void Init(); | virtual void Init(); | |||
// Remove rows and/or colums from the edge of the table. | // Remove rows and/or colums from the edge of the table. | |||
protected: | protected: | |||
TVirtualTableInterface *fInterface; // Interface to the data source | TVirtualTableInterface *fInterface; // Interface to the data source | |||
virtual void DoRedraw(); | virtual void DoRedraw(); | |||
virtual void Expand(UInt_t nrows, UInt_t ncolumns); | virtual void Expand(UInt_t nrows, UInt_t ncolumns); | |||
virtual void ExpandColumns(UInt_t ncolumns); | virtual void ExpandColumns(UInt_t ncolumns); | |||
virtual void ExpandRows(UInt_t nrows); | virtual void ExpandRows(UInt_t nrows); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGTableCell.h | TGTableCell.h | |||
---|---|---|---|---|
skipping to change at line 30 | skipping to change at line 30 | |||
class TGTooltip; | class TGTooltip; | |||
class TGPicture; | class TGPicture; | |||
class TObjArray; | class TObjArray; | |||
class TGWindow; | class TGWindow; | |||
class TGToolTip; | class TGToolTip; | |||
class TGTableCell : public TGFrame { | class TGTableCell : public TGFrame { | |||
friend class TGTable; | friend class TGTable; | |||
private: | ||||
void Init(Bool_t resize); | ||||
protected: | protected: | |||
TGString *fLabel; // Text as shown in the cell | TGString *fLabel; // Text as shown in the cell | |||
TGToolTip *fTip; // Possible Tooltip | TGToolTip *fTip; // Possible Tooltip | |||
Bool_t fReadOnly; // Cell readonly state | Bool_t fReadOnly; // Cell readonly state | |||
Bool_t fEnabled; // Cell enabled state | Bool_t fEnabled; // Cell enabled state | |||
Int_t fTMode; // Text justify mode | Int_t fTMode; // Text justify mode | |||
TGPicture *fImage; // Image or icon | TGPicture *fImage; // Image or icon | |||
UInt_t fTWidth; // Label width | UInt_t fTWidth; // Label width | |||
UInt_t fTHeight; // Label heigth | UInt_t fTHeight; // Label heigth | |||
FontStruct_t fFontStruct; // Font of the label | FontStruct_t fFontStruct; // Font of the label | |||
skipping to change at line 58 | skipping to change at line 56 | |||
static const TGGC *fgDefaultGC; // Default graphics context | static const TGGC *fgDefaultGC; // Default graphics context | |||
static const TGFont *fgDefaultFont; // Default font | static const TGFont *fgDefaultFont; // Default font | |||
virtual void DoRedraw(); | virtual void DoRedraw(); | |||
virtual void DrawBorder(); | virtual void DrawBorder(); | |||
virtual void DrawBorder(Handle_t id, Int_t x, Int_t y); | virtual void DrawBorder(Handle_t id, Int_t x, Int_t y); | |||
virtual void MoveDraw(Int_t x, Int_t y); | virtual void MoveDraw(Int_t x, Int_t y); | |||
virtual void Resize(UInt_t width, UInt_t height); | virtual void Resize(UInt_t width, UInt_t height); | |||
virtual void Resize(TGDimension newsize); | virtual void Resize(TGDimension newsize); | |||
void Highlight(); | virtual void Highlight(); | |||
void Init(Bool_t resize); | ||||
public: | public: | |||
static FontStruct_t GetDefaultFontStruct(); | static FontStruct_t GetDefaultFontStruct(); | |||
static const TGGC &GetDefaultGC(); | static const TGGC &GetDefaultGC(); | |||
TGTableCell(const TGWindow *p = 0, TGTable *table = 0, TGString *label = 0, | TGTableCell(const TGWindow *p = 0, TGTable *table = 0, TGString *label = 0, | |||
UInt_t row = 0, UInt_t column = 0, UInt_t width = 80, | UInt_t row = 0, UInt_t column = 0, UInt_t width = 80, | |||
UInt_t height = 25, GContext_t norm = GetDefaultGC()(), | UInt_t height = 25, GContext_t norm = GetDefaultGC()(), | |||
FontStruct_t font = GetDefaultFontStruct(), UInt_t option = 0, | FontStruct_t font = GetDefaultFontStruct(), UInt_t option = 0, | |||
Bool_t resize = kTRUE); | Bool_t resize = kTRUE); | |||
End of changes. 2 change blocks. | ||||
3 lines changed or deleted | 2 lines changed or added | |||
TGTableContainer.h | TGTableContainer.h | |||
---|---|---|---|---|
skipping to change at line 20 | skipping to change at line 20 | |||
#ifndef ROOT_TGCanvas | #ifndef ROOT_TGCanvas | |||
#include "TGCanvas.h" | #include "TGCanvas.h" | |||
#endif | #endif | |||
#ifndef ROOT_TGTableHeader | #ifndef ROOT_TGTableHeader | |||
#include "TGTableHeader.h" | #include "TGTableHeader.h" | |||
#endif | #endif | |||
class TGTableFrame : public TQObject { | class TGTableFrame : public TQObject { | |||
private: | protected: | |||
TGCompositeFrame *fFrame; // Composite frame used as a container | TGCompositeFrame *fFrame; // Composite frame used as a container | |||
TGCanvas *fCanvas; // Pointer to the canvas that used this frame . | TGCanvas *fCanvas; // Pointer to the canvas that used this frame . | |||
public: | public: | |||
TGTableFrame(const TGWindow *p, UInt_t nrows, UInt_t ncolumns); | TGTableFrame(const TGWindow *p, UInt_t nrows, UInt_t ncolumns); | |||
virtual ~TGTableFrame() { delete fFrame; } | virtual ~TGTableFrame() { delete fFrame; } | |||
TGFrame *GetFrame() const { return fFrame; } | TGFrame *GetFrame() const { return fFrame; } | |||
void SetCanvas(TGCanvas *canvas) { fCanvas = canvas; } | void SetCanvas(TGCanvas *canvas) { fCanvas = canvas; } | |||
void HandleMouseWheel(Event_t *event); | void HandleMouseWheel(Event_t *event); | |||
virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | |||
ClassDef(TGTableFrame, 0) // A frame used internally by TGTable. | ClassDef(TGTableFrame, 0) // A frame used internally by TGTable. | |||
}; | }; | |||
class TGTableHeaderFrame: public TGCompositeFrame { | class TGTableHeaderFrame: public TGCompositeFrame { | |||
private: | ||||
protected: | ||||
Int_t fX0; // X coordinate of the header frame | Int_t fX0; // X coordinate of the header frame | |||
Int_t fY0; // Y coordinate of the header frame | Int_t fY0; // Y coordinate of the header frame | |||
TGTable *fTable; // Table that this frame belongs to | TGTable *fTable; // Table that this frame belongs to | |||
protected: | ||||
public: | public: | |||
TGTableHeaderFrame(const TGWindow *p, TGTable *table = 0, UInt_t w = 1, | TGTableHeaderFrame(const TGWindow *p, TGTable *table = 0, UInt_t w = 1, | |||
UInt_t h = 1, EHeaderType type = kColumnHeader, | UInt_t h = 1, EHeaderType type = kColumnHeader, | |||
UInt_t option = 0); | UInt_t option = 0); | |||
~TGTableHeaderFrame() {} | ~TGTableHeaderFrame() {} | |||
virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | virtual void DrawRegion(Int_t x, Int_t y, UInt_t w, UInt_t h); | |||
ClassDef(TGTableHeaderFrame, 0) // A frame used internally by TGTable. | ClassDef(TGTableHeaderFrame, 0) // A frame used internally by TGTable. | |||
}; | }; | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 3 lines changed or added | |||
TGTableHeader.h | TGTableHeader.h | |||
---|---|---|---|---|
skipping to change at line 28 | skipping to change at line 28 | |||
enum EHeaderType { | enum EHeaderType { | |||
kColumnHeader, | kColumnHeader, | |||
kRowHeader, | kRowHeader, | |||
kTableHeader | kTableHeader | |||
}; | }; | |||
class TGWindow; | class TGWindow; | |||
class TGTableHeader : public TGTableCell { | class TGTableHeader : public TGTableCell { | |||
private: | protected: | |||
EHeaderType fType; // Type of header | EHeaderType fType; // Type of header | |||
UInt_t fWidth; // Width for the column | UInt_t fWidth; // Width for the column | |||
UInt_t fHeight; // Height of the row | UInt_t fHeight; // Height of the row | |||
Bool_t fReadOnly; // Cell readonly state | Bool_t fReadOnly; // Cell readonly state | |||
Bool_t fEnabled; // Cell enabled state | Bool_t fEnabled; // Cell enabled state | |||
Bool_t fHasOwnLabel; // Flag on default or specific label usage | Bool_t fHasOwnLabel; // Flag on default or specific label usage | |||
void Init(); | void Init(); | |||
protected: | ||||
public: | public: | |||
TGTableHeader(const TGWindow *p = 0, TGTable *table = 0, | TGTableHeader(const TGWindow *p = 0, TGTable *table = 0, | |||
TGString *label = 0, UInt_t position = 0, | TGString *label = 0, UInt_t position = 0, | |||
EHeaderType type = kColumnHeader, UInt_t width = 80, | EHeaderType type = kColumnHeader, UInt_t width = 80, | |||
UInt_t height = 25, GContext_t norm = GetDefaultGC()(), | UInt_t height = 25, GContext_t norm = GetDefaultGC()(), | |||
FontStruct_t font = GetDefaultFontStruct(), | FontStruct_t font = GetDefaultFontStruct(), | |||
UInt_t option = 0); | UInt_t option = 0); | |||
TGTableHeader(const TGWindow *p, TGTable *table, const char *label, | TGTableHeader(const TGWindow *p, TGTable *table, const char *label, | |||
UInt_t position, EHeaderType type = kColumnHeader, | UInt_t position, EHeaderType type = kColumnHeader, | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 2 lines changed or added | |||
TGeoManager.h | TGeoManager.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoManager.h 26088 2008-11-06 09:16:43Z brun $ | // @(#)root/geom:$Id: TGeoManager.h 26991 2008-12-17 15:16:28Z brun $ | |||
// 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 343 | skipping to change at line 343 | |||
//--- geometry queries | //--- geometry queries | |||
TGeoNode *CrossBoundaryAndLocate(Bool_t downwards, TGeoNode *skipnode); | TGeoNode *CrossBoundaryAndLocate(Bool_t downwards, TGeoNode *skipnode); | |||
TGeoNode *FindNextBoundary(Double_t stepmax=TGeoShape::Big( ),const char *path="", Bool_t frombdr=kFALSE); | TGeoNode *FindNextBoundary(Double_t stepmax=TGeoShape::Big( ),const char *path="", Bool_t frombdr=kFALSE); | |||
TGeoNode *FindNextDaughterBoundary(Double_t *point, Double_ t *dir, Int_t &idaughter, Bool_t compmatrix=kFALSE); | TGeoNode *FindNextDaughterBoundary(Double_t *point, Double_ t *dir, Int_t &idaughter, Bool_t compmatrix=kFALSE); | |||
TGeoNode *FindNextBoundaryAndStep(Double_t stepmax=TGeoShap e::Big(), Bool_t compsafe=kFALSE); | TGeoNode *FindNextBoundaryAndStep(Double_t stepmax=TGeoShap e::Big(), Bool_t compsafe=kFALSE); | |||
TGeoNode *FindNode(Bool_t safe_start=kTRUE); | TGeoNode *FindNode(Bool_t safe_start=kTRUE); | |||
TGeoNode *FindNode(Double_t x, Double_t y, Double_t z); | TGeoNode *FindNode(Double_t x, Double_t y, Double_t z); | |||
Double_t *FindNormal(Bool_t forward=kTRUE); | Double_t *FindNormal(Bool_t forward=kTRUE); | |||
Double_t *FindNormalFast(); | Double_t *FindNormalFast(); | |||
TGeoNode *InitTrack(Double_t *point, Double_t *dir); | TGeoNode *InitTrack(const Double_t *point, const Double_t * dir); | |||
TGeoNode *InitTrack(Double_t x, Double_t y, Double_t z, Dou ble_t nx, Double_t ny, Double_t nz); | TGeoNode *InitTrack(Double_t x, Double_t y, Double_t z, Dou ble_t nx, Double_t ny, Double_t nz); | |||
void ResetState(); | void ResetState(); | |||
Double_t Safety(Bool_t inside=kFALSE); | Double_t Safety(Bool_t inside=kFALSE); | |||
TGeoNode *SearchNode(Bool_t downwards=kFALSE, const TGeoNod e *skipnode=0); | TGeoNode *SearchNode(Bool_t downwards=kFALSE, const TGeoNod e *skipnode=0); | |||
TGeoNode *Step(Bool_t is_geom=kTRUE, Bool_t cross=kTRUE); | TGeoNode *Step(Bool_t is_geom=kTRUE, Bool_t cross=kTRUE); | |||
void DisableInactiveVolumes() {fActivity=kTRUE;} | void DisableInactiveVolumes() {fActivity=kTRUE;} | |||
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;} | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TGeoNavigator.h | TGeoNavigator.h | |||
---|---|---|---|---|
// @(#)root/geom:$Id: TGeoNavigator.h 25777 2008-10-10 10:37:48Z brun $ | // @(#)root/geom:$Id: TGeoNavigator.h 26991 2008-12-17 15:16:28Z brun $ | |||
// Author: Mihaela Gheata 30/05/07 | // Author: Mihaela Gheata 30/05/07 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 113 | skipping to change at line 113 | |||
Int_t GetNmany() const {return fNmany;} | Int_t GetNmany() const {return fNmany;} | |||
//--- geometry queries | //--- geometry queries | |||
TGeoNode *CrossBoundaryAndLocate(Bool_t downwards, TGeoNode *skipnode); | TGeoNode *CrossBoundaryAndLocate(Bool_t downwards, TGeoNode *skipnode); | |||
TGeoNode *FindNextBoundary(Double_t stepmax=TGeoShape::Big( ),const char *path="", Bool_t frombdr=kFALSE); | TGeoNode *FindNextBoundary(Double_t stepmax=TGeoShape::Big( ),const char *path="", Bool_t frombdr=kFALSE); | |||
TGeoNode *FindNextDaughterBoundary(Double_t *point, Double_ t *dir, Int_t &idaughter, Bool_t compmatrix=kFALSE); | TGeoNode *FindNextDaughterBoundary(Double_t *point, Double_ t *dir, Int_t &idaughter, Bool_t compmatrix=kFALSE); | |||
TGeoNode *FindNextBoundaryAndStep(Double_t stepmax=TGeoShap e::Big(), Bool_t compsafe=kFALSE); | TGeoNode *FindNextBoundaryAndStep(Double_t stepmax=TGeoShap e::Big(), Bool_t compsafe=kFALSE); | |||
TGeoNode *FindNode(Bool_t safe_start=kTRUE); | TGeoNode *FindNode(Bool_t safe_start=kTRUE); | |||
TGeoNode *FindNode(Double_t x, Double_t y, Double_t z); | TGeoNode *FindNode(Double_t x, Double_t y, Double_t z); | |||
Double_t *FindNormal(Bool_t forward=kTRUE); | Double_t *FindNormal(Bool_t forward=kTRUE); | |||
Double_t *FindNormalFast(); | Double_t *FindNormalFast(); | |||
TGeoNode *InitTrack(Double_t *point, Double_t *dir); | TGeoNode *InitTrack(const Double_t *point, const Double_t * dir); | |||
TGeoNode *InitTrack(Double_t x, Double_t y, Double_t z, Dou ble_t nx, Double_t ny, Double_t nz); | TGeoNode *InitTrack(Double_t x, Double_t y, Double_t z, Dou ble_t nx, Double_t ny, Double_t nz); | |||
void ResetState(); | void ResetState(); | |||
void ResetAll(); | void ResetAll(); | |||
Double_t Safety(Bool_t inside=kFALSE); | Double_t Safety(Bool_t inside=kFALSE); | |||
TGeoNode *SearchNode(Bool_t downwards=kFALSE, const TGeoNod e *skipnode=0); | TGeoNode *SearchNode(Bool_t downwards=kFALSE, const TGeoNod e *skipnode=0); | |||
TGeoNode *Step(Bool_t is_geom=kTRUE, Bool_t cross=kTRUE); | TGeoNode *Step(Bool_t is_geom=kTRUE, Bool_t cross=kTRUE); | |||
const Double_t *GetLastPoint() const {return fLastPoint;} | const Double_t *GetLastPoint() const {return fLastPoint;} | |||
Int_t GetVirtualLevel(); | Int_t GetVirtualLevel(); | |||
Bool_t GotoSafeLevel(); | Bool_t GotoSafeLevel(); | |||
Int_t GetSafeLevel() const; | Int_t GetSafeLevel() const; | |||
skipping to change at line 166 | skipping to change at line 166 | |||
const Double_t *GetCurrentPoint() const {return fPoint;} | const Double_t *GetCurrentPoint() const {return fPoint;} | |||
const Double_t *GetCurrentDirection() const {return fDirection;} | const Double_t *GetCurrentDirection() const {return fDirection;} | |||
TGeoVolume *GetCurrentVolume() const {return fCurrentNode->Ge tVolume();} | TGeoVolume *GetCurrentVolume() const {return fCurrentNode->Ge tVolume();} | |||
const Double_t *GetCldirChecked() const {return fCldirChecked;} | const Double_t *GetCldirChecked() const {return fCldirChecked;} | |||
const Double_t *GetCldir() const {return fCldir;} | const Double_t *GetCldir() const {return fCldir;} | |||
// Double_t GetNormalChecked() const {return fNormalChecked ;} | // Double_t GetNormalChecked() const {return fNormalChecked ;} | |||
const Double_t *GetNormal() const {return fNormal;} | const Double_t *GetNormal() const {return fNormal;} | |||
Int_t GetLevel() const {return fLevel;} | Int_t GetLevel() const {return fLevel;} | |||
const char *GetPath() const; | const char *GetPath() const; | |||
Int_t GetStackLevel() const {return fCache->GetStack Level();} | Int_t GetStackLevel() const {return fCache->GetStack Level();} | |||
void SetCurrentPoint(Double_t *point) {memcpy(fPoint,p oint,3*sizeof(Double_t));} | void SetCurrentPoint(const Double_t *point) {memcpy(fP oint,point,3*sizeof(Double_t));} | |||
void SetCurrentPoint(Double_t x, Double_t y, Double_t z) { | void SetCurrentPoint(Double_t x, Double_t y, Double_t z) { | |||
fPoint[0]=x; fPoint[1]=y; fPoint[2]=z;} | fPoint[0]=x; fPoint[1]=y; fPoint[2]=z;} | |||
void SetLastPoint(Double_t x, Double_t y, Double_t z) { | void SetLastPoint(Double_t x, Double_t y, Double_t z) { | |||
fLastPoint[0]=x; fLastPoint[1]=y; fLast Point[2]=z;} | fLastPoint[0]=x; fLastPoint[1]=y; fLast Point[2]=z;} | |||
void SetCurrentDirection(Double_t *dir) {memcpy(fDirec tion,dir,3*sizeof(Double_t));} | void SetCurrentDirection(const Double_t *dir) {memcpy( fDirection,dir,3*sizeof(Double_t));} | |||
void SetCurrentDirection(Double_t nx, Double_t ny, Dou ble_t nz) { | void SetCurrentDirection(Double_t nx, Double_t ny, Dou ble_t nz) { | |||
fDirection[0]=nx; fDirection[1]=ny; fDi rection[2]=nz;} | fDirection[0]=nx; fDirection[1]=ny; fDi rection[2]=nz;} | |||
// void SetNormalChecked(Double_t norm) {fNormalChecked =norm;} | // void SetNormalChecked(Double_t norm) {fNormalChecked =norm;} | |||
void SetCldirChecked(Double_t *dir) {memcpy(fCldirChec ked, dir, 3*sizeof(Double_t));} | void SetCldirChecked(Double_t *dir) {memcpy(fCldirChec ked, dir, 3*sizeof(Double_t));} | |||
//--- point/vector reference frame conversion | //--- point/vector reference frame conversion | |||
void LocalToMaster(const Double_t *local, Double_t *ma ster) const {fCache->LocalToMaster(local, master);} | void LocalToMaster(const Double_t *local, Double_t *ma ster) const {fCache->LocalToMaster(local, master);} | |||
void LocalToMasterVect(const Double_t *local, Double_t *master) const {fCache->LocalToMasterVect(local, master);} | void LocalToMasterVect(const Double_t *local, Double_t *master) const {fCache->LocalToMasterVect(local, master);} | |||
void LocalToMasterBomb(const Double_t *local, Double_t *master) const {fCache->LocalToMasterBomb(local, master);} | void LocalToMasterBomb(const Double_t *local, Double_t *master) const {fCache->LocalToMasterBomb(local, master);} | |||
void MasterToLocal(const Double_t *master, Double_t *l ocal) const {fCache->MasterToLocal(master, local);} | void MasterToLocal(const Double_t *master, Double_t *l ocal) const {fCache->MasterToLocal(master, local);} | |||
End of changes. 4 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||
TGlobal.h | TGlobal.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TGlobal.h 24077 2008-05-31 19:39:09Z brun $ | // @(#)root/meta:$Id: TGlobal.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 13/11/95 | // Author: Rene Brun 13/11/95 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 34 | skipping to change at line 34 | |||
#include "TDictionary.h" | #include "TDictionary.h" | |||
#endif | #endif | |||
class TGlobal : public TDictionary { | class TGlobal : public TDictionary { | |||
private: | private: | |||
DataMemberInfo_t *fInfo; //pointer to CINT data member info | DataMemberInfo_t *fInfo; //pointer to CINT data member info | |||
public: | public: | |||
TGlobal(DataMemberInfo_t *info = 0); | TGlobal(DataMemberInfo_t *info = 0); | |||
TGlobal (const TGlobal &); | ||||
TGlobal &operator=(const TGlobal &); | ||||
virtual ~TGlobal(); | virtual ~TGlobal(); | |||
Int_t GetArrayDim() const; | Int_t GetArrayDim() const; | |||
Int_t GetMaxIndex(Int_t dim) const; | Int_t GetMaxIndex(Int_t dim) const; | |||
void *GetAddress() const; | void *GetAddress() const; | |||
const char *GetTypeName() const; | const char *GetTypeName() const; | |||
const char *GetFullTypeName() const; | const char *GetFullTypeName() const; | |||
Long_t Property() const; | Long_t Property() const; | |||
ClassDef(TGlobal,0) //Global variable class | ClassDef(TGlobal,0) //Global variable class | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TH1.h | TH1.h | |||
---|---|---|---|---|
// @(#)root/hist:$Id: TH1.h 25487 2008-09-22 12:44:13Z moneta $ | // @(#)root/hist:$Id: TH1.h 26511 2008-11-28 15:35:51Z moneta $ | |||
// Author: Rene Brun 26/12/94 | // Author: Rene Brun 26/12/94 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 139 | skipping to change at line 139 | |||
// TH1 status bits | // TH1 status bits | |||
enum { | enum { | |||
kNoStats = BIT(9), // don't draw stats box | kNoStats = BIT(9), // don't draw stats box | |||
kUserContour = BIT(10), // user specified contour levels | kUserContour = BIT(10), // user specified contour levels | |||
kCanRebin = BIT(11), // can rebin axis | kCanRebin = BIT(11), // can rebin axis | |||
kLogX = BIT(15), // X-axis in log scale | kLogX = BIT(15), // X-axis in log scale | |||
kIsZoomed = BIT(16), // bit set when zooming on Y axis | kIsZoomed = BIT(16), // bit set when zooming on Y axis | |||
kNoTitle = BIT(17), // don't draw the histogram title | kNoTitle = BIT(17), // don't draw the histogram title | |||
kIsAverage = BIT(18) // Bin contents are average (used by Add) | kIsAverage = BIT(18) // Bin contents are average (used by Add) | |||
}; | }; | |||
// size of statistics data (size of array used in GetStats()/ PutStats | ||||
) | ||||
// s[0] = sumw s[1] = sumw2 | ||||
// s[2] = sumwx s[3] = sumwx2 | ||||
// s[4] = sumwy s[5] = sumwy2 s[6] = sumwxy | ||||
// s[7] = sumwz s[8] = sumwz2 s[9] = sumwxz s[10] = sumwyz | ||||
// s[11] = sumwt s[12] = sumwt2 (11 and 12 used onl | ||||
y by TProfile3D) | ||||
enum { | ||||
kNstat = 13 // size of statistics data (up to TProfile3D) | ||||
}; | ||||
TH1(const TH1&); | TH1(const TH1&); | |||
virtual ~TH1(); | virtual ~TH1(); | |||
virtual void Add(TF1 *h1, Double_t c1=1, Option_t *option=""); | virtual void Add(TF1 *h1, Double_t c1=1, Option_t *option=""); | |||
virtual void Add(const TH1 *h1, Double_t c1=1); | virtual void Add(const TH1 *h1, Double_t c1=1); | |||
virtual void Add(const TH1 *h, const TH1 *h2, Double_t c1=1, Double_ t c2=1); // *MENU* | virtual void Add(const TH1 *h, const TH1 *h2, Double_t c1=1, Double_ t c2=1); // *MENU* | |||
virtual void AddBinContent(Int_t bin); | virtual void AddBinContent(Int_t bin); | |||
virtual void AddBinContent(Int_t bin, Double_t w); | virtual void AddBinContent(Int_t bin, Double_t w); | |||
static void AddDirectory(Bool_t add=kTRUE); | static void AddDirectory(Bool_t add=kTRUE); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 12 lines changed or added | |||
THtml.h | THtml.h | |||
---|---|---|---|---|
// @(#)root/html:$Id: THtml.h 25528 2008-09-25 09:10:11Z axel $ | // @(#)root/html:$Id: THtml.h 26944 2008-12-16 10:27:55Z brun $ | |||
// Author: Nenad Buncic 18/10/95 | // Author: Nenad Buncic 18/10/95 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 40 | skipping to change at line 40 | |||
#endif | #endif | |||
#ifndef ROOT_TExMap | #ifndef ROOT_TExMap | |||
#include "TExMap.h" | #include "TExMap.h" | |||
#endif | #endif | |||
#include <map> | #include <map> | |||
class TClass; | class TClass; | |||
class TClassDocInfo; | class TClassDocInfo; | |||
class TGClient; | ||||
class TVirtualMutex; | class TVirtualMutex; | |||
class THtml: public TObject { | class THtml: public TObject { | |||
public: | public: | |||
//______________________________________________________________ | //______________________________________________________________ | |||
// Helper base class. | // Helper base class. | |||
class THelperBase: public TObject { | class THelperBase: public TObject { | |||
public: | public: | |||
THelperBase(): fHtml(0) {} | THelperBase(): fHtml(0) {} | |||
virtual ~THelperBase(); | virtual ~THelperBase(); | |||
skipping to change at line 107 | skipping to change at line 108 | |||
class TFileSysDir; | class TFileSysDir; | |||
class TFileSysDB; | class TFileSysDB; | |||
//______________________________________________________________ | //______________________________________________________________ | |||
// Utility class representing a directory entry | // Utility class representing a directory entry | |||
class TFileSysEntry: public TObject { | class TFileSysEntry: public TObject { | |||
public: | public: | |||
TFileSysEntry(const char* name, TFileSysDir* parent): | TFileSysEntry(const char* name, TFileSysDir* parent): | |||
fName(name), fParent(parent), fLevel(parent ? parent->GetLevel() + 1 : 0) {} | fName(name), fParent(parent), fLevel(parent ? parent->GetLevel() + 1 : 0) {} | |||
const char* GetName() const { return fName; } | const char* GetName() const { return fName; } | |||
virtual ULong_t Hash() const { return fName.Hash(); } | virtual ULong_t Hash() const { return fName.Hash(); } | |||
void GetFullName(TString& fullname) const { | virtual void GetFullName(TString& fullname, Bool_t asIncluded) const | |||
fullname = ""; | { | |||
if (fParent) { | if (fParent) { | |||
fParent->GetFullName(fullname); | fParent->GetFullName(fullname, asIncluded); | |||
fullname += "/"; | fullname += "/"; | |||
} | } else | |||
fullname = ""; | ||||
fullname += fName; | fullname += fName; | |||
} | } | |||
TFileSysDir* GetParent() const { return fParent; } | TFileSysDir* GetParent() const { return fParent; } | |||
Int_t GetLevel() const { return fLevel; } | Int_t GetLevel() const { return fLevel; } | |||
private: | protected: | |||
TString fName; // name of the element | TString fName; // name of the element | |||
TFileSysDir* fParent; // parent directory | TFileSysDir* fParent; // parent directory | |||
Int_t fLevel; // level of directory | Int_t fLevel; // level of directory | |||
ClassDef(TFileSysEntry, 0); // an entry of the local file system | ClassDef(TFileSysEntry, 0); // an entry of the local file system | |||
}; | }; | |||
//______________________________________________________________ | //______________________________________________________________ | |||
// Utility class representing a directory | // Utility class representing a directory | |||
class TFileSysDir: public TFileSysEntry { | class TFileSysDir: public TFileSysEntry { | |||
public: | public: | |||
TFileSysDir(const char* name, TFileSysDir* parent): | TFileSysDir(const char* name, TFileSysDir* parent): | |||
TFileSysEntry(name, parent) | TFileSysEntry(name, parent) | |||
{ fFiles.SetOwner(); fDirs.SetOwner(); } | { fFiles.SetOwner(); fDirs.SetOwner(); } | |||
const TList* GetFiles() const { return &fFiles; } | const TList* GetFiles() const { return &fFiles; } | |||
const TList* GetSubDirs() const { return &fDirs; } | const TList* GetSubDirs() const { return &fDirs; } | |||
void Recurse(TFileSysDB* db, const char* path); | void Recurse(TFileSysDB* db, const char* path); | |||
private: | protected: | |||
TList fFiles; | TList fFiles; | |||
TList fDirs; | TList fDirs; | |||
ClassDef(TFileSysDir, 0); // an directory if the local file system | ClassDef(TFileSysDir, 0); // an directory of the local file system | |||
}; | ||||
//______________________________________________________________ | ||||
// Utility class representing a root directory as specified in | ||||
// THtml::GetInputPath() | ||||
class TFileSysRoot: public TFileSysDir { | ||||
public: | ||||
TFileSysRoot(const char* name, TFileSysDB* parent): | ||||
TFileSysDir(name, parent) {} | ||||
void GetFullName(TString& fullname, Bool_t asIncluded) const { | ||||
// prepend directory part of THtml::GetInputPath() only | ||||
// if !asIncluded | ||||
fullname = ""; | ||||
if (!asIncluded) | ||||
fullname += fName; | ||||
} | ||||
ClassDef(TFileSysRoot, 0); // an root directory of the local file sys | ||||
tem | ||||
}; | }; | |||
//______________________________________________________________ | //______________________________________________________________ | |||
// Utility class representing a directory | // Utility class representing a directory | |||
class TFileSysDB: public TFileSysDir { | class TFileSysDB: public TFileSysDir { | |||
public: | public: | |||
TFileSysDB(const char* path, const char* ignore, Int_t maxdirlevel): | TFileSysDB(const char* path, const char* ignore, Int_t maxdirlevel): | |||
TFileSysDir(path, 0), fIgnorePath(ignore), fMaxLevel(maxdirlevel) | TFileSysDir(path, 0), fIgnorePath(ignore), fMaxLevel(maxdirlevel) | |||
{ Fill(); } | { Fill(); } | |||
TExMap& GetMapIno() { return fMapIno; } | TExMap& GetMapIno() { return fMapIno; } | |||
THashTable& GetEntries() { return fEntries; } | THashTable& GetEntries() { return fEntries; } | |||
const TString& GetIgnore() const { return fIgnorePath; } | const TString& GetIgnore() const { return fIgnorePath; } | |||
Int_t GetMaxLevel() const { return fMaxLevel; } | Int_t GetMaxLevel() const { return fMaxLevel; } | |||
protected: | protected: | |||
void Fill() { Recurse(this, GetName()); } | void Fill(); | |||
private: | private: | |||
TExMap fMapIno; // inode to TFileSysDir map, to detect softlinks | TExMap fMapIno; // inode to TFileSysDir map, to detect softlinks | |||
THashTable fEntries; // hash map of all filenames without paths | THashTable fEntries; // hash map of all filenames without paths | |||
TString fIgnorePath; // regexp of path to ignore while building entr y tree | TString fIgnorePath; // regexp of path to ignore while building entr y tree | |||
Int_t fMaxLevel; // maximum level of directory nesting | Int_t fMaxLevel; // maximum level of directory nesting | |||
ClassDef(TFileSysDB, 0); // instance of file system data | ClassDef(TFileSysDB, 0); // instance of file system data | |||
}; | }; | |||
//______________________________________________________________ | //______________________________________________________________ | |||
skipping to change at line 202 | skipping to change at line 221 | |||
TString fIncludePath; // directory prefixes (":" delimited ) to remove when quoting include files | TString fIncludePath; // directory prefixes (":" delimited ) to remove when quoting include files | |||
TString fIgnorePath; // regexp pattern for directories to ignore ("\b(CVS|\.svn)\b") for ROOT | TString fIgnorePath; // regexp pattern for directories to ignore ("\b(CVS|\.svn)\b") for ROOT | |||
TString fDocPath; // subdir to check for module docume ntation ("doc" for ROOT) | TString fDocPath; // subdir to check for module docume ntation ("doc" for ROOT) | |||
TString fMacroPath; // subdir of fDocPath for macros run via the Begin/End Macro directive; ("macros" for ROOT) | TString fMacroPath; // subdir of fDocPath for macros run via the Begin/End Macro directive; ("macros" for ROOT) | |||
TString fDotDir; // directory of GraphViz's dot binar y | TString fDotDir; // directory of GraphViz's dot binar y | |||
TString fEtcDir; // directory containing auxiliary fi les | TString fEtcDir; // directory containing auxiliary fi les | |||
TString fOutputDir; // output directory | TString fOutputDir; // output directory | |||
}; | }; | |||
public: | public: | |||
enum EConvertOutput { | ||||
kNoOutput, // do not run the source, do not show its output | ||||
kInterpretedOutput, // interpret the source and show output | ||||
kCompiledOutput, // run the source through ACLiC and show output | ||||
kForceOutput = 0x10, // re-generate the output files (canvas PNGs) | ||||
kSeparateProcessOutput = 0x20 // run the script in a separate process | ||||
}; | ||||
THtml(); | THtml(); | |||
virtual ~THtml(); | virtual ~THtml(); | |||
static void LoadAllLibs(); | static void LoadAllLibs(); | |||
// Functions to generate documentation | // Functions to generate documentation | |||
void Convert(const char *filename, const char *title, | void Convert(const char *filename, const char *title, | |||
const char *dirname = "", const char *relpath="../ | const char *dirname = "", const char *relpath="../ | |||
"); | ", | |||
Int_t includeOutput = kNoOutput, | ||||
const char* context = ""); | ||||
void CreateHierarchy(); | void CreateHierarchy(); | |||
void MakeAll(Bool_t force=kFALSE, const char *filter="*", | void MakeAll(Bool_t force=kFALSE, const char *filter="*", | |||
int numthreads = 1); | int numthreads = 1); | |||
void MakeClass(const char *className, Bool_t force=kFALSE); | void MakeClass(const char *className, Bool_t force=kFALSE); | |||
void MakeIndex(const char *filter="*"); | void MakeIndex(const char *filter="*"); | |||
void MakeTree(const char *className, Bool_t force=kFALSE); | void MakeTree(const char *className, Bool_t force=kFALSE); | |||
// Configuration setters | // Configuration setters | |||
void SetModuleDefinition(const TModuleDefinition& md); | void SetModuleDefinition(const TModuleDefinition& md); | |||
void SetFileDefinition(const TFileDefinition& fd); | void SetFileDefinition(const TFileDefinition& fd); | |||
skipping to change at line 308 | skipping to change at line 337 | |||
TFileSysDB* GetLocalFiles() const { if (!fLocalFiles) SetLocalFi les(); return fLocalFiles; } | TFileSysDB* GetLocalFiles() const { if (!fLocalFiles) SetLocalFi les(); return fLocalFiles; } | |||
TVirtualMutex* GetMakeClassMutex() const { return fMakeClassMutex; } | TVirtualMutex* GetMakeClassMutex() const { return fMakeClassMutex; } | |||
virtual void GetModuleNameForClass(TString& module, TClass* cl) c onst; | virtual void GetModuleNameForClass(TString& module, TClass* cl) c onst; | |||
const PathInfo_t& GetPathInfo() const { return fPathInfo; } | const PathInfo_t& GetPathInfo() const { return fPathInfo; } | |||
Bool_t HaveDot(); | Bool_t HaveDot(); | |||
void HelperDeleted(THelperBase* who); | void HelperDeleted(THelperBase* who); | |||
static Bool_t IsNamespace(const TClass*cl); | static Bool_t IsNamespace(const TClass*cl); | |||
void SetDeclFileName(TClass* cl, const char* filename); | void SetDeclFileName(TClass* cl, const char* filename); | |||
void SetFoundDot(Bool_t found = kTRUE); | void SetFoundDot(Bool_t found = kTRUE); | |||
void SetImplFileName(TClass* cl, const char* filename); | void SetImplFileName(TClass* cl, const char* filename); | |||
void SetBatch(Bool_t batch = kTRUE) { fBatch = batch; } | ||||
Bool_t IsBatch() const { return fBatch; } | ||||
// unused | // unused | |||
void ReplaceSpecialChars(std::ostream&, const char*) { | void ReplaceSpecialChars(std::ostream&, const char*) { | |||
Error("ReplaceSpecialChars", | Error("ReplaceSpecialChars", | |||
"Removed, call TDocOutput::ReplaceSpecialChars() instead!"); } | "Removed, call TDocOutput::ReplaceSpecialChars() instead!"); } | |||
void SetEscape(char /*esc*/ ='\\') {} // for backward com p | void SetEscape(char /*esc*/ ='\\') {} // for backward com p | |||
protected: | protected: | |||
struct DocSyntax_t { | struct DocSyntax_t { | |||
TString fClassDocTag; // tag for class documentation | TString fClassDocTag; // tag for class documentation | |||
TString fAuthorTag; // tag for author | TString fAuthorTag; // tag for author | |||
skipping to change at line 367 | skipping to change at line 397 | |||
static void *MakeClassThreaded(void* info); | static void *MakeClassThreaded(void* info); | |||
protected: | protected: | |||
TString fCounter; // counter string | TString fCounter; // counter string | |||
TString fCounterFormat; // counter printf-like format | TString fCounterFormat; // counter printf-like format | |||
TString fProductName; // name of the product to document | TString fProductName; // name of the product to document | |||
TIter *fThreadedClassIter; // fClasses iterator for MakeClassThr eaded | TIter *fThreadedClassIter; // fClasses iterator for MakeClassThr eaded | |||
Int_t fThreadedClassCount; // counter of processed classes for MakeClassThreaded | Int_t fThreadedClassCount; // counter of processed classes for MakeClassThreaded | |||
TVirtualMutex *fMakeClassMutex; // Mutex for MakeClassThreaded | TVirtualMutex *fMakeClassMutex; // Mutex for MakeClassThreaded | |||
TGClient *fGClient; // gClient, cached and queried through CINT | ||||
DocSyntax_t fDocSyntax; // doc syntax configuration | DocSyntax_t fDocSyntax; // doc syntax configuration | |||
LinkInfo_t fLinkInfo; // link (URL) configuration | LinkInfo_t fLinkInfo; // link (URL) configuration | |||
OutputStyle_t fOutputStyle; // output style configuration | OutputStyle_t fOutputStyle; // output style configuration | |||
mutable PathInfo_t fPathInfo; // path configuration | mutable PathInfo_t fPathInfo; // path configuration | |||
DocEntityInfo_t fDocEntityInfo; // data for documented entities | DocEntityInfo_t fDocEntityInfo; // data for documented entities | |||
mutable TPathDefinition *fPathDef; // object translating classes to modu le names | mutable TPathDefinition *fPathDef; // object translating classes to modu le names | |||
mutable TModuleDefinition *fModuleDef; // object translating classes to module names | mutable TModuleDefinition *fModuleDef; // object translating classes to module names | |||
mutable TFileDefinition* fFileDef; // object translating classes to file names | mutable TFileDefinition* fFileDef; // object translating classes to file names | |||
mutable TFileSysDB *fLocalFiles; // files found locally for a given s ource path | mutable TFileSysDB *fLocalFiles; // files found locally for a given s ource path | |||
Bool_t fBatch; // Whether to enable GUI output | ||||
ClassDef(THtml,0) //Convert class(es) into HTML file(s) | ClassDef(THtml,0) //Convert class(es) into HTML file(s) | |||
}; | }; | |||
R__EXTERN THtml *gHtml; | R__EXTERN THtml *gHtml; | |||
#endif | #endif | |||
End of changes. 14 change blocks. | ||||
12 lines changed or deleted | 46 lines changed or added | |||
TInterpreter.h | TInterpreter.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TInterpreter.h 25283 2008-08-27 16:56:42Z pcanal $ | // @(#)root/meta:$Id: TInterpreter.h 26888 2008-12-12 21:43:12Z 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 34 | skipping to change at line 34 | |||
#ifndef ROOT_TDictionary | #ifndef ROOT_TDictionary | |||
#include "TDictionary.h" | #include "TDictionary.h" | |||
#endif | #endif | |||
class TClass; | class TClass; | |||
class TEnv; | class TEnv; | |||
class TFunction; | class TFunction; | |||
class TMethod; | class TMethod; | |||
class TObjArray; | class TObjArray; | |||
class TVirtualMutex; | class TVirtualMutex; | |||
extern "C" { struct G__value; } | ||||
R__EXTERN TVirtualMutex *gCINTMutex; | R__EXTERN TVirtualMutex *gCINTMutex; | |||
class TInterpreter : public TNamed { | class TInterpreter : public TNamed { | |||
protected: | protected: | |||
virtual void Execute(TMethod *method, TObjArray *params, int *error = 0) = 0; | virtual void Execute(TMethod *method, TObjArray *params, int *error = 0) = 0; | |||
public: | public: | |||
enum EErrorCode { | enum EErrorCode { | |||
skipping to change at line 151 | skipping to change at line 152 | |||
virtual void SetRTLD_LAZY() const {;} | virtual void SetRTLD_LAZY() const {;} | |||
virtual void SetTempLevel(int /* val */) const {;} | virtual void SetTempLevel(int /* val */) const {;} | |||
virtual int UnloadFile(const char * /* path */) const {return 0;} | virtual int UnloadFile(const char * /* path */) const {return 0;} | |||
// G__CallFunc interface | // G__CallFunc interface | |||
virtual void CallFunc_Delete(void * /* func */) const {;} | virtual void CallFunc_Delete(void * /* func */) const {;} | |||
virtual void CallFunc_Exec(CallFunc_t * /* func */, void * /* address */) const {;} | virtual void CallFunc_Exec(CallFunc_t * /* func */, void * /* address */) const {;} | |||
virtual Long_t CallFunc_ExecInt(CallFunc_t * /* func */, void * /* ad dress */) const {return 0;} | virtual Long_t CallFunc_ExecInt(CallFunc_t * /* func */, void * /* ad dress */) const {return 0;} | |||
virtual Long_t CallFunc_ExecInt64(CallFunc_t * /* func */, void * /* address */) const {return 0;} | virtual Long_t CallFunc_ExecInt64(CallFunc_t * /* func */, void * /* address */) const {return 0;} | |||
virtual Double_t CallFunc_ExecDouble(CallFunc_t * /* func */, void * /* address */) const {return 0;} | virtual Double_t CallFunc_ExecDouble(CallFunc_t * /* func */, void * /* address */) const {return 0;} | |||
virtual void *CallFunc_Factory() const {return 0;} | virtual CallFunc_t *CallFunc_Factory() const {return 0;} | |||
virtual void *CallFunc_FactoryCopy(CallFunc_t * /* func */) const {retu | virtual CallFunc_t *CallFunc_FactoryCopy(CallFunc_t * /* func */) cons | |||
rn 0;} | t {return 0;} | |||
virtual void *CallFunc_FactoryMethod(CallFunc_t * /* func */) const {re | virtual MethodInfo_t *CallFunc_FactoryMethod(CallFunc_t * /* func */) co | |||
turn 0;} | nst {return 0;} | |||
virtual void CallFunc_Init(CallFunc_t * /* func */) const {;} | virtual void CallFunc_Init(CallFunc_t * /* func */) const {;} | |||
virtual bool CallFunc_IsValid(CallFunc_t * /* func */) const {return 0 ;} | virtual bool CallFunc_IsValid(CallFunc_t * /* func */) const {return 0 ;} | |||
virtual void CallFunc_ResetArg(CallFunc_t * /* func */) const {;} | virtual void CallFunc_ResetArg(CallFunc_t * /* func */) const {;} | |||
virtual void CallFunc_SetArg(CallFunc_t * /*func */, Long_t /* param * /) const {;} | virtual void CallFunc_SetArg(CallFunc_t * /*func */, Long_t /* param * /) const {;} | |||
virtual void CallFunc_SetArg(CallFunc_t * /* func */, Double_t /* para m */) const {;} | virtual void CallFunc_SetArg(CallFunc_t * /* func */, Double_t /* para m */) const {;} | |||
virtual void CallFunc_SetArg(CallFunc_t * /* func */, Long64_t /* para m */) const {;} | virtual void CallFunc_SetArg(CallFunc_t * /* func */, Long64_t /* para m */) const {;} | |||
virtual void CallFunc_SetArg(CallFunc_t * /* func */, ULong64_t /* par am */) const {;} | virtual void CallFunc_SetArg(CallFunc_t * /* func */, ULong64_t /* par am */) const {;} | |||
virtual void CallFunc_SetArgArray(CallFunc_t * /* func */, Long_t * /* paramArr */, Int_t /* nparam */) const {;} | virtual void CallFunc_SetArgArray(CallFunc_t * /* func */, Long_t * /* paramArr */, Int_t /* nparam */) const {;} | |||
virtual void CallFunc_SetArgs(CallFunc_t * /* func */, const char * /* param */) const {;} | virtual void CallFunc_SetArgs(CallFunc_t * /* func */, const char * /* param */) const {;} | |||
virtual void CallFunc_SetFunc(CallFunc_t * /* func */, ClassInfo_t * / * info */, const char * /* method */, const char * /* params */, Long_t * / * Offset */) const {;} | virtual void CallFunc_SetFunc(CallFunc_t * /* func */, ClassInfo_t * / * info */, const char * /* method */, const char * /* params */, Long_t * / * Offset */) const {;} | |||
virtual void CallFunc_SetFunc(CallFunc_t * /* func */, MethodInfo_t * /* info */) const {;} | virtual void CallFunc_SetFunc(CallFunc_t * /* func */, MethodInfo_t * /* info */) const {;} | |||
virtual void CallFunc_SetFuncProto(CallFunc_t * /* func */, ClassInfo_ t * /* info */, const char * /* method */, const char * /* proto */, Long_t * /* Offset */) const {;} | virtual void CallFunc_SetFuncProto(CallFunc_t * /* func */, ClassInfo_ t * /* info */, const char * /* method */, const char * /* proto */, Long_t * /* Offset */) const {;} | |||
// G__ClassInfo interface | // G__ClassInfo interface | |||
virtual Long_t ClassInfo_ClassProperty(ClassInfo_t * /* info */) const { return 0;} | virtual Long_t ClassInfo_ClassProperty(ClassInfo_t * /* info */) const { return 0;} | |||
virtual void ClassInfo_Delete(ClassInfo_t * /* info */) const {;} | virtual void ClassInfo_Delete(ClassInfo_t * /* info */) const {;} | |||
virtual void ClassInfo_Delete(ClassInfo_t * /* info */, void * /* aren a */) const {;} | virtual void ClassInfo_Delete(ClassInfo_t * /* info */, void * /* aren a */) const {;} | |||
virtual void ClassInfo_DeleteArray(ClassInfo_t * /* info */, void * /* arena */, bool /* dtorOnly */) const {;} | virtual void ClassInfo_DeleteArray(ClassInfo_t * /* info */, void * /* arena */, bool /* dtorOnly */) const {;} | |||
virtual void ClassInfo_Destruct(ClassInfo_t * /* info */, void * /* ar ena */) const {;} | virtual void ClassInfo_Destruct(ClassInfo_t * /* info */, void * /* ar ena */) const {;} | |||
virtual void *ClassInfo_Factory() const {return 0;} | virtual ClassInfo_t *ClassInfo_Factory() const {return 0;} | |||
virtual void *ClassInfo_Factory(ClassInfo_t * /* cl */) const {return 0 | virtual ClassInfo_t *ClassInfo_Factory(G__value * /* value */) const {r | |||
;} | eturn 0;} | |||
virtual void *ClassInfo_Factory(const char * /* name */) const {return | virtual ClassInfo_t *ClassInfo_Factory(ClassInfo_t * /* cl */) const {r | |||
0;} | eturn 0;} | |||
virtual ClassInfo_t *ClassInfo_Factory(const char * /* name */) const { | ||||
return 0;} | ||||
virtual int ClassInfo_GetMethodNArg(ClassInfo_t * /* info */, const c har * /* method */,const char * /* proto */) const {return 0;} | virtual int ClassInfo_GetMethodNArg(ClassInfo_t * /* info */, const c har * /* method */,const char * /* proto */) const {return 0;} | |||
virtual bool ClassInfo_HasDefaultConstructor(ClassInfo_t * /* info */) const {return 0;} | virtual bool ClassInfo_HasDefaultConstructor(ClassInfo_t * /* info */) const {return 0;} | |||
virtual bool ClassInfo_HasMethod(ClassInfo_t * /* info */, const char * /* name */) const {return 0;} | virtual bool ClassInfo_HasMethod(ClassInfo_t * /* info */, const char * /* name */) const {return 0;} | |||
virtual void ClassInfo_Init(ClassInfo_t * /* info */, const char * /* funcname */) const {;} | virtual void ClassInfo_Init(ClassInfo_t * /* info */, const char * /* funcname */) const {;} | |||
virtual void ClassInfo_Init(ClassInfo_t * /* info */, int /* tagnum */ ) const {;} | virtual void ClassInfo_Init(ClassInfo_t * /* info */, int /* tagnum */ ) const {;} | |||
virtual bool ClassInfo_IsBase(ClassInfo_t * /* info */, const char * / * name */) const {return 0;} | virtual bool ClassInfo_IsBase(ClassInfo_t * /* info */, const char * / * name */) const {return 0;} | |||
virtual bool ClassInfo_IsEnum(const char * /* name */) const {return 0 ;} | virtual bool ClassInfo_IsEnum(const char * /* name */) const {return 0 ;} | |||
virtual bool ClassInfo_IsLoaded(ClassInfo_t * /* info */) const {retur n 0;} | virtual bool ClassInfo_IsLoaded(ClassInfo_t * /* info */) const {retur n 0;} | |||
virtual bool ClassInfo_IsValid(ClassInfo_t * /* info */) const {return 0;} | virtual bool ClassInfo_IsValid(ClassInfo_t * /* info */) const {return 0;} | |||
virtual bool ClassInfo_IsValidMethod(ClassInfo_t * /* info */, const c har * /* method */,const char * /* proto */, Long_t * /* offset */) const { return 0;} | virtual bool ClassInfo_IsValidMethod(ClassInfo_t * /* info */, const c har * /* method */,const char * /* proto */, Long_t * /* offset */) const { return 0;} | |||
skipping to change at line 203 | skipping to change at line 205 | |||
virtual int ClassInfo_Size(ClassInfo_t * /* info */) const {return 0; } | virtual int ClassInfo_Size(ClassInfo_t * /* info */) const {return 0; } | |||
virtual Long_t ClassInfo_Tagnum(ClassInfo_t * /* info */) const {return 0;} | virtual Long_t ClassInfo_Tagnum(ClassInfo_t * /* info */) const {return 0;} | |||
virtual const char *ClassInfo_FileName(ClassInfo_t * /* info */) const { return 0;} | virtual const char *ClassInfo_FileName(ClassInfo_t * /* info */) const { return 0;} | |||
virtual const char *ClassInfo_FullName(ClassInfo_t * /* info */) const { return 0;} | virtual const char *ClassInfo_FullName(ClassInfo_t * /* info */) const { return 0;} | |||
virtual const char *ClassInfo_Name(ClassInfo_t * /* info */) const {retu rn 0;} | virtual const char *ClassInfo_Name(ClassInfo_t * /* info */) const {retu rn 0;} | |||
virtual const char *ClassInfo_Title(ClassInfo_t * /* info */) const {ret urn 0;} | virtual const char *ClassInfo_Title(ClassInfo_t * /* info */) const {ret urn 0;} | |||
virtual const char *ClassInfo_TmpltName(ClassInfo_t * /* info */) const {return 0;} | virtual const char *ClassInfo_TmpltName(ClassInfo_t * /* info */) const {return 0;} | |||
// G__BaseClassInfo interface | // G__BaseClassInfo interface | |||
virtual void BaseClassInfo_Delete(BaseClassInfo_t * /* bcinfo */) cons t {;} | virtual void BaseClassInfo_Delete(BaseClassInfo_t * /* bcinfo */) cons t {;} | |||
virtual void *BaseClassInfo_Factory(ClassInfo_t * /* info */) const {re turn 0;} | virtual BaseClassInfo_t *BaseClassInfo_Factory(ClassInfo_t * /* info */ ) const {return 0;} | |||
virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */) const {return 0;} | virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */) const {return 0;} | |||
virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */, int / * onlyDirect */) const {return 0;} | virtual int BaseClassInfo_Next(BaseClassInfo_t * /* bcinfo */, int / * onlyDirect */) const {return 0;} | |||
virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t * /* bcinfo */) cons t {return 0;} | virtual Long_t BaseClassInfo_Offset(BaseClassInfo_t * /* bcinfo */) cons t {return 0;} | |||
virtual Long_t BaseClassInfo_Property(BaseClassInfo_t * /* bcinfo */) co nst {return 0;} | virtual Long_t BaseClassInfo_Property(BaseClassInfo_t * /* bcinfo */) co nst {return 0;} | |||
virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t * /* bcinfo */) cons t {return 0;} | virtual Long_t BaseClassInfo_Tagnum(BaseClassInfo_t * /* bcinfo */) cons t {return 0;} | |||
virtual const char *BaseClassInfo_FullName(BaseClassInfo_t * /* bcinfo * /) const {return 0;} | virtual const char *BaseClassInfo_FullName(BaseClassInfo_t * /* bcinfo * /) const {return 0;} | |||
virtual const char *BaseClassInfo_Name(BaseClassInfo_t * /* bcinfo */) c onst {return 0;} | virtual const char *BaseClassInfo_Name(BaseClassInfo_t * /* bcinfo */) c onst {return 0;} | |||
virtual const char *BaseClassInfo_TmpltName(BaseClassInfo_t * /* bcinfo */) const {return 0;} | virtual const char *BaseClassInfo_TmpltName(BaseClassInfo_t * /* bcinfo */) const {return 0;} | |||
// G__DataMemberInfo interface | // G__DataMemberInfo interface | |||
virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual int DataMemberInfo_ArrayDim(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual void DataMemberInfo_Delete(DataMemberInfo_t * /* dminfo */) co nst {;} | virtual void DataMemberInfo_Delete(DataMemberInfo_t * /* dminfo */) co nst {;} | |||
virtual void *DataMemberInfo_Factory(ClassInfo_t * /* clinfo */ = 0) co | virtual DataMemberInfo_t *DataMemberInfo_Factory(ClassInfo_t * /* clinf | |||
nst {return 0;} | o */ = 0) const {return 0;} | |||
virtual void *DataMemberInfo_FactoryCopy(DataMemberInfo_t * /* dminfo * | virtual DataMemberInfo_t *DataMemberInfo_FactoryCopy(DataMemberInfo_t * | |||
/) const {return 0;} | /* dminfo */) const {return 0;} | |||
virtual bool DataMemberInfo_IsValid(DataMemberInfo_t * /* dminfo */) c onst {return 0;} | virtual bool DataMemberInfo_IsValid(DataMemberInfo_t * /* dminfo */) c onst {return 0;} | |||
virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t * /* dminfo */, Int_t /* dim */) const {return 0;} | virtual int DataMemberInfo_MaxIndex(DataMemberInfo_t * /* dminfo */, Int_t /* dim */) const {return 0;} | |||
virtual int DataMemberInfo_Next(DataMemberInfo_t * /* dminfo */) cons t {return 0;} | virtual int DataMemberInfo_Next(DataMemberInfo_t * /* dminfo */) cons t {return 0;} | |||
virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t * /* dminfo */) co nst {return 0;} | virtual Long_t DataMemberInfo_Offset(DataMemberInfo_t * /* dminfo */) co nst {return 0;} | |||
virtual Long_t DataMemberInfo_Property(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual Long_t DataMemberInfo_Property(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual Long_t DataMemberInfo_TypeProperty(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual int DataMemberInfo_TypeSize(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual int DataMemberInfo_TypeSize(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual const char *DataMemberInfo_TypeName(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual const char *DataMemberInfo_TypeName(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual const char *DataMemberInfo_TypeTrueName(DataMemberInfo_t * /* dm info */) const {return 0;} | virtual const char *DataMemberInfo_TypeTrueName(DataMemberInfo_t * /* dm info */) const {return 0;} | |||
virtual const char *DataMemberInfo_Name(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual const char *DataMemberInfo_Name(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
virtual const char *DataMemberInfo_Title(DataMemberInfo_t * /* dminfo */ ) const {return 0;} | virtual const char *DataMemberInfo_Title(DataMemberInfo_t * /* dminfo */ ) const {return 0;} | |||
virtual const char *DataMemberInfo_ValidArrayIndex(DataMemberInfo_t * /* dminfo */) const {return 0;} | virtual const char *DataMemberInfo_ValidArrayIndex(DataMemberInfo_t * /* dminfo */) const {return 0;} | |||
// G__MethodInfo interface | // G__MethodInfo interface | |||
virtual void MethodInfo_CreateSignature(MethodInfo_t * /* minfo */, TS tring & /* signature */) const {;} | virtual void MethodInfo_CreateSignature(MethodInfo_t * /* minfo */, TS tring & /* signature */) const {;} | |||
virtual void MethodInfo_Delete(MethodInfo_t * /* minfo */) const {;} | virtual void MethodInfo_Delete(MethodInfo_t * /* minfo */) const {;} | |||
virtual void *MethodInfo_Factory() const {return 0;} | virtual MethodInfo_t *MethodInfo_Factory() const {return 0;} | |||
virtual void *MethodInfo_FactoryCopy(MethodInfo_t * /* minfo */) const | virtual MethodInfo_t *MethodInfo_FactoryCopy(MethodInfo_t * /* minfo */ | |||
{return 0;} | ) const {return 0;} | |||
virtual void *MethodInfo_InterfaceMethod(MethodInfo_t * /* minfo */) co | virtual MethodInfo_t *MethodInfo_InterfaceMethod(MethodInfo_t * /* minf | |||
nst {return 0;} | o */) const {return 0;} | |||
virtual bool MethodInfo_IsValid(MethodInfo_t * /* minfo */) const {ret urn 0;} | virtual bool MethodInfo_IsValid(MethodInfo_t * /* minfo */) const {ret urn 0;} | |||
virtual int MethodInfo_NArg(MethodInfo_t * /* minfo */) const {return 0;} | virtual int MethodInfo_NArg(MethodInfo_t * /* minfo */) const {return 0;} | |||
virtual int MethodInfo_NDefaultArg(MethodInfo_t * /* minfo */) const {return 0;} | virtual int MethodInfo_NDefaultArg(MethodInfo_t * /* minfo */) const {return 0;} | |||
virtual int MethodInfo_Next(MethodInfo_t * /* minfo */) const {return 0;} | virtual int MethodInfo_Next(MethodInfo_t * /* minfo */) const {return 0;} | |||
virtual Long_t MethodInfo_Property(MethodInfo_t * /* minfo */) const {re turn 0;} | virtual Long_t MethodInfo_Property(MethodInfo_t * /* minfo */) const {re turn 0;} | |||
virtual void *MethodInfo_Type(MethodInfo_t * /* minfo */) const {return 0;} | virtual TypeInfo_t *MethodInfo_Type(MethodInfo_t * /* minfo */) const { return 0;} | |||
virtual const char *MethodInfo_GetMangledName(MethodInfo_t * /* minfo */ ) const {return 0;} | virtual const char *MethodInfo_GetMangledName(MethodInfo_t * /* minfo */ ) const {return 0;} | |||
virtual const char *MethodInfo_GetPrototype(MethodInfo_t * /* minfo */) const {return 0;} | virtual const char *MethodInfo_GetPrototype(MethodInfo_t * /* minfo */) const {return 0;} | |||
virtual const char *MethodInfo_Name(MethodInfo_t * /* minfo */) const {r eturn 0;} | virtual const char *MethodInfo_Name(MethodInfo_t * /* minfo */) const {r eturn 0;} | |||
virtual const char *MethodInfo_TypeName(MethodInfo_t * /* minfo */) cons t {return 0;} | virtual const char *MethodInfo_TypeName(MethodInfo_t * /* minfo */) cons t {return 0;} | |||
virtual const char *MethodInfo_Title(MethodInfo_t * /* minfo */) const { return 0;} | virtual const char *MethodInfo_Title(MethodInfo_t * /* minfo */) const { return 0;} | |||
// G__MethodArgInfo interface | // G__MethodArgInfo interface | |||
virtual void MethodArgInfo_Delete(MethodArgInfo_t * /* marginfo */) co nst {;} | virtual void MethodArgInfo_Delete(MethodArgInfo_t * /* marginfo */) co nst {;} | |||
virtual void *MethodArgInfo_Factory() const {return 0;} | virtual MethodArgInfo_t *MethodArgInfo_Factory() const {return 0;} | |||
virtual void *MethodArgInfo_FactoryCopy(MethodArgInfo_t * /* marginfo * | virtual MethodArgInfo_t *MethodArgInfo_FactoryCopy(MethodArgInfo_t * /* | |||
/) const {return 0;} | marginfo */) const {return 0;} | |||
virtual bool MethodArgInfo_IsValid(MethodArgInfo_t * /* marginfo */) c onst {return 0;} | virtual bool MethodArgInfo_IsValid(MethodArgInfo_t * /* marginfo */) c onst {return 0;} | |||
virtual int MethodArgInfo_Next(MethodArgInfo_t * /* marginfo */) cons t {return 0;} | virtual int MethodArgInfo_Next(MethodArgInfo_t * /* marginfo */) cons t {return 0;} | |||
virtual Long_t MethodArgInfo_Property(MethodArgInfo_t * /* marginfo */) const {return 0;} | virtual Long_t MethodArgInfo_Property(MethodArgInfo_t * /* marginfo */) const {return 0;} | |||
virtual const char *MethodArgInfo_DefaultValue(MethodArgInfo_t * /* marg info */) const {return 0;} | virtual const char *MethodArgInfo_DefaultValue(MethodArgInfo_t * /* marg info */) const {return 0;} | |||
virtual const char *MethodArgInfo_Name(MethodArgInfo_t * /* marginfo */) const {return 0;} | virtual const char *MethodArgInfo_Name(MethodArgInfo_t * /* marginfo */) const {return 0;} | |||
virtual const char *MethodArgInfo_TypeName(MethodArgInfo_t * /* marginfo */) const {return 0;} | virtual const char *MethodArgInfo_TypeName(MethodArgInfo_t * /* marginfo */) const {return 0;} | |||
// G__TypeInfo interface | // G__TypeInfo interface | |||
virtual void TypeInfo_Delete(TypeInfo_t * /* tinfo */) const {;} | virtual void TypeInfo_Delete(TypeInfo_t * /* tinfo */) const {;} | |||
virtual void *TypeInfo_Factory() const {return 0;} | virtual TypeInfo_t *TypeInfo_Factory() const {return 0;} | |||
virtual TypeInfo_t *TypeInfo_Factory(G__value * /* value */) const {retu | ||||
rn 0;} | ||||
virtual TypeInfo_t *TypeInfo_FactoryCopy(TypeInfo_t * /* tinfo */) const | ||||
{return 0;} | ||||
virtual void TypeInfo_Init(TypeInfo_t * /* tinfo */, const char * /* f uncname */) const {;} | virtual void TypeInfo_Init(TypeInfo_t * /* tinfo */, const char * /* f uncname */) const {;} | |||
virtual bool TypeInfo_IsValid(TypeInfo_t * /* tinfo */) const {return 0;} | virtual bool TypeInfo_IsValid(TypeInfo_t * /* tinfo */) const {return 0;} | |||
virtual const char *TypeInfo_Name(TypeInfo_t * /* info */) const {return 0;} | ||||
virtual Long_t TypeInfo_Property(TypeInfo_t * /* tinfo */) const {return 0;} | virtual Long_t TypeInfo_Property(TypeInfo_t * /* tinfo */) const {return 0;} | |||
virtual int TypeInfo_RefType(TypeInfo_t * /* tinfo */) const {return 0;} | ||||
virtual int TypeInfo_Size(TypeInfo_t * /* tinfo */) const {return 0;} | virtual int TypeInfo_Size(TypeInfo_t * /* tinfo */) const {return 0;} | |||
virtual const char *TypeInfo_TrueName(TypeInfo_t * /* tinfo */) const {r eturn 0;} | virtual const char *TypeInfo_TrueName(TypeInfo_t * /* tinfo */) const {r eturn 0;} | |||
// G__TypedefInfo interface | // G__TypedefInfo interface | |||
virtual void TypedefInfo_Delete(TypedefInfo_t * /* tinfo */) const {;} | virtual void TypedefInfo_Delete(TypedefInfo_t * /* tinfo */) const {;} | |||
virtual void *TypedefInfo_Factory() const {return 0;} | virtual TypedefInfo_t *TypedefInfo_Factory() const {return 0;} | |||
virtual TypedefInfo_t *TypedefInfo_FactoryCopy(TypedefInfo_t * /* tinfo | ||||
*/) const {return 0;} | ||||
virtual void TypedefInfo_Init(TypedefInfo_t * /* tinfo */, const char * /* funcname */) const {;} | virtual void TypedefInfo_Init(TypedefInfo_t * /* tinfo */, const char * /* funcname */) const {;} | |||
virtual bool TypedefInfo_IsValid(TypedefInfo_t * /* tinfo */) const {r eturn 0;} | virtual bool TypedefInfo_IsValid(TypedefInfo_t * /* tinfo */) const {r eturn 0;} | |||
virtual Long_t TypedefInfo_Property(TypedefInfo_t * /* tinfo */) const { return 0;} | virtual Long_t TypedefInfo_Property(TypedefInfo_t * /* tinfo */) const { return 0;} | |||
virtual int TypedefInfo_Size(TypedefInfo_t * /* tinfo */) const {retu rn 0;} | virtual int TypedefInfo_Size(TypedefInfo_t * /* tinfo */) const {retu rn 0;} | |||
virtual const char *TypedefInfo_TrueName(TypedefInfo_t * /* tinfo */) co nst {return 0;} | virtual const char *TypedefInfo_TrueName(TypedefInfo_t * /* tinfo */) co nst {return 0;} | |||
virtual const char *TypedefInfo_Name(TypedefInfo_t * /* tinfo */) const {return 0;} | virtual const char *TypedefInfo_Name(TypedefInfo_t * /* tinfo */) const {return 0;} | |||
virtual const char *TypedefInfo_Title(TypedefInfo_t * /* tinfo */) const {return 0;} | virtual const char *TypedefInfo_Title(TypedefInfo_t * /* tinfo */) const {return 0;} | |||
static TInterpreter *&Instance(); | static TInterpreter *&Instance(); | |||
End of changes. 13 change blocks. | ||||
28 lines changed or deleted | 39 lines changed or added | |||
TKDTree.h | TKDTree.h | |||
---|---|---|---|---|
#ifndef ROOT_TKDTree | #ifndef ROOT_TKDTree | |||
#define ROOT_TKDTree | #define ROOT_TKDTree | |||
#ifndef ROOT_TObject | #ifndef ROOT_TObject | |||
#include "TObject.h" | #include "TObject.h" | |||
#endif | #endif | |||
#include "TMath.h" | #include "TMath.h" | |||
#include <vector> | ||||
template <typename Index, typename Value> class TKDTree : public TObject | template <typename Index, typename Value> class TKDTree : public TObject | |||
{ | { | |||
public: | public: | |||
TKDTree(); | TKDTree(); | |||
TKDTree(Index npoints, Index ndim, UInt_t bsize); | TKDTree(Index npoints, Index ndim, UInt_t bsize); | |||
TKDTree(Index npoints, Index ndim, UInt_t bsize, Value **data); | TKDTree(Index npoints, Index ndim, UInt_t bsize, Value **data); | |||
~TKDTree(); | ~TKDTree(); | |||
skipping to change at line 54 | skipping to change at line 55 | |||
//Getters for internal variables. | //Getters for internal variables. | |||
Int_t GetRowT0() {return fRowT0;} //! smallest terminal row | Int_t GetRowT0() {return fRowT0;} //! smallest terminal row | |||
Int_t GetCrossNode() {return fCrossNode;} //! cross node | Int_t GetCrossNode() {return fCrossNode;} //! cross node | |||
Int_t GetOffset() {return fOffset;} //! offset in fIndPoints | Int_t GetOffset() {return fOffset;} //! offset in fIndPoints | |||
Index* GetIndPoints() {return fIndPoints;} | Index* GetIndPoints() {return fIndPoints;} | |||
Index GetBucketSize() {return fBucketSize;} | Index GetBucketSize() {return fBucketSize;} | |||
void FindNearestNeighbors(const Value *point, const Int_t k, Index *i nd, Value *dist); | void FindNearestNeighbors(const Value *point, const Int_t k, Index *i nd, Value *dist); | |||
Index FindNode(const Value * point) const; | Index FindNode(const Value * point) const; | |||
void FindPoint(Value * point, Index &index, Int_t &iter); | void FindPoint(Value * point, Index &index, Int_t &iter); | |||
void FindInRangeA(Value * point, Value * delta, Index *res , Index &n | void FindInRange(Value *point, Value range, std::vector<Index> &res); | |||
points,Index & iter, Int_t bnode); | ||||
void FindInRangeB(Value * point, Value * delta, Index *res , Index &n | ||||
points,Index & iter, Int_t bnode); | ||||
void FindBNodeA(Value * point, Value * delta, Int_t &inode); | void FindBNodeA(Value * point, Value * delta, Int_t &inode); | |||
Bool_t IsTerminal(Index inode) const {return (inode>=fNNodes);} | Bool_t IsTerminal(Index inode) const {return (inode>=fNNodes);} | |||
Int_t IsOwner() { return fDataOwner; } | Int_t IsOwner() { return fDataOwner; } | |||
Value KOrdStat(Index ntotal, Value *a, Index k, Index *index) const; | Value KOrdStat(Index ntotal, Value *a, Index k, Index *index) const; | |||
void MakeBoundaries(Value *range = 0x0); | void MakeBoundaries(Value *range = 0x0); | |||
void MakeBoundariesExact(); | void MakeBoundariesExact(); | |||
void SetData(Index npoints, Index ndim, UInt_t bsize, Value **data); | void SetData(Index npoints, Index ndim, UInt_t bsize, Value **data); | |||
Int_t SetData(Index idim, Value *data); | Int_t SetData(Index idim, Value *data); | |||
void SetOwner(Int_t owner) { fDataOwner = owner; } | void SetOwner(Int_t owner) { fDataOwner = owner; } | |||
void Spread(Index ntotal, Value *a, Index *index, Value &min, Value & max) const; | void Spread(Index ntotal, Value *a, Index *index, Value &min, Value & max) const; | |||
private: | private: | |||
TKDTree(const TKDTree &); // not implemented | TKDTree(const TKDTree &); // not implemented | |||
TKDTree<Index, Value>& operator=(const TKDTree<Index, Value>&); // not i mplemented | TKDTree<Index, Value>& operator=(const TKDTree<Index, Value>&); // not i mplemented | |||
void CookBoundaries(const Int_t node, Bool_t left); | void CookBoundaries(const Int_t node, Bool_t left); | |||
void UpdateNearestNeighbors(Index inode, const Value *point, Int_t kNN, Index *ind, Value *dist); | void UpdateNearestNeighbors(Index inode, const Value *point, Int_t kNN, Index *ind, Value *dist); | |||
void UpdateRange(Index inode, Value *point, Value range, std::vector<Ind ex> &res); | ||||
protected: | protected: | |||
Int_t fDataOwner; //! 0 - not owner, 2 - owner of the pointer array, 1 - owner of the whole 2-d array | Int_t fDataOwner; //! 0 - not owner, 2 - owner of the pointer array, 1 - owner of the whole 2-d array | |||
Int_t fNNodes; // size of node array | Int_t fNNodes; // size of node array | |||
Int_t fTotalNodes; // total number of nodes (fNNodes + terminal nodes) | Int_t fTotalNodes; // total number of nodes (fNNodes + terminal nodes) | |||
Index fNDim; // number of dimensions | Index fNDim; // number of dimensions | |||
Index fNDimm; // dummy 2*fNDim | Index fNDimm; // dummy 2*fNDim | |||
Index fNPoints; // number of multidimensional points | Index fNPoints; // number of multidimensional points | |||
Index fBucketSize; // size of the terminal nodes | Index fBucketSize; // size of the terminal nodes | |||
UChar_t *fAxis; //[fNNodes] nodes cutting axis | UChar_t *fAxis; //[fNNodes] nodes cutting axis | |||
End of changes. 5 change blocks. | ||||
4 lines changed or deleted | 5 lines changed or added | |||
TKey.h | TKey.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TKey.h 24037 2008-05-28 06:32:07Z brun $ | // @(#)root/io:$Id: TKey.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 28/12/94 | // Author: Rene Brun 28/12/94 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 39 | skipping to change at line 39 | |||
#ifndef ROOT_TBuffer | #ifndef ROOT_TBuffer | |||
#include "TBuffer.h" | #include "TBuffer.h" | |||
#endif | #endif | |||
class TClass; | class TClass; | |||
class TBrowser; | class TBrowser; | |||
class TDirectory; | class TDirectory; | |||
class TFile; | class TFile; | |||
class TKey : public TNamed { | class TKey : public TNamed { | |||
private: | ||||
TKey(const TKey&); // TKey objects are not copiable. | ||||
TKey& operator=(const TKey&); // TKey objects are not copiable. | ||||
protected: | protected: | |||
Int_t fVersion; //Key version identifier | Int_t fVersion; //Key version identifier | |||
Int_t fNbytes; //Number of bytes for the object on file | Int_t fNbytes; //Number of bytes for the object on file | |||
Int_t fObjlen; //Length of uncompressed object in bytes | Int_t fObjlen; //Length of uncompressed object in bytes | |||
TDatime fDatime; //Date/Time of insertion in file | TDatime fDatime; //Date/Time of insertion in file | |||
Short_t fKeylen; //Number of bytes for the key itself | Short_t fKeylen; //Number of bytes for the key itself | |||
Short_t fCycle; //Cycle number | Short_t fCycle; //Cycle number | |||
Long64_t fSeekKey; //Location of object on file | Long64_t fSeekKey; //Location of object on file | |||
Long64_t fSeekPdir; //Location of parent directory on file | Long64_t fSeekPdir; //Location of parent directory on file | |||
TString fClassName; //Object Class name | TString fClassName; //Object Class name | |||
Int_t fLeft; //Number of bytes left in current segment | Int_t fLeft; //Number of bytes left in current segment | |||
char *fBuffer; //Object buffer | char *fBuffer; //Object buffer | |||
TBuffer *fBufferRef; //Pointer to the TBuffer object | TBuffer *fBufferRef; //Pointer to the TBuffer object | |||
UShort_t fPidOffset; //! Offset to be added to the pid index in thi s key/buffer. This is actually saved in the high bits of fSeekPdir | UShort_t fPidOffset; //! Offset to be added to the pid index in thi s key/buffer. This is actually saved in the high bits of fSeekPdir | |||
TDirectory *fMotherDir; //! pointer to mother directory | TDirectory *fMotherDir; //! pointer to mother directory | |||
virtual Int_t Read(const char *name) { return TObject::Read(name); } | virtual Int_t Read(const char *name) { return TObject::Read(name); } | |||
virtual void Create(Int_t nbytes, TFile* f = 0); | virtual void Create(Int_t nbytes, TFile* f = 0); | |||
void Build(TDirectory* motherDir, const char* classname, Lon g64_t filepos); | void Build(TDirectory* motherDir, const char* classname, Lon g64_t filepos); | |||
TKey(const TKey&); | ||||
TKey& operator=(const TKey&); | ||||
public: | public: | |||
TKey(); | TKey(); | |||
TKey(TDirectory* motherDir); | TKey(TDirectory* motherDir); | |||
TKey(const char *name, const char *title, const TClass *cl, Int_t nbytes , TDirectory* motherDir = 0); | TKey(const char *name, const char *title, const TClass *cl, Int_t nbytes , TDirectory* motherDir = 0); | |||
TKey(const TString &name, const TString &title, const TClass *cl, Int_t nbytes, TDirectory* motherDir = 0); | TKey(const TString &name, const TString &title, const TClass *cl, Int_t nbytes, TDirectory* motherDir = 0); | |||
TKey(const TObject *obj, const char *name, Int_t bufsize, TDirectory* mo therDir = 0); | TKey(const TObject *obj, const char *name, Int_t bufsize, TDirectory* mo therDir = 0); | |||
TKey(const void *obj, const TClass *cl, const char *name, Int_t bufsize, TDirectory* motherDir = 0); | TKey(const void *obj, const TClass *cl, const char *name, Int_t bufsize, TDirectory* motherDir = 0); | |||
TKey(Long64_t pointer, Int_t nbytes, TDirectory* motherDir = 0); | TKey(Long64_t pointer, Int_t nbytes, TDirectory* motherDir = 0); | |||
virtual ~TKey(); | virtual ~TKey(); | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added | |||
TKeyMapFile.h | TKeyMapFile.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TKeyMapFile.h 23122 2008-04-10 14:56:30Z rdm $ | // @(#)root/io:$Id: TKeyMapFile.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 23/07/97 | // Author: Rene Brun 23/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 33 | skipping to change at line 33 | |||
#ifndef ROOT_TNamed | #ifndef ROOT_TNamed | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#endif | #endif | |||
class TBrowser; | class TBrowser; | |||
class TMapFile; | class TMapFile; | |||
class TKeyMapFile : public TNamed { | class TKeyMapFile : public TNamed { | |||
private: | private: | |||
TKeyMapFile(const TKeyMapFile&); // TKeyMapFile objects are n | ||||
ot copiable. | ||||
TKeyMapFile& operator=(const TKeyMapFile&); // TKeyMapFile objects are n | ||||
ot copiable. | ||||
TMapFile *fMapFile; //pointer to map file | TMapFile *fMapFile; //pointer to map file | |||
public: | public: | |||
TKeyMapFile(); | TKeyMapFile(); | |||
TKeyMapFile(const char *name, const char *classname, TMapFile *mapfile); | TKeyMapFile(const char *name, const char *classname, TMapFile *mapfile); | |||
virtual ~TKeyMapFile() {;} | virtual ~TKeyMapFile() {;} | |||
virtual void Browse(TBrowser *b); | virtual void Browse(TBrowser *b); | |||
ClassDef(TKeyMapFile,0); //Utility class for browsing TMapFile objects. | ClassDef(TKeyMapFile,0); //Utility class for browsing TMapFile objects. | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TKeySQL.h | TKeySQL.h | |||
---|---|---|---|---|
// @(#)root/sql:$Id: TKeySQL.h 24037 2008-05-28 06:32:07Z brun $ | // @(#)root/sql:$Id: TKeySQL.h 26606 2008-12-02 20:36:09Z 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 29 | skipping to change at line 29 | |||
///////////////////////////////////////////////////////////////////////// | ///////////////////////////////////////////////////////////////////////// | |||
#ifndef ROOT_TKey | #ifndef ROOT_TKey | |||
#include "TKey.h" | #include "TKey.h" | |||
#endif | #endif | |||
class TSQLFile; | class TSQLFile; | |||
class TKeySQL : public TKey { | class TKeySQL : public TKey { | |||
private: | ||||
TKeySQL(const TKeySQL&); // TKeySQL objects are not copiable. | ||||
TKeySQL& operator=(const TKeySQL&); // TKeySQL objects are not copiable. | ||||
protected: | protected: | |||
TKeySQL(); | TKeySQL(); | |||
virtual Int_t Read(const char *name) { return TKey::Read(name); } | virtual Int_t Read(const char *name) { return TKey::Read(name); } | |||
void StoreKeyObject(const void* obj, const TClass* cl); | void StoreKeyObject(const void* obj, const TClass* cl); | |||
void* ReadKeyObject(void* obj, const TClass* expectedClass); | void* ReadKeyObject(void* obj, const TClass* expectedClass); | |||
Long64_t fKeyId; //! key identifier in KeysTables | Long64_t fKeyId; //! key identifier in KeysTables | |||
Long64_t fObjId; //! stored object identifer | Long64_t fObjId; //! stored object identifer | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TKeyXML.h | TKeyXML.h | |||
---|---|---|---|---|
// @(#)root/xml:$Id: TKeyXML.h 24037 2008-05-28 06:32:07Z brun $ | // @(#)root/xml:$Id: TKeyXML.h 26606 2008-12-02 20:36:09Z 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 25 | skipping to change at line 25 | |||
#ifndef ROOT_TXMLEngine | #ifndef ROOT_TXMLEngine | |||
#include "TXMLEngine.h" | #include "TXMLEngine.h" | |||
#endif | #endif | |||
#ifndef ROOT_TKey | #ifndef ROOT_TKey | |||
#include "TKey.h" | #include "TKey.h" | |||
#endif | #endif | |||
class TXMLFile; | class TXMLFile; | |||
class TKeyXML : public TKey { | class TKeyXML : public TKey { | |||
protected: | ||||
TKeyXML(); | ||||
public: | private: | |||
TKeyXML(TDirectory* mother, Long64_t keyid, const TObject* obj, const | TKeyXML(const TKeyXML&); // TKeyXML objects are not copiable. | |||
char* name = 0, const char* title = 0); | TKeyXML& operator=(const TKeyXML&); // TKeyXML objects are not copiable. | |||
TKeyXML(TDirectory* mother, Long64_t keyid, const void* obj, const TC | ||||
lass* cl, const char* name, const char* title = 0); | protected: | |||
TKeyXML(TDirectory* mother, Long64_t keyid, XMLNodePointer_t keynode) | TKeyXML(); | |||
; | ||||
virtual ~TKeyXML(); | public: | |||
TKeyXML(TDirectory* mother, Long64_t keyid, const TObject* obj, const ch | ||||
// redefined TKey Methods | ar* name = 0, const char* title = 0); | |||
virtual void Delete(Option_t *option=""); | TKeyXML(TDirectory* mother, Long64_t keyid, const void* obj, const TClas | |||
virtual void DeleteBuffer() {} | s* cl, const char* name, const char* title = 0); | |||
virtual void FillBuffer(char *&) {} | TKeyXML(TDirectory* mother, Long64_t keyid, XMLNodePointer_t keynode); | |||
virtual char *GetBuffer() const { return 0; } | virtual ~TKeyXML(); | |||
virtual Long64_t GetSeekKey() const { return fKeyNode ? 1024 : 0;} | ||||
virtual Long64_t GetSeekPdir() const { return fKeyNode ? 1024 : 0;} | // redefined TKey Methods | |||
//virtual ULong_t Hash() const { return 0; } | virtual void Delete(Option_t *option=""); | |||
virtual void Keep() {} | virtual void DeleteBuffer() {} | |||
//virtual void ls(Option_t* ="") const; | virtual void FillBuffer(char *&) {} | |||
//virtual void Print(Option_t* ="") const {} | virtual char *GetBuffer() const { return 0; } | |||
virtual Long64_t GetSeekKey() const { return fKeyNode ? 1024 : 0;} | ||||
virtual Int_t Read(TObject* tobj); | virtual Long64_t GetSeekPdir() const { return fKeyNode ? 1024 : 0;} | |||
virtual TObject *ReadObj(); | //virtual ULong_t Hash() const { return 0; } | |||
virtual TObject *ReadObjWithBuffer(char *bufferRead); | virtual void Keep() {} | |||
virtual void *ReadObjectAny(const TClass *expectedClass); | //virtual void ls(Option_t* ="") const; | |||
//virtual void Print(Option_t* ="") const {} | ||||
virtual void ReadBuffer(char *&) {} | ||||
virtual void ReadFile() {} | virtual Int_t Read(TObject* tobj); | |||
virtual void SetBuffer() { fBuffer = 0; } | virtual TObject *ReadObj(); | |||
virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; } | virtual TObject *ReadObjWithBuffer(char *bufferRead); | |||
virtual void *ReadObjectAny(const TClass *expectedClass); | ||||
// TKeyXML specific methods | ||||
virtual void ReadBuffer(char *&) {} | ||||
XMLNodePointer_t KeyNode() const { return fKeyNode; } | virtual void ReadFile() {} | |||
Long64_t GetKeyId() const { return fKeyId; } | virtual void SetBuffer() { fBuffer = 0; } | |||
Bool_t IsSubdir() const { return fSubdir; } | virtual Int_t WriteFile(Int_t =1, TFile* = 0) { return 0; } | |||
void SetSubir() { fSubdir = kTRUE; } | ||||
void UpdateObject(TObject* obj); | // TKeyXML specific methods | |||
void UpdateAttributes(); | ||||
XMLNodePointer_t KeyNode() const { return fKeyNode; } | ||||
protected: | Long64_t GetKeyId() const { return fKeyId; } | |||
virtual Int_t Read(const char *name) { return TKey::Read(name); } | Bool_t IsSubdir() const { return fSubdir; } | |||
void StoreObject(const void* obj, const TClass* cl); | void SetSubir() { fSubdir = kTRUE; } | |||
void StoreKeyAttributes(); | void UpdateObject(TObject* obj); | |||
TXMLEngine* XMLEngine(); | void UpdateAttributes(); | |||
void* XmlReadAny(void* obj, const TClass* expectedClass); | protected: | |||
virtual Int_t Read(const char *name) { return TKey::Read(name); } | ||||
XMLNodePointer_t fKeyNode; //! node with stored object | void StoreObject(const void* obj, const TClass* cl); | |||
Long64_t fKeyId; //! unique identifier of key for search | void StoreKeyAttributes(); | |||
methods | TXMLEngine* XMLEngine(); | |||
Bool_t fSubdir; //! indicates that key contains subdirec | ||||
tory | void* XmlReadAny(void* obj, const TClass* expectedClass); | |||
XMLNodePointer_t fKeyNode; //! node with stored object | ||||
Long64_t fKeyId; //! unique identifier of key for search met | ||||
hods | ||||
Bool_t fSubdir; //! indicates that key contains subdirector | ||||
y | ||||
ClassDef(TKeyXML,1) // a special TKey for XML files | ClassDef(TKeyXML,1) // a special TKey for XML files | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 3 change blocks. | ||||
56 lines changed or deleted | 60 lines changed or added | |||
TLegend.h | TLegend.h | |||
---|---|---|---|---|
// @(#)root/graf:$Id: TLegend.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/graf:$Id: TLegend.h 26711 2008-12-06 19:50:17Z brun $ | |||
// Author: Matthew.Adam.Dobbs 06/09/99 | // Author: Matthew.Adam.Dobbs 06/09/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 46 | skipping to change at line 46 | |||
protected: | protected: | |||
TLegend& operator=(const TLegend&); | TLegend& operator=(const TLegend&); | |||
public: | public: | |||
TLegend(); | TLegend(); | |||
TLegend( Double_t x1, Double_t y1, Double_t x2, Double_t y2, | TLegend( Double_t x1, Double_t y1, Double_t x2, Double_t y2, | |||
const char* header = "", Option_t* option="brNDC" ); | const char* header = "", Option_t* option="brNDC" ); | |||
virtual ~TLegend(); | virtual ~TLegend(); | |||
TLegend( const TLegend &legend ); | TLegend( const TLegend &legend ); | |||
TLegendEntry *AddEntry(TObject* obj, const char* label = "", Option_t* option = "lpf" ); | TLegendEntry *AddEntry(const TObject* obj, const char* label = "", Opt ion_t* option = "lpf" ); | |||
TLegendEntry *AddEntry(const char *name, const char* label = "", Optio n_t* option = "lpf" ); | TLegendEntry *AddEntry(const char *name, const char* label = "", Optio n_t* option = "lpf" ); | |||
virtual void Clear( Option_t* option = "" ); // *MENU* | virtual void Clear( Option_t* option = "" ); // *MENU* | |||
virtual void Copy( TObject &obj ) const; | virtual void Copy( TObject &obj ) const; | |||
virtual void DeleteEntry(); // *MENU* | virtual void DeleteEntry(); // *MENU* | |||
virtual void Draw( Option_t* option = "" ); | virtual void Draw( Option_t* option = "" ); | |||
virtual void EditEntryAttFill(); | virtual void EditEntryAttFill(); | |||
virtual void EditEntryAttLine(); | virtual void EditEntryAttLine(); | |||
virtual void EditEntryAttMarker(); | virtual void EditEntryAttMarker(); | |||
virtual void EditEntryAttText(); | virtual void EditEntryAttText(); | |||
Float_t GetColumnSeparation() const { return fColumnSeparation; } | Float_t GetColumnSeparation() const { return fColumnSeparation; } | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TLegendEntry.h | TLegendEntry.h | |||
---|---|---|---|---|
// @(#)root/graf:$Id: TLegendEntry.h 22428 2008-03-03 18:17:03Z brun $ | // @(#)root/graf:$Id: TLegendEntry.h 26711 2008-12-06 19:50:17Z brun $ | |||
// Author: Matthew.Adam.Dobbs 06/09/99 | // Author: Matthew.Adam.Dobbs 06/09/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 47 | skipping to change at line 47 | |||
#include "TAttMarker.h" | #include "TAttMarker.h" | |||
#endif | #endif | |||
#ifndef ROOT_TString | #ifndef ROOT_TString | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
class TLegendEntry : public TObject, public TAttText, public TAttLine, | class TLegendEntry : public TObject, public TAttText, public TAttLine, | |||
public TAttFill, public TAttMarker { | public TAttFill, public TAttMarker { | |||
public: | public: | |||
TLegendEntry(); | TLegendEntry(); | |||
TLegendEntry(TObject *obj, const char *label = 0, Option_t *option="lpf" ); | TLegendEntry(const TObject *obj, const char *label = 0, Option_t *option ="lpf" ); | |||
TLegendEntry( const TLegendEntry &entry ); | TLegendEntry( const TLegendEntry &entry ); | |||
virtual ~TLegendEntry(); | virtual ~TLegendEntry(); | |||
virtual void Copy( TObject &obj ) const; | virtual void Copy( TObject &obj ) const; | |||
virtual const char *GetLabel() const { return fLabel.Data(); } | virtual const char *GetLabel() const { return fLabel.Data(); } | |||
virtual TObject *GetObject() const { return fObject; } | virtual TObject *GetObject() const { return fObject; } | |||
virtual Option_t *GetOption() const { return fOption.Data(); } | virtual Option_t *GetOption() const { return fOption.Data(); } | |||
virtual void Print( Option_t *option = "" ) const; | virtual void Print( Option_t *option = "" ) const; | |||
virtual void SaveEntry( ostream &out, const char *name ); | virtual void SaveEntry( ostream &out, const char *name ); | |||
virtual void SetLabel( const char *label = "" ) { fLabel = labe l; } // *MENU* | virtual void SetLabel( const char *label = "" ) { fLabel = labe l; } // *MENU* | |||
virtual void SetObject(TObject* obj ); | virtual void SetObject(TObject* obj ); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TMinuitMinimizer.h | TMinuitMinimizer.h | |||
---|---|---|---|---|
// @(#)root/minuit:$Id: TMinuitMinimizer.h 26415 2008-11-24 15:22:41Z monet a $ | // @(#)root/minuit:$Id: TMinuitMinimizer.h 26866 2008-12-12 10:50:07Z 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 101 | skipping to change at line 101 | |||
#ifdef LATER | #ifdef LATER | |||
/// set lower limit variable (override if minimizer supports them ) | /// set lower limit variable (override if minimizer supports them ) | |||
virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | virtual bool SetLowerLimitedVariable(unsigned int ivar , const std::str ing & name , double val , double step , double lower ); | |||
/// set upper limit variable (override if minimizer supports them ) | /// set upper limit variable (override if minimizer supports them ) | |||
virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | virtual bool SetUpperLimitedVariable(unsigned int ivar , const std::stri ng & name , double val , double step , double upper ); | |||
#endif | #endif | |||
/// set fixed variable (override if minimizer supports them ) | /// set fixed variable (override if minimizer supports them ) | |||
virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | virtual bool SetFixedVariable(unsigned int /* ivar */, const std::string & /* name */, double /* val */); | |||
/// set the value of an existing variable | ||||
virtual bool SetVariableValue(unsigned int , double ); | ||||
/// method to perform the minimization | /// method to perform the minimization | |||
virtual bool Minimize(); | virtual bool Minimize(); | |||
/// return minimum function value | /// return minimum function value | |||
virtual double MinValue() const { return fMinVal; } | virtual double MinValue() const { return fMinVal; } | |||
/// return expected distance reached from the minimum | /// return expected distance reached from the minimum | |||
virtual double Edm() const { return fEdm; } | virtual double Edm() const { return fEdm; } | |||
/// return pointer to X values at the minimum | /// return pointer to X values at the minimum | |||
skipping to change at line 144 | skipping to change at line 147 | |||
if the variable is fixed the matrix is zero | if the variable is fixed the matrix is zero | |||
The ordering of the variables is the same as in errors | The ordering of the variables is the same as in errors | |||
*/ | */ | |||
virtual double CovMatrix(unsigned int i, unsigned int j) const { | virtual double CovMatrix(unsigned int i, unsigned int j) const { | |||
return fCovar[i + fDim* j]; | return fCovar[i + fDim* j]; | |||
} | } | |||
/// minos error for variable i, return false if Minos failed | /// minos error for variable i, return false if Minos failed | |||
virtual bool GetMinosError(unsigned int i, double & errLow, double & err Up); | virtual bool GetMinosError(unsigned int i, double & errLow, double & err Up); | |||
/// return reference to the objective function | /** | |||
///virtual const ROOT::Math::IGenFunction & Function() const; | scan a parameter i around the minimum. A minimization must have been | |||
done before, | ||||
return false if it is not the case | ||||
*/ | ||||
virtual bool Scan(unsigned int i, unsigned int &nstep, double * x, doubl | ||||
e * y, double xmin = 0, double xmax = 0); | ||||
/** | ||||
find the contour points (xi,xj) of the function for parameter i and j | ||||
around the minimum | ||||
The contour will be find for value of the function = Min + ErrorUp(); | ||||
*/ | ||||
virtual bool Contour(unsigned int i, unsigned int j, unsigned int & npoi | ||||
nts, double *xi, double *xj); | ||||
virtual void PrintResults(); | virtual void PrintResults(); | |||
/// return reference to the objective function | ||||
///virtual const ROOT::Math::IGenFunction & Function() const; | ||||
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(); | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 22 lines changed or added | |||
TMySQLServer.h | TMySQLServer.h | |||
---|---|---|---|---|
// @(#)root/mysql:$Id: TMySQLServer.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/mysql:$Id: TMySQLServer.h 26487 2008-11-26 16:52:50Z rdm $ | |||
// Author: Fons Rademakers 15/02/2000 | // Author: Fons Rademakers 15/02/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 94 | skipping to change at line 94 | |||
Int_t CreateDataBase(const char *dbname); | Int_t CreateDataBase(const char *dbname); | |||
Int_t DropDataBase(const char *dbname); | Int_t DropDataBase(const char *dbname); | |||
Int_t Reload(); | Int_t Reload(); | |||
Int_t Shutdown(); | Int_t Shutdown(); | |||
const char *ServerInfo(); | const char *ServerInfo(); | |||
Bool_t StartTransaction(); | Bool_t StartTransaction(); | |||
Bool_t Commit(); | Bool_t Commit(); | |||
Bool_t Rollback(); | Bool_t Rollback(); | |||
Bool_t PingVerify(); | ||||
Int_t Ping(); | ||||
ClassDef(TMySQLServer,0) // Connection to MySQL server | ClassDef(TMySQLServer,0) // Connection to MySQL server | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TPDGCode.h | TPDGCode.h | |||
---|---|---|---|---|
// @(#)root/vmc:$Id: TPDGCode.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/vmc:$Id: TPDGCode.h 26965 2008-12-16 17:32:41Z brun $ | |||
// Author: Andreas Morsch 13/04/2002 | // Author: Andreas Morsch 13/04/2002 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 2006, Rene Brun and Fons Rademakers. * | * Copyright (C) 2006, Rene Brun and Fons Rademakers. * | |||
* Copyright (C) 2002, ALICE Experiment at CERN. * | * Copyright (C) 2002, ALICE Experiment at CERN. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 36 | skipping to change at line 36 | |||
kNuEBar=-12,kMuonMinus=13,kMuonPlus=-13,kNuMu=14,kNuMuBar=-14, | kNuEBar=-12,kMuonMinus=13,kMuonPlus=-13,kNuMu=14,kNuMuBar=-14, | |||
kTauMinus=15,kTauPlus=-15,kNuTau=16,kNuTauBar=-16,kGamma=22, | kTauMinus=15,kTauPlus=-15,kNuTau=16,kNuTauBar=-16,kGamma=22, | |||
kZ0=23,kWPlus=24,kWMinus=-24,kPi0=111,kRho770_0=113, | kZ0=23,kWPlus=24,kWMinus=-24,kPi0=111,kRho770_0=113, | |||
kA2_1320_0=115,kRho3_1690_0=117,kK0Long=130,kPiPlus=211, | kA2_1320_0=115,kRho3_1690_0=117,kK0Long=130,kPiPlus=211, | |||
kPiMinus=-211,kRho770Plus=213,kRho770Minus=-213, | kPiMinus=-211,kRho770Plus=213,kRho770Minus=-213, | |||
kA2_1320Plus=215,kProton=2212,kProtonBar=-2212, | kA2_1320Plus=215,kProton=2212,kProtonBar=-2212, | |||
kNeutron=2112,kNeutronBar=-2112,kK0Short=310,kK0=311, | kNeutron=2112,kNeutronBar=-2112,kK0Short=310,kK0=311, | |||
kK0Bar=-311,kKPlus=321,kKMinus=-321,kLambda0=3122, | kK0Bar=-311,kKPlus=321,kKMinus=-321,kLambda0=3122, | |||
kLambda0Bar=-3122,kSigmaMinus=3112,kSigmaBarPlus=-3112, | kLambda0Bar=-3122,kSigmaMinus=3112,kSigmaBarPlus=-3112, | |||
kSigmaPlus=3222,kSigmaBarMinus=-3222,kSigma0=3212, | kSigmaPlus=3222,kSigmaBarMinus=-3222,kSigma0=3212, | |||
kSigma0Bar=-3212} | kSigma0Bar=-3212,kXiMinus=3312,kXiPlusBar=-3312, | |||
kOmegaMinus=3334,kOmegaPlusBar=-3334} | ||||
PDG_t; | PDG_t; | |||
/* | /* | |||
"a(2)(1320)-", -215 | "a(2)(1320)-", -215 | |||
"rho(3)(1690)+", 217 | "rho(3)(1690)+", 217 | |||
"rho(3)(1690)-", -217 | "rho(3)(1690)-", -217 | |||
"eta0", 221 | "eta0", 221 | |||
"omega(782)0" 223 | "omega(782)0" 223 | |||
"f(2)(1270)0" 225 | "f(2)(1270)0" 225 | |||
"omega(3)(1670)0", 227 | "omega(3)(1670)0", 227 | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 3 lines changed or added | |||
TPRegexp.h | TPRegexp.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TPRegexp.h 25863 2008-10-17 18:53:10Z brun $ | // @(#)root/base:$Id: TPRegexp.h 26600 2008-12-02 18:56:10Z brun $ | |||
// Author: Eddy Offermann 24/06/05 | // Author: Eddy Offermann 24/06/05 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 129 | skipping to change at line 129 | |||
Int_t GetNMaxMatches() const { return fNMaxMatches; } | Int_t GetNMaxMatches() const { return fNMaxMatches; } | |||
void SetNMaxMatches(Int_t nm) { fNMaxMatches = nm; } | void SetNMaxMatches(Int_t nm) { fNMaxMatches = nm; } | |||
Int_t GetGlobalPosition() const { return fLastGlobalPosition; } | Int_t GetGlobalPosition() const { return fLastGlobalPosition; } | |||
void AssignGlobalState(const TPMERegexp& re); | void AssignGlobalState(const TPMERegexp& re); | |||
void ResetGlobalState(); | void ResetGlobalState(); | |||
Int_t Match(const TString& s, UInt_t start = 0); | Int_t Match(const TString& s, UInt_t start = 0); | |||
Int_t Split(const TString& s, Int_t maxfields = 0); | Int_t Split(const TString& s, Int_t maxfields = 0); | |||
TString Substitute(const TString& s, const TString& r, Bool_t doDollarSu bst=kTRUE); | Int_t Substitute(TString& s, const TString& r, Bool_t doDollarSubst=kT RUE); | |||
Int_t NMatches() const { return fNMatches; } | Int_t NMatches() const { return fNMatches; } | |||
TString operator[](Int_t); | TString operator[](Int_t); | |||
virtual void Print(Option_t* option=""); | virtual void Print(Option_t* option=""); | |||
ClassDef(TPMERegexp, 0); // Wrapper for Perl-like regular expression mat ching. | ClassDef(TPMERegexp, 0); // Wrapper for Perl-like regular expression mat ching. | |||
}; | }; | |||
class TStringToken : public TString { | class TStringToken : public TString { | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TPad.h | TPad.h | |||
---|---|---|---|---|
// @(#)root/gpad:$Id: TPad.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/gpad:$Id: TPad.h 26760 2008-12-09 15:56:43Z brun $ | |||
// Author: Rene Brun 12/12/94 | // Author: Rene Brun 12/12/94 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 162 | skipping to change at line 162 | |||
Color_t color=-1, Short_t bordersize=-1, Short_t bordermode=-2); | Color_t color=-1, Short_t bordersize=-1, Short_t bordermode=-2); | |||
virtual ~TPad(); | virtual ~TPad(); | |||
void AbsCoordinates(Bool_t set) { fAbsCoord = set; } | void AbsCoordinates(Bool_t set) { fAbsCoord = set; } | |||
Double_t AbsPixeltoX(Int_t px) {return fAbsPixeltoXk + px*fPixe ltoX;} | Double_t AbsPixeltoX(Int_t px) {return fAbsPixeltoXk + px*fPixe ltoX;} | |||
Double_t AbsPixeltoY(Int_t py) {return fAbsPixeltoYk + py*fPixe ltoY;} | Double_t AbsPixeltoY(Int_t py) {return fAbsPixeltoYk + py*fPixe ltoY;} | |||
virtual void AbsPixeltoXY(Int_t xpixel, Int_t ypixel, Double_t &x, Double_t &y); | virtual void AbsPixeltoXY(Int_t xpixel, Int_t ypixel, Double_t &x, Double_t &y); | |||
virtual void AddExec(const char *name, const char *command); | virtual void AddExec(const char *name, const char *command); | |||
virtual void AutoExec(); | virtual void AutoExec(); | |||
virtual void Browse(TBrowser *b); | virtual void Browse(TBrowser *b); | |||
virtual TLegend *BuildLegend(Double_t x1=0.5, Double_t y1=0.67, Double_ t x2=0.88, Double_t y2=0.88, const char *title=""); // *MENU* | virtual TLegend *BuildLegend(Double_t x1=0.5, Double_t y1=0.67, Double_ t x2=0.88, Double_t y2=0.88, const char *title=""); // *MENU* | |||
TVirtualPad* cd(Int_t subpadnumber=0); | TVirtualPad* cd(Int_t subpadnumber=0); // *MENU* | |||
void Clear(Option_t *option=""); | void Clear(Option_t *option=""); | |||
virtual Int_t Clip(Float_t *x, Float_t *y, Float_t xclipl, Float_t y clipb, Float_t xclipr, Float_t yclipt); | virtual Int_t Clip(Float_t *x, Float_t *y, Float_t xclipl, Float_t y clipb, Float_t xclipr, Float_t yclipt); | |||
virtual Int_t Clip(Double_t *x, Double_t *y, Double_t xclipl, Double _t yclipb, Double_t xclipr, Double_t yclipt); | virtual Int_t Clip(Double_t *x, Double_t *y, Double_t xclipl, Double _t yclipb, Double_t xclipr, Double_t yclipt); | |||
virtual Int_t ClippingCode(Double_t x, Double_t y, Double_t xcl1, Do uble_t ycl1, Double_t xcl2, Double_t ycl2); | virtual Int_t ClippingCode(Double_t x, Double_t y, Double_t xcl1, Do uble_t ycl1, Double_t xcl2, Double_t ycl2); | |||
virtual Int_t ClipPolygon(Int_t n, Double_t *x, Double_t *y, Int_t n n, Double_t *xc, Double_t *yc, Double_t xclipl, Double_t yclipb, Double_t x clipr, Double_t yclipt); | virtual Int_t ClipPolygon(Int_t n, Double_t *x, Double_t *y, Int_t n n, Double_t *xc, Double_t *yc, Double_t xclipl, Double_t yclipb, Double_t x clipr, Double_t yclipt); | |||
virtual void Close(Option_t *option=""); | virtual void Close(Option_t *option=""); | |||
virtual void Closed() { Emit("Closed()"); } // *SIGNAL* | virtual void Closed() { Emit("Closed()"); } // *SIGNAL* | |||
virtual void CopyPixmap(); | virtual void CopyPixmap(); | |||
virtual void CopyPixmaps(); | virtual void CopyPixmaps(); | |||
virtual void DeleteExec(const char *name); | virtual void DeleteExec(const char *name); | |||
skipping to change at line 369 | skipping to change at line 369 | |||
virtual void XYtoPixel(Double_t x, Double_t y, Int_t &xpixel, Int_t &ypixel) const; | virtual void XYtoPixel(Double_t x, Double_t y, Int_t &xpixel, Int_t &ypixel) const; | |||
virtual TObject *CreateToolTip(const TBox *b, const char *text, Long_t delayms); | virtual TObject *CreateToolTip(const TBox *b, const char *text, Long_t delayms); | |||
virtual void DeleteToolTip(TObject *tip); | virtual void DeleteToolTip(TObject *tip); | |||
virtual void ResetToolTip(TObject *tip); | virtual void ResetToolTip(TObject *tip); | |||
virtual void CloseToolTip(TObject *tip); | virtual void CloseToolTip(TObject *tip); | |||
virtual void x3d(Option_t *type=""); // Depreciated | virtual void x3d(Option_t *type=""); // Depreciated | |||
virtual TVirtualViewer3D *GetViewer3D(Option_t * type = ""); | virtual TVirtualViewer3D *GetViewer3D(Option_t * type = ""); | |||
virtual Bool_t HasViewer3D() const { return (fViewer3D); } | ||||
virtual void ReleaseViewer3D(Option_t * type = ""); | virtual void ReleaseViewer3D(Option_t * type = ""); | |||
ClassDef(TPad,10) //A Graphics pad | ClassDef(TPad,10) //A Graphics pad | |||
}; | }; | |||
//---- inlines ------------------------------------------------------------ ----- | //---- inlines ------------------------------------------------------------ ----- | |||
//_________________________________________________________________________ _____ | //_________________________________________________________________________ _____ | |||
inline void TPad::Modified(Bool_t flag) | inline void TPad::Modified(Bool_t flag) | |||
{ | { | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 3 lines changed or added | |||
TPaletteAxis.h | TPaletteAxis.h | |||
---|---|---|---|---|
// @(#)root/histpainter:$Id: TPaletteAxis.h 22071 2008-02-08 15:49:08Z coue t $ | // @(#)root/histpainter:$Id: TPaletteAxis.h 26620 2008-12-03 10:44:54Z coue t $ | |||
// Author: Rene Brun 15/11/2002 | // Author: Rene Brun 15/11/2002 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 | |||
TString fName; //Pave name | TString fName; //Pave name | |||
public: | public: | |||
// TPaletteAxis status bits | // TPaletteAxis status bits | |||
enum { kHasView = BIT(11)}; | enum { kHasView = BIT(11)}; | |||
TPaletteAxis(); | TPaletteAxis(); | |||
TPaletteAxis(Double_t x1, Double_t y1,Double_t x2 ,Double_t y2, TH1 *h); | TPaletteAxis(Double_t x1, Double_t y1,Double_t x2 ,Double_t y2, TH1 *h); | |||
TPaletteAxis(const TPaletteAxis &palette); | TPaletteAxis(const TPaletteAxis &palette); | |||
virtual ~TPaletteAxis(); | virtual ~TPaletteAxis(); | |||
void Copy(TObject &palette) const; | void Copy(TObject &palette) const; | |||
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py); | virtual Int_t DistancetoPrimitive(Int_t px, Int_t py); | |||
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py); | |||
TGaxis *GetAxis() {return &fAxis;} | TGaxis *GetAxis() {return &fAxis;} | |||
Option_t *GetName() const {return fName.Data();} | Int_t GetBinColor(Int_t i, Int_t j); | |||
Option_t *GetName() const {return fName.Data();} | ||||
virtual char *GetObjectInfo(Int_t px, Int_t py) const; | virtual char *GetObjectInfo(Int_t px, Int_t py) const; | |||
virtual void Paint(Option_t *option=""); | virtual void Paint(Option_t *option=""); | |||
virtual void SavePrimitive(ostream &out, Option_t *option = ""); | virtual void SavePrimitive(ostream &out, Option_t *option = ""); | |||
virtual void SetName(const char *name="") {fName = name;} // *MENU* | virtual void SetName(const char *name="") {fName = name;} // *MENU* | |||
virtual void SetLabelColor(Int_t labelcolor) {fAxis.SetLabelColor(label color);} // *MENU* | virtual void SetLabelColor(Int_t labelcolor) {fAxis.SetLabelColor(label color);} // *MENU* | |||
virtual void SetLabelFont(Int_t labelfont) {fAxis.SetLabelFont(labelfon t);} // *MENU* | virtual void SetLabelFont(Int_t labelfont) {fAxis.SetLabelFont(labelfon t);} // *MENU* | |||
virtual void SetLabelOffset(Float_t labeloffset) {fAxis.SetLabelOffset( labeloffset);} // *MENU* | virtual void SetLabelOffset(Float_t labeloffset) {fAxis.SetLabelOffset( labeloffset);} // *MENU* | |||
virtual void SetLabelSize(Float_t labelsize) {fAxis.SetLabelSize(labels ize);} // *MENU* | virtual void SetLabelSize(Float_t labelsize) {fAxis.SetLabelSize(labels ize);} // *MENU* | |||
virtual void SetTitleOffset(Float_t titleoffset=1) {fAxis.SetTitleOffse t(titleoffset);} // *MENU* | virtual void SetTitleOffset(Float_t titleoffset=1) {fAxis.SetTitleOffse t(titleoffset);} // *MENU* | |||
virtual void SetTitleSize(Float_t titlesize) {fAxis.SetTitleSize(titles ize);} // *MENU* | virtual void SetTitleSize(Float_t titlesize) {fAxis.SetTitleSize(titles ize);} // *MENU* | |||
End of changes. 3 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added | |||
TProcessID.h | TProcessID.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TProcessID.h 23058 2008-04-08 21:59:51Z pcanal $ | // @(#)root/cont:$Id: TProcessID.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 28/09/2001 | // Author: Rene Brun 28/09/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 34 | skipping to change at line 34 | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#endif | #endif | |||
#ifndef ROOT_TObjArray | #ifndef ROOT_TObjArray | |||
#include "TObjArray.h" | #include "TObjArray.h" | |||
#endif | #endif | |||
class TExMap; | class TExMap; | |||
class TProcessID : public TNamed { | class TProcessID : public TNamed { | |||
private: | ||||
TProcessID(const TProcessID &ref); // TProcessID are not copi | ||||
able. | ||||
TProcessID& operator=(const TProcessID &ref); // TProcessID are not copi | ||||
able. | ||||
protected: | protected: | |||
Int_t fCount; //!Reference count to this object (from T File) | Int_t fCount; //!Reference count to this object (from T File) | |||
TObjArray *fObjects; //!Array pointing to the referenced objec ts | TObjArray *fObjects; //!Array pointing to the referenced objec ts | |||
static TProcessID *fgPID; //Pointer to current session ProcessID | static TProcessID *fgPID; //Pointer to current session ProcessID | |||
static TObjArray *fgPIDs; //Table of ProcessIDs | static TObjArray *fgPIDs; //Table of ProcessIDs | |||
static TExMap *fgObjPIDs; //Table pointer to pids | static TExMap *fgObjPIDs; //Table pointer to pids | |||
static UInt_t fgNumber; //Referenced objects count | static UInt_t fgNumber; //Referenced objects count | |||
public: | public: | |||
TProcessID(); | TProcessID(); | |||
TProcessID(const TProcessID &ref); | ||||
TProcessID& operator=(const TProcessID &ref); | ||||
virtual ~TProcessID(); | virtual ~TProcessID(); | |||
void CheckInit(); | void CheckInit(); | |||
virtual void Clear(Option_t *option=""); | virtual void Clear(Option_t *option=""); | |||
Int_t DecrementCount(); | Int_t DecrementCount(); | |||
Int_t IncrementCount(); | Int_t IncrementCount(); | |||
Int_t GetCount() const {return fCount;} | Int_t GetCount() const {return fCount;} | |||
TObjArray *GetObjects() const {return fObjects;} | TObjArray *GetObjects() const {return fObjects;} | |||
TObject *GetObjectWithID(UInt_t uid); | TObject *GetObjectWithID(UInt_t uid); | |||
void PutObjectWithID(TObject *obj, UInt_t uid=0); | void PutObjectWithID(TObject *obj, UInt_t uid=0); | |||
virtual void RecursiveRemove(TObject *obj); | virtual void RecursiveRemove(TObject *obj); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 7 lines changed or added | |||
TProcessUUID.h | TProcessUUID.h | |||
---|---|---|---|---|
// @(#)root/cont:$Id: TProcessUUID.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/cont:$Id: TProcessUUID.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Rene Brun 06/07/2002 | // Author: Rene Brun 06/07/2002 | |||
/************************************************************************* | /************************************************************************* | |||
* 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 34 | skipping to change at line 34 | |||
#include "TProcessID.h" | #include "TProcessID.h" | |||
#endif | #endif | |||
class THashList; | class THashList; | |||
class TBits; | class TBits; | |||
class TUUID; | class TUUID; | |||
class TObjString; | class TObjString; | |||
class TProcessUUID : public TProcessID { | class TProcessUUID : public TProcessID { | |||
private: | ||||
TProcessUUID(const TProcessID&); // TProcessUUID are not co | ||||
piable. | ||||
TProcessUUID &operator=(const TProcessUUID&); // TProcessUUID are not co | ||||
piable. | ||||
protected: | protected: | |||
THashList *fUUIDs; //Global list of TUUIDs | THashList *fUUIDs; //Global list of TUUIDs | |||
TBits *fActive; //Table of active UUIDs | TBits *fActive; //Table of active UUIDs | |||
public: | public: | |||
TProcessUUID(); | TProcessUUID(); | |||
virtual ~TProcessUUID(); | virtual ~TProcessUUID(); | |||
UInt_t AddUUID(TUUID &uuid, TObject *obj); | UInt_t AddUUID(TUUID &uuid, TObject *obj); | |||
UInt_t AddUUID(const char *uuids); | UInt_t AddUUID(const char *uuids); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 7 lines changed or added | |||
TProof.h | TProof.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TProof.h 26388 2008-11-22 23:28:11Z ganis $ | // @(#)root/proof:$Id: TProof.h 26951 2008-12-16 12:04:38Z 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 458 | skipping to change at line 458 | |||
TString fPackageDir; //package directory (used on client) | TString fPackageDir; //package directory (used on client) | |||
THashList *fGlobalPackageDirList;//list of directories containing g lobal packages libs | THashList *fGlobalPackageDirList;//list of directories containing g lobal packages libs | |||
TProofLockPath *fPackageLock; //package lock | TProofLockPath *fPackageLock; //package lock | |||
TList *fEnabledPackagesOnClient; //list of packages enabled on client | TList *fEnabledPackagesOnClient; //list of packages enabled on client | |||
TList *fInputData; //Input data objects sent over via fil e | TList *fInputData; //Input data objects sent over via fil e | |||
TString fInputDataFile; //File with input data objects | TString fInputDataFile; //File with input data objects | |||
PrintProgress_t fPrintProgress; //Function function to display progres s info in batch mode | PrintProgress_t fPrintProgress; //Function function to display progres s info in batch mode | |||
TVirtualMutex *fCloseMutex; // Avoid crashes in MarkBad or alike w | ||||
hile closing | ||||
TList *fLoadedMacros; // List of loaded macros (just file na mes) | TList *fLoadedMacros; // List of loaded macros (just file na mes) | |||
static TList *fgProofEnvList; // List of TNameds defining environmen t | static TList *fgProofEnvList; // List of TNameds defining environmen t | |||
// variables to pass to proofserv | // variables to pass to proofserv | |||
protected: | protected: | |||
enum ESlaves { kAll, kActive, kUnique, kAllUnique }; | enum ESlaves { kAll, kActive, kUnique, kAllUnique }; | |||
TUrl fUrl; //Url of the master | TUrl fUrl; //Url of the master | |||
TString fConfFile; //file containing config information | TString fConfFile; //file containing config information | |||
TString fConfDir; //directory containing cluster config i nformation | TString fConfDir; //directory containing cluster config i nformation | |||
TString fImage; //master's image name | TString fImage; //master's image name | |||
skipping to change at line 689 | skipping to change at line 691 | |||
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); | |||
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 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); | Int_t Load(const char *macro, Bool_t notOnClient = kFALSE, Bool_t uniqueOnly = kTRUE); | |||
Int_t AddDynamicPath(const char *libpath, Bool_t onClient = kFALSE ); | Int_t AddDynamicPath(const char *libpath, Bool_t onClient = kFALSE ); | |||
Int_t AddIncludePath(const char *incpath, Bool_t onClient = kFALSE ); | Int_t AddIncludePath(const char *incpath, Bool_t onClient = kFALSE ); | |||
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); | |||
//-- dataset management | //-- dataset management | |||
Int_t UploadDataSet(const char *dataset, | Int_t UploadDataSet(const char *dataset, | |||
TList *files, | TList *files, | |||
const char *dest = 0, | const char *dest = 0, | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 5 lines changed or added | |||
TProofMgr.h | TProofMgr.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TProofMgr.h 25918 2008-10-22 15:00:04Z ganis $ | // @(#)root/proof:$Id: TProofMgr.h 26951 2008-12-16 12:04:38Z 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_TProofMgr | #ifndef ROOT_TProofMgr | |||
#define ROOT_TProofMgr | #define ROOT_TProofMgr | |||
skipping to change at line 78 | skipping to change at line 78 | |||
virtual Bool_t IsProofd() const { return (fServType == kProofd); } | virtual Bool_t IsProofd() const { return (fServType == kProofd); } | |||
virtual Bool_t IsValid() const { return kTRUE; } | virtual Bool_t IsValid() const { return kTRUE; } | |||
virtual void SetInvalid() { } | virtual void SetInvalid() { } | |||
virtual TProof *AttachSession(Int_t, Bool_t = kFALSE); | virtual TProof *AttachSession(Int_t, Bool_t = kFALSE); | |||
virtual TProof *AttachSession(TProofDesc *, Bool_t = kFALSE); | virtual TProof *AttachSession(TProofDesc *, Bool_t = kFALSE); | |||
virtual TProof *CreateSession(const char * = 0, const char * = 0, In t_t = -1); | virtual TProof *CreateSession(const char * = 0, const char * = 0, In t_t = -1); | |||
virtual void DetachSession(Int_t, Option_t * = ""); | virtual void DetachSession(Int_t, Option_t * = ""); | |||
virtual TProofDesc *GetProofDesc(Int_t id); | virtual TProofDesc *GetProofDesc(Int_t id); | |||
virtual Int_t GetRemoteProtocol() const { return fRemoteProtocol; } | virtual Int_t GetRemoteProtocol() const { return fRemoteProtocol; } | |||
virtual TProofLog *GetSessionLogs(Int_t = 0, const char * = 0, const ch ar * = 0) | virtual TProofLog *GetSessionLogs(Int_t = 0, const char * = 0, const ch ar * = "-v \"| SvcMsg\"") | |||
{ return (TProofLog * )0; } | { return (TProofLog * )0; } | |||
virtual const char *GetUrl() { return fUrl.GetUrl(); } | virtual const char *GetUrl() { return fUrl.GetUrl(); } | |||
virtual Bool_t MatchUrl(const char *url); | virtual Bool_t MatchUrl(const char *url); | |||
virtual void ShowROOTVersions() { } | virtual void ShowROOTVersions() { } | |||
virtual TList *QuerySessions(Option_t *opt = "S"); | virtual TList *QuerySessions(Option_t *opt = "S"); | |||
virtual TObjString *ReadBuffer(const char *, Long64_t, Int_t) | virtual TObjString *ReadBuffer(const char *, Long64_t, Int_t) | |||
{ return (TObjString *)0; } | { return (TObjString *)0; } | |||
virtual TObjString *ReadBuffer(const char *, const char *) | virtual TObjString *ReadBuffer(const char *, const char *) | |||
{ return (TObjString *)0; } | { return (TObjString *)0; } | |||
virtual Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); | virtual Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TProofMgrLite.h | TProofMgrLite.h | |||
---|---|---|---|---|
// @(#)root/proofx:$Id: TProofMgrLite.h 25918 2008-10-22 15:00:04Z ganis $ | // @(#)root/proofx:$Id: TProofMgrLite.h 26823 2008-12-11 09:26:32Z ganis $ | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TProofMgrLite | #ifndef ROOT_TProofMgrLite | |||
#define ROOT_TProofMgrLite | #define ROOT_TProofMgrLite | |||
skipping to change at line 36 | skipping to change at line 36 | |||
#endif | #endif | |||
class TProofMgrLite : public TProofMgr { | class TProofMgrLite : public TProofMgr { | |||
public: | public: | |||
TProofMgrLite(const char *url, Int_t loglevel = -1, const char *alias = ""); | TProofMgrLite(const char *url, Int_t loglevel = -1, const char *alias = ""); | |||
virtual ~TProofMgrLite() { } | virtual ~TProofMgrLite() { } | |||
TProof *CreateSession(const char * = 0, const char * = 0, Int_t = -1 ); | TProof *CreateSession(const char * = 0, const char * = 0, Int_t = -1 ); | |||
TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, | TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, | |||
const char *pattern = 0); | const char *pattern = "-v | SvcMsg"); | |||
TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); | TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); | |||
TObjString *ReadBuffer(const char *file, const char *pattern); | TObjString *ReadBuffer(const char *file, const char *pattern); | |||
ClassDef(TProofMgrLite,0) // XrdProofd PROOF manager interface | ClassDef(TProofMgrLite,0) // XrdProofd PROOF manager interface | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TProofProgressLog.h | TProofProgressLog.h | |||
---|---|---|---|---|
// @(#)root/sessionviewer:$Id: TProofProgressLog.h 25073 2008-08-06 09:27:4 8Z ganis $ | // @(#)root/sessionviewer:$Id: TProofProgressLog.h 26823 2008-12-11 09:26:3 2Z 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 39 | skipping to change at line 39 | |||
class TProofProgressDialog; | class TProofProgressDialog; | |||
class TProofLog; | class TProofLog; | |||
class TGTextEntry; | class TGTextEntry; | |||
class TGNumberEntry; | class TGNumberEntry; | |||
class TGListBox; | class TGListBox; | |||
class TGSplitButton; | class TGSplitButton; | |||
class TProofProgressLog : public TGTransientFrame { | class TProofProgressLog : public TGTransientFrame { | |||
private: | private: | |||
enum ETextType { kRaw = 0, kStd = 1, kGrep = 2 }; | ||||
TGTextView *fText; // text widget | TGTextView *fText; // text widget | |||
TGTextButton *fClose; // close button | TGTextButton *fClose; // close button | |||
TGListBox *fLogList; // list of workers | TGListBox *fLogList; // list of workers | |||
TGTextButton *fLogNew; // display logs button | TGTextButton *fLogNew; // display logs button | |||
TProofProgressDialog *fDialog; // owner dialog | TProofProgressDialog *fDialog; // owner dialog | |||
TProofLog *fProofLog; // the log | TProofLog *fProofLog; // the log | |||
TGNumberEntry *fLinesFrom; // starting line | TGNumberEntry *fLinesFrom; // starting line | |||
TGNumberEntry *fLinesTo; // ending line | TGNumberEntry *fLinesTo; // ending line | |||
TGTextEntry *fGrepText; // text to grep for in the logs | TGTextEntry *fGrepText; // text to grep for in the logs | |||
TGTextEntry *fFileName; // file to save to | TGTextEntry *fFileName; // file to save to | |||
TGTextButton *fSave; // save button | TGTextButton *fSave; // save button | |||
TGTextButton *fGrepButton; //grep button | TGTextButton *fGrepButton; //grep button | |||
TGCheckButton *fAllLines; // display all lines button | TGCheckButton *fAllLines; // display all lines button | |||
TGCheckButton *fRawLines; // display raw lines button | ||||
TGSplitButton *fAllWorkers; // display all workers button | TGSplitButton *fAllWorkers; // display all workers button | |||
Bool_t fFullText; // 0 - when grep was called | Bool_t fFullText; // 0 - when grep was called | |||
Int_t fTextType; // Type of retrieval | ||||
public: | public: | |||
TProofProgressLog(TProofProgressDialog *d, Int_t w = 700, Int_t h = 300) ; | TProofProgressLog(TProofProgressDialog *d, Int_t w = 700, Int_t h = 300) ; | |||
virtual ~TProofProgressLog(); | virtual ~TProofProgressLog(); | |||
TGListBox* BuildLogList(TGFrame *parent); | TGListBox* BuildLogList(TGFrame *parent); | |||
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 LoadBuffer(const char *buffer); | void LoadBuffer(const char *buffer); | |||
void AddBuffer(const char *buffer); | void AddBuffer(const char *buffer); | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 7 lines changed or added | |||
TProofServ.h | TProofServ.h | |||
---|---|---|---|---|
// @(#)root/proof:$Id: TProofServ.h 26381 2008-11-22 17:15:24Z ganis $ | // @(#)root/proof:$Id: TProofServ.h 26993 2008-12-17 16:01:04Z rdm $ | |||
// Author: Fons Rademakers 16/02/97 | // Author: Fons Rademakers 16/02/97 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 60 | skipping to change at line 60 | |||
class TSocket; | class TSocket; | |||
class THashList; | class THashList; | |||
class TList; | class TList; | |||
class TDSetElement; | class TDSetElement; | |||
class TMessage; | class TMessage; | |||
class TTimer; | class TTimer; | |||
class TReaperTimer; | class TReaperTimer; | |||
class TMutex; | class TMutex; | |||
class TFileCollection; | class TFileCollection; | |||
class TProofDataSetManager; | class TProofDataSetManager; | |||
class TFileHandler; | ||||
// Hook to external function setting up authentication related stuff | // Hook to external function setting up authentication related stuff | |||
// for old versions. | // for old versions. | |||
// For backward compatibility | // For backward compatibility | |||
typedef Int_t (*OldProofServAuthSetup_t)(TSocket *, Bool_t, Int_t, | typedef Int_t (*OldProofServAuthSetup_t)(TSocket *, Bool_t, Int_t, | |||
TString &, TString &, TString &); | TString &, TString &, TString &); | |||
class TProofServ : public TApplication { | class TProofServ : public TApplication { | |||
friend class TProofServLite; | friend class TProofServLite; | |||
skipping to change at line 117 | skipping to change at line 118 | |||
Int_t fNcmd; //command history number | Int_t fNcmd; //command history number | |||
Int_t fGroupPriority; //priority of group the user belongs to (0 - 100) | Int_t fGroupPriority; //priority of group the user belongs to (0 - 100) | |||
Bool_t fEndMaster; //true for a master in direct contact o nly with workers | Bool_t fEndMaster; //true for a master in direct contact o nly with workers | |||
Bool_t fMasterServ; //true if we are a master server | Bool_t fMasterServ; //true if we are a master server | |||
Bool_t fInterrupt; //if true macro execution will be stopp ed | Bool_t fInterrupt; //if true macro execution will be stopp ed | |||
Float_t fRealTime; //real time spent executing commands | Float_t fRealTime; //real time spent executing commands | |||
Float_t fCpuTime; //CPU time spent executing commands | Float_t fCpuTime; //CPU time spent executing commands | |||
TStopwatch fLatency; //measures latency of packet requests | TStopwatch fLatency; //measures latency of packet requests | |||
TStopwatch fCompute; //measures time spend processing a pack et | TStopwatch fCompute; //measures time spend processing a pack et | |||
TFileHandler *fInputHandler; //Input socket handler | ||||
TQueryResultManager *fQMgr; //Query-result manager | TQueryResultManager *fQMgr; //Query-result manager | |||
TList *fWaitingQueries; //list of TProofQueryResult wating to b e processed | TList *fWaitingQueries; //list of TProofQueryResult waiting to be processed | |||
Bool_t fIdle; //TRUE if idle | Bool_t fIdle; //TRUE if idle | |||
TList *fQueuedMsg; //list of messages waiting to be proces | ||||
sed | ||||
TString fPrefix; //Prefix identifying the node | TString fPrefix; //Prefix identifying the node | |||
Bool_t fRealTimeLog; //TRUE if log messages should be send b ack in real-time | Bool_t fRealTimeLog; //TRUE if log messages should be send b ack in real-time | |||
TTimer *fShutdownTimer; // Timer used to shutdown out-of-contro l sessions | TTimer *fShutdownTimer; // Timer used to shutdown out-of-contro l sessions | |||
TReaperTimer *fReaperTimer; // Timer used to control children state | TReaperTimer *fReaperTimer; // Timer used to control children state | |||
Int_t fInflateFactor; // Factor in 1/1000 to inflate the CPU time | Int_t fInflateFactor; // Factor in 1/1000 to inflate the CPU time | |||
TProofDataSetManager* fDataSetManager; // dataset manager | TProofDataSetManager* fDataSetManager; // dataset manager | |||
Bool_t fLogToSysLog; //true if logs should be sent to syslog too | Bool_t fLogToSysLog; //true if logs should be sent to syslog too | |||
Bool_t fSendLogToMaster; // On workers, controls logs sending to master | Bool_t fSendLogToMaster; // On workers, controls logs sending to master | |||
// Quotas (-1 to disable) | // Quotas (-1 to disable) | |||
Int_t fMaxQueries; //Max number of queries fully kept | Int_t fMaxQueries; //Max number of queries fully kept | |||
Long64_t fMaxBoxSize; //Max size of the sandbox | Long64_t fMaxBoxSize; //Max size of the sandbox | |||
Long64_t fHWMBoxSize; //High-Water-Mark on the sandbox size | Long64_t fHWMBoxSize; //High-Water-Mark on the sandbox size | |||
// Memory limits (-1 to disable) set by envs ROOTPROOFASSOFT and RPPTPRO | ||||
FOASHARD | ||||
Long_t fVirtMemHWM; //Above this we terminate gently (in kB | ||||
) | ||||
Long_t fVirtMemMax; //Hard limit enforced by the system (in | ||||
kB) | ||||
static FILE *fgErrorHandlerFile; // File where to log | static FILE *fgErrorHandlerFile; // File where to log | |||
static Int_t fgRecursive; // Keep track of recursive inputs durin g processing | static Int_t fgRecursive; // Keep track of recursive inputs durin g processing | |||
void RedirectOutput(const char *dir = 0, const char *mode = "w" ); | void RedirectOutput(const char *dir = 0, const char *mode = "w" ); | |||
Int_t CatMotd(); | Int_t CatMotd(); | |||
Int_t UnloadPackage(const char *package); | Int_t UnloadPackage(const char *package); | |||
Int_t UnloadPackages(); | Int_t UnloadPackages(); | |||
Int_t OldAuthSetup(TString &wconf); | Int_t OldAuthSetup(TString &wconf); | |||
Int_t GetPriority(); | Int_t GetPriority(); | |||
skipping to change at line 207 | skipping to change at line 216 | |||
Int_t GetGroupSize() const { return fGroupSize; } | Int_t GetGroupSize() const { return fGroupSize; } | |||
Int_t GetLogLevel() const { return fLogLevel; } | Int_t GetLogLevel() const { return fLogLevel; } | |||
TSocket *GetSocket() const { return fSocket; } | TSocket *GetSocket() const { return fSocket; } | |||
Float_t GetRealTime() const { return fRealTime; } | Float_t GetRealTime() const { return fRealTime; } | |||
Float_t GetCpuTime() const { return fCpuTime; } | Float_t GetCpuTime() const { return fCpuTime; } | |||
void GetOptions(Int_t *argc, char **argv); | void GetOptions(Int_t *argc, char **argv); | |||
TList *GetEnabledPackages() const { return fEnabledPackages; } | TList *GetEnabledPackages() const { return fEnabledPackages; } | |||
Int_t GetInflateFactor() const { return fInflateFactor; } | Int_t GetInflateFactor() const { return fInflateFactor; } | |||
Long_t GetVirtMemHWM() const { return fVirtMemHWM; } | ||||
const char *GetPrefix() const { return fPrefix; } | const char *GetPrefix() const { return fPrefix; } | |||
void FlushLogFile(); | void FlushLogFile(); | |||
Int_t CopyFromCache(const char *name, Bool_t cpbin); | Int_t CopyFromCache(const char *name, Bool_t cpbin); | |||
Int_t CopyToCache(const char *name, Int_t opt = 0); | Int_t CopyToCache(const char *name, Int_t opt = 0); | |||
virtual EQueryAction GetWorkers(TList *workers, Int_t &prioritychange); | virtual EQueryAction GetWorkers(TList *workers, Int_t &prioritychange); | |||
virtual void HandleException(Int_t sig); | virtual void HandleException(Int_t sig); | |||
skipping to change at line 234 | skipping to change at line 245 | |||
Bool_t IsMaster() const { return fMasterServ; } | Bool_t IsMaster() const { return fMasterServ; } | |||
Bool_t IsParallel() const; | Bool_t IsParallel() const; | |||
Bool_t IsTopMaster() const { return fOrdinal == "0"; } | Bool_t IsTopMaster() const { return fOrdinal == "0"; } | |||
void Run(Bool_t retrn = kFALSE); | void Run(Bool_t retrn = kFALSE); | |||
void Print(Option_t *option="") const; | void Print(Option_t *option="") const; | |||
TObject *Get(const char *namecycle); | TObject *Get(const char *namecycle); | |||
TDSetElement *GetNextPacket(Long64_t totalEntries = -1); | TDSetElement *GetNextPacket(Long64_t totalEntries = -1); | |||
virtual void ReleaseWorker(const char *) { } | ||||
void Reset(const char *dir); | void Reset(const char *dir); | |||
Int_t ReceiveFile(const char *file, Bool_t bin, Long64_t size); | Int_t ReceiveFile(const char *file, Bool_t bin, Long64_t size); | |||
virtual Int_t SendAsynMessage(const char *msg, Bool_t lf = kTRUE); | virtual Int_t SendAsynMessage(const char *msg, Bool_t lf = kTRUE); | |||
virtual void SendLogFile(Int_t status = 0, Int_t start = -1, Int_t end = -1); | virtual void SendLogFile(Int_t status = 0, Int_t start = -1, Int_t end = -1); | |||
void SendStatistics(); | void SendStatistics(); | |||
void SendParallel(Bool_t async = kFALSE); | void SendParallel(Bool_t async = kFALSE); | |||
// Disable / Enable read timeout | // Disable / Enable read timeout | |||
virtual void DisableTimeout() { } | virtual void DisableTimeout() { } | |||
virtual void EnableTimeout() { } | virtual void EnableTimeout() { } | |||
End of changes. 8 change blocks. | ||||
2 lines changed or deleted | 18 lines changed or added | |||
TPyROOTApplication.h | TPyROOTApplication.h | |||
---|---|---|---|---|
// Author: Wim Lavrijsen February 2006 | // Author: Wim Lavrijsen February 2006 | |||
#ifndef ROOT_TPyROOTApplication | #ifndef ROOT_TPyROOTApplication | |||
#define ROOT_TPyROOTApplication | #define ROOT_TPyROOTApplication | |||
/////////////////////////////////////////////////////////////////////////// /// | /////////////////////////////////////////////////////////////////////////// /// | |||
// // | // // | |||
// TPyROOTApplication // | // TPyROOTApplication // | |||
// // | // // | |||
// Setup interactive application. // | // Setup interactive application for python. // | |||
// // | // // | |||
/////////////////////////////////////////////////////////////////////////// /// | /////////////////////////////////////////////////////////////////////////// /// | |||
// ROOT | // ROOT | |||
#ifndef ROOT_TApplication | #ifndef ROOT_TApplication | |||
#include "TApplication.h" | #include "TApplication.h" | |||
#endif | #endif | |||
namespace PyROOT { | namespace PyROOT { | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
TPySelector.h | TPySelector.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
// ctor/dtor ... cctor and assignment are private in base class | // ctor/dtor ... cctor and assignment are private in base class | |||
TPySelector( TTree* /* tree */ = 0, PyObject* self = 0 ); | TPySelector( TTree* /* tree */ = 0, PyObject* self = 0 ); | |||
virtual ~TPySelector(); | virtual ~TPySelector(); | |||
// TSelector set of forwarded (overridden) methods | // TSelector set of forwarded (overridden) methods | |||
virtual Int_t Version() const; | virtual Int_t Version() const; | |||
virtual Int_t GetEntry( Long64_t entry, Int_t getall = 0 ); | virtual Int_t GetEntry( Long64_t entry, Int_t getall = 0 ); | |||
virtual Bool_t Notify(); | virtual Bool_t Notify(); | |||
virtual void Init( TTree* tree ); | virtual void Init( TTree* tree ); | |||
virtual void Begin( TTree* /* tree */ ); | virtual void Begin( TTree* tree = 0 /* not used */ ); | |||
virtual void SlaveBegin( TTree* tree ); | virtual void SlaveBegin( TTree* tree ); | |||
virtual Bool_t Process( Long64_t entry ); | virtual Bool_t Process( Long64_t entry ); | |||
virtual void SlaveTerminate(); | virtual void SlaveTerminate(); | |||
virtual void Terminate(); | virtual void Terminate(); | |||
virtual void Abort( const char* why, EAbort what = kAbortProcess ); | virtual void Abort( const char* why, EAbort what = kAbortProcess ); | |||
ClassDef( TPySelector, 1 ); //Python equivalent base class for PROOF | ClassDef( TPySelector, 1 ); //Python equivalent base class for PROOF | |||
private: | private: | |||
// private helpers for forwarding to python | // private helpers for forwarding to python | |||
void SetupPySelf(); | void SetupPySelf(); | |||
void CallSelf( const char* method ); | PyObject* CallSelf( const char* method, PyObject* pyobject = 0 ); | |||
private: | private: | |||
PyObject* fPySelf; //! actual python object | PyObject* fPySelf; //! actual python object | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TQClass.h | TQClass.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TQClass.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TQClass.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Valeriy Onuchin & Fons Rademakers 15/10/2000 | // Author: Valeriy Onuchin & Fons Rademakers 15/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 | |||
#include "TQObject.h" | #include "TQObject.h" | |||
#endif | #endif | |||
#ifndef ROOT_TClass | #ifndef ROOT_TClass | |||
#include "TClass.h" | #include "TClass.h" | |||
#endif | #endif | |||
// This class makes it possible to have a single connection from | // This class makes it possible to have a single connection from | |||
// all objects of the same class | // all objects of the same class | |||
class TQClass : public TQObject, public TClass { | class TQClass : public TQObject, public TClass { | |||
private: | ||||
TQClass(const TClass&) : TQObject(), TClass() {}; | ||||
TQClass& operator=(const TQClass&) { return *this; } | ||||
friend class TQObject; | friend class TQObject; | |||
public: | public: | |||
TQClass(const char *name, Version_t cversion, | TQClass(const char *name, Version_t cversion, | |||
const type_info &info, TVirtualIsAProxy *isa, | const type_info &info, TVirtualIsAProxy *isa, | |||
ShowMembersFunc_t showmembers, | ShowMembersFunc_t showmembers, | |||
const char *dfil = 0, const char *ifil = 0, | const char *dfil = 0, const char *ifil = 0, | |||
Int_t dl = 0, Int_t il = 0) : | Int_t dl = 0, Int_t il = 0) : | |||
TQObject(), | TQObject(), | |||
TClass(name, cversion, info,isa,showmembers, dfil, ifil, dl, il) { } | TClass(name, cversion, info,isa,showmembers, dfil, ifil, dl, il) { } | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 5 lines changed or added | |||
TRootBrowser.h | TRootBrowser.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TRootBrowser.h 26142 2008-11-11 14:53:11Z bellenot $ | // @(#)root/gui:$Id: TRootBrowser.h 26742 2008-12-08 21:21:19Z bellenot $ | |||
// Author: Bertrand Bellenot 26/09/2007 | // Author: Bertrand Bellenot 26/09/2007 | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
skipping to change at line 71 | skipping to change at line 71 | |||
protected: | protected: | |||
TGLayoutHints *fLH0, *fLH1, *fLH2, *fLH3; // Layout hints, part 1 | TGLayoutHints *fLH0, *fLH1, *fLH2, *fLH3; // Layout hints, part 1 | |||
TGLayoutHints *fLH4, *fLH5, *fLH6, *fLH7; // Layout hints, part 2 | TGLayoutHints *fLH4, *fLH5, *fLH6, *fLH7; // Layout hints, part 2 | |||
TGTab *fTabLeft; // Left Tab | TGTab *fTabLeft; // Left Tab | |||
TGTab *fTabRight; // Right Tab | TGTab *fTabRight; // Right Tab | |||
TGTab *fTabBottom; // Bottom Tab | TGTab *fTabBottom; // Bottom Tab | |||
TGTab *fEditTab; // Tab in "Edit" mode | TGTab *fEditTab; // Tab in "Edit" mode | |||
Int_t fEditPos; // Id of tab in "Edit" m ode | Int_t fEditPos; // Id of tab in "Edit" m ode | |||
Int_t fEditSubPos; // Id of subtab in "Edit " mode | ||||
TGVerticalFrame *fVf; // Vertical frame | TGVerticalFrame *fVf; // Vertical frame | |||
TGHorizontalFrame *fHf; // Horizontal frame | TGHorizontalFrame *fHf; // Horizontal frame | |||
TGHorizontalFrame *fH1; // Horizontal frame | TGHorizontalFrame *fH1; // Horizontal frame | |||
TGHorizontalFrame *fH2; // Horizontal frame | TGHorizontalFrame *fH2; // Horizontal frame | |||
TGVerticalFrame *fV1; // Vertical frame | TGVerticalFrame *fV1; // Vertical frame | |||
TGVerticalFrame *fV2; // Vertical frame | TGVerticalFrame *fV2; // Vertical frame | |||
TGVSplitter *fVSplitter; // Vertical splitter | TGVSplitter *fVSplitter; // Vertical splitter | |||
TGHSplitter *fHSplitter; // Horizontal splitter | TGHSplitter *fHSplitter; // Horizontal splitter | |||
TGCompositeFrame *fEditFrame; // Frame in "Edit" mode | TGCompositeFrame *fEditFrame; // Frame in "Edit" mode | |||
TGHorizontalFrame *fTopMenuFrame; // Top menu frame | TGHorizontalFrame *fTopMenuFrame; // Top menu frame | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TRootCanvas.h | TRootCanvas.h | |||
---|---|---|---|---|
// @(#)root/gui:$Id: TRootCanvas.h 25603 2008-09-30 07:58:03Z bellenot $ | // @(#)root/gui:$Id: TRootCanvas.h 26760 2008-12-09 15:56:43Z brun $ | |||
// Author: Fons Rademakers 15/01/98 | // Author: Fons Rademakers 15/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 137 | skipping to change at line 137 | |||
void SetWindowTitle(const char *newTitle); | void SetWindowTitle(const char *newTitle); | |||
void SetCanvasSize(UInt_t w, UInt_t h); | void SetCanvasSize(UInt_t w, UInt_t h); | |||
void SetStatusText(const char *txt = 0, Int_t partidx = 0); | void SetStatusText(const char *txt = 0, Int_t partidx = 0); | |||
void Show() { MapRaised(); } | void Show() { MapRaised(); } | |||
void ShowMenuBar(Bool_t show = kTRUE); | void ShowMenuBar(Bool_t show = kTRUE); | |||
void ShowStatusBar(Bool_t show = kTRUE); | void ShowStatusBar(Bool_t show = kTRUE); | |||
void ShowEditor(Bool_t show = kTRUE); | void ShowEditor(Bool_t show = kTRUE); | |||
void ShowToolBar(Bool_t show = kTRUE); | void ShowToolBar(Bool_t show = kTRUE); | |||
Bool_t HasEditor() const; | ||||
Bool_t HasMenuBar() const; | ||||
Bool_t HasStatusBar() const; | ||||
Bool_t HasToolBar() const; | ||||
TGMenuBar *GetMenuBar() const { return fMenuBar; } | TGMenuBar *GetMenuBar() const { return fMenuBar; } | |||
TGLayoutHints *GetMenuBarItemLayout() const { return fMenuBarItemLayout; } | TGLayoutHints *GetMenuBarItemLayout() const { return fMenuBarItemLayout; } | |||
TGStatusBar *GetStatusBar() const { return fStatusBar; } | TGStatusBar *GetStatusBar() const { return fStatusBar; } | |||
TGDockableFrame *GetToolDock() const { return fToolDock; } | TGDockableFrame *GetToolDock() const { return fToolDock; } | |||
// overridden from TGMainFrame | // overridden from TGMainFrame | |||
void CloseWindow(); | void CloseWindow(); | |||
Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2); | Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2); | |||
void ReallyDelete(); | void ReallyDelete(); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 6 lines changed or added | |||
TSQLServer.h | TSQLServer.h | |||
---|---|---|---|---|
// @(#)root/net:$Id: TSQLServer.h 23091 2008-04-09 15:04:27Z rdm $ | // @(#)root/net:$Id: TSQLServer.h 26487 2008-11-26 16:52:50Z rdm $ | |||
// Author: Fons Rademakers 25/11/99 | // Author: Fons Rademakers 25/11/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 111 | skipping to change at line 111 | |||
virtual Bool_t IsError() const { return GetErrorCode()!=0; } | virtual Bool_t IsError() const { return GetErrorCode()!=0; } | |||
virtual Int_t GetErrorCode() const; | virtual Int_t GetErrorCode() const; | |||
virtual const char* GetErrorMsg() const; | virtual const char* GetErrorMsg() const; | |||
virtual void EnableErrorOutput(Bool_t on = kTRUE) { fErrorOut = o n; } | virtual void EnableErrorOutput(Bool_t on = kTRUE) { fErrorOut = o n; } | |||
virtual Bool_t StartTransaction(); | virtual Bool_t StartTransaction(); | |||
virtual Bool_t Commit(); | virtual Bool_t Commit(); | |||
virtual Bool_t Rollback(); | virtual Bool_t Rollback(); | |||
virtual Bool_t PingVerify() { return kFALSE; } | ||||
virtual Int_t Ping() { return -9999; } | ||||
static TSQLServer *Connect(const char *db, const char *uid, const char * pw); | static TSQLServer *Connect(const char *db, const char *uid, const char * pw); | |||
ClassDef(TSQLServer,0) // Connection to SQL server | ClassDef(TSQLServer,0) // Connection to SQL server | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
TStreamerElement.h | TStreamerElement.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TStreamerElement.h 25450 2008-09-18 21:13:42Z pcanal $ | // @(#)root/meta:$Id: TStreamerElement.h 26606 2008-12-02 20:36:09Z 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 33 | skipping to change at line 33 | |||
#ifndef ROOT_TNamed | #ifndef ROOT_TNamed | |||
#include "TNamed.h" | #include "TNamed.h" | |||
#endif | #endif | |||
class TMethodCall; | class TMethodCall; | |||
class TClass; | class TClass; | |||
class TStreamerBasicType; | class TStreamerBasicType; | |||
class TStreamerElement : public TNamed { | class TStreamerElement : public TNamed { | |||
private: | ||||
TStreamerElement(const TStreamerElement &); // Not implemented | ||||
TStreamerElement&operator=(const TStreamerElement&); // Not implemented | ||||
protected: | protected: | |||
Int_t fType; //element type | Int_t fType; //element type | |||
Int_t fSize; //sizeof element | Int_t fSize; //sizeof element | |||
Int_t fArrayLength; //cumulative size of all array dims | Int_t fArrayLength; //cumulative size of all array dims | |||
Int_t fArrayDim; //number of array dimensions | Int_t fArrayDim; //number of array dimensions | |||
Int_t fMaxIndex[5]; //Maximum array index for array dimen sion "dim" | Int_t fMaxIndex[5]; //Maximum array index for array dimen sion "dim" | |||
Int_t fOffset; //!element offset in class | Int_t fOffset; //!element offset in class | |||
Int_t fTObjectOffset; //!base offset for TObject if the ele ment inherits from it | Int_t fTObjectOffset; //!base offset for TObject if the ele ment inherits from it | |||
Int_t fNewType; //!new element type when reading | Int_t fNewType; //!new element type when reading | |||
TString fTypeName; //Data type name of data member | TString fTypeName; //Data type name of data member | |||
skipping to change at line 114 | skipping to change at line 118 | |||
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;} | |||
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: | ||||
TStreamerBase(const TStreamerBase &); // Not implemented | ||||
TStreamerBase&operator=(const TStreamerBase&); // Not implemented | ||||
protected: | protected: | |||
Int_t fBaseVersion; //version number of the base clas s FIXME: What for? What about the schema evolution issues? | Int_t fBaseVersion; //version number of the base clas s FIXME: What for? What about the schema evolution issues? | |||
TClass *fBaseClass; //!pointer to base class | TClass *fBaseClass; //!pointer to base class | |||
TClass *fNewBaseClass; //!pointer to new base class if r enamed | TClass *fNewBaseClass; //!pointer to new base class if r enamed | |||
public: | public: | |||
TStreamerBase(); | TStreamerBase(); | |||
TStreamerBase(const char *name, const char *title, Int_t offset); | TStreamerBase(const char *name, const char *title, Int_t offset); | |||
virtual ~TStreamerBase(); | virtual ~TStreamerBase(); | |||
skipping to change at line 145 | skipping to change at line 153 | |||
void SetBaseVersion(Int_t v) {fBaseVersion = v;} | void SetBaseVersion(Int_t v) {fBaseVersion = v;} | |||
virtual void Update(const TClass *oldClass, TClass *newClass); | virtual void Update(const TClass *oldClass, TClass *newClass); | |||
Int_t WriteBuffer(TBuffer &b, char *pointer); | Int_t WriteBuffer(TBuffer &b, char *pointer); | |||
ClassDef(TStreamerBase,3) //Streamer element of type base class | ClassDef(TStreamerBase,3) //Streamer element of type base class | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerBasicPointer : public TStreamerElement { | class TStreamerBasicPointer : public TStreamerElement { | |||
private: | ||||
TStreamerBasicPointer(const TStreamerBasicPointer &); // Not im | ||||
plemented | ||||
TStreamerBasicPointer&operator=(const TStreamerBasicPointer&); // Not im | ||||
plemented | ||||
protected: | protected: | |||
Int_t fCountVersion; //version number of the class with the counter | Int_t fCountVersion; //version number of the class with the counter | |||
TString fCountName; //name of data member holding the a rray count | TString fCountName; //name of data member holding the a rray count | |||
TString fCountClass; //name of the class with the counte r | TString fCountClass; //name of the class with the counte r | |||
TStreamerBasicType *fCounter; //!pointer to basic type counter | TStreamerBasicType *fCounter; //!pointer to basic type counter | |||
public: | public: | |||
TStreamerBasicPointer(); | TStreamerBasicPointer(); | |||
TStreamerBasicPointer(const char *name, const char *title, Int_t offset, Int_t dtype, | TStreamerBasicPointer(const char *name, const char *title, Int_t offset, Int_t dtype, | |||
skipping to change at line 176 | skipping to change at line 188 | |||
void SetCountClass(const char *clname) {fCountClass = clname; } | void SetCountClass(const char *clname) {fCountClass = clname; } | |||
void SetCountName(const char *name) {fCountName = name; } | void SetCountName(const char *name) {fCountName = name; } | |||
void SetCountVersion(Int_t count) {fCountVersion = count; } | void SetCountVersion(Int_t count) {fCountVersion = count; } | |||
ClassDef(TStreamerBasicPointer,2) //Streamer element for a pointer to a basic type | ClassDef(TStreamerBasicPointer,2) //Streamer element for a pointer to a basic type | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerLoop : public TStreamerElement { | class TStreamerLoop : public TStreamerElement { | |||
private: | ||||
TStreamerLoop(const TStreamerLoop&); // Not implemented | ||||
TStreamerLoop&operator=(const TStreamerLoop&); // Not implemented | ||||
protected: | protected: | |||
Int_t fCountVersion; //version number of the class with the counter | Int_t fCountVersion; //version number of the class with the counter | |||
TString fCountName; //name of data member holding the a rray count | TString fCountName; //name of data member holding the a rray count | |||
TString fCountClass; //name of the class with the counte r | TString fCountClass; //name of the class with the counte r | |||
TStreamerBasicType *fCounter; //!pointer to basic type counter | TStreamerBasicType *fCounter; //!pointer to basic type counter | |||
public: | public: | |||
TStreamerLoop(); | TStreamerLoop(); | |||
TStreamerLoop(const char *name, const char *title, Int_t offset, const c har *countName, const char *countClass, Int_t version, const char *typeName ); | TStreamerLoop(const char *name, const char *title, Int_t offset, const c har *countName, const char *countClass, Int_t version, const char *typeName ); | |||
skipping to change at line 206 | skipping to change at line 222 | |||
void SetCountClass(const char *clname) {fCountClass = clname; } | void SetCountClass(const char *clname) {fCountClass = clname; } | |||
void SetCountName(const char *name) {fCountName = name; } | void SetCountName(const char *name) {fCountName = name; } | |||
void SetCountVersion(Int_t count) {fCountVersion = count; } | void SetCountVersion(Int_t count) {fCountVersion = count; } | |||
ClassDef(TStreamerLoop,2) //Streamer element for a pointer to an array of objects | ClassDef(TStreamerLoop,2) //Streamer element for a pointer to an array of objects | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerBasicType : public TStreamerElement { | class TStreamerBasicType : public TStreamerElement { | |||
private: | ||||
TStreamerBasicType(const TStreamerBasicType&); // Not implement | ||||
ed | ||||
TStreamerBasicType&operator=(const TStreamerBasicType&); // Not implemen | ||||
ted | ||||
protected: | protected: | |||
Int_t fCounter; //!value of data member when referenced by an array | Int_t fCounter; //!value of data member when referenced by an array | |||
public: | public: | |||
TStreamerBasicType(); | TStreamerBasicType(); | |||
TStreamerBasicType(const char *name, const char *title, Int_t offset, In t_t dtype, const char *typeName); | TStreamerBasicType(const char *name, const char *title, Int_t offset, In t_t dtype, const char *typeName); | |||
virtual ~TStreamerBasicType(); | virtual ~TStreamerBasicType(); | |||
Int_t GetCounter() const {return fCounter;} | Int_t GetCounter() const {return fCounter;} | |||
ULong_t GetMethod() const; | ULong_t GetMethod() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
ClassDef(TStreamerBasicType,2) //Streamer element for a basic type | ClassDef(TStreamerBasicType,2) //Streamer element for a basic type | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerObject : public TStreamerElement { | class TStreamerObject : public TStreamerElement { | |||
private: | ||||
TStreamerObject(const TStreamerObject&); // Not implemented | ||||
TStreamerObject&operator=(const TStreamerObject&); // Not implemented | ||||
public: | public: | |||
TStreamerObject(); | TStreamerObject(); | |||
TStreamerObject(const char *name, const char *title, Int_t offset, const char *typeName); | TStreamerObject(const char *name, const char *title, Int_t offset, const char *typeName); | |||
virtual ~TStreamerObject(); | virtual ~TStreamerObject(); | |||
const char *GetInclude() const; | const char *GetInclude() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
virtual void Init(TObject *obj=0); | virtual void Init(TObject *obj=0); | |||
ClassDef(TStreamerObject,2) //Streamer element of type object | ClassDef(TStreamerObject,2) //Streamer element of type object | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerObjectAny : public TStreamerElement { | class TStreamerObjectAny : public TStreamerElement { | |||
private: | ||||
TStreamerObjectAny(const TStreamerObjectAny&); // Not implement | ||||
ed | ||||
TStreamerObjectAny&operator=(const TStreamerObjectAny&); // Not implemen | ||||
ted | ||||
public: | public: | |||
TStreamerObjectAny(); | TStreamerObjectAny(); | |||
TStreamerObjectAny(const char *name, const char *title, Int_t offset, co nst char *typeName); | TStreamerObjectAny(const char *name, const char *title, Int_t offset, co nst char *typeName); | |||
virtual ~TStreamerObjectAny(); | virtual ~TStreamerObjectAny(); | |||
const char *GetInclude() const; | const char *GetInclude() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
virtual void Init(TObject *obj=0); | virtual void Init(TObject *obj=0); | |||
ClassDef(TStreamerObjectAny,2) //Streamer element of type object other than TObject | ClassDef(TStreamerObjectAny,2) //Streamer element of type object other than TObject | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerObjectPointer : public TStreamerElement { | class TStreamerObjectPointer : public TStreamerElement { | |||
private: | ||||
TStreamerObjectPointer(const TStreamerObjectPointer&); // Not i | ||||
mplemented | ||||
TStreamerObjectPointer&operator=(const TStreamerObjectPointer&); // Not | ||||
implemented | ||||
public: | public: | |||
TStreamerObjectPointer(); | TStreamerObjectPointer(); | |||
TStreamerObjectPointer(const char *name, const char *title, Int_t offset , const char *typeName); | TStreamerObjectPointer(const char *name, const char *title, Int_t offset , const char *typeName); | |||
virtual ~TStreamerObjectPointer(); | virtual ~TStreamerObjectPointer(); | |||
const char *GetInclude() const; | const char *GetInclude() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
virtual void Init(TObject *obj=0); | virtual void Init(TObject *obj=0); | |||
virtual Bool_t IsaPointer() const {return kTRUE;} | virtual Bool_t IsaPointer() const {return kTRUE;} | |||
virtual void SetArrayDim(Int_t dim); | virtual void SetArrayDim(Int_t dim); | |||
ClassDef(TStreamerObjectPointer,2) //Streamer element of type pointer t o a TObject | ClassDef(TStreamerObjectPointer,2) //Streamer element of type pointer t o a TObject | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerObjectAnyPointer : public TStreamerElement { | class TStreamerObjectAnyPointer : public TStreamerElement { | |||
private: | ||||
TStreamerObjectAnyPointer(const TStreamerObjectAnyPointer&); // | ||||
Not implemented | ||||
TStreamerObjectAnyPointer&operator=(const TStreamerObjectAnyPointer&); / | ||||
/ Not implemented | ||||
public: | public: | |||
TStreamerObjectAnyPointer(); | TStreamerObjectAnyPointer(); | |||
TStreamerObjectAnyPointer(const char *name, const char *title, Int_t off set, const char *typeName); | TStreamerObjectAnyPointer(const char *name, const char *title, Int_t off set, const char *typeName); | |||
virtual ~TStreamerObjectAnyPointer(); | virtual ~TStreamerObjectAnyPointer(); | |||
const char *GetInclude() const; | const char *GetInclude() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
virtual void Init(TObject *obj=0); | virtual void Init(TObject *obj=0); | |||
virtual Bool_t IsaPointer() const {return kTRUE;} | virtual Bool_t IsaPointer() const {return kTRUE;} | |||
virtual void SetArrayDim(Int_t dim); | virtual void SetArrayDim(Int_t dim); | |||
ClassDef(TStreamerObjectAnyPointer,1) //Streamer element of type pointe r to a non TObject | ClassDef(TStreamerObjectAnyPointer,1) //Streamer element of type pointe r to a non TObject | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerString : public TStreamerElement { | class TStreamerString : public TStreamerElement { | |||
private: | ||||
TStreamerString(const TStreamerString&); // Not implemented | ||||
TStreamerString&operator=(const TStreamerString&); // Not implemented | ||||
public: | public: | |||
TStreamerString(); | TStreamerString(); | |||
TStreamerString(const char *name, const char *title, Int_t offset); | TStreamerString(const char *name, const char *title, Int_t offset); | |||
virtual ~TStreamerString(); | virtual ~TStreamerString(); | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
ClassDef(TStreamerString,2) //Streamer element of type TString | ClassDef(TStreamerString,2) //Streamer element of type TString | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerSTL : public TStreamerElement { | class TStreamerSTL : public TStreamerElement { | |||
private: | ||||
TStreamerSTL(const TStreamerSTL&); // Not implemented | ||||
TStreamerSTL&operator=(const TStreamerSTL&); // Not implemented | ||||
protected: | protected: | |||
Int_t fSTLtype; //type of STL vector | Int_t fSTLtype; //type of STL vector | |||
Int_t fCtype; //STL contained type | Int_t fCtype; //STL contained type | |||
public: | public: | |||
TStreamerSTL(); | TStreamerSTL(); | |||
TStreamerSTL(const char *name, const char *title, Int_t offset, | TStreamerSTL(const char *name, const char *title, Int_t offset, | |||
const char *typeName, const char *trueType, Bool_t dmPointe r); | const char *typeName, const char *trueType, Bool_t dmPointe r); | |||
virtual ~TStreamerSTL(); | virtual ~TStreamerSTL(); | |||
skipping to change at line 329 | skipping to change at line 373 | |||
void SetSTLtype(Int_t t) {fSTLtype = t;} | void SetSTLtype(Int_t t) {fSTLtype = t;} | |||
void SetCtype(Int_t t) {fCtype = t;} | void SetCtype(Int_t t) {fCtype = t;} | |||
virtual void SetStreamer(TMemberStreamer *streamer); | virtual void SetStreamer(TMemberStreamer *streamer); | |||
ClassDef(TStreamerSTL,3) //Streamer element of type STL container | ClassDef(TStreamerSTL,3) //Streamer element of type STL container | |||
}; | }; | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerSTLstring : public TStreamerSTL { | class TStreamerSTLstring : public TStreamerSTL { | |||
private: | ||||
TStreamerSTLstring(const TStreamerSTLstring&); // Not implement | ||||
ed | ||||
TStreamerSTLstring&operator=(const TStreamerSTLstring&); // Not implemen | ||||
ted | ||||
public: | public: | |||
TStreamerSTLstring(); | TStreamerSTLstring(); | |||
TStreamerSTLstring(const char *name, const char *title, Int_t offset, | TStreamerSTLstring(const char *name, const char *title, Int_t offset, | |||
const char *typeName, Bool_t dmPointer); | const char *typeName, Bool_t dmPointer); | |||
virtual ~TStreamerSTLstring(); | virtual ~TStreamerSTLstring(); | |||
const char *GetInclude() const; | const char *GetInclude() const; | |||
Int_t GetSize() const; | Int_t GetSize() const; | |||
ClassDef(TStreamerSTLstring,2) //Streamer element of type C++ string | ClassDef(TStreamerSTLstring,2) //Streamer element of type C++ string | |||
}; | }; | |||
class TVirtualObject; | class TVirtualObject; | |||
class TBuffer; | class TBuffer; | |||
#include "TSchemaRule.h" | #include "TSchemaRule.h" | |||
//________________________________________________________________________ | //________________________________________________________________________ | |||
class TStreamerArtificial : public TStreamerElement { | class TStreamerArtificial : public TStreamerElement { | |||
private: | ||||
TStreamerArtificial(const TStreamerArtificial&); // Not impleme | ||||
nted | ||||
TStreamerArtificial&operator=(const TStreamerArtificial&); // Not implem | ||||
ented | ||||
protected: | protected: | |||
ROOT::TSchemaRule::ReadFuncPtr_t fReadFunc; //! | ROOT::TSchemaRule::ReadFuncPtr_t fReadFunc; //! | |||
ROOT::TSchemaRule::ReadRawFuncPtr_t fReadRawFunc; //! | ROOT::TSchemaRule::ReadRawFuncPtr_t fReadRawFunc; //! | |||
public: | public: | |||
// TStreamerArtificial() : fReadFunc(0),fReadRawFunc(0) {} | // TStreamerArtificial() : fReadFunc(0),fReadRawFunc(0) {} | |||
TStreamerArtificial(const char *name, const char *title, Int_t offset, I nt_t dtype, const char *typeName) : TStreamerElement(name,title,offset,dtyp e,typeName), fReadFunc(0), fReadRawFunc(0) {} | TStreamerArtificial(const char *name, const char *title, Int_t offset, I nt_t dtype, const char *typeName) : TStreamerElement(name,title,offset,dtyp e,typeName), fReadFunc(0), fReadRawFunc(0) {} | |||
End of changes. 14 change blocks. | ||||
1 lines changed or deleted | 67 lines changed or added | |||
TStreamerInfo.h | TStreamerInfo.h | |||
---|---|---|---|---|
// @(#)root/io:$Id: TStreamerInfo.h 26073 2008-11-04 11:16:09Z pcanal $ | // @(#)root/io:$Id: TStreamerInfo.h 26606 2008-12-02 20:36:09Z 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 | |||
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); | |||
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); | |||
protected: | private: | |||
TStreamerInfo(const TStreamerInfo&); | TStreamerInfo(const TStreamerInfo&); // TStreamerInfo are cop | |||
TStreamerInfo& operator=(const TStreamerInfo&); | 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) | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 6 lines changed or added | |||
TSystem.h | TSystem.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TSystem.h 26107 2008-11-08 21:48:04Z pcanal $ | // @(#)root/base:$Id: TSystem.h 26872 2008-12-12 12:21:49Z rdm $ | |||
// 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 362 | skipping to change at line 362 | |||
virtual void InnerLoop(); | virtual void InnerLoop(); | |||
virtual Int_t Select(TList *active, Long_t timeout); | virtual Int_t Select(TList *active, Long_t timeout); | |||
virtual Int_t Select(TFileHandler *fh, Long_t timeout); | virtual Int_t Select(TFileHandler *fh, Long_t timeout); | |||
//---- Handling of system events | //---- Handling of system events | |||
virtual void AddSignalHandler(TSignalHandler *sh); | virtual void AddSignalHandler(TSignalHandler *sh); | |||
virtual TSignalHandler *RemoveSignalHandler(TSignalHandler *sh); | virtual TSignalHandler *RemoveSignalHandler(TSignalHandler *sh); | |||
virtual void ResetSignal(ESignals sig, Bool_t reset = kTRUE); | virtual void ResetSignal(ESignals sig, Bool_t reset = kTRUE); | |||
virtual void IgnoreSignal(ESignals sig, Bool_t ignore = kTRUE ); | virtual void IgnoreSignal(ESignals sig, Bool_t ignore = kTRUE ); | |||
virtual void IgnoreInterrupt(Bool_t ignore = kTRUE); | virtual void IgnoreInterrupt(Bool_t ignore = kTRUE); | |||
virtual TSeqCollection *GetListOfSignalHandlers() const { return fSignal Handler; } | ||||
virtual void AddFileHandler(TFileHandler *fh); | virtual void AddFileHandler(TFileHandler *fh); | |||
virtual TFileHandler *RemoveFileHandler(TFileHandler *fh); | virtual TFileHandler *RemoveFileHandler(TFileHandler *fh); | |||
virtual TSeqCollection *GetListOfFileHandlers() const { return fFileHand ler; } | virtual TSeqCollection *GetListOfFileHandlers() const { return fFileHand ler; } | |||
virtual void AddStdExceptionHandler(TStdExceptionHandler *eh) ; | virtual void AddStdExceptionHandler(TStdExceptionHandler *eh) ; | |||
virtual TStdExceptionHandler *RemoveStdExceptionHandler(TStdExceptionHan dler *eh); | virtual TStdExceptionHandler *RemoveStdExceptionHandler(TStdExceptionHan dler *eh); | |||
virtual TSeqCollection *GetListOfStdExceptionHandlers() const { return f StdExceptionHandler; } | virtual TSeqCollection *GetListOfStdExceptionHandlers() const { return f StdExceptionHandler; } | |||
//---- Floating Point Exceptions Control | //---- Floating Point Exceptions Control | |||
virtual Int_t GetFPEMask(); | virtual Int_t GetFPEMask(); | |||
virtual Int_t SetFPEMask(Int_t mask = kDefaultMask); | virtual Int_t SetFPEMask(Int_t mask = kDefaultMask); | |||
//---- Time & Date | //---- Time & Date | |||
virtual TTime Now(); | virtual TTime Now(); | |||
virtual TSeqCollection *GetListOfTimers() const { return fTimers; } | ||||
virtual void AddTimer(TTimer *t); | virtual void AddTimer(TTimer *t); | |||
virtual TTimer *RemoveTimer(TTimer *t); | virtual TTimer *RemoveTimer(TTimer *t); | |||
virtual void ResetTimer(TTimer *) { } | virtual void ResetTimer(TTimer *) { } | |||
virtual Long_t NextTimeOut(Bool_t mode); | virtual Long_t NextTimeOut(Bool_t mode); | |||
virtual void Sleep(UInt_t milliSec); | virtual void Sleep(UInt_t milliSec); | |||
//---- Processes | //---- Processes | |||
virtual Int_t Exec(const char *shellcmd); | virtual Int_t Exec(const char *shellcmd); | |||
virtual FILE *OpenPipe(const char *command, const char *mode); | virtual FILE *OpenPipe(const char *command, const char *mode); | |||
virtual int ClosePipe(FILE *pipe); | virtual int ClosePipe(FILE *pipe); | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||
TToggleGroup.h | TToggleGroup.h | |||
---|---|---|---|---|
// @(#)root/meta:$Id: TToggleGroup.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/meta:$Id: TToggleGroup.h 26606 2008-12-02 20:36:09Z pcanal $ | |||
// Author: Piotr Golonka 31/07/97 | // Author: Piotr Golonka 31/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 38 | skipping to change at line 38 | |||
#include "TToggle.h" | #include "TToggle.h" | |||
#endif | #endif | |||
#ifndef ROOT_TOrdCollection | #ifndef ROOT_TOrdCollection | |||
#include "TOrdCollection.h" | #include "TOrdCollection.h" | |||
#endif | #endif | |||
class TToggleGroup : public TNamed { | class TToggleGroup : public TNamed { | |||
private: | private: | |||
TOrdCollection *fToggles; // list of TToggle objects | TOrdCollection *fToggles; // list of TToggle objects | |||
TToggle *fSelected; // currently selected object | ||||
public: | public: | |||
TToggleGroup(); | TToggleGroup(); | |||
TToggleGroup(const TToggleGroup&); | ||||
TToggleGroup &operator=(const TToggleGroup&); | ||||
virtual ~TToggleGroup(); | virtual ~TToggleGroup(); | |||
virtual Int_t GetTogglesCount() {return fToggles->GetSize();}; | virtual Int_t GetTogglesCount() {return fToggles->GetSize();}; | |||
virtual TToggle *At(Int_t idx) {return (TToggle*)fToggles->At(idx);}; | virtual TToggle *At(Int_t idx) {return (TToggle*)fToggles->At(idx);}; | |||
virtual void Remove(TToggle *t) {fToggles->Remove(t);}; | virtual void Remove(TToggle *t) {fToggles->Remove(t);}; | |||
virtual void Remove(Int_t pos) {fToggles->RemoveAt(pos);}; | virtual void Remove(Int_t pos) {fToggles->RemoveAt(pos);}; | |||
virtual void DeleteAll(); | virtual void DeleteAll(); | |||
virtual TToggle *First() {return (TToggle*)fToggles->First();}; | virtual TToggle *First() {return (TToggle*)fToggles->First();}; | |||
virtual TToggle *Last() {return (TToggle*)fToggles->Last();}; | virtual TToggle *Last() {return (TToggle*)fToggles->Last();}; | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 3 lines changed or added | |||
TVirtualPad.h | TVirtualPad.h | |||
---|---|---|---|---|
// @(#)root/base:$Id: TVirtualPad.h 20877 2007-11-19 11:17:07Z rdm $ | // @(#)root/base:$Id: TVirtualPad.h 26760 2008-12-09 15:56:43Z brun $ | |||
// Author: Rene Brun 05/12/95 | // Author: Rene Brun 05/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 243 | skipping to change at line 243 | |||
virtual Double_t YtoPad(Double_t y) const = 0; | virtual Double_t YtoPad(Double_t y) const = 0; | |||
virtual Int_t XtoPixel(Double_t x) const = 0; | virtual Int_t XtoPixel(Double_t x) const = 0; | |||
virtual Int_t YtoPixel(Double_t y) const = 0; | virtual Int_t YtoPixel(Double_t y) const = 0; | |||
virtual TObject *CreateToolTip(const TBox *b, const char *text, Long_t d elayms) = 0; | virtual TObject *CreateToolTip(const TBox *b, const char *text, Long_t d elayms) = 0; | |||
virtual void DeleteToolTip(TObject *tip) = 0; | virtual void DeleteToolTip(TObject *tip) = 0; | |||
virtual void ResetToolTip(TObject *tip) = 0; | virtual void ResetToolTip(TObject *tip) = 0; | |||
virtual void CloseToolTip(TObject *tip) = 0; | virtual void CloseToolTip(TObject *tip) = 0; | |||
virtual TVirtualViewer3D *GetViewer3D(Option_t * type = "") = 0; | virtual TVirtualViewer3D *GetViewer3D(Option_t * type = "") = 0; | |||
virtual Bool_t HasViewer3D() const = 0; | ||||
virtual void ReleaseViewer3D(Option_t * type = "") = 0; | virtual void ReleaseViewer3D(Option_t * type = "") = 0; | |||
virtual Int_t GetGLDevice() = 0; | virtual Int_t GetGLDevice() = 0; | |||
virtual void SetCopyGLDevice(Bool_t copy) = 0; | virtual void SetCopyGLDevice(Bool_t copy) = 0; | |||
static TVirtualPad *&Pad(); | static TVirtualPad *&Pad(); | |||
ClassDef(TVirtualPad,2) //Abstract base class for Pads and Canvases | ClassDef(TVirtualPad,2) //Abstract base class for Pads and Canvases | |||
}; | }; | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TXProofMgr.h | TXProofMgr.h | |||
---|---|---|---|---|
// @(#)root/proofx:$Id: TXProofMgr.h 24719 2008-07-09 07:07:25Z ganis $ | // @(#)root/proofx:$Id: TXProofMgr.h 26951 2008-12-16 12:04:38Z ganis $ | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TXProofMgr | #ifndef ROOT_TXProofMgr | |||
#define ROOT_TXProofMgr | #define ROOT_TXProofMgr | |||
skipping to change at line 65 | skipping to change at line 65 | |||
Bool_t HandleError(const void *in = 0); | Bool_t HandleError(const void *in = 0); | |||
Bool_t IsValid() const { return fSocket; } | Bool_t IsValid() const { return fSocket; } | |||
void SetInvalid(); | void SetInvalid(); | |||
TProof *AttachSession(Int_t id, Bool_t gui = kFALSE) | TProof *AttachSession(Int_t id, Bool_t gui = kFALSE) | |||
{ return TProofMgr::AttachSession(id, gui); } | { return TProofMgr::AttachSession(id, gui); } | |||
TProof *AttachSession(TProofDesc *d, Bool_t gui = kFALSE); | TProof *AttachSession(TProofDesc *d, Bool_t gui = kFALSE); | |||
void DetachSession(Int_t, Option_t * = ""); | void DetachSession(Int_t, Option_t * = ""); | |||
TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, | TProofLog *GetSessionLogs(Int_t ridx = 0, const char *stag = 0, | |||
const char *pattern = 0); | const char *pattern = "-v \"| SvcMsg\""); | |||
Bool_t MatchUrl(const char *url); | Bool_t MatchUrl(const char *url); | |||
void ShowROOTVersions(); | void ShowROOTVersions(); | |||
TList *QuerySessions(Option_t *opt = "S"); | TList *QuerySessions(Option_t *opt = "S"); | |||
TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); | TObjString *ReadBuffer(const char *file, Long64_t ofs, Int_t len); | |||
TObjString *ReadBuffer(const char *file, const char *pattern); | TObjString *ReadBuffer(const char *file, const char *pattern); | |||
Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); | Int_t Reset(Bool_t hard = kFALSE, const char *usr = 0); | |||
Int_t SendMsgToUsers(const char *msg, const char *usr = 0); | Int_t SendMsgToUsers(const char *msg, const char *usr = 0); | |||
void SetROOTVersion(const char *tag); | void SetROOTVersion(const char *tag); | |||
void ShowWorkers(); | void ShowWorkers(); | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
TXProofServ.h | TXProofServ.h | |||
---|---|---|---|---|
// @(#)root/proofx:$Id: TXProofServ.h 24719 2008-07-09 07:07:25Z ganis $ | // @(#)root/proofx:$Id: TXProofServ.h 26993 2008-12-17 16:01:04Z rdm $ | |||
/************************************************************************* | /************************************************************************* | |||
* 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_TXProofServ | #ifndef ROOT_TXProofServ | |||
#define ROOT_TXProofServ | #define ROOT_TXProofServ | |||
skipping to change at line 64 | skipping to change at line 64 | |||
EQueryAction GetWorkers(TList *workers, Int_t &prioritychange); | EQueryAction GetWorkers(TList *workers, Int_t &prioritychange); | |||
Bool_t HandleError(const void *in = 0); // Error Handler | Bool_t HandleError(const void *in = 0); // Error Handler | |||
Bool_t HandleInput(const void *in = 0); // Input handler | Bool_t HandleInput(const void *in = 0); // Input handler | |||
void HandleUrgentData(); | void HandleUrgentData(); | |||
void HandleSigPipe(); | void HandleSigPipe(); | |||
void HandleTermination(); | void HandleTermination(); | |||
void ReleaseWorker(const char *ord); | ||||
void Terminate(Int_t status); | void Terminate(Int_t status); | |||
ClassDef(TXProofServ,0) //XRD PROOF Server Application Interface | ClassDef(TXProofServ,0) //XRD PROOF Server Application Interface | |||
}; | }; | |||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
TXSocket.h | TXSocket.h | |||
---|---|---|---|---|
// @(#)root/proofx:$Id: TXSocket.h 24734 2008-07-09 10:05:44Z ganis $ | // @(#)root/proofx:$Id: TXSocket.h 26993 2008-12-17 16:01:04Z rdm $ | |||
/************************************************************************* | /************************************************************************* | |||
* Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * | |||
* All rights reserved. * | * All rights reserved. * | |||
* * | * * | |||
* For the licensing terms see $ROOTSYS/LICENSE. * | * For the licensing terms see $ROOTSYS/LICENSE. * | |||
* For the list of contributors see $ROOTSYS/README/CREDITS. * | * For the list of contributors see $ROOTSYS/README/CREDITS. * | |||
*************************************************************************/ | *************************************************************************/ | |||
#ifndef ROOT_TXSocket | #ifndef ROOT_TXSocket | |||
#define ROOT_TXSocket | #define ROOT_TXSocket | |||
skipping to change at line 32 | skipping to change at line 32 | |||
#ifndef ROOT_TMutex | #ifndef ROOT_TMutex | |||
#include "TMutex.h" | #include "TMutex.h" | |||
#endif | #endif | |||
#ifndef ROOT_TSemaphore | #ifndef ROOT_TSemaphore | |||
#include "TSemaphore.h" | #include "TSemaphore.h" | |||
#endif | #endif | |||
#ifndef ROOT_TString | #ifndef ROOT_TString | |||
#include "TString.h" | #include "TString.h" | |||
#endif | #endif | |||
#ifndef ROOT_TList | ||||
#include "TList.h" | ||||
#endif | ||||
#ifndef ROOT_TMessage | #ifndef ROOT_TMessage | |||
#include "TMessage.h" | #include "TMessage.h" | |||
#endif | #endif | |||
#ifndef ROOT_TUrl | #ifndef ROOT_TUrl | |||
#include "TUrl.h" | #include "TUrl.h" | |||
#endif | #endif | |||
#ifndef ROOT_TSocket | #ifndef ROOT_TSocket | |||
#include "TSocket.h" | #include "TSocket.h" | |||
#endif | #endif | |||
#ifndef ROOT_XrdProofConn | #ifndef ROOT_XrdProofConn | |||
#include "XrdProofConn.h" | #include "XrdProofConn.h" | |||
#endif | #endif | |||
#ifndef XRC_UNSOLMSG_H | #ifndef XRC_UNSOLMSG_H | |||
#include "XrdClient/XrdClientUnsolMsg.hh" | #include "XrdClient/XrdClientUnsolMsg.hh" | |||
#endif | #endif | |||
#include <list> | #include <list> | |||
class TObjString; | class TObjString; | |||
class TXSockBuf; | class TXSockBuf; | |||
class TXSockPipe; | ||||
class TXHandler; | class TXHandler; | |||
class TXSocketHandler; | class TXSocketHandler; | |||
class XrdClientMessage; | class XrdClientMessage; | |||
// To transmit info to Handlers | // To transmit info to Handlers | |||
typedef struct { | typedef struct { | |||
Int_t fInt1; | Int_t fInt1; | |||
Int_t fInt2; | Int_t fInt2; | |||
Int_t fInt3; | Int_t fInt3; | |||
Int_t fInt4; | Int_t fInt4; | |||
skipping to change at line 74 | skipping to change at line 78 | |||
Int_t fOpt; | Int_t fOpt; | |||
const char *fMsg; | const char *fMsg; | |||
} XHandleErr_t; | } XHandleErr_t; | |||
class TXSocket : public TSocket, public XrdClientAbsUnsolMsgHandler { | class TXSocket : public TSocket, public XrdClientAbsUnsolMsgHandler { | |||
friend class TXProofMgr; | friend class TXProofMgr; | |||
friend class TXProofServ; | friend class TXProofServ; | |||
friend class TXSlave; | friend class TXSlave; | |||
friend class TXSocketHandler; | friend class TXSocketHandler; | |||
friend class TXSockPipe; | ||||
friend class TXUnixSocket; | friend class TXUnixSocket; | |||
private: | private: | |||
char fMode; // 'e' (def) or 'i' (internal - proo fsrv) | char fMode; // 'e' (def) or 'i' (internal - proo fsrv) | |||
kXR_int32 fSendOpt; // Options for sending messages | kXR_int32 fSendOpt; // Options for sending messages | |||
Short_t fSessionID; // proofsrv: remote ID of connected session | Short_t fSessionID; // proofsrv: remote ID of connected session | |||
TString fUser; // Username used for login | TString fUser; // Username used for login | |||
TString fHost; // Remote host | TString fHost; // Remote host | |||
Int_t fPort; // Remote port | Int_t fPort; // Remote port | |||
skipping to change at line 116 | skipping to change at line 121 | |||
Int_t fPid; | Int_t fPid; | |||
// Whether to timeout or not | // Whether to timeout or not | |||
Bool_t fDontTimeout; // If true wait forever for incoming messages | Bool_t fDontTimeout; // If true wait forever for incoming messages | |||
Bool_t fRDInterrupt; // To interrupt waiting for messages | Bool_t fRDInterrupt; // To interrupt waiting for messages | |||
// Version of the remote XrdProofdProtocol | // Version of the remote XrdProofdProtocol | |||
Int_t fXrdProofdVersion; | Int_t fXrdProofdVersion; | |||
// Static area for input handling | // Static area for input handling | |||
static TList fgReadySock; // Static list of sockets ready to b | static TXSockPipe fgPipe; // Pipe for input monitoring | |||
e read | ||||
static TMutex fgReadyMtx; // Protect access to the sockets-rea | ||||
dy list | ||||
static Int_t fgPipe[2]; // Pipe for input monitoring | ||||
static TString fgLoc; // Location string | static TString fgLoc; // Location string | |||
static Bool_t fgInitDone; // Avoid initializing more than once | static Bool_t fgInitDone; // Avoid initializing more than once | |||
// List of spare buffers | // List of spare buffers | |||
static TMutex fgSMtx; // To protect spare list | static TMutex fgSMtx; // To protect spare list | |||
static std::list<TXSockBuf *> fgSQue; // list of spare buffers | static std::list<TXSockBuf *> fgSQue; // list of spare buffers | |||
// Manage asynchronous message | // Manage asynchronous message | |||
Int_t PickUpReady(); | Int_t PickUpReady(); | |||
TXSockBuf *PopUpSpare(Int_t sz); | TXSockBuf *PopUpSpare(Int_t sz); | |||
void PushBackSpare(); | void PushBackSpare(); | |||
// Post a message into the queue for asynchronous processing | // Post a message into the queue for asynchronous processing | |||
void PostMsg(Int_t type); | void PostMsg(Int_t type); | |||
// Auxilliary | // Auxilliary | |||
Int_t GetLowSocket() const { return (fConn ? fConn->GetLow Socket() : -1); } | Int_t GetLowSocket() const { return (fConn ? fConn->GetLow Socket() : -1); } | |||
static Int_t GetPipeRead(); // Return the read-descriptor of the | static void SetLocation(const char *loc = ""); // Set location s | |||
global pipe | tring | |||
static Int_t PostPipe(TSocket *s=0); // Notify socket ready via | ||||
global pipe | ||||
static Int_t CleanPipe(TSocket *s=0); // Clean previous pipe noti | ||||
fication | ||||
static Int_t FlushPipe(TSocket *s=0); // Remove any instance of ' | ||||
s' from the pipe | ||||
static void InitEnvs(); // Initialize environment variables | static void InitEnvs(); // Initialize environment variables | |||
static void DumpReadySock(); // Dump content of the ready-socket | ||||
list | ||||
public: | public: | |||
// Should be the same as in proofd/inc/XProofProtocol.h (local definitio ns) | // Should be the same as in proofd/inc/XProofProtocol.h (local definitio ns) | |||
enum ECoordMsgType { kQuerySessions = 1000, | enum ECoordMsgType { kQuerySessions = 1000, | |||
kSessionTag, kSessionAlias, kGetWorkers, kQueryWork ers, | kSessionTag, kSessionAlias, kGetWorkers, kQueryWork ers, | |||
kCleanupSessions, | kCleanupSessions, | |||
kQueryLogPaths, | kQueryLogPaths, | |||
kReadBuffer, | kReadBuffer, | |||
kQueryROOTVersions, | kQueryROOTVersions, | |||
kROOTVersion, | kROOTVersion, | |||
kGroupProperties, | kGroupProperties, | |||
kSendMsgToUser}; | kSendMsgToUser, | |||
kReleaseWorker}; | ||||
// Should be the same as in proofd/src/XrdProofdProtocol::Urgent | // Should be the same as in proofd/src/XrdProofdProtocol::Urgent | |||
enum EUrgentMsgType { kStopProcess = 2000 }; | enum EUrgentMsgType { kStopProcess = 2000 }; | |||
TXSocket(const char *url, Char_t mode = 'M', Int_t psid = -1, Char_t ver = -1, | TXSocket(const char *url, Char_t mode = 'M', Int_t psid = -1, Char_t ver = -1, | |||
const char *logbuf = 0, Int_t loglevel = -1, TXHandler *handler = 0); | const char *logbuf = 0, Int_t loglevel = -1, TXHandler *handler = 0); | |||
TXSocket(const TXSocket &xs); | TXSocket(const TXSocket &xs); | |||
TXSocket& operator=(const TXSocket& xs); | TXSocket& operator=(const TXSocket& xs); | |||
virtual ~TXSocket(); | virtual ~TXSocket(); | |||
virtual void Close(Option_t *opt = ""); | virtual void Close(Option_t *opt = ""); | |||
skipping to change at line 274 | skipping to change at line 273 | |||
static Long64_t BuffMem(); | static Long64_t BuffMem(); | |||
static Long64_t GetMemMax(); | static Long64_t GetMemMax(); | |||
static void SetMemMax(Long64_t memmax); | static void SetMemMax(Long64_t memmax); | |||
private: | private: | |||
Char_t *fMem; | Char_t *fMem; | |||
static Long64_t fgBuffMem; // Total allocated memory | static Long64_t fgBuffMem; // Total allocated memory | |||
static Long64_t fgMemMax; // Max allocated memory allowed | static Long64_t fgMemMax; // Max allocated memory allowed | |||
}; | }; | |||
// | ||||
// The following class describes internal pipes | ||||
// | ||||
class TXSockPipe { | ||||
public: | ||||
TXSockPipe(const char *loc = ""); | ||||
virtual ~TXSockPipe(); | ||||
Bool_t IsValid() const { return ((fPipe[0] >= 0 && fPipe[1] >= 0) | ||||
? kTRUE : kFALSE); } | ||||
TXSocket *GetLastReady(); | ||||
Int_t GetRead() const { return fPipe[0]; } | ||||
Int_t Post(TSocket *s); // Notify socket ready via global pipe | ||||
Int_t Clean(TSocket *s); // Clean previous pipe notification | ||||
Int_t Flush(TSocket *s); // Remove any instance of 's' from the p | ||||
ipe | ||||
void DumpReadySock(); | ||||
void SetLoc(const char *loc = "") { fLoc = loc; } | ||||
private: | ||||
TMutex fMutex; // Protect access to the sockets-ready list | ||||
Int_t fPipe[2]; // Pipe for input monitoring | ||||
TString fLoc; // Location string | ||||
TList fReadySock; // List of sockets ready to be read | ||||
}; | ||||
#endif | #endif | |||
End of changes. 9 change blocks. | ||||
18 lines changed or deleted | 41 lines changed or added | |||
TXSocketHandler.h | TXSocketHandler.h | |||
---|---|---|---|---|
// @(#)root/proofx:$Id: TXSocketHandler.h 20882 2007-11-19 11:31:26Z rdm $ | // @(#)root/proofx:$Id: TXSocketHandler.h 26678 2008-12-05 14:53:23Z 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_TXSocketHandler | #ifndef ROOT_TXSocketHandler | |||
#define ROOT_TXSocketHandler | #define ROOT_TXSocketHandler | |||
skipping to change at line 32 | skipping to change at line 32 | |||
#ifndef ROOT_TSysEvtHandler | #ifndef ROOT_TSysEvtHandler | |||
#include "TSysEvtHandler.h" | #include "TSysEvtHandler.h" | |||
#endif | #endif | |||
#ifndef ROOT_TXSocket | #ifndef ROOT_TXSocket | |||
#include "TXSocket.h" | #include "TXSocket.h" | |||
#endif | #endif | |||
class TXSocketHandler : public TFileHandler { | class TXSocketHandler : public TFileHandler { | |||
friend class TXSocket; | // friend class TXSocket; | |||
TFileHandler *fHandler; // Handler associated to the input socket | TFileHandler *fHandler; // Handler associated to the input socket | |||
TSocket *fInputSock; // Input socket from client or master | TSocket *fInputSock; // Input socket from client or master | |||
void SetHandler(TFileHandler *h, TSocket *s) | void SetHandler(TFileHandler *h, TSocket *s) | |||
{ fHandler = h; fInputSock = s; } | { fHandler = h; fInputSock = s; } | |||
static TXSocketHandler *fgSocketHandler; // Input socket handler | static TXSocketHandler *fgSocketHandler; // Input socket handler | |||
TXSocketHandler(TFileHandler *h, TSocket *s) : | TXSocketHandler(TFileHandler *h, TSocket *s) : | |||
TFileHandler(TXSocket::GetPipeRead(), 1) | TFileHandler(TXSocket::fgPipe.GetRead(), 1) | |||
{ fHandler = h; fInputSock = s; } | { fHandler = h; fInputSock = s; } | |||
public: | public: | |||
virtual ~TXSocketHandler() { } | virtual ~TXSocketHandler() { } | |||
Bool_t Notify(); | Bool_t Notify(); | |||
Bool_t ReadNotify() { return Notify(); } | Bool_t ReadNotify() { return Notify(); } | |||
static TXSocketHandler *GetSocketHandler(TFileHandler *h = 0, TSocket *s = 0); | static TXSocketHandler *GetSocketHandler(TFileHandler *h = 0, TSocket *s = 0); | |||
ClassDef(TXSocketHandler, 0) //Input handler class for xproofd sockets | ClassDef(TXSocketHandler, 0) //Input handler class for xproofd sockets | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
WrappedFunction.h | WrappedFunction.h | |||
---|---|---|---|---|
// @(#)root/mathcore:$Id: WrappedFunction.h 24482 2008-06-23 15:33:08Z mone ta $ | // @(#)root/mathcore:$Id: WrappedFunction.h 26866 2008-12-12 10:50: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 143 | skipping to change at line 143 | |||
*/ | */ | |||
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 | |||
*/ | */ | |||
WrappedMultiFunction( Func f , unsigned int dim) : | WrappedMultiFunction( Func f , unsigned int dim = 1) : | |||
fFunc( f ), | fFunc( f ), | |||
fDim( dim) | fDim( dim) | |||
{ /* no op */ } | { /* no op */ } | |||
// use default copy contructor and assignment operator | // use default copy contructor and assignment operator | |||
/// clone (required by the interface) | /// clone (required by the interface) | |||
WrappedMultiFunction * Clone() const { | WrappedMultiFunction * Clone() const { | |||
return new WrappedMultiFunction(fFunc,fDim); | return new WrappedMultiFunction(fFunc,fDim); | |||
} | } | |||
skipping to change at line 170 | skipping to change at line 170 | |||
virtual double DoEval (const double * x) const { | virtual double DoEval (const double * x) const { | |||
return fFunc( x ); | return fFunc( x ); | |||
} | } | |||
Func fFunc; | Func fFunc; | |||
unsigned int fDim; | unsigned int fDim; | |||
}; // WrappedMultiFunction | }; // WrappedMultiFunction | |||
template<typename FuncObj, typename MemFuncPtr > | ||||
class WrappedMemMultiFunction : public IMultiGenFunction { | ||||
public: | ||||
/** | ||||
construct from the pointer to the object and the member function | ||||
*/ | ||||
WrappedMemMultiFunction( FuncObj & obj, MemFuncPtr memFn, unsigned int d | ||||
im = 1 ) : | ||||
fObj(&obj), | ||||
fMemFunc( memFn ), | ||||
fDim(dim) | ||||
{ /* no op */ } | ||||
// use default copy contructor and assignment operator | ||||
/// clone (required by the interface) | ||||
WrappedMemMultiFunction * Clone() const { | ||||
return new WrappedMemMultiFunction(*fObj,fMemFunc,fDim); | ||||
} | ||||
unsigned int NDim() const { return fDim; } | ||||
private: | ||||
virtual double DoEval (const double * x) const { | ||||
return ((*fObj).*fMemFunc)( x ); | ||||
} | ||||
FuncObj * fObj; | ||||
MemFuncPtr fMemFunc; | ||||
unsigned int fDim; | ||||
}; // WrappedMemMultiFunction | ||||
} // namespace Math | } // namespace Math | |||
} // namespace ROOT | } // namespace ROOT | |||
#endif // ROOT_Math_WrappedFunction | #endif // ROOT_Math_WrappedFunction | |||
End of changes. 3 change blocks. | ||||
2 lines changed or deleted | 38 lines changed or added | |||
WrappedTF1.h | WrappedTF1.h | |||
---|---|---|---|---|
// @(#)root/mathmore:$Id: WrappedTF1.h 24403 2008-06-20 08:31:10Z moneta $ | // @(#)root/mathmore:$Id: WrappedTF1.h 26946 2008-12-16 10:47:01Z moneta $ | |||
// 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 69 | skipping to change at line 69 | |||
if (fFunc->GetMethodCall() ) fFunc->InitArgs(fX, &fParams.front() ); | if (fFunc->GetMethodCall() ) fFunc->InitArgs(fX, &fParams.front() ); | |||
// distinguish case of polynomial functions and linear functions | // distinguish case of polynomial functions and linear functions | |||
if (fFunc->GetNumber() >= 300 && fFunc->GetNumber() < 310) { | if (fFunc->GetNumber() >= 300 && fFunc->GetNumber() < 310) { | |||
fLinear = true; | fLinear = true; | |||
fPolynomial = true; | fPolynomial = true; | |||
} | } | |||
// check that in case function is linear the linear terms are not zer o | // check that in case function is linear the linear terms are not zer o | |||
if (fFunc->IsLinear() ) { | if (fFunc->IsLinear() ) { | |||
unsigned int ip = 0; | unsigned int ip = 0; | |||
fLinear = true; | fLinear = true; | |||
while (fLinear) { | while (fLinear && ip < fParams.size() ) { | |||
fLinear &= (fFunc->GetLinearPart(ip) != 0) ; | fLinear &= (fFunc->GetLinearPart(ip) != 0) ; | |||
ip++; | ip++; | |||
} | } | |||
} | } | |||
} | } | |||
/** | /** | |||
Destructor (no operations). TF1 Function pointer is not owned | Destructor (no operations). TF1 Function pointer is not owned | |||
*/ | */ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 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 lxbuild116-vm3.cern.ch 2.6.18-92.1.13.el5PAE #1 S MP Thu Sep 25 14:07:47 CEST 2008 i686 i686 i386 GNU/Linux" | #define BUILD_NODE "Linux lxbuild116-vm3.cern.ch 2.6.18-92.1.18.el5PAE #1 S MP Wed Nov 12 07:09:13 EST 2008 i686 i686 i386 GNU/Linux" | |||
#define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3/slc4_ia32_gcc34/bin/g ++" | #define COMPILER "/afs/cern.ch/sw/lcg/contrib/gcc/4.3/slc4_ia32_gcc34/bin/g ++" | |||
#define COMPILERVERS "gcc432" | #define COMPILERVERS "gcc432" | |||
#define MAKESHAREDLIB "cd $BuildDir ; g++ -c $Opt -pipe -m32 -Wall -W -Wov erloaded-virtual -fPIC -pthread $IncludePath $SourceFiles ; g++ $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 | |||