CMS 3D CMS Logo

HIPUserVariablesIORoot.h
Go to the documentation of this file.
1 #ifndef HIPUserVariablesIORoot_H
2 #define HIPUserVariablesIORoot_H
3 
7 
11 public:
13 
16 
18  void writeHIPUserVariables(const Alignables& alivec, const char* filename, int iter, bool validCheck, int& ierr);
19 
21  std::vector<AlignmentUserVariables*> readHIPUserVariables(const Alignables& alivec,
22  const char* filename,
23  int iter,
24  int& ierr);
25 
26 private:
28  int writeOne(Alignable* ali) override;
29 
31  AlignmentUserVariables* readOne(Alignable* ali, int& ierr) override;
32 
34  int open(const char* filename, int iteration, bool writemode) override {
35  newopen = true;
36  return openRoot(filename, iteration, writemode);
37  }
38 
40  int close(void) override { return closeRoot(); }
41 
42  // helper functions
43 
44  int findEntry(unsigned int detId, int comp);
45  void createBranches(void) override;
46  void setBranchAddresses(void) override;
47 
48  // data members
49 
50  static const int nparmax = 19;
51 
53  int ObjId;
54  unsigned int Id;
55  int Nhit, Nparj, Npare;
56  int DataType;
57  double Jtvj[nparmax * (nparmax + 1) / 2];
58  double Jtve[nparmax];
59  double AlignableChi2;
60  unsigned int AlignableNdof;
61  double Par[nparmax];
62  double ParError[nparmax];
63 
64  bool newopen;
65  typedef std::map<std::pair<int, int>, int> treemaptype;
67 };
68 
69 #endif
AlignmentIORootBase::closeRoot
int closeRoot(void)
close IO
Definition: AlignmentIORootBase.cc:92
HIPUserVariablesIORoot::Nparj
int Nparj
Definition: HIPUserVariablesIORoot.h:55
HIPUserVariablesIORoot::AlignableNdof
unsigned int AlignableNdof
Definition: HIPUserVariablesIORoot.h:60
HIPUserVariablesIORoot::writeHIPUserVariables
void writeHIPUserVariables(const Alignables &alivec, const char *filename, int iter, bool validCheck, int &ierr)
Definition: HIPUserVariablesIORoot.cc:184
AlignmentUserVariables
(Abstract) Base class for alignment algorithm user variables
Definition: AlignmentUserVariables.h:6
HIPUserVariablesIORoot::Jtve
double Jtve[nparmax]
Definition: HIPUserVariablesIORoot.h:58
HIPUserVariablesIORoot::Jtvj
double Jtvj[nparmax *(nparmax+1)/2]
Definition: HIPUserVariablesIORoot.h:57
HIPUserVariablesIORoot::Id
unsigned int Id
Definition: HIPUserVariablesIORoot.h:54
HIPUserVariablesIORoot::setBranchAddresses
void setBranchAddresses(void) override
set root branches
Definition: HIPUserVariablesIORoot.cc:49
Alignable
Definition: Alignable.h:27
HIPUserVariablesIORoot::findEntry
int findEntry(unsigned int detId, int comp)
Definition: HIPUserVariablesIORoot.cc:68
HIPUserVariablesIORoot::DataType
int DataType
Definition: HIPUserVariablesIORoot.h:56
AlignmentUserVariablesIO.h
AlCaHLTBitMon_QueryRunRegistry.comp
comp
Definition: AlCaHLTBitMon_QueryRunRegistry.py:249
HIPUserVariablesIORoot::Npare
int Npare
Definition: HIPUserVariablesIORoot.h:55
AlignmentIORootBase.h
corrVsCorr.filename
filename
Definition: corrVsCorr.py:123
HIPUserVariablesIORoot::treemap
treemaptype treemap
Definition: HIPUserVariablesIORoot.h:66
HIPUserVariablesIORoot::Alignables
align::Alignables Alignables
Definition: HIPUserVariablesIORoot.h:12
HIPUserVariablesIORoot::ParError
double ParError[nparmax]
Definition: HIPUserVariablesIORoot.h:62
HIPUserVariablesIORoot
Definition: HIPUserVariablesIORoot.h:10
HIPUserVariablesIORoot::open
int open(const char *filename, int iteration, bool writemode) override
Definition: HIPUserVariablesIORoot.h:34
HIPUserVariablesIORoot::readHIPUserVariables
std::vector< AlignmentUserVariables * > readHIPUserVariables(const Alignables &alivec, const char *filename, int iter, int &ierr)
Definition: HIPUserVariablesIORoot.cc:207
HIPUserVariablesIORoot::Par
double Par[nparmax]
Definition: HIPUserVariablesIORoot.h:61
HIPUserVariablesIORoot::newopen
bool newopen
Definition: HIPUserVariablesIORoot.h:64
Utilities.h
HIPUserVariablesIORoot::writeOne
int writeOne(Alignable *ali) override
Definition: HIPUserVariablesIORoot.cc:96
AlignmentIORootBase
Base class for ROOT-based I/O of Alignment parameters etc.
Definition: AlignmentIORootBase.h:11
HIPUserVariablesIORoot::HIPUserVariablesIORoot
HIPUserVariablesIORoot()
Definition: HIPUserVariablesIORoot.cc:15
align::Alignables
std::vector< Alignable * > Alignables
Definition: Utilities.h:31
AlignmentIORootBase::openRoot
int openRoot(const char *filename, int iteration, bool writemode)
open IO
Definition: AlignmentIORootBase.cc:16
HIPUserVariablesIORoot::Nhit
int Nhit
Definition: HIPUserVariablesIORoot.h:55
HIPUserVariablesIORoot::nparmax
static const int nparmax
Definition: HIPUserVariablesIORoot.h:50
AlignmentUserVariablesIO
Definition: AlignmentUserVariablesIO.h:17
align_cfg.iteration
iteration
Definition: align_cfg.py:5
HIPUserVariablesIORoot::createBranches
void createBranches(void) override
create root branches
Definition: HIPUserVariablesIORoot.cc:31
HIPUserVariablesIORoot::readOne
AlignmentUserVariables * readOne(Alignable *ali, int &ierr) override
Definition: HIPUserVariablesIORoot.cc:140
HIPUserVariablesIORoot::treemaptype
std::map< std::pair< int, int >, int > treemaptype
Definition: HIPUserVariablesIORoot.h:65
HIPUserVariablesIORoot::AlignableChi2
double AlignableChi2
Definition: HIPUserVariablesIORoot.h:59
HIPUserVariablesIORoot::close
int close(void) override
Definition: HIPUserVariablesIORoot.h:40
HIPUserVariablesIORoot::ObjId
int ObjId
Definition: HIPUserVariablesIORoot.h:53