Hi Rooters, I would like to position text relative to a drawn histogram without knowing the range of the histogram. I tried the TPad::Range(..) method, but this continues to return (0, 0, 1, 1) despite the fact that the range of the pad has been modified after drawing the histogram. thanks for any help Sean _____________________________________________ Sean Kelly Dept. of Physics University of California Los Angeles office tel. (310)-825-6035 fax (310)-206-4397 voice mail (310)-259-3747 _____________________________________________ On Fri, 4 Jun 1999, Rene Brun wrote: > Today, we are exposing the first public pre-release of Root version > 2.22. > this version is stamped 2.22/04 and the main features are listed below. > For more details, see URLs: > > http://root.cern.ch/root/News.html > http://root.cern.ch/root/Version222.html > http://root.cern.ch/root/html/examples/V2.22.txt.html > > Rene Brun & Fons Rademakers > > > > > - New CINT 5.14.4: > > - ==========>>IMPORTANT NEW FEATURE IN THE I/O SUBSYSTEM<<============= > TBuffer: WriteObject() now inserts a byte count in front of the buffer > and ReadObject() checks at the end of reading the byte count. If the > byte count is not correct the buffer is positioned at the location > specified by the byte count so that a next object in the same buffer > can still be correctly read. This new feature is very useful to detect > if a Streamer() is out of sync compared to the data on the file. Also > it will allow the system to skip data of an unkown class (class info > has been lost or shared lib is not loaded), but still correctly read > the other data. > ROOT FILES WRITTEN WITH BY THIS AND HIGHER (>= 2.22) VERSIONS OF OF > THE > SYSTEM CANNOT BE READ BY PREVIOUS (< 2.22) VERSIONS. PLEASE UPGRADE. > > - rootcint: generate Streamer code for STL containers vector, list, > deque, map, set, multimap and multiset. It is now possible to do > automatic I/O for classes containing these containers. > > - Several changes in class TH1 > ============================ > - new member functions to return a random number distributed according > the contents of a histogram. > Axis_t GetRandom(); // for 1-d > void GetRandom2(Axis_t &x, Axis_t &y); //for 2-d > void GetRandom3(Axis_t &x, Axis_t &y, Axis_t &z); //for 3-d > For the 3 cases GetRandom computes the integral of the bins if not > yet done). > This integral (fIntegral) is normalized to 1 and a random number > returned following this integral. > > - existing functions TH1::FillRandom(TF1*) and TH1::FillRandom(TH1*) > have been modified. TH1::FillRandom(TH1*) has been rewritten to use > the new TH1::GetRandom functions. The new function does not require > that the source and destination histogram have the same number of > bins or > bin limits. Statistics are also correctly filled. > > - Changes in prototype for TH1::DrawCopy from > old: void DrawCopy(Option_t *option=""); > new: TH1 *DrawCopy(Option_t *option=""); > > > - Changes in TTree::MakeClass. The new version generates a skeleton > analysis function allowing a better performance when reading the tree. > In addition, to the list of leaf (variable) names, the new version > also > generates for each branch a member like: > TBranch *b_branchname; > In the analysis loop, one can call > b_branchname->GetEntry(entry) to read only the variables belonging > to this branch. The branch pointers are initialized in the Init > function. > Note that if b_branchname->GetEntry(entry) is invoked more than once > for the same entry, the subsequent calls return immediatly from > GetEntry. > > - ==========>>>>WARNING Terminology change in TTree.<<================= > We now call "entry" what was called "event" > We have added the following functions > TTree::GetEntry > TChain::GetEntry > TBranch::GetEntry > These new functions behave like the old GetEvent functions. > We have left the old GetEvent functions for backward compatibility. > However, note that these old functions call the new functions > GetEntry. > We strongly encourage you to make the corresponding changes in your > code. > > - New class in patch EG: TParticle. This new class replaces the old > class > TPrimary (left for compatibility). > The classes TGenerator, TVenus, TPythia changed to use the new class. > TGenerator::GetPrimaries has been renamed TGenerator::ImportParticles. > > - New class TTabCom: very useful new class made by Christian Lacunza > <lacunza@cdfsg5.lbl.gov>. This class performs basic tab completion. > You should be able to hit [TAB] to complete a partially typed: > > username > environment variable > preprocessor directive > pragma > filename (with a context-sensitive path) > public member function or data member > global variable, function, or class name > > - IMPORT CHANGE for LINUX users. in $kumacs/globals and all makefiles > the options -fno-rtti -fno-exceptions have been removed. > When we moved from gcc to egcs1.0 about 1 year ago, we found out that > using the default compiler options was generating a huge overhead in > space in the object files. In particular the exceptions could generate > a few > tens of kilobytes of additional code compared to no-exceptions. We saw > many > cases of small and medium size classes (in fact the majority) for > which the > object file was more than double. > Because support for rtti and exceptions was supported by only a few > compilers at the time, we set by default the options above. > egcs1.1 is now generating a more compact code than its predecessor > and is quickly becoming the standard compiler on Linux. > We have compared a few weeks ago the overhead induced by each option > above and found the following result on the Root classes > -rtti overhead = 1.2 per cent (totally negligible) > -exceptions = 20 per cent > The overhead generated by the exceptions option is still not > negligible. > However, we have decided to compile Root with the default egcs > options. >
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:41 MET