Changeset 6fdeffc in orbit
- Timestamp:
- 12/22/12 16:24:10 (9 years ago)
- Branches:
- master, RawEEG, Raw_EEG_Plot, Servo, Tab_Interface, pyramid
- Children:
- b3458d9
- Parents:
- 4010dcc (diff), 948f49a (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - Files:
-
- 22 added
- 42 deleted
- 8 edited
- 8 moved
Legend:
- Unmodified
- Added
- Removed
-
DorabotOrbitActivity/.classpath
r85e0208 r948f49a 3 3 <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/> 4 4 <classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/> 5 <classpathentry exported="true" kind="lib" path="libs/ThinkGear.jar"/>6 <classpathentry kind="lib" path="libs/usb-serial-for-android-v010.jar"/>7 5 <classpathentry kind="src" path="src"/> 8 6 <classpathentry kind="src" path="gen"/> -
DorabotOrbitActivity/.gitignore
r85e0208 r948f49a 1 1 *.apk 2 2 *.dex 3 3 .* -
DorabotOrbitActivity/.project
r3909100 r948f49a 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <projectDescription> 3 <name> PuzzleboxOrbit</name>3 <name>DorabotOrbit</name> 4 4 <comment></comment> 5 5 <projects> -
DorabotOrbitActivity/project.properties
r85e0208 r948f49a 12 12 13 13 # Project target. 14 target=android- 1714 target=android-8 -
DorabotOrbitActivity/src/com/dorabot/orbit/OrbitAudioService.java
rd604d68 r948f49a 1 package info.puzzlebox.orbit; 2 1 package com.dorabot.orbit; 2 3 import android.app.Service; 4 import android.content.Intent; 3 5 import android.media.AudioFormat; 4 6 import android.media.AudioManager; 5 7 import android.media.AudioTrack; 6 7 public class OrbitAudioCode { 8 8 import android.os.AsyncTask; 9 import android.os.Binder; 10 import android.os.IBinder; 11 import android.widget.Toast; 12 13 import android.util.Log; 14 import java.net.MalformedURLException; 15 import java.net.URL; 16 17 public class OrbitAudioService extends Service{ 18 19 /** 20 * default field values. 21 */ 9 22 AudioTrack track; 10 23 short[] audioData = new short[6144]; 11 24 public int sampleRate = 44100; 12 25 private boolean ifFlip = false; 13 14 /** 15 * Constructor. 26 int throttle; 27 int pitch; 28 int yaw; 29 int channel; 30 Integer[] command={80,78,31,1}; 31 32 /** 33 * Object constructor. 16 34 * @param sps sampleRate of the specific Android device. (only 44100 is tested so far) 17 35 * @param ifFlip 18 36 */ 19 public OrbitAudioCode(int sps, boolean flip) 37 38 public OrbitAudioService() 39 { 40 } 41 42 public OrbitAudioService(int sps, boolean flip) 20 43 { 21 44 ifFlip = flip; … … 27 50 28 51 52 /* private final IBinder binder = new OrbitBinder(); 53 54 public class OrbitBinder extends Binder { 55 OrbitAudioService getService() { 56 return OrbitAudioService.this; 57 } 58 }*/ 59 60 @Override 61 public IBinder onBind(Intent arg0) { 62 return null; 63 //return binder; 64 } 65 66 @Override 67 public int onStartCommand(Intent intent, int flags, int startId) { 68 Toast.makeText(this, "Start sending fly commands through audio jack", Toast.LENGTH_LONG).show(); 69 try{ 70 new DoBackgroundTask().execute(command); 71 } catch (Exception e) { 72 e.printStackTrace(); 73 } 74 return START_STICKY; 75 } 76 77 @Override 78 public void onDestroy() { 79 releasetrack(); 80 super.onDestroy(); 81 Toast.makeText(this, "Stop sending fly commands in audio jack", Toast.LENGTH_LONG).show(); 82 } 83 84 85 private class DoBackgroundTask extends AsyncTask < Integer , Void , Integer > { 86 protected Integer doInBackground(Integer... command) { 87 int code=0; 88 float[] wave; 89 int throttle=command[0].intValue(); 90 int yaw=command[1].intValue(); 91 int pitch=command[2].intValue(); 92 int channel=command[3].intValue(); 93 try{ 94 for (int j = 0; j<4; j++) 95 code=command2code(throttle,yaw,pitch,channel); 96 wave=code2wave(code); 97 send(wave); 98 } catch (Exception e){ 99 e.printStackTrace(); 100 } 101 102 try{ 103 send(initialWave()); 104 } catch (Exception e){ 105 e.printStackTrace(); 106 } 107 108 try{ 109 for (int j = 0; j<100; j++) 110 send(code2wave(command2code(command[0].intValue(), 111 command[1].intValue(), 112 command[2].intValue(), 113 command[3].intValue()))); 114 } catch (Exception e){ 115 e.printStackTrace(); 116 } 117 118 return 0; 119 } 120 121 protected void onPostexecute(Integer result) { 122 stopSelf(); 123 } 124 } 125 126 29 127 private final double sampleTime = 1/(double)sampleRate; 30 128 31 private final double longHIGH = 0.000875-sampleTime*2;//half period HIGH of code '1', in s 32 private final double longLOW = 0.000729+sampleTime*3; 33 private final double shortHIGH = 0.000458-sampleTime*2; 34 private final double shortLOW = 0.000333+sampleTime*2; 35 129 /** 130 * Half periods in the audio code, in seconds. 131 */ 132 private final double longHIGH = 0.000829649; 133 private final double longLOW = 0.000797027; 134 private final double shortHIGH = 0.000412649; 135 private final double shortLOW = 0.000378351; 136 137 /** 138 * Pre-calculated and stored half sine waves. 139 */ 36 140 private final float[] waveLongHIGH=halfSineGen('u',longHIGH); 37 141 private final float[] waveLongLOW=halfSineGen('d',longLOW); 38 142 private final float[] waveShortHIGH=halfSineGen('u',shortHIGH); 39 143 private final float[] waveShortLOW=halfSineGen('d',shortLOW); 144 145 /** 146 * Pre-assembled audio code bit array in wave form. 147 */ 40 148 private final float[] waveBit[]= {concatFloat(waveShortHIGH,waveShortLOW),concatFloat(waveLongHIGH,waveLongLOW)}; 41 149 … … 44 152 { 45 153 assembleRightChannel(samples); 154 int sampleLength=2*samples.length; 155 int audioDataLength=audioData.length; 46 156 track.write(audioData,0,2*samples.length); 47 157 } … … 62 172 } 63 173 174 /** 175 * release low level resources when not use them anymore. 176 */ 64 177 public void releasetrack(){ 65 178 track.release(); 66 179 } 67 68 69 70 180 71 181 … … 75 185 * @param yaw: 0~127, normally 78 will keep orbit from rotating. 76 186 * @param pitch: 0~63, normally 31 will stop the top propeller. 77 * @param channel: 'A' or 'B' or 'C', depend on which channel you want to pair to the orbit. You can fly at most 3 orbit in a same room.187 * @param channel: 1=Channel A, 0=Channel B 2= Channel C, depend on which channel you want to pair to the orbit. You can fly at most 3 orbit in a same room. 78 188 * @return 79 189 */ 80 190 81 public int command2code(int throttle, int yaw, int pitch, charchannel){191 public int command2code(int throttle, int yaw, int pitch, int channel){ 82 192 int code = throttle << 21; 83 193 code += 1 << 20 ; … … 85 195 code += pitch << 4 ; 86 196 // weird, if use int code= throttle << 21 + 1<<20 + yaw <<12 +pitch<<4; it won't work. 87 switch (channel){ 88 case 'A': code += 1 << 11; 89 break; 90 // case 'B': break; 91 case 'C': code += 1 << 19; 92 break; 93 default: break; 94 } 197 code += ((channel >>> 1) & 1) << 19; 198 code += (channel & 1) << 11; 199 95 200 int checkSum=0; 96 201 for (int i=0; i<7; i++) -
iOS/Orbit/Orbit.xcodeproj/project.pbxproj
rdccf843 r4010dcc 8 8 9 9 /* Begin PBXBuildFile section */ 10 52019F49166B53A7006BD1FA /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F48166B53A7006BD1FA /* UIKit.framework */; }; 11 52019F4B166B53A7006BD1FA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F4A166B53A7006BD1FA /* Foundation.framework */; }; 12 52019F4D166B53A7006BD1FA /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F4C166B53A7006BD1FA /* CoreGraphics.framework */; }; 13 52019F53166B53A7006BD1FA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 52019F51166B53A7006BD1FA /* InfoPlist.strings */; }; 14 52019F55166B53A7006BD1FA /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 52019F54166B53A7006BD1FA /* main.m */; }; 15 52019F59166B53A7006BD1FA /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 52019F58166B53A7006BD1FA /* AppDelegate.m */; }; 16 52019F5B166B53A7006BD1FA /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F5A166B53A7006BD1FA /* Default.png */; }; 17 52019F5D166B53A7006BD1FA /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F5C166B53A7006BD1FA /* Default@2x.png */; }; 18 52019F5F166B53A7006BD1FA /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F5E166B53A7006BD1FA /* Default-568h@2x.png */; }; 19 52019F62166B53A7006BD1FA /* MainStoryboard_iPhone.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 52019F60166B53A7006BD1FA /* MainStoryboard_iPhone.storyboard */; }; 20 52019F65166B53A7006BD1FA /* MainStoryboard_iPad.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 52019F63166B53A7006BD1FA /* MainStoryboard_iPad.storyboard */; }; 21 52019F68166B53A7006BD1FA /* FirstViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 52019F67166B53A7006BD1FA /* FirstViewController.m */; }; 22 52019F6A166B53A7006BD1FA /* first.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F69166B53A7006BD1FA /* first.png */; }; 23 52019F6C166B53A7006BD1FA /* first@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F6B166B53A7006BD1FA /* first@2x.png */; }; 24 52019F6F166B53A7006BD1FA /* SecondViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 52019F6E166B53A7006BD1FA /* SecondViewController.m */; }; 25 52019F71166B53A7006BD1FA /* second.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F70166B53A7006BD1FA /* second.png */; }; 26 52019F73166B53A7006BD1FA /* second@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F72166B53A7006BD1FA /* second@2x.png */; }; 27 52019F7B166B53A7006BD1FA /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F7A166B53A7006BD1FA /* SenTestingKit.framework */; }; 28 52019F7C166B53A7006BD1FA /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F48166B53A7006BD1FA /* UIKit.framework */; }; 29 52019F7D166B53A7006BD1FA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52019F4A166B53A7006BD1FA /* Foundation.framework */; }; 30 52019F85166B53A7006BD1FA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 52019F83166B53A7006BD1FA /* InfoPlist.strings */; }; 31 52019F88166B53A7006BD1FA /* OrbitTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 52019F87166B53A7006BD1FA /* OrbitTests.m */; }; 32 52019F92166B56B4006BD1FA /* ic_launcher-57x57.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F91166B56B4006BD1FA /* ic_launcher-57x57.png */; }; 33 52019F94166B56BB006BD1FA /* ic_launcher-114x114.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F93166B56BB006BD1FA /* ic_launcher-114x114.png */; }; 34 52019F96166B5737006BD1FA /* ic_launcher-72x72.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F95166B5737006BD1FA /* ic_launcher-72x72.png */; }; 35 52019F98166B5740006BD1FA /* ic_launcher-144x144.png in Resources */ = {isa = PBXBuildFile; fileRef = 52019F97166B5740006BD1FA /* ic_launcher-144x144.png */; }; 10 2815BC0E167F42F500F7E6DA /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2815BC0C167F42F500F7E6DA /* Accelerate.framework */; }; 11 2815BC0F167F42F500F7E6DA /* ExternalAccessory.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2815BC0D167F42F500F7E6DA /* ExternalAccessory.framework */; }; 12 2815BC13167F48BB00F7E6DA /* libTGAccessory.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 2815BC10167F48A000F7E6DA /* libTGAccessory.a */; }; 13 2815BC15167F496C00F7E6DA /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2815BC14167F496C00F7E6DA /* QuartzCore.framework */; }; 14 28174C61167F2EA900104752 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28174C60167F2EA900104752 /* UIKit.framework */; }; 15 28174C63167F2EA900104752 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28174C62167F2EA900104752 /* Foundation.framework */; }; 16 28174C65167F2EA900104752 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28174C64167F2EA900104752 /* CoreGraphics.framework */; }; 17 28174C6B167F2EA900104752 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 28174C69167F2EA900104752 /* InfoPlist.strings */; }; 18 28174C6D167F2EA900104752 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 28174C6C167F2EA900104752 /* main.m */; }; 19 28174C71167F2EA900104752 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 28174C70167F2EA900104752 /* AppDelegate.m */; }; 20 28174C73167F2EA900104752 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 28174C72167F2EA900104752 /* Default.png */; }; 21 28174C75167F2EA900104752 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 28174C74167F2EA900104752 /* Default@2x.png */; }; 22 28174C77167F2EA900104752 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 28174C76167F2EA900104752 /* Default-568h@2x.png */; }; 23 28174C7A167F2EAA00104752 /* MainStoryboard.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 28174C78167F2EAA00104752 /* MainStoryboard.storyboard */; }; 24 28174C7D167F2EAA00104752 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 28174C7C167F2EAA00104752 /* ViewController.m */; }; 25 28174C84167F30C400104752 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28174C83167F30C400104752 /* AVFoundation.framework */; }; 26 282F2B331681D0FC00B9A99A /* ic_launcher-57x57.png in Resources */ = {isa = PBXBuildFile; fileRef = 282F2B321681D0FC00B9A99A /* ic_launcher-57x57.png */; }; 27 282F2B361681D10200B9A99A /* ic_launcher-114x114.png in Resources */ = {isa = PBXBuildFile; fileRef = 282F2B351681D10200B9A99A /* ic_launcher-114x114.png */; }; 28 285D3D381685D9B1005A534D /* throttle_max_ios_common.wav in Resources */ = {isa = PBXBuildFile; fileRef = 285D3D371685D9B1005A534D /* throttle_max_ios_common.wav */; }; 36 29 /* End PBXBuildFile section */ 37 30 38 /* Begin PBXContainerItemProxy section */39 52019F7E166B53A7006BD1FA /* PBXContainerItemProxy */ = {40 isa = PBXContainerItemProxy;41 containerPortal = 52019F3B166B53A7006BD1FA /* Project object */;42 proxyType = 1;43 remoteGlobalIDString = 52019F43166B53A7006BD1FA;44 remoteInfo = Orbit;45 };46 /* End PBXContainerItemProxy section */47 48 31 /* Begin PBXFileReference section */ 49 52019F44166B53A7006BD1FA /* Orbit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Orbit.app; sourceTree = BUILT_PRODUCTS_DIR; }; 50 52019F48166B53A7006BD1FA /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 51 52019F4A166B53A7006BD1FA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 52 52019F4C166B53A7006BD1FA /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 53 52019F50166B53A7006BD1FA /* Orbit-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Orbit-Info.plist"; sourceTree = "<group>"; }; 54 52019F52166B53A7006BD1FA /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; 55 52019F54166B53A7006BD1FA /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; 56 52019F56166B53A7006BD1FA /* Orbit-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Orbit-Prefix.pch"; sourceTree = "<group>"; }; 57 52019F57166B53A7006BD1FA /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; }; 58 52019F58166B53A7006BD1FA /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; 59 52019F5A166B53A7006BD1FA /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; }; 60 52019F5C166B53A7006BD1FA /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = "<group>"; }; 61 52019F5E166B53A7006BD1FA /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; }; 62 52019F61166B53A7006BD1FA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = en; path = en.lproj/MainStoryboard_iPhone.storyboard; sourceTree = "<group>"; }; 63 52019F64166B53A7006BD1FA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = en; path = en.lproj/MainStoryboard_iPad.storyboard; sourceTree = "<group>"; }; 64 52019F66166B53A7006BD1FA /* FirstViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = FirstViewController.h; sourceTree = "<group>"; }; 65 52019F67166B53A7006BD1FA /* FirstViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = FirstViewController.m; sourceTree = "<group>"; }; 66 52019F69166B53A7006BD1FA /* first.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = first.png; sourceTree = "<group>"; }; 67 52019F6B166B53A7006BD1FA /* first@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "first@2x.png"; sourceTree = "<group>"; }; 68 52019F6D166B53A7006BD1FA /* SecondViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SecondViewController.h; sourceTree = "<group>"; }; 69 52019F6E166B53A7006BD1FA /* SecondViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SecondViewController.m; sourceTree = "<group>"; }; 70 52019F70166B53A7006BD1FA /* second.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = second.png; sourceTree = "<group>"; }; 71 52019F72166B53A7006BD1FA /* second@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "second@2x.png"; sourceTree = "<group>"; }; 72 52019F79166B53A7006BD1FA /* OrbitTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = OrbitTests.octest; sourceTree = BUILT_PRODUCTS_DIR; }; 73 52019F7A166B53A7006BD1FA /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; }; 74 52019F82166B53A7006BD1FA /* OrbitTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "OrbitTests-Info.plist"; sourceTree = "<group>"; }; 75 52019F84166B53A7006BD1FA /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; 76 52019F86166B53A7006BD1FA /* OrbitTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = OrbitTests.h; sourceTree = "<group>"; }; 77 52019F87166B53A7006BD1FA /* OrbitTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = OrbitTests.m; sourceTree = "<group>"; }; 78 52019F91166B56B4006BD1FA /* ic_launcher-57x57.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-57x57.png"; sourceTree = "<group>"; }; 79 52019F93166B56BB006BD1FA /* ic_launcher-114x114.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-114x114.png"; sourceTree = "<group>"; }; 80 52019F95166B5737006BD1FA /* ic_launcher-72x72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-72x72.png"; sourceTree = "<group>"; }; 81 52019F97166B5740006BD1FA /* ic_launcher-144x144.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-144x144.png"; sourceTree = "<group>"; }; 32 2815BC0C167F42F500F7E6DA /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; }; 33 2815BC0D167F42F500F7E6DA /* ExternalAccessory.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ExternalAccessory.framework; path = System/Library/Frameworks/ExternalAccessory.framework; sourceTree = SDKROOT; }; 34 2815BC10167F48A000F7E6DA /* libTGAccessory.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libTGAccessory.a; sourceTree = "<group>"; }; 35 2815BC11167F48A000F7E6DA /* TGAccessoryDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TGAccessoryDelegate.h; sourceTree = "<group>"; }; 36 2815BC12167F48A000F7E6DA /* TGAccessoryManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TGAccessoryManager.h; sourceTree = "<group>"; }; 37 2815BC14167F496C00F7E6DA /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; 38 28174C5C167F2EA900104752 /* Orbit.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Orbit.app; sourceTree = BUILT_PRODUCTS_DIR; }; 39 28174C60167F2EA900104752 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 40 28174C62167F2EA900104752 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 41 28174C64167F2EA900104752 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 42 28174C68167F2EA900104752 /* Orbit-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Orbit-Info.plist"; sourceTree = "<group>"; }; 43 28174C6A167F2EA900104752 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; 44 28174C6C167F2EA900104752 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; 45 28174C6E167F2EA900104752 /* Orbit-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Orbit-Prefix.pch"; sourceTree = "<group>"; }; 46 28174C6F167F2EA900104752 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; }; 47 28174C70167F2EA900104752 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; 48 28174C72167F2EA900104752 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; }; 49 28174C74167F2EA900104752 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = "<group>"; }; 50 28174C76167F2EA900104752 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; }; 51 28174C79167F2EAA00104752 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = en; path = en.lproj/MainStoryboard.storyboard; sourceTree = "<group>"; }; 52 28174C7B167F2EAA00104752 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; }; 53 28174C7C167F2EAA00104752 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; }; 54 28174C83167F30C400104752 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; }; 55 282F2B321681D0FC00B9A99A /* ic_launcher-57x57.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-57x57.png"; sourceTree = "<group>"; }; 56 282F2B351681D10200B9A99A /* ic_launcher-114x114.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "ic_launcher-114x114.png"; sourceTree = "<group>"; }; 57 285D3D371685D9B1005A534D /* throttle_max_ios_common.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = throttle_max_ios_common.wav; sourceTree = "<group>"; }; 82 58 /* End PBXFileReference section */ 83 59 84 60 /* Begin PBXFrameworksBuildPhase section */ 85 52019F41166B53A7006BD1FA/* Frameworks */ = {61 28174C59167F2EA900104752 /* Frameworks */ = { 86 62 isa = PBXFrameworksBuildPhase; 87 63 buildActionMask = 2147483647; 88 64 files = ( 89 52019F49166B53A7006BD1FA /* UIKit.framework in Frameworks */, 90 52019F4B166B53A7006BD1FA /* Foundation.framework in Frameworks */, 91 52019F4D166B53A7006BD1FA /* CoreGraphics.framework in Frameworks */, 65 2815BC15167F496C00F7E6DA /* QuartzCore.framework in Frameworks */, 66 2815BC13167F48BB00F7E6DA /* libTGAccessory.a in Frameworks */, 67 2815BC0E167F42F500F7E6DA /* Accelerate.framework in Frameworks */, 68 2815BC0F167F42F500F7E6DA /* ExternalAccessory.framework in Frameworks */, 69 28174C84167F30C400104752 /* AVFoundation.framework in Frameworks */, 70 28174C61167F2EA900104752 /* UIKit.framework in Frameworks */, 71 28174C63167F2EA900104752 /* Foundation.framework in Frameworks */, 72 28174C65167F2EA900104752 /* CoreGraphics.framework in Frameworks */, 92 73 ); 93 74 runOnlyForDeploymentPostprocessing = 0; 94 75 }; 95 52019F75166B53A7006BD1FA /* Frameworks */ = {96 isa = PBXFrameworksBuildPhase;97 buildActionMask = 2147483647;98 files = (99 52019F7B166B53A7006BD1FA /* SenTestingKit.framework in Frameworks */,100 52019F7C166B53A7006BD1FA /* UIKit.framework in Frameworks */,101 52019F7D166B53A7006BD1FA /* Foundation.framework in Frameworks */,102 );103 runOnlyForDeploymentPostprocessing = 0;104 };105 76 /* End PBXFrameworksBuildPhase section */ 106 77 107 78 /* Begin PBXGroup section */ 108 52019F39166B53A7006BD1FA = { 109 isa = PBXGroup; 110 children = ( 111 52019F97166B5740006BD1FA /* ic_launcher-144x144.png */, 112 52019F95166B5737006BD1FA /* ic_launcher-72x72.png */, 113 52019F93166B56BB006BD1FA /* ic_launcher-114x114.png */, 114 52019F91166B56B4006BD1FA /* ic_launcher-57x57.png */, 115 52019F4E166B53A7006BD1FA /* Orbit */, 116 52019F80166B53A7006BD1FA /* OrbitTests */, 117 52019F47166B53A7006BD1FA /* Frameworks */, 118 52019F45166B53A7006BD1FA /* Products */, 119 ); 120 indentWidth = 3; 121 sourceTree = "<group>"; 122 tabWidth = 3; 123 }; 124 52019F45166B53A7006BD1FA /* Products */ = { 125 isa = PBXGroup; 126 children = ( 127 52019F44166B53A7006BD1FA /* Orbit.app */, 128 52019F79166B53A7006BD1FA /* OrbitTests.octest */, 79 2815BC08167F428B00F7E6DA /* Libraries */ = { 80 isa = PBXGroup; 81 children = ( 82 2815BC10167F48A000F7E6DA /* libTGAccessory.a */, 83 2815BC11167F48A000F7E6DA /* TGAccessoryDelegate.h */, 84 2815BC12167F48A000F7E6DA /* TGAccessoryManager.h */, 85 ); 86 name = Libraries; 87 sourceTree = "<group>"; 88 }; 89 28174C51167F2EA900104752 = { 90 isa = PBXGroup; 91 children = ( 92 282F2B351681D10200B9A99A /* ic_launcher-114x114.png */, 93 282F2B321681D0FC00B9A99A /* ic_launcher-57x57.png */, 94 2815BC14167F496C00F7E6DA /* QuartzCore.framework */, 95 28174C66167F2EA900104752 /* Orbit */, 96 28174C5F167F2EA900104752 /* Frameworks */, 97 28174C5D167F2EA900104752 /* Products */, 98 ); 99 sourceTree = "<group>"; 100 }; 101 28174C5D167F2EA900104752 /* Products */ = { 102 isa = PBXGroup; 103 children = ( 104 28174C5C167F2EA900104752 /* Orbit.app */, 129 105 ); 130 106 name = Products; 131 107 sourceTree = "<group>"; 132 108 }; 133 52019F47166B53A7006BD1FA /* Frameworks */ = { 134 isa = PBXGroup; 135 children = ( 136 52019F48166B53A7006BD1FA /* UIKit.framework */, 137 52019F4A166B53A7006BD1FA /* Foundation.framework */, 138 52019F4C166B53A7006BD1FA /* CoreGraphics.framework */, 139 52019F7A166B53A7006BD1FA /* SenTestingKit.framework */, 109 28174C5F167F2EA900104752 /* Frameworks */ = { 110 isa = PBXGroup; 111 children = ( 112 2815BC0C167F42F500F7E6DA /* Accelerate.framework */, 113 2815BC0D167F42F500F7E6DA /* ExternalAccessory.framework */, 114 28174C83167F30C400104752 /* AVFoundation.framework */, 115 28174C60167F2EA900104752 /* UIKit.framework */, 116 28174C62167F2EA900104752 /* Foundation.framework */, 117 28174C64167F2EA900104752 /* CoreGraphics.framework */, 140 118 ); 141 119 name = Frameworks; 142 120 sourceTree = "<group>"; 143 121 }; 144 52019F4E166B53A7006BD1FA /* Orbit */ = { 145 isa = PBXGroup; 146 children = ( 147 52019F57166B53A7006BD1FA /* AppDelegate.h */, 148 52019F58166B53A7006BD1FA /* AppDelegate.m */, 149 52019F60166B53A7006BD1FA /* MainStoryboard_iPhone.storyboard */, 150 52019F63166B53A7006BD1FA /* MainStoryboard_iPad.storyboard */, 151 52019F66166B53A7006BD1FA /* FirstViewController.h */, 152 52019F67166B53A7006BD1FA /* FirstViewController.m */, 153 52019F69166B53A7006BD1FA /* first.png */, 154 52019F6B166B53A7006BD1FA /* first@2x.png */, 155 52019F6D166B53A7006BD1FA /* SecondViewController.h */, 156 52019F6E166B53A7006BD1FA /* SecondViewController.m */, 157 52019F70166B53A7006BD1FA /* second.png */, 158 52019F72166B53A7006BD1FA /* second@2x.png */, 159 52019F4F166B53A7006BD1FA /* Supporting Files */, 122 28174C66167F2EA900104752 /* Orbit */ = { 123 isa = PBXGroup; 124 children = ( 125 28174C6F167F2EA900104752 /* AppDelegate.h */, 126 28174C70167F2EA900104752 /* AppDelegate.m */, 127 28174C78167F2EAA00104752 /* MainStoryboard.storyboard */, 128 28174C7B167F2EAA00104752 /* ViewController.h */, 129 28174C7C167F2EAA00104752 /* ViewController.m */, 130 2815BC08167F428B00F7E6DA /* Libraries */, 131 28174C67167F2EA900104752 /* Supporting Files */, 160 132 ); 161 133 path = Orbit; 162 134 sourceTree = "<group>"; 163 135 }; 164 52019F4F166B53A7006BD1FA /* Supporting Files */ = { 165 isa = PBXGroup; 166 children = ( 167 52019F50166B53A7006BD1FA /* Orbit-Info.plist */, 168 52019F51166B53A7006BD1FA /* InfoPlist.strings */, 169 52019F54166B53A7006BD1FA /* main.m */, 170 52019F56166B53A7006BD1FA /* Orbit-Prefix.pch */, 171 52019F5A166B53A7006BD1FA /* Default.png */, 172 52019F5C166B53A7006BD1FA /* Default@2x.png */, 173 52019F5E166B53A7006BD1FA /* Default-568h@2x.png */, 136 28174C67167F2EA900104752 /* Supporting Files */ = { 137 isa = PBXGroup; 138 children = ( 139 28174C68167F2EA900104752 /* Orbit-Info.plist */, 140 28174C69167F2EA900104752 /* InfoPlist.strings */, 141 28174C6C167F2EA900104752 /* main.m */, 142 28174C6E167F2EA900104752 /* Orbit-Prefix.pch */, 143 28174C72167F2EA900104752 /* Default.png */, 144 28174C74167F2EA900104752 /* Default@2x.png */, 145 28174C76167F2EA900104752 /* Default-568h@2x.png */, 146 285D3D371685D9B1005A534D /* throttle_max_ios_common.wav */, 174 147 ); 175 148 name = "Supporting Files"; 176 149 sourceTree = "<group>"; 177 150 }; 178 52019F80166B53A7006BD1FA /* OrbitTests */ = {179 isa = PBXGroup;180 children = (181 52019F86166B53A7006BD1FA /* OrbitTests.h */,182 52019F87166B53A7006BD1FA /* OrbitTests.m */,183 52019F81166B53A7006BD1FA /* Supporting Files */,184 );185 path = OrbitTests;186 sourceTree = "<group>";187 };188 52019F81166B53A7006BD1FA /* Supporting Files */ = {189 isa = PBXGroup;190 children = (191 52019F82166B53A7006BD1FA /* OrbitTests-Info.plist */,192 52019F83166B53A7006BD1FA /* InfoPlist.strings */,193 );194 name = "Supporting Files";195 sourceTree = "<group>";196 };197 151 /* End PBXGroup section */ 198 152 199 153 /* Begin PBXNativeTarget section */ 200 52019F43166B53A7006BD1FA/* Orbit */ = {154 28174C5B167F2EA900104752 /* Orbit */ = { 201 155 isa = PBXNativeTarget; 202 buildConfigurationList = 52019F8B166B53A7006BD1FA/* Build configuration list for PBXNativeTarget "Orbit" */;156 buildConfigurationList = 28174C80167F2EAA00104752 /* Build configuration list for PBXNativeTarget "Orbit" */; 203 157 buildPhases = ( 204 52019F40166B53A7006BD1FA/* Sources */,205 52019F41166B53A7006BD1FA/* Frameworks */,206 52019F42166B53A7006BD1FA/* Resources */,158 28174C58167F2EA900104752 /* Sources */, 159 28174C59167F2EA900104752 /* Frameworks */, 160 28174C5A167F2EA900104752 /* Resources */, 207 161 ); 208 162 buildRules = ( … … 212 166 name = Orbit; 213 167 productName = Orbit; 214 productReference = 52019F44166B53A7006BD1FA/* Orbit.app */;168 productReference = 28174C5C167F2EA900104752 /* Orbit.app */; 215 169 productType = "com.apple.product-type.application"; 216 170 }; 217 52019F78166B53A7006BD1FA /* OrbitTests */ = {218 isa = PBXNativeTarget;219 buildConfigurationList = 52019F8E166B53A7006BD1FA /* Build configuration list for PBXNativeTarget "OrbitTests" */;220 buildPhases = (221 52019F74166B53A7006BD1FA /* Sources */,222 52019F75166B53A7006BD1FA /* Frameworks */,223 52019F76166B53A7006BD1FA /* Resources */,224 52019F77166B53A7006BD1FA /* ShellScript */,225 );226 buildRules = (227 );228 dependencies = (229 52019F7F166B53A7006BD1FA /* PBXTargetDependency */,230 );231 name = OrbitTests;232 productName = OrbitTests;233 productReference = 52019F79166B53A7006BD1FA /* OrbitTests.octest */;234 productType = "com.apple.product-type.bundle";235 };236 171 /* End PBXNativeTarget section */ 237 172 238 173 /* Begin PBXProject section */ 239 52019F3B166B53A7006BD1FA/* Project object */ = {174 28174C53167F2EA900104752 /* Project object */ = { 240 175 isa = PBXProject; 241 176 attributes = { 242 177 LastUpgradeCheck = 0450; 243 ORGANIZATIONNAME = Puzzlebox;244 }; 245 buildConfigurationList = 52019F3E166B53A7006BD1FA/* Build configuration list for PBXProject "Orbit" */;178 ORGANIZATIONNAME = "Jonathon Horsman"; 179 }; 180 buildConfigurationList = 28174C56167F2EA900104752 /* Build configuration list for PBXProject "Orbit" */; 246 181 compatibilityVersion = "Xcode 3.2"; 247 182 developmentRegion = English; … … 250 185 en, 251 186 ); 252 mainGroup = 52019F39166B53A7006BD1FA;253 productRefGroup = 52019F45166B53A7006BD1FA/* Products */;187 mainGroup = 28174C51167F2EA900104752; 188 productRefGroup = 28174C5D167F2EA900104752 /* Products */; 254 189 projectDirPath = ""; 255 190 projectRoot = ""; 256 191 targets = ( 257 52019F43166B53A7006BD1FA /* Orbit */, 258 52019F78166B53A7006BD1FA /* OrbitTests */, 192 28174C5B167F2EA900104752 /* Orbit */, 259 193 ); 260 194 }; … … 262 196 263 197 /* Begin PBXResourcesBuildPhase section */ 264 52019F42166B53A7006BD1FA/* Resources */ = {198 28174C5A167F2EA900104752 /* Resources */ = { 265 199 isa = PBXResourcesBuildPhase; 266 200 buildActionMask = 2147483647; 267 201 files = ( 268 52019F53166B53A7006BD1FA /* InfoPlist.strings in Resources */, 269 52019F5B166B53A7006BD1FA /* Default.png in Resources */, 270 52019F5D166B53A7006BD1FA /* Default@2x.png in Resources */, 271 52019F5F166B53A7006BD1FA /* Default-568h@2x.png in Resources */, 272 52019F62166B53A7006BD1FA /* MainStoryboard_iPhone.storyboard in Resources */, 273 52019F65166B53A7006BD1FA /* MainStoryboard_iPad.storyboard in Resources */, 274 52019F6A166B53A7006BD1FA /* first.png in Resources */, 275 52019F6C166B53A7006BD1FA /* first@2x.png in Resources */, 276 52019F71166B53A7006BD1FA /* second.png in Resources */, 277 52019F73166B53A7006BD1FA /* second@2x.png in Resources */, 278 52019F92166B56B4006BD1FA /* ic_launcher-57x57.png in Resources */, 279 52019F94166B56BB006BD1FA /* ic_launcher-114x114.png in Resources */, 280 52019F96166B5737006BD1FA /* ic_launcher-72x72.png in Resources */, 281 52019F98166B5740006BD1FA /* ic_launcher-144x144.png in Resources */, 202 28174C6B167F2EA900104752 /* InfoPlist.strings in Resources */, 203 28174C73167F2EA900104752 /* Default.png in Resources */, 204 28174C75167F2EA900104752 /* Default@2x.png in Resources */, 205 28174C77167F2EA900104752 /* Default-568h@2x.png in Resources */, 206 28174C7A167F2EAA00104752 /* MainStoryboard.storyboard in Resources */, 207 282F2B331681D0FC00B9A99A /* ic_launcher-57x57.png in Resources */, 208 282F2B361681D10200B9A99A /* ic_launcher-114x114.png in Resources */, 209 285D3D381685D9B1005A534D /* throttle_max_ios_common.wav in Resources */, 282 210 ); 283 211 runOnlyForDeploymentPostprocessing = 0; 284 212 }; 285 52019F76166B53A7006BD1FA /* Resources */ = {286 isa = PBXResourcesBuildPhase;287 buildActionMask = 2147483647;288 files = (289 52019F85166B53A7006BD1FA /* InfoPlist.strings in Resources */,290 );291 runOnlyForDeploymentPostprocessing = 0;292 };293 213 /* End PBXResourcesBuildPhase section */ 294 214 295 /* Begin PBXShellScriptBuildPhase section */296 52019F77166B53A7006BD1FA /* ShellScript */ = {297 isa = PBXShellScriptBuildPhase;298 buildActionMask = 2147483647;299 files = (300 );301 inputPaths = (302 );303 outputPaths = (304 );305 runOnlyForDeploymentPostprocessing = 0;306 shellPath = /bin/sh;307 shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";308 };309 /* End PBXShellScriptBuildPhase section */310 311 215 /* Begin PBXSourcesBuildPhase section */ 312 52019F40166B53A7006BD1FA/* Sources */ = {216 28174C58167F2EA900104752 /* Sources */ = { 313 217 isa = PBXSourcesBuildPhase; 314 218 buildActionMask = 2147483647; 315 219 files = ( 316 52019F55166B53A7006BD1FA /* main.m in Sources */, 317 52019F59166B53A7006BD1FA /* AppDelegate.m in Sources */, 318 52019F68166B53A7006BD1FA /* FirstViewController.m in Sources */, 319 52019F6F166B53A7006BD1FA /* SecondViewController.m in Sources */, 220 28174C6D167F2EA900104752 /* main.m in Sources */, 221 28174C71167F2EA900104752 /* AppDelegate.m in Sources */, 222 28174C7D167F2EAA00104752 /* ViewController.m in Sources */, 320 223 ); 321 224 runOnlyForDeploymentPostprocessing = 0; 322 225 }; 323 52019F74166B53A7006BD1FA /* Sources */ = {324 isa = PBXSourcesBuildPhase;325 buildActionMask = 2147483647;326 files = (327 52019F88166B53A7006BD1FA /* OrbitTests.m in Sources */,328 );329 runOnlyForDeploymentPostprocessing = 0;330 };331 226 /* End PBXSourcesBuildPhase section */ 332 227 333 /* Begin PBXTargetDependency section */334 52019F7F166B53A7006BD1FA /* PBXTargetDependency */ = {335 isa = PBXTargetDependency;336 target = 52019F43166B53A7006BD1FA /* Orbit */;337 targetProxy = 52019F7E166B53A7006BD1FA /* PBXContainerItemProxy */;338 };339 /* End PBXTargetDependency section */340 341 228 /* Begin PBXVariantGroup section */ 342 52019F51166B53A7006BD1FA/* InfoPlist.strings */ = {229 28174C69167F2EA900104752 /* InfoPlist.strings */ = { 343 230 isa = PBXVariantGroup; 344 231 children = ( 345 52019F52166B53A7006BD1FA/* en */,232 28174C6A167F2EA900104752 /* en */, 346 233 ); 347 234 name = InfoPlist.strings; 348 235 sourceTree = "<group>"; 349 236 }; 350 52019F60166B53A7006BD1FA /* MainStoryboard_iPhone.storyboard */ = {237 28174C78167F2EAA00104752 /* MainStoryboard.storyboard */ = { 351 238 isa = PBXVariantGroup; 352 239 children = ( 353 52019F61166B53A7006BD1FA /* en */, 354 ); 355 name = MainStoryboard_iPhone.storyboard; 356 sourceTree = "<group>"; 357 }; 358 52019F63166B53A7006BD1FA /* MainStoryboard_iPad.storyboard */ = { 359 isa = PBXVariantGroup; 360 children = ( 361 52019F64166B53A7006BD1FA /* en */, 362 ); 363 name = MainStoryboard_iPad.storyboard; 364 sourceTree = "<group>"; 365 }; 366 52019F83166B53A7006BD1FA /* InfoPlist.strings */ = { 367 isa = PBXVariantGroup; 368 children = ( 369 52019F84166B53A7006BD1FA /* en */, 370 ); 371 name = InfoPlist.strings; 240 28174C79167F2EAA00104752 /* en */, 241 ); 242 name = MainStoryboard.storyboard; 372 243 sourceTree = "<group>"; 373 244 }; … … 375 246 376 247 /* Begin XCBuildConfiguration section */ 377 52019F89166B53A7006BD1FA/* Debug */ = {248 28174C7E167F2EAA00104752 /* Debug */ = { 378 249 isa = XCBuildConfiguration; 379 250 buildSettings = { … … 383 254 CLANG_ENABLE_OBJC_ARC = YES; 384 255 CLANG_WARN_EMPTY_BODY = YES; 256 CLANG_WARN_OBJCPP_ARC_ABI = NO; 385 257 CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 386 258 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; … … 400 272 ONLY_ACTIVE_ARCH = YES; 401 273 SDKROOT = iphoneos; 402 TARGETED_DEVICE_FAMILY = "1,2";403 274 }; 404 275 name = Debug; 405 276 }; 406 52019F8A166B53A7006BD1FA/* Release */ = {277 28174C7F167F2EAA00104752 /* Release */ = { 407 278 isa = XCBuildConfiguration; 408 279 buildSettings = { … … 412 283 CLANG_ENABLE_OBJC_ARC = YES; 413 284 CLANG_WARN_EMPTY_BODY = YES; 285 CLANG_WARN_OBJCPP_ARC_ABI = NO; 414 286 CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 415 287 "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; … … 422 294 OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; 423 295 SDKROOT = iphoneos; 424 TARGETED_DEVICE_FAMILY = "1,2";425 296 VALIDATE_PRODUCT = YES; 426 297 }; 427 298 name = Release; 428 299 }; 429 52019F8C166B53A7006BD1FA/* Debug */ = {300 28174C81167F2EAA00104752 /* Debug */ = { 430 301 isa = XCBuildConfiguration; 431 302 buildSettings = { 303 CLANG_ENABLE_OBJC_ARC = NO; 432 304 GCC_PRECOMPILE_PREFIX_HEADER = YES; 433 305 GCC_PREFIX_HEADER = "Orbit/Orbit-Prefix.pch"; 434 306 INFOPLIST_FILE = "Orbit/Orbit-Info.plist"; 307 IPHONEOS_DEPLOYMENT_TARGET = 5.1; 308 LIBRARY_SEARCH_PATHS = ( 309 "$(inherited)", 310 "\"$(SRCROOT)/Orbit\"", 311 ); 435 312 PRODUCT_NAME = "$(TARGET_NAME)"; 436 313 WRAPPER_EXTENSION = app; … … 438 315 name = Debug; 439 316 }; 440 52019F8D166B53A7006BD1FA/* Release */ = {317 28174C82167F2EAA00104752 /* Release */ = { 441 318 isa = XCBuildConfiguration; 442 319 buildSettings = { 320 CLANG_ENABLE_OBJC_ARC = NO; 443 321 GCC_PRECOMPILE_PREFIX_HEADER = YES; 444 322 GCC_PREFIX_HEADER = "Orbit/Orbit-Prefix.pch"; 445 323 INFOPLIST_FILE = "Orbit/Orbit-Info.plist"; 324 IPHONEOS_DEPLOYMENT_TARGET = 5.1; 325 LIBRARY_SEARCH_PATHS = ( 326 "$(inherited)", 327 "\"$(SRCROOT)/Orbit\"", 328 ); 446 329 PRODUCT_NAME = "$(TARGET_NAME)"; 447 330 WRAPPER_EXTENSION = app; … … 449 332 name = Release; 450 333 }; 451 52019F8F166B53A7006BD1FA /* Debug */ = {452 isa = XCBuildConfiguration;453 buildSettings = {454 BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Orbit.app/Orbit";455 FRAMEWORK_SEARCH_PATHS = (456 "\"$(SDKROOT)/Developer/Library/Frameworks\"",457 "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",458 );459 GCC_PRECOMPILE_PREFIX_HEADER = YES;460 GCC_PREFIX_HEADER = "Orbit/Orbit-Prefix.pch";461 INFOPLIST_FILE = "OrbitTests/OrbitTests-Info.plist";462 PRODUCT_NAME = "$(TARGET_NAME)";463 TEST_HOST = "$(BUNDLE_LOADER)";464 WRAPPER_EXTENSION = octest;465 };466 name = Debug;467 };468 52019F90166B53A7006BD1FA /* Release */ = {469 isa = XCBuildConfiguration;470 buildSettings = {471 BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/Orbit.app/Orbit";472 FRAMEWORK_SEARCH_PATHS = (473 "\"$(SDKROOT)/Developer/Library/Frameworks\"",474 "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",475 );476 GCC_PRECOMPILE_PREFIX_HEADER = YES;477 GCC_PREFIX_HEADER = "Orbit/Orbit-Prefix.pch";478 INFOPLIST_FILE = "OrbitTests/OrbitTests-Info.plist";479 PRODUCT_NAME = "$(TARGET_NAME)";480 TEST_HOST = "$(BUNDLE_LOADER)";481 WRAPPER_EXTENSION = octest;482 };483 name = Release;484 };485 334 /* End XCBuildConfiguration section */ 486 335 487 336 /* Begin XCConfigurationList section */ 488 52019F3E166B53A7006BD1FA/* Build configuration list for PBXProject "Orbit" */ = {337 28174C56167F2EA900104752 /* Build configuration list for PBXProject "Orbit" */ = { 489 338 isa = XCConfigurationList; 490 339 buildConfigurations = ( 491 52019F89166B53A7006BD1FA/* Debug */,492 52019F8A166B53A7006BD1FA/* Release */,340 28174C7E167F2EAA00104752 /* Debug */, 341 28174C7F167F2EAA00104752 /* Release */, 493 342 ); 494 343 defaultConfigurationIsVisible = 0; 495 344 defaultConfigurationName = Release; 496 345 }; 497 52019F8B166B53A7006BD1FA/* Build configuration list for PBXNativeTarget "Orbit" */ = {346 28174C80167F2EAA00104752 /* Build configuration list for PBXNativeTarget "Orbit" */ = { 498 347 isa = XCConfigurationList; 499 348 buildConfigurations = ( 500 52019F8C166B53A7006BD1FA/* Debug */,501 52019F8D166B53A7006BD1FA/* Release */,349 28174C81167F2EAA00104752 /* Debug */, 350 28174C82167F2EAA00104752 /* Release */, 502 351 ); 503 352 defaultConfigurationIsVisible = 0; 504 }; 505 52019F8E166B53A7006BD1FA /* Build configuration list for PBXNativeTarget "OrbitTests" */ = { 506 isa = XCConfigurationList; 507 buildConfigurations = ( 508 52019F8F166B53A7006BD1FA /* Debug */, 509 52019F90166B53A7006BD1FA /* Release */, 510 ); 511 defaultConfigurationIsVisible = 0; 353 defaultConfigurationName = Release; 512 354 }; 513 355 /* End XCConfigurationList section */ 514 356 }; 515 rootObject = 52019F3B166B53A7006BD1FA/* Project object */;357 rootObject = 28174C53167F2EA900104752 /* Project object */; 516 358 } -
iOS/Orbit/Orbit.xcodeproj/xcuserdata/jonathon.xcuserdatad/xcschemes/Orbit.xcscheme
rdccf843 r66477ef 15 15 <BuildableReference 16 16 BuildableIdentifier = "primary" 17 BlueprintIdentifier = " 52019F43166B53A7006BD1FA"17 BlueprintIdentifier = "28174C5B167F2EA900104752" 18 18 BuildableName = "Orbit.app" 19 19 BlueprintName = "Orbit" … … 29 29 buildConfiguration = "Debug"> 30 30 <Testables> 31 <TestableReference32 skipped = "NO">33 <BuildableReference34 BuildableIdentifier = "primary"35 BlueprintIdentifier = "52019F78166B53A7006BD1FA"36 BuildableName = "OrbitTests.octest"37 BlueprintName = "OrbitTests"38 ReferencedContainer = "container:Orbit.xcodeproj">39 </BuildableReference>40 </TestableReference>41 31 </Testables> 42 32 <MacroExpansion> 43 33 <BuildableReference 44 34 BuildableIdentifier = "primary" 45 BlueprintIdentifier = " 52019F43166B53A7006BD1FA"35 BlueprintIdentifier = "28174C5B167F2EA900104752" 46 36 BuildableName = "Orbit.app" 47 37 BlueprintName = "Orbit" … … 62 52 <BuildableReference 63 53 BuildableIdentifier = "primary" 64 BlueprintIdentifier = " 52019F43166B53A7006BD1FA"54 BlueprintIdentifier = "28174C5B167F2EA900104752" 65 55 BuildableName = "Orbit.app" 66 56 BlueprintName = "Orbit" … … 80 70 <BuildableReference 81 71 BuildableIdentifier = "primary" 82 BlueprintIdentifier = " 52019F43166B53A7006BD1FA"72 BlueprintIdentifier = "28174C5B167F2EA900104752" 83 73 BuildableName = "Orbit.app" 84 74 BlueprintName = "Orbit" -
iOS/Orbit/Orbit.xcodeproj/xcuserdata/jonathon.xcuserdatad/xcschemes/xcschememanagement.plist
rdccf843 r66477ef 13 13 <key>SuppressBuildableAutocreation</key> 14 14 <dict> 15 <key>52019F43166B53A7006BD1FA</key> 16 <dict> 17 <key>primary</key> 18 <true/> 19 </dict> 20 <key>52019F78166B53A7006BD1FA</key> 15 <key>28174C5B167F2EA900104752</key> 21 16 <dict> 22 17 <key>primary</key> -
iOS/Orbit/Orbit/AppDelegate.h
rdccf843 r66477ef 3 3 // Orbit 4 4 // 5 // Created by Steve Castellotti on 12/2/12.6 // Copyright (c) 2012 Puzzlebox. All rights reserved.5 // Created by Jonathon Horsman on 17/12/2012. 6 // Copyright (c) 2012 Jonathon Horsman. All rights reserved. 7 7 // 8 8 -
iOS/Orbit/Orbit/AppDelegate.m
rdccf843 r66477ef 3 3 // Orbit 4 4 // 5 // Created by Steve Castellotti on 12/2/12.6 // Copyright (c) 2012 Puzzlebox. All rights reserved.5 // Created by Jonathon Horsman on 17/12/2012. 6 // Copyright (c) 2012 Jonathon Horsman. All rights reserved. 7 7 // 8 8 9 9 #import "AppDelegate.h" 10 #import "TGAccessoryManager.h" 11 #import "TGAccessoryDelegate.h" 12 #import "ViewController.h" 10 13 11 14 @implementation AppDelegate … … 14 17 { 15 18 // Override point for customization after application launch. 19 [[TGAccessoryManager sharedTGAccessoryManager] setupManagerWithInterval:0.05]; 20 [[TGAccessoryManager sharedTGAccessoryManager] setDelegate:(ViewController *)self.window.rootViewController]; 16 21 return YES; 17 22 } … … 21 26 // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 22 27 // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 28 ViewController *rootController = (ViewController *)self.window.rootViewController; 29 [rootController appClosed]; 23 30 } 24 31 … … 37 44 { 38 45 // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 46 ViewController *rootController = (ViewController *)self.window.rootViewController; 47 [rootController appForegrounded]; 39 48 } 40 49 … … 42 51 { 43 52 // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 53 [[TGAccessoryManager sharedTGAccessoryManager] teardownManager]; 44 54 } 45 55 -
iOS/Orbit/Orbit/Orbit-Info.plist
rdccf843 r66477ef 17 17 <string>ic_launcher-57x57.png</string> 18 18 <string>ic_launcher-114x114.png</string> 19 <string>ic_launcher-72x72.png</string>20 <string>ic_launcher-144x144.png</string>21 19 </array> 22 <key>UIPrerenderedIcon</key>23 <true/>24 20 </dict> 25 21 </dict> 26 22 <key>CFBundleIdentifier</key> 27 <string> info.puzzlebox.${PRODUCT_NAME:rfc1034identifier}</string>23 <string>Puzzlebox.${PRODUCT_NAME:rfc1034identifier}</string> 28 24 <key>CFBundleInfoDictionaryVersion</key> 29 25 <string>6.0</string> … … 41 37 <true/> 42 38 <key>UIMainStoryboardFile</key> 43 <string>MainStoryboard_iPhone</string> 44 <key>UIMainStoryboardFile~ipad</key> 45 <string>MainStoryboard_iPad</string> 46 <key>UIPrerenderedIcon</key> 47 <true/> 39 <string>MainStoryboard</string> 48 40 <key>UIRequiredDeviceCapabilities</key> 49 41 <array> 50 42 <string>armv7</string> 51 43 </array> 52 <key>UIStatusBarTintParameters</key> 53 <dict> 54 <key>UINavigationBar</key> 55 <dict> 56 <key>Style</key> 57 <string>UIBarStyleDefault</string> 58 <key>Translucent</key> 59 <false/> 60 </dict> 61 </dict> 44 <key>UISupportedExternalAccessoryProtocols</key> 45 <array> 46 <string>com.neurosky.thinkgear</string> 47 </array> 62 48 <key>UISupportedInterfaceOrientations</key> 63 49 <array> … … 66 52 <string>UIInterfaceOrientationLandscapeRight</string> 67 53 </array> 68 <key>UISupportedInterfaceOrientations~ipad</key>69 <array>70 <string>UIInterfaceOrientationPortrait</string>71 <string>UIInterfaceOrientationPortraitUpsideDown</string>72 <string>UIInterfaceOrientationLandscapeLeft</string>73 <string>UIInterfaceOrientationLandscapeRight</string>74 </array>75 54 </dict> 76 55 </plist> -
iOS/Orbit/Orbit/main.m
rdccf843 r66477ef 3 3 // Orbit 4 4 // 5 // Created by Steve Castellotti on 12/2/12.6 // Copyright (c) 2012 Puzzlebox. All rights reserved.5 // Created by Jonathon Horsman on 17/12/2012. 6 // Copyright (c) 2012 Jonathon Horsman. All rights reserved. 7 7 // 8 8
Note: See TracChangeset
for help on using the changeset viewer.