File indexing completed on 2025-08-05 08:14:49
0001 #ifndef __Proto4SampleFrac_H__
0002 #define __Proto4SampleFrac_H__
0003
0004 #include <TFile.h>
0005 #include <TNtuple.h>
0006 #include <fun4all/SubsysReco.h>
0007 #include <stdint.h>
0008 #include <fstream>
0009 #include <string>
0010
0011 class PHCompositeNode;
0012 class PHG4HitContainer;
0013 class PHG4TruthInfoContainer;
0014 class Fun4AllHistoManager;
0015 class TH1F;
0016 class TH2F;
0017 class TH3F;
0018 class TTree;
0019 class PHG4Particle;
0020 class RawTowerGeom;
0021 class RawTowerContainer;
0022
0023
0024 class Proto4SampleFrac : public SubsysReco
0025 {
0026 public:
0027
0028 Proto4SampleFrac(const std::string &calo_name, const std::string &filename);
0029
0030
0031 virtual ~Proto4SampleFrac();
0032
0033
0034 int Init(PHCompositeNode *topNode);
0035
0036
0037 int InitRun(PHCompositeNode *topNode);
0038
0039
0040 int process_event(PHCompositeNode *topNode);
0041
0042
0043 int End(PHCompositeNode *topNode);
0044
0045
0046 void
0047 is_sim(bool b)
0048 {
0049 _is_sim = b;
0050 }
0051
0052
0053 std::string get_histo_prefix();
0054
0055 private:
0056
0057 enum
0058 {
0059 n_size = 8
0060 };
0061
0062
0063 bool _is_sim;
0064
0065
0066 Fun4AllHistoManager *get_HistoManager();
0067
0068 std::pair<int, int>
0069 find_max(RawTowerContainer *towers, int cluster_size);
0070
0071
0072 std::string _filename;
0073 std::string _calo_name;
0074
0075 PHG4HitContainer* _calo_hit_container;
0076 PHG4HitContainer* _calo_abs_hit_container;
0077 PHG4TruthInfoContainer* _truth_container;
0078 };
0079
0080 #endif