From 96543e1b843703c44eadc30a3162cfc5039a985c Mon Sep 17 00:00:00 2001 From: Ariel Elkin Date: Tue, 4 Mar 2014 02:25:34 +0000 Subject: [PATCH] added iOS Demo to demo projects --- .../iOS Demo.xcodeproj/project.pbxproj | 522 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + projects/demo/iOS Demo/iOS Demo/AppDelegate.h | 14 + projects/demo/iOS Demo/iOS Demo/AppDelegate.m | 25 + .../AppIcon.appiconset/Contents.json | 23 + .../LaunchImage.launchimage/Contents.json | 23 + .../demo/iOS Demo/iOS Demo/ViewController.h | 12 + .../demo/iOS Demo/iOS Demo/ViewController.mm | 100 ++++ .../iOS Demo/en.lproj/InfoPlist.strings | 2 + .../iOS Demo/iOS Demo/iOS Demo-Info.plist | 38 ++ .../iOS Demo/iOS Demo/iOS Demo-Prefix.pch | 16 + projects/demo/iOS Demo/iOS Demo/main.m | 18 + .../iOS DemoTests/en.lproj/InfoPlist.strings | 2 + .../iOS DemoTests/iOS DemoTests-Info.plist | 22 + .../iOS Demo/iOS DemoTests/iOS_DemoTests.m | 34 ++ 15 files changed, 858 insertions(+) create mode 100644 projects/demo/iOS Demo/iOS Demo.xcodeproj/project.pbxproj create mode 100644 projects/demo/iOS Demo/iOS Demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 projects/demo/iOS Demo/iOS Demo/AppDelegate.h create mode 100644 projects/demo/iOS Demo/iOS Demo/AppDelegate.m create mode 100644 projects/demo/iOS Demo/iOS Demo/Images.xcassets/AppIcon.appiconset/Contents.json create mode 100644 projects/demo/iOS Demo/iOS Demo/Images.xcassets/LaunchImage.launchimage/Contents.json create mode 100644 projects/demo/iOS Demo/iOS Demo/ViewController.h create mode 100644 projects/demo/iOS Demo/iOS Demo/ViewController.mm create mode 100644 projects/demo/iOS Demo/iOS Demo/en.lproj/InfoPlist.strings create mode 100644 projects/demo/iOS Demo/iOS Demo/iOS Demo-Info.plist create mode 100644 projects/demo/iOS Demo/iOS Demo/iOS Demo-Prefix.pch create mode 100644 projects/demo/iOS Demo/iOS Demo/main.m create mode 100644 projects/demo/iOS Demo/iOS DemoTests/en.lproj/InfoPlist.strings create mode 100644 projects/demo/iOS Demo/iOS DemoTests/iOS DemoTests-Info.plist create mode 100644 projects/demo/iOS Demo/iOS DemoTests/iOS_DemoTests.m diff --git a/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.pbxproj b/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.pbxproj new file mode 100644 index 0000000..9f2f1ea --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.pbxproj @@ -0,0 +1,522 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + B02FD53618C520D60009ECA9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD53518C520D60009ECA9 /* Foundation.framework */; }; + B02FD53818C520D60009ECA9 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD53718C520D60009ECA9 /* CoreGraphics.framework */; }; + B02FD53A18C520D60009ECA9 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD53918C520D60009ECA9 /* UIKit.framework */; }; + B02FD54018C520D60009ECA9 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = B02FD53E18C520D60009ECA9 /* InfoPlist.strings */; }; + B02FD54218C520D60009ECA9 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = B02FD54118C520D60009ECA9 /* main.m */; }; + B02FD54618C520D60009ECA9 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = B02FD54518C520D60009ECA9 /* AppDelegate.m */; }; + B02FD54818C520D60009ECA9 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B02FD54718C520D60009ECA9 /* Images.xcassets */; }; + B02FD54F18C520D70009ECA9 /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD54E18C520D70009ECA9 /* XCTest.framework */; }; + B02FD55018C520D70009ECA9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD53518C520D60009ECA9 /* Foundation.framework */; }; + B02FD55118C520D70009ECA9 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD53918C520D60009ECA9 /* UIKit.framework */; }; + B02FD55918C520D70009ECA9 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = B02FD55718C520D70009ECA9 /* InfoPlist.strings */; }; + B02FD55B18C520D70009ECA9 /* iOS_DemoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B02FD55A18C520D70009ECA9 /* iOS_DemoTests.m */; }; + B02FD56D18C521390009ECA9 /* libSTK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = B02FD56A18C520E60009ECA9 /* libSTK.a */; }; + B02FD57018C521560009ECA9 /* ViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = B02FD56F18C521560009ECA9 /* ViewController.mm */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + B02FD55218C520D70009ECA9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = B02FD52A18C520D60009ECA9 /* Project object */; + proxyType = 1; + remoteGlobalIDString = B02FD53118C520D60009ECA9; + remoteInfo = "iOS Demo"; + }; + B02FD56918C520E60009ECA9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = B02FD56418C520E60009ECA9 /* STK.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = B05F5A5918BC1018008EE790; + remoteInfo = STK; + }; + B02FD56B18C520E60009ECA9 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = B02FD56418C520E60009ECA9 /* STK.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = B0F70ED518C01AB600DAF1DF; + remoteInfo = rawwaves; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + B02FD53218C520D60009ECA9 /* iOS Demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "iOS Demo.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + B02FD53518C520D60009ECA9 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + B02FD53718C520D60009ECA9 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; + B02FD53918C520D60009ECA9 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; + B02FD53D18C520D60009ECA9 /* iOS Demo-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "iOS Demo-Info.plist"; sourceTree = ""; }; + B02FD53F18C520D60009ECA9 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + B02FD54118C520D60009ECA9 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + B02FD54318C520D60009ECA9 /* iOS Demo-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "iOS Demo-Prefix.pch"; sourceTree = ""; }; + B02FD54418C520D60009ECA9 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + B02FD54518C520D60009ECA9 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + B02FD54718C520D60009ECA9 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; + B02FD54D18C520D70009ECA9 /* iOS DemoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "iOS DemoTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + B02FD54E18C520D70009ECA9 /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; + B02FD55618C520D70009ECA9 /* iOS DemoTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "iOS DemoTests-Info.plist"; sourceTree = ""; }; + B02FD55818C520D70009ECA9 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; + B02FD55A18C520D70009ECA9 /* iOS_DemoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = iOS_DemoTests.m; sourceTree = ""; }; + B02FD56418C520E60009ECA9 /* STK.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = STK.xcodeproj; path = "../../../STK for iOS/STK.xcodeproj"; sourceTree = ""; }; + B02FD56E18C521560009ECA9 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; + B02FD56F18C521560009ECA9 /* ViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ViewController.mm; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + B02FD52F18C520D60009ECA9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD56D18C521390009ECA9 /* libSTK.a in Frameworks */, + B02FD53818C520D60009ECA9 /* CoreGraphics.framework in Frameworks */, + B02FD53A18C520D60009ECA9 /* UIKit.framework in Frameworks */, + B02FD53618C520D60009ECA9 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B02FD54A18C520D70009ECA9 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD54F18C520D70009ECA9 /* XCTest.framework in Frameworks */, + B02FD55118C520D70009ECA9 /* UIKit.framework in Frameworks */, + B02FD55018C520D70009ECA9 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + B02FD52918C520D60009ECA9 = { + isa = PBXGroup; + children = ( + B02FD56418C520E60009ECA9 /* STK.xcodeproj */, + B02FD53B18C520D60009ECA9 /* iOS Demo */, + B02FD55418C520D70009ECA9 /* iOS DemoTests */, + B02FD53418C520D60009ECA9 /* Frameworks */, + B02FD53318C520D60009ECA9 /* Products */, + ); + sourceTree = ""; + }; + B02FD53318C520D60009ECA9 /* Products */ = { + isa = PBXGroup; + children = ( + B02FD53218C520D60009ECA9 /* iOS Demo.app */, + B02FD54D18C520D70009ECA9 /* iOS DemoTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + B02FD53418C520D60009ECA9 /* Frameworks */ = { + isa = PBXGroup; + children = ( + B02FD53518C520D60009ECA9 /* Foundation.framework */, + B02FD53718C520D60009ECA9 /* CoreGraphics.framework */, + B02FD53918C520D60009ECA9 /* UIKit.framework */, + B02FD54E18C520D70009ECA9 /* XCTest.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; + B02FD53B18C520D60009ECA9 /* iOS Demo */ = { + isa = PBXGroup; + children = ( + B02FD54418C520D60009ECA9 /* AppDelegate.h */, + B02FD54518C520D60009ECA9 /* AppDelegate.m */, + B02FD56E18C521560009ECA9 /* ViewController.h */, + B02FD56F18C521560009ECA9 /* ViewController.mm */, + B02FD54718C520D60009ECA9 /* Images.xcassets */, + B02FD53C18C520D60009ECA9 /* Supporting Files */, + ); + path = "iOS Demo"; + sourceTree = ""; + }; + B02FD53C18C520D60009ECA9 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + B02FD53D18C520D60009ECA9 /* iOS Demo-Info.plist */, + B02FD53E18C520D60009ECA9 /* InfoPlist.strings */, + B02FD54118C520D60009ECA9 /* main.m */, + B02FD54318C520D60009ECA9 /* iOS Demo-Prefix.pch */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; + B02FD55418C520D70009ECA9 /* iOS DemoTests */ = { + isa = PBXGroup; + children = ( + B02FD55A18C520D70009ECA9 /* iOS_DemoTests.m */, + B02FD55518C520D70009ECA9 /* Supporting Files */, + ); + path = "iOS DemoTests"; + sourceTree = ""; + }; + B02FD55518C520D70009ECA9 /* Supporting Files */ = { + isa = PBXGroup; + children = ( + B02FD55618C520D70009ECA9 /* iOS DemoTests-Info.plist */, + B02FD55718C520D70009ECA9 /* InfoPlist.strings */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; + B02FD56518C520E60009ECA9 /* Products */ = { + isa = PBXGroup; + children = ( + B02FD56A18C520E60009ECA9 /* libSTK.a */, + B02FD56C18C520E60009ECA9 /* rawwaves.bundle */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + B02FD53118C520D60009ECA9 /* iOS Demo */ = { + isa = PBXNativeTarget; + buildConfigurationList = B02FD55E18C520D70009ECA9 /* Build configuration list for PBXNativeTarget "iOS Demo" */; + buildPhases = ( + B02FD52E18C520D60009ECA9 /* Sources */, + B02FD52F18C520D60009ECA9 /* Frameworks */, + B02FD53018C520D60009ECA9 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "iOS Demo"; + productName = "iOS Demo"; + productReference = B02FD53218C520D60009ECA9 /* iOS Demo.app */; + productType = "com.apple.product-type.application"; + }; + B02FD54C18C520D70009ECA9 /* iOS DemoTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = B02FD56118C520D70009ECA9 /* Build configuration list for PBXNativeTarget "iOS DemoTests" */; + buildPhases = ( + B02FD54918C520D70009ECA9 /* Sources */, + B02FD54A18C520D70009ECA9 /* Frameworks */, + B02FD54B18C520D70009ECA9 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + B02FD55318C520D70009ECA9 /* PBXTargetDependency */, + ); + name = "iOS DemoTests"; + productName = "iOS DemoTests"; + productReference = B02FD54D18C520D70009ECA9 /* iOS DemoTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + B02FD52A18C520D60009ECA9 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0500; + ORGANIZATIONNAME = "Ariel Elkin"; + TargetAttributes = { + B02FD54C18C520D70009ECA9 = { + TestTargetID = B02FD53118C520D60009ECA9; + }; + }; + }; + buildConfigurationList = B02FD52D18C520D60009ECA9 /* Build configuration list for PBXProject "iOS Demo" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = B02FD52918C520D60009ECA9; + productRefGroup = B02FD53318C520D60009ECA9 /* Products */; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = B02FD56518C520E60009ECA9 /* Products */; + ProjectRef = B02FD56418C520E60009ECA9 /* STK.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + B02FD53118C520D60009ECA9 /* iOS Demo */, + B02FD54C18C520D70009ECA9 /* iOS DemoTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + B02FD56A18C520E60009ECA9 /* libSTK.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libSTK.a; + remoteRef = B02FD56918C520E60009ECA9 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + B02FD56C18C520E60009ECA9 /* rawwaves.bundle */ = { + isa = PBXReferenceProxy; + fileType = wrapper.cfbundle; + path = rawwaves.bundle; + remoteRef = B02FD56B18C520E60009ECA9 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXResourcesBuildPhase section */ + B02FD53018C520D60009ECA9 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD54018C520D60009ECA9 /* InfoPlist.strings in Resources */, + B02FD54818C520D60009ECA9 /* Images.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B02FD54B18C520D70009ECA9 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD55918C520D70009ECA9 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + B02FD52E18C520D60009ECA9 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD57018C521560009ECA9 /* ViewController.mm in Sources */, + B02FD54618C520D60009ECA9 /* AppDelegate.m in Sources */, + B02FD54218C520D60009ECA9 /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + B02FD54918C520D70009ECA9 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B02FD55B18C520D70009ECA9 /* iOS_DemoTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + B02FD55318C520D70009ECA9 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = B02FD53118C520D60009ECA9 /* iOS Demo */; + targetProxy = B02FD55218C520D70009ECA9 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + B02FD53E18C520D60009ECA9 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + B02FD53F18C520D60009ECA9 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + B02FD55718C520D70009ECA9 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + B02FD55818C520D70009ECA9 /* en */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + B02FD55C18C520D70009ECA9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + }; + name = Debug; + }; + B02FD55D18C520D70009ECA9 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 7.0; + SDKROOT = iphoneos; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + B02FD55F18C520D70009ECA9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "iOS Demo/iOS Demo-Prefix.pch"; + HEADER_SEARCH_PATHS = ( + ../../../include/, + "$(inherited)", + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, + ); + INFOPLIST_FILE = "iOS Demo/iOS Demo-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + B02FD56018C520D70009ECA9 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "iOS Demo/iOS Demo-Prefix.pch"; + HEADER_SEARCH_PATHS = ( + ../../../include/, + "$(inherited)", + /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include, + ); + INFOPLIST_FILE = "iOS Demo/iOS Demo-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + B02FD56218C520D70009ECA9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/iOS Demo.app/iOS Demo"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + "$(DEVELOPER_FRAMEWORKS_DIR)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "iOS Demo/iOS Demo-Prefix.pch"; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + INFOPLIST_FILE = "iOS DemoTests/iOS DemoTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUNDLE_LOADER)"; + WRAPPER_EXTENSION = xctest; + }; + name = Debug; + }; + B02FD56318C520D70009ECA9 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; + BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/iOS Demo.app/iOS Demo"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SDKROOT)/Developer/Library/Frameworks", + "$(inherited)", + "$(DEVELOPER_FRAMEWORKS_DIR)", + ); + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "iOS Demo/iOS Demo-Prefix.pch"; + INFOPLIST_FILE = "iOS DemoTests/iOS DemoTests-Info.plist"; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUNDLE_LOADER)"; + WRAPPER_EXTENSION = xctest; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + B02FD52D18C520D60009ECA9 /* Build configuration list for PBXProject "iOS Demo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B02FD55C18C520D70009ECA9 /* Debug */, + B02FD55D18C520D70009ECA9 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + B02FD55E18C520D70009ECA9 /* Build configuration list for PBXNativeTarget "iOS Demo" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B02FD55F18C520D70009ECA9 /* Debug */, + B02FD56018C520D70009ECA9 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; + B02FD56118C520D70009ECA9 /* Build configuration list for PBXNativeTarget "iOS DemoTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + B02FD56218C520D70009ECA9 /* Debug */, + B02FD56318C520D70009ECA9 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; +/* End XCConfigurationList section */ + }; + rootObject = B02FD52A18C520D60009ECA9 /* Project object */; +} diff --git a/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..764c58c --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/projects/demo/iOS Demo/iOS Demo/AppDelegate.h b/projects/demo/iOS Demo/iOS Demo/AppDelegate.h new file mode 100644 index 0000000..e6ab28b --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/AppDelegate.h @@ -0,0 +1,14 @@ +// +// AppDelegate.h +// iOS Demo +// +// Created by Ariel Elkin on 03/03/2014. +// + +#import + +@interface AppDelegate : UIResponder + +@property (strong, nonatomic) UIWindow *window; + +@end diff --git a/projects/demo/iOS Demo/iOS Demo/AppDelegate.m b/projects/demo/iOS Demo/iOS Demo/AppDelegate.m new file mode 100644 index 0000000..75cfcc0 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/AppDelegate.m @@ -0,0 +1,25 @@ +// +// AppDelegate.m +// iOS Demo +// +// Created by Ariel Elkin on 03/03/2014. +// + +#import "AppDelegate.h" +#import "ViewController.h" + +@implementation AppDelegate + +- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions +{ + self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; + + ViewController *vc = [[ViewController alloc] initWithNibName:nil bundle:nil]; + [self.window setRootViewController:vc]; + + [self.window makeKeyAndVisible]; + + return YES; +} + +@end diff --git a/projects/demo/iOS Demo/iOS Demo/Images.xcassets/AppIcon.appiconset/Contents.json b/projects/demo/iOS Demo/iOS Demo/Images.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..a396706 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/Images.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/projects/demo/iOS Demo/iOS Demo/Images.xcassets/LaunchImage.launchimage/Contents.json b/projects/demo/iOS Demo/iOS Demo/Images.xcassets/LaunchImage.launchimage/Contents.json new file mode 100644 index 0000000..c79ebd3 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/Images.xcassets/LaunchImage.launchimage/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "orientation" : "portrait", + "idiom" : "iphone", + "extent" : "full-screen", + "minimum-system-version" : "7.0", + "scale" : "2x" + }, + { + "orientation" : "portrait", + "idiom" : "iphone", + "subtype" : "retina4", + "extent" : "full-screen", + "minimum-system-version" : "7.0", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/projects/demo/iOS Demo/iOS Demo/ViewController.h b/projects/demo/iOS Demo/iOS Demo/ViewController.h new file mode 100644 index 0000000..c2511d9 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/ViewController.h @@ -0,0 +1,12 @@ +// +// ViewController.h +// iOS Demo +// +// Created by Ariel Elkin on 03/03/2014. +// + +#import + +@interface ViewController : UIViewController + +@end diff --git a/projects/demo/iOS Demo/iOS Demo/ViewController.mm b/projects/demo/iOS Demo/iOS Demo/ViewController.mm new file mode 100644 index 0000000..7422368 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/ViewController.mm @@ -0,0 +1,100 @@ +// +// ViewController.m +// iOS Demo +// +// Created by Ariel Elkin on 03/03/2014. +// + +#import "ViewController.h" + +/* + + Cherry-pick the files you'll need for your app: + + Click on STK.xcodeproj, select the STK target, + go to the Build Phases, and add the .cpp files you + need in the 'Compile Sources' section. + */ + +#import "SineWave.h" //Add SineWave.cpp +#import "Brass.h" //Add ADSR.cpp, BiQuad.cpp, DelayA.cpp, and PoleZero.cpp + +@implementation ViewController { + stk::SineWave *sineWave; + stk::Brass *brass; +} + +- (void)loadView { + self.view = [UIView new]; + [self.view setBackgroundColor:[UIColor whiteColor]]; + [self setupUI]; +} + +- (void)viewDidLoad { + [super viewDidLoad]; + + NSUInteger samplesToGenerate = 1000; + + //Test SineWave: + sineWave = new stk::SineWave(); + + for (NSUInteger i = 0; i < samplesToGenerate; i ++) { + float sample = sineWave->tick(); + NSLog(@"SineWave sample: %f", sample); + } + + //Test Brass: + brass = new stk::Brass(); + + brass->noteOn(400, 1); + + for (NSUInteger i = 0; i < samplesToGenerate; i ++) { + float sample = brass->tick(); + NSLog(@"Brass sample: %f", sample); + } + + #pragma mark TODO - Audio playback +} + + +- (void)sineSliderMoved:(UISlider *)slider { + sineWave->setFrequency(slider.value); + NSLog(@"Setting SineWave frequency to %.2f", slider.value); +} + +- (void)brassSliderMoved:(UISlider *)slider { + brass->setFrequency(slider.value); + NSLog(@"Setting Brass frequency to %.2f", slider.value); +} + +- (void)setupUI { + + //Add slider to control sine wave frequency: + UISlider *sineSlider = [[UISlider alloc] init]; + [sineSlider addTarget:self action:@selector(sineSliderMoved:) forControlEvents:UIControlEventValueChanged]; + [sineSlider setMinimumValue:0]; + [sineSlider setMaximumValue:800]; + [sineSlider setTranslatesAutoresizingMaskIntoConstraints:NO]; + [self.view addSubview:sineSlider]; + + NSArray *sliderConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-40-[sineSlider(200)]" options:0 metrics:nil views:@{@"sineSlider": sineSlider}]; + [self.view addConstraints:sliderConstraints]; + sliderConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-40-[sineSlider]" options:0 metrics:nil views:@{@"sineSlider": sineSlider}]; + [self.view addConstraints:sliderConstraints]; + + + //Add slider to control brass's frequency: + UISlider *brassSlider = [[UISlider alloc] init]; + [brassSlider addTarget:self action:@selector(brassSliderMoved:) forControlEvents:UIControlEventValueChanged]; + [brassSlider setMinimumValue:0]; + [brassSlider setMaximumValue:800]; + [brassSlider setTranslatesAutoresizingMaskIntoConstraints:NO]; + [self.view addSubview:brassSlider]; + + sliderConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-40-[brassSlider(200)]" options:0 metrics:nil views:@{@"brassSlider": brassSlider}]; + [self.view addConstraints:sliderConstraints]; + sliderConstraints = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-40-[brassSlider]" options:0 metrics:nil views:@{@"brassSlider": brassSlider}]; + [self.view addConstraints:sliderConstraints]; +} + +@end diff --git a/projects/demo/iOS Demo/iOS Demo/en.lproj/InfoPlist.strings b/projects/demo/iOS Demo/iOS Demo/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/projects/demo/iOS Demo/iOS Demo/iOS Demo-Info.plist b/projects/demo/iOS Demo/iOS Demo/iOS Demo-Info.plist new file mode 100644 index 0000000..edbd7be --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/iOS Demo-Info.plist @@ -0,0 +1,38 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleDisplayName + ${PRODUCT_NAME} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + stk.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + LSRequiresIPhoneOS + + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/projects/demo/iOS Demo/iOS Demo/iOS Demo-Prefix.pch b/projects/demo/iOS Demo/iOS Demo/iOS Demo-Prefix.pch new file mode 100644 index 0000000..743435c --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/iOS Demo-Prefix.pch @@ -0,0 +1,16 @@ +// +// Prefix header +// +// The contents of this file are implicitly included at the beginning of every source file. +// + +#import + +#ifndef __IPHONE_3_0 +#warning "This project uses features only available in iOS SDK 3.0 and later." +#endif + +#ifdef __OBJC__ + #import + #import +#endif diff --git a/projects/demo/iOS Demo/iOS Demo/main.m b/projects/demo/iOS Demo/iOS Demo/main.m new file mode 100644 index 0000000..3138914 --- /dev/null +++ b/projects/demo/iOS Demo/iOS Demo/main.m @@ -0,0 +1,18 @@ +// +// main.m +// iOS Demo +// +// Created by Ariel Elkin on 03/03/2014. +// Copyright (c) 2014 Ariel Elkin. All rights reserved. +// + +#import + +#import "AppDelegate.h" + +int main(int argc, char * argv[]) +{ + @autoreleasepool { + return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); + } +} diff --git a/projects/demo/iOS Demo/iOS DemoTests/en.lproj/InfoPlist.strings b/projects/demo/iOS Demo/iOS DemoTests/en.lproj/InfoPlist.strings new file mode 100644 index 0000000..477b28f --- /dev/null +++ b/projects/demo/iOS Demo/iOS DemoTests/en.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +/* Localized versions of Info.plist keys */ + diff --git a/projects/demo/iOS Demo/iOS DemoTests/iOS DemoTests-Info.plist b/projects/demo/iOS Demo/iOS DemoTests/iOS DemoTests-Info.plist new file mode 100644 index 0000000..b5c7055 --- /dev/null +++ b/projects/demo/iOS Demo/iOS DemoTests/iOS DemoTests-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + stk.${PRODUCT_NAME:rfc1034identifier} + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/projects/demo/iOS Demo/iOS DemoTests/iOS_DemoTests.m b/projects/demo/iOS Demo/iOS DemoTests/iOS_DemoTests.m new file mode 100644 index 0000000..a280c30 --- /dev/null +++ b/projects/demo/iOS Demo/iOS DemoTests/iOS_DemoTests.m @@ -0,0 +1,34 @@ +// +// iOS_DemoTests.m +// iOS DemoTests +// +// Created by Ariel Elkin on 03/03/2014. +// Copyright (c) 2014 Ariel Elkin. All rights reserved. +// + +#import + +@interface iOS_DemoTests : XCTestCase + +@end + +@implementation iOS_DemoTests + +- (void)setUp +{ + [super setUp]; + // Put setup code here. This method is called before the invocation of each test method in the class. +} + +- (void)tearDown +{ + // Put teardown code here. This method is called after the invocation of each test method in the class. + [super tearDown]; +} + +- (void)testExample +{ + XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__); +} + +@end