10 #include "KVDP2toCsIGridConvertor.h"
13 #include "KVIDGridManager.h"
52 if (fGrids) fGrids->Clear();
53 else fGrids =
new TList;
54 ReadFile(id_and_imf_file);
56 TIter nextGrid(fGrids);
59 while ((grid = (
KVIDGrid*)nextGrid())) {
62 line->SetName(
"IMF_line");
65 ReadGammaFile(gamma_file);
67 else KVError::Error(
this,
"Convert()",
"gIDGridManager=0x0: create an ID grid manager first!");
76 void KVDP2toCsIGridConvertor::ReadGammaFile(
const Char_t* gammafile)
79 gamfile.open(gammafile);
81 if (!gamfile.good()) {
83 "Problem reading file %s", gammafile);
90 while (gamfile.good()) {
97 if (!
s.BeginsWith(
'#')) {
98 int ring, modu, frun, lrun;
99 if (sscanf(
s.Data(),
"%d %d %d %d", &ring, &modu, &frun, &lrun) !=
101 KVError::Error(
this,
"ReadGammaFile()",
"Problem reading file %s\nLast line read: %s",
102 gammafile,
s.Data());
109 (
"CsI R-L Grid First run=%d Last run=%d Ring min=%d Ring max=%d Mod min=%d Mod max=%d",
110 frun, lrun, ring, ring, modu, modu);
121 line->SetName(
"gamma_line");
123 grid->
Add(
"ok", line);
126 for (
int i = 0; i < npoints; i++) {
130 line->SetPoint(i, x, y);
char * Form(const char *fmt,...)
Converts dp2-format CsI R-L grids to KVIDGrids.
virtual ~KVDP2toCsIGridConvertor()
Destructor.
void Convert(const Char_t *id_and_imf_file, const Char_t *gamma_file)
void Add(TString, KVIDentifier *)
const KVList * GetCuts() const
KVSeqCollection * GetGrids()
Abstract base class for 2D identification grids in e.g. (dE,E) maps.
KVIDLine * NewLine(const Char_t *idline_class="")
Base class for lines/cuts used for particle identification in 2D data maps.
Base class for graphical cuts used in particle identification.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
virtual void AddAll(const TCollection *col)
TObject * FindObject(const char *name) const override
void Error(UserClass p, const char *location, const char *va_(fmt),...)