PSTCT
class description - source file - inheritance tree
private:
void swoo(char*, char*)
void swooip(float*, int)
public:
PSTCT(const PSTCT&)
PSTCT(Char_t*, Float_t = 0, Int_t = 0)
~PSTCT()
TH1F* AverageGetHA(Int_t, Int_t = -1111, Int_t = -1111, Int_t = 0, Int_t = 0, Int_t = 0, Int_t = 0, Int_t = 0)
static TClass* Class()
void cords(Int_t, Int_t, Int_t, Int_t, Int_t)
void CorrectBaseLine(Float_t = 0.0)
TH2F* Draw(Int_t = 0, Int_t = 0, Int_t = 0, Int_t = 0, Int_t = 0, Int_t = 0, Float_t = 0, Float_t = 25)
void DrawList(Int_t, Int_t*)
void DrawList(Int_t, Int_t*, Int_t*)
TH1F* GetHA(Int_t, Int_t)
TH1F* GetHA(Int_t, Int_t, Int_t, Int_t, Int_t = 0, Int_t = 0)
Float_t GetWidth(TH1F*, Float_t = 0, Float_t = 25, Float_t = -1111, Float_t = -1111, Int_t = 50)
Int_t indx(Int_t, Int_t, Int_t, Int_t, Int_t)
virtual TClass* IsA() const
TH1F* ModGetHA(Int_t, Int_t, Float_t = -1111, Float_t = -1111)
TH1F* ModGetHA(Int_t, Int_t, Int_t, Int_t, Int_t = 0, Int_t = 0, Float_t = -1111, Float_t = -1111)
void PrintInfo()
MeasureWF* Projection(int, int*)
MeasureWF* Projection(int ch, int dir, int x, int y, int z, int nu1, int nu2, int num)
void ReadWFs(Float_t = 0)
void ReadWFsBin(Float_t = 0)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
public:
FILE* in
TArrayI Date Date of the Measurement (or simulation)
TClonesArray* histo1 ->
TClonesArray* histo2 ->
TClonesArray* histo3 ->
Float_t* xyz[8] x coordinates coresponing to histo array
TArrayF ta ta coordinates coresponing to histo array
Int_t abstime
Int_t Nx
Int_t Ny
Int_t Nz
Int_t RefInd
Float_t dx
Float_t dy
Float_t dz
Float_t x0
Float_t y0
Float_t z0
Int_t NU1
Int_t NU2
TArrayF U1
TArrayF U2
TArrayF I1
TArrayF I2 Array of voltages
Float_t t0
Float_t dt
Int_t NP
Int_t WFOnOff[3]
Int_t type
Int_t numxyz
PSTCT(char *FileName, Float_t time0, Int_t Bin)
Class for manipulation of the 3D/Position Sensitive TCT Measurements
char *FileName; name of the file with data
Float_t time0 ; time shift of the points. Used mainly to set the arrival of the laser pulse at t=0 ns;
Int Bin; Selects the timeformat of the measurements;
0 - ascii (default) older format has a type 11 while newer has type 22
1 - binary (prefered in new measurements)
Example of use :
// Convert into MeasureWF along projection
PSTCT aa("../Meritve/scanz-grobo-1.tct", 92.2,1); // The second parameter is to set the scale such that signal start at t=0;
aa.CorrectBaseLine(); // Baseline correction
aa.PrintInfo(); // Information about the read data
// example of projection the data along Y, 41 point at indexes of Z=23,X=0, U1=0, U2=0;
MeasureWF *wf=aa.Projection(0,1,0,0,23,0,0,41);
strcpy(wf.suffix," #mum");
strcpy(wf.prefix,"Y=");
//Draw waveforms and substract the 0 waveform from the rest (cancel oscilations
wf.DrawMulti(-1,40,1,40,4,0,0);
void ReadWFsBin(Float_t time0)
void ReadWFs(Float_t time0)
TH1F* GetHA(int ch , int index)
TH1F* GetHA(Int_t ch , Int_t x, Int_t y, Int_t z, Int_t nu1, Int_t nu2)
TH1F* ModGetHA(Int_t ch, Int_t index1, Float_t lrange, Float_t rrange)
his = his1 - his 2
his2 default graf (index2 = 0 default)
TH1F* ModGetHA(Int_t ch , Int_t x, Int_t y, Int_t z, Int_t nu1, Int_t nu2, Float_t lrange, Float_t rrange)
TH1F* AverageGetHA(Int_t ch , Int_t start, Int_t stop, Int_t avrg, Int_t v1, Int_t v2, Int_t v3, Int_t v4)
Function is used to get the average wafeform:
Int_t ch; channel number - amplifier number
Int_t start; start index of the average
Int_t stop; stop index of the average
Int_t avrg; decides over which direction it calcultes the average
avrg = 0 -> x
avrg = 1 -> y
avrg = 2 -> z
avrg = 3 -> U1
avrg = 4 -> U2
Int_t v1,v2,v3,v4; are the indexes of the other paramters in the same order as for average
Int_t indx(int x, int y, int z, int nu1, int nu2)
void cords(int x, int y, int z, int nu1, int nu2)
Float_t GetWidth(TH1F *his, Float_t tleft, Float_t tright, Float_t minwidth, Float_t maxwidth, Int_t percentage)
his -> histogram
tleft -> left margin, default 0
tright -> right margin, default 25
minwidth -> min signal width, default -1111
maxwidth -> max signal width, default -1111
percentage -> height of min and max, default 50 (50%)
TH2F* Draw(Int_t ch, Int_t stype, Int_t mode, Int_t v1, Int_t v2, Int_t v3, Float_t tlow, Float_t thi)
Int_t ch; channel number
Int_t stype
case: 0 - select x,y
case: 1 - select x,z
case: 2 - select x,U1
case: 3 - select x,U2
case: 4 - select y,z
case: 5 - select y,U1
case: 6 - select y,U2
case: 7 - select z,U1
case: 8 - select z,U2
case: 9 - select U1,U2
Int_t mode;
mode =0 -> Integral
mode =1 -> maximum signal
mode =2 -> minimum signal
mode =3 -> width of the signal
Int_t v1,v2,v3; indexes of the remaining three parameters (order always follows x,y,z,U1,U2)
Float_t tlow, thi; Time windos of the plots
Example :
TH2F *plot=aa.Draw(0,4,0,0,0,0,0,20);
plot->Draw("COLZ");
MeasureWF* Projection(Int_t num, Int_t *List)
MeasureWF* Projection(int ch, int dir,int x,int y,int z, int nu1, int nu2, int num)
Projection parameters
int ch -> channel number
int dir -> direction of the projection
int x -> x0 of the projection
int y -> y0 of the projection
int z -> z0 of the projection
int nu1 -> voltage 1
int nu1 -> voltage 2
int num -> number of wfs
void DrawList(Int_t num, Int_t *List)
void DrawList(Int_t num, Int_t *ListC,Int_t *ListP)
Function draws the list
void CorrectBaseLine(Float_t xc)
Function corrects the baseline (DC offset) of all wafeforms
Float_t xc ; time denoting the start of the pulse
correction factor is calculated from all the bins before xc
void PrintInfo()
Function prints the information about the class and its members
void swoo(char *a, char *b)
byte swaping (LABVIEW,HPUX g++)<->(LINUX g++, WINNT cl)
void swooip(float *in, int s)
byte swaping (LABVIEW,HPUX g++)<->(LINUX g++, WINNT cl)
Inline Functions
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
PSTCT PSTCT(const PSTCT&)
void ~PSTCT()
Last update: Tue Jul 28 14:32:42 2009
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.