A layer of barrel volumes. Holds a list of volumes and 12 sectors. It is assumed that the geometry is 12-fold periodic in phi!
- Author
- N. Amapane - INFN Torino
Definition at line 17 of file bLayer.h.
MagGeoBuilderFromDDD::bLayer::bLayer |
( |
handles::const_iterator |
begin, |
|
|
handles::const_iterator |
end |
|
) |
| |
Constructor from list of volumes.
Definition at line 19 of file bLayer.cc.
References bin(), gather_cfg::cout, ddbox, ddtrap, MagGeoBuilderFromDDD::debug, i, evf::evtn::offset(), SurfaceOrientation::outer, precomputed_value_sort(), MagGeoBuilderFromDDD::volumeHandle::printUniqueNames(), svgfig::rotate(), GloballyPositioned< T >::rotation(), sectors, size, theVolumes, TkRotation< T >::zx(), TkRotation< T >::zy(), and TkRotation< T >::zz().
35 handles::iterator secBegin =
theVolumes.begin();
36 handles::iterator secEnd;
56 }
else if (
size==12 ||
57 (((*secBegin)->shape()!=
ddtrap) && (*secBegin)->shape()!=
ddbox)) {
58 secEnd = secBegin+
size/12;
61 float tolerance = 0.025;
64 <<
" " << (*secBegin)->copyno << std::endl;
67 (*secBegin)->sameSurface(refSurf,
outer, tolerance));
77 secEnd = secBegin+
size/12;
80 if (!((*secBegin)->sameSurface((*(secEnd-1))->surface(
outer),
82 std::cout <<
"*** ERROR: Big mess while looking for sectors "
83 << (*secBegin)->name <<
" " << (*secBegin)->copyno <<
" "
84 << (*(secEnd-1))->name <<
" " << (*(secEnd-1))->copyno
91 <<
" from " << newbegin
92 <<
" (phi = " << (*secBegin)->center().phi() <<
") "
94 <<
" (phi = " << (*secEnd)->center().phi() <<
") "
95 <<
" # " << (*secBegin)->copyno <<
" ";
103 for (
int i = 0;
i<12; ++
i) {
104 int isec = (
i+binOffset)%12;
static void printUniqueNames(handles::const_iterator begin, handles::const_iterator end)
Just for debugging...
unsigned int offset(bool)
std::vector< bSector > sectors
void precomputed_value_sort(RandomAccessIterator begin, RandomAccessIterator end, const Extractor &extr)
const RotationType & rotation() const
Global3DVector GlobalVector