checkTBPed.cxx
00001 #include "araIcrrStructures.h" 00002 #include <zlib.h> 00003 #include <iostream> 00004 #include <fstream> 00005 00006 int fileExists(char *fileName); 00007 int pedFileValid(char *fileName); 00008 00009 int main(int argc, char **argv){ 00010 00011 if(argc<2){ 00012 fprintf(stderr, "Usage: %s <pedFileName>\n", argv[0]); 00013 return -1; 00014 } 00015 00016 00017 if(!pedFileValid(argv[1])){ 00018 fprintf(stderr, "pedFile not valid\n%s\n", argv[1]); 00019 return -1; 00020 00021 } 00022 00023 00024 return 0; 00025 00026 } 00027 00028 int pedFileValid(char *fileName){ 00029 if(!fileExists(fileName)){ 00030 00031 return 0; 00032 00033 } 00034 00035 FullLabChipPedStruct_t peds; 00036 gzFile inPedTB = gzopen(fileName,"r"); 00037 int nRead = gzread(inPedTB,&peds,sizeof(FullLabChipPedStruct_t)); 00038 if( nRead != sizeof(FullLabChipPedStruct_t)){ 00039 int numErr; 00040 fprintf(stderr,"ERROR - Error reading pedestal file %s; %s\n",fileName,gzerror(inPedTB,&numErr)); 00041 gzclose(inPedTB); 00042 return 0; 00043 } 00044 // fprintf(stderr, "nRead %i size %i\n", nRead, sizeof(FullLabChipPedStruct_t));//DEBUG 00045 00046 int chip,chan,samp; 00047 float pedestalData[ICRR_NO_STATIONS][LAB3_PER_ICRR][CHANNELS_PER_LAB3][MAX_NUMBER_SAMPLES_LAB3]; 00048 for(chip=0;chip<LAB3_PER_ICRR;++chip) { 00049 for(chan=0;chan<CHANNELS_PER_LAB3;++chan) { 00050 fprintf(stderr, "%i %i\t", chip, chanx); 00051 int chanIndex = chip*CHANNELS_PER_LAB3+chan; 00052 for(samp=0;samp<MAX_NUMBER_SAMPLES_LAB3;++samp) { 00053 pedestalData[0][chip][chan][samp]=peds.chan[chanIndex].pedMean[samp]; 00054 fprintf(stderr, "%f ", pedestalData[0][chip][chan][samp]); 00055 } 00056 fprintf(stderr, "\n"); 00057 } 00058 } 00059 00060 00061 00062 00063 00064 gzclose(inPedTB); 00065 00066 00067 return 1; 00068 00069 } 00070 int fileExists(char *fileName){ 00071 FILE *fp = fopen(fileName, "r"); 00072 if(fp){ 00073 fclose(fp); 00074 return 1; 00075 } 00076 return 0; 00077 00078 }
Generated on Mon Dec 9 13:20:22 2013 for ARA ROOT v3.13 Software by
