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 STATISTICS_H_ 00042 #define STATISTICS_H_ 00043 00044 #include <vector> 00045 #include <string> 00046 #include <pcl/apps/point_cloud_editor/localTypes.h> 00047 00048 class Statistics 00049 { 00050 public: 00052 virtual ~Statistics () 00053 { 00054 } 00055 00057 static 00058 std::string 00059 getStats(); 00060 00061 static 00062 void 00063 clear(); 00064 00065 protected: 00067 Statistics () 00068 { 00069 } 00070 00072 Statistics (const Statistics&) 00073 { 00074 assert(false); 00075 } 00076 00078 virtual 00079 Statistics& 00080 operator= (const Statistics&) 00081 { 00082 assert(false); return (*this); 00083 } 00084 00086 virtual 00087 std::string 00088 getStat () const = 0; 00089 00091 void 00092 registerStats (); 00093 00094 private: 00095 static std::vector<Statistics*> stat_vec_; 00096 }; 00097 00098 #endif // STATISTICS_H_