1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
16 //_________________________________________________________________________
17 // Algorithm Base class to construct PHOS track segments
18 // Associates EMC and PPSD clusters
19 // Unfolds the EMC cluster
21 //*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
24 // --- ROOT system ---
25 #include "TGeometry.h"
29 // --- Standard library ---
33 // --- AliRoot header files ---
35 #include "AliPHOSTrackSegmentMaker.h"
36 #include "AliHeader.h"
38 ClassImp( AliPHOSTrackSegmentMaker)
41 //____________________________________________________________________________
42 AliPHOSTrackSegmentMaker:: AliPHOSTrackSegmentMaker() : TTask("","")
49 //____________________________________________________________________________
50 AliPHOSTrackSegmentMaker::AliPHOSTrackSegmentMaker(const char * headerFile, const char * name): TTask(name, headerFile)
56 //____________________________________________________________________________
57 AliPHOSTrackSegmentMaker::~AliPHOSTrackSegmentMaker()
63 //____________________________________________________________________________
64 void AliPHOSTrackSegmentMaker::SetSplitFile(const TString splitFileName) const
66 // Diverts the TrackSegments in a file separate from the Digits file
69 TDirectory * cwd = gDirectory ;
70 TFile * splitFile = gAlice->InitTreeFile("R",splitFileName.Data());
72 gAlice->Write(0, TObject::kOverwrite);
74 TTree *treeE = gAlice->TreeE();
76 cerr << "ERROR: AliPHOSTrackSegmentMaker::SetSplitFile -> No TreeE found "<<endl;
81 AliHeader *header = new AliHeader();
82 treeE->SetBranchAddress("Header", &header);
83 treeE->SetBranchStatus("*",1);
84 TTree *treeENew = treeE->CloneTree();
85 treeENew->Write(0, TObject::kOverwrite);
88 TGeometry *AliceGeom = static_cast<TGeometry*>(cwd->Get("AliceGeom"));
90 cerr << "ERROR: AliPHOSTrackSegmentMaker::SetSplitFile -> AliceGeom was not found in the input file "<<endl;
93 AliceGeom->Write(0, TObject::kOverwrite);
95 gAlice->MakeTree("R",splitFile);
97 cout << "INFO: AliPHOSTrackSegmentMaker::SetSPlitMode -> TrackSegments will be stored in " << splitFileName.Data() << endl ;