00001 #ifndef OST_MOL_ALG_SIMILARITY_MATRIX_HH 00002 #define OST_MOL_ALG_SIMILARITY_MATRIX_HH 00003 00004 #include <limits> 00005 #include <fstream> 00006 #include <ost/tri_matrix.hh> 00007 #include <ost/img/image.hh> 00008 #include "module_config.hh" 00009 00010 namespace ost { namespace mol { namespace alg { 00011 00012 // triangular distance matrix 00013 class DLLEXPORT_OST_MOL_ALG SimilarityMatrix : public ost::TriMatrix<Real> { 00014 public: 00021 SimilarityMatrix(int n, Real def_val=std::numeric_limits<Real>::min()): 00022 ost::TriMatrix<Real>(n, def_val) 00023 { } 00024 00025 ost::img::ImageHandle AsImage(bool full=false) const; 00026 00027 static SimilarityMatrix Load(const String& filename); 00028 00029 void Save(const String& filename); 00030 00031 }; 00032 00033 }}} 00034 00035 #endif 00036