Skip to content
Snippets Groups Projects
  1. Mar 03, 2021
    • Philippe Canal's avatar
      TIsAProxy retain last 8 matches (rather than 1). · 6587b658
      Philippe Canal authored
      This allows to significant reduce the number of search through the list of cached result ...
      That search was a noticeable cause of slow down with an increase of number threads due to the contention
      on updating the number of readers (used for the local read/write lock mechanism).
      6587b658
  2. Dec 10, 2015
  3. Sep 22, 2015
  4. Jun 26, 2015
  5. Mar 05, 2015
  6. Mar 04, 2015
  7. May 18, 2014
  8. May 07, 2014
  9. Dec 14, 2012
  10. Dec 09, 2012
    • Fons Rademakers's avatar
      Here we go: · d2bfd6c7
      Fons Rademakers authored
      - Remove CINT
      - Update configure to not have CINT references
      - Update Makefile to not have CINT references
      - Remove all references to G__BIT_xxxx
      More cleaning in next rounds.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@47939 27541ba8-7e3a-0410-8455-c3a389f83636
      d2bfd6c7
  11. Mar 27, 2012
  12. Aug 30, 2010
  13. Jul 01, 2010
  14. May 31, 2008
    • Rene Brun's avatar
      Extend the TInterpreter class to support the CINT API used so far by ROOT. · a304713a
      Rene Brun authored
      The concrete implementation of the class is in TCint.
      The new functions are essentially interfaces to the existing CINT C++ classes
      like G__ClassInfo, G__CallFunc, G__DataMemberInfo, G__MethodInfo, G__TypeInfo
      and G__TypedefInfo. Most of these functions will call the Reflex interface
      once the CINT/Reflex interface will be available later this year.
      All direct calls to CINT are replaced by calls like gCint->ClassInfo_xxx where gCint
      points to the TCint implementation.
      The existing calls to TCint via gInterpreter are kept because on Windows
      gInterpreter does not call directly TCint, but instead call TWin32InterpreterProxy
      that in turns call TCint.
      On Linux and Mac, gInterpreter and gCint are equivalent.
      
      Once the transformation using gCint will be completed, it will be possible
      to specify at startup time which version of CINT (CINT or CINT7) by loading
      dynamically TCint or TCint7.--This line, and those below, will be ignored--
      
      M    core/meta/src/TStreamerElement.cxx
      M    core/meta/src/TCint.cxx
      M    core/meta/src/TGlobal.cxx
      M    core/meta/src/TBaseClass.cxx
      M    core/meta/src/TDataMember.cxx
      M    core/meta/src/TInterpreter.cxx
      M    core/meta/src/TClass.cxx
      M    core/meta/src/TMethodArg.cxx
      M    core/meta/src/TDataType.cxx
      M    core/meta/src/TMethodCall.cxx
      M    core/meta/src/TIsAProxy.cxx
      M    core/meta/src/TMethod.cxx
      M    core/meta/src/TFunction.cxx
      M    core/meta/inc/TClass.h
      M    core/meta/inc/TDictionary.h
      M    core/meta/inc/TMethodArg.h
      M    core/meta/inc/TDataType.h
      M    core/meta/inc/TMethodCall.h
      M    core/meta/inc/TMethod.h
      M    core/meta/inc/TFunction.h
      M    core/meta/inc/TCint.h
      M    core/meta/inc/TGlobal.h
      M    core/meta/inc/TBaseClass.h
      M    core/meta/inc/TDataMember.h
      M    core/meta/inc/TInterpreter.h
      M    core/thread/src/TThread.cxx
      M    core/base/src/TVirtualFitter.cxx
      M    core/base/src/TStorage.cxx
      M    core/base/src/TQConnection.cxx
      M    core/base/src/TROOT.cxx
      M    core/base/src/TSystem.cxx
      M    core/base/src/TQObject.cxx
      M    core/rint/src/TRint.cxx
      M    core/rint/src/TTabCom.cxx
      M    math/foam/src/TFoam.cxx
      M    math/minuit2/src/TFitterMinuit.cxx
      M    math/mathcore/src/FunctorCint.cxx
      M    math/minuit/src/TMinuit.cxx
      M    tree/tree/src/TTree.cxx
      M    tree/tree/src/TSelectorCint.cxx
      M    tree/tree/src/TSelector.cxx
      M    tree/tree/inc/TSelectorCint.h
      M    roofit/roofitcore/src/RooGenCategory.cxx
      M    roofit/roofitcore/src/RooWorkspace.cxx
      M    hist/hist/src/TF1.cxx
      M    gui/guibuilder/src/TGuiBldDragManager.cxx
      M    net/alien/inc/TAlienSystem.h
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@24077 27541ba8-7e3a-0410-8455-c3a389f83636
      a304713a
  15. Apr 03, 2008
  16. Sep 19, 2007
  17. Jan 29, 2007
    • Rene Brun's avatar
      -Add include "TROOT.h" in all implementation files that were assuming · 20d59524
      Rene Brun authored
      that TROOT was included via TClass.h
      
      
      -In TClass.h:
       --Remove the include of TROOT.h
       --add the following static member
         static IdMap_t    *fgIdMap;          //Map from typeid to TClass pointer
      
       --add the following functions:
         static void           AddClass(TClass *cl);
         static void           RemoveClass(TClass *cl);
      
       --Replace the inline definitions of GetClass functions by
         template <typename T> TClass* GetClass(      T**       /* dummy */) { return GetClass((T*)0); }
         template <typename T> TClass* GetClass(const T**       /* dummy */) { return GetClass((T*)0); }
      
      -In TClass.cxx:
       --Instead of forwarding the calls to gROOT->GetClass, move the code
        originally in TROOT in the TClass::GetClass functions
       --Move class TMapTypeToTClass from TROOT to TClass.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@17561 27541ba8-7e3a-0410-8455-c3a389f83636
      20d59524
  18. May 24, 2006
  19. May 23, 2006
    • Rene Brun's avatar
      From Federico Carminati: · 9919dda8
      Rene Brun authored
      "I have implemented all copy and equal operators needed to silence all
      warnings in AliRoot, as requested. I have implemented shallow copies as
      would do the default operators synthetized by the compiler.
      Most operators are protected. If users complain, you just have to move
      them into the public area, but class derivation is of course supported.
      It has been a terrible job, I have modified 278 files, but the changes
      are backward compabile, and this goes a long way to permitting user to
      use the effc++ flag with root headers."
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@15134 27541ba8-7e3a-0410-8455-c3a389f83636
      9919dda8
  20. Sep 03, 2005
  21. May 30, 2005
  22. May 27, 2005
    • Philippe Canal's avatar
      TIsaProxy and TVirtualIsaProxy are renamed TIsAproxy and TVirtualIsAProxy · ba8f5dd9
      Philippe Canal authored
      git-svn-id: http://root.cern.ch/svn/root/trunk@11902 27541ba8-7e3a-0410-8455-c3a389f83636
      ba8f5dd9
    • Philippe Canal's avatar
      From Markus: · ff70a42f
      Philippe Canal authored
      This patch significantly improves the IsA lookup for foreign
      classes (i.e the lookup by typeid). It is inspired from the
      implementation used by POOL/Reflex.
      
      The type of the fIsA data member is changed from a static function
      with the signature TClass *(*IsAFunc_t)(const void *obj) to
      a functor similar to
      class TIsaProxy  {
          private:
            TClass* fClass;
            void*   fContext;
            std::map<const std::type_info*, TClass*> fSubTypes;
            IsaProxy(TClass* cl, void* ctx);
            IsaProxy(const IsaProxy& copy);
            TClass* operator(const void* obj);
        };
      
      The map is empty in the beginning; then slowly as new types come
      along which are calling fIsa(obj) first a local lookup is
      done by typeid (We also want to keep explicitly the
      last TClass), then a semi-local lookup is done (in the map)
      and if all fails the "big" lookup in gROOT->GetClass(typeid)
      is done. This last call is used to fill the map, so that
      after the first unknown object types the following calls can
      be satisfied by the map. i.e. the map is self-learning.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@11893 27541ba8-7e3a-0410-8455-c3a389f83636
      ff70a42f
Loading