KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVTGIDManager.h
Go to the documentation of this file.
1 /***************************************************************************
2  KVTGIDManager.h - description
3  -------------------
4  begin : 21 July 2005
5  copyright : (C) 2005 by J.D. Frankland
6  email : frankland@ganil.fr
7 
8 $Id: KVTGIDManager.h,v 1.10 2008/04/04 09:06:25 franklan Exp $
9 ***************************************************************************/
10 
11 #ifndef KVTGIDMAN__H
12 #define KVTGIDMAN__H
13 
14 #include "Rtypes.h"
15 #include "KVList.h"
16 #include "KVTGID.h"
17 
18 class KVTGIDGrid;
19 
41 protected:
45 
46 public:
47 
49  enum ETGIDMStatus {
50  kStatus_OK, //normal identification
51  kStatus_noTGID, //no KVTGID corresponding to requested identification
52  kStatus_OutOfIDRange, //point to identify outside of identification range of KVTGID
53  kStatus_ZtooSmall, //Z passed to IdentA too small (<1)
54  kStatus_ZtooLarge, //Z passed to IdentA larger than max Z defined by KVTGIDZA
55  kCurrentStatus //default argument for GetStatusString
56  };
57 
58  KVTGIDManager();
59  virtual ~ KVTGIDManager();
60 
61  virtual void AddTGID(KVTGID*);
62  KVTGID* GetTGID(const Char_t* name);
63  virtual void RemoveTGID(const Char_t* name);
64  virtual void RemoveAllTGID();
65  virtual KVTGID* GetTGID(const Char_t* idt_name, const Char_t* id_type,
66  const Char_t* grid_type);
67  const Char_t* GetTGIDName(const Char_t* idt_name,
68  const Char_t* id_type,
69  const Char_t* grid_type);
70 
72  {
73  return fIDList;
74  };
76  {
77  return fID_max;
78  };
79 
80  virtual Double_t IdentZ(const Char_t*, Double_t, Double_t, Double_t& funLTG,
81  const Char_t* grid_type);
82  virtual Double_t IdentA(const Char_t*, Double_t, Double_t, Double_t& funLTG,
83  const Char_t* grid_type, Int_t Z);
84 
85  virtual KVTGIDGrid* GetTGIDGrid(KVTGID* tgid, Double_t xmax,
86  Double_t xmin = 0., Int_t ID_min =
87  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
88 
89  virtual KVTGIDGrid* GetTGIDGrid(const Char_t* tgid_name, Double_t xmax,
90  Double_t xmin = 0., Int_t ID_min =
91  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
92  virtual KVTGIDGrid* GetTGIDGrid(const Char_t* idt_name,
93  const Char_t* id_type,
94  const Char_t* grid_type, Double_t xmax,
95  Double_t xmin = 0., Int_t ID_min =
96  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
97 
98  inline virtual Int_t GetStatus() const
99  {
100  return fStatus;
101  };
102  inline void SetStatus(ETGIDMStatus s)
103  {
104  fStatus = s;
105  };
106  virtual const Char_t* GetStatusString(ETGIDMStatus s =
107  kCurrentStatus) const;
108 
109  ClassDef(KVTGIDManager, 1) //Handles a set of Tassan-Got Z & A identification functionals
110 };
111 #endif
int Int_t
char Char_t
bool Bool_t
double Double_t
#define ClassDef(name, id)
Extended TList class which owns its objects by default.
Definition: KVList.h:27
Grid representing result of fit.
Definition: KVTGIDGrid.h:23
Handles a set of Tassan-Got functional-based identifications (KVTGID objects) for use by a KVIDTelesc...
Definition: KVTGIDManager.h:40
virtual void RemoveTGID(const Char_t *name)
Delete the identification object with name.
virtual const Char_t * GetStatusString(ETGIDMStatus s=kCurrentStatus) const
virtual void RemoveAllTGID()
Delete all identification objects.
Double_t fID_max
maximum ID of all TGID objects
Definition: KVTGIDManager.h:43
const KVList & GetListOfIDFunctions() const
Definition: KVTGIDManager.h:71
KVList fIDList
KVTGID objects for identifications.
Definition: KVTGIDManager.h:42
virtual Double_t IdentA(const Char_t *, Double_t, Double_t, Double_t &funLTG, const Char_t *grid_type, Int_t Z)
virtual KVTGIDGrid * GetTGIDGrid(KVTGID *tgid, Double_t xmax, Double_t xmin=0., Int_t ID_min=0, Int_t ID_max=0, Int_t npoints=100, Bool_t logscale=kFALSE)
virtual void AddTGID(KVTGID *)
virtual ~ KVTGIDManager()
const Char_t * GetTGIDName(const Char_t *idt_name, const Char_t *id_type, const Char_t *grid_type)
void SetStatus(ETGIDMStatus s)
ETGIDMStatus
status codes for IdentZ/IdentA
Definition: KVTGIDManager.h:49
KVTGIDManager()
Default constructor.
Int_t fStatus
transient member used to hold status of last call to IdentZ/IdentA
Definition: KVTGIDManager.h:44
Double_t GetIDmax() const
Definition: KVTGIDManager.h:75
virtual Int_t GetStatus() const
Definition: KVTGIDManager.h:98
virtual Double_t IdentZ(const Char_t *, Double_t, Double_t, Double_t &funLTG, const Char_t *grid_type)
KVTGID * GetTGID(const Char_t *name)
Retrieve the identification object with name.
Abstract base class for particle identfication using functionals developed by L. Tassan-Got (IPN Orsa...
Definition: KVTGID.h:43
const long double s
Definition: KVUnits.h:94