60 for ( ; radiusIter != radiusIterEnd; ++radiusIter, ++halfZIter){
62 std::vector< const Trk::Surface*> surfaceTriplet;
67 ATH_MSG_INFO(
"Creating surfaces: R " << *radiusIter <<
" Z " << *halfZIter);
76 m_gaussDist =
new Rndm::Numbers(randSvc(), Rndm::Gauss(0.,1.));
77 m_flatDist =
new Rndm::Numbers(randSvc(), Rndm::Flat(0.,1.));
79 msg(MSG::INFO) <<
"initialize() successful in " <<
endmsg;
86 return StatusCode::SUCCESS;
138 const EventContext& ctx = Gaudi::Hive::currentContext();
139 for (
int refSurface = 0 ; surfaceTripleIter != surfaceTripleIterEnd; ++surfaceTripleIter, ++negRefIter, ++posRefIter ){
141 refSurface =
theta < (*posRefIter) ? 2 : 1;
142 refSurface =
theta > (*negRefIter) ? 0 : 1;
144 const Trk::Surface* destinationSurface = (*surfaceTripleIter)[refSurface];
146 const auto* destParameters =
152 propagationDirection,
161 propagationDirection,
167 if (destParameters) {
170 destParameters->position().x() <<
", " <<
171 destParameters->position().y() <<
", " <<
172 destParameters->position().z() );
173 }
else if (!destParameters)
176 delete destParameters;