1 #ifndef DetLayers_DetGroup_h 2 #define DetLayers_DetGroup_h 12 typedef std::pair<const GeomDet*,TrajectoryStateOnSurface>
DetWithState;
48 class DetGroup :
public std::vector< DetGroupElement> {
51 typedef std::vector< DetGroupElement>
Base;
55 DetGroup(
DetGroup const & rhs) : Base(rhs), index_(rhs.index_), indexSize_(rhs.indexSize_) {}
64 Base::operator=(std::forward<Base>(rhs));
66 indexSize_ = rhs.indexSize_;
71 DetGroup(
int ind,
int indSize) : index_(ind), indexSize_(indSize) {}
73 DetGroup(
const std::vector<DetWithState>& vec) {
75 for (std::vector<DetWithState>::const_iterator
i=vec.begin();
i!=vec.end();
i++) {
80 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
std::pair< const GeomDet *, TrajectoryStateOnSurface > DetWithState
DetGroupElement(const Det *d, TrajectoryStateOnSurface &&s)
U second(std::pair< T, U > const &p)
DetGroupElement & operator=(DetGroupElement const &rhs)
std::vector< DetGroupElement > Base
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)