]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITShit.cxx
Using Fatal instead of Error+exit
[u/mrichter/AliRoot.git] / ITS / AliITShit.cxx
index fd2d7ab8a6a641a214f7f5d215aeea3ca12f3c85..b298beaeebce4866c6a7032ce8a1a538b50771f1 100644 (file)
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
 
-/*
-$Log$
-Revision 1.17  2002/06/20 09:10:14  hristov
-Data member ft0 initialized
-
-Revision 1.16  2002/06/19 21:12:37  nilsen
-Fixed bug with non-zero-ed new data members in constructors. Thanks Jiri
-for finding it and pointing it out.
-
-Revision 1.15  2002/06/12 18:59:47  nilsen
-Added Starting track location to hit class and related changes to modules.
-This is at present still fully backwards compatible since starting hits
-are still written to the file. When aliroot v4.0 will be released, this
-backwards compatiblity will be broken by removing the enterence hit, and making
-the nessesary changes to module at that time.
-
-Revision 1.14  2002/05/19 18:17:03  hristov
-Changes needed by ICC/IFC compiler (Intel)
-
-Revision 1.13  2002/03/09 18:35:35  nilsen
-Added functions to print out Hit data members.
-
-Revision 1.12  2002/03/08 16:05:05  nilsen
-Standeard io streamers added to make debugging et al. easier.
-
-Revision 1.11  2001/01/30 09:23:13  hristov
-Streamers removed (R.Brun)
-
-Revision 1.10  2001/01/26 20:01:19  hristov
-Major upgrade of AliRoot code
-
-Revision 1.9  2000/10/02 16:32:51  barbera
-Automatic streamer used and forward declarations added
+/* $Id$ */
 
-Revision 1.3.4.7  2000/10/02 15:54:49  barbera
-Automatic streamer used and forward declarations added
-
-Revision 1.8  2000/09/22 12:35:21  nilsen
-Traps placed incase it is used without a properly initilized AliITSgeom class.
-
-Revision 1.7  2000/07/10 16:07:18  fca
-Release version of ITS code
-
-Revision 1.3.4.2  2000/03/04 23:43:57  nilsen
-Fixed up the comments/documentation.
-
-Revision 1.3.4.1  2000/01/12 19:03:32  nilsen
-This is the version of the files after the merging done in December 1999.
-See the ReadMe110100.txt file for details
-
-Revision 1.3  1999/09/29 09:24:20  fca
-Introduction of the Copyright and cvs Log
-
-*/
-
-#include <iostream.h>
+#include <Riostream.h>
 
 #include <TMath.h>
 #include <TRandom.h>
@@ -386,8 +333,8 @@ void AliITShit::GetPositionL(Float_t &x,Float_t &y,Float_t &z){
       Error("AliITShit","NULL pointer to the geometry! return smth else",gm);
       // AliITSv7 - SDD case
       x=fX;
-      y=fZ;
-      z=fY;
+      y=fY;
+      z=fZ;
     }
     return;
 }
@@ -412,13 +359,41 @@ void AliITShit::GetPositionL(Float_t &x,Float_t &y,Float_t &z,Float_t &tof){
       Error("AliITShit","NULL pointer to the geometry! return smth else",gm);
       // AliITSv7 - SDD case
       x=fX;
-      y=fZ;
-      z=fY;
+      y=fY;
+      z=fZ;
     }
     tof = fTof;
     return;
 }
 //______________________________________________________________________
+void AliITShit::GetPositionL0(Double_t &x,Double_t &y,Double_t &z,
+                             Double_t &tof){
+////////////////////////////////////////////////////////////////////////
+//     Returns the initial position and time of flight of this hit in the local
+// coordinates of this module, and in the units of the Monte Carlo.
+////////////////////////////////////////////////////////////////////////
+    AliITSgeom *gm = ((AliITS*)gAlice->GetDetector("ITS"))->GetITSgeom();
+    Float_t g[3],l[3];
+
+    g[0] = fx0;
+    g[1] = fy0;
+    g[2] = fz0;
+    if(gm) {
+      gm->GtoL(fLayer,fLadder,fDet,g,l);
+      x = l[0];
+      y = l[1];
+      z = l[2];
+    } else {
+      Error("AliITShit","NULL pointer to the geometry! return smth else",gm);
+      // AliITSv7 - SDD case
+      x=fx0;
+      y=fy0;
+      z=fz0;
+    }
+    tof = ft0;
+    return;
+}
+//______________________________________________________________________
 Float_t AliITShit::GetXL(){
 ////////////////////////////////////////////////////////////////////////
 //     Returns the x position of this hit in the local coordinates of this
@@ -599,7 +574,7 @@ void AliITShit::Print(ostream *os){
     Int_t fmt;
 #endif
 #else
-#if defined __ICC
+#if defined __ICC || defined __ECC
     ios::fmtflags fmt;
 #else
     Int_t fmt;