| /cvi/apps/RedPitaya/soccli/redpitaya_gui.h |
|---|
| 34,62 → 34,60 |
| #define PANEL_SAMPLES 19 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NTOTAL 20 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NEVE 21 /* control type: numeric, callback function: (none) */ |
| #define PANEL_CTIME 22 /* control type: numeric, callback function: (none) */ |
| #define PANEL_CDAQTIME 23 /* control type: numeric, callback function: (none) */ |
| #define PANEL_CEVE 24 /* control type: numeric, callback function: (none) */ |
| #define PANEL_ADC2 25 /* control type: graph, callback function: (none) */ |
| #define PANEL_TDC2 26 /* control type: graph, callback function: (none) */ |
| #define PANEL_ADC1 27 /* control type: graph, callback function: (none) */ |
| #define PANEL_TDC1 28 /* control type: graph, callback function: (none) */ |
| #define PANEL_DECIMATION 29 /* control type: ring, callback function: (none) */ |
| #define PANEL_TRIGGER 30 /* control type: ring, callback function: (none) */ |
| #define PANEL_OUTWAVE 31 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_ENABLEDOUTPUT 32 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_DEBUG 33 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_CH1 34 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_GRAPH 35 /* control type: graph, callback function: (none) */ |
| #define PANEL_CH0 36 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_TEXTMSG 37 /* control type: textMsg, callback function: (none) */ |
| #define PANEL_STDIO 38 /* control type: textBox, callback function: (none) */ |
| #define PANEL_MAXX_3 39 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_3 40 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_3 41 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_4 42 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_4 43 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_4 44 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_2 45 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_2 46 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_2 47 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_6 48 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_6 49 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_10 50 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_10 51 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_9 52 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_9 53 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_8 54 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_8 55 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_7 56 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_7 57 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_5 58 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_5 59 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_AUTOY_5 60 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_1 61 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_1 62 /* control type: numeric, callback function: (none) */ |
| #define PANEL_AUTOY_4 63 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_NCH_1 64 /* control type: numeric, callback function: (none) */ |
| #define PANEL_CONNECT 65 /* control type: textButton, callback function: StartCB */ |
| #define PANEL_AUTOY_3 66 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_AUTOY_2 67 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_START 68 /* control type: textButton, callback function: StartCB */ |
| #define PANEL_ADCTYPE 69 /* control type: binary, callback function: (none) */ |
| #define PANEL_AUTOY 70 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_LOGY_4 71 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_LOGY_3 72 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_LOGY_2 73 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_EXCLUDE_2 74 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_EXCLUDE_1 75 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_LOGY_1 76 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_AUTOX 77 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_CEVE 22 /* control type: numeric, callback function: (none) */ |
| #define PANEL_ADC2 23 /* control type: graph, callback function: (none) */ |
| #define PANEL_TDC2 24 /* control type: graph, callback function: (none) */ |
| #define PANEL_ADC1 25 /* control type: graph, callback function: (none) */ |
| #define PANEL_TDC1 26 /* control type: graph, callback function: (none) */ |
| #define PANEL_DECIMATION 27 /* control type: ring, callback function: (none) */ |
| #define PANEL_TRIGGER 28 /* control type: ring, callback function: (none) */ |
| #define PANEL_OUTWAVE 29 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_ENABLEDOUTPUT 30 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_DEBUG 31 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_CH1 32 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_GRAPH 33 /* control type: graph, callback function: (none) */ |
| #define PANEL_CH0 34 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_TEXTMSG 35 /* control type: textMsg, callback function: (none) */ |
| #define PANEL_STDIO 36 /* control type: textBox, callback function: (none) */ |
| #define PANEL_MAXX_3 37 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_3 38 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_3 39 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_4 40 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_4 41 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_4 42 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_2 43 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_2 44 /* control type: numeric, callback function: (none) */ |
| #define PANEL_NCH_2 45 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MAXX_6 46 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_6 47 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_10 48 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_10 49 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_9 50 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_9 51 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_8 52 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_8 53 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_7 54 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_7 55 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_5 56 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MINX_5 57 /* control type: numeric, callback function: SetGraphPropertiesCB */ |
| #define PANEL_AUTOY_5 58 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_MAXX_1 59 /* control type: numeric, callback function: (none) */ |
| #define PANEL_MINX_1 60 /* control type: numeric, callback function: (none) */ |
| #define PANEL_AUTOY_4 61 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_NCH_1 62 /* control type: numeric, callback function: (none) */ |
| #define PANEL_CONNECT 63 /* control type: textButton, callback function: StartCB */ |
| #define PANEL_AUTOY_3 64 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_AUTOY_2 65 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_START 66 /* control type: textButton, callback function: StartCB */ |
| #define PANEL_ADCTYPE 67 /* control type: binary, callback function: (none) */ |
| #define PANEL_AUTOY 68 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| #define PANEL_LOGY_4 69 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_LOGY_3 70 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_LOGY_2 71 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_EXCLUDE_2 72 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_EXCLUDE_1 73 /* control type: radioButton, callback function: (none) */ |
| #define PANEL_LOGY_1 74 /* control type: radioButton, callback function: SetGraphLogYCB */ |
| #define PANEL_AUTOX 75 /* control type: radioButton, callback function: SetGraphPropertiesCB */ |
| /* Control Arrays: */ |
| /cvi/apps/RedPitaya/soccli/redpitaya_gui.uir |
|---|
| Cannot display: file marked as a binary type. |
| svn:mime-type = application/octet-stream |
| /cvi/apps/RedPitaya/soccli/soccli.c |
|---|
| 22,7 → 22,7 |
| static int plothandle[2]= {0,0}; |
| static int tdcplothandle[2]= {0,0}; |
| static int adcplothandle[2]= {0,0}; |
| static int excludefirst[2]= {0,0}; |
| static int excludefirst[2]= {0,0}; |
| int debug ; |
| int initialized = 0; |
| #define MAX_THREADS 10 |
| 30,8 → 30,6 |
| int adctype; |
| float athreshold, twin0,twin1; |
| float timebins[0XFFFF]; |
| float daqtime; |
| double starttime; |
| FILE *foutput; |
| int outwaveforms=0; |
| 58,7 → 56,7 |
| switch (type) { |
| case 0: |
| case 1: |
| sprintf(filename,"%s_%d.root",fname, hid); |
| sprintf(filename,"%s_%d.root",fname, hid); |
| fp =fopen(filename,"wb"); |
| if (fp) { |
| H1D_Write2File(hid,fp); |
| 79,7 → 77,7 |
| fclose(fp); |
| printf("Histogram %d exported to %s\n", hid, filename); |
| } |
| break; |
| } |
| 100,8 → 98,9 |
| SetSleepPolicy(VAL_SLEEP_MORE); |
| CmtNewThreadPool (MAX_THREADS, &poolHandle); |
| //printf("size of double = %d\n",sizeof(double)); |
| //for (int i=0;i<1000;i++) H1D_Fill(1,i,i); |
| //H1D_Draw(1,panelHandle,PANEL_ADC1,&adcplothandle[0]); |
| printf("size of double = %d\n",sizeof(double)); |
| DisplayPanel (panelHandle); |
| RunUserInterface (); |
| DiscardPanel (panelHandle); |
| 134,95 → 133,91 |
| int CVICALLBACK SetGraphLogYCB (int panel, int control, int event, |
| void *callbackData, int eventData1, int eventData2) { |
| int cid=0; |
| int logy=0; |
| switch (event) { |
| case EVENT_COMMIT: |
| GetCtrlVal(panel,control, &logy); |
| switch (control) { |
| case PANEL_LOGY_1: |
| cid = PANEL_TDC1; |
| break; |
| case PANEL_LOGY_2: |
| cid = PANEL_ADC1; |
| break; |
| case PANEL_LOGY_3: |
| cid = PANEL_TDC2; |
| break; |
| case PANEL_LOGY_4: |
| cid = PANEL_ADC2; |
| break; |
| } |
| if (logy) SetCtrlAttribute (panel, cid, ATTR_YMAP_MODE, VAL_LOG); |
| else SetCtrlAttribute (panel, cid, ATTR_YMAP_MODE, VAL_LINEAR); |
| break; |
| } |
| return 0; |
| void *callbackData, int eventData1, int eventData2) |
| { |
| int cid=0; |
| int logy=0; |
| switch (event) |
| { |
| case EVENT_COMMIT: |
| GetCtrlVal(panel,control, &logy); |
| switch (control){ |
| case PANEL_LOGY_1: cid = PANEL_TDC1; break; |
| case PANEL_LOGY_2: cid = PANEL_ADC1; break; |
| case PANEL_LOGY_3: cid = PANEL_TDC2; break; |
| case PANEL_LOGY_4: cid = PANEL_ADC2; break; |
| } |
| if (logy) SetCtrlAttribute (panel, cid, ATTR_YMAP_MODE, VAL_LOG); |
| else SetCtrlAttribute (panel, cid, ATTR_YMAP_MODE, VAL_LINEAR); |
| break; |
| } |
| return 0; |
| } |
| int CVICALLBACK SetGraphPropertiesCB (int panel, int control, int event, |
| void *callbackData, int eventData1, int eventData2) { |
| void *callbackData, int eventData1, int eventData2) |
| { |
| float min, max; |
| int autoscale; |
| switch (event) { |
| case EVENT_COMMIT: |
| GetCtrlVal(panelHandle,PANEL_MINX_5, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_5, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| float min, max; |
| int autoscale; |
| switch (event) |
| { |
| case EVENT_COMMIT: |
| GetCtrlVal(panelHandle,PANEL_MINX_5, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_5, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_6, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_6, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOX, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_BOTTOM_XAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_BOTTOM_XAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_6, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_6, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOX, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_BOTTOM_XAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_GRAPH, VAL_BOTTOM_XAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_7, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_7, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_2, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_TDC1, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_TDC1, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_8, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_8, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_3, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_ADC1, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_ADC1, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_9, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_9, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_4, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_TDC2, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_TDC2, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_10, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_10, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_5, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_ADC2, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_ADC2, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_7, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_7, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_2, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_TDC1, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_TDC1, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_8, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_8, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_3, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_ADC1, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_ADC1, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_9, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_9, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_4, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_TDC2, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_TDC2, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| GetCtrlVal(panelHandle,PANEL_MINX_10, &min); |
| GetCtrlVal(panelHandle,PANEL_MAXX_10, &max); |
| GetCtrlVal(panelHandle,PANEL_AUTOY_5, &autoscale); |
| if (autoscale) |
| SetAxisScalingMode (panelHandle, PANEL_ADC2, VAL_LEFT_YAXIS, VAL_AUTOSCALE, min, max); |
| else |
| SetAxisScalingMode (panelHandle, PANEL_ADC2, VAL_LEFT_YAXIS, VAL_MANUAL, min, max); |
| break; |
| } |
| return 0; |
| break; |
| } |
| return 0; |
| } |
| 271,13 → 266,13 |
| SetCtrlAttribute (panelHandle, PANEL_TDC1, ATTR_YNAME, H1D_GetTitleY(3) ); |
| SetCtrlAttribute (panelHandle, PANEL_TDC2, ATTR_XNAME, H1D_GetTitleX(4) ); |
| SetCtrlAttribute (panelHandle, PANEL_TDC2, ATTR_YNAME, H1D_GetTitleY(4) ); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_1, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_2, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_3, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_4, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_1, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_2, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_3, EVENT_COMMIT,NULL,0,0); |
| SetGraphLogYCB( panelHandle, PANEL_LOGY_4, EVENT_COMMIT,NULL,0,0); |
| SetGraphPropertiesCB( panelHandle, PANEL, EVENT_COMMIT,NULL,0,0); |
| SetCtrlAttribute (panelHandle, PANEL_GRAPH, ATTR_LABEL_TEXT , "sampling adc data"); |
| SetCtrlAttribute (panelHandle, PANEL_GRAPH, ATTR_XNAME, "t(us)" ); |
| SetCtrlAttribute (panelHandle, PANEL_GRAPH, ATTR_YNAME, "U(V)" ); |
| 285,7 → 280,7 |
| GetCtrlVal(panelHandle,PANEL_TWIN0, &twin0); |
| GetCtrlVal(panelHandle,PANEL_TWIN1, &twin1); |
| GetCtrlVal(panelHandle,PANEL_ADCTYPE, &adctype); |
| GetCtrlVal(panelHandle,PANEL_ITRGLEVEL , &athreshold); |
| GetCtrlVal(panelHandle,PANEL_ITRGLEVEL , &athreshold); |
| return 0; |
| } |
| 301,11 → 296,6 |
| static float qdc = 0; |
| *ninfo = 0; |
| printf("Run HDR LEN=%d NEVE=%d dt=%f adc=%f qdc=%f\n", ibuf[0],ibuf[1],fbuf[2],adc,qdc); |
| daqtime += fbuf[2]; |
| SetCtrlVal(panelHandle, PANEL_CDAQTIME,daqtime); |
| SetCtrlVal(panelHandle, PANEL_CTIME, Timer() -starttime); |
| daqtime =0; |
| while (nr<nb) { |
| int recid = *data++; |
| 347,36 → 337,36 |
| adc=10000; |
| qdc=0; |
| int nqdc=0; |
| int ntdc=0; |
| int ntdc=0; |
| for (int k=1; k<nsamples; k++) { |
| float t =timebins[k]; |
| float tp=timebins[k-1]; |
| if (fdata[k] < adc) adc = fdata[k]; |
| if (t>twin0 && t<twin1 ) { |
| nqdc++; |
| nqdc++; |
| qdc+=fdata[k]; |
| } |
| } |
| if (fdata[k]< athreshold && fdata[k-1]> athreshold) { |
| double t0= tp+(athreshold-fdata[k-1])/(fdata[k]-fdata[k-1])* (t-tp); |
| if (ntdc>0) H1D_Fill(3+id, t0,1); |
| if (ntdc==0 && !excludefirst[id]) H1D_Fill(3+id, t0,1); |
| finfo[*ninfo+4+ntdc]=t0; |
| ntdc++; |
| finfo[*ninfo+4+ntdc]=t0; |
| ntdc++; |
| } |
| } |
| if (nqdc) qdc/=nqdc; |
| //printf("adc %f qdc %f\n", adc,qdc); |
| info[*ninfo]=(ntdc+4)*sizeof(int); // len |
| info[*ninfo+1]=id | 0xF0000000; // recid |
| finfo[*ninfo+2]=adc; |
| finfo[*ninfo+3]=qdc; |
| *ninfo+= ntdc+4; |
| info[*ninfo]=(ntdc+4)*sizeof(int); // len |
| info[*ninfo+1]=id | 0xF0000000; // recid |
| finfo[*ninfo+2]=adc; |
| finfo[*ninfo+3]=qdc; |
| *ninfo+= ntdc+4; |
| if (adctype) |
| H1D_Fill(1+id, -adc,1); |
| else |
| H1D_Fill(1+id, -qdc,1); |
| nr+=4*nsamples; |
| data+=nsamples; |
| } |
| 424,7 → 414,7 |
| } |
| if (debug) printf("Received RECID %d HDRLEN %d == read %d\n", hdr[0], size, nb); |
| int ninfo=0; |
| int ninfo=0; |
| switch (hdr[0]) { |
| case 0: |
| data[nb]=0; |
| 434,18 → 424,18 |
| GetCtrlVal(panelHandle,PANEL_CEVE , &event); |
| GetCtrlVal(panelHandle,PANEL_NTOTAL , &ncalls); |
| event += analyse(nb,data, evinfo, &ninfo); |
| if (foutput) { |
| if (outwaveforms) fwrite(data, 1, nb, foutput); |
| fwrite(evinfo, 1, ninfo*sizeof(int), foutput); |
| time(&t1); |
| if ((t1-t0)>10000) { |
| for (int i=0; i<4; i++) H1D_Write2File(1+i,foutput); |
| time(&t0); |
| } |
| } |
| if (outwaveforms) fwrite(data, 1, nb, foutput); |
| fwrite(evinfo, 1, ninfo*sizeof(int), foutput); |
| time(&t1); |
| if ((t1-t0)>10000) { |
| for (int i=0;i<4;i++) H1D_Write2File(1+i,foutput); |
| time(&t0); |
| } |
| } |
| SetCtrlVal(panelHandle,PANEL_CEVE , event); |
| if (event>=ncalls) StartCB (panelHandle, PANEL_START, EVENT_COMMIT, NULL,1,0); |
| 461,23 → 451,17 |
| return 0; |
| } |
| int rpdecimation(int i) { |
| int rpdecimation(int i){ |
| switch (i) { |
| case 1: |
| return 0; |
| case 8: |
| return 1; |
| case 64: |
| return 2; |
| case 1024: |
| return 3; |
| case 8192: |
| return 4; |
| case 65536: |
| return 5; |
| } |
| return 0; |
| switch (i){ |
| case 1: return 0; |
| case 8: return 1; |
| case 64: return 2; |
| case 1024: return 3; |
| case 8192: return 4; |
| case 65536: return 5; |
| } |
| return 0; |
| } |
| 510,7 → 494,7 |
| GetCtrlVal(panel,PANEL_DEBUG , &debug); |
| GetCtrlVal(panel,PANEL_NBEFORE , &nbefore); |
| GetCtrlVal(panel,PANEL_ENABLEDOUTPUT, &output); |
| GetCtrlVal(panel,PANEL_OUTWAVE, &outwaveforms); |
| GetCtrlVal(panel,PANEL_OUTWAVE, &outwaveforms); |
| GetCtrlVal(panel,PANEL_FILENAME, filename); |
| delay= MINTRGDELAY + nsamples - nbefore + 1; |
| 522,8 → 506,8 |
| double level =0; |
| GetCtrlVal(panel,PANEL_TRGLEVEL , &level); |
| switch (control) { |
| case PANEL_CONNECT: { |
| int state; |
| 539,16 → 523,14 |
| case PANEL_START: { |
| int state; |
| GetCtrlVal(panel,PANEL_START, &state); |
| GetCtrlVal(panel,PANEL_EXCLUDE_1, &excludefirst[0]); |
| GetCtrlVal(panel,PANEL_EXCLUDE_1, &excludefirst[0]); |
| GetCtrlVal(panel,PANEL_EXCLUDE_2, &excludefirst[1]); |
| if (state && eventData1==0) { |
| histoinit(); |
| starttime=Timer(); |
| daqtime =0; |
| /* decimation n (=1,8,64...) : frequency = 125/n MHz*/ |
| /* decimation n (=1,8,64...) : frequency = 125/n MHz*/ |
| for (int i=0; i<nsamples; i++) timebins[i]=(i-nbefore)* (float)decimation /125.; |
| if (output) foutput = fopen(filename, "wb"); |
| printf("decimation %d\n", decimation); |
| printf("decimation %d\n", decimation); |
| SetCtrlVal(panel,PANEL_CEVE , 0); |
| ctrl_c=0; |
| hdr[0] = 0; |
| 566,8 → 548,8 |
| hdr[0] = 1; |
| hdr[1] = 2*sizeof(int); |
| ClientTCPWrite(chandle,&hdr[0],hdr[1],5000); // stop the transfer |
| printf("INFO Stopping the acquisition\n"); |
| SetCtrlVal(panel,PANEL_START, 0); |
| printf("INFO Stopping the acquisition\n"); |
| SetCtrlVal(panel,PANEL_START, 0); |
| if (foutput) fclose(foutput); |
| foutput=NULL; |
| } |
| /cvi/apps/RedPitaya/soccli/soccli.cws |
|---|
| 1,6 → 1,6 |
| [Workspace Header] |
| Version = 1302 |
| Pathname = "/c/home/cvi/apps/RedPitaya/soccli/soccli.cws" |
| Pathname = "/c/home/CVI/RedPitaya/soccli/soccli.cws" |
| CVI Dir = "/c/program files (x86)/national instruments/cvi2013" |
| CVI Shared Dir = "/C/Program Files (x86)/National Instruments/Shared/CVI" |
| CVI Pub Local Dir = "/C/ProgramData/National Instruments/CVI2013" |
| 12,14 → 12,14 |
| Number of Projects = 2 |
| Active Project = 1 |
| Project 0001 = "soccli.prj" |
| Project 0002 = "/c/home/cvi/apps/RedPitaya/RedPitaya.prj" |
| Project 0002 = "/c/home/CVI/RedPitaya/RedPitaya.prj" |
| Project 0002 Folder User Interface Files Collapsed = True |
| Project 0002 FolderId 0 Collapsed = True |
| Drag Bar Left = 202 |
| Window Top = 95 |
| Window Left = 80 |
| Window Bottom = 804 |
| Window Right = 1535 |
| Window Top = 137 |
| Window Left = 83 |
| Window Bottom = 846 |
| Window Right = 1538 |
| Maximized = False |
| Maximized Children = True |
| Max32 Number Of Errors = 20 |
| 33,7 → 33,7 |
| Hide Windows = False |
| Break At First Statement = False |
| Sort Type = "File Name" |
| Number of Opened Files = 3 |
| Number of Opened Files = 8 |
| Window Confinement Region Enabled = True |
| MainColumnWidth = 185 |
| FileDateColumnWidth = 70 |
| 58,80 → 58,128 |
| Batch Build Debug = False |
| [File 0001] |
| Path = "/c/home/cvi/instr/HISTO/H1D.fp" |
| Path = "/c/home/CVI/instr/HISTO/H1D.fp" |
| File Type = "Function Panel" |
| Disk Date = 3574750011 |
| Disk Date = 3572599564 |
| In Projects = "1," |
| [File 0002] |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/soccli.c" |
| Path = "/c/home/CVI/RedPitaya/soccli/soccli.c" |
| File Type = "CSource" |
| Disk Date = 3574773250 |
| Disk Date = 3574749869 |
| In Projects = "1," |
| Window Top = 33 |
| Window Left = 10 |
| Window Z-Order = 2 |
| Source Window State = "0,361,361,361,26,31,31,0,3,69,24,348,0,361,26,1,117,0,418,0,349,595,1,9601," |
| Window Z-Order = 1 |
| Source Window State = "0,525,525,525,10,62,62,0,0,152,26,588,0,548,87,2,111,0,412,0,349,595,1,9601," |
| [File 0003] |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/redpitaya_gui.uir" |
| Path = "/c/home/CVI/RedPitaya/soccli/redpitaya_gui.uir" |
| File Type = "User Interface Resource" |
| Disk Date = 3574773016 |
| Disk Date = 3574749504 |
| In Projects = "1," |
| Window Top = 64 |
| Window Left = 26 |
| Window Height = 232 |
| Window Width = 595 |
| Window Z-Order = 1 |
| Window Z-Order = 2 |
| [File 0004] |
| Path = "/c/home/cvi/apps/RedPitaya/RedPitaya_ui.uir" |
| Path = "/c/home/CVI/RedPitaya/RedPitaya_ui.uir" |
| File Type = "User Interface Resource" |
| Disk Date = 3574750015 |
| Disk Date = 3570150778 |
| In Projects = "2," |
| Window Top = 64 |
| Window Left = 26 |
| Window Height = 323 |
| Window Width = 683 |
| Window Z-Order = 6 |
| [File 0005] |
| Path = "/c/home/cvi/apps/RedPitaya/RedPitaya.c" |
| Path = "/c/home/CVI/RedPitaya/RedPitaya.c" |
| File Type = "CSource" |
| Disk Date = 3574750015 |
| Disk Date = 3572435669 |
| In Projects = "2," |
| Window Top = 126 |
| Window Left = 58 |
| Source Window State = "1,43,43,43,0,26,26,0,0,0,0,0,0,0,0,0,112,0,131,17,258,683,1,0," |
| Window Z-Order = 8 |
| Source Window State = "1,43,43,43,0,26,26,0,0,80,0,0,0,0,0,18,112,0,131,17,258,683,1,0," |
| [File 0006] |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/soccli.h" |
| Path = "/c/home/CVI/instr/HISTO/H1D.c" |
| File Type = "CSource" |
| Disk Date = 3574395592 |
| In Projects = "" |
| Window Top = 126 |
| Window Left = 58 |
| Window Z-Order = 3 |
| Source Window State = "1,107,107,107,0,11,11,0,0,80,0,0,0,0,0,23,96,0,107,0,323,683,1,0," |
| [File 0007] |
| Path = "/c/home/CVI/instr/DRS/drs4.c" |
| File Type = "CSource" |
| Disk Date = 3572599563 |
| In Projects = "" |
| Window Top = 126 |
| Window Left = 58 |
| Window Z-Order = 7 |
| Source Window State = "1,542,542,542,8,54,8,0,3,80,0,0,0,0,0,18,528,0,542,54,258,683,1,0," |
| [File 0008] |
| Path = "/c/home/CVI/RedPitaya/soccli/mH1D.h" |
| File Type = "Include" |
| Disk Date = 3572872297 |
| In Projects = "" |
| Window Top = 33 |
| Window Left = 10 |
| Window Z-Order = 5 |
| Source Window State = "1,0,0,0,0,0,0,0,0,80,0,0,0,0,0,23,0,0,25,56,323,683,1,0," |
| [File 0009] |
| Path = "/c/home/CVI/instr/HISTO/H1D.h" |
| File Type = "Include" |
| Disk Date = 3573119642 |
| In Projects = "" |
| Window Top = 64 |
| Window Left = 26 |
| Window Z-Order = 4 |
| Source Window State = "1,39,39,39,0,54,54,0,0,80,0,0,0,0,0,23,28,0,36,0,323,683,1,0," |
| [File 0010] |
| Path = "/c/home/CVI/RedPitaya/soccli/soccli.h" |
| File Type = "Include" |
| Disk Date = 3572536657 |
| In Projects = "1," |
| Source Window State = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0," |
| [File 0007] |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/H1Dload.cxx" |
| [File 0011] |
| Path = "/c/home/CVI/RedPitaya/soccli/H1Dload.cxx" |
| File Type = "Unknown" |
| Disk Date = 3574312155 |
| In Projects = "1," |
| [File 0008] |
| Path = "/c/home/cvi/apps/RedPitaya/RedPitaya_ui.h" |
| [File 0012] |
| Path = "/c/home/CVI/RedPitaya/RedPitaya_ui.h" |
| File Type = "Include" |
| Disk Date = 3574750015 |
| Disk Date = 3570148232 |
| In Projects = "2," |
| Source Window State = "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0," |
| [File 0009] |
| Path = "/c/home/cvi/apps/RedPitaya/plottdc.cxx" |
| [File 0013] |
| Path = "/c/home/CVI/RedPitaya/plottdc.cxx" |
| File Type = "Unknown" |
| Disk Date = 3574750015 |
| Disk Date = 3572604225 |
| In Projects = "2," |
| [Tab Order] |
| Tab 0001 = "/c/home/cvi/apps/RedPitaya/soccli/redpitaya_gui.uir" |
| Tab 0002 = "/c/home/cvi/apps/RedPitaya/soccli/soccli.c" |
| Tab 0001 = "/c/home/CVI/RedPitaya/soccli/soccli.c" |
| Tab 0002 = "/c/home/CVI/RedPitaya/soccli/redpitaya_gui.uir" |
| Tab 0003 = "/c/home/CVI/RedPitaya/RedPitaya.c" |
| Tab 0004 = "/c/home/CVI/instr/DRS/drs4.c" |
| Tab 0005 = "/c/home/CVI/instr/HISTO/H1D.c" |
| Tab 0006 = "/c/home/CVI/RedPitaya/RedPitaya_ui.uir" |
| Tab 0007 = "/c/home/CVI/RedPitaya/soccli/mH1D.h" |
| Tab 0008 = "/c/home/CVI/instr/HISTO/H1D.h" |
| [Default Build Config 0001 Debug] |
| Generate Browse Info = False |
| /cvi/apps/RedPitaya/soccli/soccli.prj |
|---|
| 1,6 → 1,6 |
| [Project Header] |
| Version = 1302 |
| Pathname = "/c/home/cvi/apps/RedPitaya/soccli/soccli.prj" |
| Pathname = "/c/home/CVI/RedPitaya/soccli/soccli.prj" |
| Project Label = "soccli" |
| CVI Dir = "/c/program files (x86)/national instruments/cvi2013" |
| CVI Shared Dir = "/C/Program Files (x86)/National Instruments/Shared/CVI" |
| 35,7 → 35,7 |
| Path Is Rel = True |
| Path Rel To = "Project" |
| Path Rel Path = "soccli.c" |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/soccli.c" |
| Path = "/c/home/CVI/RedPitaya/soccli/soccli.c" |
| Exclude = False |
| Compile Into Object File = False |
| Project Flags = 0 |
| 48,7 → 48,7 |
| Path Is Rel = True |
| Path Rel To = "Project" |
| Path Rel Path = "soccli.h" |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/soccli.h" |
| Path = "/c/home/CVI/RedPitaya/soccli/soccli.h" |
| Exclude = False |
| Project Flags = 0 |
| Folder = "Include Files" |
| 60,7 → 60,7 |
| Path Is Rel = True |
| Path Rel To = "Project" |
| Path Rel Path = "redpitaya_gui.uir" |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/redpitaya_gui.uir" |
| Path = "/c/home/CVI/RedPitaya/soccli/redpitaya_gui.uir" |
| Exclude = False |
| Project Flags = 0 |
| Folder = "User Interface Files" |
| 71,8 → 71,8 |
| Res Id = 4 |
| Path Is Rel = True |
| Path Rel To = "Project" |
| Path Rel Path = "../../../instr/HISTO/H1D.fp" |
| Path = "/c/home/cvi/instr/HISTO/H1D.fp" |
| Path Rel Path = "../../instr/HISTO/H1D.fp" |
| Path = "/c/home/CVI/instr/HISTO/H1D.fp" |
| Exclude = False |
| Project Flags = 0 |
| Folder = "Instrument Files" |
| 84,7 → 84,7 |
| Path Is Rel = True |
| Path Rel To = "Project" |
| Path Rel Path = "H1Dload.cxx" |
| Path = "/c/home/cvi/apps/RedPitaya/soccli/H1Dload.cxx" |
| Path = "/c/home/CVI/RedPitaya/soccli/H1Dload.cxx" |
| Exclude = False |
| Project Flags = 0 |
| Folder = "Not In A Folder" |
| 407,19 → 407,19 |
| Executable File_Debug Is Rel = True |
| Executable File_Debug Rel To = "Project" |
| Executable File_Debug Rel Path = "soccli.exe" |
| Executable File_Debug = "/c/home/cvi/apps/RedPitaya/soccli/soccli.exe" |
| Executable File_Debug = "/c/home/CVI/RedPitaya/soccli/soccli.exe" |
| Executable File_Release Is Rel = True |
| Executable File_Release Rel To = "Project" |
| Executable File_Release Rel Path = "soccli.exe" |
| Executable File_Release = "/c/home/cvi/apps/RedPitaya/soccli/soccli.exe" |
| Executable File_Release = "/c/home/CVI/RedPitaya/soccli/soccli.exe" |
| Executable File_Debug64 Is Rel = True |
| Executable File_Debug64 Rel To = "Project" |
| Executable File_Debug64 Rel Path = "soccli.exe" |
| Executable File_Debug64 = "/c/home/cvi/apps/RedPitaya/soccli/soccli.exe" |
| Executable File_Debug64 = "/c/home/CVI/RedPitaya/soccli/soccli.exe" |
| Executable File_Release64 Is Rel = True |
| Executable File_Release64 Rel To = "Project" |
| Executable File_Release64 Rel Path = "soccli.exe" |
| Executable File_Release64 = "/c/home/cvi/apps/RedPitaya/soccli/soccli.exe" |
| Executable File_Release64 = "/c/home/CVI/RedPitaya/soccli/soccli.exe" |
| Icon File Is Rel = False |
| Icon File = "" |
| Application Title = "" |