4 #define INITIAL_HEIGHT 500
5 #define INITIAL_WIDTH 600
10 #include <TGApplication.h>
11 #include <TApplication.h>
15 #include <TGNumberEntry.h>
17 #include <TGTextEntry.h>
18 #include <TRootEmbeddedCanvas.h>
23 #include <TMultiGraph.h>
27 #include <TGFileDialog.h>
30 #include "PulseShape.h"
31 #include "EnergyFilter.h"
32 #include "AnalogSignal.h"
33 #include "TGStatusBar.h"
37 #include "TrigConfig.h"
38 #include "TriggerFilter.h"
45 #include "ExpertMod.h"
46 #include "Histogram.h"
52 #include "TVirtualPad.h"
55 #include "MultCoincDialogue.h"
56 #include "TimingParamDialogue.h"
122 Main(
const TGWindow *p);
154 TGFileInfo fEventFileOpenInfo;
155 TGTextEntry *StateMsgFold1;
156 TGTextButton *analyzeB, *acquireB, *saveB;
157 TGCheckButton *bmultdisplay, *bfastdisplay;
158 TGStatusBar* fStatusBar;
159 TGNumberEntry *numericMod, *numericCh;
177 int xmin, xmax, ymin, ymax;
179 unsigned short NumModules;
182 int range, separation;
187 unsigned long mca[MCA_SIZE];
188 short int modNumber, chanNumber;
192 double *decayconstant;
193 double *decayconstantfit;
195 unsigned int *histdata;
196 unsigned short *trace, *filter_trace;
198 int *fastfilter, *enerfilter, *cfdfilter;
204 virtual Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t);
207 void CreateMenuBar(
void);
208 void SetStatusText(
const char *txt, Int_t pi);
209 void EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected);
210 void MakeFold1Panel(TGCompositeFrame *TabPanel);
212 void NewTrace(
unsigned long size,
unsigned short module,
213 unsigned short ChanNum);
214 void GetHistogram(
unsigned short module,
unsigned short ChanNum);
215 void GetBaseline(
unsigned short int module,
unsigned short int ChanNum);
216 void AnlyTrace(
unsigned long size,
unsigned short module,
217 unsigned short ChanNum);
218 void writeSpe(
const char *filename,
float buf[],
int dim);
219 void save_setup(
char *name);
220 int IdentifyTracePulse (
unsigned short *trace,
unsigned int traceSize,
221 unsigned int trigLen,
unsigned int trigGap,
222 double *trigLeadSum,
double *trigTrailSum,
223 double trigThresho,
unsigned int *peak,
224 unsigned int *valley);
225 int TauFromMoments (
unsigned short *trace,
unsigned int traceSize,
226 double dt,
double *tau);
227 int TauFromFit (
unsigned short *trace,
unsigned int traceSize,
228 double dt,
double *tau);
229 int BinTrace (
double *trace,
unsigned int traceSize,
double *bins,
230 unsigned int binNum,
double *binCounts);
231 int BinTraceFit (
double *trace,
double *tracefit,
unsigned int traceSize,
232 double *bins,
unsigned int binNum,
double *binCounts);
233 double ArrayMax (
double *a,
unsigned int ArraySize,
unsigned int *Index);
234 double FitGaussian (TGraph *Dist);
235 int FindTau (
unsigned short ModNum,
unsigned short ChanNum,
236 double *
Tau,
double *TauFit);