         }
     }
 
-    private func clockSourceNameForClockSourceID(clockSourceID: UInt32, forChannel channel: UInt32, andDirection direction: AMCoreAudioDirection) -> String {
+    private func clockSourceNameForClockSourceID(clockSourceID: UInt32, forChannel channel: UInt32, andDirection direction: AMCoreAudioDirection) -> String? {
         var name: CFString = ""
         var theClockSourceID = clockSourceID
 

}

final public class AMCoreAudioDevice: NSObject {

    let AMCoreAudioDefaultClockSourceName = "Default"

    /*!
        A delegate conforming to the AMCoreAudioDeviceDelegate protocol.

        }

        return clockSourceIDs.map { (clockSourceID) -> String in
            // We expect clockSourceNameForClockSourceID to never fail in this case, 
            // but in the unlikely case it does, we provide a default value.
            return clockSourceNameForClockSourceID(clockSourceID, forChannel: channel, andDirection: direction) ?? "Clock source \(clockSourceID)"
        }
    }

