#ifndef LEARNER_H
#define LEARNER_H

//#include "maComBase.h"   // классы CmaStdLibrary и CmaStdMethodDef
#include "maComClasses.h"   // классы-оболочки

// Предок всех методов обучения
class CLearner {
public:
	CLearner () {}
	virtual ~CLearner() {}
	
	// Метод обучения
	virtual int Train (
		CmaMatrix &Features, // матрица Объекты * Признаки
		CmaMatrix &Weight,   // матрица Объекты * {ВесаОбъектов}
		CmaMatrix &Target    // матрица Объекты * {ЦелевойПризнак}
	) = 0;

	// Метод применения
	virtual int Test (
		CmaMatrix &Features, // матрица Объекты * Признаки
		CmaMatrix &Result    // матрица Объекты * {ЦелевойПризнак}
	) = 0;
};

#endif
