9#include <tracking/modules/spacePointCreator/SPTCvirtualIPRemoverModule.h>
10#include <framework/logging/Logger.h>
22 setDescription(
"The quality estimator module for SpacePointTrackCandidates using a circleFit.");
31 "If you want to keep the vIP only for short TCs, then set this value to the number of hits a TC is maximally allowed to have to not loose its vIP (number of hits without counting the vIP).",
39 B2DEBUG(20,
"\n" <<
"SPTCvirtualIPRemoverModule:event: event " <<
m_eventCounter <<
"\n");
46 unsigned nHits = aTC.size();
50 const std::vector<const SpacePoint*>& spacePoints = aTC.getHits();
51 for (
unsigned int iSp = 0; iSp < spacePoints.size(); ++iSp) {
58 aTC.removeSpacePoint(iSp);
64 B2DEBUG(20,
"SPTCvirtualIPRemoverModule:event: event " <<
m_eventCounter
67 <<
" hits has vIP: " << (hasVIP ?
"true" :
"false")
81 B2DEBUG(20,
"SPTCvirtualIPRemoverModule:endRun: events: " <<
m_eventCounter
82 <<
", nSPTCsPerEvent: " << invEvents *
float(
m_nTCsTotal)
83 <<
", nVIPsPerEvent: " << invEvents *
float(
m_nVIPsTotal)
void setDescription(const std::string &description)
Sets the description of the module.
void setPropertyFlags(unsigned int propertyFlags)
Sets the flags for the module properties.
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
unsigned int m_nVIPsRemoved
total number of TCs removed from TCs.
unsigned int m_eventCounter
knows current event number.
SPTCvirtualIPRemoverModule()
Constructor of the module.
void event() override
Applies the circleFit at given sets of TCs.
void InitializeCounters()
initialize variables to avoid nondeterministic behavior
void endRun() override
Prints a footer for each run which ended.
bool m_PARAMdoCheckOnly
if true, no vIP is removed, but only nVIPs are counted.
unsigned int m_PARAMmaxTCLengthForVIPKeeping
If you want to keep the vIP only for short TCs, then set this value to the number of hits a TC is max...
std::string m_PARAMtcArrayName
sets the name of expected StoreArray with SpacePointTrackCand in it.
unsigned int m_nVIPsTotal
total number virtualIPs found.
unsigned int m_nTCsTotal
total number of TCs found in SpacePointTrackCand-container.
StoreArray< SpacePointTrackCand > m_spacePointTrackCands
the storeArray for SpacePointTrackCands as member, is faster than recreating link for each event.
Storage for (VXD) SpacePoint-based track candidates.
SpacePoint typically is build from 1 PXDCluster or 1-2 SVDClusters.
Belle2::VXD::SensorInfoBase::SensorType getType() const
Return SensorType (PXD, SVD, ...) on which the SpacePoint lives.
int getEntries() const
Get the number of objects in the array.
@ VXD
Any type of VXD Sensor.
void addParam(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module.
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
Abstract base class for different kinds of events.