ROOT logo
#if !defined(__CINT__)
#include <Riostream.h>
#include "AliITSDDLRawData.h"
#include "AliRunLoader.h"
#include "AliLoader.h"
#include "AliITS.h"
#endif

//DigitsFile is the input file that contains digits

void AliITSDDLRawData(Int_t eventNumber=0){

  Int_t spdLDCs=2;
  Int_t sddLDCs=4;
  Int_t ssdLDCs=2;
  Int_t eventn=0;
  const char * inFile_new = "galice.root";
  AliRunLoader *rl = AliRunLoader::Open(inFile_new,"Event","read");
  rl->LoadgAlice();
  gAlice=rl->GetAliRun();
  Int_t nevents=rl->GetNumberOfEvents();
  cout<<"Number of Events:"<<nevents<<endl;
  while (eventNumber<=0 || eventNumber>nevents){
    cout<<"Insert the event number:";
    cin>>eventNumber;
    cout<<endl;
  }
  rl->GetEvent(eventNumber-1);
  AliLoader *itsloader=rl->GetLoader("ITSLoader");
  itsloader->LoadDigits();
  TTree *TD=itsloader->TreeD();
  gAlice=rl->GetAliRun(); 
  if(!gAlice){
    cout<<"gAlice is null"<<endl;
    return;
  } 
  AliITS *ITS  = (AliITS*)gAlice->GetDetector("ITS");

  Int_t nmodules;
  ITS->InitModules(-1,nmodules);
  ITS->GetDetTypeSim()->SetTreeAddressD(TD,"ITS");

    AliITSDDLRawData *util=new AliITSDDLRawData();
    //Verbose level
    // 0: Silent
    // 1: cout messages
    // 2: txt files with digits 
    //BE CAREFUL, verbose level 2 MUST be used only for debugging and
    //it is highly suggested to use this mode only for debugging digits files
    //reasonably small, because otherwise the size of the txt files can reach
    //quickly several MB wasting time and disk space.
    util->SetVerbose(0);
    TStopwatch timer;
    
    //SILICON PIXEL DETECTOR
    cout<<"Formatting data for SPD"<<endl;
    timer.Start();
    util->RawDataSPD(ITS,TD,spdLDCs,eventNumber);
    timer.Stop();
    timer.Print();
    //ONLY FOR DEBUGGING 
    //    util->TestFormat(eventNumber);
    
    //SILICON DRIFT DETECTOR
    cout<<"Formatting data for SDD"<<endl;
    timer.Start();
    util->RawDataSDD(ITS,TD,sddLDCs,eventNumber);
    timer.Stop();
    timer.Print();
    
    //SILICON STRIP DETECTOR
    cout<<"Formatting data for SSD"<<endl;
    timer.Start();
    util->RawDataSSD(ITS,TD,ssdLDCs,eventNumber);
    timer.Stop();
    timer.Print();
    
    delete util;

    return;
}
 AliITSDDLRawData.C:1
 AliITSDDLRawData.C:2
 AliITSDDLRawData.C:3
 AliITSDDLRawData.C:4
 AliITSDDLRawData.C:5
 AliITSDDLRawData.C:6
 AliITSDDLRawData.C:7
 AliITSDDLRawData.C:8
 AliITSDDLRawData.C:9
 AliITSDDLRawData.C:10
 AliITSDDLRawData.C:11
 AliITSDDLRawData.C:12
 AliITSDDLRawData.C:13
 AliITSDDLRawData.C:14
 AliITSDDLRawData.C:15
 AliITSDDLRawData.C:16
 AliITSDDLRawData.C:17
 AliITSDDLRawData.C:18
 AliITSDDLRawData.C:19
 AliITSDDLRawData.C:20
 AliITSDDLRawData.C:21
 AliITSDDLRawData.C:22
 AliITSDDLRawData.C:23
 AliITSDDLRawData.C:24
 AliITSDDLRawData.C:25
 AliITSDDLRawData.C:26
 AliITSDDLRawData.C:27
 AliITSDDLRawData.C:28
 AliITSDDLRawData.C:29
 AliITSDDLRawData.C:30
 AliITSDDLRawData.C:31
 AliITSDDLRawData.C:32
 AliITSDDLRawData.C:33
 AliITSDDLRawData.C:34
 AliITSDDLRawData.C:35
 AliITSDDLRawData.C:36
 AliITSDDLRawData.C:37
 AliITSDDLRawData.C:38
 AliITSDDLRawData.C:39
 AliITSDDLRawData.C:40
 AliITSDDLRawData.C:41
 AliITSDDLRawData.C:42
 AliITSDDLRawData.C:43
 AliITSDDLRawData.C:44
 AliITSDDLRawData.C:45
 AliITSDDLRawData.C:46
 AliITSDDLRawData.C:47
 AliITSDDLRawData.C:48
 AliITSDDLRawData.C:49
 AliITSDDLRawData.C:50
 AliITSDDLRawData.C:51
 AliITSDDLRawData.C:52
 AliITSDDLRawData.C:53
 AliITSDDLRawData.C:54
 AliITSDDLRawData.C:55
 AliITSDDLRawData.C:56
 AliITSDDLRawData.C:57
 AliITSDDLRawData.C:58
 AliITSDDLRawData.C:59
 AliITSDDLRawData.C:60
 AliITSDDLRawData.C:61
 AliITSDDLRawData.C:62
 AliITSDDLRawData.C:63
 AliITSDDLRawData.C:64
 AliITSDDLRawData.C:65
 AliITSDDLRawData.C:66
 AliITSDDLRawData.C:67
 AliITSDDLRawData.C:68
 AliITSDDLRawData.C:69
 AliITSDDLRawData.C:70
 AliITSDDLRawData.C:71
 AliITSDDLRawData.C:72
 AliITSDDLRawData.C:73
 AliITSDDLRawData.C:74
 AliITSDDLRawData.C:75
 AliITSDDLRawData.C:76
 AliITSDDLRawData.C:77
 AliITSDDLRawData.C:78
 AliITSDDLRawData.C:79
 AliITSDDLRawData.C:80
 AliITSDDLRawData.C:81
 AliITSDDLRawData.C:82