KaliVeda
Toolkit for HIC analysis
Loading...
Searching...
No Matches
KVItvFinderDialog.h
1
3
4#ifndef __KVITVFINDERDIALOG_H
5#define __KVITVFINDERDIALOG_H
6
7#include "RQ_OBJECT.h"
8#include "TGFrame.h"
9#include "TGButton.h"
10#include <TGComboBox.h>
11#include <TGLabel.h>
12#include <TGNumberEntry.h>
13#include <TGTextEntry.h>
14#include <TGProgressBar.h>
15#include "TCanvas.h"
16#include "KVList.h"
17#include "KVListView.h"
18#include "KVIDZAFromZGrid.h"
19#include "TGToolBar.h"
20#include "TGButton.h"
21#include <TSpectrum.h>
22#include <TROOT.h>
23#include <TF1.h>
24#include "KVPIDIntervalPainter.h"
35 RQ_OBJECT("KVZAFinderDialog");
36
40
45
46
50
54
56
62
64
66
69
70 interval_set* current_interval_set = nullptr;// interval selected by ZoomOnCanvas()
71
73 void remove_interval_from_interval_set(interval_set* itvs, interval* itv, bool remove_fit = true);
74
75public:
76 enum {
83 };
84
87 {
89 }
90
92 {
93 return fNextIntervalZ;
94 }
95 void SetNextIntevalZ(int zz)
96 {
97 fNextIntervalZ = zz;
98 }
99
100 void DisplayPIDint();
101 void SelectionITVChanged();
102 void UpdatePIDList();
103
104 void ZoomOnCanvas();
105 void DrawIntervals();
106 void DrawInterval(interval_set* itvs, bool label = 0);
107
108 void ClearInterval(interval_set* itvs);
109
111 void LinearizeHisto(int nbins);
112
113 void DoClose()
114 {
115 gROOT->ProcessLine("KVItvFinderDialog* _dummy_itv=nullptr");
116 delete this;
117 }
118
119 void Identify();//{ProcessIdentification(1,25);}//{Info("SaveGrid","Not yet implemented");}
120 void Identify(double sigma, double ratio);//{ProcessIdentification(1,25);}//{Info("SaveGrid","Not yet implemented");}
121 void SaveGrid();//{fGrid->GetIntervalSets()->ls(); fGrid->GetParameters()->ls();}
122 void ExportToGrid();
123 void NewInterval();//{Info("NewInterval","Not yet implemented");}
124 void AddInterval(double pid);
125 void NewIntervalSet();//{Info("NewIntervalSet","Not yet implemented");}
126 void RemoveInterval();//{Info("RemoveInterval","Not yet implemented");}
127 void MassesUp();//{Info("ChangeMasses","Not yet implemented");}
128 void MassesDown();//{Info("ChangeMasses","Not yet implemented");}
129 void UpdateLists();//{cout << "toto" << endl;}
130 void TestIdent();//;{cout << "TestIdent()" << endl;}
131 void SetLogy();
132 void UnzoomHisto();
133 void FitIsotopes();
134 void SetFitParameters();
135 void RemoveFit();
136
137 void HandleKey();
138 void PrintHelp();
139
140 void ProcessIdentification(Int_t zmin = -1, Int_t zmax = -1);
141 void FindPIDIntervals(Int_t zz);
143 ClassDef(KVItvFinderDialog, 1) //gui to KVPIDIntevalFinder
144};
145
146
149
154
157
162
164
167
168#endif
int Int_t
double Double_t
#define ClassDef(name, id)
#define gROOT
Hybrid charge & mass identification grid.
GUI for finding/fixing mass identification intervals.
KVListView * fIntervalListView
void DrawInterval(interval_set *itvs, bool label=0)
KVIDZAFromZGrid * fGrid
TGTransientFrame * fMain
void ClearInterval(interval_set *itvs)
RQ_OBJECT("KVZAFinderDialog")
void ProcessIdentification(Int_t zmin=-1, Int_t zmax=-1)
void AddInterval(double pid)
void delete_painter_from_painter_list(KVPIDIntervalPainter *)
void Identify()
KVBase::OpenContextMenu("Identify(double,double)",this);.
void SetFitParameters()
Open dialog to modify parameters for multigauss mass fit.
interval_set * current_interval_set
TGButton * fTBbuttons[50]
void FindPIDIntervals(Int_t zz)
KVListView * fIntervalSetListView
static KVNameValueList mass_fit_parameters
for user control of multi-gaussian fit
void RemoveFit()
Remove fit of currently selected interval set from pad.
void ExportToGrid()
Write all PID intervals in grid parameters "PIDRANGE", "PIDRANGE%d", etc.
void TestIdent()
fGrid->SetOnlyZId(0);
void SetNextIntevalZ(int zz)
void LinearizeHisto(int nbins)
Double_t fpeaks(Double_t *x, Double_t *par)
void remove_interval_from_interval_set(interval_set *itvs, interval *itv, bool remove_fit=true)
KVPIDIntervalPainter * last_drawn_interval
void ZoomOnCanvas()
Display the interval set for a given Z when the user double clicks on it.
Enhanced version of ROOT TGListView widget.
Definition KVListView.h:146
Extended TList class which owns its objects by default.
Definition KVList.h:28
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
Graphical representation of a PID interval in the KVIDZAFromZGrid mass assignation GUI.
virtual void CloseWindow()