![]() |
|
|||
File indexing completed on 2025-07-11 08:30:20
0001 #pragma once 0002 0003 #include <JANA/JEvent.h> 0004 #include <JANA/JEventProcessor.h> 0005 #include <TDirectory.h> 0006 #include <TH1.h> 0007 #include <TH2.h> 0008 #include <spdlog/fwd.h> 0009 #include <memory> 0010 0011 class TrackingEfficiency_processor : public JEventProcessor { 0012 public: 0013 //---------------------------- 0014 // Init 0015 // 0016 // This is called once before the first call to the Process method 0017 // below. You may, for example, want to open an output file here. 0018 // Only one thread will call this. 0019 void Init() override; 0020 0021 //---------------------------- 0022 // Process 0023 // 0024 // This is called for every event. Multiple threads may call this 0025 // simultaneously. If you write something to an output file here 0026 // then make sure to protect it with a mutex or similar mechanism. 0027 // Minimize what is done while locked since that directly affects 0028 // the multi-threaded performance. 0029 void Process(const std::shared_ptr<const JEvent>& event) override; 0030 0031 //---------------------------- 0032 // Finish 0033 // 0034 // This is called once after all events have been processed. You may, 0035 // for example, want to close an output file here. 0036 // Only one thread will call this. 0037 void Finish() override; 0038 0039 private: 0040 TDirectory* m_dir_main{}; /// Main TDirectory for this plugin 'occupancy_ana' 0041 TH1F* m_th1_prt_pz{}; /// MC Particles pz 0042 TH1F* m_th1_prt_energy{}; /// MC Particles total E 0043 TH1F* m_th1_prt_theta{}; /// MC Particles theta angle 0044 TH1F* m_th1_prt_phi{}; /// MC Particles phi angle 0045 TH2F* m_th2_prt_pxy{}; /// MC Particles px,py 0046 0047 std::shared_ptr<spdlog::logger> m_log; 0048 };
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |