File indexing completed on 2024-04-06 12:31:42
0001 #include "FWCore/Framework/interface/EventSetup.h"
0002 #include "FWCore/Framework/interface/Frameworkfwd.h"
0003 #include "FWCore/Framework/interface/one/EDAnalyzer.h"
0004 #include "FWCore/MessageLogger/interface/MessageLogger.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006 #include "MagneticField/Engine/interface/MagneticField.h"
0007 #include "TrackingTools/Records/interface/TransientTrackRecord.h"
0008 #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h"
0009
0010 #include <memory>
0011 #include <iostream>
0012 #include <string>
0013
0014 using namespace edm;
0015
0016 class TransientTrackBuilderTest : public edm::one::EDAnalyzer<> {
0017 public:
0018 TransientTrackBuilderTest(const edm::ParameterSet& pset)
0019 : ttkToken_(esConsumes(edm::ESInputTag{"", "TransientTrackBuilder"})) {}
0020
0021 ~TransientTrackBuilderTest() = default;
0022
0023 virtual void analyze(const edm::Event& event, const edm::EventSetup& setup) {
0024 using namespace std;
0025
0026 edm::LogPrint("TrackerTrackBuilderTest")
0027 << " Asking for the TransientTrackBuilder with name TransientTrackBuilder\n";
0028 const TransientTrackBuilder* theB = &setup.getData(ttkToken_);
0029
0030 edm::LogPrint("TrackerTrackBuilderTest") << " Got a " << typeid(*theB).name() << endl;
0031 edm::LogPrint("TrackerTrackBuilderTest")
0032 << "Field at origin (in Testla): " << (*theB).field()->inTesla(GlobalPoint(0., 0., 0.)) << endl;
0033 }
0034
0035 private:
0036 const edm::ESGetToken<TransientTrackBuilder, TransientTrackRecord> ttkToken_;
0037 };