]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TOF/AliTOFv4.cxx
Added possibility to run without reading the MC (Andrea)
[u/mrichter/AliRoot.git] / TOF / AliTOFv4.cxx
index 1bafa73cf2b9c21ca4a20de7267c4ec4fc806b45..06d03482e4d048704a44d2c209f762914c6ced9c 100644 (file)
 #include <Riostream.h>
 #include <stdlib.h>
 
-#include <TBRIK.h>
-#include <TGeometry.h>
 #include <TLorentzVector.h>
-#include <TNode.h>
 #include <TObject.h>
 #include <TVirtualMC.h>
 
@@ -58,6 +55,7 @@
 #include "AliRun.h"
 #include "AliTOFv4.h"
 #include "AliTOFConstants.h" // AdC
+#include "AliMC.h"
  
 ClassImp(AliTOFv4)
  
@@ -90,94 +88,6 @@ AliTOFv4::AliTOFv4(const char *name, const char *title)
     }
  
 }
-
-//____________________________________________________________________________
-
-void AliTOFv4::BuildGeometry()
-{
-  //
-  // Build TOF ROOT geometry for the ALICE event display
-  //
-  TNode *node, *top;
-  const int kColorTOF  = 27;
-  
-  // Find top TNODE
-  top = gAlice->GetGeometry()->GetNode("alice");
-  
-  // Position the different copies
-  const Float_t krTof  =(fRmax+fRmin)/2;
-  const Float_t khTof  = fRmax-fRmin;
-  const Int_t   kNTof = fNTof;
-  const Float_t kPi   = TMath::Pi();
-  const Float_t kangle = 2*kPi/kNTof;
-  Float_t ang;
-  
-  // define offset for nodes
-  Float_t zOffsetC = fZtof - fZlenC*0.5;
-  Float_t zOffsetB = fZtof - fZlenC - fZlenB*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",
-            fStripLn*0.5,khTof*0.5,fZlenC*0.5);
-  new TBRIK("S_TOF_B","TOF box","void",
-            fStripLn*0.5,khTof*0.5,fZlenB*0.5);
-  new TBRIK("S_TOF_A","TOF box","void",
-            fStripLn*0.5,khTof*0.5,fZlenA*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 AliTOFv4::CreateGeometry()
@@ -1059,7 +969,7 @@ void AliTOFv4::StepManager()
   Int_t   *idtmed = fIdtmed->GetArray()-499;
   Float_t incidenceAngle;
   
-  if(gMC->GetMedium()==idtmed[513] && 
+  if(gMC->CurrentMedium()==idtmed[513] && 
      gMC->IsTrackEntering() && gMC->TrackCharge()
      && gMC->CurrentVolID(copy)==fIdSens) 
   {    
@@ -1140,6 +1050,6 @@ void AliTOFv4::StepManager()
     vol[3]= padx;
     vol[4]= padz;
     
-    AddHit(gAlice->GetCurrentTrackNumber(),vol, hits);
+    AddHit(gAlice->GetMCApp()->GetCurrentTrackNumber(),vol, hits);
   }
 }