// //
///////////////////////////////////////////////////////////////////////////////
-//#include <Riostream.h>
-
-//#include <TFile.h>
-#include <TGeometry.h>
-//#include <TMath.h>
-#include <TNode.h>
-//#include <TParticle.h>
-//#include <TRandom.h>
-#include <TTUBE.h>
-//#include <TVirtualMC.h>
+#include "TClonesArray.h"
+#include "AliLoader.h"
+#include "AliLog.h"
#include "AliLog.h"
#include "AliMC.h"
-#include "AliLoader.h"
#include "AliRun.h"
-#include "TClonesArray.h"
#include "AliT0.h"
-//#include "AliT0Loader.h"
-#include "AliT0digit.h"
-#include "AliT0hit.h"
#include "AliT0Digitizer.h"
#include "AliT0RawData.h"
#include "AliT0RecPoint.h"
-//#include "AliT0Parameters.h"
-#include "AliLog.h"
+#include "AliT0digit.h"
+#include "AliT0hit.h"
ClassImp(AliT0)
fDigits->SetRefPoint(refpoint);
}
-
-//_____________________________________________________________________________
-void AliT0::BuildGeometry()
-{
- //
- // Build simple ROOT TNode geometry for event display
- //
- TNode *node, *top;
- const int kColorT0 = 19;
-
- top=gAlice->GetGeometry()->GetNode("alice");
-
- // T0 define the different volumes
- new TRotMatrix("rotx999","rot999", 90,0,90,90,180,0);
-
- new TTUBE("S_0ST1","T0 volume 1","void",5.,10.7,5.3);
- top->cd();
- node = new TNode("0ST1","0ST01","S_0ST1",0,0,-69.7,"");
- node->SetLineColor(kColorT0);
- fNodes->Add(node);
-
- new TTUBE("S_0ST2","T0 volume 2","void",5.,10.7,5.3);
- top->cd();
- node = new TNode("0ST2","0ST2","S_0ST2",0,0,350,"rotx999");
- node->SetLineColor(kColorT0);
- fNodes->Add(node);
-}
-
-//_____________________________________________________________________________
-Int_t AliT0::DistanceToPrimitive(Int_t /*px*/, Int_t /*py*/)
-{
- //
- // Calculate the distance from the mouse to the T0 on the screen
- // Dummy routine
- //
- return 9999;
-}
-
//-------------------------------------------------------------------------
void AliT0::Init()
{
const char *cH = strstr(option,"H");
const char *cD = strstr(option,"D");
const char *cR = strstr(option,"R");
+ const char *cS = strstr(option,"S");
if (cH && fLoader->TreeH())
{
if (fDigits == 0x0) fDigits = new AliT0digit();
// MakeBranchInTree(fLoader->TreeD(), branchname,
// &fDigits, 405, 0);
- fLoader->TreeD()->Branch(branchname,"AliT0digit",&fDigits,405,1);
+ fLoader->TreeD()->Branch(branchname,"AliT0digit",&fDigits);
// fLoader->TreeD()->Print();
}
if (cR && fLoader->TreeR())
{
if (fRecPoints == 0x0) fRecPoints = new AliT0RecPoint();
- MakeBranchInTree(fLoader->TreeR(), branchname,
- &fRecPoints, 405, 0);
+ MakeBranchInTree(fLoader->TreeR(), branchname, &fRecPoints);
+ }
+ if (cS && fLoader->TreeS())
+ {
+ if (fDigits == 0x0) fDigits = new AliT0digit();
+ // MakeBranchInTree(fLoader->TreeD(), branchname,
+ // &fDigits, 405, 0);
+ fLoader->TreeS()->Branch(branchname,"AliT0digit",&fDigits);
+ // fLoader->TreeD()->Print();
}
}
void AliT0::SetTreeAddress()
{
- TTree *treeH;
- treeH = TreeH();
+ TTree *treeH = fLoader->TreeH();
if (treeH)
{
TBranch* branch = treeR->GetBranch ("T0");
if (branch) branch->SetAddress(&fRecPoints);
}
+ // SDigitizer for Federico
+ TTree *treeS = fLoader->TreeS();
+ if (treeS) {
+ if (fDigits == 0x0) fDigits = new AliT0digit();
+ TBranch* branch = treeS->GetBranch ("T0");
+ if (branch) branch->SetAddress(&fDigits);
+ }
}
fDigits = new AliT0digit();
- digitsTree->Branch("T0","AliT0digit",&fDigits,405,1);
+ digitsTree->Branch("T0","AliT0digit",&fDigits);
TArrayI *timeLED = new TArrayI(24);