ATLAS Offline Software
AthenaPoolTestMatrix.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
16 /***************************************************************************
17  Athena Pool Test data package
18  -----------------------------------------
19  ***************************************************************************/
20 
21 //<doc><file> $Id: AthenaPoolTestMatrix.h,v 1.10 2006-08-30 07:49:42 schaffer Exp $
22 //<version> $Name: not supported by cvs2svn $
23 
24 #ifndef ATHENAPOOLTESTDATA_ATHENAPOOLTESTMATRIX_H
25 # define ATHENAPOOLTESTDATA_ATHENAPOOLTESTMATRIX_H
26 
27 
28 #include "CLHEP/Matrix/Matrix.h"
29 #include "CLHEP/Geometry/Point3D.h"
30 #include "CLHEP/Geometry/Transform3D.h"
31 #include "AthenaKernel/CLASS_DEF.h"
32 #include <map>
33 
34 
36 {
37 public:
38 
39  typedef std::vector< std::map<unsigned int, CLHEP::HepMatrix> > matrixMaps_t;
40 
42 
44 
47 
48  const CLHEP::HepMatrix& smallMatrix () const;
49  const CLHEP::HepMatrix& bigMatrix () const;
50  const HepGeom::Point3D<double>& point () const;
51  const HepGeom::Point3D<double>& point1 () const;
52  const HepGeom::Transform3D& trans () const;
53 
54  int numberOfMatrices() const;
55  const CLHEP::HepMatrix& matrix ( int i ) const;
56  const matrixMaps_t& matrixMaps () const;
57 
58  void addMatrix (const CLHEP::HepMatrix* matrixPointer);
60 
61 private:
62  CLHEP::HepMatrix m_smallMatrix;
63  CLHEP::HepMatrix* m_bigMatrix;
64  HepGeom::Point3D<double> m_point;
65  HepGeom::Point3D<double>* m_point1;
66  std::vector< const CLHEP::HepMatrix* > m_matrices;
69  std::vector<int> m_vint;
70  std::vector<float> m_vfloat;
71 
72 };
73 
74 
75 CLASS_DEF(AthenaPoolTestMatrix, 153882668, 0)
76 
77 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>>
78 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>>
79 
80 inline const CLHEP::HepMatrix&
81 AthenaPoolTestMatrix::smallMatrix() const { return m_smallMatrix; }
82 
83 inline const CLHEP::HepMatrix&
85 
86 inline const HepGeom::Point3D<double>&
88 
89 inline const HepGeom::Point3D<double>&
91 
92 inline const HepGeom::Transform3D&
94 
95 inline void
96 AthenaPoolTestMatrix::addMatrix( const CLHEP::HepMatrix* matrixPointer ) { m_matrices.push_back( matrixPointer ); }
97 
98 inline void
100 {
101  m_trans = trans;
102 }
103 
104 inline int
106 
107 inline const CLHEP::HepMatrix&
108 AthenaPoolTestMatrix::matrix( int i ) const { return *(m_matrices[i]); }
109 
112 {
113  return (m_matrixMaps);
114 }
115 
116 
117 #endif // ATHENAPOOLTESTDATA_ATHENAPOOLTESTMATRIX_H
AthenaPoolTestMatrix::m_point1
HepGeom::Point3D< double > * m_point1
Definition: AthenaPoolTestMatrix.h:68
AthenaPoolTestMatrix::bigMatrix
const CLHEP::HepMatrix & bigMatrix() const
Definition: AthenaPoolTestMatrix.h:84
AthenaPoolTestMatrix::matrixMaps
const matrixMaps_t & matrixMaps() const
Definition: AthenaPoolTestMatrix.h:111
AthenaPoolTestMatrix::AthenaPoolTestMatrix
AthenaPoolTestMatrix()
Definition: AthenaPoolTestMatrix.cxx:21
AthenaPoolTestMatrix::matrix
const CLHEP::HepMatrix & matrix(int i) const
Definition: AthenaPoolTestMatrix.h:108
AthenaPoolTestMatrix::matrixMaps_t
std::vector< std::map< unsigned int, CLHEP::HepMatrix > > matrixMaps_t
Definition: AthenaPoolTestMatrix.h:42
AthenaPoolTestMatrix::addMatrix
void addMatrix(const CLHEP::HepMatrix *matrixPointer)
Definition: AthenaPoolTestMatrix.h:96
AthenaPoolTestMatrix::setTransform
void setTransform(const HepGeom::Transform3D trans)
Definition: AthenaPoolTestMatrix.h:99
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
AthenaPoolTestMatrix::numberOfMatrices
int numberOfMatrices() const
Definition: AthenaPoolTestMatrix.h:105
AthenaPoolTestMatrix::point
const HepGeom::Point3D< double > & point() const
Definition: AthenaPoolTestMatrix.h:87
AthenaPoolTestMatrix::m_matrixMaps
matrixMaps_t m_matrixMaps
Definition: AthenaPoolTestMatrix.h:70
lumiFormat.i
int i
Definition: lumiFormat.py:92
CLHEP
STD'S.
Definition: IAtRndmGenSvc.h:19
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
AthenaPoolTestMatrix::m_matrices
std::vector< const CLHEP::HepMatrix * > m_matrices
Definition: AthenaPoolTestMatrix.h:69
AthenaPoolTestMatrix::m_point
HepGeom::Point3D< double > m_point
Definition: AthenaPoolTestMatrix.h:67
AthenaPoolTestMatrix::trans
const HepGeom::Transform3D & trans() const
Definition: AthenaPoolTestMatrix.h:93
AthenaPoolTestMatrix::m_vint
std::vector< int > m_vint
Definition: AthenaPoolTestMatrix.h:72
AthenaPoolTestMatrix::m_smallMatrix
CLHEP::HepMatrix m_smallMatrix
Definition: AthenaPoolTestMatrix.h:65
AthenaPoolTestMatrix::operator=
AthenaPoolTestMatrix & operator=(const AthenaPoolTestMatrix &)=delete
AthenaPoolTestMatrix::m_trans
HepGeom::Transform3D m_trans
Definition: AthenaPoolTestMatrix.h:71
AthenaPoolTestMatrix::m_vfloat
std::vector< float > m_vfloat
Definition: AthenaPoolTestMatrix.h:73
AthenaPoolTestMatrix::m_bigMatrix
CLHEP::HepMatrix * m_bigMatrix
Definition: AthenaPoolTestMatrix.h:66
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
AthenaPoolTestMatrix::~AthenaPoolTestMatrix
~AthenaPoolTestMatrix()
Definition: AthenaPoolTestMatrix.cxx:65
AthenaPoolTestMatrix::smallMatrix
const CLHEP::HepMatrix & smallMatrix() const
Definition: AthenaPoolTestMatrix.h:81
AthenaPoolTestMatrix::point1
const HepGeom::Point3D< double > & point1() const
Definition: AthenaPoolTestMatrix.h:90
AthenaPoolTestMatrix
Simple class with various CLHEP classes for testing pool i/o from Athena.
Definition: AthenaPoolTestMatrix.h:36
CLASS_DEF.h
macros to associate a CLID to a type