DRTrack
Класс DRTrack представляет дорожку на записанном диске.
О дорожках
DRTrack предоставляет данные для записи и содержит описание дорожки на диске (длина, тип блока, формат данных, и т.д.). Данные предоставлены для записи в потоке в реальном времени. Это до дорожки для предоставления этих данных своевременно, иначе недогрузка записи может произойти и разрушить диск.
Производство данных
DRTracks обычно не хранят или кэшируют данные, которые будут записаны в диск, вместо этого данные передаются потоком к диску от некоторого производителя данных, поскольку это необходимо. Это выполняется через объект, связанный с дорожкой, когда дорожка создается, вызвал производителя дорожки. Производитель дорожки является классом, который Вы создаете, который реализует DRTrackDataProduction неофициальный протокол. Этот протокол определяет все методы, которые отслеживаемый объект вызовет во время записи для получения данных.
Свойства дорожки
Объект DRTrack содержит несколько свойств, определяющих дорожку для записи. Эти свойства сохранены в NSDictionary и получены доступ через свойства и setProperties: методы.
Существует несколько свойств, требующихся, чтобы присутствовать и если они не будут, то заставит запись перестать работать. Это:
Длина DRTrackLengthKey дорожки
Размер DRBlockSizeKey в байтах каждого блока дорожки
Тип DRBlockTypeKey каждого блока дорожки
Форма Данных DRDataFormKey каждого блока в дорожке
Формат Сеанса DRSessionFormatKey дорожки
Режим DRTrackModeKey Track дорожки
Возможные значения этих свойств определяются в Mt. Фуджи (IFF-8090i) спецификация для устройств CD/DVD. Вам решать понять возможные значения и значения каждого.
Все другие ключи, содержавшиеся в словаре свойств, являются дополнительными и могут быть опущены.
Оператор импорта
Swift
import DiscRecording
Objective C
@import DiscRecording;
Доступность
Доступный в OS X v10.2 и позже.
-
Просит производитель дорожки оценку размера.
Объявление
Swift
func estimateLength() -> UInt64
Objective C
- (uint64_t)estimateLength
Возвращаемое значение
Предполагаемая длина дорожки.
Обсуждение
Это вызовы метода производитель дорожки, чтобы попросить, чтобы он оценил размер, необходимый для его данных.
Для некоторых типов дорожки этот вызов может быть очень дорогим. Например, DRFilesystemTrack, возможно, должен выполнить итерации папок на диске для обеспечения точной оценки, которая (если большое количество файлов и папок включается) может заставить этот вызов занимать 30 секунд или больше. Так как Вашему основному потоку нельзя позволить блокировать для этого долго, можно хотеть вызвать эту функцию на отдельном потоке.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.3 и позже.
-
Инициализирует DRTrack с производителем
Объявление
Swift
init!(producer
producer
: AnyObject!)Objective C
- (id)initWithProducer:(id)
producer
Параметры
producer
Объект использовать в качестве производителя данных
Возвращаемое значение
DRTrack
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Возвращает словарь свойств дорожки.
Объявление
Swift
func properties() -> [NSObject : AnyObject]!
Objective C
- (NSDictionary *)properties
Возвращаемое значение
NSDictionary, содержащий свойства дорожки.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Устанавливает словарь свойств дорожки
Объявление
Swift
func setProperties(_
properties
: [NSObject : AnyObject]!)Objective C
- (void)setProperties:(NSDictionary *)
properties
Параметры
properties
NSDictionary свойств для установки.
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Тестирует скорость производства на указанный интервал.
Объявление
Swift
func testProductionSpeedForInterval(_
interval
: NSTimeInterval) -> FloatObjective C
- (float)testProductionSpeedForInterval:(NSTimeInterval)
interval
Параметры
interval
Длина теста в секундах.
Возвращаемое значение
Данные максимальной скорости могут быть произведены в.
Обсуждение
Выполняет поддельный «производственный» цикл, неоднократно прося у получателя данные путем вызова это - produceDataIntoBuffer:length:atAddress:blockSize:ioFlags производителя: для интервала требуемого времени.
Используйте эту функцию, чтобы проверить, что производственный код может произвести данные достаточно быстро для удовлетворения требований пропускной способности записи.
Возвращает расчетную максимальную скорость, в котором получатель может произвести данные. Это значение должно использоваться при установке записи для ограничения скорости записи
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.
-
Тестирует скорость производства на указанное количество байта.
Объявление
Swift
func testProductionSpeedForLength(_
length
: UInt32) -> FloatObjective C
- (float)testProductionSpeedForLength:(uint32_t)
length
Параметры
length
Длина теста в байтах.
Возвращаемое значение
Данные максимальной скорости могут быть произведены в.
Обсуждение
Выполняет поддельный «производственный» цикл, неоднократно прося у получателя данные путем вызова это - produceDataIntoBuffer:length:atAddress:blockSize:ioFlags производителя: до указанного числа длины байтов были произведены.
Используйте эту функцию, чтобы проверить, что производственный код может произвести данные достаточно быстро для удовлетворения требований пропускной способности записи.
Возвращает расчетную максимальную скорость, в котором получатель может произвести данные. Это значение должно использоваться при установке записи для ограничения скорости записи
Оператор импорта
Objective C
@import DiscRecording;
Swift
import DiscRecording
Доступность
Доступный в OS X v10.2 и позже.