ROOT logo
#if !defined(__CINT__) 

#include "AliTPCDDLRawData.h"
#include "AliTPCCompression.h"
#endif


void AliTPCDDLRawData(Int_t eventNumber=0, Int_t LDCsNumber=12){
  AliTPCDDLRawData *util=new AliTPCDDLRawData();
  AliTPCCompression *u=new AliTPCCompression();
  TStopwatch timer;
  static const Int_t NumTable=5;

  util->SetVerbose(1);
  u->SetVerbose(1);  
  
  //The Altro File "AltroFormatDDL.dat" is built from "AliTPCDDL.dat"
  //util->RawDataAltro();
  
  /*
  //The file "AltroFormatDDL.dat" is converted in a txt file "AltroFormatDDL.txt"
  //that is used for debugging
  u->ReadAltroFormat("AltroFormatDDL.txt","AltroFormatDDL.dat");
  */

  /*
  //TABLES CREATION 
  //Tables are created and stored in as sequence of binary files
  u->CreateTables("AltroFormatDDL.dat",NumTable);
  */


  while (eventNumber<=0){
    cout<<"Insert the event number:";
    cin>>eventNumber;
    cout<<endl;
  }

  //SLICE CREATION
  //Slices are built here
  timer.Start();
  util->RawData(LDCsNumber,eventNumber);
  timer.Stop();
  timer.Print();

  /*
  //SLICE CHECKING
  //An Altro File is created from the slides
  cout<<"slice control"<<endl;
  util->RawDataAltroDecode(LDCsNumber,eventNumber,0);
  ///The Altro file AltroDDLRecomposed.dat is converted in a txt file AltroDDLRecomposed.txt
  //This file must be equal to the ones created above.
  u->ReadAltroFormat("AltroDDLRecomposed.txt","AltroDDLRecomposed.dat");
  */
  

  //SLICE COMPRESSION
  cout<<"Slice Compression"<<endl;
  //Slices are compressed here using the tables created above or an optimized set of tables 
  //(Tables file for Huffman coding are required)
  timer.Start();
  util->RawDataCompDecompress(LDCsNumber,eventNumber,0);
  timer.Stop();
  timer.Print();

  /*  
  //SLICE DECOMPRESSION
  timer.Start();
  util->RawDataCompDecompress(LDCsNumber,eventNumber,1);
  timer.Stop();
  timer.Print();
  */
  
  /*
  //SLICE DECOMPRESSED CHECKING  
  //A new Altro file is created from the decompressed slides
  util->RawDataAltroDecode(LDCsNumber,eventNumber,1);
  //Convertion of the Altro file AltroDDLRecomposedDec.dat in a txt file AltroDDLRecomposedDec.txt
  //Useful for debugging
  u->ReadAltroFormat("AltroDDLRecomposedDec.txt","AltroDDLRecomposedDec.dat");
  */
  delete util;
  delete u;
  return;
}
 AliTPCDDLRawData.C:1
 AliTPCDDLRawData.C:2
 AliTPCDDLRawData.C:3
 AliTPCDDLRawData.C:4
 AliTPCDDLRawData.C:5
 AliTPCDDLRawData.C:6
 AliTPCDDLRawData.C:7
 AliTPCDDLRawData.C:8
 AliTPCDDLRawData.C:9
 AliTPCDDLRawData.C:10
 AliTPCDDLRawData.C:11
 AliTPCDDLRawData.C:12
 AliTPCDDLRawData.C:13
 AliTPCDDLRawData.C:14
 AliTPCDDLRawData.C:15
 AliTPCDDLRawData.C:16
 AliTPCDDLRawData.C:17
 AliTPCDDLRawData.C:18
 AliTPCDDLRawData.C:19
 AliTPCDDLRawData.C:20
 AliTPCDDLRawData.C:21
 AliTPCDDLRawData.C:22
 AliTPCDDLRawData.C:23
 AliTPCDDLRawData.C:24
 AliTPCDDLRawData.C:25
 AliTPCDDLRawData.C:26
 AliTPCDDLRawData.C:27
 AliTPCDDLRawData.C:28
 AliTPCDDLRawData.C:29
 AliTPCDDLRawData.C:30
 AliTPCDDLRawData.C:31
 AliTPCDDLRawData.C:32
 AliTPCDDLRawData.C:33
 AliTPCDDLRawData.C:34
 AliTPCDDLRawData.C:35
 AliTPCDDLRawData.C:36
 AliTPCDDLRawData.C:37
 AliTPCDDLRawData.C:38
 AliTPCDDLRawData.C:39
 AliTPCDDLRawData.C:40
 AliTPCDDLRawData.C:41
 AliTPCDDLRawData.C:42
 AliTPCDDLRawData.C:43
 AliTPCDDLRawData.C:44
 AliTPCDDLRawData.C:45
 AliTPCDDLRawData.C:46
 AliTPCDDLRawData.C:47
 AliTPCDDLRawData.C:48
 AliTPCDDLRawData.C:49
 AliTPCDDLRawData.C:50
 AliTPCDDLRawData.C:51
 AliTPCDDLRawData.C:52
 AliTPCDDLRawData.C:53
 AliTPCDDLRawData.C:54
 AliTPCDDLRawData.C:55
 AliTPCDDLRawData.C:56
 AliTPCDDLRawData.C:57
 AliTPCDDLRawData.C:58
 AliTPCDDLRawData.C:59
 AliTPCDDLRawData.C:60
 AliTPCDDLRawData.C:61
 AliTPCDDLRawData.C:62
 AliTPCDDLRawData.C:63
 AliTPCDDLRawData.C:64
 AliTPCDDLRawData.C:65
 AliTPCDDLRawData.C:66
 AliTPCDDLRawData.C:67
 AliTPCDDLRawData.C:68
 AliTPCDDLRawData.C:69
 AliTPCDDLRawData.C:70
 AliTPCDDLRawData.C:71
 AliTPCDDLRawData.C:72
 AliTPCDDLRawData.C:73
 AliTPCDDLRawData.C:74
 AliTPCDDLRawData.C:75
 AliTPCDDLRawData.C:76
 AliTPCDDLRawData.C:77
 AliTPCDDLRawData.C:78
 AliTPCDDLRawData.C:79
 AliTPCDDLRawData.C:80
 AliTPCDDLRawData.C:81
 AliTPCDDLRawData.C:82
 AliTPCDDLRawData.C:83
 AliTPCDDLRawData.C:84
 AliTPCDDLRawData.C:85
 AliTPCDDLRawData.C:86