 |
Belle II Software
release-05-02-19
|
13 #include <tracking/trackFindingVXD/segmentNetwork/DirectedNodeNetworkContainer.h>
14 #include <tracking/trackFindingVXD/segmentNetwork/Segment.h>
15 #include <tracking/trackFindingVXD/segmentNetwork/TrackNode.h>
17 #include <framework/datastore/StoreObjPtr.h>
18 #include <framework/datastore/StoreArray.h>
19 #include <mdst/dataobjects/MCParticle.h>
20 #include <framework/core/Module.h>
33 class SegmentNetworkAnalyzerModule :
public Module {
38 struct RootVariables {
39 std::vector<double>
phi{};
40 std::vector<double>
theta{};
41 std::vector<double>
pT{};
44 std::vector<int>
pdg{};
57 void event()
override;
93 template<
typename EntryType,
typename MetaInfoType>
void initialize() override
set up root file and check required Store Arrays
std::vector< double > phi
phi of the innermost hit (that is not the virtual IP)
std::vector< int > passed
did segment combination pass the three hit filters
std::vector< double > theta
theta of the innermost hit (that is not the virtual IP)
unsigned networkConnections
number of connections in network
void event() override
collect necessary data and put into TTree
std::vector< double > pT
pT of the related MCParticle
unsigned networkSize
segmentNetwork size
Network of directed nodes of the type EntryType.
TFile * m_rFilePtr
ptr to root file
Belle2::StoreObjPtr< Belle2::DirectedNodeNetworkContainer > m_network
StoreObjPtr to the SegmentNetwork and TrackNode Network container.
SegmentNetworkAnalyzerModule()
constructor
void terminate() override
write and close root file
std::string m_PARAMrootFileName
file name of the produced root file
std::vector< int > virtualIP
did the segment contain the virtual IP
Abstract base class for different kinds of events.
TTree * m_treePtr
ptr to TTree
size_t getNConnections(Belle2::DirectedNodeNetwork< EntryType, MetaInfoType > &network) const
get the number of connections between the nodes of a network
keep all the variables for rootoutput in one struct
void makeBranches()
setup the Branches in the output TTree
std::vector< int > signal
was segment combination signal
std::vector< int > pdg
pdg of the related MCParticle
Belle2::StoreArray< Belle2::MCParticle > m_mcParticles
MCParticles StoreArray for obtaining MC Information.
std::string m_PARAMnetworkName
StoreArray name of the DirectedNodeNetworkContainer.
RootVariables m_rootVariables
handle to collect all data for one event
void analyzeCombination(const Belle2::Segment< Belle2::TrackNode > &outer, const Belle2::Segment< Belle2::TrackNode > &inner, bool passed)
get necessary data from three hit combination and put them into the root variables