File indexing completed on 2025-08-03 08:20:26
0001 #ifndef MACRO_G4TOPOCLUSTERRECO_C
0002 #define MACRO_G4TOPOCLUSTERRECO_C
0003
0004 #include <GlobalVariables.C>
0005
0006 #include <caloreco/RawClusterBuilderTopo.h>
0007
0008 #include <fun4all/Fun4AllServer.h>
0009
0010 R__LOAD_LIBRARY(libcalo_reco.so)
0011
0012 namespace Enable
0013 {
0014 bool TOPOCLUSTER = false;
0015 int TOPOCLUSTER_VERBOSITY = 0;
0016 }
0017
0018 void TopoClusterReco()
0019 {
0020 int verbosity = max(Enable::VERBOSITY, Enable::TOPOCLUSTER_VERBOSITY);
0021
0022
0023
0024
0025
0026 Fun4AllServer* se = Fun4AllServer::instance();
0027
0028
0029 RawClusterBuilderTopo* ClusterBuilder = new RawClusterBuilderTopo("HcalRawClusterBuilderTopo");
0030 ClusterBuilder->Verbosity(verbosity);
0031 ClusterBuilder->set_nodename("TOPOCLUSTER_ALLCALO");
0032 ClusterBuilder->set_enable_HCal(true);
0033 ClusterBuilder->set_enable_EMCal(true);
0034 ClusterBuilder->set_noise(0.0025, 0.006, 0.03);
0035 ClusterBuilder->set_significance(4.0, 2.0, 0.0);
0036 ClusterBuilder->allow_corner_neighbor(true);
0037 ClusterBuilder->set_do_split(true);
0038 ClusterBuilder->set_minE_local_max(1.0, 2.0, 0.5);
0039 ClusterBuilder->set_R_shower(0.025);
0040 ClusterBuilder->set_use_only_good_towers(true);
0041 ClusterBuilder->set_absE(true);
0042 se->registerSubsystem(ClusterBuilder);
0043
0044
0045 RawClusterBuilderTopo* ClusterBuilder1 = new RawClusterBuilderTopo("HcalRawClusterBuilderTopo1");
0046 ClusterBuilder1->Verbosity(verbosity);
0047 ClusterBuilder1->set_nodename("TOPOCLUSTER_EMCAL");
0048 ClusterBuilder1->set_enable_HCal(false);
0049 ClusterBuilder1->set_enable_EMCal(true);
0050 ClusterBuilder1->set_noise(0.0025, 0.006, 0.03);
0051 ClusterBuilder1->set_significance(4.0, 2.0, 0.0);
0052 ClusterBuilder1->allow_corner_neighbor(true);
0053 ClusterBuilder1->set_do_split(true);
0054 ClusterBuilder1->set_minE_local_max(1.0, 2.0, 0.5);
0055 ClusterBuilder1->set_R_shower(0.025);
0056 ClusterBuilder1->set_use_only_good_towers(true);
0057 ClusterBuilder1->set_absE(true);
0058 se->registerSubsystem(ClusterBuilder1);
0059
0060
0061 RawClusterBuilderTopo* ClusterBuilder2 = new RawClusterBuilderTopo("HcalRawClusterBuilderTopo2");
0062 ClusterBuilder2->Verbosity(verbosity);
0063 ClusterBuilder2->set_nodename("TOPOCLUSTER_HCAL");
0064 ClusterBuilder2->set_enable_HCal(true);
0065 ClusterBuilder2->set_enable_EMCal(false);
0066 ClusterBuilder2->set_noise(0.0025, 0.006, 0.03);
0067 ClusterBuilder2->set_significance(4.0, 2.0, 0.0);
0068 ClusterBuilder2->allow_corner_neighbor(true);
0069 ClusterBuilder2->set_do_split(true);
0070 ClusterBuilder2->set_minE_local_max(1.0, 2.0, 0.5);
0071 ClusterBuilder2->set_R_shower(0.025);
0072 ClusterBuilder2->set_use_only_good_towers(true);
0073 ClusterBuilder2->set_absE(true);
0074 se->registerSubsystem(ClusterBuilder2);
0075
0076 return;
0077 }
0078 #endif