| 63 |
// |
// |
| 64 |
///////////////////////////////////////////////////////////////////////// |
///////////////////////////////////////////////////////////////////////// |
| 65 |
|
|
|
#include <stdlib.h> |
|
|
#include <string.h> |
|
|
#include <ctype.h> |
|
|
#include "Riostream.h" |
|
|
#include "TFile.h" |
|
|
#include "TDirectory.h" |
|
|
#include "TTree.h" |
|
|
#include "TLeafI.h" |
|
|
#include "TH1.h" |
|
|
#include "TH2.h" |
|
|
#include "TProfile.h" |
|
|
#include "TGraph.h" |
|
|
#include "TMath.h" |
|
| 66 |
#include "Digitizer.h" |
#include "Digitizer.h" |
| 67 |
|
|
| 68 |
int Error; //to be removed soon |
using namespace std; |
| 69 |
|
|
| 70 |
|
//int Error; //to be removed soon |
| 71 |
|
|
| 72 |
// Define the names of the Fortran common blocks for the different OSs |
// Define the names of the Fortran common blocks for the different OSs |
| 73 |
|
|
| 264 |
Int_t bufsize = 64000; |
Int_t bufsize = 64000; |
| 265 |
Int_t optcwn = 1; |
Int_t optcwn = 1; |
| 266 |
|
|
| 267 |
|
char *DigitizerInfo(bool print); |
| 268 |
|
|
| 269 |
int main(int argc, char **argv) |
int main(int argc, char **argv) |
| 270 |
|
|
| 271 |
{ |
{ |
| 272 |
|
// char* cha=DigitizerInfo(1); |
| 273 |
|
|
| 274 |
if (argc < 2) { |
if (argc < 2) { |
| 275 |
printf("Error: Pamelagp2Digits \n"); |
printf("Error: Pamelagp2Digits \n"); |
| 276 |
printf("Pamelagp2Digits file.hbook file.root file.pam [compress] [tolower] [lrecl] [bufsize] [optcwn] \n"); |
printf("Pamelagp2Digits file.hbook file.root file.pam [compress] [tolower] [lrecl] [bufsize] [optcwn] \n"); |
| 288 |
void *qq = iq; |
void *qq = iq; |
| 289 |
q = (float*)qq; |
q = (float*)qq; |
| 290 |
char *file_in=argv[1]; |
char *file_in=argv[1]; |
| 291 |
char *file_out = " "; |
char *file_out = new char[512]; |
| 292 |
|
strcpy(file_out," "); |
| 293 |
char *file_raw; |
char *file_raw; |
| 294 |
|
|
| 295 |
Int_t compress = 1; |
Int_t compress = 1; |
| 520 |
} |
} |
| 521 |
h1->SetEntries(nentries); |
h1->SetEntries(nentries); |
| 522 |
h1->Write(); |
h1->Write(); |
| 523 |
delete h1; |
// delete h1; |
| 524 |
|
h1->Delete(); |
| 525 |
} |
} |
| 526 |
//____________________________________________________________________________ |
//____________________________________________________________________________ |
| 527 |
void convert_cwn(Int_t id,char* file_raw) |
void convert_cwn(Int_t id,char* file_raw) |
| 809 |
|
|
| 810 |
tree->Write(); |
tree->Write(); |
| 811 |
|
|
| 812 |
std::cout << "Invoking Digitizer" << endl << flush; |
cout << "Invoking Digitizer" << endl << flush; |
| 813 |
|
const char *ndl[8]; |
| 814 |
Digitizer* dig = new Digitizer(tree,file_raw); |
char *q,*q1; |
| 815 |
|
q=(char*)malloc(5 *sizeof(char)); |
| 816 |
|
q1=(char*)malloc(5 *sizeof(char)); |
| 817 |
|
ndl[0]="nspe"; |
| 818 |
|
ndl[1]="ntof"; |
| 819 |
|
ndl[2]="ncat"; |
| 820 |
|
ndl[3]="ncas"; |
| 821 |
|
ndl[4]="ncar"; |
| 822 |
|
ndl[5]="ncal"; |
| 823 |
|
ndl[6]="nndd"; |
| 824 |
|
ndl[7]="nstr"; |
| 825 |
|
|
| 826 |
|
int nspe=200,ntof=200,ncat=50,ncas=50,ncar=100,ncal=1000,nnd=200,nstr=1000,par[8],tmp=0,t; |
| 827 |
|
par[0]=nspe; |
| 828 |
|
par[1]=ntof; |
| 829 |
|
par[2]=ncat; |
| 830 |
|
par[3]=ncas; |
| 831 |
|
par[4]=ncar; |
| 832 |
|
par[5]=ncal; |
| 833 |
|
par[6]=nnd; |
| 834 |
|
par[7]=nstr; |
| 835 |
|
|
| 836 |
|
ifstream np("vectpar.dat",ios::in); |
| 837 |
|
if(!np)printf("ATTENTION: Using default vector legths!\n"); |
| 838 |
|
else{ |
| 839 |
|
while(!np.eof()){ |
| 840 |
|
np>>q>>tmp; |
| 841 |
|
if(np.eof())break; |
| 842 |
|
if(tmp<=0){ |
| 843 |
|
cout<<"ATTENTION: Length of one vector is negative or equal 0!"<<endl<<q<<"="<<tmp<<endl; |
| 844 |
|
break; |
| 845 |
|
} |
| 846 |
|
t=0; |
| 847 |
|
while(tmp){ |
| 848 |
|
strcpy(q1,ndl[t]); |
| 849 |
|
if(q[0]==q1[0] && q[1]==q1[1] && q[2]==q1[2] && q[3]==q1[3]){ |
| 850 |
|
par[t]=tmp; |
| 851 |
|
tmp=0; |
| 852 |
|
cout<<q<<" "<<par[t]<<"["<<t<<"]"<<endl; |
| 853 |
|
} |
| 854 |
|
t++; |
| 855 |
|
} |
| 856 |
|
} |
| 857 |
|
nspe=par[0]; |
| 858 |
|
ntof=par[1]; |
| 859 |
|
ncat=par[2]; |
| 860 |
|
ncas=par[3]; |
| 861 |
|
ncar=par[4]; |
| 862 |
|
ncal=par[5]; |
| 863 |
|
nnd=par[6]; |
| 864 |
|
nstr=par[7]; |
| 865 |
|
} |
| 866 |
|
Digitizer* dig = new Digitizer(tree,file_raw,nspe,ntof,ncat,ncas,ncar,ncal,nnd,nstr); |
| 867 |
dig->Loop(); |
dig->Loop(); |
| 868 |
dig->Close(); |
dig->Close(); |
| 869 |
|
|
| 870 |
std::cout << "Finished" << endl << flush; |
cout << "Finished" << endl; |
| 871 |
|
|
| 872 |
} |
} |
| 873 |
|
|