Platforms to show: All Mac Windows Linux Cross-Platform

Back to DRTrackMBS class.

DRTrackMBS.cleanupTrackAfterBurn

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Cleans up the track after the burn completes.

Called after burning is complete. Typically you'll clean up what was setup is prepareTrackForBurn. Since this method is called after the laser is turned off and the burn is finished, this method can perform time consuming tasks.

True to indicate that the burn should proceed and false to indicate a failure occurred.

Some examples using this event:

DRTrackMBS.cleanupTrackAfterVerification as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Cleans up the track after the verification completes.

Once the verification phase is complete, this method is called. The class implementing the method has a chance to do anything up to and including failing the verification.

Return true to indicate success, false to indicate failure.

DRTrackMBS.estimateLengthOfTrack as uint64

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Estimates the size of the track to be burned.

This message is sent outside of a burn cycle in response to a -estimateLength message sent to the track.

Returns the number of blocks of data that the track will occupy. The estimate should be reasonably accurate, and no smaller than the actual size that will be needed.

Only on Mac OS X 10.3 and newer.

DRTrackMBS.prepareTrack(burn as DRBurnMBS) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Prepares the track for burning.

Called before any burning starts. Do any sort of setup that needs to be performed (such as opening files). This method can calculate and update the exact track length that will be burned.

Since this method is called before the laser is turned on, this method can perform time consuming tasks.

burn: The burn object controlling the burn

Return true to indicate that the burn should proceed and false to indicate a failure occurred.

Some examples using this event:

DRTrackMBS.prepareTrackForVerification as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Prepare the track to be verified.

This method is called after the burn complets writing data to disc and before verification phase starts. Now would be a good time to prepare to produce data again by rewinding to the start of files, etc.

Return true to indicate that the verification should proceed and false to indicate a failure occurred.

DRTrackMBS.produceDataForTrack(buffer as memoryblock, Bufferlen as uint32, address as uint64, blocksize as uint32, byref flags as uint32) as uint32

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Produces the track data.

This method is called many times over the course of a burn to obtain data for the track. The buffer passed in will be a multiple of blockSize (bufferLength == blockSize * N, where N > 1) and should be filled as full as possible with data. address is the sector address on the disc from the start of the track that is the buffer will be written to.

Since while burning, keeping the drive's buffer full is of utmost importance, you should not perform lengthy operations or block for data in this method. This method should return the number of bytes actually in the buffer or 0 to indicate that there was an error producing the data..

buffer: The buffer to place data into
bufferLength: The length of buffer
address: The on-disc address of where data will be written
blockSize: the size of each block on the disc. It's best to return a multiple of this size.
flags: Some flags. Not yet used.

Return the number of bytes produced.

Some examples using this event:

DRTrackMBS.producePreGapForTrack(buffer as memoryblock, Bufferlen as uint32, address as uint64, blocksize as uint32, byref flags as uint32) as uint32

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Produces the pregap data.

This method is called to obtain data for the track's pregap. If the DRPreGapLengthKey key is present in the track properties, the track producer will be asked for the pregap data first. If the producer implements this selector, then it's the responsibility of the producer to provide data for the pregap, otherwise that length of silence will be produced by DiscRecording.

The buffer passed in will be a multiple of blockSize (bufferLength = blockSize * N, where N > 1) and should be filled as full as possible with data. address is the sector address on the disc from the start of the track that is the buffer will be written to.

Since while burning, keeping the drive's buffer full is of utmost importance, you should not perform lengthy operations or block for data in this method. This method should return the number of bytes actually in the buffer or 0 to indicate that there was an error producing the data..

buffer: The buffer to place data into
bufferLength: The length of buffer
address: The on-disc address of where data will be written
blockSize the size of each block on the disc. It's best to return a multiple of this size.
flags: Some flags (not used).

Return the number of bytes produced.

DRTrackMBS.verifyDataForTrack(buffer as memoryblock, Bufferlen as uint32, address as uint64, blocksize as uint32, byref flags as uint32) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Cleans up the track after the burn completes.

If the class implementing this method asks for a verification type of DRVerificationTypeReceiveData, then a series of calls to this method will start. It's up to the class to reproduce the data again and compare it to the data passed in buffer. The buffer passed in will be a multiple of blockSize (bufferLength == blockSize * N, where N > 1). address is the sector address on the disc from the start of the track that is the buffer was written to.

buffer: The data read in from the track to compare with
bufferLength: The length of buffer
address: The on-disc address of where data will was read from.
blockSize: the size of each block on the disc. It's best to return a multiple of this size.
flags: Some flags. Not used.

Return true to indicate that the data compared successfully and false to indicate a failure occurred.

DRTrackMBS.verifyPreGapForTrack(buffer as memoryblock, Bufferlen as uint32, address as uint64, blocksize as uint32, byref flags as uint32) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
event DiscRecording MBS MacControls Plugin 7.4 ✅ Yes ❌ No ❌ No ❌ No
Checks the integrity track pregap after a burn.

If the class implementing this method asks for a verification type of DRVerificationTypeReceiveData, then a series of calls to this method will start. It's up to the class to reproduce the pregap again and compare it to the data passed in buffer. The buffer passed in will be a multiple of blockSize (bufferLength == blockSize * N, where N > 1). address is the sector address on the disc from the start of the track that is the buffer was written to.

buffer: The data read in from the track to compare with
bufferLength: The length of buffer
address: The on-disc address of where data will was read from.
blockSize: the size of each block on the disc. It's best to return a multiple of this size.
flags: Some flags. (not used)

Return true to indicate that the data compared successfully and false to indicate a failure occurred.

The items on this page are in the following plugins: MBS MacControls Plugin.


The biggest plugin in space...