Added the possibility to save the particle id's through the chain, if detailed effici...
[u/mrichter/AliRoot.git] / HLT / src / AliL3RootTypes.h
1 #ifndef ALIL3ROOTTYPES_H
2 #define ALIL3ROOTTYPES_H
3
4
5 //////////////////////////////////////////////////////////////////////////
6 //                                                                      //
7 // Basic types used by level3                                           //
8 //                                                                      //
9 //////////////////////////////////////////////////////////////////////////
10 #include <stdio.h>
11 #include <math.h>
12
13 //#define no_root //switch on the root
14 #define use_aliroot //use AliL3FileHandler
15
16 #define do_mc //Save the particle id's.
17
18 #ifndef no_root
19 #define use_root
20 #include <TObject.h>
21 #include <Rtypes.h>
22
23 #else
24
25 #ifndef ROOT_Rtypes
26 //---- types -------------------------------------------------------------------
27
28 typedef char           Char_t;      //Signed Character 1 byte
29 typedef unsigned char  UChar_t;     //Unsigned Character 1 byte
30 typedef short          Short_t;     //Signed Short integer 2 bytes
31 typedef unsigned short UShort_t;    //Unsigned Short integer 2 bytes
32 #ifdef R__INT16
33 typedef long           Int_t;       //Signed integer 4 bytes
34 typedef unsigned long  UInt_t;      //Unsigned integer 4 bytes
35 #else
36 typedef int            Int_t;       //Signed integer 4 bytes
37 typedef unsigned int   UInt_t;      //Unsigned integer 4 bytes
38 #endif
39 #ifdef R__B64
40 typedef int            Seek_t;      //File pointer
41 typedef long           Long_t;      //Signed long integer 4 bytes
42 typedef unsigned long  ULong_t;     //Unsigned long integer 4 bytes
43 #else
44 typedef int            Seek_t;      //File pointer
45 typedef long           Long_t;      //Signed long integer 8 bytes
46 typedef unsigned long  ULong_t;     //Unsigned long integer 8 bytes
47 #endif
48 typedef float          Float_t;     //Float 4 bytes
49 typedef double         Double_t;    //Float 8 bytes
50 typedef char           Text_t;      //General string
51 typedef unsigned char  Bool_t;      //Boolean (0=false, 1=true)
52 typedef unsigned char  Byte_t;      //Byte (8 bits)
53 typedef short          Version_t;   //Class version identifier
54 typedef const char     Option_t;    //Option string
55 typedef int            Ssiz_t;      //String size
56 typedef float          Real_t;      //TVector and TMatrix element type
57
58 typedef void         (*VoidFuncPtr_t)();  //pointer to void function
59
60
61 //---- constants ---------------------------------------------------------------
62
63 #ifndef NULL
64 #define NULL 0
65 #endif
66
67 const Bool_t kTRUE   = 1;
68 const Bool_t kFALSE  = 0;
69
70 const Int_t  kMaxInt      = 2147483647;
71 const Int_t  kMaxShort    = 32767;
72 const size_t kBitsPerByte = 8;
73 const Ssiz_t kNPOS        = ~(Ssiz_t)0;
74
75
76 //---- ClassDef macros ---------------------------------------------------------
77
78
79 #define ClassDef(name,id) 
80
81 #define ClassImp(name) 
82 #endif  //end of Rtypes 
83
84 #endif  //end of root selection
85
86 //---- Timms AliL3EventDataType  from AliL3EventDataType.h
87
88 union AliL3EventDataTypeRoot{
89   ULong_t      fID;
90   unsigned char      fDescr[8];
91 };
92
93 typedef union AliL3EventDataTypeRoot AliL3EventDataTypeRoot;
94
95 #define ROOT_UNKNOWN_DATAID               (((ULong_t)'UNKN')<<32 | 'OWN ')
96 #define ROOT_COMPOSITE_DATAID             (((ULong_t)'COMP')<<32 | 'OSIT')
97 #define ROOT_ADCCOUNTS_DATAID             (((ULong_t)'ADCC')<<32 | 'OUNT')
98 #define ROOT_ADCCOUNTS_UNPACKED_DATAID    (((ULong_t)'ADCC')<<32 | 'NTUP')
99 #define ROOT_CLUSTERS_DATAID              (((ULong_t)'CLUS')<<32 | 'TERS')
100 #define ROOT_SPACEPOINTS_DATAID           (((ULong_t)'SPAC')<<32 | 'EPTS')
101 #define ROOT_VERTEXDATA_DATAID            (((ULong_t)'VRTX')<<32 | 'DATA')
102 #define ROOT_TRACKSEGMENTS_DATAID         (((ULong_t)'TRAC')<<32 | 'SEGS')
103 #define ROOT_SLICETRACKS_DATAID           (((ULong_t)'SLCT')<<32 | 'RCKS')
104 #define ROOT_TRACKS_DATAID                (((ULong_t)'TRAC')<<32 | 'KS  ')
105 #define ROOT_NODELIST_DATAID              (((ULong_t)'NODE')<<32 | 'LIST')
106 #define ROOT_EVENTTRIGGER_DATAID          (((ULong_t)'EVTT')<<32 | 'RG  ')
107
108 #endif