28(
const std::string& t,
const std::string& n,
const IInterface* p)
45 return StatusCode::SUCCESS;
54 return AlgTool::finalize();
73 const std::vector<IdentifierHash>& vPixel,
const std::vector<IdentifierHash>& vSCT)
const
85 const std::vector<IdentifierHash>& vPixel,
const std::vector<IdentifierHash>& vSCT,
99 std::list<Trk::Vertex> vertices;
102 std::vector<double> z_histogram(
m_histsize+1, 0.);
107 std::list<double> ZMAX;
110 std::list<Trk::Vertex> lv;
117 std::multimap<int,double> ver;
125 std::vector<const Trk::SpacePoint*>::const_iterator
126 s = seed->spacePoints().begin();
131 ZMAX.push_back(zmax);
136 int n =
static_cast<int>((seed->zVertex()-
m_zmin)*sZ);
141 zmax = seed->zVertex();
153 std::list<double>::iterator
z = ZMAX.begin();
154 for (m=
NMAX.begin(); m!=me; ++m) {
156 z_histogram[(*m)] += (*
z++);
181 double zv = (z_histogram[im]+z_histogram[im-1]+z_histogram[im+1])/
static_cast<double>(HiZm);
182 ver.insert(std::make_pair(-HiZm, zv));
186 HiZm =
static_cast<int>(
m_ratio*
static_cast<double>(HiZm));
193 zv = (z_histogram[i]+z_histogram[i-1]+z_histogram[i+1])/
static_cast<double>(H3);
194 ver.insert(std::make_pair(-H3, zv));
202 std::multimap<int, double>::iterator v = ver.begin(), ve = ver.end();
206 vertices.push_back(Ver);
234 for (
int i=0; i<n; ++i) s1.append(
" ");
237 out<<
"|----------------------------------------------------------------------"
238 <<
"-------------------|"
240 out<<
"| SP seeds maker tool | "
242 out<<
"| Histogram size | "
245 out<<
"| SP seed length (2 or 3) | "
248 out<<
"| min content of hist.bin | "
251 out<<
"| min vertex Z-coordinate | "
252 <<std::setw(12)<<std::setprecision(4)<<
m_zmin
254 out<<
"| max vertex Z-coordinate | "
255 <<std::setw(12)<<std::setprecision(4)<<
m_zmax
257 out<<
"| min. ratio to max bin | "
258 <<std::setw(12)<<std::setprecision(4)<<
m_ratio
260 out<<
"|----------------------------------------------------------------------"
261 <<
"-------------------|"
#define ATH_CHECK
Evaluate an expression and check for errors.
char data[hepevt_bytes_allocation_ATLAS]
Describes the API of the Region of Ineterest geometry.
InDet::SiSpacePointsSeedMakerEventData holds event dependent data used by ISiSpacePointsSeedMaker.
virtual std::list< Trk::Vertex > newEvent(const EventContext &ctx, SiSpacePointsSeedMakerEventData &data) const override
MsgStream & dumpConditions(MsgStream &out) const
IntegerProperty m_mincontent
IntegerProperty m_nspoint
virtual StatusCode finalize() override
IntegerProperty m_histsize
virtual StatusCode initialize() override
std::list< Trk::Vertex > production(const EventContext &ctx, SiSpacePointsSeedMakerEventData &data) const
virtual std::list< Trk::Vertex > newRegion(const EventContext &ctx, SiSpacePointsSeedMakerEventData &data, const std::vector< IdentifierHash > &, const std::vector< IdentifierHash > &) const override
ToolHandle< InDet::ISiSpacePointsSeedMaker > m_seedsgenerator
SiZvertexMaker_xk(const std::string &, const std::string &, const IInterface *)
virtual MsgStream & dump(MsgStream &out) const override
This class is a simplest representation of a vertex candidate.
Eigen::Matrix< double, 3, 1 > Vector3D