Skip to content
Snippets Groups Projects
  1. Jan 11, 2003
  2. Jan 09, 2003
  3. Dec 17, 2002
  4. Dec 14, 2002
    • Rene Brun's avatar
      From Philippe: · 03f7ba5f
      Rene Brun authored
      The following patch makes sure that the Shadow Class always use fully qualified name when refering to their data members.  This is avoid a confusion when the template
      parameter and the template instantiation are in the same dictionary.  (This is usefull for CMS).
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5810 27541ba8-7e3a-0410-8455-c3a389f83636
      03f7ba5f
  5. Dec 13, 2002
  6. Dec 10, 2002
  7. Dec 09, 2002
  8. Dec 08, 2002
  9. Dec 05, 2002
  10. Dec 04, 2002
  11. Nov 27, 2002
    • Rene Brun's avatar
      From Philippe: · d07d58b5
      Rene Brun authored
      This patch:
              a) add ClassDef to the generate TSelector with version 0.
              b) keep the Error message for all cases but those inheriting from TSelector
                      (Warnings are not seems in the default rootcint mode).
              c) rootcint succeed in all cases (hence allowing user to compile
                      classes that do not strictly implement the TObject interface).
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5686 27541ba8-7e3a-0410-8455-c3a389f83636
      d07d58b5
  12. Nov 11, 2002
    • Rene Brun's avatar
      The following patch 'upgrades' the new TClass and TGenericClassInfo code to... · 88ef34c6
      Rene Brun authored
      The following patch 'upgrades' the new TClass and TGenericClassInfo code to actually follow the ROOT coding
      conventions.
      
      This patch also enables a rootcint error (prevents the creation of the dictionary) in the case where the class
      derives (directly or indirectly) from TObject and do not have its own ClassDef.
      
      3 helper class in ROOT failed the test: TGFrameElement, TAssoc and TGMenuEntry.
      
      Philippe.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5564 27541ba8-7e3a-0410-8455-c3a389f83636
      88ef34c6
    • Rene Brun's avatar
      This patch enhances speed by avoid the use of the interpreter to access · ca58fef4
      Rene Brun authored
      constructors and destructor.  It also allows for feeding a way to access
      the constructor and destructor independently of the dictionary.
      
      5 new data members were added to TGenericClassInfo/TClass.
      Those are direct wrapper around
              - default constructor
              - array constructor
              - delete
              - delete []
              - destructor
      
      In TKey::TKey and TBuffer::WriteObjectAny, a new message was added:
      
      Warning in <TKey::TKey>: Since TSocket had no public constructor
              which can be called without argument, TSocket objects can not be read
              with the current library. You would need to add a default constructor
              before attempting to read.
      
      Philippe.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5560 27541ba8-7e3a-0410-8455-c3a389f83636
      ca58fef4
  13. Nov 01, 2002
    • Rene Brun's avatar
      From Philippe: · bbff52ee
      Rene Brun authored
      This patch adds the ability to save objects of classes using multiple
      inheritance (directly or indirectly) as part of other objects.
      (Previously multiple inheritance was only supported for top level objects).
      
      In TBuffer.h, TBuffer.cxx:
      
         TBuffer::WriteObject( const void *actualObjStart, TClass *actualClass);
      
      has been made protected. It is replaced by
      
          WriteObjectAny(const void *obj, TClass *ptrClass);
      
      which has a slightly different semantic (for multiple inheriting classes).
      The value of 'obj' in expected to be a value that can be legally stored
      in a pointer to an object of the type described by 'ptrClass'.  I.e:
          MyClass *ptr;
          ....
          b.WriteObjectAny(ptr,gROOT->GetClass(typeid(MyClass)));
      
      We introduced:
      
         void    *ReadObjectAny(const TClass* cast);
      
      which returns a value suitable to be stored in a pointer to an object of
      the type described by 'cast'.  I.e, a typical usage is:
         MyClass *ptr = (MyClass*)b.ReadObjectAny(MyClass::Class());
      
      The existing function
      
          TObject *TBuffer::ReadObject(const TClass *clReq)
      
      now ignores its parameter and returns the address where the object read
      actually start.  It should be noted that if the object is of a class
      which derives from TObject but not as a first inheritance, this value is
      NOT a valid TObject*.  We recommend using ReadObjectAny instead.
      
      In TKey.cxx, I reverted the comments to properly describe how to deal with
      top level object which inherits from TObject but not as a first inheritance
      (can not use dynamic_cast).
      
      In TGenericInfo.h, TGenericInfo.cxx, rootcint.cxx and TClass.cxx, we moved
      to always use an IsA wrapper function instead of using the interpreter for
      TObjects.
      
      TClass.cxx has been modified to optimize a few function now called many
      times.
      
      TStreamerInfo.cxx and TStreamerElement.cxx has been modified to use the
      new TBuffer function and to properly read/write multiple inheriting objects.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5523 27541ba8-7e3a-0410-8455-c3a389f83636
      bbff52ee
  14. Oct 23, 2002
    • Rene Brun's avatar
      From Philippe: · 5fc8aaa4
      Rene Brun authored
      "I think it is inconvenient for the user (and the documenter) that the
      'cint' executable behaves differently in the ROOT environment or in the
      pure CINT environment.  For example, the lastest change broke Fons'
      script to build the cintdlls (since linG__set_globalcompk was off by
      default, the cintdlls where actually empty!).
      
      So I propose to reset the 'link mode' to be on by default for the 'cint'
      executable.  We can then explicitly set it to be off in the 'rootcint'
      executable.
      
      In order to properly implement this, I also needed to fix the handling
      of the argument to '-c' (corretly use the abs value and propagate all
      the change into G__set_globalcomp.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5465 27541ba8-7e3a-0410-8455-c3a389f83636
      5fc8aaa4
  15. Oct 22, 2002
    • Rene Brun's avatar
      Patch from Philippe: · b745c73e
      Rene Brun authored
      This updates increase the support for const data members (the existing
      std::string special cases needed to be updated).  It also explicitly
      disable I/O for data members which are references.
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5458 27541ba8-7e3a-0410-8455-c3a389f83636
      b745c73e
    • Rene Brun's avatar
      From Philippe: · e73b2195
      Rene Brun authored
      This patch repairs TBench.cxx on gcc below 3.1.
      We need to use the 'name' of the class rather than its TrueName (which is
      implementation dependent!!).
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5453 27541ba8-7e3a-0410-8455-c3a389f83636
      e73b2195
  16. Oct 21, 2002
  17. Sep 23, 2002
  18. Sep 17, 2002
  19. Sep 16, 2002
  20. Sep 12, 2002
  21. Sep 11, 2002
  22. Sep 09, 2002
    • Rene Brun's avatar
      From Philippe: · 4b3f8d72
      Rene Brun authored
      In TPluginManager.cxx:
              fix debug ouput to work in case of missing handler.
      In TClassTable.cxx:
              fix the debug output when printing the content of the table of dictionaries.
      In rootcint.cxx
              allow using classes from the same namespace as a data member
      
      
      git-svn-id: http://root.cern.ch/svn/root/trunk@5240 27541ba8-7e3a-0410-8455-c3a389f83636
      4b3f8d72
  23. Aug 24, 2002
  24. Aug 20, 2002
  25. Jul 30, 2002
  26. Jul 23, 2002
  27. Jul 19, 2002
  28. Jul 12, 2002
  29. Jul 11, 2002
  30. Jul 05, 2002
  31. Jul 01, 2002
Loading