47 #include <pcl/geometry/boost.h>
62 : boost::totally_ordered <pcl::geometry::VertexIndex
63 , boost::unit_steppable <pcl::geometry::VertexIndex
64 , boost::additive <pcl::geometry::VertexIndex
70 boost::unit_steppable <pcl::geometry::VertexIndex,
71 boost::additive <pcl::geometry::VertexIndex> > >;
72 using Self = pcl::geometry::VertexIndex;
120 return (this->
get () < other.
get ());
127 return (this->
get () == other.
get ());
150 index_ += other.
get ();
158 index_ -= other.
get ();
168 operator >> (std::istream& is, pcl::geometry::VertexIndex& index);
175 return (os << index.
get ());
182 return (is >> index.index_);
201 : boost::totally_ordered <pcl::geometry::HalfEdgeIndex
202 , boost::unit_steppable <pcl::geometry::HalfEdgeIndex
203 , boost::additive <pcl::geometry::HalfEdgeIndex
209 boost::unit_steppable <pcl::geometry::HalfEdgeIndex,
210 boost::additive <pcl::geometry::HalfEdgeIndex> > >;
211 using Self = pcl::geometry::HalfEdgeIndex;
231 return (index_ >= 0);
259 return (this->
get () < other.
get ());
266 return (this->
get () == other.
get ());
289 index_ += other.
get ();
297 index_ -= other.
get ();
307 operator >> (std::istream& is, pcl::geometry::HalfEdgeIndex& index);
314 return (os << index.
get ());
321 return (is >> index.index_);
340 : boost::totally_ordered <pcl::geometry::EdgeIndex
341 , boost::unit_steppable <pcl::geometry::EdgeIndex
342 , boost::additive <pcl::geometry::EdgeIndex
348 boost::unit_steppable <pcl::geometry::EdgeIndex,
349 boost::additive <pcl::geometry::EdgeIndex> > >;
350 using Self = pcl::geometry::EdgeIndex;
370 return (index_ >= 0);
398 return (this->
get () < other.
get ());
405 return (this->
get () == other.
get ());
428 index_ += other.
get ();
436 index_ -= other.
get ();
446 operator >> (std::istream& is, pcl::geometry::EdgeIndex& index);
453 return (os << index.
get ());
460 return (is >> index.index_);
479 : boost::totally_ordered <pcl::geometry::FaceIndex
480 , boost::unit_steppable <pcl::geometry::FaceIndex
481 , boost::additive <pcl::geometry::FaceIndex
487 boost::unit_steppable <pcl::geometry::FaceIndex,
488 boost::additive <pcl::geometry::FaceIndex> > >;
489 using Self = pcl::geometry::FaceIndex;
509 return (index_ >= 0);
537 return (this->
get () < other.
get ());
544 return (this->
get () == other.
get ());
567 index_ += other.
get ();
575 index_ -= other.
get ();
585 operator >> (std::istream& is, pcl::geometry::FaceIndex& index);
592 return (os << index.
get ());
599 return (is >> index.index_);
HalfEdgeIndex(const int index)
Constructor.
VertexIndex(const int index)
Constructor.
void set(const int index)
Set the index.
bool operator<(const Self &other) const
Comparison operators (with boost::operators): < > <= >=.
int get() const
Get the index.
friend std::istream & operator>>(std::istream &is, pcl::geometry::VertexIndex &index)
istream operator.
void invalidate()
Invalidate the index.
EdgeIndex(const int index)
Constructor.
bool isValid() const
Returns true if the index is valid.
bool isValid() const
Returns true if the index is valid.
Self & operator++()
Increment operators (with boost::operators): ++ (pre and post)
Self & operator--()
Decrement operators (with boost::operators): -- (pre and post)
Self & operator-=(const Self &other)
Subtraction operators (with boost::operators): - -=.
bool isValid() const
Returns true if the index is valid.
Self & operator+=(const Self &other)
Addition operators (with boost::operators): + +=.
std::ostream & operator<<(std::ostream &os, const pcl::geometry::VertexIndex &index)
ostream operator.
bool operator<(const Self &other) const
Comparison operators (with boost::operators): < > <= >=.
int get() const
Get the index.
pcl::geometry::EdgeIndex toEdgeIndex(const HalfEdgeIndex &index)
Convert the given half-edge index to an edge index.
Self & operator+=(const Self &other)
Addition operators (with boost::operators): + +=.
FaceIndex(const int index)
Constructor.
bool operator==(const Self &other) const
Comparison operators (with boost::operators): == !=.
bool operator<(const Self &other) const
Comparison operators (with boost::operators): < > <= >=.
boost::totally_ordered< pcl::geometry::EdgeIndex, boost::unit_steppable< pcl::geometry::EdgeIndex, boost::additive< pcl::geometry::EdgeIndex > > > Base
int get() const
Get the index.
bool operator==(const Self &other) const
Comparison operators (with boost::operators): == !=.
boost::totally_ordered< pcl::geometry::FaceIndex, boost::unit_steppable< pcl::geometry::FaceIndex, boost::additive< pcl::geometry::FaceIndex > > > Base
Index used to access elements in the half-edge mesh.
void invalidate()
Invalidate the index.
pcl::geometry::HalfEdgeIndex toHalfEdgeIndex(const EdgeIndex &index, const bool get_first=true)
Convert the given edge index to a half-edge index.
Self & operator--()
Decrement operators (with boost::operators): -- (pre and post)
void invalidate()
Invalidate the index.
void set(const int index)
Set the index.
bool isValid() const
Returns true if the index is valid.
Index used to access elements in the half-edge mesh.
boost::totally_ordered< pcl::geometry::HalfEdgeIndex, boost::unit_steppable< pcl::geometry::HalfEdgeIndex, boost::additive< pcl::geometry::HalfEdgeIndex > > > Base
Self & operator++()
Increment operators (with boost::operators): ++ (pre and post)
pcl::geometry::FaceIndex Self
Index used to access elements in the half-edge mesh.
friend std::istream & operator>>(std::istream &is, pcl::geometry::FaceIndex &index)
istream operator.
VertexIndex()
Constructor.
Index used to access elements in the half-edge mesh.
bool operator==(const Self &other) const
Comparison operators (with boost::operators): == !=.
void set(const int index)
Set the index.
void set(const int index)
Set the index.
void invalidate()
Invalidate the index.
Self & operator+=(const Self &other)
Addition operators (with boost::operators): + +=.
Self & operator--()
Decrement operators (with boost::operators): -- (pre and post)
friend std::istream & operator>>(std::istream &is, pcl::geometry::EdgeIndex &index)
istream operator.
pcl::geometry::HalfEdgeIndex Self
Self & operator--()
Decrement operators (with boost::operators): -- (pre and post)
int get() const
Get the index.
Self & operator++()
Increment operators (with boost::operators): ++ (pre and post)
bool operator==(const Self &other) const
Comparison operators (with boost::operators): == !=.
boost::totally_ordered< pcl::geometry::VertexIndex, boost::unit_steppable< pcl::geometry::VertexIndex, boost::additive< pcl::geometry::VertexIndex > > > Base
HalfEdgeIndex()
Constructor.
Self & operator-=(const Self &other)
Subtraction operators (with boost::operators): - -=.
pcl::geometry::VertexIndex Self
Self & operator-=(const Self &other)
Subtraction operators (with boost::operators): - -=.
pcl::geometry::EdgeIndex Self
std::istream & operator>>(std::istream &is, pcl::geometry::VertexIndex &index)
istream operator.
friend std::istream & operator>>(std::istream &is, pcl::geometry::HalfEdgeIndex &index)
istream operator.
bool operator<(const Self &other) const
Comparison operators (with boost::operators): < > <= >=.
Self & operator+=(const Self &other)
Addition operators (with boost::operators): + +=.
Self & operator-=(const Self &other)
Subtraction operators (with boost::operators): - -=.
Self & operator++()
Increment operators (with boost::operators): ++ (pre and post)