CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
AlignableDataIORoot.h
Go to the documentation of this file.
1 #ifndef Alignment_CommonAlignmentAlgorithm_AlignableDataIORoot_h
2 #define Alignment_CommonAlignmentAlgorithm_AlignableDataIORoot_h
3 
4 #include <map>
5 
9 
11 
13 {
14 
15  friend class AlignmentIORoot;
16 
17  private:
20 
22  int open(const char* filename, int iteration, bool writemode)
23  { newopen=true; return openRoot(filename,iteration,writemode); }
24 
26  int close(void){ return closeRoot(); }
27 
29  int writeAbsRaw(const AlignableAbsData &ad);
31  AlignableAbsData readAbsRaw(Alignable* ali,int& ierr);
33  int writeRelRaw(const AlignableRelData &ad);
35  AlignableRelData readRelRaw(Alignable* ali,int& ierr);
36 
38  void createBranches(void);
39  void setBranchAddresses(void);
40 
41  // data members
42 
45  //unsigned int Id;
47  Double_t Pos[3];
48  Double_t Rot[9];
50  enum {kMaxNumPar = 20}; // slighly above 'two bowed surfaces' limit
52 
53  bool newopen;
54  typedef std::map< std::pair<align::ID, align::StructureType>, int > treemaptype;
56 
57 };
58 
59 
60 
61 #endif
AlignableDataIORoot(PosType p)
constructor
int writeRelRaw(const AlignableRelData &ad)
write relative positions
void setBranchAddresses(void)
set root branches
uint32_t ID
Definition: Definitions.h:26
AlignableAbsData readAbsRaw(Alignable *ali, int &ierr)
read absolute positions
int writeAbsRaw(const AlignableAbsData &ad)
write absolute positions
void createBranches(void)
create root branches
Base class for ROOT-based I/O of Alignment parameters etc.
Float_t deformationValues_[kMaxNumPar]
tuple iteration
Definition: align_cfg.py:5
int findEntry(align::ID, align::StructureType)
concrete class for ROOT based IO of Alignable positions
unsigned int UInt_t
Definition: FUTypes.h:12
align::StructureType ObjId
root tree contents
int closeRoot(void)
close IO
int openRoot(const char *filename, int iteration, bool writemode)
open IO
AlignableRelData readRelRaw(Alignable *ali, int &ierr)
read relative positions
tuple filename
Definition: lut2db_cfg.py:20
int open(const char *filename, int iteration, bool writemode)
open IO
std::map< std::pair< align::ID, align::StructureType >, int > treemaptype
int close(void)
close IO