Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:58:32

0001 /****************************************************************************
0002 * Authors: 
0003 *  Jan Kašpar (jan.kaspar@gmail.com) 
0004 ****************************************************************************/
0005 
0006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0007 #include "FWCore/Framework/interface/EventSetup.h"
0008 #include "FWCore/Framework/interface/ESHandle.h"
0009 
0010 #include "Geometry/VeryForwardGeometryBuilder/interface/CTPPSGeometry.h"
0011 
0012 #include "CondFormats/PPSObjects/interface/CTPPSRPAlignmentCorrectionData.h"
0013 #include "CondFormats/PPSObjects/interface/CTPPSRPAlignmentCorrectionsData.h"
0014 
0015 #include "CalibPPS/AlignmentRelative/interface/AlignmentAlgorithm.h"
0016 
0017 #include <vector>
0018 
0019 class AlignmentTask;
0020 
0021 /**
0022  *\brief Calculates the ideal result of the StraightTrackAlignment.
0023  **/
0024 class IdealResult : public AlignmentAlgorithm {
0025 protected:
0026   edm::ESHandle<CTPPSGeometry> gReal, gMisaligned;
0027 
0028 public:
0029   /// dummy constructor (not to be used)
0030   IdealResult() {}
0031 
0032   /// normal constructor
0033   IdealResult(const edm::ParameterSet &ps, AlignmentTask *_t);
0034 
0035   ~IdealResult() override {}
0036 
0037   std::string getName() override { return "Ideal"; }
0038 
0039   bool hasErrorEstimate() override { return false; }
0040 
0041   void begin(const CTPPSGeometry *geometryReal, const CTPPSGeometry *geometryMisaligned) override;
0042 
0043   void feed(const HitCollection &, const LocalTrackFit &) override {}
0044 
0045   void saveDiagnostics(TDirectory *) override {}
0046 
0047   void analyze() override {}
0048 
0049   unsigned int solve(const std::vector<AlignmentConstraint> &,
0050                      std::map<unsigned int, AlignmentResult> &result,
0051                      TDirectory *dir) override;
0052 
0053   void end() override {}
0054 };