Belle II Software  release-05-02-19
BtubeCreatorModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2019 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Sourav Dey, Abi Soffer *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <framework/core/Module.h>
14 #include <string>
15 
16 
17 // DataStore
18 #include <framework/database/DBObjPtr.h>
19 #include <framework/datastore/StoreArray.h>
20 #include <framework/datastore/StoreObjPtr.h>
21 
22 // DataObjects
23 #include <mdst/dbobjects/BeamSpot.h>
24 #include <analysis/dataobjects/ParticleList.h>
25 #include <analysis/dataobjects/Btube.h>
26 
27 // rave
28 #include <analysis/VertexFitting/RaveInterface/RaveSetup.h>
29 #include <analysis/VertexFitting/RaveInterface/RaveVertexFitter.h>
30 #include <analysis/VertexFitting/RaveInterface/RaveKinematicVertexFitter.h>
31 
32 #include <analysis/DecayDescriptor/DecayDescriptor.h>
33 namespace Belle2 {
43  class BtubeCreatorModule : public Module {
44 
45  public:
46 
51 
53  virtual void initialize() override;
54 
56  virtual void event() override;
57 
58  private:
59 
60  std::string m_listName;
61  std::string m_decayString;
63  double m_Bfield;
64  TVector3 m_BeamSpotCenter;
65  TMatrixDSym m_beamSpotCov;
75  bool doVertexFit(Particle* p);
76  void addextrainfos(Particle* daughter, Particle* copy, TMatrix mat, TLorentzVector TLV);
77  bool m_verbose;
78  };
80 }
Belle2::BtubeCreatorModule::m_Bfield
double m_Bfield
magnetic field from data base
Definition: BtubeCreatorModule.h:71
Belle2::BtubeCreatorModule::initialize
virtual void initialize() override
declare data store elements
Definition: BtubeCreatorModule.cc:62
Belle2::BtubeCreatorModule::tubeArray
StoreArray< Btube > tubeArray
the (output) array of Btube objects
Definition: BtubeCreatorModule.h:76
Belle2::BtubeCreatorModule::m_verbose
bool m_verbose
run fit with a lot of B2INFOs for debugging
Definition: BtubeCreatorModule.h:85
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::BtubeCreatorModule::event
virtual void event() override
process event
Definition: BtubeCreatorModule.cc:83
Belle2::BtubeCreatorModule::m_BeamSpotCenter
TVector3 m_BeamSpotCenter
Beam spot position.
Definition: BtubeCreatorModule.h:72
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::BtubeCreatorModule::m_beamSpotDB
DBObjPtr< BeamSpot > m_beamSpotDB
Beam spot database object.
Definition: BtubeCreatorModule.h:74
Belle2::BtubeCreatorModule::doVertexFit
bool doVertexFit(Particle *p)
Main steering routine.
Definition: BtubeCreatorModule.cc:267
Belle2::BtubeCreatorModule::particles
StoreArray< Particle > particles
the particles
Definition: BtubeCreatorModule.h:75
Belle2::Particle
Class to store reconstructed particles.
Definition: Particle.h:77
Belle2::DecayDescriptor
The DecayDescriptor stores information about a decay tree or parts of a decay tree.
Definition: DecayDescriptor.h:43
Belle2::BtubeCreatorModule::BtubeCreatorModule
BtubeCreatorModule()
Constructor: Sets the description, the properties and the parameters of the module.
Definition: BtubeCreatorModule.cc:45
Belle2::StoreArray< Particle >
Belle2::BtubeCreatorModule::m_decayString
std::string m_decayString
specifies which daughter particles will be used as reference to create Btube
Definition: BtubeCreatorModule.h:69
Belle2::BtubeCreatorModule::addextrainfos
void addextrainfos(Particle *daughter, Particle *copy, TMatrix mat, TLorentzVector TLV)
fills extrainfos to the particle
Definition: BtubeCreatorModule.cc:281
Belle2::BtubeCreatorModule::m_decaydescriptor
DecayDescriptor m_decaydescriptor
Decay descriptor of decays to look for.
Definition: BtubeCreatorModule.h:77
Belle2::BtubeCreatorModule::m_listName
std::string m_listName
name of particle list
Definition: BtubeCreatorModule.h:68
Belle2::BtubeCreatorModule::m_beamSpotCov
TMatrixDSym m_beamSpotCov
Beam spot covariance matrix.
Definition: BtubeCreatorModule.h:73
Belle2::BtubeCreatorModule::m_associateBtubeToBselected
bool m_associateBtubeToBselected
whether to associate the Btube with the selected B
Definition: BtubeCreatorModule.h:70