14 return a->
type() % 100 < b->
type() % 100;
48 return (phi >= 0 ? phi : phi + 2 *
M_PI);
53 std::vector<const GeometricDet*>
const&
comp = a->
components().back()->components();
69 double temp = phi /
float(comp.size()) < 0. ? 2 *
M_PI + phi /
float(comp.size()) : phi /
float(comp.size());
74 double phi1 =
i->phi() >= 0 ?
i->phi() :
i->phi() + 2 *
M_PI;
78 double com = comp.front()->phi() >= 0 ? comp.front()->phi() : 2 *
M_PI + comp.front()->phi();
80 =
std::abs(phi /
float(comp.size()) - com) > 2. ?
M_PI - phi /
float(comp.size()) : phi /
float(comp.size());
81 temp = temp >= 0 ? temp : 2 *
M_PI +
temp;
88 std::vector<const GeometricDet*>
comp;
93 for (
auto&
i : comp) {
101 for (
auto&
i : comp) {
105 double temp = phi /
float(comp.size()) < 0. ? 2 *
M_PI + phi /
float(comp.size()) : phi /
float(comp.size());
109 for (
auto&
i : comp) {
110 double phi1 =
i->phi() >= 0 ?
i->phi() :
i->translation().phi() + 2 *
M_PI;
114 double com = comp.front()->phi() >= 0 ? comp.front()->phi() : 2 *
M_PI + comp.front()->phi();
116 =
std::abs(phi /
float(comp.size()) - com) > 2. ?
M_PI - phi /
float(comp.size()) : phi /
float(comp.size());
117 temp = temp >= 0 ? temp : 2 *
M_PI +
temp;
125 phi = (phi >= 0 ? phi : phi + 2 *
M_PI);
132 phi = (phi <=
M_PI ? phi : phi - 2 *
M_PI);
139 phi = (phi <=
M_PI ? phi : phi - 2 *
M_PI);
150 return a->
rho() < b->
rho();
158 << tracker->
name() << std::endl;
bool parent()
set the current node to the parent node ...
static double getPhiMirror(const GeometricDet *a)
static bool isLessZ(const GeometricDet *a, const GeometricDet *b)
void build(DDFilteredView &, GeometricDet *, std::string) override
static double getPhi(const GeometricDet *a)
bool nextSibling()
set the current node to the next sibling ...
virtual void sortNS(DDFilteredView &, GeometricDet *)
static bool isLessModZ(const GeometricDet *a, const GeometricDet *b)
const std::vector< DDGeoHistory > & history() const
static double getPhiModule(const GeometricDet *a)
ConstGeometricDetContainer & components()
DDName const & name() const
static bool isLessRModule(const GeometricDet *a, const GeometricDet *b)
static bool isLessR(const GeometricDet *a, const GeometricDet *b)
Abs< T >::type abs(const T &t)
DDTranslation const & translation() const
static double getPhiModuleMirror(const GeometricDet *a)
static double getPhiGluedModuleMirror(const GeometricDet *a)
static bool subDetByType(const GeometricDet *a, const GeometricDet *b)
ConstGeometricDetContainer deepComponents() const
static bool phiSortNP(const GeometricDet *a, const GeometricDet *b)
static double getPhiGluedModule(const GeometricDet *a)
bool firstChild()
set the current node to the first child ...
GeometricEnumType type() const
virtual void buildComponent(DDFilteredView &, GeometricDet *, std::string)=0