Commits

Dave Dribin  committed 0080cec

Compatibility fixes for iPhone OS

  • Participants
  • Parent commits cb3b97d

Comments (0)

Files changed (11)

File lib/DDAudioCompatibility.h

+/*
+ * Copyright (c) 2006 Dave Dribin
+ * 
+ * Permission is hereby granted, free of charge, to any person
+ * obtaining a copy of this software and associated documentation
+ * files (the "Software"), to deal in the Software without
+ * restriction, including without limitation the rights to use, copy,
+ * modify, merge, publish, distribute, sublicense, and/or sell copies
+ * of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#import <Foundation/Foundation.h>
+
+
+#if TARGET_OS_IPHONE
+
+extern CFStringRef UTCreateStringForOSType(OSType inOSType);
+
+extern const char * GetMacOSStatusErrorString(OSStatus err);
+
+#endif

File lib/DDAudioCompatibility.m

+/*
+ * Copyright (c) 2006 Dave Dribin
+ * 
+ * Permission is hereby granted, free of charge, to any person
+ * obtaining a copy of this software and associated documentation
+ * files (the "Software"), to deal in the Software without
+ * restriction, including without limitation the rights to use, copy,
+ * modify, merge, publish, distribute, sublicense, and/or sell copies
+ * of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be
+ * included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#import "DDAudioCompatibility.h"
+
+
+#if TARGET_OS_IPHONE
+
+CFStringRef UTCreateStringForOSType(OSType inOSType)
+{
+    inOSType = CFSwapInt32HostToBig(inOSType);
+    char fourCharCode[5] = {0};
+    memcpy(fourCharCode, &inOSType, 4);
+    return CFStringCreateWithCString(NULL, fourCharCode, kCFStringEncodingUTF8);
+}
+
+extern const char * GetMacOSStatusErrorString(OSStatus err)
+{
+    return "unknown";
+}
+
+#endif

File lib/DDAudioComponent.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 #import <AudioUnit/AudioUnit.h>
 
 @interface DDAudioComponent : NSObject

File lib/DDAudioComponent.m

 
 #import "DDAudioComponent.h"
 #import "DDAudioException.h"
+#import "DDAudioCompatibility.h"
 
 #define THROW_IF DDThrowAudioIfErr
 

File lib/DDAudioException.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 
 
 extern NSString * DDAudioException;

File lib/DDAudioException.m

  */
 
 #import "DDAudioException.h"
+#import "DDAudioCompatibility.h"
 
 NSString * DDAudioException = @"AudioException";
 

File lib/DDAudioUnit.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 #import <AudioUnit/AudioUnit.h>
 
 @class AUGenericView;
 - (unsigned) presentPresetIndex;
 - (void) setPresentPresetIndex: (unsigned) presentPresetIndex;
 
+#if !TARGET_OS_IPHONE
+
 #pragma mark -
 #pragma mark View
 
 
 - (AUGenericView *) createGenericView;
 
+#endif
+
 @end
+
+#if !TARGET_OS_IPHONE
+# define kAudioUnitSubType_DDDefaultOutput kAudioUnitSubType_DefaultOutput
+#else
+# define kAudioUnitSubType_DDDefaultOutput kAudioUnitSubType_RemoteIO
+#endif

File lib/DDAudioUnit.m

 
 #import "DDAudioUnit.h"
 #import "DDAudioException.h"
-#import <AudioUnit/AUCocoaUIView.h>
-#import <CoreAudioKit/CoreAudioKit.h>
 #import "DDAudioUnitPreset.h"
 
+#if !TARGET_OS_IPHONE
+# import <AudioUnit/AUCocoaUIView.h>
+# import <CoreAudioKit/CoreAudioKit.h>
+#endif
+
 #define THROW_IF DDThrowAudioIfErr
 
 @interface DDAudioUnit (Private)
     [self setPresentPreset: [mFactoryPresets objectAtIndex: presentPresetIndex]];
 }
 
+#if !TARGET_OS_IPHONE
+
 #pragma mark -
 #pragma mark View
 
     CFRelease(factoryPresets);
 }
 
+#endif
+
 @end

File lib/DDAudioUnitGraph.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 #import <AudioUnit/AudioUnit.h>
 #import <AudioToolbox/AudioToolbox.h>
 

File lib/DDAudioUnitNode.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 #import <AudioUnit/AudioUnit.h>
 #import <AudioToolbox/AudioToolbox.h>
 

File lib/DDAudioUnitPreset.h

  * SOFTWARE.
  */
 
-#import <Cocoa/Cocoa.h>
+#import <Foundation/Foundation.h>
 #import <AudioUnit/AudioUnit.h>