[root] / trunk / core / meta / inc / TDataType.h Repository:
ViewVC logotype

Log of /trunk/core/meta/inc/TDataType.h

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 41070 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Sep 30 12:15:22 2011 UTC (3 years, 3 months ago) by axel
File length: 3052 byte(s)
Diff to previous 24077
Keep a map of EDataType to TDataType* (an array, really) for quick access.
Move the creation of builtins' TDataType objects from TROOT to TDataType to populate that array.
Add remaining builtins to EDataType.
Implement TDictionary::GetDictionary(const type_info&), combining those for TDataType and TClass, just like TDictionary::GetDictionary(const char* name).

Revision 24077 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 31 19:39:09 2008 UTC (6 years, 7 months ago) by brun
File length: 2782 byte(s)
Diff to previous 22961
Extend the TInterpreter class to support the CINT API used so far by ROOT.
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

Revision 22961 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 3 13:32:57 2008 UTC (6 years, 9 months ago) by rdm
File length: 2896 byte(s)
Diff to previous 20882
move the directories:
  base clib cont meta metautils newdelete pcre rint thread unix utils
  winnt zip
under the new core meta directory.

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2896 byte(s)
Diff to previous 20170
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 20170 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 2 09:02:20 2007 UTC (7 years, 3 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2896 byte(s)
Diff to previous 19826
First batch of changes to support the new data type Float16_t.
For more info about Float16_t see TBufferFile::WriteFloat16.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2879 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2929 byte(s)
Diff to previous 16926
remove :$ from tag line

Revision 16926 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 24 14:24:54 2006 UTC (8 years, 2 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2939 byte(s)
Diff to previous 15134
patch handling namespace CINT of CINT 5-16-16.

Revision 15134 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 23 04:47:42 2006 UTC (8 years, 8 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2898 byte(s)
Diff to previous 15017
From Federico Carminati:

"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."

Revision 15017 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 13 11:00:50 2006 UTC (8 years, 8 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2887 byte(s)
Diff to previous 10958
From Federico:
More headers changed to facilitate the use of the gcc option weffc++

Revision 10958 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 19 18:30:58 2005 UTC (10 years ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2811 byte(s)
Diff to previous 10909
From Philippe:
This patch implement support for bool of various in memory size.  They are
always written using only 1 bytes.  This solves problem on MacOS where
sizeof(bool)==4 instead of 1.

Note that there should still be a problem with the old-style splitted branch
(tested in Event.old.split.root.
A fix for this will come later on.

Revision 10909 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 12 20:04:36 2005 UTC (10 years ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2811 byte(s)
Diff to previous 10898
From Philippe:
Fix compilation warnings on MAC (reported by Eddy)

Revision 10898 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Jan 12 07:50:03 2005 UTC (10 years ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2716 byte(s)
Diff to previous 9636
From Philippe:
A) Support for top level STL Containers.  You can now do
   list<int> *ptr = new list<int>;
   tree->Branch("mystl","list<int>",&ptr);

B) Autodetection of the pointer type passed to the branch constructor.
So you can now do:
   list<int> *ptr = new list<int>;
   tree->Branch("mystl",&ptr);

C) Check of the type of the pointer type passed to the branch constructor.
So that you now get an error:
   list<int> *ptr = new list<int>;
   tree->Branch("mystl","list<float>",&ptr);

Error in <TTree::Branch>: The class requested (list<float>) for the branch
"mystl" is different from the type of the pointer passed (list<int>)

D) TTree's SetBranchAddress now also check its input address (unless the
user explicitly specify (char*) or (void*).

Test/Event and the tree tutorials have been updated to take advantage of the
new syntax.

Revision 9636 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 30 19:09:52 2004 UTC (10 years, 5 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2664 byte(s)
Diff to previous 9621
From Philippe:
This patch change TMath from a class to a namespace.

This patch also updates rootcint to that it force the
creation of a TClass for namepaces.  The TClass for
namespace is needed to allow THtml and the command
completion mechanism to properly work.

This patch also add the new macro
        NamespaceImp(namespacename)
which register an implementation file for the namespace.

This patch also update THtml to clean up the output for namespaces.

Revision 9621 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jul 30 01:16:17 2004 UTC (10 years, 5 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2552 byte(s)
Diff to previous 8222
From Philippe:
Some TDataType objects hold a pointer to a G__TypedefInfo object.
This object holds a tagnum and typenum. The TDataType objects are
intentionally never deleted.

In some circunstance involving loading and unloading scripts and
library, CINT might renumber the class and the typedefs. The
net effect is that the G__TypedefInfo held by the TDataType are
then invalid. (Potentially leading to core dumps).

This patch fixes the problem by verifying the validity of
the G__TypedefInfo object before using it.

Revision 8222 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 18 07:28:02 2004 UTC (10 years, 11 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2493 byte(s)
Diff to previous 7804
From Philippe:
This patch implements TTree::Draw for vector.  The current convention is the same
as for TClonesArray, namely after dereferencing a collection, the right hand of
the expression is request for the content and not for the container.

TBranchElement.cxx
        Make sure that a non-split branch containing an stl container contain
one leaf.

TVirtualCollectionProxy, TEmulatedVectorProxy, TVectorProxy
        Add the ability to retrieve the data type when it is a numerical type

TVectorProxy
        Fix some problem in the addressing caching mechanism

TClass.h
        Correct the ROOT::GetClass templates to properly return the TClass
object in case when the parameter is a pointer to pointer (or more).

TClassEdit.cxx:
        Avoid thinking that vector<xxx>::iterator is an stl container!

TTreeFormula.cxx
        Add support for stl container (actually ANY container which a
know TVirtualCollectionProxy).  Added TFormLeafInfoCollection and
TFormLeafInfoNumerical (non struct, non class container content).

Revision 7804 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 26 18:38:21 2003 UTC (11 years, 1 month ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2417 byte(s)
Diff to previous 6421
Implement a new data type Double32_t (in Rtypes.h).
In memory a Double32_t is like a Double_t (8 bytes).
When written to a file, the type is converted to a Float 4 bytes.
The newdata type is accepted as a simple variable, as a fixed length array
or a variable length array, like:
  Double32_t  fPt:
  Double32_t  fVertex[3];
  Int_t       fNtracks;
  Double32_t *fPx;  //[fNtracks]

The new data type is supported in all I/O modes (TKey or TTree)

The automatic schema evolution algorithm accepts this new type.
For example a class in a file containing a Double_t data member
can be read by a new class where the member is now of type Double32_t
and vice-versa.

Revision 6421 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 11 11:48:11 2003 UTC (11 years, 9 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2393 byte(s)
Diff to previous 5664
Big (unsigned) long long support patch. Following provided:
- basic typedefs in Rtypes.h: Long64_t and ULong64_t
- basic Long64 I/O support in TBuffer
- automatic Long64 I/O support in TStreamerInfo
- Long64 byteswap in Bytes.h
- Long64 type handling in classes like TDataMember, TDataType, TCint,
  TROOT, etc
- Removal of obsolete Long64_t typedefs in many PROOF classes
No changes for non-Long64 data types (no backward incompatibilies).
I/O tested for Long64 basic type, and static and dynamic arrays using
handcoded streamers, rootcint generated streamers and automatic StreamerInfo
streamers.

Revision 5664 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 26 10:24:09 2002 UTC (12 years, 2 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2349 byte(s)
Diff to previous 4072
TDictionary derives now from TNamed instead of TObject.
This change simplifies all the meta classes avoiding duplication
of functions GetName, GetTitle, Compare, Hash.
This also removes some coupling with CINT.

Revision 4072 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Feb 23 15:45:05 2002 UTC (12 years, 11 months ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2558 byte(s)
Diff to previous 1205
Add kBool_t in TDataType.h. Note that kBool_t = kUchar_t=11;
Add support for bool type in TDataType::AsString

Revision 1205 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 13 15:13:57 2000 UTC (14 years, 1 month ago) by brun
Original Path: trunk/meta/inc/TDataType.h
File length: 2543 byte(s)
Diff to previous 3
      W A R N I N G   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     ==================================================================
A very long list of changes in this pre-release of version 3.00.
We have modified the signature of many functions (in particular TObject)
to introduce more constness in the system.
You must change your code if your class derives from TObject and uses
one of the modified functions such as ls, Print, Compare, Hash, etc.
The modified functions in TObject have the following signature:
   virtual TObject    *Clone() const;
   virtual Int_t       Compare(const TObject *obj) const;
   virtual void        Delete(Option_t *option=""); // *MENU*
   virtual void        DrawClass() const; // *MENU*
   virtual void        DrawClone(Option_t *option="") const; // *MENU*
   virtual void        Dump() const; // *MENU*
   virtual TObject    *FindObject(const TObject *obj) const;
   virtual char       *GetObjectInfo(Int_t px, Int_t py) const;
   virtual ULong_t     Hash() const;
   virtual void        Inspect() const; // *MENU*
   virtual Bool_t      IsEqual(const TObject *obj) const;
   virtual void        ls(Option_t *option="") const;
   virtual void        Print(Option_t *option="") const;

A similar operation has been done with classes such as TH1, TVirtualPad,
TTree, etc.

Revision 3 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: trunk/meta/inc/TDataType.h
File length: 2470 byte(s)
Copied from: branches/rdm/meta/inc/TDataType.h revision 2
Diff to previous 2
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.

Revision 2 - (view) (download) (as text) (annotate) - [select for diffs]
Added Tue May 16 17:00:58 2000 UTC (14 years, 8 months ago) by rdm
Original Path: branches/rdm/meta/inc/TDataType.h
File length: 2470 byte(s)
Initial import of ROOT into CVS

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9