1 #ifndef DetLayers_DetGroup_h 2 #define DetLayers_DetGroup_h 12 typedef std::pair<const GeomDet*, TrajectoryStateOnSurface>
DetWithState;
41 class DetGroup :
public std::vector<DetGroupElement> {
43 typedef std::vector<DetGroupElement>
Base;
47 DetGroup(
DetGroup const& rhs) : Base(rhs), index_(rhs.index_), indexSize_(rhs.indexSize_) {}
56 Base::operator=(std::forward<Base>(rhs));
58 indexSize_ = rhs.indexSize_;
62 DetGroup(
int ind,
int indSize) : index_(ind), indexSize_(indSize) {}
64 DetGroup(
const std::vector<DetWithState>& vec) {
66 for (std::vector<DetWithState>::const_iterator
i = vec.begin();
i != vec.end();
i++) {
71 int index()
const {
return index_; }
void incrementIndex(int incr)
DetGroup(DetGroup const &rhs)
DetGroup(const std::vector< DetWithState > &vec)
DetGroup(int ind, int indSize)
DetGroupElement & operator=(DetGroupElement &&rhs)
DetGroup & operator=(DetGroup &&rhs)
DetGroupElement::DetWithState DetWithState
DetGroupElement(const Det *d, TrajectoryStateOnSurface &&s)
U second(std::pair< T, U > const &p)
DetGroupElement & operator=(DetGroupElement const &rhs)
std::pair< const GeomDet *, TrajectoryStateOnSurface > DetWithState
DetGroupElement(DetGroupElement const &rhs)
DetGroup & operator=(DetGroup const &rhs)
DetGroupElement(DetGroupElement &&rhs)
void setIndexSize(int newSize)
DetGroupElement(const Det *d, const TrajectoryStateOnSurface &s)
TrajectoryStateOnSurface state_
const TrajectoryStateOnSurface & trajectoryState() const
DetGroupElement(const DetWithState &dws)
std::vector< DetGroupElement > Base