DRFileDataProduction
Неофициальный протокол, описывающий методы, реализован производителем данных файла.
Этот протокол определяет те методы, которые должен реализовать экземпляр производителя данных файла. Производитель данных файла является объектом что resposible для того, чтобы предоставить данные файла механизму записи по запросу
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Swift
import DiscRecording
Objective C
@import DiscRecording;
Доступность
Доступный в OS X v10.2 и позже.
-
Вычисляет размер указанного ветвления файла. (требуемый)
Объявление
Swift
func calculateSizeOfFile(_
file
: DRFile!, forkfork
: DRFileFork, estimatingestimate
: Bool) -> UInt64Objective C
- (uint64_t)calculateSizeOfFile:(DRFile *)
file
fork:(DRFileFork)fork
estimating:(BOOL)estimate
Параметры
file
Объект файла.
fork
Ветвление файла, размер которого должен быть вычислен.
estimate
Если размер файла должен быть оценен или точный.
Возвращаемое значение
Продолжительность ветвления файла.
Обсуждение
Этот метод может быть отправлен в любое время после того, как объект файла инстанцировали. Запросы, что recevier вычисляют размер байта ветвления файла (например, ветвь данных или ветвь ресурсов).
Если оценка ДА, Вас просят относительно оценки заключительного размера ветвления, возможно для обеспечения оценки размера дорожки, и не должны быть точными. Оценки должны допустить ошибку на высокой стороне; лучше переоценить, чем недооценка. В любое время может быть выполнен оценочный вызов.
Если оценка нет, Вас просят относительно фактического размера ветвления, использоваться в записи. Этот вызов только выполняется в фазе записи.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Очистка объект файла один раз запись завершена. (требуемый)
Объявление
Swift
func cleanupFileAfterBurn(_
file
: DRFile!)Objective C
- (void)cleanupFileAfterBurn:(DRFile *)
file
Параметры
file
Объект файла.
Обсуждение
Отправленный в получатель после того, как запись завершается. Это было бы надлежащим местом, чтобы закрыть файлы или выполнить любую другую необходимую работу разрушения. Это сообщение будет всегда отправляться независимо от того, успешно выполнилась ли запись или перестала работать
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
prepareFileForBurn (_:) - prepareFileForBurn:
ТребуемыйПодготовьте объект файла к записи. (требуемый)
Объявление
Swift
func prepareFileForBurn(_
file
: DRFile!) -> BoolObjective C
- (BOOL)prepareFileForBurn:(DRFile *)
file
Параметры
file
Объект файла.
Возвращаемое значение
YES, если должна продолжиться запись.
Обсуждение
Отправленный в recevier, прежде чем запись начинается. Это было бы надлежащим методом, чтобы открыть файлы или выполнить любую другую приготовительную необходимую работу. Вся иерархия диска полностью на месте и может быть запрошена в случае необходимости.
После этого вызова содержание записи заблокировано вниз, и необходимо быть в состоянии реагировать на calculateSizeOfFile:fork:estimating: сообщения с точными значениями.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Подготовьте объект файла к проверке. (требуемый)
Объявление
Swift
func prepareFileForVerification(_
file
: DRFile!) -> BoolObjective C
- (BOOL)prepareFileForVerification:(DRFile *)
file
Параметры
file
Объект файла.
Возвращаемое значение
YES, чтобы указать, что проверка должна продолжиться и НЕ указать отказ, произошел.
Обсуждение
Отправленный во время записи (после того, как производство и перед cleanupFileAfterBurn: сообщение), чтобы указать, что проверка собирается начаться. Теперь было бы хорошее время, чтобы перемотаться к запуску файла, сбросить конечные автоматы или сделать то независимо от того, что необходимо, чтобы подготовить производить снова.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
produceFile (_: fork:intoBuffer:length:atAddress:blockSize:) - produceFile:fork:intoBuffer:length:atAddress:blockSize:
ТребуемыйПроизводит указанное содержание ветвления для записи. (требуемый)
Объявление
Swift
func produceFile(_
file
: DRFile!, forkfork
: DRFileFork, intoBufferbuffer
: UnsafeMutablePointer<Int8>, lengthbufferLength
: UInt32, atAddressaddress
: UInt64, blockSizeblockSize
: UInt32) -> UInt32Objective C
- (uint32_t)produceFile:(DRFile *)
file
fork:(DRFileFork)fork
intoBuffer:(char *)buffer
length:(uint32_t)bufferLength
atAddress:(uint64_t)address
blockSize:(uint32_t)blockSize
Параметры
file
Объект файла.
fork
Ветвление файла для создания.
buffer
Буфер для создания данных в.
bufferLength
Длина буфера для создания данных в
address
Адрес байта в файле, который запрашивает механизм записи
blockSize
Размер блоков дорожки
Возвращаемое значение
Число байтов производится.
Обсуждение
Отправленный во время записи (после того, как prepareFileForBurn будут обмениваться сообщениями) запрос, чтобы получатель произвел указанное содержание ветвления.
recevier должен заполниться, буфер передал в максимально полном, и затем возвратите управление вызывающей стороне. В то время как запись хранения полного буфера диска имеет наибольшее значение, таким образом, Вы не должны выполнять длинные операции или блок для данных в этом методе. Этот метод должен возвратить число байтов фактически в буфере или 0, чтобы указать, что была ошибка при создании данных.
Вас можно попросить произвести дважды, один раз во время фактической записи и один раз во время проверки в зависимости от типа проверки дорожки.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.