ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetRecTools
SiClusterizationTool
SiClusterizationTool
TruthClusterizationFactory.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef SICLUSTERIZATIONTOOL_TruthClusterizationFactory_C
6
#define SICLUSTERIZATIONTOOL_TruthClusterizationFactory_C
7
8
/******************************************************
9
@class TruthClusterizationFactory
10
@author Roland Jansky
11
Package : SiClusterizationTool
12
Created : April 2016
13
DESCRIPTION: Emulates NN evaluation from truth (for ITK studies)
14
********************************************************/
15
16
17
#include "
AthenaBaseComps/AthAlgTool.h
"
18
19
20
#include "GaudiKernel/ToolHandle.h"
21
22
#include <TString.h>
23
24
#include <vector>
25
#include <string>
26
#include <map>
27
28
//this is a typedef: no forward decl possible
29
#include "
TrkParameters/TrackParameters.h
"
30
#include "
GeoPrimitives/GeoPrimitives.h
"
31
#include "
EventPrimitives/EventPrimitives.h
"
32
#include "CLHEP/Random/RandomEngine.h"
33
#include "
AthenaKernel/IAthRNGSvc.h
"
34
#include "
StoreGate/ReadHandleKey.h
"
35
#include "
InDetSimData/InDetSimDataCollection.h
"
36
37
//class InDetSimDataCollection;
38
39
namespace
CLHEP
{
40
class
HepRandomEngine;
41
}
42
43
namespace
InDet
{
44
45
class
PixelCluster
;
46
47
static
const
InterfaceID
IID_TruthClusterizationFactory
(
"InDet::NnClusterizationFactory"
, 1, 0);
48
49
class
TruthClusterizationFactory
:
public
AthAlgTool
{
50
51
public
:
52
54
static
const
InterfaceID&
interfaceID
() {
return
IID_TruthClusterizationFactory
; };
55
56
TruthClusterizationFactory
(
const
std::string& name,
57
const
std::string& n,
const
IInterface* p);
58
~TruthClusterizationFactory
() =
default
;
59
60
virtual
StatusCode
initialize
();
61
virtual
StatusCode
finalize
() {
return
StatusCode::SUCCESS; };
62
63
std::vector<double>
estimateNumberOfParticles
(
const
InDet::PixelCluster
& pCluster)
const
;
64
65
std::vector<Amg::Vector2D>
estimatePositions
(
const
InDet::PixelCluster
&)
const
;
66
67
private
:
69
SG::ReadHandleKey<InDetSimDataCollection>
m_simDataCollectionName
{
this
,
"InputSDOMap"
,
"PixelSDO_Map"
,
"sim data collection name"
};
70
71
protected
:
72
ServiceHandle<IAthRNGSvc>
m_rndmSvc
{
this
,
"RndmSvc"
,
"AthRNGSvc"
,
"Random Number Service used in TruthClusterizationFactory"
};
73
Gaudi::Property<std::string>
m_rndmEngineName
{
this
,
"RndmEngine"
,
"TruthClustering"
,
"Random Engine Name"
};
74
ATHRNG::RNGWrapper
*
m_rndmEngine
{
nullptr
};
75
Gaudi::Property<bool>
m_discardPUHits
{
this
,
"discardPUHits"
,
true
,
"Discard PU hits for NN emulation"
};
76
Gaudi::Property<float>
m_truthClusterSplittingEff
{
this
,
"truthClusterSplittingEff"
, 0.9,
"Cluster splitting effeciency"
};
77
78
};
79
80
}
//end InDet namespace
81
82
#endif
AthAlgTool.h
EventPrimitives.h
GeoPrimitives.h
IAthRNGSvc.h
InDetSimDataCollection.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TrackParameters.h
ATHRNG::RNGWrapper
A wrapper class for event-slot-local random engines.
Definition
RNGWrapper.h:56
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
InDet::PixelCluster
Definition
InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:49
InDet::TruthClusterizationFactory::initialize
virtual StatusCode initialize()
Definition
TruthClusterizationFactory.cxx:44
InDet::TruthClusterizationFactory::m_discardPUHits
Gaudi::Property< bool > m_discardPUHits
Definition
TruthClusterizationFactory.h:75
InDet::TruthClusterizationFactory::m_truthClusterSplittingEff
Gaudi::Property< float > m_truthClusterSplittingEff
Definition
TruthClusterizationFactory.h:76
InDet::TruthClusterizationFactory::TruthClusterizationFactory
TruthClusterizationFactory(const std::string &name, const std::string &n, const IInterface *p)
Definition
TruthClusterizationFactory.cxx:37
InDet::TruthClusterizationFactory::m_rndmEngineName
Gaudi::Property< std::string > m_rndmEngineName
Definition
TruthClusterizationFactory.h:73
InDet::TruthClusterizationFactory::m_rndmEngine
ATHRNG::RNGWrapper * m_rndmEngine
Definition
TruthClusterizationFactory.h:74
InDet::TruthClusterizationFactory::~TruthClusterizationFactory
~TruthClusterizationFactory()=default
InDet::TruthClusterizationFactory::estimatePositions
std::vector< Amg::Vector2D > estimatePositions(const InDet::PixelCluster &) const
Definition
TruthClusterizationFactory.cxx:160
InDet::TruthClusterizationFactory::estimateNumberOfParticles
std::vector< double > estimateNumberOfParticles(const InDet::PixelCluster &pCluster) const
Definition
TruthClusterizationFactory.cxx:69
InDet::TruthClusterizationFactory::interfaceID
static const InterfaceID & interfaceID()
AlgTool interface methods.
Definition
TruthClusterizationFactory.h:54
InDet::TruthClusterizationFactory::finalize
virtual StatusCode finalize()
Definition
TruthClusterizationFactory.h:61
InDet::TruthClusterizationFactory::m_rndmSvc
ServiceHandle< IAthRNGSvc > m_rndmSvc
Definition
TruthClusterizationFactory.h:72
InDet::TruthClusterizationFactory::m_simDataCollectionName
SG::ReadHandleKey< InDetSimDataCollection > m_simDataCollectionName
IncidentSvc to catch begining of event and end of event.
Definition
TruthClusterizationFactory.h:69
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
ServiceHandle
Definition
ClusterMakerTool.h:36
CLHEP
STD'S.
Definition
CaloNoiseCompCondAlg.h:57
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
InDet::IID_TruthClusterizationFactory
static const InterfaceID IID_TruthClusterizationFactory("InDet::NnClusterizationFactory", 1, 0)
Generated on
for ATLAS Offline Software by
1.17.0