#ifndef MODEL_HH
#define MODEL_HH

#include "Header.hh"
#include <complex>
#include <cstring>

typedef std::complex<Double>  Complex;  //!  複素数型

#define  PI        3.14159265358979323846  //!  円周率π

class AdvModelParamSet;

class AdvModel {
public:
    AdvModel();
    virtual ~AdvModel();
    AdvModelParamSet* GetParamSet() { return m_paramset; }

    int StrCmpI ( const char* , const char* );  //!  文字列比較（大文字小文字を区別しない）
protected:
    AdvModelParamSet* m_paramset;  //!  最適化対象になりうるモデル変数は一元管理する
};

#endif


