diff --git a/examples/moench03_T1_lab.config b/examples/moench03_T1_lab.config index a8eb078a5..f26397b8f 100644 --- a/examples/moench03_T1_lab.config +++ b/examples/moench03_T1_lab.config @@ -477,7 +477,7 @@ adcphase 90 adcpipeline 15 adcreg 14 40 powerchip 1 -vhighvoltage 90 +vhighvoltage 200 period 0.005 diff --git a/slsDetectorCalibration/singlePhotonDetector.h b/slsDetectorCalibration/singlePhotonDetector.h index a3cb7f318..b07e48658 100644 --- a/slsDetectorCalibration/singlePhotonDetector.h +++ b/slsDetectorCalibration/singlePhotonDetector.h @@ -397,10 +397,12 @@ int *getClusters(char *data, int *ph=NULL) { for (int ir=-(clusterSizeY/2); ir<(clusterSizeY/2)+1; ir++) { for (int ic=-(clusterSize/2); ic<(clusterSize/2)+1; ic++) { - if ((iy+ir)>=0 && (iy+ir)>=iy && (iy+ir)=0 &&(ix+ic)>=ix && (ix+ic)set_data(val[iy+ir][ix+ic],ic,ir); - + if ((iy+ir)>=0 && (iy+ir)=0 && (ix+ic)=iy &&(ix+ic)>=ix) + val[iy+ir][ix+ic]=subtractPedestal(data,ix+ic,iy+ir, cm); + + (clusters+nph)->set_data(val[iy+ir][ix+ic],ic,ir); + v=&(val[iy+ir][ix+ic]); tot+=*v; if (ir<=0 && ic<=0) diff --git a/slsDetectorCalibration/single_photon_hit.h b/slsDetectorCalibration/single_photon_hit.h index cbda00724..ed76e2b56 100644 --- a/slsDetectorCalibration/single_photon_hit.h +++ b/slsDetectorCalibration/single_photon_hit.h @@ -44,8 +44,8 @@ class single_photon_hit { //#endif #ifndef WRITE_QUAD //printf("no quad "); - if (fwrite((void*)&x, 2, sizeof(int16_t), myFile)) - return fwrite((void*)data, 1, dx*dy*sizeof(int), myFile); + if (fwrite((void*)&x, sizeof(int16_t), 2, myFile)) + return fwrite((void*)data, sizeof(int),dx*dy, myFile); #endif #ifdef WRITE_QUAD // printf("quad "); @@ -91,8 +91,8 @@ class single_photon_hit { default: ; } - if (fwrite((void*)&x, 2, sizeof(int16_t), myFile)) - return fwrite((void*)qq, 1, 4*sizeof(int), myFile); + if (fwrite((void*)&x, sizeof(int16_t), 2, myFile)) + return fwrite((void*)qq, sizeof(int), 4, myFile); #endif return 0; }; @@ -110,13 +110,13 @@ class single_photon_hit { #ifndef WRITE_QUAD // printf( "no quad \n"); if (fread((void*)&x, 2, sizeof(int16_t), myFile)) - return fread((void*)data, 1, dx*dy*sizeof(int), myFile); + return fread((void*)data,sizeof(int), dx*dy, myFile); #endif #ifdef WRITE_QUAD int qq[4]; // printf( "quad \n"); - if (fread((void*)&x, 2, sizeof(int16_t), myFile)) - if (fread((void*)qq, 1, 4*sizeof(int), myFile)) { + if (fread((void*)&x, sizeof(int16_t), 2, myFile)) + if (fread((void*)qq, sizeof(int), 4, myFile)) { quad=TOP_RIGHT; int mm=qq[0]; @@ -210,7 +210,10 @@ class single_photon_hit { }; void print() { - +#ifdef WRITE_QUAD + + printf("Q"); +#endif // int ix, iy; printf("*** %d %d %d\n",iframe, x, y); for (int iy=0; iy