ROOT version 3.03 Release Notes
2002-04-10 09:19 brun
* base/inc/RVersion.h, build/version_number:
Stamp version 3.03/04
2002-04-09 17:29 brun
* tree/src/TChain.cxx:
Add comments in TChain::Print
2002-04-09 17:11 rdm
* gui/inc/TGFSContainer.h:
make methods virtual, allowing user customization.
2002-04-09 16:46 rdm
* configure, config/Makefile.alphakcc, config/Makefile.in,
config/Makefile.linuxkcc, config/Makefile.sgikcc,
config/Makefile.solariskcc, config/root-config.in,
test/Makefile.in:
add exceptions case in the configure script. This is mainly used by
Fermilab experiments using KCC compilers. Use:
./configure linuxkcc --build=noexceptions
to build ROOT without exception handling, or set env var EXCEPTIONS=no.
Also reflected in root-config --has-exceptions and --clfags.
2002-04-09 15:42 rdm
* matrix/src/: TMatrix.cxx, TMatrixD.cxx:
fix memory leak in case max_value < singularity_tolerance. Found by
Paul Balm.
2002-04-09 12:42 rdm
* rfio/src/TRFIOFile.cxx:
use rfiosetopt() to turn of buffered reading. ROOT buffers itself.
2002-04-09 09:15 brun
* hist/: inc/TProfile.h, src/TProfile.cxx:
Add a new TProfile constructor:
TProfile(const char *name,const char *title,Int_t nbinsx,const Double_t *xbins, Axis_t ylow,Axis_t yup, Option_t *option="");
2002-04-08 17:06 rdm
* base/: inc/TContextMenu.h, inc/TObject.h, src/TContextMenu.cxx,
src/TObject.cxx:
signature change in Execute() (TMethod to TFunction) for the call using
a TObjArray of arguments. Change needed after Damir's enhancements.
2002-04-08 12:46 brun
* gpad/src/TPad.cxx:
Add a new way of adding several canvases to the same Postscript file, in response
to the following mail:
"during a root session, I would like to save some (but not all) of the
plots I'm making on the screen on a single ps file. Furthermore, I want
to decide to save a given plot only AFTER I've seen it.
Reading the root documentation, I've found :
- how to save a single plot on a ps file, but it creates as many ps
files as there are plots
- how to save many pictures in a single ps file (in the "How to use the
PostScript interface" web page), but you need to know BEFORE which plot
you want to save."
//
// Writing several canvases to the same Postscript file
// ----------------------------------------------------
// if the Postscript file name finishes with "(", the file is not closed
// if the Postscript file name finishes with ")" and the file has been opened
// with "(", the file is closed. Example:
// {
// TCanvas c1("c1");
// h1.Draw();
// c1.Print("c1.ps("); //write canvas and keep the ps file open
// h2.Draw();
// c1.Print("c1.ps"); canvas is added to "c1.ps"
// h3.Draw();
// c1.Print("c1.ps)"); canvas is added to "c1.ps" and ps file is closed
// }
//
// Note that the following sequence writes the canvas to "c1.ps" and closes the ps file.:
// TCanvas c1("c1");
// h1.Draw();
// c1.Print("c1.ps");
//
2002-04-08 08:38 brun
* histpainter/src/THistPainter.cxx:
Improvements in THistPainter::PaintPalette in case:
- the range is less than the number of colors
- the range is less than the number of possible contours (default 20)
2002-04-06 23:28 brun
* base/: inc/TView.h, src/TView.cxx:
Add the following functions to TView.h:
virtual void Zoom(); // *MENU*
virtual void UnZoom(); // *MENU*
Fix a problem in TView::Centered3DImages in case the maximum on one axis is negative.
: ----------------------------------------------------------------------
2002-04-06 23:24 brun
* g3d/src/TAxis3D.cxx:
DistancetoPrimitive was always selecting the axis.
change 999999 to 9.
2002-04-06 20:10 rdm
* base/src/TTimeStamp.cxx:
timestamp was not correct on Win32, now it has 100ns precision.
2002-04-06 18:42 brun
* tree/src/TTree.cxx:
Protect TTree::CloneTree in case TChain::CloneTree is called.
2002-04-06 16:55 brun
* tree/src/: TBranch.cxx, TBranchElement.cxx, TBranchObject.cxx,
TTree.cxx:
Modify the GetEntry functions to return -1 in case an error occurs
when reading one branch basket.
2002-04-05 13:39 rdm
* base/src/TContextMenu.cxx, meta/src/TDataMember.cxx:
fix in TDataMember::SetterMethod() to take into account that Bool_t is now
actually a bool (this fixes the TPad SetEditable, and other, Bool_t argument
methods in the context menus).
2002-04-05 10:14 brun
* graf/inc/TSpline.h:
Thanks to Steve Udriot for correcting some comments in the data members
of TSplinePoly3 and TSplinePoly5
2002-04-04 19:32 rdm
* meta/inc/LinkDef.h, meta/inc/TClass.h, meta/inc/TClassMenuItem.h,
meta/src/TClass.cxx, meta/src/TClassMenuItem.cxx, README/CREDITS,
base/inc/TContextMenu.h, base/inc/TContextMenuImp.h,
base/src/TContextMenu.cxx, gui/inc/TRootContextMenu.h,
gui/src/TRootContextMenu.cxx, gui/src/TRootDialog.cxx,
tutorials/customContextMenu.C, tutorials/customTH1Fmenu.C:
make the context menus customizable, i.e. change titles and add/remove actions.
Two new tutorials demonstrate the functionality. Contribution by Damir Buskulic.
2002-04-04 19:28 rdm
* treeplayer/: inc/TTreeFormulaManager.h, src/TTreeFormula.cxx,
src/TTreeFormulaManager.cxx:
correct some Error() and Warning() messages.
2002-04-04 13:03 brun
* cont/: inc/TClonesArray.h, inc/TObjArray.h, src/TClonesArray.cxx:
Implement const flavour of operator []. This should also solve the problem
with fChanged being modified by the non-const operator.
2002-04-04 12:28 brun
* cont/inc/: TArrayC.h, TArrayD.h, TArrayF.h, TArrayI.h, TArrayL.h,
TArrayS.h:
Add a suggestion from gero.flucke@desy.de in all TArray classes:
A new operator [] const.
its purpose is the same as the At(Int_t i) does.
But with it you don't have to care whether the method you
are using is const or not: on the right hand side of an
equation always the operator [](Int_t i) can be used for
datamember-TArray's!
2002-04-04 12:11 rdm
* clib/inc/Getline.h, clib/src/Getline.c, rint/src/TTabCom.cxx,
x11/src/Rotated.cxx:
several changes to allow static linking of ROOT, Phat (the Phobos framework)
and Geant. Make some getline symbols unique, e.g. gl_tab_hook to Gl_tab_hook
and make some methods static. By Maarten.
2002-04-04 12:03 brun
* base/src/TKey.cxx:
Undo previous fix in TKey::Hash. One must find a better solution.
2002-04-04 10:58 brun
* base/: inc/TKey.h, src/TKey.cxx:
Implement TKey::Hash overloading TNamed::Hash and using TObject::Hash instead.
The function in TNamed::Hash is not convenient for TKey in case many keys
have the name but different cycles.
2002-04-04 09:07 brun
* graf/src/TBox.cxx:
Fix suggested by Brett Wiren:
The test for "insideness" in TBox::DistancetoPrimitive in the case of
a filled TBox misses the TBox's very edge. This causes 1 pixel
wide/tall TBoxes to be invisible to pointer interactions.
2002-04-04 09:04 brun
* tree/src/: TBranch.cxx, TBranchElement.cxx, TBranchObject.cxx:
Fix a mistake in the previous fix in SetAddress.
2002-04-04 08:58 brun
* tree/src/: TBranch.cxx, TBranchElement.cxx, TBranchObject.cxx:
Do not execute SetAddress if the branch is disabled. This may create memory leaks
when the branch address is set from TChain::LoadTree.
2002-04-03 18:40 rdm
* gui/src/TGClient.cxx:
put extended warning message in GetColorByName() in a single Warning().
2002-04-03 18:39 rdm
* configure:
explicitely link libMySQL also with libz.
2002-04-03 15:33 brun
* hist/src/TF1.cxx:
In all the TF1 constructors set the FillStyle to 0.
To paint the fill area below the function, simply set the FillStyle to 1001 or 1
2002-04-03 12:44 brun
* base/inc/RVersion.h, build/version_number:
Stamp version 3.03/03
2002-04-03 12:41 brun
* gui/src/TGClient.cxx:
Add additional information in TGClient::GetColorByName after printing the Warning;
"GetColorByName", "couldn't retrieve color xxxx"
This problem typically appears when running ROOT from
an X terminal with not enough memory and another application
like Netscape is already running
====> Kill Netscape and start again ROOT
I am tired to always answer the same question.
2002-04-02 18:21 brun
* gpad/src/TPad.cxx:
Add special case for WIN32 in TPad::PaintBox when drawing fill patterns.
2002-04-02 17:58 brun
* histpainter/src/THistPainter.cxx:
Patch from Olivier fixing a problem when drawing a 2-D histogram with
option "surf3". The problem was visible when using polar coordinates.
2002-04-02 17:44 rdm
* pgsql/src/TPgSQLServer.cxx:
make code simpler for compiler.
2002-04-02 17:29 brun
* histpainter/src/TLego.cxx:
New patch from Olivier fixing the problems when using the hidden line modes
with non-cartesian coordinates.
2002-04-02 17:28 brun
* gpad/src/TPad.cxx:
Modify TPad::PaintBox to behave the same way as PaintFillArea.
With this fix, fill patterns produce the same result on the screen
and on PostScript.
2002-04-02 17:26 brun
* gpad/src/TAttFillCanvas.cxx:
Change the TAttFill panel to display the 25 fill patterns instead
of just 8.
2002-04-02 17:13 rdm
* pgsql/src/TPgSQLServer.cxx:
if port number is not specified in url, set argument to 0 in PQsetdbLogin().
2002-04-02 12:39 brun
* graf/src/TGraph.cxx, histpainter/src/THistPainter.cxx:
Implement new drawing option "LF2". When this option is specified,
the histogram is paint with a fillarea connecting the center of the bins.
2002-04-02 09:59 brun
* graf/: inc/TGraph.h, inc/TGraphErrors.h, src/TGraph.cxx,
src/TGraphErrors.cxx:
Add a new constructor accepting a TH1* h as input argument.
2002-04-01 19:48 brun
* test/stress.cxx:
Change number of reference lines for the Postscript file generated in stress16
2002-04-01 19:19 brun
* base/inc/TProcessID.h, base/src/TObject.cxx,
base/src/TProcessID.cxx, base/src/TRef.cxx,
meta/src/TStreamerInfo.cxx:
Several changes in the handling of TRef to support the following use case:
An array of objects is written to a file but the TRefs
referencing these objects are not written to the file.
In a next session, these objects are read in memory
and new TRefs point to these objects and are written
to a separate file. In a third session both files
are connected.
To get this scenario working, one must use a dummy TRef
set to all objects that can be referenced in the next session.
2002-04-01 19:12 brun
* base/: inc/TFile.h, src/TFile.cxx:
Add a new member fNProcessIDs to count the number of TProcessIDs written
to the file. This member is computed in TFile::Init by counting the number
of keys with classname TProcessID.
2002-04-01 19:08 brun
* base/src/TDirectory.cxx:
Change the allocation for the THashList from
fKeys = new THashList(100,4)
to
fKeys = new THashList(100,50)
The previous allocation was generating too many TList in case the number
keys is very large.
2002-03-31 18:33 brun
* graf/: inc/TGraph.h, src/TGraph.cxx:
New signatures for the following functions:
void InitExpo(Int_t first=0, Int_t last=0);
void InitGaus(Int_t first=0, Int_t last=0);
void InitPolynom(Int_t first=0, Int_t last=0);
void LeastSquareFit(Int_t m, Double_t *a, Int_t first=0, Int_t last=0);
void LeastSquareLinearFit(Int_t n, Double_t &a0, Double_t &a1, Int_t &ifail, Int_t first, Int_t last);
The global variables gxfirst and gxlast have been deleted.
2002-03-31 10:18 rdm
* base/inc/TFile.h:
make GetSize() virtual so that it can be overridden in TWebFile.
2002-03-30 18:49 rdm
* base/inc/LinkDef1.h:
export kMaxInt, kMaxShort and kBitsPerByte.
2002-03-30 18:48 rdm
* cint/: inc/G__ci.h, src/var.c:
import of CINT 5.15.35.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
iostream redirect mod (G__OLDIMPLEMENTATION1635) still disabled.
2002-03-30 18:19 rdm
* configure:
change test -e to test -f for Solaris.
2002-03-29 21:16 brun
* gui/src/TGButton.cxx:
From Glen Salo:
The following changes to TGButton.cxx seem to fix a problem I was having
with my GUIs. My problems were fixed by initializing the fHKeycode to
zero in TGCheckButton and TGRadioButton following the same convention used
in TGTextButton.
2002-03-29 19:18 brun
* base/src/TSystem.cxx, proofd/src/error.cxx, rootd/src/error.cxx,
rootx/src/rootx.cxx:
Patch from Eddy Offermann.
"We had problems compiling root with CC6.2 when applying the -D_REENTRANT
flag, see forwarded mail below from a collegue of mine, Harray Felder.
It does the minimal change I found necessary to be able to use the _REENTRANT
define in our compilation of root. (This define is used to cause the system includes
to generate some function calls instead of macros so that libraries
can potentially be used in a multithreaded executable, although in a single-threaded
manner. We are now setting this flag everywhere so that we can incorporate some
libraries into java programs, which are inherently multithreaded.)"
2002-03-29 19:02 brun
* base/: inc/TMath.h, src/TMath.cxx:
Add BreitWigner function
Double_t TMath::BreitWigner(Double_t x, Double_t mean, Double_t gamma)
// Calculate a Breit Wigner function with mean and gamma
2002-03-29 08:20 brun
* graf/: inc/TGraph.h, src/TGraph.cxx:
Add two optional arguments in TGraph::Fit Axis_t xmin,Axis_t xmax (like in TH1::Fit).
These two arguments can be given to select a fit range.
// Fit range
// =========
// The fit range can be specified in two ways:
// - specify rxmax > rxmin (default is rxmin=rxmax=0)
// - specify the option "R". In this case, the function will be taken
// instead of the full graph range.
2002-03-28 17:55 brun
* graf/inc/TGraph.h:
Move the functions LeastSquareFit and LeastSquareLinearFit from protected to public.
2002-03-28 17:42 brun
* graf/src/TLegend.cxx:
Modify TLegend::SetHeader to use the TLegend font number for the header
instead of the font 62.
2002-03-28 16:34 brun
* tree/src/TChain.cxx:
In TChain destructor, delete the current file as well
2002-03-28 10:22 brun
* base/: inc/TRandom.h, src/TRandom.cxx:
Add the following new functions:
void TRandom::RndmArray(Int_t n, Double_t *array)
// Return an array of n random numbers uniformly distributed
// between 0 and 1 not included
Double_t TRandom::Uniform(Double_t x1, Double_t x2)
// returns a uniform deviate on the interval ( x1, x2 ].
void TRandom::ReadRandom(const char *filename)
// Reads saved random generator status from filename
void TRandom::WriteRandom(const char *filename)
// Writes random generator status to filename
Note that since TRandom is teh base class for all random number classes,
the new function may be used with TRandom, TRandom2 and TRandom3.
2002-03-28 02:47 rdm
* base/src/TApplication.cxx, meta/inc/TInterpreter.h,
meta/src/TCint.cxx:
handle CINT exit code on all platforms (merge of patches by Phil and me).
2002-03-28 02:45 rdm
* net/: inc/TWebFile.h, src/TWebFile.cxx:
implement GetSize() for web files (always return max file size).
2002-03-27 22:09 brun
* meta/src/TStreamerInfo.cxx:
Comment the Error statement in the Default case of the big switch
in ReadBuffer/WriteBuffer functions. Illegal and unknown cases
should have been traped by TStreamerInfo::Build.
2002-03-27 21:46 brun
* tree/src/TTree.cxx:
From Philippe:
This patch insures that TTree::CopyAddress copies the address from and to
the proper leaves even when the same leaf name is used in more than one
branch. In particular, it makes TTree::CopyTree actually working on
the same type of trees.
2002-03-27 18:51 brun
* base/src/TApplication.cxx:
From Philippe,
This patch makes the treatement of .L and .U symetrical.
2002-03-27 08:04 brun
* cint/inc/G__ci.h, cint/src/init.c, meta/src/TCint.cxx:
From Philippe.
This patch make CINT (when used by ROOT) see all script as C++. This is necessary
because of nested usage of CINT. I.e. if a script is considered a C script and then
turn around and use ROOT functionality that require CINT in a C++ mode (like the
StreamerInfo creation), this will fails.
This seem somewhat radical but most (if not ALL) C-style script should work as well
in C++ mode.
2002-03-26 17:12 brun
* base/src/TFile.cxx:
In the new function TFile::GetStreamerInfo, set the owner bit in the list
such that list->delete() is not required before deleting the list.
2002-03-26 17:06 brun
* base/src/TSystem.cxx:
This patch adds more error message when rootcint or the compilation fails.
This is in particular useful on linux for the case of a core dump of rootcint
(was silent so far!).
(from Philippe)
2002-03-26 15:09 brun
* base/: inc/TFile.h, src/TFile.cxx:
Add a new function TFile::GetStreamerInfoList:
// Read the list of TStreamerInfo objects written to this file.
// The function returns a TList. It is the user'responsability
// to delete the list created by this function.
//
// Using the list, one can access additional information,eg:
// TFile f("myfile.root");
// TList *list = f.GetStreamerInfoList();
// TStreamerInfo *info = (TStreamerInfo*)list->FindObject("MyClass");
// Int_t classversionid = info->GetClassVersion();
// list->Delete();
// delete list;
2002-03-26 10:17 rdm
* winnt/src/TWinNTSystem.cxx:
in the latest patch there were 0xa0 instead of spaces (0x20) in front of the
new lines?! How is this possible?
2002-03-26 10:06 brun
* treeplayer/inc/: TTreeFormula.h, TTreeFormulaManager.h:
Replace statements like
friend TTreeFormula
by
friend class TTreeFormula
Some compilers (AIX/xlc5 and HP-UX complain for the first form
2002-03-26 09:24 brun
* treeplayer/: inc/TTreeFormulaManager.h,
src/TTreeFormulaManager.cxx:
New classes called by TTreeFormula
2002-03-26 08:15 brun
* tutorials/tree4.C:
Modify tree4.C to run also with ACLIC.
2002-03-26 08:05 brun
* graf/src/TCutG.cxx, tree/inc/TVirtualTreePlayer.h,
treeplayer/inc/LinkDef.h, treeplayer/inc/TTreeFormula.h,
treeplayer/inc/TTreePlayer.h, treeplayer/src/TTreeFormula.cxx,
treeplayer/src/TTreePlayer.cxx:
This pacth from Philippe adds:
- Support for 2D graphical Cuts for TClonesArray members
- Support for 1D graphical Cuts by using their X minimum and
maximum as ( Xmin <= Formula <= Xmax ).
- Support for the following TTreeFormula special functions.
Entry$ : return the current entry number (== TTree::GetReadEntry())
Entries$ : return the total number of entries (== TTree::GetEntries())
Length$ : return the total number of element of this formula for this
entry (==TTreeFormula::GetNdata())
Iteration$: return the current iteration over this formula for this
entry (i.e. varies from 0 to LENGTH$).
- Synchronization of the dimensions of all the formulas involved in
a Draw call.
For example for (with fMatrix[4][4] and fTracks[fNtrack].fVertex[3]
T->Draw("fMatrix","fVertex>=2");
The corrected result is histogram use something like:
if (fTracks[0].fVertex[0]>=2) fMatrix[0][0];
if (fTracks[0].fVertex[1]>=2) fMatrix[0][1];
if (fTracks[0].fVertex[2]>=2) fMatrix[0][2];
if (fTracks[1].fVertex[0]>=2) fMatrix[1][0];
if (fTracks[1].fVertex[1]>=2) fMatrix[1][1];
if (fTracks[1].fVertex[2]>=2) fMatrix[1][2];
....
The old behavior was:
if (fTracks[0].fVertex[0]>=2) fMatrix[0][0];
if (fTracks[0].fVertex[1]>=2) fMatrix[0][1];
if (fTracks[0].fVertex[2]>=2) fMatrix[0][2];
if (fTracks[1].fVertex[0]>=2) fMatrix[0][3]; // note the extra step here.
if (fTracks[1].fVertex[1]>=2) fMatrix[1][0];
if (fTracks[1].fVertex[2]>=2) fMatrix[1][1];
....
2002-03-26 08:04 brun
* hbook/src/THbookTree.cxx:
Comment the line calling TTreePlayer::GetMultiplicity. This function
has unfortunately a new calling sequence.
2002-03-25 21:52 brun
* winnt/src/TWinNTSystem.cxx:
Patch from Philippe in TWinNTSystem::GetLibraries
(must esacpe backslash)
2002-03-25 21:21 brun
* base/: inc/TRef.h, inc/LinkDef2.h, src/TRef.cxx:
Implemement TRef operators == and !=
New function TRef::IsValid. IsValid returns kFALSE if a TRef has not
yet been assigned.
2002-03-25 21:13 brun
* base/src/TApplication.cxx:
Fix several typos in previous Philippe's patch.
2002-03-25 19:18 rdm
* configure, krb5auth/src/Krb5Auth.cxx, proofd/src/proofd.cxx,
rootd/src/rootd.cxx:
some kerberos patches by Johannes Muelmenstaedt of Berkeley (and not MIT
as previously mentioned).
2002-03-25 19:10 rdm
* README/CREDITS:
add Johannes for Kerberos5 support.
2002-03-25 19:10 rdm
* base/src/TTimeStamp.cxx:
fix compilation problem on Win32.
2002-03-25 17:43 rdm
* configure, config/Makefile.in, dcache/Module.mk,
dcache/inc/TDCacheFile.h, dcache/src/TDCacheFile.cxx:
New version of dCache interface by Grzegorz Mazur. The important changes
in this version are:
- contents of dcap.h is no longer included int the source, path to
dcap.h can be specified by --with-dcap-incdir during configuration,
- catch up with some minor modifications in libdcap API,
- improved error handling,
- quick'n'dirty but functional support for accessing files without
PNFS (dcap://dcachedoor...),
- preliminary support for (not yet functional in libdcap) SSL support.
2002-03-25 17:24 rdm
* base/src/TTimeStamp.cxx:
get time with microsecond precision on Linux/Unix and with 100ns precision
on Win32. Before we had only second precision.
2002-03-25 08:51 brun
* physics/: inc/TFeldmanCousins.h, src/TFeldmanCousins.cxx:
Fix incorrect syntax with inline definitions
2002-03-25 08:39 brun
* physics/src/TFeldmanCousins.cxx:
Remove double declaration of loop index (fatal on hp-ux and VC++)
2002-03-23 07:38 brun
* base/src/TApplication.cxx:
Patch from Philippe that could fix a problem reported by Valery on Windows2000
2002-03-22 21:29 brun
* tutorials/FeldmanCousins.C:
Add new tutorial illustrating the use of TFeldmanCousins class.
2002-03-22 21:28 brun
* physics/: inc/TFeldmanCousins.h, src/TFeldmanCousins.cxx:
Several improvements of the TFeldmanCousins class by the author Adrian John Bevan.
Add comments, and possibility to control more parameters.
2002-03-22 16:58 brun
* graf/src/TPaveStats.cxx:
Improvements by Olivier in TPaveStats::Paint.
The size of the histogram name is optimized to always fit in the box.
2002-03-22 15:26 rdm
* configure, config/root-config.in:
root-config has new options --arch and --has-<feature> where feature can be
any of the ./configure --has-<features>, e.g. root-config --has-mysql
returns "yes" if mysql was enabled during the ROOT installation and
"no" otherwise. By Christian Holm.
2002-03-22 14:02 brun
* proof/src/TPacketizer.cxx:
Fix compilation error on several machines. Double definition of TObject* o
2002-03-22 13:57 rdm
* tutorials/guitest.C:
add example of changing label fonts.
2002-03-22 13:56 rdm
* README/CREDITS:
update credits of Maarten and Olivier.
2002-03-21 17:51 brun
* hist/src/TAxis.cxx:
Do not reset the title in TAxis::Set
2002-03-21 17:15 rdm
* histpainter/: inc/THistPainter.h, inc/TLego.h,
src/THistPainter.cxx, src/TLego.cxx:
This patch improves to things:
- The background grid on lego and surface plots is now aligned on the
axis main tick marks. It works for optimised and none optimised axis
divisions.
- It is now possible to have non optimised axis divisions (number of
divisions less than 0) on all 3D plots (lego and surfaces) axis and on
the colour palette axis.
Olivier
2002-03-21 17:11 rdm
* proof/inc/TPacketizer.h, base/inc/TDSet.h, base/src/TDSet.cxx,
proof/inc/LinkDef.h, proof/inc/TProofPlayer.h,
proof/src/TPacketizer.cxx, proof/src/TProof.cxx,
proof/src/TProofPlayer.cxx, proof/src/TProofServ.cxx:
more PROOF patches from Maarten.
2002-03-21 12:47 brun
* tree/src/TBasket.cxx:
In TBasket::ReadBasketBuffers and TBasket::WriteBuffer implement a logic
like in TKey to process large buffers bigger than 32 MBytes.
2002-03-21 09:51 brun
* tutorials/demos.C:
Use the TControlBar constructor with placement.
Show use of gStyle->SetScreenFactor.
2002-03-21 09:50 brun
* gpad/src/TControlBar.cxx:
Take into account TStyle::SetScreenFactor in the constructor.
This allows to position the controlbar at a fix position independently
of the screen size.
2002-03-20 21:47 brun
* graf/src/TPaveText.cxx:
Implement possibility to rotate text in a TPaveText. example
TPaveText *pt = new TPaveText(0.2,0.2,.8,.8,"blNDC");
TText *text1 = pt->AddText("Line 1");
text1->SetTextAngle(0);
text1->SetTextAlign(22);
TText *text2 = pt->AddText("Line 2");
text2->SetTextAngle(10);
text2->SetTextColor(kRed);
text2->SetTextAlign(22);
pt->Draw();
2002-03-20 19:54 rdm
* base/src/TFile.cxx, net/src/TFTP.cxx, net/src/TNetFile.cxx,
config/rootrc.in, net/src/TUrl.cxx, proof/etc/proof.conf.sample,
proof/src/TProof.cxx, proof/src/TProofServ.cxx,
proof/src/TSlave.cxx, proofd/src/proofd.cxx:
add cases for Kerberos5 authentication. In particular the default authentication
method for rootd and proofd can now be set in system.rootrc. The default is
clear text passwd, but SRP and Krb5 can be specified. The default is used when
"root:" or "proof:" appears in the url. The default can be overridden by
specifying explicitely "roots:" or "rootk:", idem for proof.
2002-03-20 19:47 rdm
* krb5auth/Module.mk, Makefile, configure, base/inc/MessageTypes.h,
config/Makefile.in, krb5auth/src/Krb5Auth.cxx,
net/inc/TAuthenticate.h, net/inc/TSocket.h,
net/src/TAuthenticate.cxx, rootd/Module.mk, rootd/src/rootd.cxx:
Kerberos5 authentication module Krb5Auth.cxx (libKrb5Auth) provided by
Johannes Muelmenstaedt of MIT. This module will be loaded by TAuthenticate
whenever Kerberos5 authentication is requested, like:
TFile *f = TFile::Open("rootk://remote.domain/file.root")
Can also be used by PROOF when started via "proofk://master.domain" but
need still to solve problem of ticket passing to master so slaves can be
authenticated.
2002-03-20 15:17 rdm
* configure:
remove obsolete directory new.
2002-03-20 13:36 rdm
* cint/Module.mk:
fix to create a loadfile_tmp.d file to make sure loadfile_tmp.o gets recreated
when needed (used by rootcint_tmp).
2002-03-20 11:45 brun
* tree/src/: TBranchElement.cxx, TTree.cxx:
Protections added in case of classes derived from TBranchElement.
2002-03-20 11:39 brun
* base/: inc/Gtypes.h, src/TAttMarker.cxx:
Fix for kFullDotLarge + new enums kOpenTriangleDown and kFullCross.
Add corresponding comments in TAttText.
Code for the new markers must be introduced in the TVirtualX derived classes and Postscript.
2002-03-20 11:27 rdm
* base/inc/Gtypes.h, gpad/inc/LinkDef.h:
used directly #pragma enum in the linkdef instead of defining all enum
constants individually. Also correct capitalization of kFullDotLarge
in Gtypes.h.
2002-03-20 11:24 rdm
* cint/: inc/G__ci.h, inc/common.h, src/disp.c, src/func.c,
tool/ifdef/setup.bat:
import of CINT 5.15.34.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
iostream redirect mod (G__OLDIMPLEMENTATION1635) still disabled.
2002-03-20 10:49 brun
* tutorials/tree4.C:
Correct comments. This example cannoyt be run as such with ACLIC.
The includes for Event.h should be specified and more.
2002-03-20 10:01 brun
* graf/: inc/TLegend.h, src/TLegend.cxx:
Implement TLegend::RecursiveRemove. When an object referenced by a TLegend
is deleted, the reference is reset.
2002-03-20 08:42 brun
* x11/src/TGX11.cxx:
Patch from Tony Colley;
I modified the DrawPolyLine function in TGX11.cxx to split polylines with
too many points into drawable chunks. This would not handle the case where
someone wanted to draw a filled curve with too many points; but I don't need
really big filled curves anyway. This change enabled ROOT to successfully
handle a TGraph of 10^7 points (not quickly, by any means, but at least it
draws the graph and doesn't crash).
2002-03-19 18:05 brun
* tree/src/TTree.cxx, treeplayer/inc/TTreeFormula.h,
treeplayer/src/TTreeFormula.cxx, treeplayer/src/TTreePlayer.cxx:
Patch from Philippe:
// Special functions and variables
// ===============================
//
// 'ENTRY': A TTree::Draw formula can use the special variable ENTRY
// to access the entry number being read. For example to draw every
// other entry use:
// tree.Draw("myvar","ENTRY%2==0");
2002-03-19 17:53 brun
* config/Makefile.aix5:
Add option -qrtti to CXXFLAGS. The rtti option must be enabled in view
of the coming support for classes not instrumented with ClassDef.
2002-03-19 11:57 brun
* net/: inc/TMessage.h, src/TMessage.cxx:
Do not overload TBuffer::WriteObject in TMessage.
This is not necessary since TBuffer knows its parent.
2002-03-18 19:28 brun
* base/inc/TBuffer.h:
Declare the functions ReadObject/WriteObject/ReadClass/WriteClass virtual.
There was a request from the HESS experiment.
The performance penalty seems to be negligible (less than 1 per cent on stress)
2002-03-18 17:43 rdm
* postscript/src/TPostScript.cxx:
Fix for a problem in my PS code: X and Y variables were used to draw
the Cell Array and to draw horizontal lines. The axis are only vertical
and horizontal lines and that why it appears now. The tests I had in the
past never were used in such a configuration.
2002-03-17 01:50 rdm
* gui/inc/TRootGuiFactory.h, win32/inc/TWin32GuiFactory.h:
made methods virtual so they can be overridden.
2002-03-17 01:26 rdm
* proof/: inc/TProof.h, src/TProof.cxx, src/TProofServ.cxx:
fix in TProof::SendFile(), propagate correclty files to new unique
slaves even if file was already on master.
2002-03-16 19:41 rdm
* graf/src/TPaveStats.cxx:
remove unused dy.
2002-03-16 19:38 rdm
* proof/inc/TProof.h:
remove global using std::map statement.
2002-03-16 19:36 rdm
* proof/: inc/TProofServ.h, src/TProofServ.cxx:
ProofServErrorHandler() now adds to the Info, Warning and Error messages
the master or slave id. Remove private Info version since now in TObject.
Fix handling of kMESS_CINT messages, correctly forward using Exec() instead
of SendCommand() which did not relay the scripts (like in ".x aap.C") to
the slaves.
2002-03-16 19:30 rdm
* base/src/TMD5.cxx:
don't print error message in FileChecksum() if file does not exist.
2002-03-16 09:52 brun
* graf/src/TPaveStats.cxx:
Remove unused variable yfont and following statements
2002-03-16 09:37 brun
* postscript/src/TSVG.cxx:
Remove unused variable tsize and several statements
2002-03-15 23:11 brun
* graf/: inc/TCutG.h, src/TCutG.cxx:
Increment class version to 2.
Members fObjectX, fObjectY declared non persistent.
Add additional comments to indicate how to create/close a TCutG
with the graphics editor.
2002-03-15 21:45 brun
* postscript/src/TPostScript.cxx:
Reintroduce protection for gPad=0 in TPostScript::Initialize.
This correction was lost when the chnages by Olivier were introduced.
2002-03-15 18:25 rdm
* base/inc/TROOT.h:
fix IsProofServ(), which was not correct anymore after removal of explicit
global TROOT object from pmain.cxx.
2002-03-15 18:23 rdm
* base/inc/LinkDef2.h, base/inc/MessageTypes.h, proof/inc/TProof.h,
proof/src/TProof.cxx, proof/src/TProofServ.cxx:
implemented TProof::CheckFile() which is called by SendFile() to make sure
files are not send when not needed. They are only send when the md5 is
changed. It also makes a check on the remote nodes with unique file system
to see if the file is already there (by sending the md5 over in a message
of type kPROOF_CHECKFILE).
2002-03-15 16:51 rdm
* base/: inc/TMD5.h, src/TMD5.cxx:
added operator<< and operator>>.
2002-03-14 19:15 rdm
* proof/inc/TProof.h:
fix problem of std::map on broken and obsolete version of HP aCC.
2002-03-14 19:14 rdm
* gpad/inc/TPad.h:
make Modfied() emit a signal.
2002-03-14 19:12 rdm
* base/src/TTimeStamp.cxx:
change linux to R__LINUX.
2002-03-14 19:12 rdm
* base/src/TBuffer.cxx:
small code re-formatting.
2002-03-14 18:32 brun
* base/: inc/TStyle.h, src/TStyle.cxx:
Patch from Jiri Masik,
this is a simple patch allowing to select statistics box records
by starting letters - it is easier to remember than the current
powers-of-ten scheme. A new function added to TStyle:
void TStyle::SetOptStat(Option_t *stat)
{
// The parameter mode can be = IOURMEN
// n ; name of histogram is printed
// e ; number of entries printed
// m ; mean value printed
// r ; rms printed
// u ; number of underflows printed
// o ; number of overflows printed
// i ; integral of bins printed
// Example: gStyle->SetOptStat("ne");
// print only name of histogram and number of entries.
// gStyle->SetOptStat("n") is equivalent to gStyle->SetOptStat(1)
// which is the default layout (RMEN)
2002-03-13 18:00 rdm
* graf/src/TPaveStats.cxx, histpainter/src/THistPainter.cxx:
improved look of over and undeflow for 2d histo's in TPaveStats. By Olivier C.
2002-03-13 17:58 rdm
* config/: Makefile.aix, Makefile.aix5, Makefile.win32,
Makefile.win32gdk:
remove link time dependency of proof from treeplayer and libstar.
2002-03-13 08:40 brun
* minuit/src/TMinuit.cxx:
Change the reference to the original description of Minuit in CERNLIB
2002-03-13 08:16 brun
* treeplayer/src/TTreeFormula.cxx:
Patch from Philippe,
Protect against request for elements that are out of bounds of
fixed length arrays.
For example:
root [1] T->Draw("fMatrix[2][5]")
Error in <TTreeFormula>: Index 5 for dimension #2 in fMatrix[2][5] is too high (max is 3)
2002-03-13 02:55 rdm
* base/: inc/TObject.h, src/TObject.cxx:
added method Info() (non-virtual so does not extend virtual table). Info()
was only method from TError.h missing from TObject (like Warning(), Error(),
SysError() and Fatal()).
2002-03-13 02:52 rdm
* proof/inc/LinkDef.h, proof/inc/TDSetProxy.h,
proof/inc/TEventIter.h, proof/inc/TProof.h,
proof/inc/TProofPlayer.h, proof/inc/TProofServ.h,
proof/src/TDSetProxy.cxx, proof/src/TEventIter.cxx,
proof/src/TProof.cxx, base/inc/TDSet.h, base/src/TDSet.cxx,
proof/src/TProofPlayer.cxx, proof/src/TProofServ.cxx:
PROOF synchronization with Maarten. Addition in TProof using std::map.
Might not yet compile on all platforms. Need quick feedback to fix.
2002-03-13 02:48 rdm
* configure, config/Makefile.in, proofd/src/proofd.cxx,
rootd/Module.mk:
handle shadow password option for rootd and proofd via configure script.
Mod by Maarten B.
2002-03-12 08:20 brun
* treeplayer/src/TTreeFormula.cxx:
This patch from Philippe corrects a parsing error and protect the
unsupported cases of an array of objects (or array of pointers to objects).
2002-03-09 10:58 brun
* thread/src/TThread.cxx:
The message "thread xx is running is now printed only if gDebug != 0
2002-03-09 10:49 brun
* histpainter/: inc/THistPainter.h, src/THistPainter.cxx:
Add argument Option_t *option to all THistPainter::Paintxxx functions.
The new argument is used in THistPainter::PaintScatterPlot to control
the number of dots. A new drawing option "scat=ff", eg "scat=10" means
draw a scatter plot drawing a number of dots per cell equal to
the cell content times 10. ff is a floating point. One can scale up/down,
eg scat=0.1, scat=3.14, scat=1e-5. Default is "scat=1".
2002-03-08 19:44 rdm
* graf/inc/TPaveStats.h, graf/src/TPaveStats.cxx,
histpainter/src/THistPainter.cxx:
improved TPaveStat layout by Olivier Couet.
- It handles properly the fit parameters.
- The vertical text positioning is better (uses the vertical alignment
"center").
- Chi2 is printed with the Greek characters.
I noticed that the right alignment of TLatex on screen is not always
perfect. On PS file it is perfect.
2002-03-08 09:09 brun
* meta/src/TStreamerInfo.cxx, treeplayer/src/TTreeFormula.cxx:
iPatch from Philippe that (re)enables saving and reading C-style arrays of object.
The 4 cases added are
array of pointers to object inheriting from TObject
array objects inheriting from TObject
array of pointers to object not inheriting from TObject but with ClassDef
array objects not inheriting from TObject but with ClassDef
Note that the 1st 2 cases are also implemented for inside a TClonesArray while
the last 2 cases are NOT ... this will be done when we upgrade the ClassDef/ClassImp
facility....
A small update to TTreeFormula for those cases (more is needed).
2002-03-07 19:11 rdm
* cont/src/TRefArray.cxx:
Correct confusing comment in Delete(), i.e. heap objects are not deleted.
2002-03-07 10:42 rdm
* newdelete/Module.mk:
change directory from "new" to "newdelete".
2002-03-07 03:04 rdm
* base/: inc/TMD5.h, src/TMD5.cxx:
added copy ctor and assignment operator.
2002-03-07 03:03 rdm
* tree/src/TTree.cxx, treeplayer/src/TTreeFormula.cxx:
This patch is (re)enabling the draw of variable names
like: "f[].i" and "f", "f.f", "f.i" when "f.f" (i.e. currently
if 'f.f' exist all three draw the same thing). By Philippe.
2002-03-07 02:56 rdm
* Makefile:
change module "new" to "newdelete".
2002-03-07 02:48 rdm
* newdelete/: Module.mk, inc/MemCheck.h, src/MemCheck.cxx,
src/NewDelete.cxx:
rename directory new to newdelete to avoid problem with C-preprocessor which
complains that "new" is a directory when trying to process #include <new>.
2002-03-07 02:02 rdm
* gpad/src/TPad.cxx:
add comment about SetSelectedPad() use in HighLight().
2002-03-05 18:08 rdm
* cont/src/TObjArray.cxx:
use GetAbsLast() in Streamer() to take fLowerBound!=0 into account.
Previous TPad checkin just removed a redundant line of code.
2002-03-05 17:59 rdm
* gpad/src/TPad.cxx:
use GetAbsLast() in Streamer() to take fLowerBound!=0 into account.
2002-03-05 11:47 rdm
* base/src/TApplication.cxx, meta/inc/TCint.h,
meta/inc/TInterpreter.h, meta/src/TCint.cxx:
new method GetExitCode() in TInterpreter and TCint which returns argument
passed to exit() in interpreter. Used in TApplication::ProcessLine().
2002-03-05 11:46 rdm
* cint/: inc/Api.h, inc/BaseCls.h, inc/CallFunc.h, inc/Class.h,
inc/DataMbr.h, inc/G__ci.h, inc/Method.h, inc/MethodAr.h,
inc/Token.h, inc/Type.h, inc/Typedf.h, inc/fproto.h, src/disp.c,
src/fread.c, src/func.c, src/loadfile.c, src/newlink.c, src/opr.c,
src/parse.c, src/pragma.c, src/tmplt.c, src/var.c:
import of CINT 5.15.33.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
iostream redirect mod (G__OLDIMPLEMENTATION1635) still disabled.
2002-03-02 05:40 brun
* hist/inc/TF1.h:
Make all getters virtual
2002-03-02 05:37 brun
* hist/inc/TFormula.h:
Make virtual the functions GetNdim, GetNpar, GetParNumber, GetNumber
2002-02-28 18:07 rdm
* tree/: inc/TChain.h, src/TChain.cxx:
cast fEntries to int to remove warning in calling LoadTree() in GetEntries().
Also return Double_t instead of Stat_t (although equivalent) to be in sync
with TTree which returns a Double_t. Brought
(and is now automatically available via CINT).
2002-02-28 17:57 rdm
* pgsql/src/TPgSQLServer.cxx:
pass correctly port number to Postgres.
2002-02-28 14:41 rdm
* base/: inc/TMD5.h, src/TMD5.cxx:
added new ctor accepting an external digest.
2002-02-28 14:41 rdm
* README/INSTALL:
corrected description of "make redhat".
2002-02-27 17:13 brun
* tree/: inc/TChain.h, src/TChain.cxx:
Implement TChain::SetDirectory redefining TTree::SetDirectory.
Protect TChain::LoadTree against wrong assignement of fDirectory/fFile.
2002-02-27 12:41 brun
* graf/src/TGraph.cxx:
Several protections added in TGraph::ExecuteEvent in case of large zooms.
2002-02-27 12:41 brun
* gpad/inc/TPad.h:
Use the new variable kMaxPixel (in GuiTypes.h) instead of the value 65000.
2002-02-27 12:27 brun
* base/inc/GuiTypes.h:
Add a constant
const Int_t kMaxPixel = 32000;
This new constant is used in ExecuteEvent functions to prevent zooming
with erroneous pixel values.
2002-02-27 09:39 brun
* matrix/src/: TMatrix.cxx, TMatrixD.cxx:
Correct comments in the example with ApplyFunction.
2002-02-27 09:11 brun
* base/src/TMD5.cxx:
The #include <io.h> must be added for WIN32
2002-02-26 23:04 brun
* gpad/inc/TPad.h:
In functions UtoPixel, VtoPixel, XtoAbsPixel, XtoPixel, YtoAbsPixel, YtoPixel
add a protection in case the calculated pixel number is a huge number
when converted to an integer (could be a negative integer).
The protection always return a pixel number less than 65000 (this should be OK
even when using large virtual pixmaps).
In case the computed value is negative, returns pixel=-5 to avoid side-effects
in the ExecuteEvent functions (eg TGraph).
The large values for pixel numbers can be obtained when zooming with a big factor
on a histogram or TGraph defined with many points.
Thanks to Tony Colley for reporting a simple case.
2002-02-26 22:55 brun
* treeplayer/src/TTreePlayer.cxx:
Fix by Philippe in TTreePlayer::CopyTree.
The CopyTree method was only looking at the first value of an array.
2002-02-26 19:02 rdm
* net/src/TFTP.cxx:
fixed a possible resource leak (file descriptor) in case of error and clearer
error messages in PutFile().
2002-02-26 18:59 rdm
* base/: inc/TMD5.h, src/TMD5.cxx:
added FileChecksum(). This method returns a checksum of the specified file.
The returned TMD5 object must be deleted by the user. Returns 0 in case of
error. This method preserves the modtime of the file so it can be safely
used in conjunction with methods that keep track of the file's modtime.
2002-02-26 18:57 rdm
* base/inc/TSystem.h, base/src/TSystem.cxx, unix/inc/TUnixSystem.h,
unix/src/TUnixSystem.cxx, winnt/inc/TWinNTSystem.h,
winnt/src/TWinNTSystem.cxx:
new method Utime() to set the file modification and access times.
Also added the missing Umask() to TWinNTSystem.cxx.
2002-02-26 12:29 brun
* base/inc/RVersion.h, build/version_number:
Stamp development version 3.03/02
2002-02-26 12:11 brun
* base/inc/: Bytes.h, RConfig.h, Rtypes.h:
Remove definition of R__BOOL. The bool type works on all supported platforms.
2002-02-26 11:28 brun
* main/src/hadd.cxx:
Add a return statement in main program (required by some compilers).
2002-02-26 11:07 brun
* hist/src/THStack.cxx:
Add a new drawing option to THStack::Paint.
When the option "pads" is specified,the current pad/canvas is subdivided into
a number of pads equal to the number of histograms and each histogram
is paint into a separate pad.
2002-02-26 10:21 rdm
* main/Module.mk:
small correction for handling HADD (use HADDDEP and correct distclean).
2002-02-26 09:25 brun
* main/: Module.mk, src/hadd.cxx:
The macro in $ROOTSYS/tutorials/hadd.C has been converted into a program
to add a list of histogram files.
The executable is generated in $ROOTSYS/bin/hadd.
2002-02-26 09:23 brun
* tutorials/hadd.C:
New version of hadd.C that can be used directly as a macro.
Note that this macro is kept as a tutorial. To merge a list of files
use the new program hadd in $ROOTSYS/bin/hadd
2002-02-26 00:10 brun
* graf/src/TGraphErrors.cxx, histpainter/src/THistPainter.cxx:
Use the new function TStyle::GetEndErrorSize to set the length of
the lines drawn at the end of the error bars.
// Use gStyle->SetErrorX(dx) to control the size of the error along x.
// set dx = 0 to suppress the error along x.
//
// Use gStyle->SetEndErrorSize(np) to control the size of the lines
// at the end of the error bars (when option 1 is used).
// By default np=1. (np reprersents the number of pixels).
2002-02-26 00:08 brun
* base/: inc/TStyle.h, src/TStyle.cxx:
Remove unused member fErrorMsize and corresponding functions
GetErrorMsize and SetErrorMsize.
Ass new member fEndErrorSize and functions GetEndErrorSize, SetEndErrorSize.
fEndErrorSize is the size (in pixels) of the lines drawn at the end
of the error bars. Default value is 1 pixel on each side.
2002-02-25 19:06 rdm
* x11/src/GX11Gui.cxx:
in RootX11ErrorHandler() print also request code of failed request.
2002-02-25 19:05 rdm
* base/src/TBuffer.cxx:
make frombufOld static.
2002-02-25 19:03 rdm
* base/inc/LinkDef1.h, base/inc/Rtypeinfo.h, base/inc/Rtypes.h,
base/inc/RtypesImp.h, base/inc/TBuffer.h, base/inc/TQObject.h,
base/inc/TROOT.h, base/src/TBuffer.cxx, base/src/TQObject.cxx,
base/src/TROOT.cxx, cint/src/kccstrm.cxx,
config/Makefile.solariskcc, cont/inc/TArray.h, cont/inc/TArrayC.h,
cont/inc/TArrayD.h, cont/inc/TArrayF.h, cont/inc/TArrayI.h,
cont/inc/TArrayL.h, cont/inc/TArrayS.h, cont/inc/TClassTable.h,
cont/src/TArray.cxx, cont/src/TArrayC.cxx, cont/src/TArrayD.cxx,
cont/src/TArrayF.cxx, cont/src/TArrayI.cxx, cont/src/TArrayL.cxx,
cont/src/TArrayS.cxx, cont/src/TClassTable.cxx, meta/inc/LinkDef.h,
meta/inc/TClass.h, meta/inc/TStreamerElement.h,
meta/inc/TStreamerInfo.h, meta/src/TClass.cxx,
meta/src/TStreamerElement.cxx, meta/src/TStreamerInfo.cxx,
star/inc/Ttypes.h, unix/src/TUnixSystem.cxx,
utils/src/rootcint.cxx:
Philippe's latest ClassDef and No-ClassDef mods. Some spelling corrections
and reformatting (as usual ;-)).
2002-02-25 19:03 rdm
* base/inc/Rtypeinfo.h:
file Rtypeinfo.h was initially added on branch newClassDef-branch.
2002-02-25 17:05 brun
* hist/: inc/TH1.h, inc/TH2.h, inc/TH3.h, src/TH1.cxx, src/TH2.cxx,
src/TH3.cxx:
Move inline definitions of SetBinsLength from include to implementation files.
The argument to SetBinsLenght is now optional (default=-1).
When the default argument is specified, SetBinsLength computes automatically
the right parameter in function of the histogram type.
Add a new function TH1::Rebuild(Option_t *option="")
This function may be called after having changed one or more axis parameters,
including the number of bins. This function takes care of reallocating
the storage area for bin contents and errors.
2002-02-25 15:51 brun
* base/src/TBenchmark.cxx:
TBenchmark::Stop must call TTimer::Stop. Important in case one alternate between
benchmarks.
2002-02-25 13:36 rdm
* base/: inc/TBuffer.h, src/TBuffer.cxx:
add support for reading and writing arrays of bools.
2002-02-25 13:23 brun
* gl/src/TWin32GLKernel.cxx:
Fix when calling GetGL for a bool type
2002-02-25 12:26 brun
* base/src/: TDirectory.cxx, TFile.cxx:
Delete the now obsolete calls to TStreamerInfo::SetCurrentFile.
The I/O functions use the file pointer of the TBuffer object instead
of the unsafe current file.
2002-02-25 12:24 brun
* cont/src/TClonesArray.cxx:
Pass current file as argument of TStreamerInfo::ForceWriteInfo
2002-02-25 12:23 brun
* meta/src/TClass.cxx:
Pass current file as argument of TStreamerInfo::BuildFake
2002-02-25 12:22 brun
* meta/src/TStreamerElement.cxx:
Pass current file to TStreamerInfo::ForceWriteInfo
2002-02-25 12:21 brun
* tree/src/TTree.cxx:
Adapt the class to the changes in TStreamerInfo:
Pass current file to ForceWriteInfo and remove calls to TStreamerInfo::SetCurrentFile
2002-02-25 12:20 brun
* meta/: inc/TStreamerInfo.h, src/TStreamerInfo.cxx:
Following a good suggestion from Mathieu de Naurois, make ROOT I/O thread-safe.
Do not use anymore the static global members fgFile and fgElement.
To replace fgFile, two member functions BuildFake and ForceWriteInfo
have a new argument:
void BuildFake(TFile *file);
void ForceWriteInfo(TFile *file);
fgElement is replaced in all functions by a local variable aElement.
However, in ReadBuffer and ReadBufferClones, the static member fgElement
is still set to aElement. fgElement is used by TRef::Streamer in read mode.
TRef should be changed to also be thread safe.
2002-02-25 11:52 rdm
* meta/src/TCint.cxx:
use G__get_return() instead of directly G__return. Fixes problem on Win32.
2002-02-25 11:51 rdm
* cint/: inc/G__ci.h, src/func.c:
introduce G__get_return() which returns value of G__return.
Mods mailed to Masa.
2002-02-25 10:57 brun
* histpainter/src/THistPainter.cxx:
In PaintTitle, automatically rezize the TPaveText along X whenever
the title length changes.
2002-02-25 09:53 brun
* tree/src/TBranchElement.cxx:
Modify TBranchElement::UnRoll to not split a TClonesArray when the parent
branch is already split.
2002-02-25 08:38 brun
* base/src/TFile.cxx:
A few mods in the recovery procedure:
- Do not declare Zombie a file currently being written by another process,
containing keys, but SaveSelf not yet called.
- Allways call Recover in case 0 keys are found with the normal procedure.
Do not print any message if one key is found is this case.
- Move the Warning messages from Recover to TFile::Init in the recovery section.
2002-02-24 19:05 brun
* histpainter/src/THistPainter.cxx:
Several optimisations in this patch:
- in PaintTitle, use TLatex::GetXsize to evaluate the length of the TPaveText
where to draw the title.
- In PaintContour, PaintLego, PaintPalette, simplify the logic computing the color
levels. The color palette is now coherent with the colors used in the
contour, including in case of user defined contours or a logZ scale.
2002-02-24 19:01 brun
* graf/src/: TGraph.cxx, TMultiGraph.cxx:
Add protections in case GetHistogram, GetXaxis, GetYaxis are called
and the fHistogram pointer is null. This situation can happen
when drawing a graph with no option or invalid options.
2002-02-23 19:41 rdm
* base/inc/TQObject.h, gui/inc/TGButton.h, gui/inc/TGView.h:
add Emit(Bool_t) to avoid to have to cast the bool to some other type.
2002-02-23 17:22 brun
* gui/inc/TGView.h:
Cast the Bool_t argument of Emit to Int_t
2002-02-23 17:19 brun
* gui/inc/TGButton.h:
Cast argument of type Bool_t to Int_t when calling Emit.
Otherwise several compilers issue warnings of the type:
include/TGButton.h:124: warning: passing `bool' chooses `int' over `long int'
2002-02-23 17:05 rdm
* meta/src/TMethodCall.cxx:
add case for bool in ReturnType().
2002-02-23 17:05 brun
* gui/src/: TGTab.cxx, TGTextBuffer.cxx:
Correct some typos in comments
2002-02-23 17:04 rdm
* base/src/TApplication.cxx, meta/inc/TInterpreter.h,
meta/src/TCint.cxx:
exit() called from CINT scripts now also exits ROOT sessions, like an exit()
called from compiled code. The exit argument is not yet passed via Terminate()
to calling shell since CINT does not yet provide this info. As soon as it
does we'll pass it along.
2002-02-23 17:01 rdm
* base/src/TStorage.cxx, cont/src/TCollection.cxx,
thread/src/TThread.cxx:
small formatting corrections of mutex code.
2002-02-23 16:52 rdm
* x11/src/TGX11.cxx:
add protection in WriteGIF() in case image has more than 256 colors.
2002-02-23 16:50 rdm
* base/inc/TVirtualGL.h, gl/inc/TGLKernel.h, gl/src/TGLKernel.cxx:
change Bool_t to Uchar_t in GetGL() to avoid missmatch in case sizeof(bool)>1.
2002-02-23 16:45 rdm
* base/inc/TTimeStamp.h, eg/inc/TDecayChannel.h,
eg/src/TDecayChannel.cxx, g3d/inc/TMarker3DBox.h,
graf/inc/TArrow.h, graf/inc/TCurlyArc.h,
graf/inc/TGraphAsymmErrors.h, graf/inc/TGraphErrors.h,
graf/inc/TPaveStats.h, graf/inc/TSpline.h,
hist/inc/THLimitsFinder.h, histpainter/inc/THistPainter.h,
meta/inc/TStreamerElement.h, physics/inc/TFeldmanCousins.h,
physics/inc/TVector2.h, physics/inc/TVector3.h,
physics/src/TFeldmanCousins.cxx, star/inc/TObjectSet.h,
star/inc/TPolyLineShape.h, star/inc/TTable.h,
star/inc/TTableDescriptor.h, star/inc/TVolumeView.h,
star/inc/TVolumeViewIter.h, star/src/TVolumeView.cxx,
treeplayer/inc/TTreePlayer.h, treeviewer/inc/TTVLVContainer.h:
correct typo's and missing comments in ClassDefs so the automatically generated
HTML index looks ok.
2002-02-23 16:45 brun
* meta/: inc/TDataType.h, src/TDataType.cxx:
Add kBool_t in TDataType.h. Note that kBool_t = kUchar_t=11;
Add support for bool type in TDataType::AsString
2002-02-23 11:35 brun
* base/src/TPluginManager.cxx:
Fix error in TPluginManager:
In method `class TPluginHandler * TPluginManager::FindHandler(const char *, const char *)':
return to `TPluginHandler *' from `Bool_t'
2002-02-23 11:15 brun
* base/inc/Bytes.h, base/inc/RConfig.h, base/inc/Rtypes.h,
base/inc/TBuffer.h, gl/src/TGLKernel.cxx:
patch from Fons adding support for the native bool type in TBuffer & associates
2002-02-23 10:45 brun
* base/src/TROOT.cxx, meta/src/TDataType.cxx:
Add support for fundamental type bool in functions:
TDataType::setType
TROOT::GetListOfTypes
2002-02-22 21:52 brun
* html/src/THtml.cxx:
Fix by Axel Naumann:
* Special characters are not written to the html files anymore.
* occurences of <pre> or </pre> are removed in comments
2002-02-22 17:57 rdm
* postscript/src/TSVG.cxx:
version without trailing ^M's.
2002-02-22 17:29 rdm
* build/package/common/: root-zebra.dscr, root-zebra.files,
root-zebra.postinst, root-zebra.shlibs:
export THbook*.h include and libHbook in root-zebra.rpm package.
2002-02-22 12:41 brun
* base/inc/RVersion.h, build/version_number:
Stamp version 3.03/01
2002-02-22 11:45 rdm
* config/Makefile.win32, config/Makefile.win32gdk, hbook/Module.mk:
correct build procedure for libHbook on Windows.
2002-02-22 11:44 rdm
* meta/inc/TDictionary.h:
add new property kIsContPointer.
2002-02-22 11:44 rdm
* meta/src/TDataMember.cxx:
fix memory leak in GetterMethod() introduced yesterday.
2002-02-22 11:41 rdm
* gui/src/TRootContextMenu.cxx, win32/src/TWin32ContextMenuImp.cxx:
better detection if method argument is an enum.
2002-02-22 11:39 brun
* postscript/src/TSVG.cxx:
New version from Olivier Couet supporting all the fonts and also the
special symbols used by Tlatex. The 3 Tlatex tutorials are working now
correctly with this new version.
2002-02-22 10:37 brun
* base/inc/TVirtualMutex.h, base/src/TStorage.cxx,
base/src/TVirtualMutex.cxx, cont/src/TCollection.cxx,
meta/src/TCint.cxx, meta/src/TClass.cxx, meta/src/TMethodCall.cxx,
thread/src/TThread.cxx:
Patch from Mathieu de Naurois adding Thread-safety in many ROOT classes.
A new TVirtualMutex global is defined in TVirtualMutex.h (gCINTmutex).
gCINTMutes is used in TMethodCall to protect concurrent access to CINT.
The R__LOCKGUARD macro is introduced in many classes to check for a mutex.
The performance penalty introduced by the MUTEX logic
-is ZERO in the application has no threads
-about 10% in case of threads
2002-02-22 09:30 brun
* base/: inc/TVirtualPS.h, src/TVirtualPS.cxx:
Remove special <m> characters
2002-02-21 18:52 brun
* win32/src/TGWin32.cxx:
fix one more typo in GetDepth
2002-02-21 18:36 brun
* win32/src/TGWin32.cxx:
correct typo
2002-02-21 18:18 brun
* win32/src/TGWin32.cxx:
nplanes was not declared.
2002-02-21 16:40 rdm
* gui/src/TRootContextMenu.cxx, meta/inc/TDataMember.h,
meta/src/TDataMember.cxx, meta/src/TToggle.cxx,
win32/src/TWin32ContextMenuImp.cxx:
added TClass argument to TDataMember::SetterMethod() and GetterMethod().
This class argument is the class of the object that will be used to call
the TMethodCall. This fixes a problem that all toggle menu items in an
automatic context menu failed if the method was in a multiple-inherited
base class.
2002-02-21 16:14 brun
* hbook/src/hntvar2.f:
In HNTVAR2 the dimension of /PAWC/ must be identical to the declaration
in THbookFile (currently 8 Mbytes). Otherwise, one cannot link on Windows.
2002-02-21 13:14 rdm
* config/rootrc.in, x11/src/GX11Gui.cxx, x11/src/TGX11.cxx:
added two new resource in rootrc:
X11.Sync: no
X11.FindBestVisual: yes
if Sync is "yes" X11 will run in sync mode. Useful for discovering X
errors. Note, Sync mode is now independent of the Debug flag (used to be
that Debug>4 triggered Sync mode). If FindBestVisual is "no" then always
use the default X11 visual, don't try looking for a better one.
Run ./configure to activate.
2002-02-21 12:30 rdm
* base/inc/GuiTypes.h, base/inc/TVirtualX.h, win32/inc/TGWin32.h,
win32/src/GWin32GUI.cxx, win32/src/TGWin32.cxx,
win32gdk/inc/TGWin32.h, win32gdk/src/GWin32Gui.cxx,
win32gdk/src/TGWin32.cxx, x11/inc/TGX11.h, x11/src/GX11Gui.cxx,
x11/src/TGX11.cxx, x11ttf/src/TGX11TTF.cxx:
added new methods:
Visual_t GetVisual() const;
Int_t GetScreen() const;
Int_t GetDepth() const;
Colormap_t GetColormap() const;
these methods are usefull in some cases where direct X11 manipulation outside
of TVirtualX is needed. Also added code in TGX11 to detect the best X11
visual available. Some X servers insist on using by default an 8 bit
PseudoColor visual while 16 or 24 bit TrueColor (or DirectColor) visual are
available. Using the best visual is in particular important for image
processing classes.
2002-02-21 10:51 brun
* hbook/src/THbookFile.cxx:
Fix a problem when calling hntvar3 under Windows.
2002-02-20 18:19 brun
* hbook/src/hntvar2.f:
Fix in Fortran routine hntvar3. Alpha f77 does not accept null strings.
2002-02-20 18:05 brun
* hbook/src/THbookFile.cxx:
Fix a problem in THbookFile constructor (fatal on SGI/kCC)
2002-02-20 17:57 brun
* hbook/: inc/LinkDef.h, inc/THbookBranch.h, inc/THbookFile.h,
inc/THbookKey.h, inc/THbookTree.h, src/THbookBranch.cxx,
src/THbookFile.cxx, src/THbookKey.cxx, src/THbookTree.cxx,
src/hntvar2.f:
First operational version of the Hbook interface classes.
With this new version, one can:
- import automatically any 1-d, 2-d or profile histograms. The Hbook types
are converted on the fly to Root types TH1F, TH2F and TProfile.
- import ntuple headers (Row or Column-Wise).
A new data type THbookTree (deriving from TTree) with functions like
hbookTree.Draw("x","selection") like for a normal TTree. The ntuple data
are read directly from the Hbook file.
- The Tree viewer can be used directly: hbookTree.StartViewer();
- Browse the THbookFile via TBrowser. Clicking on a Hbook ID in a file
draws the histogram.
- When in the browser, the context menu item "Convert2root" can be selected
to convert a THbookFile into a normal TFile (via h2root). The converted file
is by default connected to the browser.
2002-02-20 17:55 rdm
* cint/: inc/G__ci.h, inc/global.h, inc/kccstrm.h,
include/_complex, include/carray.h, lib/bcstream/iostrm.h,
lib/cbstream/iostrm.h, lib/gcc3strm/iostrm.h, lib/ipc/ipcif.h,
lib/ipc/ipcif.h.old, lib/longlong/longdbl.h,
lib/longlong/longlong.h, lib/posix/posix.h, lib/prec_stl/list,
lib/prec_stl/vector, lib/snstream/iostrm.h, lib/stream/fstrm.h,
lib/stream/iostrm.h, lib/vcstream/iostrm.h, lib/xlib/setup,
src/Api.cxx, src/auxu.c, src/cast.c, src/disp.c, src/fakestrm.cxx,
src/func.c, src/global2.c, src/ifunc.c, src/inherit.c,
src/libstrm.cxx, src/macro.c, src/new.c, src/newlink.c, src/opr.c,
src/parse.c, src/pause.c, src/pcode.c, src/quote.c, src/shl.c,
src/sizeof.c, src/tmplt.c, src/typedef.c, src/val2a.c, src/var.c,
tool/makecint.c:
import of CINT 5.15.32.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
Phil, please check your mods. I looks tmplt.c is ok now.
2002-02-20 17:52 rdm
* cint/: inc/G__ci.h, include/_complex, lib/ipc/ipcif.h,
lib/ipc/ipcif.h.old, lib/posix/posix.h, lib/stream/iostrm.h,
lib/xlib/setup, src/Api.cxx, src/ifunc.c, src/newlink.c,
src/quote.c, src/sizeof.c, src/tmplt.c, src/var.c, tool/makecint.c:
import of CINT 5.15.32.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
iostream redirect mod (G__OLDIMPLEMENTATION1635) still disabled.
2002-02-20 17:48 brun
* tree/inc/TVirtualTreePlayer.h, treeplayer/inc/TTreePlayer.h:
Add new functions GetNfill and GetMultiplicity.
These functions are necessary for the new THbookFile classes.
2002-02-19 18:43 brun
* graf/: inc/TMultiGraph.h, src/TMultiGraph.cxx:
Add an optional argument to TMultiGraph::Draw.
This optional argument can be used to specify the draw option for this graph.
If a draw option is not specified, the option specified in TMultiGraph::Draw
will be used instead.
Also, always use the option "0" when painting the frame histogram.
The option "0" suppresses the drawing of the horizonthal line at y=0.
2002-02-19 18:30 rdm
* hbook/Module.mk:
add HBOOKLIBEXTRA in link statement. Set this for example in Makefile.aix
to contain the libs needed by libpacklib.a (like X11, etc.).
2002-02-19 18:08 brun
* hbook/src/THbookFile.cxx:
Fix a compiler error for WIN32 when calling hgnt1
2002-02-19 09:13 rdm
* config/Makefile.hpuxia64acc:
Add option "+Z" in F77FLAGS. This is required to compile hntvar2.f.
2002-02-19 00:42 brun
* config/Makefile.hpuxacc:
Add option "+Z" in F77FLAGS. This is required to compile hntvar2.f
2002-02-19 00:34 brun
* tutorials/rootmarks.C:
Renormalize benchmark to take into account the recent speed up in CINT.
2002-02-19 00:16 brun
* physics/src/TFeldmanCousins.cxx:
Fix double declaration of loop index to compile on HP-UX/aCC
2002-02-19 00:11 brun
* hbook/: inc/THbookFile.h, src/THbookFile.cxx:
Class THbookFile derives from TNamed instead of TFile
2002-02-19 00:10 brun
* hist/: inc/TProfile2D.h, src/TProfile2D.cxx:
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1); // *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
TH2D *ProjectionXY(const char *name="_pxy", Option_t *option="e") const;
2002-02-19 00:09 brun
* hist/: inc/TProfile.h, src/TProfile.cxx:
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1); // *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
TH1D *ProjectionX(const char *name="_px", Option_t *option="e") const;
2002-02-19 00:09 brun
* hist/: inc/TH3.h, src/TH3.cxx:
Make the following functions const
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Option_t *option="") const {return 0;}
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Option_t *option="") const {return 0;}
Stat_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Int_t binz1, Int_t binz2, Option_t *option="") const;
TH1 *Project3D(Option_t *option="x") const; // *MENU*
2002-02-19 00:09 brun
* hist/: inc/TH2.h, src/TH2.cxx:
Make the following functions const
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Option_t *option="") const {return 0;}
Stat_t Integral(Int_t binx1, Int_t binx2, Int_t biny1, Int_t biny2, Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t *option="") const {return 0;}
TProfile *ProfileX(const char *name="_pfx", Int_t firstybin=-1, Int_t lastybin=9999, Option_t *option="") const; // *MENU*
TProfile *ProfileY(const char *name="_pfy", Int_t firstxbin=-1, Int_t lastxbin=9999, Option_t *option="") const ; // *MENU
TH1D *ProjectionX(const char *name="_px", Int_t firstybin=-1, Int_t lastybin=9999, Option_t *option="") const; // *MENU*
TH1D *ProjectionY(const char *name="_py", Int_t firstxbin=-1, Int_t lastxbin=9999, Option_t *option="") const; // *MENU*
2002-02-19 00:08 brun
* hist/: inc/TH1.h, src/TH1.cxx:
Make the following functions const
void Add(const TH1 *h1, Double_t c1=1);
void Add(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1); // *MENU*
void Divide(const TH1 *h1);
void Divide(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
void GetLowEdge(Axis_t *edge) const {fXaxis.GetLowEdge(edge);}
Stat_t Integral(Option_t *option="") const;
Stat_t Integral(Int_t binx1, Int_t binx2, Option_t *option="") const;
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Option_t * /*option*/ ="") const {return 0;}
Stat_t Integral(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, Option_t * /*option*/ ="" ) const {return 0;}
void Multiply(const TH1 *h1);
void Multiply(const TH1 *h1, const TH1 *h2, Double_t c1=1, Double_t c2=1, Option_t *option=""); // *MENU*
2002-02-19 00:08 brun
* hist/: inc/TAxis.h, src/TAxis.cxx:
Make the following functions const
void GetCenter(Axis_t *center) const;
void GetLowEdge(Axis_t *edge) const;
const TArrayD *GetXbins() const {return &fXbins;}
2002-02-18 21:19 brun
* base/src/TSystem.cxx:
Fix a compiler error (HP-UX/aCC) in TSystem::CompileMacro
2002-02-18 19:15 brun
* hbook/src/THbookFile.cxx:
Fix compiler warnings
2002-02-18 19:11 rdm
* build/package/: common/README, rpm/root-sapdb.spec.in:
add missing sapdb spec file and small reformatting of README.
2002-02-18 19:10 rdm
* build/package/rpm/README.Redhat:
this file is generated during "make redhat".
2002-02-18 19:09 brun
* base/src/TMath.cxx:
Fix portability problems in new BubbleSort functions
2002-02-18 19:05 rdm
* main/: Module.mk, src/hntvar2.f:
move hntvar2.f to hbook/src. Remove by hand main/src/hntvar2.o and .d from
your build directories.
2002-02-18 19:02 rdm
* Makefile, hbook/Module.mk, hbook/inc/LinkDef.h,
hbook/inc/THbookBranch.h, hbook/inc/THbookFile.h,
hbook/inc/THbookTree.h, hbook/src/THbookBranch.cxx,
hbook/src/THbookFile.cxx, hbook/src/THbookTree.cxx,
hbook/src/hntvar2.f:
new directory containing code for libHbook.so. This library provides an
interface to legacy HBOOK files and provides histogram and ntuple reading
capability.
2002-02-18 11:19 brun
* base/src/TMath.cxx:
Remove compiler Warnings in new functions BubbleHigh/Low
2002-02-18 11:18 brun
* README/CREDITS:
Add contributions of:
Susan Kasahara
Adrian John Bevan
2002-02-18 11:07 brun
* physics/: inc/LinkDef.h, inc/TFeldmanCousins.h,
src/TFeldmanCousins.cxx:
Add new class:
// TFeldmanCousins
//
// class to calculate the CL upper limit using
// the Feldman-Cousins method as described in PRD V57 #7, p3873-3889
//
// The default confidence interval calvculated using this method is 90%
// This is set either by having a default the constructor, or using the
// appropriate fraction when instantiating an object of this class (e.g. 0.9)
//
// The simple extension to a gaussian resolution function bounded at zero
// has not been addressed as yet -> `time is of the essence' as they write
// on the wall of the maze in that classic game ...
//
// Author: Adrian Bevan, Liverpool University
//
// Copyright Liverpool University 2001 bevan@slac.stanford.edu
2002-02-18 11:06 brun
* base/: inc/TMath.h, src/TMath.cxx:
Add two new sorting functions:
void BubbleHigh(Int_t Narr, Double_t *arr1, Int_t *arr2)
void BubbleLow (Int_t Narr, Double_t *arr1, Int_t *arr2)
Thanks to Adrian Bevan, Liverpool University
2002-02-18 08:45 brun
* star/src/: TTableDescriptor.cxx, TTableSorter.cxx:
Replace calls to TDataMember::GetOffset by TDataMember::GetOffsetCint.
2002-02-18 08:44 brun
* meta/: inc/TDataMember.h, src/TDataMember.cxx:
Add new function GetOffsetCint with the same behaviour as the function GetOffset
in version 3.02. GetCintOffset uses the information from CINT only to compute
the member offset.
2002-02-17 14:47 rdm
* build/: unix/makedist.sh, win/makedist.sh:
also add tutorials/*.cxx files.
2002-02-17 14:46 rdm
* .cvsignore, cint/.cvsignore, cint/include/.cvsignore,
cint/main/.cvsignore, config/.cvsignore, etc/.cvsignore,
proof/etc/.cvsignore, test/.cvsignore, utils/src/.cvsignore:
add .cvsignore files to not show any generated files that are not
stored in cvs.
2002-02-16 12:08 rdm
* configure:
fixed typos in enable_ttf.
2002-02-16 12:08 rdm
* config/rootrc.in:
updated comment on ACliC.Linkdef.
2002-02-16 00:22 brun
* graf/src/TGaxis.cxx:
In TGaxis::PaintAxis optimize position of labels for several configurations.
2002-02-15 23:13 brun
* treeplayer/src/TTreePlayer.cxx:
In MakeSelector, correct typos (missing "") in the comments of the generated code
2002-02-15 23:12 brun
* tree/inc/TSelector.h:
Some cosmetic changes
2002-02-15 21:59 brun
* base/src/TError.cxx:
Patch from Philippe to avoid a core dump in case of very long error messages.
2002-02-15 18:03 rdm
* config/memprobe.in:
added fix by Nick West for prototype gdb versions.
2002-02-15 15:07 rdm
* net/src/TNetFile.cxx, rootd/src/rootd.cxx:
support new option "+read" in TNetFile. This will allow you to open a file
in read mode that has already been opened in write mode by another rootd.
By default rootd does not allow readers when a file is being written.
Usefull for spying in DAQ environments, but should be used carefully.
2002-02-15 12:47 brun
* graf/src/TGaxis.cxx:
Fix a precision problem when drawing axis with a very small relative scale.
2002-02-15 12:47 brun
* graf/src/TEllipse.cxx:
Use one single high precision definition of kPI
2002-02-15 12:41 rdm
* base/src/TRegexp.cxx:
allow ' ' and ',' as part of a wildcard. Fixes listing of directories
containing objects with names like "tree data".
2002-02-15 12:39 rdm
* configure:
don't use /afs path when chacking for dcache library.
2002-02-15 11:43 brun
* hist/src/TH2.cxx:
TH2::ProjectionX and Y have now a new option "D" to automatically
draw the resulting projection. This is specially convenient
when ProjectionX,Y are used via the TH2 context menu.
Select a drawing option, eg "d bar2" or "d hbar2" in the dialog box.
2002-02-14 20:11 rdm
* base/inc/TSystem.h, base/src/TSystem.cxx, config/rootrc.in:
By default, when doing .L MyScript.cxx, ACLiC will now look
for a file name MyScript_linkdef and having one of the .h (.hpp,
etc.) extensions. If such a file exists, it will be added to
the end of the linkdef file used to created the ACLiC dictionary.
This effectively enables the full customization of the creation
of the dictionary. It should be noted that the file is intended
as a linkdef 'fragment', so usually you would not list the
typical '#pragma link off ....". Mod by Philippe.
2002-02-14 19:04 brun
* postscript/src/TPostScript.cxx, base/inc/TVirtualPS.h,
base/src/TVirtualPS.cxx, postscript/inc/LinkDef.h,
postscript/inc/TPostScript.h:
Several mods by Olivier Couet .
The class TPostScript and TSVG derive from TVirtualPS.
Both classes have several functions in common. These functions
previously in TPostScript have been moved to TVirtualPS.
2002-02-14 19:01 brun
* postscript/: inc/TSVG.h, src/TSVG.cxx:
New class TSVG implemented by Olivier Couet. TSVG may be used
like TPostScript to produce an SVG file instead of a postscript file.
Viewers like Internet Explorer can view directly the SVG files.
2002-02-14 17:21 rdm
* base/: inc/TDSet.h, src/TDSet.cxx:
TDSetElement's GetObjName() and GetDirectory() returns now parent TDSet
information instead of "" in case no specific element name and directory
was set. So the user does not have to check both the element and the set.
2002-02-14 17:12 rdm
* base/Module.mk, base/inc/LinkDef3.h, base/inc/TVirtualMutex.h,
base/src/TVirtualMutex.cxx, thread/inc/LinkDef.h,
thread/inc/TMutex.h, thread/src/TMutex.cxx:
introduce new abstract class TVirtualMutex in base and move TLockGuard from
thread to base. TMutex now derives from TVirtualMutex. Also add zero
overhead macros to be used to place mutexes (zero overhead in case ROOT
is not compiled with thread support). Added, example, global container
mutex which should be initialized when libThread is loaded to point to
a real mutex. To be done and tested by Mathieu de Naurois.
2002-02-14 17:05 rdm
* cint/src/Api.cxx:
namespace std is supported by aCC >= 53000 so add specific test.
2002-02-14 14:22 brun
* hist/src/TAxis.cxx:
Fix from Damir in TAxis::ChooseTimeFormat to solve the following complaint:
"I have just a very small enhancement request for the TAxis->ChooseTimeFormat
function. Displaying long time intervalls ( several years ) the format
"%d/%m/%y" is selected, but there is not so much sense to display
days in this case. It just look's not very nice and I have to change
the format for each plotting
My suggestion is to choose "%m/%y"."
(from Gernot Maier)
2002-02-14 10:35 brun
* hist/src/TH1.cxx:
In TH1::Fit do not discard bins with null contents in case of option "w"
2002-02-14 09:30 brun
* star/src/: TPolyLineShape.cxx, TTable.cxx:
Remove dependencies on TPad.
2002-02-14 09:30 brun
* histpainter/src/THistPainter.cxx:
In THistPainter::PaintLego and PaintSurface, always use the current scale
instead of taking it from the TView.
2002-02-14 09:28 brun
* gpad/src/TPad.cxx:
Undo previous correction in TPad::PaintModified (call to SetView(0).
This correction had several side-effects.
An alternative correction is made in THistPainter.
2002-02-13 22:51 brun
* cint/src/Api.cxx:
Two places to be modified in Api.cxx for hp-ux
2002-02-13 22:44 brun
* cint/src/: Api.cxx, sizeof.c:
fix to compile on hp-ux/aCC and SGI/cc
2002-02-13 16:38 brun
* tree/src/TBranch.cxx:
In TBasket::GetBasket, print additional information (file name and entry number
in case TBasket::ReadBasketBuffers fails.
2002-02-13 16:37 brun
* tree/src/TBasket.cxx:
Go back to the original algorithm in TBasket::ReadBasketBuffers.
2002-02-13 12:34 brun
* minuit/: inc/TMinuit.h, src/TMinuit.cxx:
Modify the signature of the new function Eval from:
Int_t Eval(Int_t &npar, Double_t *grad, Double_t &fval, Double_t *par, Int_t flag)
to
Int_t Eval(Int_t npar, Double_t *grad, Double_t &fval, Double_t *par, Int_t flag)
such that npar is always an input parameter. This has required a modification
of TMinuit::mnline.
2002-02-13 12:12 brun
* base/src/TObject.cxx:
In TObject::DrawClone, gPad must be set to the destination pad
in case the cloned object is a TVirtualpad.
2002-02-13 11:13 brun
* minuit/: inc/TMinuit.h, src/TMinuit.cxx:
Replace all calls to fFCN by a call to the new virtual function Eval:
Int_t TMinuit::Eval(Int_t &npar, Double_t *grad, Double_t &fval, Double_t *par, Int_t flag)
// Evaluate the minimisation function
// Input parameters:
// npar: number of currently variable parameters
// par: array of (constant and variable) parameters
// flag: Indicates what is to be calculated (see example below)
// grad: array of gradients
// Output parameters:
// fval: The calculated function value.
// grad: The (optional) vector of first derivatives).
//
// The meaning of the parameters par is of course defined by the user,
// who uses the values of those parameters to calculate his function value.
// The starting values must be specified by the user.
// Later values are determined by Minuit as it searches for the minimum
// or performs whatever analysis is requested by the user.
//
// Note that this virtual function may be redefined in a class derived from TMinuit.
// The default function calls the function specified in SetFCN
//
// Example of Minimisation function:
/*
if (flag == 1) {
read input data,
calculate any necessary constants, etc.
}
if (flag == 2) {
calculate GRAD, the first derivatives of FVAL
(this is optional)
}
Always calculate the value of the function, FVAL,
which is usually a chisquare or log likelihood.
if (iflag == 3) {
will come here only after the fit is finished.
Perform any final calculations, output fitted data, etc.
}
*/
// See concrete examples in TH1::H1FitChisquare, H1FitLikelihood
2002-02-13 10:30 brun
* tree/src/TBranch.cxx:
In TBranch::GetBasket, print the name of the file in case an I/O error occurs.
2002-02-13 10:23 brun
* gpad/src/TPad.cxx:
In TPad::PaintModified, reset the current TView if one TView exists.
2002-02-13 10:18 brun
* hist/src/TF1.cxx:
Relax the convergenge tests in TF1::IntegralMultiple in case of very small
function values.
2002-02-12 18:53 rdm
* base/inc/MessageTypes.h, proof/inc/LinkDef.h,
proof/inc/TEventIter.h, proof/inc/TProof.h,
proof/inc/TProofPlayer.h, proof/inc/TProofServ.h,
proof/src/TEventIter.cxx, proof/src/TProof.cxx,
proof/src/TProofPlayer.cxx, proof/src/TProofServ.cxx,
tree/src/TSelector.cxx:
PROOF merge with Maarten.
2002-02-12 18:40 rdm
* graf/src/TPolyLine.cxx:
Set fLastPoint correctly in Double_t ctor.
2002-02-11 10:08 brun
* base/src/: TDirectory.cxx, TFile.cxx:
Add new code from Susan Kasahara to accomodate another
use case for this particular situation in which the file has been
opened by the writer but no keys have been written to the file.
This additional use case is a daq -> dispatcher configuration running at a
detector site in which a dispatcher serves data from the data file while
the daq is still writing to it. To support this, the daq writer uses
TDirectory::SaveSelf, and the dispatcher reader uses TDirectory::ReadKeys
as is described under TDirectory::ReadKeys. This works well as long as at
least 1 key has been written to the file by the daq writer.
When the file has been opened by the writer, but no key has yet been
written to the file, one must be able to open the file with no error message
reported, and have TDirectory::ReadKeys return the number of keys = 0.
2002-02-10 21:02 brun
* physics/inc/TVector3.h:
Add new function (thanks Axel Naumann)
void TVector3::SetPtEtaPhi(Double_t pt, Double_t eta, Double_t phi);
2002-02-10 11:13 brun
* tree/src/TTree.cxx:
Fix a problem in TTree::Streamer. The Tree object cannot be added
to the THashList before streaming the TNamed part of the Tree.
2002-02-09 21:07 rdm
* base/src/TFile.cxx:
use GetSize() instead of GetPathInfo() in Init() to use the file system
dependent stat() method. Thanks Grzegorz Mazur.
2002-02-09 18:13 rdm
* cint/: inc/G__ci.h, inc/global.h, inc/kccstrm.h,
include/carray.h, lib/bcstream/iostrm.h, lib/cbstream/iostrm.h,
lib/gcc3strm/iostrm.h, lib/longlong/longdbl.h,
lib/longlong/longlong.h, lib/prec_stl/list, lib/prec_stl/vector,
lib/snstream/iostrm.h, lib/stream/fstrm.h, lib/stream/iostrm.h,
lib/vcstream/iostrm.h, src/Api.cxx, src/auxu.c, src/cast.c,
src/disp.c, src/fakestrm.cxx, src/func.c, src/global2.c,
src/ifunc.c, src/inherit.c, src/libstrm.cxx, src/macro.c,
src/new.c, src/newlink.c, src/opr.c, src/parse.c, src/pause.c,
src/pcode.c, src/quote.c, src/shl.c, src/sizeof.c, src/tmplt.c,
src/typedef.c, src/val2a.c, src/var.c:
import of CINT 5.15.31.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
I've disabled the new iostrm feature by default. Please test on all platforms
at least once with this feature enabled to be able to give Masa feedback.
To do this comment in G__ci.h the line:
#define G__OLDIMPLEMENTATION1635
at the top of the file between the G__ROOT ifdef.
In addition if there is a compile problem with Api.cxx comment in the same
G__ROOT ifdef the line:
#define G__CPPCONSTSTRING
Hopefully next release has these things completely sorted out.
2002-02-09 17:23 rdm
* Makefile, base/inc/Rtypes.h, base/inc/TString.h,
cont/inc/TArray.h, cont/inc/TArrayC.h, cont/inc/TArrayD.h,
cont/inc/TArrayF.h, cont/inc/TArrayI.h, cont/inc/TArrayL.h,
cont/inc/TArrayS.h, test/TBench.h, utils/src/rootcint.cxx:
set of mods to handle operator>>() for classes not deriving from TObject
which have a ! in the class pragma statement (i.e. they provide a private
implementation).
2002-02-09 16:34 rdm
* Makefile, README/BUILDSYSTEM:
add Phil's skip target to the Makefile. Skip allows one to bypass all
dependency checking for a quick recompile of only the desired target, e.g.:
make skip cont/src/G__Cont.cxx
use only for testing purposes in the development process.
2002-02-09 15:57 rdm
* mac/src/G__MacSystem.cxx:
remove obsolete G__ file from repository.
2002-02-08 23:03 brun
* tree/src/TTree.cxx:
In TTree::Branch set the pointer to 0 in case a default object
has been allocated/deleted to create the dictionary.
2002-02-08 19:36 rdm
* win32gdk/gdk/dll/gdk-1.3.dll:
fix by Bertrand to better handle menu's.
2002-02-08 18:54 brun
* meta/src/TStreamerElement.cxx:
Add support for char* in GetBasicTypeName. This fixes a problem
when using TFile::MakeProject on a class having char*
2002-02-08 18:50 rdm
* base/inc/TTimeStamp.h:
fix by Phil for linux/KCC.
2002-02-08 15:58 rdm
* base/inc/Rtypes.h, utils/src/rootcint.cxx:
fix that uses pure templated oprator>>() and does not generate one in via
rootcint anymore. Phil, please try with your TArray test case. With this
fix benchmarks.C and stress work fine. Maybe we can also remove the Win32
friend case with this change. Did not try it yet.
2002-02-07 20:58 rdm
* base/inc/RtypesImp.h:
file RtypesImp.h was initially added on branch newClassDef-branch.
2002-02-07 20:58 rdm
* base/inc/RConfig.h, base/inc/Rtypes.h, base/inc/RtypesImp.h,
base/inc/TQObject.h, cont/src/TClassTable.cxx,
star/inc/TGenericTable.h, star/inc/TTable.h,
star/inc/TTableDescriptor.h, star/inc/Ttypes.h,
utils/src/rootcint.cxx:
add Philippe's experiment new ClassDef solution in the newClassDef-branch.
On my machine it compiles but does not run (benchmarks fails in fit1.C
and stress -b 30 segv immediately). Maybe something wrong with the merge.
Philippe please check and mail me patches.
2002-02-07 19:06 rdm
* proof/: inc/TProof.h, src/TProof.cxx:
fix in FindUniqueSlaves() and also allow Collect() to be called for
the group of unique slaves.
2002-02-07 19:05 rdm
* base/inc/TTimeStamp.h:
remove double initialization.
2002-02-07 19:04 rdm
* base/inc/RConfig.h, config/Makefile.hpuxacc,
config/Makefile.hpuxia64acc, config/root-config.in:
add autodetection for HP's aCC compiler.
2002-02-07 19:02 rdm
* cint/inc/kccstrm.h:
fix by Philppe for basic_streambuf.
2002-02-07 13:27 rdm
* tutorials/spyserv.C:
add protection in case canvas was closed via WM close button.
2002-02-07 11:56 brun
* graf/src/TLatex.cxx:
Fix a problem in the rotation algorithm when drawing a super paraenthesis
in TLatex::DrawParenthesis (thanks Marthe)
2002-02-07 11:47 brun
* g3d/src/TNode.cxx:
In TNode::DistancetoPrimitive remove the special case returning TView.
This is now handled automatically by TPad::Pick.
2002-02-07 11:46 brun
* gpad/src/TPad.cxx:
In TPad::Pick, return the TView object if no other primitives have been picked
and if we are not on the pad X edges (where the pad object itself is returned).
Remove an unnecessary call to TVirtualPS::PrintFast giving problems
in the new TSVG class (thanks Olivier Couet)
2002-02-07 11:27 rdm
* icons/: arrow_down.xpm, arrow_up.xpm:
slightly trimmed icons by Bertrand.
2002-02-07 10:17 brun
* hist/src/TH1.cxx:
Optimization of TH1::SetContour in case min=max and non zero.
2002-02-07 10:10 brun
* hist/inc/TVirtualHistPainter.h, histpainter/inc/THistPainter.h,
histpainter/src/THistPainter.cxx:
New feature added by Philippe:
I am taking advantage of the fact that we have one painter per histogram
to individualize a little better the stats box.
The HistPainter now handles a pointer to the stats box. In particular this
means that you can rename it and still have it being updated. The stats can
also now be retrieved via hist->GetPainter()->GetStats(); The HistPainter
now keeps contact with the PaveStats box whether its name have changed or not.
2002-02-07 09:42 brun
* tree/src/TChain.cxx:
Fix typo in previous patch.
2002-02-07 09:41 brun
* tree/src/TChain.cxx:
In TChain::AddFile, do not delete the tree before deleting the file.
In TChain::Add, when wildcarding is used, call TChain::AddFile with a default
second argument (nentries=kBigNumber)
2002-02-07 09:06 brun
* base/src/TObject.cxx, meta/src/TStreamerInfo.cxx:
Remove unnecessary call to WriteProcessID in the case TProcessId *pi=0.
2002-02-07 08:31 brun
* base/src/TObject.cxx, meta/src/TStreamerInfo.cxx:
The previous fix for TBuffer/gFile in case of chains was incomplete.
Thanks to Axel Naumann and Lukas Phaf for providing this additional patch
that makes TRef/TRefArray working with TChain.
2002-02-06 22:57 brun
* histpainter/src/THistPainter.cxx:
Implement a change suggested by Tony Colley:
Combining the "L" and "P" options of TH1::Draw results in a display of markers
only (the "L" is ignored). Also, setting marker styles on the TH1 is
ineffective, the styles must be set using gStyle.
2002-02-06 19:29 rdm
* cint/src/Api.cxx:
Add special case for HP aCC compiler.
2002-02-06 19:27 rdm
* base/src/TTimeStamp.cxx, proofd/src/net.cxx,
proofd/src/proofd.cxx, rootd/src/net.cxx, rootd/src/netpar.cxx,
rootd/src/rootd.cxx, test/Makefile.in, tutorials/na49geomfile.C:
patch for MacOS X by Keisuke Fujii <fujiik@jlcuxf.kek.jp>.
2002-02-06 13:21 rdm
* cint/: inc/G__ci.h, inc/global.h, inc/kccstrm.h,
lib/bcstream/iostrm.h, lib/cbstream/iostrm.h,
lib/gcc3strm/iostrm.h, lib/longlong/longdbl.h,
lib/longlong/longlong.h, lib/prec_stl/list, lib/prec_stl/vector,
lib/snstream/iostrm.h, lib/stream/fstrm.h, lib/stream/iostrm.h,
lib/vcstream/iostrm.h, src/Api.cxx, src/auxu.c, src/cast.c,
src/disp.c, src/fakestrm.cxx, src/func.c, src/global2.c,
src/ifunc.c, src/inherit.c, src/libstrm.cxx, src/macro.c,
src/new.c, src/newlink.c, src/opr.c, src/parse.c, src/pause.c,
src/pcode.c, src/quote.c, src/sizeof.c, src/tmplt.c, src/typedef.c,
src/val2a.c, src/var.c:
put cint 5.15.30 on test branch to check risky new features.
2002-02-06 12:51 rdm
* base/src/TSysEvtHandler.cxx, net/src/TMonitor.cxx:
correct comments on usage of read and write flags.
2002-02-06 11:33 brun
* tree/src/TBasket.cxx:
Modify TBasket::ReadBasketBuffers to allocate a few more bytes to the buffer
before inflating it. The Inflate function some time requires a few more bytes
to uncompress the data.
2002-02-06 11:31 brun
* zip/src/Inflate.c:
In the R__unzip function relax the test comparing the test comparing
the pointer position in the uncompressed buffer with the value initially
expected. There are some rare cases when the Inflate function requires
a few more bytes.
2002-02-06 09:53 brun
* meta/src/TStreamerInfo.cxx:
In TStreamerInfo::BuildOld do not print a warning message when the type name
has changed, but the basic type is still the same
2002-02-05 23:51 brun
* base/: inc/TMath.h, src/TMath.cxx:
Add new Bessel functions and also the Struve function:
static Double_t BesselJ0(Double_t x); // Bessel function J0(x) for any real x
static Double_t BesselJ1(Double_t x); // Bessel function J1(x) for any real x
static Double_t BesselY0(Double_t x); // Bessel function Y0(x) for positive x
static Double_t BesselY1(Double_t x); // Bessel function Y1(x) for positive x
static Double_t Struve(Int_t n, Double_t x); // Struve functions of order 0 and 1
2002-02-05 18:04 brun
* tree/src/TBranchElement.cxx, treeplayer/src/TTreeFormula.cxx:
From Philippe:
This fix ensures that when receiving a 'name' with a duplicated
branch name in it, TTree::Draw wont crash.
Also fix TBrowser to properly draw the correct leaf even if the
branch name was copied inside the leaf names.
2002-02-05 17:45 brun
* graf/src/TGaxis.cxx:
Fix a side-effect of the new ticks/labels options on the position of the axis title.
2002-02-05 17:10 rdm
* base/src/TDSet.cxx:
in Add(TDSet*) make sure the added TDSet is specified for the same type.
2002-02-05 11:46 rdm
* base/inc/TTimeStamp.h:
add case for MacOS X.
2002-02-05 11:45 rdm
* configure:
test also for .dylib on MacOS X and better detection of missing SRP lib and
includes.
2002-02-05 09:31 brun
* meta/src/TDataMember.cxx:
Improve TDataMember::GetOffset to compute the offset for the normal case of a compiled class.
The previous version was operational only for interpreted classes.
The new function automatically calls TClass::BuildRealData and gets the
TRealData offset computed via ShowMembers.
2002-02-05 00:31 brun
* graf/src/TGaxis.cxx:
Several optimisations in TGaxis::PaintAxis.
Add support for the new TAxis options kTickPlus and kTickMinus
2002-02-05 00:27 brun
* hist/: inc/TAxis.h, src/TAxis.cxx:
Add new options in the TAxis enum:
kTickPlus = BIT(9),
kTickMinus = BIT(10)
Add new functions:
virtual const char *GetTicks() const;
virtual void SetTicks(Option_t *option="+"); // *MENU*
void TAxis::SetTicks(Option_t *option)
{
// set ticks orientation
// option = "+" ticks drawn on the "positive side" (default)
// option = "-" ticks drawn on the "negative side"
// option = "+-" ticks drawn on both sides
2002-02-05 00:23 brun
* histpainter/src/THistPainter.cxx:
In THistPainter::DistancetoPrimitive, take into account all the forms
(upper/lower case and mixture) for the option "same" when selecting
the axis.
2002-02-04 22:25 rdm
* base/inc/TDSet.h:
to be consistent change GetElementList() to GetListOfElements().
2002-02-04 22:22 rdm
* base/: inc/LinkDef2.h, inc/TDSet.h, src/TDSet.cxx:
more complete implementation of TDSet.
2002-02-04 22:21 rdm
* meta/src/TFunction.cxx:
usual problem with strstr() returning const char*.
2002-02-04 17:49 brun
* config/Makefile.linuxkcc:
Add the option --one_instantiation_per_object to CXXFLAGS and CINTCXXFLAGS
2002-02-04 09:21 brun
* meta/src/TFunction.cxx:
In function TFunction::CreateSignature add the missing " to the default
arguments of type char*.
2002-02-03 19:40 rdm
* net/src/TFTP.cxx, rootd/src/rootd.cxx:
don't check for free space on device when writing to /dev/null (to facilitate
performance tests).
2002-02-03 19:37 rdm
* base/src/TNamed.cxx:
slight reformatting of comment on rehashing in case name changes.
2002-02-03 19:34 rdm
* base/inc/TSysEvtHandler.h:
introduce kRead and kWrite constants to be used in the mask argument of
the TFileHandler.
2002-02-03 19:02 brun
* test/stress.cxx:
In stress9 remove the line deleting the tree.
2002-02-03 18:38 brun
* treeplayer/src/TTreePlayer.cxx:
Modify TTreePlayer::EntryLoop to take into account the Tree or TChain weight
2002-02-03 18:32 brun
* tree/: inc/TChain.h, src/TChain.cxx:
New functions GetWeight and SetWeight redefining the functions in TTree.
void TChain::SetWeight(Double_t w, Option_t *option)
{
// Set chain weight.
// The weight is used by TTree::Draw to automatically weight each
// selected entry in the resulting histogram.
// For example the equivalent of
// chain.Draw("x","w")
// is
// chain.SetWeight(w,"global");
// chain.Draw("x");
//
// By default the weight used will be the weight
// of each Tree in the TChain. However, one can force the individual
// weights to be ignored by specifying the option "global".
// In this case, the TChain global weight will be used for all Trees.
Double_t TChain::GetWeight() const
{
// return the chain weight.
// by default, the weight is the weight of the current Tree in the TChain.
// However, if the weight has been set in TChain::SetWeight with
// the option "global", each Tree will use the same weight stored
// in TChain::fWeight.
2002-02-03 18:30 brun
* tree/: inc/TTree.h, src/TTree.cxx:
Add new member:
Double_t fWeight;
Add new functions GetWeight and SetWeight.
void TTree::SetWeight(Double_t w, Option_t *)
// Set tree weight.
// The weight is used by TTree::Draw to automatically weight each
// selected entry in the resulting histogram.
// For example the equivalent of
// T.Draw("x","w")
// is
// T.SetWeight(w);
// T.Draw("x");
//
// This function is redefined by TChain::SetWeight. In case of a TChain,
// an option "global" may be specified to set the same weight
// for all Trees in the TChain instead of the default behaviour
// using the weights of each Tree in the chain. (see TChain::SetWeight)
2002-02-03 17:15 brun
* tree/src/TBranch.cxx:
Use the new function TBasket::SetBranch instead of setting the global gBranch.
Add new code in SetFile to apply the new file to all baskets.
2002-02-03 17:15 brun
* tree/: inc/TBasket.h, src/TBasket.cxx:
Add new inline function:
void SetBranch(TBranch *branch) {fBranch = branch;}
Replace use of global gBranch by member fBranch.
In TBasket::Streamer, set the buffer parent.
2002-02-03 17:14 brun
* test/stress.cxx:
Replace calls to:
Event *event = new Event();
by
Event *event = 0;
In stress13, do not delete tree to avoid a double delete problem.
2002-02-03 17:14 brun
* base/src/TRef.cxx, cont/src/TRefArray.cxx:
use GetSessionProcessID instead of GetProcessID(0).
2002-02-03 17:13 brun
* base/src/TFile.cxx:
Modify TFile::Close to call GetSessionProcessID.
2002-02-03 17:13 brun
* base/: inc/TProcessID.h, src/TProcessID.cxx:
Add new static function GetSessionProcessID return the current
session TProcessID.
Rewrite the function ReadProcessID in order to store the right pid
in the list of the files pids in case the pid is already existing
in other files.
2002-02-03 17:13 brun
* base/: inc/TBuffer.h, src/TBuffer.cxx:
Replace the union
union {
TExMap *fReadMap; //Map containing id,object references during reading
TExMap *fWriteMap; //Map containing object,id pairs during writing
};
by
TExMap *fMap; //Map containing object,id pairs for reading/ writing
The union was an unnecessary complication and also given problems
with rootcint when another pointer (eg fParent) was added to the class.
New constructors added:
TBuffer(EMode mode);
TBuffer(EMode mode, Int_t bufsiz);
TBuffer(EMode mode, Int_t bufsiz, void *buf, Bool_t adopt = kTRUE);
The Get/SetParent moved to the implementation file.
2002-02-03 00:00 rdm
* base/inc/LinkDef1.h:
export kInfo global to CINT.
2002-02-02 23:59 rdm
* tutorials/: spy.C, spyserv.C:
Two scripts that demo how to snoop objects from a server. The client "spy.C"
can snoop objects from a server process "spyserv.C".
To run this demo do the following:
- open two or more windows
- start root in all windows
- execute in the first window: .x spyserv.C (or spyserv.C++)
- execute in the other window(s): .x spy.C (or spy.C++)
- in the "spy" client windows click the "Connect" button and snoop
the histograms by clicking on the "hpx", "hpxpy" and "hprof"
buttons
2002-02-02 14:42 rdm
* base/inc/TBuffer.h:
make GetParent() const. Funny problem with CINT and location of fParent or
any other new datamember before the union.
2002-02-02 14:19 brun
* base/src/TBuffer.cxx:
Reset fParent in destructor.
2002-02-02 12:57 brun
* base/src/TRef.cxx, cont/src/TRefArray.cxx:
Replace gFile by TBuffer::GetParent. With this fix, TRef and TRefArray
read in a TChain should work.
2002-02-02 12:56 brun
* base/src/TAttAxis.cxx, base/src/TView.cxx,
g3d/src/TMarker3DBox.cxx, g3d/src/TShape.cxx,
graf/src/TPaveStats.cxx, hist/src/TH3.cxx, meta/src/TClass.cxx:
Replace gFile by the TBuffer::GetParent()
2002-02-02 12:54 brun
* base/inc/TKey.h, base/src/TKey.cxx, tree/src/TBasket.cxx,
tree/src/TBranch.cxx:
The key and basket constructors, set the TBuffer parent.
2002-02-02 12:52 brun
* base/: inc/TBuffer.h, src/TBuffer.cxx:
Add new member
TObject *fParent; //fParent points to the buffer owner (typically a TFile).
Add new functions
TObject *Getparent()
void SetParent(TObject *parent);
The fParent info will be used instead of gFile in all the places currently
referencing gFile and reading/writing from/to a TBuffer.
2002-02-02 11:09 brun
* base/src/TTimeStamp.cxx:
Remove a const specifier in the last argument of a constructor.
2002-02-01 15:15 rdm
* base/inc/TTimeStamp.h:
fix for Win32 (timespec is not defined in time.h).
2002-02-01 12:03 brun
* hist/src/: TH2.cxx, TH3.cxx:
Fix a bug in the KolmogorovTest functions.
The variable dfmax2 was not correctly computed.
2002-02-01 08:47 brun
* tree/src/TLeaf.cxx:
Correct wrong comments in TLeaf::GetLeafCounter (thanks Axel Naumann).
Comments should be:
// If leaf name has the forme var[nelem], where nelem is alphanumeric, then
// If nelem is a leaf name, return countval = 1 and the pointer to
// the leaf named nelem.
// If leaf name has the forme var[nelem], where nelem is a digit, then
// return countval = nelem and a null pointer.
// Otherwise return countval=0 and a null pointer.
/
2002-02-01 08:14 brun
* base/: inc/TFile.h, src/TFile.cxx:
TFile::Recover changed from void to Int_t.
The function returns the number of keys recovered.
If Recover returns 0 keys, then the file is declared Zombie by TFile::Open.
2002-02-01 08:12 brun
* tutorials/latex2.C:
Add a missing parenthesis in one expression.
2002-02-01 07:55 brun
* hist/src/TH1.cxx:
Fix in TH1::Copy. Take into account fgAddDirectory (thanks Andrei Gaponenko)
2002-01-31 20:07 rdm
* configure:
make libdir in check_library() unique so it does not clash with the
global libdir. Thanks Damir.
2002-01-31 15:10 rdm
* base/src/TString.cxx:
cosmetic comment change.
2002-01-31 15:09 rdm
* README/CREDITS, base/Module.mk, base/inc/LinkDef3.h,
base/inc/TTimeStamp.h, base/src/TTimeStamp.cxx:
new TTimeStamp class by Robert Hatcher. This class provides time stamp
functionality with nano second precision and in a timezone independent
format.
2002-01-31 08:27 brun
* html/src/THtml.cxx:
The following patch from Axel Naumann
* The bug reported and fixed by Ruben was due to a Log10 being not protected
from negative arguments. Ruben, thanks for finding that bug!
* without libNew
--- private etc method and data member sections were printed even if the
class doesn't have such members (test was e.g. on memberArray[j * ndata]
instead num[j])
--- include files ended on uninitialized characters
* templated types were not printed correctly (no protection of <,>,' ')
* Classes were referenced even though they don't have an implementation
known to CInt (fixed by returning 0 in case of an unknown implementation
file): This will create some "unknown class G__whatever" - but at least they
are not linked in anymore. And ostream etc are now listed in the list of
types and linked correctly instead of creating a link to
"basic_ostream<char...>.html".
2002-01-30 12:02 rdm
* base/src/TBrowser.cxx:
cleanup some formatting (coding conventions).
2002-01-30 11:59 rdm
* config/root-config.in:
fix include/RVersion.h to ${incdir}/RVersion.h.
2002-01-30 08:11 brun
* gpad/src/TPad.cxx:
Add a comment in TPad::SetEditable to indicate that one cannot add a new object
to the pad when the pad is declared non-editable.
2002-01-30 08:00 brun
* matrix/src/TMatrixD.cxx:
Fix a problem in TMatriD::Streamer when reading objects created before version 3.0
2002-01-30 07:48 brun
* winnt/src/TWinNTSystem.cxx:
From Philippe:
This repairs ACLiC for windows which stopped working after the lastest
modification made in TRegexp.
2002-01-29 18:33 brun
* treeplayer/src/TTreePlayer.cxx:
Modify TTreePlayer::TakeEstimate to not display the stats box in case
TTree->Draw(y:x>>h(10,0,1,10,0,1)")
2002-01-29 18:23 brun
* base/src/TSystem.cxx:
Patch from Philippe that should protect ACLiC from using weird characters in its filenames....
2002-01-29 08:49 brun
* meta/src/TStreamerInfo.cxx:
Fix a typo in error message
2002-01-29 08:44 brun
* meta/src/TClass.cxx:
Fix from Philippe .
On Windows, the order in which the dictionary global
objects and the TROOT global object are the inverse as that of Linux (this we
have not control over it).
Also, The previous implementation of BuildRealData had a call to
'InheritsFrom(TObject::Class());' which besides giving its result had the
side effect of loading the currently defined typedefs if the class had not
been loaded yet. Without this side effect, the typedef used in the class
were not present in the ROOT system ...
2002-01-29 08:32 brun
* base/src/TBrowser.cxx:
Initialize members in all constructors
2002-01-29 08:18 brun
* tutorials/timeonaxis.C:
Update URL
2002-01-28 18:33 rdm
* base/src/TROOT.cxx:
properly initialize err in LoadClass(). Has no influence on StreamerInfo
problem though.
2002-01-28 18:01 rdm
* base/src/TFile.cxx:
correct some comments about the POSIX calls used in TFile.
2002-01-28 12:51 brun
* graf/src/TMultiGraph.cxx:
Fix a problem in TMultiGraph::Paint following the unzoom of the Y axis
when the Y axis title was non null
2002-01-27 18:44 rdm
* proofd/src/proofd.cxx, rootd/src/rootd.cxx:
don't redefine initgroups on AIX, is now in grp.h. Check if this is also
the case on AIX 4.3. If not I need a OS specific define to differentiate
between the two.
2002-01-27 18:23 rdm
* rfio/: inc/TRFIOFile.h, src/TRFIOFile.cxx:
change Text_t to char.
2002-01-27 18:22 rdm
* base/src/TPluginManager.cxx:
small fix in constness.
2002-01-27 18:21 rdm
* dcache/Module.mk, Makefile, configure, config/Makefile.in,
config/rootrc.in, dcache/inc/LinkDef.h, dcache/inc/TDCacheFile.h,
dcache/src/TDCacheFile.cxx:
new module dcache implementing class TDCacheFile which implements a TFile
interface to the DESY dCache mass storage system. Code by Grzegorz Mazur
<mazur@mail.desy.de>. For more on dCache see http://www-dcache.desy.de/.
2002-01-27 17:49 brun
* base/src/TROOT.cxx, cont/src/TClassTable.cxx,
unix/src/TUnixSystem.cxx, x11/src/GX11Gui.cxx, x11/src/TGX11.cxx:
Remove non-necessary declarations of static functions to remove warnings on aCC
of the style:
Warning 495: "base/src/TROOT.cxx", line 159 # The linkage directive is ignored for an object or function declared static.
static void CleanUpROOTAtExit();
2002-01-27 17:28 brun
* base/src/TPluginManager.cxx:
Fix the usual problem with strstr on Solaris. A statement like
char *s = strstr(...
is not legal, strstr returning a const char*. One must cast:
char *s = (char*)strstr(...
2002-01-27 16:55 rdm
* base/src/TSystem.cxx, unix/src/TUnixSystem.cxx,
winnt/src/TWinNTSystem.cxx:
extended some method descriptions.
2002-01-27 16:53 rdm
* base/: inc/TPluginManager.h, inc/TROOT.h, src/TPluginManager.cxx,
src/TROOT.cxx:
added new default argument check=kFALSE to TROOT::LoadClass(). If check
is true LoadClass() only checks for the existence and readability of the
library and does not attempt to load the library. The plugin manager
uses this new functionality in its Print() method to show which plugins
are available.
2002-01-27 14:57 rdm
* base/inc/LinkDef2.h, base/inc/TROOT.h, base/src/TFile.cxx,
base/src/TROOT.cxx, config/rootrc.in, net/src/TSQLServer.cxx:
use the new TPluginManager. Make sure to rerun ./configure to update
etc/system.rootrc. Call gROOT->GetPluginManager()->Print() to see which
handlers have been defined.
2002-01-27 14:53 rdm
* base/: inc/TPluginManager.h, src/TPluginManager.cxx:
This class implements a plugin library manager. It keeps track of
a list of plugin handlers. A plugin handler knows which plugin
library to load to get a specific class that is used to extend the
functionality of a specific base class. For example, to extend the
base class TFile to be able to read RFIO files one needs to load
the plugin library libRFIO.so which defines the TRFIOFile class.
This loading should be triggered when a given URI contains a
regular expression defined by the handler. Handlers can be defined
for example as resources in the .rootrc file, e.g.:
Plugin.TFile: ^rfio: TRFIOFile RFIO
Plugin.TSQLServer: ^mysql: TMySQLServer MySQL
+Plugin.TSQLServer: ^pgsql: TPgSQLServer PgSQL
Plugin handlers can also be registered at run time, e.g.:
gROOT->GetPluginManager()->AddHandler("TSQLServer", "^sapdb:",
"TSapDBServer", "SapDB");
A list of currently defined handlers can be printed using:
gROOT->GetPluginManager()->Print();
The use of the plugin library manager removes all textual references
to hard-coded class and library names and the resulting dependencies
in the base classes. The plugin manager is used to extend a.o.
TFile, TSQLServer, TGrid, etc. functionality.
2002-01-27 14:41 rdm
* base/: inc/TEnv.h, src/TEnv.cxx:
Large cleanup of TEnv, removal of some very old redundant code, update
of class description and new feature of optional + in front of the resource
name to allow the concatenation of resource values for the same resource.
2002-01-27 14:39 rdm
* base/src/TRegexp.cxx:
add special case for Win32 pathnames in MakeWildcard().
2002-01-26 23:12 brun
* meta/src/TStreamerInfo.cxx:
In TStreamerInfo::BuildOLd, always force data members of a fake class to be aligned
on a 4 bytes boundary (32 bits machines) or 8 bytes on 64 bits machines.
With this fix, DrawTest.sh works correctly on alpha.
2002-01-26 22:07 brun
* treeplayer/src/TTreePlayer.cxx:
In TTreePlayer::DrawSelect, simplify the logic when the binning info
is specified in the query and add support for the limits as indicated
in the function comments.
T.Draw("px>>hpx(50,-2,3)")
is again working after this change.
2002-01-26 11:08 brun
* gpad/src/TCanvas.cxx:
cleanup comments
2002-01-26 11:06 brun
* graf/src/TGaxis.cxx:
Remove static variables
2002-01-26 11:02 brun
* hist/src/TH1.cxx:
Remove several static variables.
2002-01-26 10:36 brun
* graf/src/TGraph.cxx:
Allocate workspace dynamically instead of the static arrays xwork,ywork,xworl,yworkl.
Remove several static variables in the code.
Remove limitation of NPMAX points.
2002-01-25 19:24 brun
* base/src/TKey.cxx:
In TKey::ReadObj, change the format %x to %lx (required on alpha)
2002-01-25 19:02 rdm
* cint/src/libstrm.cxx:
comment out is_open() in streambuf.
2002-01-25 18:13 rdm
* cint/: inc/G__ci.h, include/bool.h
lib/stream/fstrm.h, lib/win32api/winfunc.h, src/Apiif.cxx,
src/auxu.c, src/cast.c, src/decl.c, src/ifunc.c, src/libstrm.cxx,
src/loadfile.c, src/macro.c, src/parse.c, src/pcode.c, src/quote.c,
src/sizeof.c, src/var.c:
import of CINT 5.15.28.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
2002-01-25 17:40 brun
* base/src/TDirectory.cxx:
Add the following comments in TDirectory::Get
//
// VERY IMPORTANT NOTE:
// In case the class of this object derives from TObject but not
// as a first inheritance, one must cast the return value twice.
// Example1: Normal case:
// class MyClass : public TObject, public AnotherClass
// then on return, one can do:
// MyClass *obj = (MyClass*)directory->Get("some object of MyClass");
//
// Example2: Special case:
// class MyClass : public AnotherClass, public TObject
// then on return, one must do:
// MyClass *obj = (MyClass*)((void*)directory->Get("some object of MyClass");
//
2002-01-25 17:39 brun
* base/src/TKey.cxx:
Modify TKey::ReadObj to support the following cases with multiple inheritance:
class MyClass : public TObject, public AnotherClass
class MyClass : public AnotherClass, public TObject
Replace the calls like:
obj->Streamer(*fBufferRef);
by
gInterpreter->Calc(cmd)
The new version should be slightly slower. However, the impact on stress
is not visible.
Add the following comments:
// NOTE:
// In case the class of this object derives from TObject but not
// as a first inheritance, one must cast the return value twice.
// Example1: Normal case:
// class MyClass : public TObject, public AnotherClass
// then on return, one can do:
// MyClass *obj = (MyClass*)key->ReadObj();
//
// Example2: Special case:
// class MyClass : public AnotherClass, public TObject
// then on return, one must do:
// MyClass *obj = (MyClass*)((void*)key->ReadObj());
//
2002-01-25 17:34 brun
* meta/src/TClass.cxx:
Modify TClass::BuildRealData to support the following two cases of multiple
inheritance:
class MyClass : public TObject, public AnotherClass
class MyClass : public AnotherClass, public TObject
Always call ShowMembers via the interpreter. A direct call like
realDataObject->ShowMembers(brd, parent);
will not work if the class derives from TObject but not as primary
inheritance.
2002-01-25 12:35 rdm
* config/: Makefile.hpuxacc, Makefile.hpuxia64acc, root-config.in:
remove a number of warnings from the aCC suppressed warnings list that
are not relevant anymore since the cause of the warnings has been removed
from the ROOT code.
2002-01-25 12:34 brun
* utils/src/rootcint.cxx:
Fix a bug in WriteAutoStreamer preventing the code for STL containers
to be generated.
2002-01-25 12:21 rdm
* base/src/TEnv.cxx:
one more strstream[.h] fixup.
2002-01-25 10:25 brun
* meta/src/TStreamerInfo.cxx:
In TStreamerInfo::Build add support for base classes that are STL containers.
The following example is now OK:
class MyClassList : public TObject, public list<MyClass> {
Note that the declaration;
class MyClassList : public list<MyClass>, public TObject {
will not work. TObject or a class deriving from TObject must be declared first.
The reason is that one cast cast an object MyClasslist to a TObject.
2002-01-25 00:31 rdm
* base/src/TColor.cxx:
correct comments in GetColor().
2002-01-24 12:39 rdm
* base/inc/IOSFwd.h, base/inc/IOStream.h, base/inc/RConfig.h,
base/inc/Riosfwd.h, base/inc/Riostream.h, base/inc/TAttAxis.h,
base/inc/TObject.h, base/inc/TString.h, base/src/Stringio.cxx,
base/src/TApplication.cxx, base/src/TAttAxis.cxx,
base/src/TAttFill.cxx, base/src/TAttLine.cxx,
base/src/TAttMarker.cxx, base/src/TAttText.cxx,
base/src/TColor.cxx, base/src/TDirectory.cxx, base/src/TExec.cxx,
base/src/TFile.cxx, base/src/TFolder.cxx, base/src/TKey.cxx,
base/src/TNamed.cxx, base/src/TObject.cxx,
base/src/TQConnection.cxx, base/src/TQObject.cxx,
base/src/TROOT.cxx, base/src/TSystem.cxx, base/src/TTask.cxx,
eg/src/TGenerator.cxx, g3d/src/TAxis3D.cxx, g3d/src/THelix.cxx,
g3d/src/TMarker3DBox.cxx, g3d/src/TNode.cxx,
g3d/src/TPolyLine3D.cxx, g3d/src/TPolyMarker3D.cxx,
g3d/src/TXTRU.cxx, gl/src/TWin32GLViewerImp.cxx,
gpad/src/TButton.cxx, gpad/src/TCanvas.cxx,
gpad/src/TClassTree.cxx, gpad/src/TGroupButton.cxx,
gpad/src/TPad.cxx, gpad/src/TPaveClass.cxx, gpad/src/TSlider.cxx,
gpad/src/TSliderBox.cxx, graf/inc/TCurlyLine.h, graf/inc/TLatex.h,
graf/src/TArc.cxx, graf/src/TArrow.cxx, graf/src/TBox.cxx,
graf/src/TCurlyArc.cxx, graf/src/TCurlyLine.cxx,
graf/src/TCutG.cxx, graf/src/TDiamond.cxx, graf/src/TEllipse.cxx,
graf/src/TFrame.cxx, graf/src/TGaxis.cxx, graf/src/TGraph.cxx,
graf/src/TGraphAsymmErrors.cxx, graf/src/TGraphErrors.cxx,
graf/src/TGraphSmooth.cxx, graf/src/TLatex.cxx,
graf/src/TLegend.cxx, graf/src/TLegendEntry.cxx,
graf/src/TLine.cxx, graf/src/TMarker.cxx, graf/src/TMultiGraph.cxx,
graf/src/TPave.cxx, graf/src/TPaveLabel.cxx,
graf/src/TPaveStats.cxx, graf/src/TPaveText.cxx,
graf/src/TPavesText.cxx, graf/src/TPolyLine.cxx,
graf/src/TText.cxx, graf/src/TWbox.cxx, hist/src/TAxis.cxx,
hist/src/TF1.cxx, hist/src/TF2.cxx, hist/src/TFormula.cxx,
hist/src/TH1.cxx, hist/src/TH1K.cxx, hist/src/THStack.cxx,
hist/src/TMultiDimFit.cxx, hist/src/TPolyMarker.cxx,
hist/src/TPrincipal.cxx, hist/src/TProfile.cxx,
histpainter/src/THistPainter.cxx, html/src/THtml.cxx,
main/src/h2root.cxx, meta/src/TClass.cxx,
postscript/src/TPostScript.cxx, rint/src/TTabCom.cxx,
star/inc/TTable.h, star/src/TDataSet.cxx,
star/src/TDataSetIter.cxx, star/src/TPoints3D.cxx,
star/src/TPointsArray3D.cxx, star/src/TTable.cxx,
star/src/TVolume.cxx, star/src/TVolumePosition.cxx,
star/src/TVolumeView.cxx, test/MainEvent.cxx, test/TestVectors.cxx,
test/guiviewer.cxx, test/tcollbm.cxx, test/tcollex.cxx,
test/tstring.cxx, test/vlazy.cxx, test/vmatrix.cxx,
test/vvector.cxx, treeplayer/src/TTreePlayer.cxx,
treeviewer/src/TPaveVar.cxx, treeviewer/src/TTVSession.cxx,
treeviewer/src/TTreeViewer.cxx, tutorials/Quad.cxx:
rename IOSFwd.h and IOStream.h to Riosfwd.h and Riostream.h. The change
is necessary because on Windows which is case insensitive IOStream.h
hides the real iostream.h.
2002-01-24 11:49 brun
* meta/src/TStreamerElement.cxx:
Add code in TStreamerBase::ReadBuffer and WriteBuffer to accept base classes
for which no Streamer is available (do nothing case).
2002-01-24 10:54 brun
* tree/src/TTree.cxx:
Modify TTree::SetDirectory to also call TBranch::SetFile
2002-01-24 10:21 brun
* tutorials/dirs.C:
Extend the tutorial dirs.C to show how to save directory and histogram pointers.
Add a loop to navigate in the directory structure and fill the histograms.
2002-01-24 08:47 brun
* utils/src/rootcint.cxx:
Fix from Philippe:
It is a workaroung a know bug in the xxx Microsoft compiler.
It should be fixed by microsoft .... but in the meantime it
makes the life of users of namespace on windows a little
bit easier (actually, without it you can not use namespace :( ).
2002-01-23 23:48 brun
* base/src/TMath.cxx:
Fix a precision problem in TMath::Prob.
The Gaussian approximation cannot be used for values of the q parameter
less than 5. One must use the Gamma function instead.
2002-01-23 18:52 rdm
* base/inc/TAttAxis.h, base/inc/TObject.h, base/inc/TString.h,
base/src/Stringio.cxx, base/src/TApplication.cxx,
base/src/TAttAxis.cxx, base/src/TAttFill.cxx,
base/src/TAttLine.cxx, base/src/TAttMarker.cxx,
base/src/TAttText.cxx, base/src/TColor.cxx,
base/src/TDirectory.cxx, base/src/TExec.cxx, base/src/TFile.cxx,
base/src/TFolder.cxx, base/src/TKey.cxx, base/src/TNamed.cxx,
base/src/TObject.cxx, base/src/TQConnection.cxx,
base/src/TQObject.cxx, base/src/TROOT.cxx, base/src/TSystem.cxx,
base/src/TTask.cxx, eg/src/TDatabasePDG.cxx, eg/src/TGenerator.cxx,
g3d/src/TAxis3D.cxx, g3d/src/THelix.cxx, g3d/src/TMarker3DBox.cxx,
g3d/src/TNode.cxx, g3d/src/TPolyLine3D.cxx,
g3d/src/TPolyMarker3D.cxx, g3d/src/TXTRU.cxx,
gl/src/TWin32GLViewerImp.cxx, gpad/src/TButton.cxx,
gpad/src/TCanvas.cxx, gpad/src/TClassTree.cxx,
gpad/src/TGroupButton.cxx, gpad/src/TPad.cxx,
gpad/src/TPaveClass.cxx, gpad/src/TSlider.cxx,
gpad/src/TSliderBox.cxx, graf/inc/TCurlyLine.h, graf/inc/TLatex.h,
graf/src/TArc.cxx, graf/src/TArrow.cxx, graf/src/TBox.cxx,
graf/src/TCurlyArc.cxx, graf/src/TCurlyLine.cxx,
graf/src/TCutG.cxx, graf/src/TDiamond.cxx, graf/src/TEllipse.cxx,
graf/src/TFrame.cxx, graf/src/TGaxis.cxx, graf/src/TGraph.cxx,
graf/src/TGraphAsymmErrors.cxx, graf/src/TGraphErrors.cxx,
graf/src/TGraphSmooth.cxx, graf/src/TLatex.cxx,
graf/src/TLegend.cxx, graf/src/TLegendEntry.cxx,
graf/src/TLine.cxx, graf/src/TMarker.cxx, graf/src/TMultiGraph.cxx,
graf/src/TPave.cxx, graf/src/TPaveLabel.cxx,
graf/src/TPaveStats.cxx, graf/src/TPaveText.cxx,
graf/src/TPavesText.cxx, graf/src/TPolyLine.cxx,
graf/src/TText.cxx, graf/src/TWbox.cxx, hist/src/TAxis.cxx,
hist/src/TF1.cxx, hist/src/TF2.cxx, hist/src/TFormula.cxx,
hist/src/TH1.cxx, hist/src/TH1K.cxx, hist/src/THStack.cxx,
hist/src/TMultiDimFit.cxx, hist/src/TPolyMarker.cxx,
hist/src/TPrincipal.cxx, hist/src/TProfile.cxx,
histpainter/src/THistPainter.cxx, html/src/THtml.cxx,
main/src/h2root.cxx, meta/src/TClass.cxx,
postscript/src/TPostScript.cxx, rint/src/TTabCom.cxx,
star/inc/TTable.h, star/src/TDataSet.cxx,
star/src/TDataSetIter.cxx, star/src/TPoints3D.cxx,
star/src/TPointsArray3D.cxx, star/src/TTable.cxx,
star/src/TVolume.cxx, star/src/TVolumePosition.cxx,
star/src/TVolumeView.cxx, test/MainEvent.cxx, test/TestVectors.cxx,
test/guiviewer.cxx, test/tcollbm.cxx, test/tcollex.cxx,
test/tstring.cxx, test/vlazy.cxx, test/vmatrix.cxx,
test/vvector.cxx, treeplayer/src/TTreePlayer.cxx,
treeviewer/src/TPaveVar.cxx, treeviewer/src/TTVSession.cxx,
treeviewer/src/TTreeViewer.cxx, tutorials/Quad.cxx:
use IOSFwd.h in headers instead of <iosfwd> or many other ifdef'ed variant
and IOStream.h in the source instead of <iostream[.h]>, <fstream[.h]> and
<iomanip[.h]>.
2002-01-23 18:46 rdm
* base/inc/: IOSFwd.h, IOStream.h:
wrappers around iostream, fstream and iomanip. They make sure the right
include for the right system are used (either <iostream.h> or <iostream>,
etc.). For example the aCC compiler prints a warning whenever it sees
a file ending in io****.h mentioning that is is obsolete.
2002-01-23 16:48 rdm
* base/inc/TDirectory.h, base/inc/TFolder.h, base/inc/TTask.h,
gui/inc/TGListBox.h, gui/src/TGButtonGroup.cxx, gui/src/TGMenu.cxx,
gui/src/TGMsgBox.cxx, test/Tetris.cxx, tree/inc/TEventList.h,
treeviewer/src/TTVLVContainer.cxx:
add TList.h where needed (so these classes compile fine if we decide to
remove TList.h from TNamed.h).
2002-01-23 10:34 brun
* histpainter/src/THistPainter.cxx:
In THistPainter::PaintText use gStyle->GetPaintTextFormat instead
of the fix format "g"
2002-01-23 10:33 brun
* base/: inc/TStyle.h, src/TStyle.cxx:
Implement new member
TString fPaintTextFormat; //to be used by TH2::PaintText
with the corresponding getter/setter
const char *GetPaintTextFormat();
void SetPaintTextFormat(const char *format="g")
2002-01-23 09:38 brun
* tree/: inc/TBranch.h, src/TBranch.cxx, src/TBranchClones.cxx,
src/TBranchElement.cxx, src/TBranchObject.cxx:
TBranch::SetBasketSize moved to the implementation file. The function checks
that the specified basket size is greater than fEntryOffsetLen.
The functions SetBasketSize in all derived classes call TBranch::SetBasketSize
to get the same protection.
2002-01-22 19:17 rdm
* clib/src/: attach.c, keys.c:
two more changes for the GNU/HURD port.
2002-01-22 19:16 rdm
* config/: Makefile.alphacxx6, Makefile.alphaegcs,
Makefile.alphakcc:
custom INSTALL and INSTALLDATA commands.
2002-01-22 11:53 rdm
* cint/iosenum/iosenum.hurddeb, configure, base/inc/RConfig.h,
base/src/TMapFile.cxx, build/package/lib/makedebdir.sh,
build/package/lib/makerpmspec.sh, cint/Module.mk, config/ARCHS,
config/Makefile.hurddeb, config/root-config.in,
proofd/src/daemon.cxx, proofd/src/error.cxx, proofd/src/net.cxx,
proofd/src/proofd.cxx, README/CREDITS, rootd/src/daemon.cxx,
rootd/src/error.cxx, rootd/src/net.cxx, rootd/src/netpar.cxx,
rootd/src/rootd.cxx, test/Event.h, test/MainEvent.cxx,
test/Makefile.in, unix/src/TUnixSystem.cxx:
port to Debian distribution of GNU/Hurd by Christian Holm.
2002-01-21 20:17 rdm
* config/root-config.in:
add -DR__ACC flag for HPUX aCC compiler.
2002-01-21 19:09 rdm
* rootx/inc/: rootlogo_xbm.h, rootlogo_xpm.h:
Version 3.03 of the logos.
2002-01-21 19:08 rdm
* treeviewer/src/HelpTextTV.cxx:
remove more trailing blanks so file compiles on Win32.
2002-01-21 17:31 brun
* meta/src/TStreamerInfo.cxx:
Do not call anymore IgnoreTObjectStreamer for TVector3.
Many users want to put TVector3 or TLorentzVector in TRef/TRefArray.
The old behaviour may be obtained by explicitly calling
TVector3::Class()->IgnoreTObjectStreamer();
TLorentzVector::Class()->IgnoreTObjectStreamer();
2002-01-21 17:29 brun
* physics/: inc/TLorentzVector.h, src/TLorentzVector.cxx:
Modify TLorentzVector::Streamer to use automatic schema evolution.
The class version is incremented to 4.
2002-01-21 15:01 brun
* postscript/src/TPostScript.cxx:
Protect the Init function in case gPad=0
2002-01-21 12:04 brun
* treeviewer/src/HelpTextTV.cxx:
Activate the help file under win32gdk
2002-01-21 08:27 brun
* build/unix/makestatic.sh:
Add Venus to the list of exluded packages
2002-01-21 02:28 rdm
* README/README:
mention to include $ROOTSYS/man in the MANPATH environment variable.
2002-01-21 02:26 rdm
* build/unix/makestatic.sh:
correct some comments in the script.
2002-01-21 02:23 rdm
* Makefile, build/unix/makestatic.sh:
add new target "static" to the Makefile, "make static" will generate via
the "build/unix/makestatic.sh" script an archive library "lib/libRoot.a"
and a statically linked executable "bin/roota".
2002-01-20 18:48 rdm
* base/src/TRegexp.cxx:
in MakeWildcard() added special treatment for "/", i.e. "*" is preceded by
all characters except "/" (was all characters including "/"). This change
allows the easy matching of pathnames, e.g. "*.root" will match "aap.root",
but not "pipo/aap.root", the latter can be matched by "pipo/*.root" or
by "*/*.root". Mod proposed by Victor Perev. for STAR.
2002-01-20 15:23 rdm
* build/misc/acinclude.m4, build/misc/root.m4,
build/package/common/README,
build/package/common/libroot-dev.files,
build/package/common/libroot.conffiles,
build/package/common/libroot.files,
build/package/common/libroot.postinst,
build/package/common/libroot.shlibs,
build/package/common/root-bin.conffiles,
build/package/common/root-bin.files,
build/package/common/root-cint.files,
build/package/common/root-cint.postinst,
build/package/common/root-cint.postrm,
build/package/common/root-cint.shlibs,
build/package/common/root-daemon.files,
build/package/common/root-doc.dscr,
build/package/common/root-doc.files,
build/package/common/root-gl.files,
build/package/common/root-gl.postinst,
build/package/common/root-gl.shlibs,
build/package/common/root-mysql.files,
build/package/common/root-mysql.postinst,
build/package/common/root-mysql.shlibs,
build/package/common/root-pgsql.dscr,
build/package/common/root-pgsql.files,
build/package/common/root-pgsql.postinst,
build/package/common/root-pgsql.shlibs,
build/package/common/root-pythia.files,
build/package/common/root-pythia.postinst,
build/package/common/root-pythia.shlibs,
build/package/common/root-sapdb.dscr,
build/package/common/root-sapdb.files,
build/package/common/root-sapdb.postinst,
build/package/common/root-sapdb.shlibs,
build/package/common/root-shift.files,
build/package/common/root-shift.postinst,
build/package/common/root-shift.shlibs,
build/package/common/root-srp.dscr,
build/package/common/root-srp.files,
build/package/common/root-srp.postinst,
build/package/common/root-srp.shlibs,
build/package/common/root-star.files,
build/package/common/root-star.postinst,
build/package/common/root-star.shlibs,
build/package/common/root-ttf.files,
build/package/common/root-ttf.postinst,
build/package/common/root-ttf.shlibs,
build/package/common/root-venus.dscr,
build/package/common/root-venus.files,
build/package/common/root-venus.postinst,
build/package/common/root-venus.shlibs,
build/package/common/root-zebra.files,
build/package/common/spec.tmp, Makefile, configure, README/INSTALL,
build/package/debian/changelog,
build/package/debian/head.control.in,
build/package/debian/libroot-dev.control.in,
build/package/debian/libroot.control.in,
build/package/debian/root-bin.menu,
build/package/debian/root-cint.postinst.in,
build/package/debian/root-cint.prerm,
build/package/debian/root-daemon.postinst,
build/package/debian/root-daemon.preinst,
build/package/debian/root-doc.control.in,
build/package/debian/root-pgsql.control.in,
build/package/debian/root-pgsql.postinst.in,
build/package/debian/root-srp.control.in,
build/package/debian/root-venus.control.in,
build/package/debian/root-venus.postinst.in,
build/package/debian/rules.in,
build/package/debian/task-root.control.in,
build/package/lib/common.sh, build/package/lib/makeconfigure.sh,
build/package/lib/makedebchangelog.sh,
build/package/lib/makedebclean.sh,
build/package/lib/makedebconffiles.sh,
build/package/lib/makedebcontrol.sh,
build/package/lib/makedebcopyright.sh,
build/package/lib/makedebdir.sh, build/package/lib/makedebdocs.sh,
build/package/lib/makedebexamples.sh,
build/package/lib/makedebfiles.sh,
build/package/lib/makedebrules.sh, build/package/lib/makedebscr.sh,
build/package/lib/makedebshlocal.sh,
build/package/lib/makerpmclean.sh,
build/package/lib/makerpmfiles.sh,
build/package/lib/makerpmspec.sh,
build/package/lib/makerpmspecs.sh, build/package/rpm/README.Redhat,
build/package/rpm/head.spec.in,
build/package/rpm/root-daemon.spec.in,
build/package/rpm/root-doc.spec.in,
build/package/rpm/root-pgsql.spec.in,
build/package/rpm/root-srp.spec.in,
build/package/rpm/root-venus.spec.in,
build/package/rpm/tail.spec.in, icons/deb_s.xpm, icons/deb_t.xpm,
icons/rpm_s.xpm, icons/rpm_t.xpm, man/man1/memprobe.1,
man/man1/root-config.1, base/src/TUUID.cxx, config/ARCHS,
config/Makefile.aix, config/Makefile.aix5, config/Makefile.aixegcs,
config/Makefile.alphacxx6, config/Makefile.alphaegcs,
config/Makefile.alphakcc, config/Makefile.freebsd,
config/Makefile.freebsd4, config/Makefile.hpux,
config/Makefile.hpuxacc, config/Makefile.hpuxegcs,
config/Makefile.hpuxia64acc, config/Makefile.in,
config/Makefile.linux, config/Makefile.linuxalphaegcs,
config/Makefile.linuxarm, config/Makefile.linuxdeb,
config/Makefile.linuxdeb2, config/Makefile.linuxdeb2ppc,
config/Makefile.linuxia64ecc, config/Makefile.linuxia64gcc,
config/Makefile.linuxia64sgi, config/Makefile.linuxkcc,
config/Makefile.linuxpgcc, config/Makefile.linuxppcegcs,
config/Makefile.linuxrh42, config/Makefile.linuxrh51,
config/Makefile.linuxsuse6, config/Makefile.lynxos,
config/Makefile.macosx, config/Makefile.mklinux,
config/Makefile.sgicc, config/Makefile.sgiegcs,
config/Makefile.sgikcc, config/Makefile.sgin32egcs,
config/Makefile.solaris, config/Makefile.solarisCC5,
config/Makefile.solarisegcs, config/Makefile.solarisgcc,
config/Makefile.solariskcc, config/Makefile.win32,
config/Makefile.win32gdk, config/mimes.unix.in,
config/root-config.in, proofd/src/error.cxx, proofd/src/proofd.cxx,
rootd/Module.mk, rootd/src/error.cxx, rootd/src/rootd.cxx,
srputils/Module.mk, unix/src/TUnixSystem.cxx:
Mega patch by Christian Holm concerning the configure, build and
Debian and RedHat packaging scripts. The configure script has been
rationalized (introduction of two shell functions to find package
headers and libraries). Extensive update of the INSTALL writeup,
including description of all new packages (SapDB, PgSql, etc.).
More options to the root-config script. Man page for memprobe.
Big overhaul of the Debian and RedHat packaging scripts, supporting
the new libraries.
2002-01-20 12:47 brun
* g3d/inc/TPolyMarker3D.h:
Add forward declaration of TCollection
2002-01-20 11:25 brun
* treeplayer/src/TTreePlayer.cxx:
In TTreePlayer::TakeAction and TakeEstimate, use the new function SetPoint
from TPolyMarker or TPolyMarker3D instead of filling the array directly.
SetPoint takes care of setting the variable fLastPoint automatically.
2002-01-20 11:22 brun
* tree/: inc/TEventList.h, src/TEventList.cxx:
Add new function
Int_t Merge(TCollection *list)
to merge the TEventList objects in the collection.
2002-01-20 11:21 brun
* hist/: inc/TH1.h, inc/TH2.h, inc/TH3.h, inc/TProfile.h,
inc/TProfile2D.h, src/TH1.cxx, src/TH2.cxx, src/TH3.cxx,
src/TProfile.cxx, src/TProfile2D.cxx:
Add new function
Int_t Merge(TCollection *list)
All classes created by TTreePlayer::DrawSelect have now a Merge function.
This function will be called by the PROOF system currently in development
to merge the list of objects generated by each slave processor on
the master server.
In case of histograms (1,2,3-D, profiles) Merge computes the min/max for
the x, y or z axis, the new number of bins, if necessary. iT add bin contents,
errors and statistics.
The function returns the merged number of entries if the merge is
successfull, -1 otherwise.
In case of polymarkers (2 or 3-d), Merge adds the list of markers in
the collection to the current object.
An example to merge a list of histograms with different binning, but
having a lowest common denominator bin size is shown below:
void atest() {
TH1F *h1 = new TH1F("h1","h1",110,-110,0);
TH1F *h2 = new TH1F("h2","h2",220,0,110);
TH1F *h3 = new TH1F("h3","h3",330,-55,55);
TRandom r;
for (Int_t i=0;i<10000;i++) {
h1->Fill(r.Gaus(-55,10));
h2->Fill(r.Gaus(55,10));
h3->Fill(r.Gaus(0,10));
}
TList *list = new TList;
list->Add(h1);
list->Add(h2);
list->Add(h3);
TH1F *h = (TH1F*)h1->Clone("h");
h->Reset();
h.Merge(list);
h->Draw();
2002-01-20 11:11 brun
* hist/: inc/TPolyMarker.h, src/TPolyMarker.cxx:
Add new data member fLastPoint.
Add the following new functions:
virtual Int_t GetLastPoint() const { return fLastPoint;}
virtual Int_t Merge(TCollection *list);
virtual Int_t SetNextPoint(Double_t x, Double_t y); // *MENU*
virtual Int_t Size() const {return fLastPoint+1;}
2002-01-20 11:06 brun
* graf/: inc/TPolyLine.h, src/TPolyLine.cxx:
Add new data member fLastPoint.
Add the following new functions:
virtual Int_t GetLastPoint() const { return fLastPoint;}
virtual Int_t Merge(TCollection *list);
virtual Int_t SetNextPoint(Double_t x, Double_t y); // *MENU*
virtual void SetPolyLine(Int_t n);
virtual void SetPolyLine(Int_t n, Float_t *x, Float_t *y,
Option_t *option="");
virtual void SetPolyLine(Int_t n, Double_t *x, Double_t *y3,
Option_t *option="");
virtual Int_t Size() const {return fLastPoint+1;}
2002-01-20 11:02 brun
* g3d/: inc/TPolyLine3D.h, inc/TPolyMarker3D.h,
src/TPolyLine3D.cxx, src/TPolyMarker3D.cxx:
Add new function
Int_t Merge(TCollection *list)
to merge all the TPolyLine3D/TPolyMarker3D in the collection.
Preset to 0 the vector of points when expanding the array.
2002-01-19 14:19 brun
* meta/src/TStreamerInfo.cxx:
Remove special case for TLorentzVector in the Build function.
2002-01-19 14:18 brun
* physics/: inc/TLorentzVector.h, src/TLorentzVector.cxx:
Increment class version to 3.
Modify Streamer to call TObject::Streamer
With this change, TLorentzVector objects may be referenced via TRef or TRefArray.
To obtain the previous behaviour, call
TLorentzVector::Class()->IgnoreTObjectStreamer();
2002-01-19 12:12 brun
* base/inc/RVersion.h, build/version_number:
Start with 3.03/00
2002-01-19 12:04 brun
* tree/inc/TChain.h, tree/inc/TTree.h, tree/src/TChain.cxx,
tree/src/TTree.cxx, treeplayer/src/TTreePlayer.cxx:
Add a new function TTree::GetEntriesFast. In case of a Tree,
both GetEntries and GetEntriesFast return directly fEntries.
In case of a TChain, GetEntries will force the read of the Tree headers
in all the files to get the number of entries and set the table of offsets.
The new function GetEntriesFast is used internally by TChain
or TTreePlayer to make sure that the TChain files are processed
only once in a given query.
TTreePlayer::MakeStats has been modified to call GetEntriesFast
instead of GetEntries.
These changes make the new functionality of TChain::Add backward compatible.
2002-01-19 09:25 brun
* hist/: inc/TF1.h, inc/TFormula.h, src/TF1.cxx, src/TFormula.cxx:
Move some inline functions to the implementation files with the relevant
protections in case the default constructors are called
2002-01-19 02:26 rdm
* cint/src/parse.c:
fix by Phillipe to correct earlier introduced problem.
2002-01-18 19:46 rdm
* base/inc/RConfig.h, base/inc/TMath.h, base/inc/TString.h,
base/src/TMath.cxx, cint/Module.mk,
cint/iosenum/iosenum.hpuxia64acc, config/ARCHS,
config/Makefile.hpuxia64acc, config/root-config.in,
test/Makefile.in:
port to HP-UX 11i version 1.5 (IA-64) with the aCC compiler.
2002-01-18 16:06 brun
* tree/: inc/TChain.h, src/TChain.cxx:
Replace constant 1000000000 by kBigNumber
2002-01-18 15:51 brun
* treeplayer/src/TTreePlayer.cxx:
Remove PROOF code and dependencies
2002-01-18 15:25 rdm
* gui/inc/TGComboBox.h:
GetListBox() returns a "TGListBox*" and not anymore a "const TGListBox*".
2002-01-18 15:24 rdm
* base/inc/LinkDef2.h, base/inc/TDSet.h, base/src/TDSet.cxx,
proof/inc/LinkDef.h, proof/inc/TEventIter.h, proof/inc/TProof.h,
proof/inc/TProofPlayer.h, proof/src/TEventIter.cxx,
proof/src/TProof.cxx, proof/src/TProofPlayer.cxx,
proof/src/TProofServ.cxx, tree/inc/TSelector.h,
tree/inc/TSelectorCint.h, tree/src/TSelector.cxx,
tree/src/TSelectorCint.cxx, treeplayer/inc/LinkDef.h:
relocate some proof file to remove circular dependencies between the
treeplayer and proof shared libraries. Also rename TPlayer to TProofPlayer
et al. Also remove Begin() from TSelector, use Begin(0) instead. This to
be backward compatible with existing TSelector scripts that don't have
Begin() and therefor give warnings about Begin() being hidden in the base
class.
2002-01-18 15:19 rdm
* treeplayer/: inc/TDSet.h, inc/TEventIter.h, inc/TPlayer.h,
src/TDSet.cxx, src/TEventIter.cxx, src/TPlayer.cxx:
move TDSet to base and TPlayer and TEventIter to proof.
2002-01-18 12:38 brun
* hist/inc/TH1.h, hist/inc/TH2.h, hist/inc/TH3.h,
hist/inc/TProfile.h, hist/inc/TProfile2D.h, hist/src/TH1.cxx,
hist/src/TH2.cxx, hist/src/TH3.cxx, hist/src/TProfile.cxx,
hist/src/TProfile2D.cxx, histpainter/src/THistPainter.cxx:
Add new functionality to the histogram package via the new functions
SetBuffer, BufferFill and BufferEmpty.
virtual void SetBuffer(Int_t buffersize, Option_t *option="");
virtual Int_t BufferFill(Axis_t x, Stat_t w); //protected
virtual Int_t BufferEmpty();
Add new members:
Int_t fBufferSize; //fBuffer size
Double_t *fBuffer; //[fBufferSize] entry buffer
When SetBuffer is called, a dynamic buffer is created to hold up to
fBufferSize entries. When the standard Fill functions are called,
the arguments are put in the buffer, if a buffer is specified.
When the number of entries in the buffer is greater than fBufferSize,
the function BufferEmpty is automatically called.
BufferEmpty will fill the histogram with the entries in the buffer.
In case one of the axis has its lower limit greater or equal
to its upper limit, BufferEmpty calls the THLimitsFinder::FindGoodLimits
to compute the axis limits based on the entries in the current buffer.
When an histogram is created with an axis lower limit greater or equal
to its upper limit, the SetBuffer is automatically called with an
argument fBufferSize equal to fgBufferSize (default value=1000).
fgBufferSize may be reset via the static function TH1::SetDefaultBufferSize.
2002-01-18 12:35 brun
* treeplayer/src/TTreePlayer.cxx:
All functions looping in Tree/Chain entries modified to take into account
the new default when creating a TChain.
When starting the loop on a TChain, the number of entries is not known.
TChain.GetEntries() return a large number.
A protection is added inside the loop when the entry number does not exist.
Also, add an additional statement in the code generated by TTreePlayer::MakeClass
to protect rdading beyond the last entry in a TChain.
2002-01-18 12:32 brun
* tree/src/TChain.cxx:
Change the default option for nentries when calling TChain::Add
The previous default (-1) is changed to 1000000000.
TChain::Add modified to support the new default. By default
the file is not opened when calling TChain::Add
Int_t TChain::Add(const char *name, Int_t nentries)
// A- if nentries <= 0, the file is connected and the tree header read
// in memory to get the number of entries.
//
// B- if (nentries > 0, the file is not connected, nentries is assumed to be
// the number of entries in the file. In this case, no check is made that
// the file exists and the Tree existing in the file. This second mode
// is interesting in case the number of entries in the file is already stored
// in a run data base for example.
//
// C- if (nentries == 1000000000) (default), the file is not connected.
// the number of entries in each file will be read only when the file
// will need to be connected to read an entry.
// This option is the default and very efficient if one process
// the chain sequentially. Note that in case TChain::GetEntry(entry)
// is called and entry refers to an entry in the 3rd file, for example,
// this forces the Tree headers in the first and second file
// to be read to find the number of entries in these files.
// Note that if one calls TChain::GetEntries() after having created
// a chain with this default, GetEntries will return 1000000000!
// One can force the Tree headers of all the files to be read
// by calling TChain::GetEntry(bigentry) with bigentry greater than
// the first entry number of the last file, eg 999999999.
// To compute the number of entries in a chain built with this option, do:
// chain.GetEntry(999999999);
// chain.GetEntries();
2002-01-18 12:29 brun
* tree/: inc/TChain.h, inc/TTree.h, src/TTree.cxx:
Move member fNotify from TChain to TTree.
Same for functions SetNotiFy and GetNotify.
With this change SetNotify may be called on a TTree or TChain.
(Thanks Axel Naumann for the suggestion)
2002-01-18 10:50 brun
* tree/src/TBranchElement.cxx:
Protect the constructor against too small buffer sizes.
The buffer size is set internally to the minimum of
buffersize and 1000+buffersize
2002-01-17 18:45 brun
* cint/src/: cast.c, fread.c, parse.c:
Fix from Philippe for the following problem:
Rootcint doesn't parse them correctly, assuming that it's
std::vector<constnamespace::TMyClass*> and complaining about not knowing
constnamespace. Could one of you improve that, please? Using const* in stl
containers is common, because it's good code writing (Paul says: "A pointer
is nasty enough, at least make it const").
2002-01-17 13:15 rdm
* base/: inc/TSystem.h, src/TRegexp.cxx:
increase kMAXPATHLEN and fgMaxpat to 2048 (Windows max path length).
2002-01-17 13:14 rdm
* meta/src/TFunction.cxx:
need (void*) cast in return of InterfaceMethod().
2002-01-16 22:13 brun
* cint/inc/CallFunc.h, meta/inc/TClass.h, meta/src/TClass.cxx,
meta/src/TFunction.cxx:
iThis patch by Philippe ensures that TClass::GetMethod returns something sensible
even if the class is interpreted.
2002-01-16 19:12 brun
* tree/src/TBranchElement.cxx:
Modify the TBranchElement constructor in case of a TClonesArray.
The TClonesArray branch counter does not need an fEntryOffset in its basket.
The new function Tbasket::deleteEntryOffset is called in this case.
This makes the buffer for the TClonesArray counter much shorter.
It was a non negligible overhead in case of very small objects
in the array.
2002-01-16 19:10 brun
* tree/: inc/TBasket.h, src/TBasket.cxx:
add new function TBasket::DeleteEntryOffset.
This function is called by the new version of TBranchElement to delete
the fEntryOffset buffer not necessary in case of a TClonesArray.
2002-01-16 16:30 brun
* base/: inc/TAttAxis.h, src/TAttAxis.cxx:
Add an optional argument to SetNdivisions.
void TAttAxis::SetNdivisions(Int_t n, Bool_t optim)
{
// Set the number of divisions for this axis
// if optim = kTRUE (default), the number of divisions will be
// optimized around the specified value.
// if optim = kFALSE, or n < 0, the axis will be forced to use
// exactly n divisions.
2002-01-16 16:20 rdm
* cint/src/newlink.c:
Fix by Dave Morrison to prevent erroneous inclusion of algorithm.h.
2002-01-16 15:35 brun
* treeviewer/src/TTreeViewer.cxx:
set the default for drawing scatter-plots to "" instead of "hist"
2002-01-16 14:53 brun
* x3d/: inc/TViewerX3D.h, src/TViewerX3D.cxx:
Add new functions:
Int_t ExecCommand(Int_t px, Int_t py, char command);
void GetPosition(Float_t &longitude, Float_t &latitude, Float_t &psi);
ExecCommand may be called from a script to animate an X3D picture
// px, py mouse position
//command = 0 --- move to px,py
// = w --- wireframe mode
// = e --- hidden line mode
// = r --- hidden surface mode
// = u --- move object down
// = i --- move object up
// = o --- toggle controls style
// = s --- toggle stereo display
// = d --- toggle blue stereo view
// = f --- toggle double buffer
// = h --- move object right
// = j --- move object forward
// = k --- move object backward
// = l --- move object left
// = x a --- rotate about x
// = y b --- rotate about y
// = z c --- rotate about z
// = 1 2 3 --- autorotate about x
// = 4 5 6 --- autorotate about y
// = 7 8 9 --- autorotate about z
// = [ ] { } --- adjust focus
// Example:
/*
{
gSystem->Load("libX3d");
TCanvas *c1 = new TCanvas("c1");
TFile *f = new TFile("hsimple.root");
TTree *ntuple = (TTree*)f->Get("ntuple");
ntuple->SetMarkerColor(kYellow);
ntuple->Draw("px:py:pz");
TViewerX3D *x3d = new TViewerX3D(c1,"");
for (Int_t i=0;i<500;i++) {
Int_t px = i%500;
Int_t py = (2*i)%200;
x3d->ExecCommand(px,py,0); //rotate
if (i%20 >10) x3d->ExecCommand(px,py,'j'); //zoom
if (i%20 <10) x3d->ExecCommand(px,py,'k'); //unzoom
}
}
*/
2002-01-16 14:51 brun
* x3d/src/x3d.c:
Add new function x3d_exec_command(int px, int py, char command).
This function uses a subset of the code in Updateposition.
It is called by the new function TViewerX3D::ExecCommand.
2002-01-16 12:00 rdm
* base/inc/TMath.h:
fix finite() and isnan() being undefined problems when compiling with the
gcc -ansi option. This fixes also the G4 incompatibility problem since
the latest G4 makefile was setting -ansi for gcc.
2002-01-15 16:40 brun
* graf/src/TPolyLine.cxx, hist/src/TPolyMarker.cxx:
In SavePrimitive, save the draw option.
2002-01-15 11:34 brun
* hist/inc/TAxis.h:
Add new enum kIsInteger.
2002-01-15 11:33 brun
* star/src/TTable.cxx:
Use THLimitsFinder instead of TGaxis::Optimize.
2002-01-15 11:32 brun
* treeplayer/inc/TTreePlayer.h:
Delete function FindGoodLimits. TreePlayer uses THLimitsFinder instead.
2002-01-15 11:31 brun
* treeplayer/: src/TTreeFormula.cxx, inc/TTreeFormula.h:
Move function SetAxis to implementation file.
This function sets the Faxis member.
It also sets the TAxis bit kIsInteger if required.
2002-01-15 11:29 brun
* treeplayer/src/TTreePlayer.cxx:
Delete function FindGoodLimits.
Use services of THLimitsFinder in TTreePlayer::SetEstimate.
Modify DrawSelect to use the modified function TTreeFormula::SetAxis.
This new function takes care of setting the bit kIsInteger in the axis.
This also fixes a problem when histograming integer variables. The number of bins
was not correctly recomputed.
Add a fix from Philippe in MakeClass to initialize members holding object pointers.
2002-01-15 11:24 brun
* graf/: inc/TGaxis.h, src/TGaxis.cxx:
Remove the static function Optimize. Use THLimitsFinder instead.
2002-01-15 11:23 brun
* hist/inc/LinkDef.h:
Add new class THLimitsFinder
2002-01-15 11:22 brun
* hist/: inc/THLimitsFinder.h, src/THLimitsFinder.cxx:
New class to compute nice axis limits.
This class is called by the histograming package and by TTree::Draw.
2002-01-15 08:48 brun
* tree/src/TTree.cxx:
Fix by Philippe in TTree::Show to take into account TLeafC.
2002-01-15 08:47 brun
* tree/src/TChain.cxx:
Patch by Philippe to prevent reads before the start of the
fTreeOffset array.
2002-01-15 02:26 rdm
* cint/: inc/G__ci.h, include/array.c, include/darray.h,
lib/prec_stl/vector, src/decl.c, src/expr.c, src/ifunc.c:
import of CINT 5.15.26.
For what else is new see http://root.cern.ch/root/Cint.phtml?relnote.
2002-01-15 01:57 rdm
* gui/src/TGListView.cxx:
fix typo in comment.
2002-01-15 01:53 rdm
* base/src/TString.cxx:
fix in EndsWith() by Maarten B, if end pattern appeared more than once
the method did not return true.
2002-01-15 01:50 rdm
* base/src/TFile.cxx:
remove old PROOF file open code.
2002-01-15 01:48 rdm
* base/: inc/TROOT.h, src/TROOT.cxx:
change some int's to Int_t's. Correct some comments in Proof() method.
2002-01-15 01:46 rdm
* base/inc/MessageTypes.h:
add some new PROOF message codes.
2002-01-15 01:45 rdm
* proof/inc/TProof.h, proof/src/TProof.cxx,
proof/src/TProofServ.cxx, treeplayer/inc/LinkDef.h,
treeplayer/inc/TDSet.h, treeplayer/inc/TEventIter.h,
treeplayer/inc/TPlayer.h, treeplayer/src/TDSet.cxx,
treeplayer/src/TEventIter.cxx, treeplayer/src/TPlayer.cxx,
tree/inc/TSelector.h, tree/inc/TSelectorCint.h,
tree/src/TSelectorCint.cxx:
new PROOF infrastructure classes. Not yet usable. Checked in to facilitate
collaborative development with Maarten.
2002-01-13 08:43 brun
* tree/src/TBranchElement.cxx:
Fix by Philippe in TBranchElement::Browse
The problem was that there was 2 main branches starting with the
name fTracks. The solution was to force TBranchElement::Browse
to use its own fully qualified name.
2002-01-12 21:58 brun
* base/src/TFolder.cxx:
Fix a bug in TFolder::IsOwner. Test should be
if (!fFolders) return kFALSE;
and not
if (fFolders) return kFALSE;
2002-01-12 09:57 brun
* hist/src/TH1.cxx:
Replace message
Warning("Build","Replacing existing histogram: %s",GetName());
by
Warning("Build","Replacing existing histogram: %s (Potential memory leak).",GetName());
2002-01-12 09:52 brun
* graf/src/TLatex.cxx:
Initialize members fOriginSize and fTabSize in the constructors.
Copy fTabSize in the copy constructor.
2002-01-12 09:44 brun
* hist/src/TH1.cxx:
In the TH1C,S,F,D default constructors, set the default number of bins =1
to avoid a crash in case the default constructor is called and the histogram is filled.
2002-01-12 09:43 brun
* hist/src/TAxis.cxx:
In the default constructor, set xmax=1 instead of xmax=0
2002-01-11 16:47 brun
* base/src/TFile.cxx:
Add more checks to protect against corrupted or truncated files.
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.