MeVisLabToolboxReference
|
00001 // **InsertLicense** code 00002 //-------------------------------------------------------------------------------------- 00004 00009 //-------------------------------------------------------------------------------------- 00010 00011 #ifndef __mlMarkerList_H 00012 #define __mlMarkerList_H 00013 00014 //ML-includes 00015 #ifndef __mlBaseInit_H 00016 #include "mlBaseInit.h" 00017 #endif 00018 #ifndef __mlModuleIncludes_H 00019 #include "mlModuleIncludes.h" 00020 #endif 00021 #ifndef __mlLinearAlgebra_H 00022 #include "mlLinearAlgebra.h" 00023 #endif 00024 00025 ML_START_NAMESPACE 00026 00027 00028 //-------------------------------------------------------------------------------------- 00030 //-------------------------------------------------------------------------------------- 00031 class MLBASEEXPORT MarkerList : public Base { 00032 00033 public: 00034 MarkerList() {}; 00035 virtual ~MarkerList() {}; 00036 00038 MLssize_t getNum() const; 00039 00041 void getValue(MLssize_t index, int& type, Vector3& vec) const; 00042 00044 void getValue(MLssize_t index, int &type, float &x, float &y, float &z) const; 00045 00047 void addValue(int type, const Vector3& vec); 00048 00050 void setValue(MLssize_t index, int type, const Vector3& vec); 00051 00053 void removeValue(MLssize_t index = -1); 00054 00056 void clear(); 00057 00059 virtual char* getPersistentState() const; 00060 virtual void setPersistentState(const char* state); 00061 virtual void clearPersistentState(char* state) const; 00063 00065 void print(const char* txt); 00066 00067 private: 00068 00070 ML_CLASS_HEADER(MarkerList); 00071 00073 std::vector<Vector4> points; 00074 }; 00075 00076 00077 ML_END_NAMESPACE 00078 00079 00080 #endif