KaliVeda
Toolkit for HIC analysis
KVTGIDManager.h
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 
42 protected:
46 
47 public:
48 
50  enum ETGIDMStatus {
51  kStatus_OK, //normal identification
52  kStatus_noTGID, //no KVTGID corresponding to requested identification
53  kStatus_OutOfIDRange, //point to identify outside of identification range of KVTGID
54  kStatus_ZtooSmall, //Z passed to IdentA too small (<1)
55  kStatus_ZtooLarge, //Z passed to IdentA larger than max Z defined by KVTGIDZA
56  kCurrentStatus //default argument for GetStatusString
57  };
58 
59  KVTGIDManager();
60  virtual ~ KVTGIDManager();
61 
62  virtual void AddTGID(KVTGID*);
63  KVTGID* GetTGID(const Char_t* name);
64  virtual void RemoveTGID(const Char_t* name);
65  virtual void RemoveAllTGID();
66  virtual KVTGID* GetTGID(const Char_t* idt_name, const Char_t* id_type,
67  const Char_t* grid_type);
68  const Char_t* GetTGIDName(const Char_t* idt_name,
69  const Char_t* id_type,
70  const Char_t* grid_type);
71 
73  {
74  return fIDList;
75  };
77  {
78  return fID_max;
79  };
80 
81  virtual Double_t IdentZ(const Char_t*, Double_t, Double_t, Double_t& funLTG,
82  const Char_t* grid_type);
83  virtual Double_t IdentA(const Char_t*, Double_t, Double_t, Double_t& funLTG,
84  const Char_t* grid_type, Int_t Z);
85 
86  virtual KVTGIDGrid* GetTGIDGrid(KVTGID* tgid, Double_t xmax,
87  Double_t xmin = 0., Int_t ID_min =
88  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
89 
90  virtual KVTGIDGrid* GetTGIDGrid(const Char_t* tgid_name, Double_t xmax,
91  Double_t xmin = 0., Int_t ID_min =
92  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
93  virtual KVTGIDGrid* GetTGIDGrid(const Char_t* idt_name,
94  const Char_t* id_type,
95  const Char_t* grid_type, Double_t xmax,
96  Double_t xmin = 0., Int_t ID_min =
97  0, Int_t ID_max = 0, Int_t npoints = 100, Bool_t logscale = kFALSE);
98 
99  inline virtual Int_t GetStatus() const
100  {
101  return fStatus;
102  };
103  inline void SetStatus(ETGIDMStatus s)
104  {
105  fStatus = s;
106  };
107  virtual const Char_t* GetStatusString(ETGIDMStatus s =
108  kCurrentStatus) const;
109 
110  ClassDef(KVTGIDManager, 1) //Handles a set of Tassan-Got Z & A identification functionals
111 };
112 #endif
int Int_t
bool Bool_t
char Char_t
double Double_t
#define ClassDef(name, id)
Extended TList class which owns its objects by default.
Definition: KVList.h:28
Grid representing result of fit.
Definition: KVTGIDGrid.h:24
Handles a set of Tassan-Got functional-based identifications (KVTGID objects) for use by a KVIDTelesc...
Definition: KVTGIDManager.h:41
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:44
const KVList & GetListOfIDFunctions() const
Definition: KVTGIDManager.h:72
KVList fIDList
KVTGID objects for identifications.
Definition: KVTGIDManager.h:43
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:50
KVTGIDManager()
Default constructor.
Int_t fStatus
transient member used to hold status of last call to IdentZ/IdentA
Definition: KVTGIDManager.h:45
Double_t GetIDmax() const
Definition: KVTGIDManager.h:76
virtual Int_t GetStatus() const
Definition: KVTGIDManager.h:99
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:44