-Bool_t AliPHOSGetter::PostTrackSegments(const char * name) const
-{ // ---------------TrackSegments -----------------------------------
-
- // the hierarchy is //Folders/Run/Event/RecData/PHOS/TrackSegments/name
-
- TFolder * phosFolder = dynamic_cast<TFolder*>(fRecoFolder->FindObject("PHOS")) ;
-
- if ( !phosFolder ) {
- if (fDebug) {
- cout << "WARNING: AliPHOSGetter::Post TS -> Folder //" << fRecoFolder << "/PHOS/ not found!" << endl;
- cout << "INFO: AliPHOSGetter::Post TS -> Adding Folder //" << fRecoFolder->GetName() << "/PHOS" << endl;
- }
- phosFolder = fRecoFolder->AddFolder("PHOS", "Reconstructed data from PHOS") ;
- }
-
- TFolder * phosTSFolder = dynamic_cast<TFolder*>(phosFolder->FindObject("TrackSegments")) ;
- if ( !phosTSFolder ) {
- if (fDebug) {
- cout << "WARNING: AliPHOSGetter::Post TS -> Folder//" << fRecoFolder->GetName() << "/PHOS/TrackSegments/ not found!" << endl;
- cout << "INFO: AliPHOSGetter::Post TS -> Adding Folder //" << fRecoFolder->GetName() << "/PHOS/TrackSegments/" << endl;
- }
- phosTSFolder = phosFolder->AddFolder("TrackSegments", "TrackSegments from PHOS") ;
- }
-
- TObject * tss = phosTSFolder->FindObject( name ) ;
- if (!tss) {
- TClonesArray * ts = new TClonesArray("AliPHOSTrackSegment",100) ;
- ts->SetName(name) ;
- phosTSFolder->Add(ts) ;
- }
- return kTRUE;
-}
-
-//____________________________________________________________________________
-TObject** AliPHOSGetter::TrackSegmentsRef(const char * name) const
-{ // ---------------TrackSegments -----------------------------------
-
- // the hierarchy is //Folders/Run/Event/RecData/PHOS/TrackSegments/name
-
- if ( !fRecoFolder ) {
- cerr << "ERROR: AliPHOSGetter::TrackSegmentsRef -> Folder //" << fRecoFolder->GetName() << "not found!" << endl;
- abort() ;
- }
-
- TFolder * phosFolder = dynamic_cast<TFolder*>(fRecoFolder->FindObject("PHOS/TrackSegments")) ;
- if ( !phosFolder ) {
- cerr << "ERROR: AliPHOSGetter::TrackSegmentsRef -> Folder //" << fRecoFolder->GetName() << "/PHOS/TrackSegments/ not found!" << endl;
- abort() ;
- }
-
- TObject * tss = phosFolder->FindObject(name) ;
- if (!tss) {
- cerr << "ERROR: AliPHOSGetter::TrackSegmentsRef -> object " << name << " not found! " << endl ;
- abort() ;
- }
- return phosFolder->GetListOfFolders()->GetObjectRef(tss) ;
-}
-
-//____________________________________________________________________________
-Bool_t AliPHOSGetter::PostTrackSegmentMaker(AliPHOSTrackSegmentMaker * tsmaker) const
-{ //------------Track Segment Maker ------------------------------
-
- // the hierarchy is //Folders/Tasks/Reconstructioner/PHOS/sdigitsname
-
- TTask * tasks = dynamic_cast<TTask*>(fTasksFolder->FindObject("Reconstructioner")) ;
-
- if ( !tasks ) {
- cerr << "ERROR: AliPHOSGetter::Post Ter -> Task //" << fTasksFolder << "/Reconstructioner not found!" << endl;
- return kFALSE ;
- }
-
- TTask * phos = dynamic_cast<TTask*>(tasks->GetListOfTasks()->FindObject("PHOS")) ;
- if ( !phos ) {
- if (fDebug) {
- cout <<"WARNING: AliPHOSGetter::Post Rer -> //" << fTasksFolder << "/Reconstructioner/PHOS not found!" << endl;
- cout <<"INFO: AliPHOSGetter::Post Rer -> Adding //" << fTasksFolder << "/Reconstructioner/PHOS" << endl;
- }
- phos = new TTask("PHOS", "") ;
- tasks->Add(phos) ;
- }
-
- AliPHOSTrackSegmentMaker * phosts =
- dynamic_cast<AliPHOSTrackSegmentMaker*>(phos->GetListOfTasks()->FindObject(tsmaker->GetName())) ;
- if (phosts) {
- phosts->Delete() ;
- phos->GetListOfTasks()->Remove(phosts) ;
- }
- phos->Add(tsmaker) ;
- return kTRUE;
-
-}
-//____________________________________________________________________________
-Bool_t AliPHOSGetter::PostTrackSegmentMaker(const char * name) const
-{ //------------Track Segment Maker ------------------------------
-
- // the hierarchy is //Folders/Tasks/Reconstructioner/PHOS/sdigitsname
-
-
- TTask * tasks = dynamic_cast<TTask*>(fTasksFolder->FindObject("Reconstructioner")) ;
-
- if ( !tasks ) {
- cerr << "ERROR: AliPHOSGetter::Post Ter -> Task //" << fTasksFolder << "/Reconstructioner not found!" << endl;
- return kFALSE ;
- }
-
- TTask * phos = dynamic_cast<TTask*>(tasks->GetListOfTasks()->FindObject("PHOS")) ;
- if ( !phos ) {
- if (fDebug) {
- cout <<"WARNING: AliPHOSGetter::Post Rer -> //" << fTasksFolder << "/Reconstructioner/PHOS not found!" << endl;
- cout <<"INFO: AliPHOSGetter::Post Rer -> Adding //" << fTasksFolder << "/Reconstructioner/PHOS" << endl;
- }
- phos = new TTask("PHOS", "") ;
- tasks->Add(phos) ;
- }
-
- TList * l = phos->GetListOfTasks() ;
- TIter it(l) ;
- TString tsn(name);
- TTask * task ;
- while((task = static_cast<TTask *>(it.Next()) )){
- TString taskname(task->GetName()) ;
- if(taskname.BeginsWith(tsn))
- return kTRUE ;
- }
-
- AliPHOSTrackSegmentMakerv1 * phosts = new AliPHOSTrackSegmentMakerv1() ;
- phosts->SetName(tsn) ;
-
- phos->Add(phosts) ;
- return kTRUE;
-
-}
-
-//____________________________________________________________________________
-TObject** AliPHOSGetter::TSMakerRef(const char * name) const
-{ //------------Track Segment Maker ------------------------------
-
- TTask * tasks = dynamic_cast<TTask*>(fTasksFolder->FindObject("Reconstructioner")) ;
-
- if ( !tasks ) {
- cerr << "ERROR: AliPHOSGetter::TSMakerRef -> Task //" << fTasksFolder << "/Reconstructioner not found!" << endl;
- abort() ;
- }
-
- TTask * phos = dynamic_cast<TTask*>(tasks->GetListOfTasks()->FindObject("PHOS")) ;
- if ( !phos ) {
- cerr <<"WARNING: AliPHOSGetter::TSMakerRef -> //" << fTasksFolder << "/Reconstructioner/PHOS not found!" << endl;
- abort() ;
- }
-
- TList * l = phos->GetListOfTasks() ;
- TIter it(l) ;
- TTask * task ;
- TTask * tsm = 0 ;
- TString tsmname(name) ;
- tsmname+=":tsm" ;
- while((task = static_cast<TTask *>(it.Next()) )){
- TString taskname(task->GetName()) ;
- if(taskname.BeginsWith(tsmname)){
- tsm = task ;
- break ;
- }
- }
-
- if(tsm)
- return l->GetObjectRef(tsm) ;
- else {
- cerr << "ERROR: AliPHOSGetter::TSMakerRef -> Task //" << fTasksFolder << "/Reconstructioner/TrackSegmentMarker name not found!" << endl;
- abort() ;
- }
-}
-
-//____________________________________________________________________________
-Bool_t AliPHOSGetter::PostRecParticles(const char * name) const
-{ // -------------------- RecParticles ------------------------
-
- // the hierarchy is //Folders/Run/Event/RecData/PHOS/RecParticles/name
-
- TFolder * phosFolder = dynamic_cast<TFolder*>(fRecoFolder->FindObject("PHOS")) ;
-
- if ( !phosFolder ) {
- if (fDebug) {
- cout << "WARNING: AliPHOSGetter::Post RPa -> Folder //" << fRecoFolder->GetName() << "/PHOS/ not found!" << endl;
- cout << "INFO: AliPHOSGetter::Post Rpa -> Adding Folder //" << fRecoFolder->GetName() << "/PHOS/" << endl;
- }
- phosFolder = fRecoFolder->AddFolder("PHOS", "Reconstructed data from PHOS") ;
- }
-
- TFolder * phosRPaFolder = dynamic_cast<TFolder*>(phosFolder->FindObject("RecParticles")) ;
- if ( !phosRPaFolder ) {
- if (fDebug) {
- cout << "WARNING: AliPHOSGetter::Post RPa -> Folder //" << fRecoFolder->GetName() << "/PHOS/RecParticles/ not found!" << endl;
- cout << "INFO: AliPHOSGetter::Post RPa -> Adding Folder //" << fRecoFolder->GetName() << "/PHOS/RecParticles/" << endl;
- }
- phosRPaFolder = phosFolder->AddFolder("RecParticles", "RecParticles from PHOS") ;
- }
-
- TObject * rps = phosRPaFolder->FindObject( name ) ;
- if ( !rps ) {
- TClonesArray * rp = new TClonesArray("AliPHOSRecParticle",100) ;
- rp->SetName(name) ;
- phosRPaFolder->Add(rp) ;
- }
- return kTRUE;
-}
-
-//____________________________________________________________________________
-TObject** AliPHOSGetter::RecParticlesRef(const char * name) const
-{ // ---------------TrackSegments -----------------------------------