KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVIDGraph.h
Go to the documentation of this file.
1 /*
2 $Id: KVIDGraph.h,v 1.7 2009/04/28 09:07:47 franklan Exp $
3 $Revision: 1.7 $
4 $Date: 2009/04/28 09:07:47 $
5 */
6 
9 
10 #ifndef __KVIDGRAPH_H
11 #define __KVIDGRAPH_H
12 
13 #include "TCutG.h"
14 #include "KVNameValueList.h"
15 #include "KVIDentifier.h"
16 #include <RQ_OBJECT.h>
17 #include <TH2.h>
18 #include "KVIdentificationResult.h"
19 #include "KVNumberList.h"
20 #include "RVersion.h"
21 
22 class TVirtualPad;
24 
31 class KVIDGraph : public TCutG {
32  friend class KVIDGridManager;
33 
34  RQ_OBJECT("KVIDGraph")
35 
36 protected:
37 
50  mutable TString fDyName;
55 
56  Bool_t IsOnlyZId() const
57  {
61  return fOnlyZId;
62  }
63 
64  void Scale(Double_t sx = -1, Double_t sy = -1);
65  virtual void ReadFromAsciiFile(std::ifstream& gridfile);
66  virtual void WriteToAsciiFile(std::ofstream& gridfile);
67  void init();
68  virtual KVIDentifier* New(const Char_t*);
69  virtual void ReadIdentifierFromAsciiFile(TString& name, TString& type, TString& cl, std::ifstream& gridfile);
71  virtual void BackwardsCompatibilityFix();
72 
73 public:
75  {
81 
82  return idr.IDOK;
83  }
84  void AddParameter(char* Name, char* Value)
85  {
87  }
88 
89  KVIDGraph();
90  KVIDGraph(const KVIDGraph&);
91  virtual ~KVIDGraph();
92 
93  virtual void Copy(TObject&) const;
94  virtual void Identify(Double_t /*x*/, Double_t /*y*/, KVIdentificationResult*) const = 0;
95  virtual void Initialize() = 0;
96  virtual Bool_t IsIdentifiable(Double_t /*x*/, Double_t /*y*/, TString* rejected_by = nullptr) const;
97  virtual void SetInfos(Double_t /*x*/, Double_t /*y*/, KVIdentificationResult* /*idr*/) const;
98 
99  static void SetAutoAdd(Bool_t yes = kTRUE)
100  {
103  fAutoAddGridManager = yes;
104  }
106  {
109  return fAutoAddGridManager;
110  }
112  {
113  fTelescopes.Clear();
114  }
116  {
117  return fLastSavedVersion;
118  }
120  void UpdateLastSavedVersion();
121 
122  static KVIDGraph* MakeIDGraph(const Char_t*);
123 
124  void FindAxisLimits();
125  void Scale(TF1* sx, TF1* sy);
126 
127  KVIDentifier* GetIdentifier(Int_t Z, Int_t A) const;
129  void RemoveCut(KVIDentifier*);
130  void RemoveInfo(KVIDentifier*);
131 
133  {
134  return fPad;
135  }
136 
137  void ReadAsciiFile(const Char_t* filename);
138  void AddIDTelescopes(const TList*);
139  virtual void SetName(const char* name)
140  {
141  TNamed::SetName(name); /*Modified()*/;
142  } // *MENU*
143  virtual void Clear(Option_t* opt = ""); // *MENU*
145  void SetXVariable(const char* v)
146  {
147  SetVarX(v);
148  Modified();
149  } // *MENU={Hierarchy="Set.../X Variable"}* *ARGS={v=>fVarX}
150  void SetYVariable(const char* v)
151  {
152  SetVarY(v);
153  Modified();
154  } // *MENU={Hierarchy="Set.../Y Variable"}* *ARGS={v=>fVarY}
155  void SetRunList(const char* runlist)
156  {
157  SetRuns(KVNumberList(runlist));
158  } // *MENU={Hierarchy="Set.../List of Runs"}*
159  virtual void SetOnlyZId(Bool_t yes = kTRUE);
160  void SetMassFormula(Int_t);// *SUBMENU={Hierarchy="Set.../Mass Formula"}*
161  void WriteAsciiFile(const Char_t* filename); // *MENU*
162  void SetXScaleFactor(Double_t = 0); // *MENU={Hierarchy="Scale.../X Scale Factor"}*
163  void SetYScaleFactor(Double_t = 0);// *MENU={Hierarchy="Scale.../Y Scale Factor"}*
166  virtual void SetEditable(Bool_t editable = kTRUE); // *TOGGLE* *GETTER=GetEditable
167 
168  virtual Bool_t HasMassIDCapability() const
169  {
174  return !IsOnlyZId();
175  }
176 
177  virtual void SetMassIDCapability(Bool_t yes = kTRUE)
178  {
180  SetOnlyZId(!yes);
181  } // *TOGGLE={Hierarchy="A and Z Identification"}* *GETTER=HasMassIDCapability
182 
183  void Draw(Option_t* opt = ""); // *MENU={Hierarchy="View.../Draw"}*
184  void UnDraw(); // *MENU={Hierarchy="View.../UnDraw"}*
185  void ResetDraw();// *MENU={Hierarchy="View.../ResetDraw"}*
186  void SetLineColor(Color_t lcolor)
187  {
189  fIdentifiers.Execute("SetLineColor", Form("%d", (Int_t) lcolor));
190  fCuts.Execute("SetLineColor", Form("%d", (Int_t) lcolor));
191  fInfoZones.Execute("SetLineColor", Form("%d", (Int_t) lcolor));
192  Modified();
193  } // *MENU={Hierarchy="View.../SetLinecolor"}*
194  void SetLineStyle(Style_t lstyle)
195  {
197  fIdentifiers.Execute("SetLineStyle", Form("%d", (Int_t) lstyle));
198  fCuts.Execute("SetLineStyle", Form("%d", (Int_t) lstyle));
199  fInfoZones.Execute("SetLineStyle", Form("%d", (Int_t) lstyle));
200  Modified();
201  } // *MENU={Hierarchy="View.../SetLineStyle"}*
202  void SetLineWidth(Width_t lwidth)
203  {
205  fIdentifiers.Execute("SetLineWidth", Form("%d", (Int_t) lwidth));
206  fCuts.Execute("SetLineWidth", Form("%d", (Int_t) lwidth));
207  fInfoZones.Execute("SetLineWidth", Form("%d", (Int_t) lwidth));
208  Modified();
209  } // *MENU={Hierarchy="View.../SetLineWidth"}*
210 
211  void ExtendBeginningAllIdentLines(Double_t, Option_t* = "");// *MENU*
212  void ExtendEndAllIdentLines(Double_t, Option_t* = "");// *MENU*
213 
216  void Add(TString, KVIDentifier*);
218  virtual void DrawAndAdd(const Char_t* type = "ID", const Char_t* classname = "KVIDentifier");
219  void Print(Option_t* opt = "") const;
220 
221  static KVIDGraph* AddGraphs(KVIDGraph* g1, Int_t id1_min, Int_t id1_max,
222  KVIDGraph* g2, Int_t id2_min, Int_t id2_max);
223  void SetRuns(const KVNumberList& nl);
224 
225  const Char_t* GetName() const;
226  virtual void WriteAsciiFile_WP(Int_t version = -1); //WP means with pattern
227  virtual void ReadAsciiFile_WP(Int_t version = -1); //WP means with pattern
228  virtual Int_t CheckVersion(Int_t version);
229  virtual Bool_t ExistVersion(Int_t version)
230  {
231  if (version != -1) return (version == CheckVersion(version));
232  else return (version != -1);
233  }
234  void SetPattern(TString pattern)
235  {
236  pattern.ReplaceAll(".", "_");
237  fPattern = pattern;
238  }
240  {
241  return fPattern;
242  }
243 
244  const TList* GetIDTelescopes() const
245  {
246  return &fTelescopes;
247  };
248  void Increment(Float_t x) // *SIGNAL*
249  {
252  Emit("Increment(Float_t)", x);
253  }
254  void Modified() // *SIGNAL*
255  {
257  Emit("Modified()");
258  }
259 
260  const KVNumberList& GetRuns() const
261  {
263  return fRunList;
264  }
265  const Char_t* GetRunList() const
266  {
268  return (const char*)fRunList;
269  }
271  {
273  return (KVIDentifier*)fIdentifiers.At(index);
274  }
275  KVIDentifier* GetIdentifier(const Char_t* name) const
276  {
277  return (KVIDentifier*)fIdentifiers.FindObject(name);
278  }
279  KVIDentifier* GetCut(const Char_t* name) const
280  {
281  return (KVIDentifier*)fCuts.FindObject(name);
282  }
283  KVIDentifier* GetInfo(const Char_t* name) const
284  {
285  return (KVIDentifier*)fInfoZones.FindObject(name);
286  }
288  {
290  return &fPar;
291  }
293  {
295  return &fPar;
296  }
297  const KVList* GetIdentifiers() const
298  {
300  return &fIdentifiers;
301  }
303  {
305  return &fIdentifiers;
306  }
307  const KVList* GetCuts() const
308  {
310  return &fCuts;
311  }
313  {
315  return &fCuts;
316  }
317  const KVList* GetInfos() const
318  {
320  return &fInfoZones;
321  }
323  {
325  return &fInfoZones;
326  }
328  {
329  return fIdentifiers.GetSize();
330  }
332  {
333  return fCuts.GetSize();
334  }
336  {
337  return fInfoZones.GetSize();
338  }
339  virtual void AddIdentifier(KVIDentifier* id)
340  {
342  fIdentifiers.Add(id);
343  id->SetParent(this);
344  id->SetVarX(GetVarX());
345  id->SetVarY(GetVarY());
346  id->SetOnlyZId(IsOnlyZId());
349  if (IsOnlyZId()) id->SetMassFormula(GetMassFormula());
351  }
352  virtual void AddCut(KVIDentifier* cut)
353  {
355  cut->SetLineColor(kRed);
356  cut->SetParent(this);
357  fCuts.Add(cut);
358  cut->SetVarX(GetVarX());
359  cut->SetVarY(GetVarY());
360  cut->SetBit(kMustCleanup);
362  }
363  virtual void AddInfo(KVIDentifier* info)
364  {
366  info->SetLineColor(kBlue);
367  info->SetParent(this);
368  fInfoZones.Add(info);
369  info->SetVarX(GetVarX());
370  info->SetVarY(GetVarY());
371  info->SetBit(kMustCleanup);
373  }
375  {
376  fIdentifiers.Sort();
378  }
379  Bool_t IsSorted() const
380  {
382  return fIdentifiers.IsSorted();
383  }
384  Axis_t GetXmin() const
385  {
386  return fXmin;
387  }
388  Axis_t GetYmin() const
389  {
390  return fYmin;
391  }
392  Axis_t GetXmax() const
393  {
394  return fXmax;
395  }
396  Axis_t GetYmax() const
397  {
398  return fYmax;
399  }
400  virtual Int_t GetQualityCode() const
401  {
404  return 0;
405  }
407  {
411 
412  fTelescopes.Add(t);
413  Modified();
414  }
416  {
419 
420  fTelescopes.Remove(t);
421  Modified();
422  }
424  {
426 
427  return fTelescopes.Contains(t);
428  }
430  {
433 
434  KVBase* id = (KVBase*)fTelescopes.First();
435  return (id ? id->GetLabel() : "");
436  }
438  {
439  return fMassFormula;
440  }
441  void ResetPad();
442  void ClearPad(TVirtualPad*);
444  {
447  return fPad;
448  }
449  virtual void TestIdentification(TH2F* data, KVHashList& histos, KVNameValueList& histo_names);
450 
451  const Char_t* GetNamesOfIDTelescopes() const;
452 
455  virtual void SetMaximum(Double_t maximum = -1111)
456  {
457  TGraph::SetMaximum(maximum);
458  }
459  virtual void SetMinimum(Double_t minimum = -1111)
460  {
461  TGraph::SetMinimum(minimum);
462  }
464  virtual void FitPanel()
465  {
467  }
468  virtual void DrawPanel()
469  {
471  }
472 
473  virtual TFitResultPtr Fit(const char* formula, Option_t* option = "", Option_t* goption = "", Axis_t xmin = 0, Axis_t xmax = 0)
474  {
475  return TGraph::Fit(formula, option, goption, xmin, xmax);
476  }
477  virtual TFitResultPtr Fit(TF1* f1, Option_t* option = "", Option_t* goption = "", Axis_t xmin = 0, Axis_t xmax = 0)
478  {
479  return TGraph::Fit(f1, option, goption, xmin, xmax);
480  }
481 
484  virtual void Delete(Option_t* option = "")
485  {
486  TGraph::Delete(option);
487  }
488  virtual void DrawClass() const
489  {
491  }
492  virtual TObject* DrawClone(Option_t* option = "") const
493  {
494  return TGraph::DrawClone(option);
495  }
496  virtual void Dump() const
497  {
498  TGraph::Dump();
499  }
500  virtual void Inspect() const
501  {
502  TGraph::Inspect();
503  }
504  virtual void SaveAs(const char* filename = "", Option_t* option = "") const
505  {
506  TGraph::SaveAs(filename, option);
507  }
508  virtual void SetDrawOption(Option_t* option = "")
509  {
510  TGraph::SetDrawOption(option);
511  }
512  virtual void SetLineAttributes()
513  {
515  }
516  virtual void SetFillAttributes()
517  {
519  }
520  virtual void SetMarkerAttributes()
521  {
523  }
524  virtual void SetVarX(const char* v)
525  {
526  TCutG::SetVarX(v);
527  }
528  virtual void SetVarY(const char* v)
529  {
530  TCutG::SetVarY(v);
531  }
532  virtual Int_t InsertPoint()
533  {
534  return TCutG::InsertPoint();
535  }
536  virtual Int_t RemovePoint()
537  {
538  return TCutG::RemovePoint();
539  }
541  {
542  return TCutG::RemovePoint(i);
543  }
544 
545  ClassDef(KVIDGraph, 2) //Base class for particle identification in a 2D map
546 };
547 
548 #endif
int Int_t
#define RQ_OBJECT(sender_class)
char Char_t
short Width_t
bool Bool_t
double Axis_t
double Double_t
short Color_t
short Style_t
float Float_t
const char Option_t
#define ClassDef(name, id)
kRed
kBlue
float xmin
float xmax
char * Form(const char *fmt,...)
Base class for KaliVeda framework.
Definition: KVBase.h:141
const Char_t * GetLabel() const
Definition: KVBase.h:198
Extended version of ROOT THashList.
Definition: KVHashList.h:28
Base class for particle identification in a 2D map.
Definition: KVIDGraph.h:31
KVNumberList fRunList
runs for which grid is valid
Definition: KVIDGraph.h:48
virtual Int_t InsertPoint()
Definition: KVIDGraph.h:532
void Add(TString, KVIDentifier *)
Definition: KVIDGraph.cpp:838
void SetRunList(const char *runlist)
Definition: KVIDGraph.h:155
Axis_t GetYmax() const
Definition: KVIDGraph.h:396
Double_t GetYScaleFactor()
Definition: KVIDGraph.cpp:292
TString fDyName
dynamically generated name
Definition: KVIDGraph.h:50
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
Definition: KVIDGraph.h:473
Bool_t HandlesIDTelescope(KVBase *t) const
Definition: KVIDGraph.h:423
virtual void ReadAsciiFile_WP(Int_t version=-1)
lecture des grilles avec version suivant un modele de fichier
Definition: KVIDGraph.cpp:1404
KVIDGraph * fLastSavedVersion
copy of last save version of grid, used for 'undo'
Definition: KVIDGraph.h:53
Int_t GetNumberOfCuts() const
Definition: KVIDGraph.h:331
void ExtendBeginningAllIdentLines(Double_t, Option_t *="")
Definition: KVIDGraph.cpp:1017
KVNameValueList fPar
parameters associated to grid
Definition: KVIDGraph.h:44
virtual void SetVarX(const char *v)
Definition: KVIDGraph.h:524
void ReadAsciiFile(const Char_t *filename)
Definition: KVIDGraph.cpp:779
KVIDentifier * GetIdentifier(const Char_t *name) const
Definition: KVIDGraph.h:275
virtual void SetDrawOption(Option_t *option="")
Definition: KVIDGraph.h:508
void RemoveIdentifier(KVIDentifier *)
Remove and destroy identifier.
Definition: KVIDGraph.cpp:335
Double_t GetXScaleFactor()
Definition: KVIDGraph.cpp:274
virtual void Delete(Option_t *option="")
Definition: KVIDGraph.h:484
virtual void TestIdentification(TH2F *data, KVHashList &histos, KVNameValueList &histo_names)
Definition: KVIDGraph.cpp:1706
void SetXVariable(const char *v)
void SetIDTelescopes();// MENU={Hierarchy="Set.../ID Telescopes"}
Definition: KVIDGraph.h:145
KVList fCuts
cuts used to define area in which identification is possible
Definition: KVIDGraph.h:40
KVList fIdentifiers
list of identification objects
Definition: KVIDGraph.h:39
virtual void SetMinimum(Double_t minimum=-1111)
Definition: KVIDGraph.h:459
void SetLineWidth(Width_t lwidth)
Definition: KVIDGraph.h:202
Double_t fLastScaleY
last applied scaling factor on Y
Definition: KVIDGraph.h:46
virtual void SetMassIDCapability(Bool_t yes=kTRUE)
Definition: KVIDGraph.h:177
virtual void SetLineAttributes()
Definition: KVIDGraph.h:512
Double_t fLastScaleX
last applied scaling factor on X
Definition: KVIDGraph.h:45
const TList * GetIDTelescopes() const
Definition: KVIDGraph.h:244
void UpdateLastSavedVersion()
update last saved version. mkae copy of current state of graph.
Definition: KVIDGraph.cpp:534
virtual void SetName(const char *name)
Definition: KVIDGraph.h:139
Axis_t GetXmax() const
Definition: KVIDGraph.h:392
void SetLineStyle(Style_t lstyle)
Definition: KVIDGraph.h:194
void Scale(Double_t sx=-1, Double_t sy=-1)
Called by SetX/YScaleFactor methods to rescale every point of every object in the grid.
Definition: KVIDGraph.cpp:1146
void ExtendEndAllIdentLines(Double_t, Option_t *="")
Definition: KVIDGraph.cpp:1033
void RemoveInfo(KVIDentifier *)
Remove and destroy cut.
Definition: KVIDGraph.cpp:363
virtual void WriteToAsciiFile(std::ofstream &gridfile)
Definition: KVIDGraph.cpp:442
Bool_t IsSorted() const
Definition: KVIDGraph.h:379
static void SetAutoAdd(Bool_t yes=kTRUE)
Definition: KVIDGraph.h:99
void init()
Definition: KVIDGraph.cpp:67
virtual void AddInfo(KVIDentifier *info)
Definition: KVIDGraph.h:363
void Increment(Float_t x)
Definition: KVIDGraph.h:248
void Draw(Option_t *opt="")
Definition: KVIDGraph.cpp:888
void SortIdentifiers()
Definition: KVIDGraph.h:374
KVIDentifier * GetInfo(const Char_t *name) const
Definition: KVIDGraph.h:283
void AddIDTelescope(KVBase *t)
Definition: KVIDGraph.h:406
Int_t GetNumberOfIdentifiers() const
Definition: KVIDGraph.h:327
virtual void Copy(TObject &) const
Copy this to 'obj'.
Definition: KVIDGraph.cpp:115
const Char_t * GetRunList() const
Definition: KVIDGraph.h:265
virtual void ReadIdentifierFromAsciiFile(TString &name, TString &type, TString &cl, std::ifstream &gridfile)
Read in new identifier object from file.
Definition: KVIDGraph.cpp:755
Axis_t fXmin
Definition: KVIDGraph.h:42
Bool_t IsOnlyZId() const
Definition: KVIDGraph.h:56
Int_t GetMassFormula() const
Definition: KVIDGraph.h:437
KVIDentifier * GetCut(const Char_t *name) const
Definition: KVIDGraph.h:279
const KVList * GetCuts() const
Definition: KVIDGraph.h:307
TVirtualPad * GetPad() const
Definition: KVIDGraph.h:132
const KVList * GetInfos() const
Definition: KVIDGraph.h:317
virtual TFitResultPtr Fit(TF1 *f1, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
Definition: KVIDGraph.h:477
void RevertToLastSavedVersion()
Definition: KVIDGraph.cpp:555
void UnDraw()
Definition: KVIDGraph.cpp:966
virtual void ReadFromAsciiFile(std::ifstream &gridfile)
Definition: KVIDGraph.cpp:601
virtual Bool_t ExistVersion(Int_t version)
Definition: KVIDGraph.h:229
TVirtualPad * IsDrawn() const
Definition: KVIDGraph.h:443
void ClearPad(TVirtualPad *)
Definition: KVIDGraph.cpp:49
static Bool_t GetAutoAdd()
Definition: KVIDGraph.h:105
void WriteParameterListOfIDTelescopes()
Definition: KVIDGraph.cpp:382
virtual Int_t RemovePoint()
Definition: KVIDGraph.h:536
virtual void Identify(Double_t, Double_t, KVIdentificationResult *) const =0
TString GetPattern(void)
Definition: KVIDGraph.h:239
TString fPattern
pattern of filenames used to write or read grid
Definition: KVIDGraph.h:51
void SetLineColor(Color_t lcolor)
Definition: KVIDGraph.h:186
void Print(Option_t *opt="") const
Print out all objects in graph.
Definition: KVIDGraph.cpp:1047
virtual void WriteAsciiFile_WP(Int_t version=-1)
Definition: KVIDGraph.cpp:1387
KVIDentifier * GetIdentifier(Int_t Z, Int_t A) const
Definition: KVIDGraph.cpp:310
virtual void DrawPanel()
Definition: KVIDGraph.h:468
virtual Bool_t HasMassIDCapability() const
Definition: KVIDGraph.h:168
KVIDentifier * GetIdentifierAt(Int_t index) const
Definition: KVIDGraph.h:270
virtual TObject * DrawClone(Option_t *option="") const
Definition: KVIDGraph.h:492
virtual ~KVIDGraph()
Definition: KVIDGraph.cpp:188
const KVNumberList & GetRuns() const
Definition: KVIDGraph.h:260
virtual Bool_t IsIdentifiable(Double_t, Double_t, TString *rejected_by=nullptr) const
Definition: KVIDGraph.cpp:1269
void FindAxisLimits()
Calculate X/Y min/max of all objects in graph.
Definition: KVIDGraph.cpp:1073
Axis_t GetYmin() const
Definition: KVIDGraph.h:388
virtual void SetVarY(const char *v)
Definition: KVIDGraph.h:528
const KVNameValueList * GetParameters() const
Definition: KVIDGraph.h:287
static KVIDGraph * AddGraphs(KVIDGraph *g1, Int_t id1_min, Int_t id1_max, KVIDGraph *g2, Int_t id2_min, Int_t id2_max)
Definition: KVIDGraph.cpp:1219
const Char_t * GetIDTelescopeLabel() const
Definition: KVIDGraph.h:429
virtual Int_t RemovePoint(Int_t i)
Definition: KVIDGraph.h:540
KVIDGraph * GetLastSavedVersion() const
Definition: KVIDGraph.h:115
virtual void DrawAndAdd(const Char_t *type="ID", const Char_t *classname="KVIDentifier")
Definition: KVIDGraph.cpp:1174
virtual void AddCut(KVIDentifier *cut)
Definition: KVIDGraph.h:352
void AddParameter(char *Name, char *Value)
Definition: KVIDGraph.h:84
KVNameValueList * GetParameters()
Definition: KVIDGraph.h:292
virtual void SetFillAttributes()
Definition: KVIDGraph.h:516
void SetMassFormula(Int_t)
Definition: KVIDGraph.cpp:1473
const Char_t * GetName() const
Definition: KVIDGraph.cpp:1332
TList fTelescopes
ID telescopes for which grid is valid.
Definition: KVIDGraph.h:49
virtual void SetMarkerAttributes()
Definition: KVIDGraph.h:520
static Bool_t fAutoAddGridManager
if =kTRUE, grids are automatically added to ID grid manager on creation (default)
Definition: KVIDGraph.h:54
void WriteAsciiFile(const Char_t *filename)
Open, write and close ascii file containing this grid.
Definition: KVIDGraph.cpp:404
virtual KVIDentifier * New(const Char_t *)
Create new object of class "id_class" which derives from KVIDentifier.
Definition: KVIDGraph.cpp:807
virtual void BackwardsCompatibilityFix()
Definition: KVIDGraph.cpp:1361
void AddIDTelescopes(const TList *)
Associate this graph with all ID telescopes in list.
Definition: KVIDGraph.cpp:1516
virtual void AddIdentifier(KVIDentifier *id)
Definition: KVIDGraph.h:339
virtual void SetInfos(Double_t, Double_t, KVIdentificationResult *) const
loop over KVIDGraph::fInfoZones to set flags in KVIdentificationResult
Definition: KVIDGraph.cpp:1297
virtual void DrawClass() const
Definition: KVIDGraph.h:488
static KVIDGraph * MakeIDGraph(const Char_t *)
Definition: KVIDGraph.cpp:1556
virtual void SaveAs(const char *filename="", Option_t *option="") const
Definition: KVIDGraph.h:504
const Char_t * GetNamesOfIDTelescopes() const
Definition: KVIDGraph.cpp:1611
virtual void Inspect() const
Definition: KVIDGraph.h:500
Axis_t GetXmin() const
Definition: KVIDGraph.h:384
void SetXScaleFactor(Double_t=0)
Definition: KVIDGraph.cpp:226
Int_t GetNumberOfInfos() const
Definition: KVIDGraph.h:335
virtual Int_t GetQualityCode() const
Definition: KVIDGraph.h:400
TVirtualPad * fPad
pad in which graph is drawn
Definition: KVIDGraph.h:47
void SetYVariable(const char *v)
Definition: KVIDGraph.h:150
virtual void Dump() const
Definition: KVIDGraph.h:496
KVList * GetCuts()
Definition: KVIDGraph.h:312
virtual Bool_t AcceptIDForTest(const KVIdentificationResult &idr)
Definition: KVIDGraph.h:74
KVList * GetInfos()
Definition: KVIDGraph.h:322
Axis_t fYmax
min/max Y coordinates of graph
Definition: KVIDGraph.h:43
void SetRuns(const KVNumberList &nl)
Set list of runs for which grid is valid.
Definition: KVIDGraph.cpp:1316
virtual Int_t CheckVersion(Int_t version)
Definition: KVIDGraph.cpp:1423
virtual void SetEditable(Bool_t editable=kTRUE)
Definition: KVIDGraph.cpp:1582
void SetYScaleFactor(Double_t=0)
Definition: KVIDGraph.cpp:250
virtual void Initialize()=0
virtual void FitPanel()
virtual void SetTitle(const char *title="") {TGraph::SetTitle(title);};
Definition: KVIDGraph.h:464
Axis_t fXmax
min/max X coordinates of graph
Definition: KVIDGraph.h:42
KVList * GetIdentifiers()
Definition: KVIDGraph.h:302
Bool_t fOnlyZId
set to kTRUE when only to be used to give Z identification of nuclei, no mass info
Definition: KVIDGraph.h:38
virtual void Clear(Option_t *opt="")
Definition: KVIDGraph.cpp:203
void ResetPad()
Definition: KVIDGraph.cpp:33
Int_t fMassFormula
OPTION={GetMethod="GetMassFormula";SetMethod="SetMassFormula";Items=(0="Beta-stability",...
Definition: KVIDGraph.h:52
void ResetDraw()
Definition: KVIDGraph.cpp:1003
void SetPattern(TString pattern)
Definition: KVIDGraph.h:234
Axis_t fYmin
Definition: KVIDGraph.h:43
void RemoveCut(KVIDentifier *)
Remove and destroy cut.
Definition: KVIDGraph.cpp:350
void RemoveIDTelescope(KVBase *t)
Definition: KVIDGraph.h:415
KVList fInfoZones
contours/lines used to add info to particles (ex: punch-through)
Definition: KVIDGraph.h:41
virtual void SetOnlyZId(Bool_t yes=kTRUE)
Definition: KVIDGraph.cpp:1496
virtual void SetMaximum(Double_t maximum=-1111)
Definition: KVIDGraph.h:455
void Modified()
Definition: KVIDGraph.h:254
void ClearListOfTelescopes()
Definition: KVIDGraph.h:111
const KVList * GetIdentifiers() const
Definition: KVIDGraph.h:297
Handles a stock of identification grids to be used by one or more identification telescopes.
Base class for graphical cuts used in particle identification.
Definition: KVIDentifier.h:27
void SetParent(KVIDGraph *)
Set pointer to parent ID graph.
Full result of one attempted particle identification.
Bool_t IDOK
general quality of identification, =kTRUE if acceptable identification made
Extended TList class which owns its objects by default.
Definition: KVList.h:27
void Sort(Bool_t order=kSortAscending)
Definition: KVList.h:34
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
void SetValue(const Char_t *name, value_type value)
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:83
virtual Int_t GetSize() const
virtual TObject * At(Int_t idx) const
virtual void Execute(const char *method, const char *params, Int_t *error=0)
virtual void Add(TObject *obj)
virtual Bool_t IsSorted() const
virtual TObject * FindObject(const char *name) const
virtual void SetFillAttributes()
virtual void SetLineAttributes()
virtual void SetLineColor(Color_t lcolor)
virtual void SetMarkerAttributes()
Bool_t Contains(const char *name) const
const char * GetVarY() const
virtual void SetVarY(const char *vary)
virtual void SetVarX(const char *varx)
const char * GetVarX() const
virtual void SetMaximum(Double_t maximum=-1111)
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Axis_t xmin=0, Axis_t xmax=0)
virtual void FitPanel()
virtual Int_t RemovePoint()
virtual Int_t InsertPoint()
virtual void DrawPanel()
virtual void SetMinimum(Double_t minimum=-1111)
virtual void Add(TObject *obj)
TObject * Remove(const TObjLinkPtr_t &lnk)
virtual TObject * First() const
virtual void Clear(Option_t *option="")
virtual void SetName(const char *name)
virtual void Inspect() const
void SetBit(UInt_t f)
virtual void Dump() const
virtual TObject * DrawClone(Option_t *option="") const
virtual void SaveAs(const char *filename="", Option_t *option="") const
virtual void Delete(Option_t *option="")
virtual void SetDrawOption(Option_t *option="")
virtual void DrawClass() const
TString & ReplaceAll(const char *s1, const char *s2)
RooCmdArg Name(const char *name)
Double_t x[n]
TF1 * f1
const long double cl
Definition: KVUnits.h:85
v