4 #ifndef __KVIDZAFROMZGRID_H
5 #define __KVIDZAFROMZGRID_H
7 #include "KVIDZAGrid.h"
9 #include "KVUniqueNameList.h"
10 #include "KVIdentificationResult.h"
11 #include "KVMultiGaussIsotopeFit.h"
188 interval(
int zz,
int aa,
double pid,
double pidmin = -1.,
double pidmax = -1.)
302 void add(
int aa,
double pid,
double pidmin = -1.,
double pidmax = -1.);
#define ClassDefOverride(name, id)
char * Form(const char *fmt,...)
virtual void SetOnlyZId(Bool_t yes=kTRUE)
Hybrid charge & mass identification grid.
void check_pidranges_and_massfits()
Check for inconsistencies between 'PIDRANGE' and 'MASSFIT' parameters.
const KVList * GetIntervalSets() const
bool MassIdentificationFromMultiGaussFit(KVMultiGaussIsotopeFit *, KVIdentificationResult *) const
void Initialize() override
KVList fTables
intervals for mass id
interval_set * GetIntervalSet(int zint) const
void WriteToAsciiFile(std::ofstream &gridfile) override
void Identify(Double_t x, Double_t y, KVIdentificationResult *) const override
Bool_t HasMassIDCapability() const override
virtual double DeduceAfromPID(KVIdentificationResult *idr) const
void AddIntervalSet(interval_set *)
add an interval set to the grid, updating the corresponding parameters
KVUniqueNameList fFits
multi-gaussian fits for mass id
KVMultiGaussIsotopeFit * GetMultiGaussFit(int z) const
void SetOnlyZId(Bool_t=kTRUE) override
void RemoveIntervalSet(int zint)
Remove interval set for given Z from grid.
void ReadFromAsciiFile(std::ifstream &gridfile) override
KVNumberList fPIDRangeZList
void Copy(TObject &obj) const override
int is_inside(double pid) const
Identification grid with lines corresponding to different nuclear isotopes (KVIDZALine)
Full result of one attempted particle identification.
Extended TList class which owns its objects by default.
Function for fitting PID mass spectra.
Strings used to represent a set of ranges of values.
void Copy(TObject &obj) const override
TObject * FindObject(const char *name) const override
Int_t GetSize() const override
Optimised list in which named objects can only be placed once.
virtual Int_t GetEntries() const
void Copy(TObject &named) const override
virtual void SetName(const char *name)
TString GetListOfMasses()
bool is_inside(double pid)
bool is_above(double pid)
void add(int aa, double pid, double pidmin=-1., double pidmax=-1.)
double eval(KVIdentificationResult *idr)
interval_set(int zz, int type)
void Copy(TObject &o) const override
bool is_right_of(double pid)
bool is_left_of(double pid)
void SetPIDmin(double pidmin)
void Copy(TObject &o) const override
void SetPIDmax(double pidmax)
bool is_inside(double pid)