Интерфейс ImaList наследует функции ImaReadList и дополнительно определяет функции добавления ячеек и очистки списка.


HRESULT AddCellno ([in,string] maString name, [out,retval] int* cellno)
Функция добавляет в конец списка ячейку с именем name и пустым значением. Номер новой ячейки записывается в cellno.

Параметры:

name имя ячейки
cellno указатель на возвращаемый номер ячейки

Возвращаемое значение:

MA_NOERROR при отсутствии ошибок
MA_ERR_BAD_PARAM если name==NULL или cellno==NULL
MA_ERR_REPNAME если ячейка с указанным именем уже существует

HRESULT AddCell ([in,string] maString name, [out,retval] ImaCell** cell)
Функция совмещает в себе AddCellno и GetCell. Она возвращает в cell указатель на созданную ячейку. Если ячейка с указанным именем уже существует, в cell записывается нулевой указатель.

Параметры:

name имя ячейки
cell указатель на возвращаемую ячейку

Возвращаемое значение:

MA_NOERROR при отсутствии ошибок
MA_ERR_BAD_PARAM если name==NULL или cell==NULL
MA_ERR_REPNAME если ячейка с указанным именем уже существует

HRESULT FindCreateCellno (
  [in,string] maString name, [out,retval] int* cellno)
Функция ищет в списке ячейку с именем name. Если такая ячейка не найдена, то функция создаёт новую ячейку, присваивает ей пустое значение и добавляет в конец списка.

Параметры:

name имя ячейки
cellno указатель на номер найденной или созданной ячейки

Возвращаемое значение:

MA_NOERROR при отсутствии ошибок
MA_ERR_BAD_PARAM если name==NULL или cellno==NULL


HRESULT FindCreateCell (
  [in,string] maString name, [out,retval] ImaCell** cell)
Функция совмещает в себе FindCreateCellno и GetCell.

Параметры:

name имя ячейки
cell указатель на найденную или созданную ячейку

Возвращаемое значение:

MA_NOERROR при отсутствии ошибок
MA_ERR_BAD_PARAM если name==NULL или cell==NULL


HRESULT CreateCells ([in] int cellno)
Функция добавляет в конец списка необходимое количество ячеек, чтобы номер последней ячейки был равен cellno. Если ячейка с таким номером уже есть в списке, функция ничего не добавляет. Все добавленные ячейки не имеют имени и содержат пустое значение.

Параметры:

cellno минимальный новый размер списка

Возвращаемое значение:

MA_NOERROR всегда


HRESULT Clear ()
Функция очищает список, обнуляет длину списка.

Возвращаемое значение:

MA_NOERROR всегда