Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Trkr_LaserClustering.C
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Trkr_LaserClustering.C
1 #ifndef MACRO_TRKRLASERCLUS_C
2 #define MACRO_TRKRLASERCLUS_C
3 
4 #include <GlobalVariables.C>
5 
6 #include <G4_TrkrVariables.C>
7 //#include <G4_ActsGeom.C>
8 
9 #pragma GCC diagnostic push
10 #pragma GCC diagnostic ignored "-Wundefined-internal"
11 #include <tpc/TpcClusterizer.h>
13 #pragma GCC diagnostic pop
14 
15 #include <tpc/TpcClusterCleaner.h>
16 
21 
22 #include <fun4all/Fun4AllServer.h>
23 
24 
25 R__LOAD_LIBRARY(libtpc.so)
26 R__LOAD_LIBRARY(libtpccalib.so)
27 
28 
29 
30 
32 {
36 
37  //-------------
38  // Cluster Hits
39  //-------------
40 
41  // For the Tpc
42  //==========
44  {
45 
46  auto tpcclusterizer = new TpcSimpleClusterizer;
47  tpcclusterizer->Verbosity(verbosity);
48  se->registerSubsystem(tpcclusterizer);
49 
50  } else {
51 
52  auto tpcclusterizer = new TpcClusterizer;
53  tpcclusterizer->Verbosity(verbosity);
54  tpcclusterizer->set_do_hit_association( G4TPC::DO_HIT_ASSOCIATION );
55  se->registerSubsystem(tpcclusterizer);
56 
57  }
58 
60  {
61  auto tpcclustercleaner = new TpcClusterCleaner;
62  tpcclustercleaner->Verbosity(verbosity);
63  se->registerSubsystem(tpcclustercleaner);
64  }
65 
66  // direct laser reconstruction
68  {
69  auto directLaserReconstruction = new TpcDirectLaserReconstruction;
70  directLaserReconstruction->set_outputfile( G4TPC::DIRECT_LASER_ROOTOUTPUT_FILENAME );
71  directLaserReconstruction->set_savehistograms( G4TPC::DIRECT_LASER_SAVEHISTOGRAMS );
72  directLaserReconstruction->set_histogram_outputfile( G4TPC::DIRECT_LASER_HISTOGRAMOUTPUT_FILENAME );
73  se->registerSubsystem(directLaserReconstruction);
74  }
75 
76  // central membrane reconstruction
78  {
79  // central membrane clusterizer
80  auto centralMembraneClusterizer = new PHTpcCentralMembraneClusterizer;
81  centralMembraneClusterizer->Verbosity(verbosity);
82  centralMembraneClusterizer->set_histos_on( false );
83  centralMembraneClusterizer->set_modulo_threshold(5);
84  centralMembraneClusterizer->set_metaCluster_threshold(18);
85  se->registerSubsystem(centralMembraneClusterizer);
86 
87 
88  // match central membrane clusters to pads and generate distortion correction
89  auto centralMembraneMatcher = new PHTpcCentralMembraneMatcher;
90  centralMembraneMatcher->setSavehistograms( false );
91  centralMembraneMatcher->Verbosity( verbosity );
92  centralMembraneMatcher->setNMatchIter(2);
93  se->registerSubsystem(centralMembraneMatcher);
94  }
95 }
96 
97 
98 #endif