ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

// $Id$

// Macro to generate histograms from digits
// By E. Sicking, CERN


void digitsPHOS(Int_t nevents, Int_t nfiles)
{

 TH1F * hadc = new TH1F ("hadc", "hadc", 100, -10, 200);
 TH1F * hadcLog = new TH1F ("hadclog", "hadclog", 100, -2, 4);
 AliRunLoader* runLoader = AliRunLoader::Open("galice.root","Event","READ");
 AliPHOSLoader * phosLoader = dynamic_cast<AliPHOSLoader*>(runLoader->GetLoader("PHOSLoader"));
 
 for (Int_t ievent=0; ievent <nevents; ievent++) {
  // for (Int_t ievent = 0; ievent < runLoader->GetNumberOfEvents(); ievent++) {
   runLoader->GetEvent(ievent) ;
   phosLoader->CleanDigits() ; 
   phosLoader->LoadDigits("READ") ;
   TClonesArray * digits    = phosLoader->Digits() ;
   printf("Event %d contains %d digits\n",ievent,digits->GetEntriesFast());
   
   
   for (Int_t j = 0; j < digits->GetEntries(); j++) {
     
     AliPHOSDigit* dig = dynamic_cast<AliPHOSDigit*> (digits->At(j));
     //cout << dig->GetEnergy() << endl;
     hadc->Fill(dig->GetEnergy());
     if(dig->GetEnergy()>0)
       hadcLog->Fill(TMath::Log10(dig->GetEnergy()));
     
   }
   
 }
 
 TFile fc("digits.PHOS.root","RECREATE");
 fc.cd();
 hadc->Write();
 hadcLog->Write();
 fc.Close();


}
 digitsPHOS.C:1
 digitsPHOS.C:2
 digitsPHOS.C:3
 digitsPHOS.C:4
 digitsPHOS.C:5
 digitsPHOS.C:6
 digitsPHOS.C:7
 digitsPHOS.C:8
 digitsPHOS.C:9
 digitsPHOS.C:10
 digitsPHOS.C:11
 digitsPHOS.C:12
 digitsPHOS.C:13
 digitsPHOS.C:14
 digitsPHOS.C:15
 digitsPHOS.C:16
 digitsPHOS.C:17
 digitsPHOS.C:18
 digitsPHOS.C:19
 digitsPHOS.C:20
 digitsPHOS.C:21
 digitsPHOS.C:22
 digitsPHOS.C:23
 digitsPHOS.C:24
 digitsPHOS.C:25
 digitsPHOS.C:26
 digitsPHOS.C:27
 digitsPHOS.C:28
 digitsPHOS.C:29
 digitsPHOS.C:30
 digitsPHOS.C:31
 digitsPHOS.C:32
 digitsPHOS.C:33
 digitsPHOS.C:34
 digitsPHOS.C:35
 digitsPHOS.C:36
 digitsPHOS.C:37
 digitsPHOS.C:38
 digitsPHOS.C:39
 digitsPHOS.C:40
 digitsPHOS.C:41
 digitsPHOS.C:42
 digitsPHOS.C:43
 digitsPHOS.C:44
 digitsPHOS.C:45
 digitsPHOS.C:46
 digitsPHOS.C:47
 digitsPHOS.C:48
 digitsPHOS.C:49
 digitsPHOS.C:50
 digitsPHOS.C:51
 digitsPHOS.C:52
 digitsPHOS.C:53
 digitsPHOS.C:54
 digitsPHOS.C:55
 digitsPHOS.C:56
 digitsPHOS.C:57
 digitsPHOS.C:58
 digitsPHOS.C:59