Класс CmaAlgorithm является потомком CmaList, наследуя от него операторы [ ], присваивания и преобразования типов. При создании объекта CmaAlgorithm указывается имя алгоритма, под которым он был зарегистрирован в управляющем ядре. По имени алгоритма однозначно определяется состав его методов. Можно создать сколько угодно экземпляров алгоритмов с данным именем.

CmaAlgorithm (maString name, ImaKernel* kernel);
Конструктор CmaAlgorithm скрывает вызов функции управляющего ядра CreateAlgorithm. При создании алгоритма создается дерево алгоритма, поддерево параметров и все методы алгоритма вместе со своими поддеревьями:

maString GetDescription();
Функция возвращает описание всех своих методов. Это описание является объединением всех описаний, возвращенных определителями методов в функции ImaMethodDef::GetDescription.

CmaCell& operator[] (long i);
CmaCell& operator[] (maString i);
Функция позволяет получать доступ к дереву параметров и деревьям методов стандартным образом. Дерево параметров всегда имеет номер 0.

HRESULT SetMethod(ImaMethodDef *mdef)
Функция создает новый метод по по определителю метода и добавляет его в свой список методов. Полезно для подключения методов, которые расположены в самой пользовательской программе, а не в библиотеке.

CmaList Param ();
Функция дает доступ к параметрам алгоритма.

CmaMethod Method (maString name);
Функция дает доступ к методам алгоритма.

HRESULT Verify ();
HRESULT Verify(int cellno);
HRESULT Verify(maString name);
Функции проверяют правильность формирования всех аргументов метода, в том числе соответствие размеров и размерностей матриц данных. Проверяется также соответствие размеров с аргументами других сформированных методов данного алгоритма. Метод считается сформированным, если заданы все его обязательные аргументы. Функцию Verify следует вызывать после формирования метода, но перед первым обращением к функциям Calc или CalcCell данного метода. Проверка осуществляется в соответствии с описаниями всех методов данного алгоритма. В случае обнаружения ошибок функция проверки записывает соответствующие сообщения в отладочный поток алгоритма и возвращает MA_ERR_VERIFY.