9#include "tracking/modules/trackSetEvaluatorVXD/TrackSetEvaluatorGreedyDEVModule.h"
11#include <tracking/trackFindingVXD/trackSetEvaluator/Scrooge.h>
12#include <tracking/trackFindingVXD/trackSetEvaluator/OverlapResolverNodeInfo.h>
24 selects a subset of non-overlapping TCs using the Greedy algorithm.");
30 "networks.", std::string(
""));
37 std::vector<OverlapResolverNodeInfo> qiTrackOverlap;
39 qiTrackOverlap.reserve(nSpacePointTrackCands);
43 qiTrackOverlap.emplace_back(spacePointTrackCand.getQualityIndicator(), spacePointTrackCand.getArrayIndex(),
44 m_overlapNetworks[0]->getOverlapForTrackIndex(spacePointTrackCand.getArrayIndex()),
52 for (
auto&& track : qiTrackOverlap) {
53 if (track.activityState < 0.75) {
void setDescription(const std::string &description)
Sets the description of the module.
Executes greedy algorithm for vector of QITrackOverlap structs.
void performSelection(std::vector< OverlapResolverNodeInfo > &overlapResolverNodeInfo)
Sets the isActive flag in m_qiTrackOverlap to false, for killed tracks.
@ c_isActive
bit 11: SPTC is active (i.e.
int getEntries() const
Get the number of objects in the array.
TrackSetEvaluatorGreedyDEVModule()
Constructor of the module.
void event() override final
Application of the algorithm.
std::string m_nameOverlapNetworks
name of the overlap networks
StoreArray< OverlapNetwork > m_overlapNetworks
access to tcNetwork, which will be produced by this module
StoreArray< SpacePointTrackCand > m_spacePointTrackCands
the storeArray for SpacePointTrackCands as member, is faster than recreating link for each event
std::string m_nameSpacePointTrackCands
Name of array of SpacePointTrackCand.
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.