1 #pragma once
2 
3 #include <pcl/memory.h>
4 #include <pcl/pcl_macros.h>
5 #include <pcl/types.h>
6 
7 #include <ostream>
8 
9 namespace pcl
10 {
11   /** \brief Describes a set of vertices in a polygon mesh, by basically
12     * storing an array of indices.
13     */
14   struct Vertices
15   {
VerticesVertices16     Vertices ()
17     {}
18 
19     Indices vertices;
20 
21   public:
22     using Ptr = shared_ptr<Vertices>;
23     using ConstPtr = shared_ptr<const Vertices>;
24   }; // struct Vertices
25 
26 
27   using VerticesPtr = Vertices::Ptr;
28   using VerticesConstPtr = Vertices::ConstPtr;
29 
30   inline std::ostream& operator<<(std::ostream& s, const  ::pcl::Vertices & v)
31   {
32     s << "vertices[]" << std::endl;
33     for (std::size_t i = 0; i < v.vertices.size (); ++i)
34     {
35       s << "  vertices[" << i << "]: ";
36       s << "  " << v.vertices[i] << std::endl;
37     }
38     return (s);
39   }
40 } // namespace pcl
41