Main Class Reference

Main nscope program. More...

#include <Main.h>

List of all members.

Public Member Functions

 Main ()
 Initialization of graphical components.
 Main (const TGWindow *p)
 Initialization of graphical compinents.
 ~Main ()
 Deconstructor, delete all graphical elements.

Private Member Functions

virtual Bool_t ProcessMessage (Long_t msg, Long_t parm1, Long_t)
 Handle menu and button clicks in nscope.
void CloseWindow ()
 Exit application.
void CreateMenuBar (void)
 Create the menu bars.
void SetStatusText (const char *txt, Int_t pi)
 possibly obsolete?
void EventInfo (Int_t event, Int_t px, Int_t py, TObject *selected)
 possible obsolete?
void MakeFold1Panel (TGCompositeFrame *TabPanel)
 Arrange buttons.
void PlotTau ()
 possibly obsolete
void NewTrace (unsigned long size, unsigned short module, unsigned short ChanNum)
 Retrieve trace from module.
void GetHistogram (unsigned short module, unsigned short ChanNum)
 Retrieve histogram from module.
void GetBaseline (unsigned short int module, unsigned short int ChanNum)
 Retrieve histogram of baseline values from pixie16.
void AnlyTrace (unsigned long size, unsigned short module, unsigned short ChanNum)
 Analyze the current trace and display results.
void writeSpe (const char *filename, float buf[], int dim)
 Write current trace to output file.
void save_setup (char *name)
 Save pixie16 setup parameters to file.
int IdentifyTracePulse (unsigned short *trace, unsigned int traceSize, unsigned int trigLen, unsigned int trigGap, double *trigLeadSum, double *trigTrailSum, double trigThresho, unsigned int *peak, unsigned int *valley)
 try to identify a pulse for automatic tau find
int TauFromMoments (unsigned short *trace, unsigned int traceSize, double dt, double *tau)
 Determine tau from moments similar to pixie methods.
int TauFromFit (unsigned short *trace, unsigned int traceSize, double dt, double *tau)
 Determine tau from an exponential fit of the tail of a pulse

  • slightly less reliable than moment determination.

int BinTrace (double *trace, unsigned int traceSize, double *bins, unsigned int binNum, double *binCounts)
 support function for auto tau find
int BinTraceFit (double *trace, double *tracefit, unsigned int traceSize, double *bins, unsigned int binNum, double *binCounts)
 support function for auto tau find
double ArrayMax (double *a, unsigned int ArraySize, unsigned int *Index)
 support function for auto tau find
double FitGaussian (TGraph *Dist)
 support function for auto tau find
int FindTau (unsigned short ModNum, unsigned short ChanNum, double *Tau, double *TauFit)
 Attempt to find tau automatically.

Private Attributes

lockl
 lock file, obsolete
PulseShapepulseshape
Popupabout
EnergyFilterenergyfilter
AnalogSignalanalogsignal
Baselinebaseline
Csracsra
ModCsrbmodcsrb
TriggerFiltertriggerfilter
TriggerFilterOrtriggerfilteror
CFDcfd
ExtTrigexttrig
Tautau
ExpertModexpertmod
ScopedTscopedt
Histogramhistogram
 Pointer to histogram.
MaxEventmaxevent
Detectordetector
TGFileInfo fEventFileOpenInfo
 File input parameters from dialog box.
TGTextEntry * StateMsgFold1
 Message text indicating boot status.
TGTextButton * analyzeB
TGTextButton * acquireB
TGTextButton * saveB
 text displayed in buttons when running
TGStatusBar * fStatusBar
TGNumberEntry * numericMod
 module number entry for current focus
TGNumberEntry * numericCh
 channel number entry for current focus
TH1S * fHpx_wave
 Storage for current trace.
TH1D * fhisto
 Storage for current histogram.
TH1S * ffastfilt
 Storage for fast filter based on current parameters.
TH1D * fenerfilt
 Storage for energy filter based on current parameters.
TH1S * fcfdfilt
 Storage for cfd filter based on current parameters.
TH1S * taufitHist
 Display results from tau fits.
TCanvas * dCanvasF1
 canvas for histograms and traces
TObject * selected
 pointer to selected pad
Pixel_t color
 obsolete?
int xmin
int xmax
int ymin
int ymax
int moduleNr
 Module number with focus.
int channelNr
 Channel number with focus.
int size
 Trace length in scope mode.
int range
int separation
 Filter parameters, obsolete?
float fraction
 Filter parameter, obsolete?
int NUMBERofTRACES
 number of traces to look at before displaying
int RUN_IN_PROGRESS
 value to keep track of current running mode
int parts [4]
unsigned long mca [MCA_SIZE]
 obsolete ?
short int modNumber
 obsolete
short int chanNumber
 obsolete
bool wave_once
 unused
bool hpx_once_wave
 unused
double * decayconstant
 tau parameter for auto tau find
double * decayconstantfit
 tau parameter for auto tau find
unsigned int * histdata
 raw histogram data from pixie
unsigned short * trace
unsigned short * filter_trace
float * trace_float
 array for trace output to file
int * fastfilter
int * enerfilter
int * cfdfilter
 analyze trace parameters

Detailed Description

Main nscope program.

Main nscope program that defines the arrangement of all windows and menus within the nscope program.


Constructor & Destructor Documentation

Main::Main ( const TGWindow *  p  ) 

Initialization of graphical compinents.

Parameters:
p Pointer to the window

Member Function Documentation

int Main::IdentifyTracePulse ( unsigned short *  trace,
unsigned int  traceSize,
unsigned int  trigLen,
unsigned int  trigGap,
double *  trigLeadSum,
double *  trigTrailSum,
double  trigThresho,
unsigned int *  peak,
unsigned int *  valley 
) [private]

try to identify a pulse for automatic tau find

This function still needs some work. For some situations it does not always find good traces.


Member Data Documentation

Popup* Main::about [private]

Pointer to an informational window

Pointer to window to change analog parameters - polarity, gain, and baseline

CFD* Main::cfd [private]

Pointer to window to change cfd parameters - delay and scale

Csra* Main::csra [private]

Pointer to window to change channel bit settings

Pointer to detector to boot modules, take data and retrieve statistics

Pointer to window for energy filter parameters - length and gap

Pointer to window to change module parameters through drop-down dialog box

ExtTrig* Main::exttrig [private]

Pointer to window to change external trigger parameters - width and delay

Pointer to window to change maximum events

ModCsrb* Main::modcsrb [private]

Pointer to window to change module bit set

Pointer to the window to change paramenters for recording pulse shape - length and delay

ScopedT* Main::scopedt [private]

Pointer to window to change time per bin on scope display

Tau* Main::tau [private]

Pointer to window to change tau parameter

Pointer to window to change trigger parameters - length gap, and thresh

Pointer to window to change trigger filter OR parameters - delay and width


The documentation for this class was generated from the following files:
 All Classes Functions Variables
Generated on Thu Feb 16 22:47:04 2012 for nscope-1.0 by  doxygen 1.6.3