1 #ifndef __JDETECTOR__JDETECTORSUBSET__
2 #define __JDETECTOR__JDETECTORSUBSET__
55 const double Rmax = std::numeric_limits<double>::max(),
62 for (JDetector::const_iterator i = detector.begin(); i != detector.end(); ++i) {
66 pos.
transform(transformation.getRotation(), transformation.getPosition());
68 if (Z(pos.getZ()) && pos.getX() <= Rmax) {
72 module.transform(transformation);
74 this->push_back(module);
93 const double Dmax = std::numeric_limits<double>::max())
95 for (JDetector::const_iterator i = detector.begin(); i != detector.end(); ++i) {
101 if (pos.getLength() <= Dmax) {
105 module.
sub(position);
107 this->push_back(module);
117 template<
class JComparator_t>
133 const_iterator
end) :
139 inline const_iterator
end()
const {
return __end; }
163 const JComparator_t& comparator,
164 const double Rmax = std::numeric_limits<double>::max(),
169 std::sort(this->begin(), this->end(),
compare);
186 const double Rmax = std::numeric_limits<double>::max(),
191 std::sort(this->begin(), this->end(),
compare);
208 const JComparator_t& comparator,
209 const double Dmax = std::numeric_limits<double>::max()) :
213 std::sort(this->begin(), this->end(),
compare);
229 const double Dmax = std::numeric_limits<double>::max()) :
233 std::sort(this->begin(), this->end(),
compare);
256 return std::lower_bound(this->begin(), this->end(), value,
compare);
268 const double xmax)
const