]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFv4T0.cxx
AliTOFDigitMap::GetFilledCellNumber method correction
[u/mrichter/AliRoot.git] / TOF / AliTOFv4T0.cxx
index 1c4d2f38d4b7ce0e4d9c8486976ec513861d2339..ec7304d9cf7278933fcef114278f74384b6477b6 100644 (file)
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
-#include "TBRIK.h"
-#include "TGeometry.h"
 #include "TLorentzVector.h"
-#include "TNode.h"
 #include "TVirtualMC.h"
 
 #include "AliConst.h"
@@ -48,6 +45,7 @@
 #include "AliMagF.h"
 #include "AliMC.h"
 #include "AliRun.h"
+#include "AliTrackReference.h"
 
 #include "AliTOFGeometry.h"
 #include "AliTOFGeometryV4.h"
@@ -61,7 +59,14 @@ extern AliRun *gAlice;
 ClassImp(AliTOFv4T0)
 
 //_____________________________________________________________________________
-AliTOFv4T0::AliTOFv4T0()
+  AliTOFv4T0::AliTOFv4T0():
+  fIdFTOA(-1),
+  fIdFTOB(-1),
+  fIdFTOC(-1),
+  fIdFLTA(-1),
+  fIdFLTB(-1),
+  fIdFLTC(-1),
+  fTOFHoles(kFALSE)
 {
   //
   // Default constructor
@@ -69,8 +74,15 @@ AliTOFv4T0::AliTOFv4T0()
 }
  
 //_____________________________________________________________________________
-AliTOFv4T0::AliTOFv4T0(const char *name, const char *title)
-        : AliTOF(name,title,"tzero")
+AliTOFv4T0::AliTOFv4T0(const char *name, const char *title):
+  AliTOF(name,title,"tzero"),
+  fIdFTOA(-1),
+  fIdFTOB(-1),
+  fIdFTOC(-1),
+  fIdFLTA(-1),
+  fIdFLTB(-1),
+  fIdFLTC(-1),
+  fTOFHoles(kFALSE)
 {
   //
   // Standard constructor
@@ -101,99 +113,11 @@ AliTOFv4T0::AliTOFv4T0(const char *name, const char *title)
 
   // Save the geometry
   TDirectory* saveDir = gDirectory;
-  gAlice->GetRunLoader()->CdGAFile();
+  AliRunLoader::Instance()->CdGAFile();
   fTOFGeometry->Write("TOFgeometry");
   saveDir->cd();
 
 } 
