- Apr 24, 2008
-
-
Fons Rademakers authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23536 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
std::find_if, std::count_if and the like. git-svn-id: http://root.cern.ch/svn/root/trunk@23531 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
iterator of TRefArray objects can be now used with std::for_each, std::find_if, std::count_if and the like. git-svn-id: http://root.cern.ch/svn/root/trunk@23530 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
iterator of TBtree objects can be now used with std::for_each, std::find_if, std::count_if and the like. git-svn-id: http://root.cern.ch/svn/root/trunk@23529 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
- Add missing #include <string> in Tsystem.cxx git-svn-id: http://root.cern.ch/svn/root/trunk@23513 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23511 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
forward-declared std::string in TString.h so that <string> does not have to be included there. Reduces compilation time (as TString.h is included often). Also avoid unexpected <string> inclusion. git-svn-id: http://root.cern.ch/svn/root/trunk@23503 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 23, 2008
-
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23485 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23433 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23432 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23430 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23429 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23428 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23427 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23426 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23425 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23410 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 22, 2008
-
-
Fons Rademakers authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23404 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 21, 2008
-
-
Rene Brun authored
void SetClass(const char *classname,Int_t size=1000); void SetClass(const TClass *cl,Int_t size=1000); Set class is now called from the two TClonesArray constructors. The new functions are useful when a TClonesArray is a member of another class and the decision about the class to be put in the array can only be taken after the construction of the parent class. git-svn-id: http://root.cern.ch/svn/root/trunk@23348 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 18, 2008
-
-
Fons Rademakers authored
iterators of TMap containers can now be used with std::for_each, std::find_if, std::count_if, and the like. git-svn-id: http://root.cern.ch/svn/root/trunk@23328 27541ba8-7e3a-0410-8455-c3a389f83636
-
Philippe Canal authored
rlibmap.cxx: handle '#pragma create TClass' statements. TCint.cxx: Do not make the TClass a zombie if it points to an STL container without a CINT dictionary Avoid infinite recursion UpdateClassInfo TClass.cxx: Do not check the 'checksum' of an stl container's TStreamerInfo (it is always 0) Avoid infinite recursion TClass::Init git-svn-id: http://root.cern.ch/svn/root/trunk@23326 27541ba8-7e3a-0410-8455-c3a389f83636
-
Philippe Canal authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23311 27541ba8-7e3a-0410-8455-c3a389f83636
-
Rene Brun authored
Including DirecShow headers conflicts with Windows4Root.h This patch fixes the problem. git-svn-id: http://root.cern.ch/svn/root/trunk@23307 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 16, 2008
-
-
Fons Rademakers authored
fix in TObjArrayIter, fCurCursor was not properly initialized. Fixes crash seen in stressIterator. git-svn-id: http://root.cern.ch/svn/root/trunk@23265 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 14, 2008
-
-
Philippe Canal authored
In TDumpMembers::Inspect, avoid knowingly printing unprintable characters. git-svn-id: http://root.cern.ch/svn/root/trunk@23214 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
TIterators, we provide now default implementations that print a proper warning. git-svn-id: http://root.cern.ch/svn/root/trunk@23212 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
- The implementation of TFile throughput and info sending was just sending 'regular' samples about the activity of the single TFile instance that happened to trigger an activity in the right moment. - Now TMonaLisaWriter keeps internally track of every activity and regularly sends summaries valid for all the files which had activity in the last time interval. - Additionally, it's now finalized the infrastructure able to measure and keep track of the file Open latency. A packet is sent for each successful Open, sending the measures of the latencies for the various phases of the open. Currently exploited fully by TAlienFile and TXNetFile. Easy to report from other TFiles too. - Now, the hook for the Close() func triggers sending of a packet containing various information about the performance related to that file only. - Added support also for performance monitoring when writing git-svn-id: http://root.cern.ch/svn/root/trunk@23209 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
The background is the following. While working on the PROOF code I found that enumerating TList is an inconvenient and a long operation, I had to write the same code all over the place and make duplications. I tried to use STD algorithms with it, namely std::for_each, and failed. I therefore decided to enable std::for_each algorithm for ROOT Containers/Iterators by making as few as possible changes, without rewriting iterators at all. Now with only two simple lines of code one is able to iterate through a container: TIter iter(&list); for_each(iter.Begin(), TIter::End(), SEnumFunctor()); or for_each(iter.Begin(), inter_end, SEnumFunctor()); where iter_end could be an iterator to a middle of the container. After I had changed Iterators so that they could be used with std::for_each, I decided to go further and did some more changes. As a result, - I have updated CINT implementation of some algorithms (they look now more or less better in terms of the standard), - TList and TObjArray can be now used with std::for_each, std::find_if, std::count_if (probably with some more algorithms. I've listed here only what has been *checked* by me). Other containers will be supported in a next patch. - A test program has been added: $ROOTSYS/test/stressIterators.cxx - A tutorial macro has been added: $ROOTSYS/tutorials/cont/TListAndSTL.C Patch has been verified on Linux, MacOS X, Solaris 10 i386 and Windows. git-svn-id: http://root.cern.ch/svn/root/trunk@23198 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 11, 2008
-
-
Fons Rademakers authored
The attached patch removed the necessity to define VISUAL_CPLUSPLUS. And it gets rid of the warning: include\cfortran.h(159) : warning C4005: 'VISUAL_CPLUSPLUS' : macro redefinition git-svn-id: http://root.cern.ch/svn/root/trunk@23152 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 08, 2008
-
-
Philippe Canal authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23060 27541ba8-7e3a-0410-8455-c3a389f83636
-
Philippe Canal authored
TObject *obj = array.At(i); By default the TRefArray 'points' to the current process and can only receive object that have been created in this process. To point the TRefArray to a different process do: TRefArray array( processId ); For example, if 'obj' is an instance that was created in the different process and you do: TRefArray array( TProcessID::GetProcessWithUID( obj ) ); Then array.Add(obj); is correct (obj comes from the process the array is pointed to while TObject *nobj = new TObject; array.Add(nobj); is incorrect since 'nobj' was created in a different process than the one the array is pointed to. In thi case you will see error message: Error in <TRefArray::AddAtAndExpand>: The object at 0x... is not registered in the process the TRefArray point to (pid = ProcessID../....) git-svn-id: http://root.cern.ch/svn/root/trunk@23059 27541ba8-7e3a-0410-8455-c3a389f83636
-
Philippe Canal authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23058 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
Three new methods have been implemented: Int_t RescanLibraryMap(); Force a scan along the dynamic path again and load the *.rootmap files in case the (DY)LD_LIBRARY_PATH has changed. Int_t ReloadAllSharedLibraryMaps(); Reload for the loaded shared libraries their rootmap files. This assumes that the library foo.[dll,a,so] has a rootmap named foo.rootmap. Int_t UnloadAllSharedLibraryMaps(); Unload the rootmap entries for the loaded shared libraries. I did not add anything to TSystem::SetDynamicPath() but in principle the user should invoke after that operation RescanLibraryMap(). git-svn-id: http://root.cern.ch/svn/root/trunk@23039 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 07, 2008
-
-
Fons Rademakers authored
Add several methods to handle sizes and percentage of available files. git-svn-id: http://root.cern.ch/svn/root/trunk@23025 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
Implement IsPathLocal to check locality. git-svn-id: http://root.cern.ch/svn/root/trunk@23024 27541ba8-7e3a-0410-8455-c3a389f83636
-
Fons Rademakers authored
git-svn-id: http://root.cern.ch/svn/root/trunk@23022 27541ba8-7e3a-0410-8455-c3a389f83636
-
Philippe Canal authored
class, we now use the highest possible class version as the current version of the class. Practically, we update the class version when reading new (higher versioned) StreamerInfo until the Class is actually used (i.e. TClass::GetClassVersion is call directly or indirectly). In particular, if a file has several StreamerInfos for the same versioned class, we will use the highest version number as the 'current' class version (as opposed to the lowest until now). git-svn-id: http://root.cern.ch/svn/root/trunk@23002 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 06, 2008
-
-
Philippe Canal authored
git-svn-id: http://root.cern.ch/svn/root/trunk@22995 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 05, 2008
-
-
Philippe Canal authored
TTree, TH1, TEventList, TEntryList, TGraph2D (and hence their derived classes). The instances of those classes are now added automatically to the current directory only when Constructe'd with arguments or Clone'd and to the directory they are read from when their are stored directly in a TKey. [Note: the default constructor never adds the object to the current directory] The directory auto add can still be disabled for instance of TH1 and TGraph2D by setting TH1::AddDirectory. Additionally one can disable the directory auto add for a specific class by doing: TClass::GetClass("myclass")->SetDirectoryAutoAdd(0) However you might want to also be able to restore the behavior in which case you ought to do: TClass *cl = TClass::GetClass("myclass"); ROOT::DirAutoAdd_t func = cl->GetDirectoryAutoAdd(); cl->SetDirectoryAutoAdd(0); TROOT::ReadingObject is marked as deprecated.. It is still set (as it was) but is no longer used by the above mention classes. NOTE: One side effect of this change, is that instnace of TTree, TH1, TEventList, TEntryList, TGraph2D that are retrieved from a TMessage (i.e. from a socket) no longer auto register themselves to the current ROOT directory. Add a new optional parameter to TDirectory::Append: 'replace' If replace is true (the default is false), the Append will first remove from the directory any existing object and print the message: Replacing existing OldClass: thename (Potential memory leak). Add a new option parameter to TDirectory::CloneObject: 'autoadd' If autoadd is true (the default), CloneObject will call the object 'DirectoryAutoAdd' function (if any) In TDirectory::CloneObject add support for multiple inheritance from TObject where TObject is not the left most base class. Fix memory leak in TGraph2D::operator= (and add TGraph2D::Clear) Cleanup some documentation git-svn-id: http://root.cern.ch/svn/root/trunk@22992 27541ba8-7e3a-0410-8455-c3a389f83636
-
- Apr 03, 2008
-
-
Philippe Canal authored
Update rootcint_tmp to properly transform the new header file name. We used to have cont/inc/TClonesArray.h and now have core/cont/TClonesArray.h and need to transform it into include/TClonesArray.h rootcint.cxx, TClass.cxx, TClass.h, TGenericClassInfo.cxx, TGenericClassInfo.h Rtypes.h Add a new TClass interface to be able to trigger the "auto addition of object to a TDirectory object". If a class has a member function: DirectoryAutoAdd(TDirectory*) it will now be accessible (when the dictionary is generated via rootcint for now) via TClass::GetDirectoryAutoAdd which return a wrapper with the signature: void (*)(void *this_obj,TDirectory *where_to_add) git-svn-id: http://root.cern.ch/svn/root/trunk@22973 27541ba8-7e3a-0410-8455-c3a389f83636
-