00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 00029 00030 00031 00032 00033 00034 00035 00040 00041 #ifndef COPY_BUFFER_H_ 00042 #define COPY_BUFFER_H_ 00043 00044 #include <pcl/apps/point_cloud_editor/localTypes.h> 00045 #include <pcl/apps/point_cloud_editor/cloud.h> 00046 00049 class CopyBuffer : public Statistics 00050 { 00051 public: 00054 CopyBuffer (bool register_stats=false) 00055 { 00056 if (register_stats) 00057 registerStats(); 00058 } 00059 00064 CopyBuffer (const CopyBuffer& copy); 00065 00067 ~CopyBuffer () 00068 { 00069 } 00070 00075 CopyBuffer& 00076 operator= (const CopyBuffer& copy_buffer); 00077 00087 void 00088 set (ConstCloudPtr cloud_ptr, const Selection& selection); 00089 00091 const Cloud& 00092 get() const; 00093 00095 Cloud& 00096 get(); 00097 00099 void 00100 clean (); 00101 00103 std::string 00104 getStat () const; 00105 00107 bool 00108 empty() const 00109 { 00110 return (buffer_.size() == 0); 00111 } 00112 00113 private: 00115 Cloud buffer_; 00116 }; 00117 #endif // COPY_BUFFER_H_