-
-//____________________________________________________________________________
-void AliTOFv4T0::BuildGeometry()
-{
-  //
-  // Build TOF ROOT geometry for the ALICE event display
-  //
-  TNode *node, *top;
-  const int kColorTOF  = 27;
-  
-  TGeometry *globalGeometry = (TGeometry*)gAlice->GetGeometry();
-
-  // Find top TNODE
-  top = (TNode*)globalGeometry->GetNode("alice");
-  
-  // Position the different copies
-  const Float_t krTof  =(fTOFGeometry->Rmax()+fTOFGeometry->Rmin())/2.;
-  const Float_t khTof  = fTOFGeometry->Rmax()-fTOFGeometry->Rmin();
-  const Int_t   kNTof  = fTOFGeometry->NSectors();
-  const Float_t kPi    = TMath::Pi();
-  const Float_t kangle = 2*kPi/kNTof;
-  Float_t ang;
-  
-  // define offset for nodes
-  Float_t zOffsetC = fTOFGeometry->MaxhZtof() - fTOFGeometry->ZlenC()*0.5;
-  Float_t zOffsetB = fTOFGeometry->MaxhZtof() - fTOFGeometry->ZlenC() - fTOFGeometry->ZlenB()*0.5;
-  Float_t zOffsetA = 0.;
-  // Define TOF basic volume
-  
-  char nodeName0[7], nodeName1[7], nodeName2[7];
-  char nodeName3[7], nodeName4[7], rotMatNum[7];
-  
-  new TBRIK("S_TOF_C","TOF box","void",
-            fTOFGeometry->StripLength()*0.5, khTof*0.5, fTOFGeometry->ZlenC()*0.5);
-  new TBRIK("S_TOF_B","TOF box","void",
-            fTOFGeometry->StripLength()*0.5, khTof*0.5, fTOFGeometry->ZlenB()*0.5);
-  new TBRIK("S_TOF_A","TOF box","void",
-            fTOFGeometry->StripLength()*0.5, khTof*0.5, fTOFGeometry->ZlenA()*0.5);
-  
-  for (Int_t nodeNum=1;nodeNum<19;nodeNum++){
-    
-    if (nodeNum<10) {
-      sprintf(rotMatNum,"rot50%i",nodeNum);
-      sprintf(nodeName0,"FTO00%i",nodeNum);
-      sprintf(nodeName1,"FTO10%i",nodeNum);
-      sprintf(nodeName2,"FTO20%i",nodeNum);
-      sprintf(nodeName3,"FTO30%i",nodeNum);
-      sprintf(nodeName4,"FTO40%i",nodeNum);
-    }
-    if (nodeNum>9) {
-      sprintf(rotMatNum,"rot5%i",nodeNum);
-      sprintf(nodeName0,"FTO0%i",nodeNum);
-      sprintf(nodeName1,"FTO1%i",nodeNum);
-      sprintf(nodeName2,"FTO2%i",nodeNum);
-      sprintf(nodeName3,"FTO3%i",nodeNum);
-      sprintf(nodeName4,"FTO4%i",nodeNum);
-    }
-    
-    new TRotMatrix(rotMatNum,rotMatNum,90,-20*nodeNum,90,90-20*nodeNum,0,0);
-    ang = (4.5-nodeNum) * kangle;
-
-    top->cd();
-    node = new TNode(nodeName0,nodeName0,"S_TOF_C", krTof*TMath::Cos(ang), krTof*TMath::Sin(ang), zOffsetC,rotMatNum);
-    node->SetLineColor(kColorTOF);
-    fNodes->Add(node);
-    
-    top->cd();
-    node = new TNode(nodeName1,nodeName1,"S_TOF_C", krTof*TMath::Cos(ang), krTof*TMath::Sin(ang),-zOffsetC,rotMatNum);
-    node->SetLineColor(kColorTOF);
-    fNodes->Add(node);
-    
-    top->cd();
-    node = new TNode(nodeName2,nodeName2,"S_TOF_B", krTof*TMath::Cos(ang), krTof*TMath::Sin(ang), zOffsetB,rotMatNum);
-    node->SetLineColor(kColorTOF);
-    fNodes->Add(node);
-    
-    top->cd();
-    node = new TNode(nodeName3,nodeName3,"S_TOF_B", krTof*TMath::Cos(ang), krTof*TMath::Sin(ang),-zOffsetB,rotMatNum);
-    node->SetLineColor(kColorTOF);
-    fNodes->Add(node);
-    
-    top->cd();
-    node = new TNode(nodeName4,nodeName4,"S_TOF_A", krTof*TMath::Cos(ang), krTof*TMath::Sin(ang), zOffsetA,rotMatNum);
-    node->SetLineColor(kColorTOF);
-    fNodes->Add(node);
-  } // end loop on nodeNum
-
-}
  
 //_____________________________________________________________________________
 void AliTOFv4T0::CreateGeometry()
@@ -908,7 +832,7 @@ void AliTOFv4T0::CreateMaterials()
   // Revision: F. Pierella 18-VI-2002
   //
 
-  AliMagF *magneticField = (AliMagF*)gAlice->Field();
+  AliMagF *magneticField = (AliMagF*)((AliMagF*)TGeoGlobalMagField::Instance()->GetField());
 
   Int_t   isxfld = magneticField->Integ();
   Float_t sxmgmx = magneticField->Max();
@@ -1107,7 +1031,7 @@ void AliTOFv4T0::StepManager()
 
     AliMC *mcApplication = (AliMC*)gAlice->GetMCApp();
 
-    AddTrackReference(mcApplication->GetCurrentTrackNumber());
+    AddTrackReference(mcApplication->GetCurrentTrackNumber(), AliTrackReference::kTOF);
     //AddTrackReference(gAlice->GetMCApp()->GetCurrentTrackNumber());
 
     // getting information about hit volumes