matlab.io.hdf4.sd.setFillMode

Пакет: matlab.io.hdf4.sd

Установите текущий режим заливки файла

Синтаксис

prevmode = setFillMode(sdID,fillmode)

Описание

prevmode = setFillMode(sdID,fillmode) возвращает предыдущий режим заливки файла и сбрасывает его к fillmode. Эта установка применяется ко всем наборам данных, содержавшимся в файле, идентифицированном sdID.

Возможные значения fillmode 'fill', и 'nofill'заливка режим по умолчанию и указывает, что значения заливки будут записаны, когда набор данных будет создан. 'nofill' указывает, что значения заливки не будут записаны.

Когда набор данных фиксированного размера создается, первый вызов sd.writeData заполнит целый набор данных или пользовательским значением заливки по умолчанию если fillmode 'fill'. В наборах данных с неограниченной размерностью, если новая операция записи происходит по неограниченному измерению вне последнего местоположения предыдущей операции записи, местоположения массивов между этими записанными областями будут инициализированы к пользовательскому значению заливки или значению заливки по умолчанию, если пользовательское значение заливки не было задано.

Если точно все значения набора данных будут записаны, прежде чем любая операция чтения происходит, нет никакой потребности записать значения заливки. Вызов sd.setFillMode с 'nofill' может улучшать производительность в этом случае.

Эта функция соответствует SDsetfillmode функция в API библиотеки HDF C.

Примеры

Запишите две частичных записи. Напишите первое в 'nofill' режим и второе с 'fill' режим.

import matlab.io.hdf4.*
sdID = sd.start('myfile.hdf','create');
sd.setFillMode(sdID,'nofill');
sdsID = sd.create(sdID,'temperature','double',[10 10 0]);
sd.writeData(sdsID,[0 0 0], rand(5,5));
sd.setFillMode(sdID,'fill');
sd.setFillValue(sdsID,-999);
sd.writeData(sdsID,[0 0 1], rand(5,5));
sd.endAccess(sdsID);
sd.close(sdID);

Смотрите также

|