openModeller
Version 1.4.0
|
00001 00032 #ifndef _ENVELOPESCOREHH_ 00033 #define _ENVELOPESCOREHH_ 00034 00035 #include <openmodeller/om.hh> 00036 00037 /****************************************************************/ 00038 /*********************** EnvelopeScore ***********************/ 00039 00045 class EnvelopeScore : public AlgorithmImpl 00046 { 00047 public: 00048 00049 EnvelopeScore(); 00050 ~EnvelopeScore(); 00051 00052 // Inherited from Algorithm class. 00053 int initialize(); 00054 int iterate(); 00055 int done() const; 00056 00057 Scalar getValue( const Sample& x ) const; 00058 int getConvergence( Scalar * const val ) const; 00059 00060 protected: 00061 virtual void _getConfiguration( ConfigurationPtr& ) const; 00062 virtual void _setConfiguration( const ConstConfigurationPtr & ); 00063 00064 private: 00065 00068 void computeStats( const OccurrencesPtr& ); 00069 00071 void logEnvelope(); 00072 00073 bool _done; 00074 00075 Sample _minimum; 00076 Sample _maximum; 00077 00078 }; 00079 00080 00081 #endif //ENVELOPESCOREHH 00082