CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/Geometry/EcalAlgo/interface/WriteESAlignments.h

Go to the documentation of this file.
00001 #ifndef SOMEPACKAGE_WRITEESALIGNMENTS_H
00002 #define SOMEPACKAGE_WRITEESALIGNMENTS_H 1
00003 
00004 #include "boost/shared_ptr.hpp"
00005 
00006 namespace edm
00007 {
00008    class EventSetup ;
00009 }
00010 
00011 #include "CondFormats/Alignment/interface/Alignments.h"
00012 
00013 
00014 class WriteESAlignments
00015 {
00016    public:
00017 
00018       typedef Alignments*                  AliPtr ;
00019       typedef std::vector<AlignTransform>  AliVec ;
00020 
00021       typedef AlignTransform::Translation Trl ;
00022       typedef AlignTransform::Rotation    Rot ;
00023 
00024       typedef std::vector<double> DVec ;
00025 
00026       static const unsigned int k_nA ;
00027 
00028       WriteESAlignments( const edm::EventSetup& eventSetup ,
00029                          const DVec&            alphaVec   ,
00030                          const DVec&            betaVec    ,
00031                          const DVec&            gammaVec   ,
00032                          const DVec&            xtranslVec ,
00033                          const DVec&            ytranslVec ,
00034                          const DVec&            ztranslVec  ) ;
00035 
00036       ~WriteESAlignments() ;
00037 
00038    private:
00039 
00040       void convert( const edm::EventSetup& eS ,
00041                     const DVec&            a  ,
00042                     const DVec&            b  ,
00043                     const DVec&            g  ,
00044                     const DVec&            x  ,
00045                     const DVec&            y  ,
00046                     const DVec&            z  ,
00047                     AliVec&                va  ) ;
00048 
00049       void write( AliPtr aliPtr ) ;
00050 };
00051 
00052 #endif