10 #include <tracking/modules/DATCON/DATCONSVDSpacePointCreatorModule.h>
12 #include <tracking/modules/DATCON/DATCONSpacePointHelperFunctions.h>
23 setDescription(
"Imports Clusters of the SVD detector and converts them to spacePoints.");
24 setPropertyFlags(c_ParallelProcessingCertified);
27 addParam(
"DATCONSVDCluster", m_storeDATCONSVDClustersName,
28 "DATCONSVDCluster collection name",
string(
"DATCONSVDCluster"));
29 addParam(
"DATCONSVDSpacePoints", m_storeDATCONSVDSpacePointsName,
30 "DATCONSVDSpacePoints collection name",
string(
"DATCONSVDSpacePoints"));
31 addParam(
"SVDTrueHits", m_storeTrueHitsName,
32 "SVDTrueHits collection name",
string(
""));
33 addParam(
"MCParticles", m_storeMCParticlesName,
34 "MCParticles collection name",
string(
""));
37 addParam(
"OnlySingleClusterSpacePoints", m_onlySingleClusterSpacePoints,
38 "standard is false. If activated, the module will not try to find combinations of U and V clusters for the SVD any more",
43 void DATCONSVDSpacePointCreatorModule::initialize()
46 storeDATCONSVDSpacePoints.registerInDataStore(m_storeDATCONSVDSpacePointsName,
47 DataStore::c_DontWriteOut | DataStore::c_ErrorIfAlreadyRegistered);
48 storeDATCONSVDClusters.isRequired(m_storeDATCONSVDClustersName);
50 m_storeDATCONSVDSpacePointsName = storeDATCONSVDSpacePoints.getName();
51 m_storeDATCONSVDClustersName = storeDATCONSVDClusters.getName();
53 storeTrueHits.isOptional(m_storeTrueHitsName);
54 if (storeTrueHits.isValid()) {
55 m_storeTrueHitsName = storeTrueHits.getName();
56 storeDATCONSVDSpacePoints.registerRelationTo(storeTrueHits, DataStore::c_Event, DataStore::c_DontWriteOut);
59 storeMCParticles.isOptional(m_storeMCParticlesName);
60 if (storeMCParticles.isValid()) {
61 m_storeMCParticlesName = storeMCParticles.getName();
62 storeDATCONSVDSpacePoints.registerRelationTo(storeMCParticles, DataStore::c_Event, DataStore::c_DontWriteOut);
66 storeDATCONSVDSpacePoints.registerRelationTo(storeDATCONSVDClusters, DataStore::c_Event, DataStore::c_DontWriteOut);
70 void DATCONSVDSpacePointCreatorModule::event()
72 if (m_onlySingleClusterSpacePoints ==
true) {
74 storeDATCONSVDSpacePoints);