- SetMethod ([in] ImaMethodDef* mdef)
- GetMethod ([in,string] maString name, [out,retval] ImaMethod** method)
- GetDescription ([out,retval,string] maString* descr)
- VerifyMethod ([in] int cellno)
- VerifyMethodByName ([in,string] maString name)
- Verify ()
HRESULT SetMethod ([in] ImaMethodDef* mdef)Функция создает и добавляет в алгоритм новый метод с определителем mdef. Если метод с таким именем уже существует в алгоритме, он заменяется новым. При создании алгоритма с помощью функции управляющего ядра CreateAlgorithm все методы создаются ядром автоматически.
Параметры:
mdef Определитель добавляемого метода.Возвращаемое значение:
MA_NOERROR при отсутствии ошибокMA_ERR_BAD_PARAM, если mdef == NULL
MA_ERR_INVALIDDEF, если mdef возвращает неправильное описание метода.
HRESULT GetMethod ( [in,string] maString name, [out,retval] ImaMethod** method)Функция возвращает метод алгоритма по имени метода.
Параметры:
name Имя методаmethod Указатель на возвращаемый метод
Возвращаемое значение:
MA_NOERROR при отсутствии ошибокMA_ERR_BAD_PARAM, если mdef == NULL
MA_ERR_NOTFOUND, если у алгоритма нет метода с таким именем>
HRESULT GetDescription ([out,retval,string] maString* descr)Функция выдает строку с описанием всех методов алгоритма.
Параметры:
descr Указатель на возвращаемое описаниеВозвращаемое значение:
MA_NOERROR при отсутствии ошибокMA_ERR_BAD_PARAM если descr == NULL
Замечание:
HRESULT VerifyMethod ([in] int cellno) HRESULT VerifyMethodByName ([in,string] maString name)Функции проверяют правильность формирования всех аргументов метода, в том числе соответствие размеров и размерностей матриц данных. Проверяется также соответствие размеров с аргументами других сформированных методов данного алгоритма.
Параметры:
cellno Номер проверяемого методаname Имя проверяемого метода
Возвращаемое значение:
MA_NOERROR при отсутствии ошибокMA_ERR_NOTFOUND, если у алгоритма нет метода с таким именем или номером
MA_ERR_VERIFY, если метод сформирован неправильно
Замечание:
Метод считается сформированным, если заданы все его обязательные аргументы. Функцию VerifyMethod следует вызывать после формирования метода, но перед первым обращением к функциям Calc или CalcCell данного метода. Проверка осуществляется в соответствии с описаниями всех методов данного алгоритма. В случае обнаружения ошибок функция проверки записывает соответствующие сообщения в отладочный поток алгоритма и возвращает MA_ERR_VERIFY. Если метод сформирован неправильно, то результат его выполнения непредсказуем, так как функции метода Calc и CalcCell не обязаны проверять свои аргументы.HRESULT Verify ()Функция проверяет правильность формирования всех аргументов во всех методах. Проверка сводится к вызову VerifyMethod для каждого метода алгоритма. В случае обнаружения ошибок хотя бы в одном из методов функция записывает соответствующие сообщения в отладочный поток алгоритма и возвращает MA_ERR_VERIFY.
Возвращаемое значение:
MA_NOERROR при отсутствии ошибокMA_ERR_VERIFY, если метод сформирован неправильно