@@ -160,7 +160,7 @@ func EQM_AbortDeviceConfigurationChange (inDriver: AudioServerPlugInDriverRef, i
160160func EQM_HasProperty ( inDriver: AudioServerPlugInDriverRef , inObjectID: AudioObjectID , inClientProcessID: pid_t , inAddress: UnsafePointer < AudioObjectPropertyAddress > ) -> DarwinBoolean {
161161 // This method returns whether or not the given object has the given property.
162162
163- log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .hasProperty( \( inAddress. pointee. mSelector. code ) ) " )
163+ log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .hasProperty( \( propertyName ( inAddress. pointee. mSelector) ) ) " )
164164 let hasProperty : Bool = ( {
165165 guard EQMDriver . validateDriver ( inDriver) else { return false }
166166 if let obj = EQMDriver . getEQMObject ( from: inObjectID) {
@@ -169,7 +169,7 @@ func EQM_HasProperty (inDriver: AudioServerPlugInDriverRef, inObjectID: AudioObj
169169 return false
170170 }
171171 } ) ( )
172- log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .hasProperty( \( inAddress. pointee. mSelector. code ) ) = \( hasProperty) " )
172+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .hasProperty( \( propertyName ( inAddress. pointee. mSelector) ) ) = \( hasProperty) " )
173173
174174 return DarwinBoolean ( hasProperty)
175175}
@@ -178,15 +178,15 @@ func EQM_IsPropertySettable (inDriver: AudioServerPlugInDriverRef, inObjectID: A
178178 // This method returns whether or not the given property on the object can have its value changed.
179179 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
180180
181- log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .isPropertySettable( \( inAddress. pointee. mSelector. code ) ) " )
181+ log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .isPropertySettable( \( propertyName ( inAddress. pointee. mSelector) ) ) " )
182182 let isSettable = DarwinBoolean ( ( {
183183 if let obj = EQMDriver . getEQMObject ( from: inObjectID) {
184184 return obj. isPropertySettable ( objectID: inObjectID, address: inAddress. pointee)
185185 } else {
186186 return false
187187 }
188188 } ) ( ) )
189- log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertySettable( \( inAddress. pointee. mSelector. code ) ) = \( isSettable) " )
189+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertySettable( \( propertyName ( inAddress. pointee. mSelector) ) ) = \( isSettable) " )
190190
191191 outIsSettable. pointee = isSettable
192192
@@ -197,15 +197,15 @@ func EQM_GetPropertyDataSize (inDriver: AudioServerPlugInDriverRef, inObjectID:
197197 // This method returns the byte size of the property's data.
198198 guard EQMDriver . validateDriver ( inDriver) && EQMDriver . validateObject ( inObjectID) else { return kAudioHardwareBadObjectError }
199199
200- log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyDataSize( \( inAddress. pointee. mSelector. code ) ) " )
200+ log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyDataSize( \( propertyName ( inAddress. pointee. mSelector) ) ) " )
201201 let size = ( { ( ) -> UInt32 ? in
202202 if let obj = EQMDriver . getEQMObject ( from: inObjectID) {
203203 return obj. getPropertyDataSize ( objectID: inObjectID, address: inAddress. pointee)
204204 } else {
205205 return nil
206206 }
207207 } ) ( )
208- log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyDataSize( \( inAddress. pointee. mSelector. code ) ) = \( size ?? 0 ) " )
208+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyDataSize( \( propertyName ( inAddress. pointee. mSelector) ) ) = \( size ?? 0 ) " )
209209
210210 if size != nil {
211211 outDataSize. pointee = size!
@@ -218,11 +218,11 @@ func EQM_GetPropertyDataSize (inDriver: AudioServerPlugInDriverRef, inObjectID:
218218func EQM_GetPropertyData ( inDriver: AudioServerPlugInDriverRef , inObjectID: AudioObjectID , inClientProcessID: pid_t , inAddress: UnsafePointer < AudioObjectPropertyAddress > , inQualifierDataSize: UInt32 , inQualifierData: UnsafeRawPointer ? , inDataSize: UInt32 , outDataSize: UnsafeMutablePointer < UInt32 > , outData: UnsafeMutableRawPointer ) -> OSStatus {
219219 // Fetches the data of the given property and places it in the provided buffer.
220220 guard EQMDriver . validateDriver ( inDriver) && EQMDriver . validateObject ( inObjectID) else {
221- log ( " Invalid driver or object id while in EQM_GetPropertyData( \( inAddress. pointee. mSelector. code ) ) " )
221+ log ( " Invalid driver or object id while in EQM_GetPropertyData( \( propertyName ( inAddress. pointee. mSelector) ) ) " )
222222 return kAudioHardwareBadObjectError
223223 }
224224
225- log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyData( \( inAddress. pointee. mSelector. code ) ) - Size requested: \( inDataSize) " )
225+ log ( " Invoking: \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyData( \( propertyName ( inAddress. pointee. mSelector) ) ) - Size requested: \( inDataSize) " )
226226
227227 let data = ( { ( ) -> EQMObjectProperty ? in
228228 if let obj = EQMDriver . getEQMObject ( from: inObjectID) {
@@ -231,7 +231,7 @@ func EQM_GetPropertyData (inDriver: AudioServerPlugInDriverRef, inObjectID: Audi
231231 return nil
232232 }
233233 } ) ( )
234- log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyData( \( inAddress. pointee. mSelector. code ) ) = \( String ( describing: data) ) " )
234+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .getPropertyData( \( propertyName ( inAddress. pointee. mSelector) ) ) = \( String ( describing: data) ) " )
235235 if data != nil {
236236 data!. write ( to: outData, size: outDataSize, requestedSize: inDataSize)
237237 return noErr
@@ -245,7 +245,7 @@ func EQM_SetPropertyData (inDriver: AudioServerPlugInDriverRef, inObjectID: Audi
245245 // Tells an object to change the value of the given property.
246246 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
247247
248- log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .setPropertyData( \( inAddress. pointee. mSelector. code ) ) = \( String ( describing: inData) ) " )
248+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .setPropertyData( \( propertyName ( inAddress. pointee. mSelector) ) ) = \( String ( describing: inData) ) " )
249249
250250 if let obj = EQMDriver . getEQMObject ( from: inObjectID) {
251251 var changedProperties : [ AudioObjectPropertyAddress ] = [ ]
@@ -254,7 +254,9 @@ func EQM_SetPropertyData (inDriver: AudioServerPlugInDriverRef, inObjectID: Audi
254254 if changedProperties. count > 0 {
255255 _ = EQMDriver . host!. pointee. PropertiesChanged ( EQMDriver . host!, inObjectID, UInt32 ( changedProperties. count) , changedProperties)
256256 }
257-
257+
258+ log ( " \( EQMDriver . getEQMObjectClassName ( from: inObjectID) ) .setPropertyData( \( propertyName ( inAddress. pointee. mSelector) ) ) - Status: \( status) - Changed Properties: \( changedProperties) " )
259+
258260 return status
259261 } else {
260262 return kAudioHardwareBadObjectError
@@ -269,16 +271,26 @@ func EQM_StartIO (inDriver: AudioServerPlugInDriverRef, inDeviceObjectID: AudioO
269271 // So, work only needs to be done when the first client starts. All subsequent starts simply
270272 // increment the counter.
271273 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
272-
273- return EQMDevice . startIO ( )
274+ log ( " EQM_StartIO() - Invoked " )
275+
276+ let status = EQMDevice . startIO ( )
277+
278+ log ( " EQM_StartIO() - Finished " )
279+
280+ return status
274281}
275282
276283func EQM_StopIO ( inDriver: AudioServerPlugInDriverRef , inDeviceObjectID: AudioObjectID , inClientID: UInt32 ) -> OSStatus {
277284 // This call tells the device that the client has stopped IO. The driver can stop the hardware
278285 // once all clients have stopped.
279286 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
280-
281- return EQMDevice . stopIO ( )
287+ log ( " EQM_StopIO() - Invoked " )
288+
289+ let status = EQMDevice . stopIO ( )
290+
291+ log ( " EQM_StopIO() - Finished " )
292+
293+ return status
282294}
283295
284296func EQM_GetZeroTimeStamp ( inDriver: AudioServerPlugInDriverRef , inDeviceObjectID: AudioObjectID , inClientID: UInt32 , outSampleTime: UnsafeMutablePointer < Float64 > , outHostTime: UnsafeMutablePointer < UInt64 > , outSeed: UnsafeMutablePointer < UInt64 > ) -> OSStatus {
@@ -291,20 +303,26 @@ func EQM_GetZeroTimeStamp (inDriver: AudioServerPlugInDriverRef, inDeviceObjectI
291303 // For this device, the zero time stamps' sample time increments every kDevice_RingBufferSize
292304 // frames and the host time increments by kDevice_RingBufferSize * gDevice_HostTicksPerFrame.
293305 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
294-
295- return EQMDevice . getZeroTimeStamp (
306+ log ( " EQM_GetZeroTimeStamp() - Invoked " )
307+
308+ let status = EQMDevice . getZeroTimeStamp (
296309 outSampleTime: outSampleTime,
297310 outHostTime: outHostTime,
298311 outSeed: outSeed
299312 )
313+ log ( " EQM_GetZeroTimeStamp() - Finished: Status = \( status) Sample TIme = \( outSampleTime. pointee) hostTime = \( outHostTime. pointee) Seed = \( outSeed. pointee) " )
314+
315+ return status
300316}
301317
302318func EQM_WillDoIOOperation ( inDriver: AudioServerPlugInDriverRef , inDeviceObjectID: AudioObjectID , inClientID: UInt32 , inOperationID: UInt32 , outWillDo: UnsafeMutablePointer < DarwinBoolean > , outWillDoInPlace: UnsafeMutablePointer < DarwinBoolean > ) -> OSStatus {
303319 // Asks the plug-in whether or not the device will perform the given phase of the IO cycle for a particular device.
304320 // This method returns whether or not the device will do a given IO operation. For this device,
305321 // we only support reading input data and writing output data.
306322 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
307-
323+
324+ log ( " EQM_WillDoIOOperation() - Invoked " )
325+
308326 var willDo = false
309327 var willDoInPlace = true
310328
@@ -322,7 +340,9 @@ func EQM_WillDoIOOperation (inDriver: AudioServerPlugInDriverRef, inDeviceObject
322340
323341 outWillDo. pointee = DarwinBoolean ( willDo)
324342 outWillDoInPlace. pointee = DarwinBoolean ( willDoInPlace)
325-
343+
344+ log ( " EQM_WillDoIOOperation() - Finished: willDo: \( willDo) willDoInPlace: \( willDoInPlace) " )
345+
326346 return noErr
327347}
328348
@@ -331,6 +351,7 @@ func EQM_BeginIOOperation (inDriver: AudioServerPlugInDriverRef, inDeviceObjectI
331351 // This is called at the beginning of an IO operation. This device doesn't do anything, so just
332352 // check the arguments and return.
333353 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
354+ log ( " EQM_BeginIOOperation() " )
334355 return noErr
335356}
336357
@@ -341,19 +362,26 @@ func EQM_DoIOOperation (inDriver: AudioServerPlugInDriverRef, inDeviceObjectID:
341362 guard let sample = ioMainBuffer? . assumingMemoryBound ( to: Float32 . self) else {
342363 return noErr
343364 }
344-
345- return EQMDevice . doIO (
365+
366+ log ( " EQM_DoIOOperation() - Started " )
367+
368+ let status = EQMDevice . doIO (
346369 clientID: inClientID,
347370 operationID: inOperationID,
348371 sample: sample,
349372 sampleTime: Int ( inIOCycleInfo. pointee. mInputTime. mSampleTime) ,
350373 frameSize: inIOBufferFrameSize
351374 )
375+
376+ log ( " EQM_DoIOOperation() - Ended - Status: \( status) " )
377+
378+ return status
352379}
353380
354381func EQM_EndIOOperation ( inDriver: AudioServerPlugInDriverRef , inDeviceObjectID: AudioObjectID , inClientID: UInt32 , inOperationID: UInt32 , inIOBufferFrameSize: UInt32 , inIOCycleInfo: UnsafePointer < AudioServerPlugInIOCycleInfo > ) -> OSStatus {
355382 // This is called at the end of an IO operation. This device doesn't do anything, so just check
356383 // the arguments and return.
357384 guard EQMDriver . validateDriver ( inDriver) else { return kAudioHardwareBadObjectError }
385+ log ( " EQM_EndIOOperation() " )
358386 return noErr
359387}
0 commit comments