commit a3f943efa1aeaa9c5106f1254dced918490f1d8d Author: rob Date: Sun Dec 21 12:07:45 2008 +0000 vanilla commit diff --git a/README b/README new file mode 100644 index 0000000..e69de29 diff --git a/build/Release/VVOSC.framework/Headers b/build/Release/VVOSC.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/build/Release/VVOSC.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/build/Release/VVOSC.framework/Resources b/build/Release/VVOSC.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/build/Release/VVOSC.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/build/Release/VVOSC.framework/VVOSC b/build/Release/VVOSC.framework/VVOSC new file mode 120000 index 0000000..c6a43b0 --- /dev/null +++ b/build/Release/VVOSC.framework/VVOSC @@ -0,0 +1 @@ +Versions/Current/VVOSC \ No newline at end of file diff --git a/build/Release/VVOSC.framework/VVOSC.framework b/build/Release/VVOSC.framework/VVOSC.framework new file mode 120000 index 0000000..c8aad41 --- /dev/null +++ b/build/Release/VVOSC.framework/VVOSC.framework @@ -0,0 +1 @@ +VVOSC.framework \ No newline at end of file diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/AddressValPair.h b/build/Release/VVOSC.framework/Versions/A/Headers/AddressValPair.h new file mode 100644 index 0000000..e8ab9ca --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/AddressValPair.h @@ -0,0 +1,28 @@ +// +// AddressValPair.h +// VVOSC +// +// Created by bagheera on 12/11/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + + + +@interface AddressValPair : NSObject { + NSString *address; + id val; +} + ++ (id) createWithAddress:(NSString *)a val:(id)v; +- (id) initWithAddress:(NSString *)a val:(id)v; + +- (NSString *) address; +- (id) val; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCBundle.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCBundle.h new file mode 100644 index 0000000..712f13a --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCBundle.h @@ -0,0 +1,34 @@ +// +// OSCBundle.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#import "OSCMessage.h" + + + + +@interface OSCBundle : NSObject { + NSMutableArray *elementArray; // array of messages or bundles +} + ++ (void) parseRawBuffer:(unsigned char *)b ofMaxLength:(int)l toInPort:(id)p; + ++ (id) create; + +- (void) addElement:(id)n; +- (void) addElementArray:(NSArray *)a; + +- (int) bufferLength; +- (void) writeToBuffer:(unsigned char *)b; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCInPort.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCInPort.h new file mode 100644 index 0000000..2278d91 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCInPort.h @@ -0,0 +1,93 @@ +// +// OSCInPort.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + + +//#import +//#import +#import + +#import +#import "AddressValPair.h" +#import "OSCPacket.h" +#import "OSCBundle.h" +#import "OSCMessage.h" + + +@protocol OSCInPortDelegateProtocol +- (void) oscMessageReceived:(NSDictionary *)d; +- (void) receivedOSCVal:(id)v forAddress:(NSString *)a; +@end + +@protocol OSCDelegateProtocol +- (void) oscMessageReceived:(NSDictionary *)d; +- (void) receivedOSCVal:(id)v forAddress:(NSString *)a; +@end + + +@interface OSCInPort : NSObject { + BOOL deleted; // whether or not i'm deleted- ensures that socket gets closed + BOOL bound; // whether or not the socket is bound + int sock; // socket file descriptor. remember, everything in unix is files! + struct sockaddr_in addr; // struct that describes *my* address (this is an in port) + short port; // the port number i'm receiving from + BOOL running; // whether or not i should keep running + BOOL busy; + unsigned char buf[8192]; // the socket gets data and dumps it here immediately + + pthread_mutex_t lock; + NSTimer *threadTimer; + int threadTimerCount; + NSAutoreleasePool *threadPool; + + NSString *portLabel; // the "name" of the port (added to distinguish multiple osc input ports for bonjour) + NSNetService *zeroConfDest; // bonjour service for publishing this input's address...only active if there's a portLabel! + + NSMutableDictionary *scratchDict; // key of dict is address port; object at key is a mut. array. coalesced messaging. + NSMutableArray *scratchArray; // array of AddressValPair objects. used for serial messaging. + id delegate; // my delegate gets notified of incoming messages +} + ++ (id) createWithPort:(short)p; ++ (id) createWithPort:(short)p labelled:(NSString *)n; +- (id) initWithPort:(short)p; +- (id) initWithPort:(short)p labelled:(NSString *)n; + +- (void) prepareToBeDeleted; + +- (NSDictionary *) createSnapshot; + +- (BOOL) createSocket; +- (void) start; +- (void) stop; +- (void) launchOSCLoop:(id)o; +- (void) OSCThreadProc:(NSTimer *)t; +- (void) parseRawBuffer:(unsigned char *)b ofMaxLength:(int)l; + +// if the delegate im +- (void) handleParsedScratchDict:(NSDictionary *)d; +- (void) handleScratchArray:(NSArray *)a; + +- (void) addValue:(id)val toAddressPath:(NSString *)p; + +- (short) port; +- (void) setPort:(short)n; +- (NSString *) portLabel; +- (void) setPortLabel:(NSString *)n; +- (NSNetService *) zeroConfDest; +- (BOOL) bound; + +- (id) delegate; +- (void) setDelegate:(id)n; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCManager.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCManager.h new file mode 100644 index 0000000..5673296 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCManager.h @@ -0,0 +1,144 @@ +// +// OSCManager.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#import "OSCZeroConfManager.h" +#import "OSCInPort.h" +#import "OSCOutPort.h" +#import + +/* + TOP-LEVEL OVERVIEW + + this osc manager class is all you need to add to your app. it has methods for + adding and removing ports. you can have as many osc managers as you like, but + you should really only need one instance. + + input ports have a delegate- delegate methods are called as the port receives data. + it's important to note that the delegate methods must be thread-safe: each input + port is running on its own (non-main) thread. + + data is sent via the output ports (convenience methods for doing this are built + into the osc manager). + + + + + GENERAL OSC STRUCTURE AND OVERVIEW + + this framework was written from the OSC spec found here: + http://opensoundcontrol.org/spec-1_0 + + - an OSC packet is the basic unit of transmitting OSC data. + - an OSC packet consists of: + - contents- contiguous block of binary data (either a bundle or a message), and then the + - size- number of 8-bit bytes that comprise 'contents'- ALWAYS multiple of 4! + - an OSC message consists of: + - an OSC address pattern (starting with '/'), followed by + - an OSC type tag string, followed by + - zero or more 'OSC arguments' + - an OSC bundle consists of: + - the OSC-string "#bundle", followed by + - an OSC time tag, followed by + - zero or more 'OSC bundle elements' + - an OSC bundle element consists of: + - 'size' (int32)- number of 8-bit bytes in the contents- ALWAYS multiple of 4! + - 'contents'- either another OSC bundle, or an OSC message + + + + + PORTS- SENDING AND RECEIVING UDP/TCP DATA + + some basic information, gleaned from: + http://beej.us/guide/bgnet/output/html/multipage/index.html + + struct sockaddr { + unsigned short sa_family; // address family, AF_xxx + char sa_data[14]; // 14 bytes of protocol address + } + struct sockaddr_in { + short int sin_family; // address family + unsigned short int sin_port; // port number + struct in_addr sin_addr; // internet address + unsigned char sin_zero[8]; // exists so sockaddr_in has same length as sockaddr + } + + recv(int sockfd, void *buf, int len, unsigned int flags); + - sockfd is the socket descriptor to read from + - buf is the buffer to read the information into + - len is the max length of the buffer + - flags can be set to 0 + recvfrom(int sockfd, void *buf, int len, unsigned int flags, struct sockaddr *from, int *fromlen); + - from is a pointer to a local struct sockaddr that will be filled with the IP & port of the originating machine + - fromlen is a pointer to a local int that should be initialized to a sizeof(struct sockaddr)- contains length of address actually stored in from on return + ...as well as the 4 params listed above in recv() + + int select(int numfds, fd_set *readrds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout); +*/ + +@interface OSCManager : NSObject { + NSMutableArray *inPortArray; + NSMutableArray *outPortArray; + + pthread_rwlock_t inPortLock; + pthread_rwlock_t outPortLock; + + id delegate; + + OSCZeroConfManager *zeroConfManager; // bonjour/zero-configuration manager +} + +- (void) deleteAllInputs; +- (void) deleteAllOutputs; +// methods for creating input ports +- (OSCInPort *) createNewInputFromSnapshot:(NSDictionary *)s; +- (OSCInPort *) createNewInputForPort:(int)p withLabel:(NSString *)l; +- (OSCInPort *) createNewInputForPort:(int)p; +- (OSCInPort *) createNewInput; +// methods for creating output ports +- (OSCOutPort *) createNewOutputFromSnapshot:(NSDictionary *)s; +- (OSCOutPort *) createNewOutputToAddress:(NSString *)a atPort:(int)p withLabel:(NSString *)l; +- (OSCOutPort *) createNewOutputToAddress:(NSString *)a atPort:(int)p; +- (OSCOutPort *) createNewOutput; + +// typically, the manager is the input port's delegate- input ports tell delegates when they receive data +// this method is called and contains coalesced messages (grouped by address path) +- (void) oscMessageReceived:(NSDictionary *)d; +// this method is called every time any osc val is processed +- (void) receivedOSCVal:(id)v forAddress:(NSString *)a; + +// methods for working with ports +- (NSString *) getUniqueInputLabel; +- (NSString *) getUniqueOutputLabel; +- (OSCInPort *) findInputWithLabel:(NSString *)n; +- (OSCOutPort *) findOutputWithLabel:(NSString *)n; +- (OSCOutPort *) findOutputWithAddress:(NSString *)a andPort:(int)p; +- (OSCOutPort *) findOutputForIndex:(int)i; +- (OSCInPort *) findInputWithZeroConfName:(NSString *)n; +- (void) removeInput:(id)p; +- (void) removeOutput:(id)p; +- (NSArray *) outPortLabelArray; + +// subclassable methods for customizing +- (id) inPortClass; +- (NSString *) inPortLabelBase; +- (id) outPortClass; + +// misc +- (id) delegate; +- (void) setDelegate:(id)n; +- (NSMutableArray *) inPortArray; +- (NSMutableArray *) outPortArray; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCMessage.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCMessage.h new file mode 100644 index 0000000..e86444c --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCMessage.h @@ -0,0 +1,43 @@ +// +// OSCMessage.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#import + + + +@interface OSCMessage : NSObject { + NSString *address; + NSMutableArray *typeArray; + NSMutableArray *argArray; + pthread_rwlock_t lock; +} + ++ (void) parseRawBuffer:(unsigned char *)b ofMaxLength:(int)l toInPort:(id)p; ++ (id) createMessageToAddress:(NSString *)a; +- (id) initWithAddress:(NSString *)a; + +- (void) addInt:(int)n; +- (void) addFloat:(float)n; +#if IPHONE +- (void) addColor:(UIColor *)c; +#else +- (void) addColor:(NSColor *)c; +#endif +- (void) addBOOL:(BOOL)n; +- (void) addString:(NSString *)n; + +- (int) bufferLength; +- (void) writeToBuffer:(unsigned char *)b; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCOutPort.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCOutPort.h new file mode 100644 index 0000000..28d7c2f --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCOutPort.h @@ -0,0 +1,58 @@ +// +// OSCOutPort.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + + +#include + +#import "OSCPacket.h" +#import "OSCBundle.h" +#import "OSCMessage.h" + + + + +@interface OSCOutPort : NSObject { + BOOL deleted; + int sock; + struct sockaddr_in addr; + int port; + NSString *addressString; + NSString *portLabel; // used it to distinguish between multiple osc outputs +} + ++ (id) createWithAddress:(NSString *)a andPort:(int)p; ++ (id) createWithAddress:(NSString *)a andPort:(int)p labelled:(NSString *)l; +- (id) initWithAddress:(NSString *)a andPort:(int)p; +- (id) initWithAddress:(NSString *)a andPort:(int)p labelled:(NSString *)l; +- (void) prepareToBeDeleted; + +- (NSDictionary *) createSnapshot; + +- (BOOL) createSocket; + +- (void) sendThisBundle:(OSCBundle *)b; +- (void) sendThisMessage:(OSCMessage *)m; +- (void) sendThisPacket:(OSCPacket *)p; + +- (void) setAddressString:(NSString *)n; +- (void) setPort:(int)p; +- (void) setAddressString:(NSString *)n andPort:(int)p; + +- (NSString *) portLabel; +- (void) setPortLabel:(NSString *)n; + +- (int) port; +- (NSString *) addressString; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCPacket.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCPacket.h new file mode 100644 index 0000000..4d79674 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCPacket.h @@ -0,0 +1,37 @@ +// +// OSCPacket.h +// OSC +// +// Created by bagheera on 9/20/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#include +#import "OSCBundle.h" +#import "OSCMessage.h" + +/* + this class requires a bundle or message on create/init. the buffer/msg + is NOT retained by this class in any way- it's used to immediately create + the buffer which will be sent. +*/ + +@interface OSCPacket : NSObject { + int bufferLength; + unsigned char *payload; +} + ++ (void) parseRawBuffer:(unsigned char *)b ofMaxLength:(int)l toInPort:(id)p; ++ (id) createWithContent:(id)c; +- (id) initWithContent:(id)c; + +- (int) bufferLength; +- (unsigned char *) payload; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfDomain.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfDomain.h new file mode 100644 index 0000000..22a94bc --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfDomain.h @@ -0,0 +1,44 @@ +// +// OSCZeroConfDomain.h +// VVOSC +// +// Created by bagheera on 12/9/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#import +#import +#include + + + + +@interface OSCZeroConfDomain : NSObject { + NSString *domainString; + NSNetServiceBrowser *serviceBrowser; + + NSMutableArray *servicesArray; + pthread_rwlock_t servicesLock; + + id domainManager; +} + ++ (id) createWithDomain:(NSString *)d andDomainManager:(id)m; +- (id) initWithDomain:(NSString *)d andDomainManager:(id)m; + +// NSNetServiceBrowser delegate methods +- (void)netServiceBrowser:(NSNetServiceBrowser *)n didFindService:(NSNetService *)x moreComing:(BOOL)m; +- (void)netServiceBrowser:(NSNetServiceBrowser *)n didNotSearch:(NSDictionary *)err; +- (void)netServiceBrowser:(NSNetServiceBrowser *)n didRemoveService:(NSNetService *)s moreComing:(BOOL)m; + +// NSNetService delegate methods +- (void)netService:(NSNetService *)n didNotResolve:(NSDictionary *)err; +- (void)netServiceDidResolveAddress:(NSNetService *)n; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfManager.h b/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfManager.h new file mode 100644 index 0000000..21ddd7f --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/OSCZeroConfManager.h @@ -0,0 +1,39 @@ +// +// OSCZeroConfManager.h +// VVOSC +// +// Created by bagheera on 12/9/08. +// Copyright 2008 __MyCompanyName__. All rights reserved. +// + +#if IPHONE +#import +#else +#import +#endif + +#import "OSCZeroConfDomain.h" +#import + + + + +@interface OSCZeroConfManager : NSObject { + NSNetServiceBrowser *domainBrowser; + + NSMutableDictionary *domainDict; + pthread_rwlock_t domainLock; + + id oscManager; +} + +- (id) initWithOSCManager:(id)m; + +- (void) serviceRemoved:(NSNetService *)s; +- (void) serviceResolved:(NSNetService *)s; + +// NSNetServiceBrowser delegate methods +- (void)netServiceBrowser:(NSNetServiceBrowser *)n didFindDomain:(NSString *)d moreComing:(BOOL)m; +- (void)netServiceBrowser:(NSNetServiceBrowser *)n didNotSearch:(NSDictionary *)err; + +@end diff --git a/build/Release/VVOSC.framework/Versions/A/Headers/VVOSC.h b/build/Release/VVOSC.framework/Versions/A/Headers/VVOSC.h new file mode 100644 index 0000000..0248ef1 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Headers/VVOSC.h @@ -0,0 +1,9 @@ + + +#import "AddressValPair.h" +#import "OSCManager.h" +#import "OSCZeroConfManager.h" +#import "OSCPacket.h" +#import "OSCBundle.h" +#import "OSCMessage.h" + diff --git a/build/Release/VVOSC.framework/Versions/A/Resources/English.lproj/InfoPlist.strings b/build/Release/VVOSC.framework/Versions/A/Resources/English.lproj/InfoPlist.strings new file mode 100644 index 0000000..dea12de Binary files /dev/null and b/build/Release/VVOSC.framework/Versions/A/Resources/English.lproj/InfoPlist.strings differ diff --git a/build/Release/VVOSC.framework/Versions/A/Resources/Info.plist b/build/Release/VVOSC.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..5dfb179 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + VVOSC + CFBundleGetInfoString + 0.1.2 + CFBundleIdentifier + com.vidvox.VVOSC + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + VVOSC + CFBundlePackageType + FMWK + CFBundleSignature + ???? + CFBundleVersion + 0.1.2 + + diff --git a/build/Release/VVOSC.framework/Versions/A/VVOSC b/build/Release/VVOSC.framework/Versions/A/VVOSC new file mode 100755 index 0000000..cbd3235 Binary files /dev/null and b/build/Release/VVOSC.framework/Versions/A/VVOSC differ diff --git a/build/Release/VVOSC.framework/Versions/Current b/build/Release/VVOSC.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/build/Release/VVOSC.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/build/Release/sc3ctrl b/build/Release/sc3ctrl new file mode 100755 index 0000000..2bb2edb Binary files /dev/null and b/build/Release/sc3ctrl differ diff --git a/build/Release/sc3ctrl.dSYM/Contents/Info.plist b/build/Release/sc3ctrl.dSYM/Contents/Info.plist new file mode 100644 index 0000000..92093bb --- /dev/null +++ b/build/Release/sc3ctrl.dSYM/Contents/Info.plist @@ -0,0 +1,27 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sc3ctrl + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + dSYM_UUID + + i386 + 3318CB70-EB25-6384-E7F4-69918E59B470 + ppc + 1429EEE0-2EEE-3E06-E7F5-133928D9356C + + + diff --git a/build/Release/sc3ctrl.dSYM/Contents/Resources/DWARF/sc3ctrl b/build/Release/sc3ctrl.dSYM/Contents/Resources/DWARF/sc3ctrl new file mode 100644 index 0000000..7863eb3 Binary files /dev/null and b/build/Release/sc3ctrl.dSYM/Contents/Resources/DWARF/sc3ctrl differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl new file mode 100755 index 0000000..acc2268 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.LinkFileList b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.LinkFileList new file mode 100644 index 0000000..12145de --- /dev/null +++ b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.LinkFileList @@ -0,0 +1 @@ +/Developer/Projects/sc3ctrl/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.o diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.o b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.o new file mode 100644 index 0000000..5e3ed07 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/i386/sc3ctrl.o differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl new file mode 100755 index 0000000..4dff676 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.LinkFileList b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.LinkFileList new file mode 100644 index 0000000..649b0c2 --- /dev/null +++ b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.LinkFileList @@ -0,0 +1 @@ +/Developer/Projects/sc3ctrl/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.o diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.o b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.o new file mode 100644 index 0000000..34bb2fc Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/Objects-normal/ppc/sc3ctrl.o differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-all-target-headers.hmap b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-all-target-headers.hmap new file mode 100644 index 0000000..5d74c43 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-all-target-headers.hmap differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-generated-files.hmap b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-generated-files.hmap new file mode 100644 index 0000000..dd8b535 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-generated-files.hmap differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-own-target-headers.hmap b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-own-target-headers.hmap new file mode 100644 index 0000000..5d74c43 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-own-target-headers.hmap differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-project-headers.hmap b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-project-headers.hmap new file mode 100644 index 0000000..595dc49 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl-project-headers.hmap differ diff --git a/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl.hmap b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl.hmap new file mode 100644 index 0000000..22bebe3 Binary files /dev/null and b/build/sc3ctrl.build/Release/sc3ctrl.build/sc3ctrl.hmap differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/categories.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/categories.pbxbtree new file mode 100644 index 0000000..313c05e Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/categories.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/cdecls.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/cdecls.pbxbtree new file mode 100644 index 0000000..f127871 Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/cdecls.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/decls.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/decls.pbxbtree new file mode 100644 index 0000000..83b358e Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/decls.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/files.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/files.pbxbtree new file mode 100644 index 0000000..40ccf73 Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/files.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/imports.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/imports.pbxbtree new file mode 100644 index 0000000..81af18e Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/imports.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/pbxindex.header b/build/sc3ctrl.build/sc3ctrl.pbxindex/pbxindex.header new file mode 100644 index 0000000..4f98438 Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/pbxindex.header differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/protocols.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/protocols.pbxbtree new file mode 100644 index 0000000..4b685f9 Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/protocols.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/refs.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/refs.pbxbtree new file mode 100644 index 0000000..a8e5eee Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/refs.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/control b/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/control new file mode 100644 index 0000000..3df9f09 Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/control differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/strings b/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/strings new file mode 100644 index 0000000..147e44d Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/strings.pbxstrings/strings differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/subclasses.pbxbtree b/build/sc3ctrl.build/sc3ctrl.pbxindex/subclasses.pbxbtree new file mode 100644 index 0000000..8c3416b Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/subclasses.pbxbtree differ diff --git a/build/sc3ctrl.build/sc3ctrl.pbxindex/symbols0.pbxsymbols b/build/sc3ctrl.build/sc3ctrl.pbxindex/symbols0.pbxsymbols new file mode 100644 index 0000000..5a58b7e Binary files /dev/null and b/build/sc3ctrl.build/sc3ctrl.pbxindex/symbols0.pbxsymbols differ diff --git a/sc3ctrl.1 b/sc3ctrl.1 new file mode 100644 index 0000000..f24602f --- /dev/null +++ b/sc3ctrl.1 @@ -0,0 +1,79 @@ +.\"Modified from man(1) of FreeBSD, the NetBSD mdoc.template, and mdoc.samples. +.\"See Also: +.\"man mdoc.samples for a complete listing of options +.\"man mdoc for the short list of editing options +.\"/usr/share/misc/mdoc.template +.Dd 20/December/2008 \" DATE +.Dt sc3ctrl 1 \" Program name and manual section number +.Os Darwin +.Sh NAME \" Section Header - required - don't modify +.Nm sc3ctrl, +.\" The following lines are read in generating the apropos(man -k) database. Use only key +.\" words here as the database is built based on the words here and in the .ND line. +.Nm Other_name_for_same_program(), +.Nm Yet another name for the same program. +.\" Use .Nm macro to designate other names for the documented program. +.Nd This line parsed for whatis database. +.Sh SYNOPSIS \" Section Header - required - don't modify +.Nm +.Op Fl abcd \" [-abcd] +.Op Fl a Ar path \" [-a path] +.Op Ar file \" [file] +.Op Ar \" [file ...] +.Ar arg0 \" Underlined argument - use .Ar anywhere to underline +arg2 ... \" Arguments +.Sh DESCRIPTION \" Section Header - required - don't modify +Use the .Nm macro to refer to your program throughout the man page like such: +.Nm +Underlining is accomplished with the .Ar macro like this: +.Ar underlined text . +.Pp \" Inserts a space +A list of items with descriptions: +.Bl -tag -width -indent \" Begins a tagged list +.It item a \" Each item preceded by .It macro +Description of item a +.It item b +Description of item b +.El \" Ends the list +.Pp +A list of flags and their descriptions: +.Bl -tag -width -indent \" Differs from above in tag removed +.It Fl a \"-a flag as a list item +Description of -a flag +.It Fl b +Description of -b flag +.El \" Ends the list +.Pp +.\" .Sh ENVIRONMENT \" May not be needed +.\" .Bl -tag -width "ENV_VAR_1" -indent \" ENV_VAR_1 is width of the string ENV_VAR_1 +.\" .It Ev ENV_VAR_1 +.\" Description of ENV_VAR_1 +.\" .It Ev ENV_VAR_2 +.\" Description of ENV_VAR_2 +.\" .El +.Sh FILES \" File used or created by the topic of the man page +.Bl -tag -width "/Users/joeuser/Library/really_long_file_name" -compact +.It Pa /usr/share/file_name +FILE_1 description +.It Pa /Users/joeuser/Library/really_long_file_name +FILE_2 description +.El \" Ends the list +.\" .Sh DIAGNOSTICS \" May not be needed +.\" .Bl -diag +.\" .It Diagnostic Tag +.\" Diagnostic informtion here. +.\" .It Diagnostic Tag +.\" Diagnostic informtion here. +.\" .El +.Sh SEE ALSO +.\" List links in ascending order by section, alphabetically within a section. +.\" Please do not reference files that do not exist without filing a bug report +.Xr a 1 , +.Xr b 1 , +.Xr c 1 , +.Xr a 2 , +.Xr b 2 , +.Xr a 3 , +.Xr b 3 +.\" .Sh BUGS \" Document known, unremedied bugs +.\" .Sh HISTORY \" Document history if command behaves in a unique manner \ No newline at end of file diff --git a/sc3ctrl.h b/sc3ctrl.h new file mode 100644 index 0000000..6ac2fc2 --- /dev/null +++ b/sc3ctrl.h @@ -0,0 +1,10 @@ +/* + * sc3ctrl.h + * sc3ctrl + * + * Created by Robin Watson on 21/December/2008. + * Copyright 2008 __MyCompanyName__. All rights reserved. + * + */ + +void interpretContentsOfEnvironmentVariable(char *var); \ No newline at end of file diff --git a/sc3ctrl.m b/sc3ctrl.m new file mode 100644 index 0000000..189ba8e --- /dev/null +++ b/sc3ctrl.m @@ -0,0 +1,45 @@ +#import +#import + + +void interpretContentsOfEnvironmentVariable(const char *var) { + char *utf8cmd = getenv(var); + + if(utf8cmd == NULL) { + NSLog(@"$%s is NULL", var); + return; + } + + NSString *cmd = [NSString stringWithUTF8String:utf8cmd]; + OSCManager *manager = [[OSCManager alloc] init]; + + OSCOutPort *outport = [manager createNewOutputToAddress:@"127.0.0.1" atPort:57120]; + OSCMessage *msg = [OSCMessage createMessageToAddress:@"/sc3ctrl/cmd"]; + [msg addString:cmd]; + + NSLog(@"Sending cmd %@", cmd); + + [outport sendThisMessage:msg]; + [manager release]; +} + +int main (int argc, const char **argv) { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + if(argv[1] == NULL) { + NSLog(@"Usage: sc3ctrl -x"); + } else { + NSString *arg = [NSString stringWithUTF8String:argv[1]]; + + if([arg isEqual:@"-x"]) { + if(argv[2] == NULL) { + interpretContentsOfEnvironmentVariable("SC3_INTERPRET_TEXT"); + } else { + interpretContentsOfEnvironmentVariable((const char *)argv[2]); + } + } + } + + [pool drain]; + return 0; +} diff --git a/sc3ctrl.xcodeproj/TemplateIcon.icns b/sc3ctrl.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000..62cb701 Binary files /dev/null and b/sc3ctrl.xcodeproj/TemplateIcon.icns differ diff --git a/sc3ctrl.xcodeproj/project.pbxproj b/sc3ctrl.xcodeproj/project.pbxproj new file mode 100644 index 0000000..3231ce2 --- /dev/null +++ b/sc3ctrl.xcodeproj/project.pbxproj @@ -0,0 +1,238 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXBuildFile section */ + 567162810EFD45740047EA2B /* VVOSC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 567162800EFD45740047EA2B /* VVOSC.framework */; }; + 8DD76F9A0486AA7600D96B5E /* sc3ctrl.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; settings = {ATTRIBUTES = (); }; }; + 8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB779EFE84155DC02AAC07 /* Foundation.framework */; }; + 8DD76F9F0486AA7600D96B5E /* sc3ctrl.1 in CopyFiles */ = {isa = PBXBuildFile; fileRef = C6859EA3029092ED04C91782 /* sc3ctrl.1 */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 8DD76F9E0486AA7600D96B5E /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 8; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + 8DD76F9F0486AA7600D96B5E /* sc3ctrl.1 in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 1; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = sc3ctrl.m; sourceTree = ""; }; + 08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32A70AAB03705E1F00C91783 /* sc3ctrl_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sc3ctrl_Prefix.pch; sourceTree = ""; }; + 567162800EFD45740047EA2B /* VVOSC.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = VVOSC.framework; path = Projects/vvosc/build/Release/VVOSC.framework; sourceTree = DEVELOPER_DIR; }; + 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = sc3ctrl.h; path = Projects/sc3ctrl/sc3ctrl.h; sourceTree = DEVELOPER_DIR; }; + 8DD76FA10486AA7600D96B5E /* sc3ctrl */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = sc3ctrl; sourceTree = BUILT_PRODUCTS_DIR; }; + C6859EA3029092ED04C91782 /* sc3ctrl.1 */ = {isa = PBXFileReference; lastKnownFileType = text.man; path = sc3ctrl.1; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8DD76F9B0486AA7600D96B5E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */, + 567162810EFD45740047EA2B /* VVOSC.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 08FB7794FE84155DC02AAC07 /* sc3ctrl */ = { + isa = PBXGroup; + children = ( + 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */, + 08FB7795FE84155DC02AAC07 /* Source */, + C6859EA2029092E104C91782 /* Documentation */, + 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */, + 1AB674ADFE9D54B511CA2CBB /* Products */, + ); + name = sc3ctrl; + sourceTree = ""; + }; + 08FB7795FE84155DC02AAC07 /* Source */ = { + isa = PBXGroup; + children = ( + 32A70AAB03705E1F00C91783 /* sc3ctrl_Prefix.pch */, + 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */, + ); + name = Source; + sourceTree = ""; + }; + 08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */ = { + isa = PBXGroup; + children = ( + 08FB779EFE84155DC02AAC07 /* Foundation.framework */, + ); + name = "External Frameworks and Libraries"; + sourceTree = ""; + }; + 1AB674ADFE9D54B511CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 567162800EFD45740047EA2B /* VVOSC.framework */, + 8DD76FA10486AA7600D96B5E /* sc3ctrl */, + ); + name = Products; + sourceTree = ""; + }; + C6859EA2029092E104C91782 /* Documentation */ = { + isa = PBXGroup; + children = ( + C6859EA3029092ED04C91782 /* sc3ctrl.1 */, + ); + name = Documentation; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8DD76F960486AA7600D96B5E /* sc3ctrl */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "sc3ctrl" */; + buildPhases = ( + 8DD76F990486AA7600D96B5E /* Sources */, + 8DD76F9B0486AA7600D96B5E /* Frameworks */, + 8DD76F9E0486AA7600D96B5E /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = sc3ctrl; + productInstallPath = "$(HOME)/bin"; + productName = sc3ctrl; + productReference = 8DD76FA10486AA7600D96B5E /* sc3ctrl */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 08FB7793FE84155DC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "sc3ctrl" */; + compatibilityVersion = "Xcode 3.1"; + hasScannedForEncodings = 1; + mainGroup = 08FB7794FE84155DC02AAC07 /* sc3ctrl */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8DD76F960486AA7600D96B5E /* sc3ctrl */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 8DD76F990486AA7600D96B5E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8DD76F9A0486AA7600D96B5E /* sc3ctrl.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB927508733DD40010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(DEVELOPER_DIR)/Projects/vvosc/build/Release\"", + ); + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = sc3ctrl_Prefix.pch; + INSTALL_PATH = /usr/local/bin; + PRODUCT_NAME = sc3ctrl; + }; + name = Debug; + }; + 1DEB927608733DD40010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(DEVELOPER_DIR)/Projects/vvosc/build/Release\"", + ); + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = sc3ctrl_Prefix.pch; + INSTALL_PATH = /usr/local/bin; + PRODUCT_NAME = sc3ctrl; + }; + name = Release; + }; + 1DEB927908733DD40010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PREBINDING = NO; + SDKROOT = macosx10.4; + }; + name = Debug; + }; + 1DEB927A08733DD40010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + GCC_C_LANGUAGE_STANDARD = c99; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INSTALL_PATH = "@executable_path/../Frameworks"; + LD_DYLIB_INSTALL_NAME = ""; + LD_RUNPATH_SEARCH_PATHS = "@executable_path"; + PREBINDING = NO; + SDKROOT = macosx10.4; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB927408733DD40010E9CD /* Build configuration list for PBXNativeTarget "sc3ctrl" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB927508733DD40010E9CD /* Debug */, + 1DEB927608733DD40010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB927808733DD40010E9CD /* Build configuration list for PBXProject "sc3ctrl" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB927908733DD40010E9CD /* Debug */, + 1DEB927A08733DD40010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; +} diff --git a/sc3ctrl.xcodeproj/rfw21.pbxuser b/sc3ctrl.xcodeproj/rfw21.pbxuser new file mode 100644 index 0000000..3d30e15 --- /dev/null +++ b/sc3ctrl.xcodeproj/rfw21.pbxuser @@ -0,0 +1,1197 @@ +// !$*UTF8*$! +{ + 08FB7793FE84155DC02AAC07 /* Project object */ = { + activeBuildConfigurationName = Release; + activeExecutable = 567161F40EFD3E560047EA2B /* sc3ctrl */; + activeSDKPreference = macosx10.5; + activeTarget = 8DD76F960486AA7600D96B5E /* sc3ctrl */; + addToTargets = ( + ); + codeSenseManager = 567161FA0EFD3E860047EA2B /* Code sense */; + executables = ( + 567161F40EFD3E560047EA2B /* sc3ctrl */, + ); + perUserDictionary = { + PBXConfiguration.PBXFileTableDataSource3.PBXErrorsWarningsDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_LocationID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 300, + 1124, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXErrorsWarningsDataSource_TypeID, + PBXErrorsWarningsDataSource_MessageID, + PBXErrorsWarningsDataSource_LocationID, + ); + }; + PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 1234, + 20, + 48, + 43, + 43, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + PBXFileDataSource_Target_ColumnID, + ); + }; + PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 1194, + 60, + 20, + 48, + 43, + 43, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXTargetDataSource_PrimaryAttribute, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + ); + }; + PBXPerProjectTemplateStateSaveDate = 251477859; + PBXWorkspaceStateSaveDate = 251477859; + }; + perUserProjectItems = { + 567162270EFD3F440047EA2B = 567162270EFD3F440047EA2B /* PBXTextBookmark */; + 5671622D0EFD3F600047EA2B = 5671622D0EFD3F600047EA2B /* PBXTextBookmark */; + 567162370EFD3F6B0047EA2B /* PBXTextBookmark */ = 567162370EFD3F6B0047EA2B /* PBXTextBookmark */; + 567162450EFD40190047EA2B /* PBXTextBookmark */ = 567162450EFD40190047EA2B /* PBXTextBookmark */; + 567162470EFD401D0047EA2B /* PBXTextBookmark */ = 567162470EFD401D0047EA2B /* PBXTextBookmark */; + 5671624A0EFD40280047EA2B /* PBXTextBookmark */ = 5671624A0EFD40280047EA2B /* PBXTextBookmark */; + 5671624B0EFD40310047EA2B /* PBXTextBookmark */ = 5671624B0EFD40310047EA2B /* PBXTextBookmark */; + 5671624C0EFD40330047EA2B /* PBXTextBookmark */ = 5671624C0EFD40330047EA2B /* PBXTextBookmark */; + 5671624E0EFD40390047EA2B /* PBXTextBookmark */ = 5671624E0EFD40390047EA2B /* PBXTextBookmark */; + 567162530EFD407D0047EA2B /* PBXTextBookmark */ = 567162530EFD407D0047EA2B /* PBXTextBookmark */; + 567162560EFD408D0047EA2B /* PBXTextBookmark */ = 567162560EFD408D0047EA2B /* PBXTextBookmark */; + 567162570EFD40950047EA2B /* PBXTextBookmark */ = 567162570EFD40950047EA2B /* PBXTextBookmark */; + 567162580EFD40990047EA2B /* PBXTextBookmark */ = 567162580EFD40990047EA2B /* PBXTextBookmark */; + 5671625C0EFD40CB0047EA2B /* PBXTextBookmark */ = 5671625C0EFD40CB0047EA2B /* PBXTextBookmark */; + 5671625D0EFD40CE0047EA2B /* PBXTextBookmark */ = 5671625D0EFD40CE0047EA2B /* PBXTextBookmark */; + 5671625E0EFD40D10047EA2B /* PBXTextBookmark */ = 5671625E0EFD40D10047EA2B /* PBXTextBookmark */; + 567162630EFD424C0047EA2B /* PBXTextBookmark */ = 567162630EFD424C0047EA2B /* PBXTextBookmark */; + 567162640EFD424E0047EA2B /* PBXTextBookmark */ = 567162640EFD424E0047EA2B /* PBXTextBookmark */; + 567162650EFD424F0047EA2B /* PBXTextBookmark */ = 567162650EFD424F0047EA2B /* PBXTextBookmark */; + 567162660EFD42620047EA2B /* PBXTextBookmark */ = 567162660EFD42620047EA2B /* PBXTextBookmark */; + 567162680EFD43A70047EA2B /* PBXTextBookmark */ = 567162680EFD43A70047EA2B /* PBXTextBookmark */; + 5671626D0EFD43E90047EA2B /* PBXTextBookmark */ = 5671626D0EFD43E90047EA2B /* PBXTextBookmark */; + 5671626E0EFD441F0047EA2B /* PBXTextBookmark */ = 5671626E0EFD441F0047EA2B /* PBXTextBookmark */; + 567162710EFD44370047EA2B /* PBXTextBookmark */ = 567162710EFD44370047EA2B /* PBXTextBookmark */; + 567162730EFD44600047EA2B /* PBXTextBookmark */ = 567162730EFD44600047EA2B /* PBXTextBookmark */; + 567162760EFD44CC0047EA2B /* PBXTextBookmark */ = 567162760EFD44CC0047EA2B /* PBXTextBookmark */; + 5671627A0EFD44FF0047EA2B /* PBXTextBookmark */ = 5671627A0EFD44FF0047EA2B /* PBXTextBookmark */; + 5671627D0EFD453E0047EA2B /* PBXTextBookmark */ = 5671627D0EFD453E0047EA2B /* PBXTextBookmark */; + 5671627F0EFD454C0047EA2B /* PBXTextBookmark */ = 5671627F0EFD454C0047EA2B /* PBXTextBookmark */; + 567162840EFD45840047EA2B /* PBXTextBookmark */ = 567162840EFD45840047EA2B /* PBXTextBookmark */; + 567162860EFD45A10047EA2B /* PBXTextBookmark */ = 567162860EFD45A10047EA2B /* PBXTextBookmark */; + 567162870EFD46170047EA2B /* PBXTextBookmark */ = 567162870EFD46170047EA2B /* PBXTextBookmark */; + 567162890EFD46400047EA2B /* PBXTextBookmark */ = 567162890EFD46400047EA2B /* PBXTextBookmark */; + 5671628E0EFD469C0047EA2B /* PBXTextBookmark */ = 5671628E0EFD469C0047EA2B /* PBXTextBookmark */; + 5671628F0EFD47060047EA2B /* PBXTextBookmark */ = 5671628F0EFD47060047EA2B /* PBXTextBookmark */; + 567162900EFD47060047EA2B /* PBXTextBookmark */ = 567162900EFD47060047EA2B /* PBXTextBookmark */; + 567162920EFD47860047EA2B /* PBXTextBookmark */ = 567162920EFD47860047EA2B /* PBXTextBookmark */; + 567162950EFD47A30047EA2B /* PBXTextBookmark */ = 567162950EFD47A30047EA2B /* PBXTextBookmark */; + 567162980EFD481E0047EA2B /* PBXTextBookmark */ = 567162980EFD481E0047EA2B /* PBXTextBookmark */; + 567162990EFD48370047EA2B /* PBXTextBookmark */ = 567162990EFD48370047EA2B /* PBXTextBookmark */; + 5671629C0EFD48C70047EA2B /* PBXTextBookmark */ = 5671629C0EFD48C70047EA2B /* PBXTextBookmark */; + 5671629E0EFD49280047EA2B /* PBXTextBookmark */ = 5671629E0EFD49280047EA2B /* PBXTextBookmark */; + 567162A00EFD49340047EA2B /* PBXTextBookmark */ = 567162A00EFD49340047EA2B /* PBXTextBookmark */; + 567162A20EFD4B480047EA2B /* PBXTextBookmark */ = 567162A20EFD4B480047EA2B /* PBXTextBookmark */; + 567162A40EFD4B8F0047EA2B /* PBXTextBookmark */ = 567162A40EFD4B8F0047EA2B /* PBXTextBookmark */; + 567162A60EFD4B9C0047EA2B /* PBXTextBookmark */ = 567162A60EFD4B9C0047EA2B /* PBXTextBookmark */; + 567162A80EFD4BB10047EA2B /* PBXTextBookmark */ = 567162A80EFD4BB10047EA2B /* PBXTextBookmark */; + 567162AB0EFD4CA80047EA2B /* PBXTextBookmark */ = 567162AB0EFD4CA80047EA2B /* PBXTextBookmark */; + 567162AE0EFD4CC90047EA2B /* PBXTextBookmark */ = 567162AE0EFD4CC90047EA2B /* PBXTextBookmark */; + 567162B00EFD4CE50047EA2B /* PBXTextBookmark */ = 567162B00EFD4CE50047EA2B /* PBXTextBookmark */; + 567162B20EFD4D3B0047EA2B /* PBXTextBookmark */ = 567162B20EFD4D3B0047EA2B /* PBXTextBookmark */; + 567162B40EFE612F0047EA2B /* PBXTextBookmark */ = 567162B40EFE612F0047EA2B /* PBXTextBookmark */; + 567162BA0EFE62450047EA2B /* PBXTextBookmark */ = 567162BA0EFE62450047EA2B /* PBXTextBookmark */; + 567162BC0EFE62870047EA2B /* PBXTextBookmark */ = 567162BC0EFE62870047EA2B /* PBXTextBookmark */; + 567162C70EFE646E0047EA2B /* PBXTextBookmark */ = 567162C70EFE646E0047EA2B /* PBXTextBookmark */; + 567162C80EFE646E0047EA2B /* PBXTextBookmark */ = 567162C80EFE646E0047EA2B /* PBXTextBookmark */; + 567162C90EFE646E0047EA2B /* PBXTextBookmark */ = 567162C90EFE646E0047EA2B /* PBXTextBookmark */; + 567162CA0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CA0EFE646E0047EA2B /* PBXTextBookmark */; + 567162CB0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CB0EFE646E0047EA2B /* PBXTextBookmark */; + 567162CC0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CC0EFE646E0047EA2B /* PBXTextBookmark */; + 567162CD0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CD0EFE646E0047EA2B /* PBXTextBookmark */; + 567162CE0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CE0EFE646E0047EA2B /* PBXTextBookmark */; + 567162CF0EFE646E0047EA2B /* PBXTextBookmark */ = 567162CF0EFE646E0047EA2B /* PBXTextBookmark */; + 567162D00EFE646E0047EA2B /* PBXTextBookmark */ = 567162D00EFE646E0047EA2B /* PBXTextBookmark */; + 567162D10EFE646E0047EA2B /* PBXTextBookmark */ = 567162D10EFE646E0047EA2B /* PBXTextBookmark */; + 567162D20EFE646E0047EA2B /* PBXTextBookmark */ = 567162D20EFE646E0047EA2B /* PBXTextBookmark */; + 567162D30EFE646E0047EA2B /* PBXTextBookmark */ = 567162D30EFE646E0047EA2B /* PBXTextBookmark */; + 567162D40EFE646E0047EA2B /* PBXTextBookmark */ = 567162D40EFE646E0047EA2B /* PBXTextBookmark */; + 567162D50EFE646E0047EA2B /* PBXTextBookmark */ = 567162D50EFE646E0047EA2B /* PBXTextBookmark */; + 567162D60EFE646E0047EA2B /* PBXTextBookmark */ = 567162D60EFE646E0047EA2B /* PBXTextBookmark */; + 567162D70EFE646E0047EA2B /* PBXTextBookmark */ = 567162D70EFE646E0047EA2B /* PBXTextBookmark */; + 567162D90EFE64740047EA2B /* PBXTextBookmark */ = 567162D90EFE64740047EA2B /* PBXTextBookmark */; + 567162DC0EFE64960047EA2B /* PBXTextBookmark */ = 567162DC0EFE64960047EA2B /* PBXTextBookmark */; + 567162E40EFE66560047EA2B /* PBXTextBookmark */ = 567162E40EFE66560047EA2B /* PBXTextBookmark */; + 567162E50EFE66560047EA2B /* PBXTextBookmark */ = 567162E50EFE66560047EA2B /* PBXTextBookmark */; + 567162E60EFE66560047EA2B /* PBXTextBookmark */ = 567162E60EFE66560047EA2B /* PBXTextBookmark */; + 567162E70EFE66560047EA2B /* PBXTextBookmark */ = 567162E70EFE66560047EA2B /* PBXTextBookmark */; + 567162E80EFE66560047EA2B /* PBXTextBookmark */ = 567162E80EFE66560047EA2B /* PBXTextBookmark */; + 567162ED0EFE66E70047EA2B /* PBXTextBookmark */ = 567162ED0EFE66E70047EA2B /* PBXTextBookmark */; + 567162EE0EFE66E70047EA2B /* PBXTextBookmark */ = 567162EE0EFE66E70047EA2B /* PBXTextBookmark */; + 567162EF0EFE66E70047EA2B /* PBXTextBookmark */ = 567162EF0EFE66E70047EA2B /* PBXTextBookmark */; + 567162F00EFE66E70047EA2B /* PBXTextBookmark */ = 567162F00EFE66E70047EA2B /* PBXTextBookmark */; + 567162F10EFE66E70047EA2B /* PBXTextBookmark */ = 567162F10EFE66E70047EA2B /* PBXTextBookmark */; + 567162F20EFE66E70047EA2B /* PBXTextBookmark */ = 567162F20EFE66E70047EA2B /* PBXTextBookmark */; + 567162F30EFE66E70047EA2B /* PBXTextBookmark */ = 567162F30EFE66E70047EA2B /* PBXTextBookmark */; + 567162F40EFE66E70047EA2B /* PBXTextBookmark */ = 567162F40EFE66E70047EA2B /* PBXTextBookmark */; + 567162F50EFE66E70047EA2B /* PBXTextBookmark */ = 567162F50EFE66E70047EA2B /* PBXTextBookmark */; + 567162F70EFE672B0047EA2B /* PBXTextBookmark */ = 567162F70EFE672B0047EA2B /* PBXTextBookmark */; + 567162FA0EFE679F0047EA2B /* PBXTextBookmark */ = 567162FA0EFE679F0047EA2B /* PBXTextBookmark */; + 567162FC0EFE67B40047EA2B /* PBXTextBookmark */ = 567162FC0EFE67B40047EA2B /* PBXTextBookmark */; + 567163050EFE67DE0047EA2B /* PBXTextBookmark */ = 567163050EFE67DE0047EA2B /* PBXTextBookmark */; + 567163060EFE67DE0047EA2B /* PBXTextBookmark */ = 567163060EFE67DE0047EA2B /* PBXTextBookmark */; + 567163080EFE68230047EA2B /* PBXTextBookmark */ = 567163080EFE68230047EA2B /* PBXTextBookmark */; + 5671630A0EFE68400047EA2B /* PBXTextBookmark */ = 5671630A0EFE68400047EA2B /* PBXTextBookmark */; + 5671630B0EFE688B0047EA2B /* PBXTextBookmark */ = 5671630B0EFE688B0047EA2B /* PBXTextBookmark */; + }; + sourceControlManager = 567161F90EFD3E860047EA2B /* Source Control */; + userBuildSettings = { + }; + }; + 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1412, 736}}"; + sepNavSelRange = "{173, 0}"; + sepNavVisRange = "{34, 1178}"; + }; + }; + 567161F40EFD3E560047EA2B /* sc3ctrl */ = { + isa = PBXExecutable; + activeArgIndices = ( + ); + argumentStrings = ( + ); + autoAttachOnCrash = 1; + breakpointsEnabled = 0; + configStateDict = { + }; + customDataFormattersEnabled = 1; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = ""; + enableDebugStr = 1; + environmentEntries = ( + ); + executableSystemSymbolLevel = 0; + executableUserSymbolLevel = 0; + libgmallocEnabled = 0; + name = sc3ctrl; + sourceDirectories = ( + ); + }; + 567161F90EFD3E860047EA2B /* Source Control */ = { + isa = PBXSourceControlManager; + fallbackIsa = XCSourceControlManager; + isSCMEnabled = 0; + scmConfiguration = { + }; + }; + 567161FA0EFD3E860047EA2B /* Code sense */ = { + isa = PBXCodeSenseManager; + indexTemplatePath = ""; + }; + 567162270EFD3F440047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 450; + vrLoc = 0; + }; + 5671622D0EFD3F600047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162370EFD3F6B0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 567162450EFD40190047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 542; + vrLoc = 0; + }; + 567162470EFD401D0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 5671624A0EFD40280047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 5671624B0EFD40310047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 238; + vrLoc = 0; + }; + 5671624C0EFD40330047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671624E0EFD40390047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 567162530EFD407D0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162560EFD408D0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 450; + vrLoc = 0; + }; + 567162570EFD40950047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 238; + vrLoc = 0; + }; + 567162580EFD40990047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 2"; + rLen = 0; + rLoc = 55; + rType = 0; + vrLen = 450; + vrLoc = 0; + }; + 5671625C0EFD40CB0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 450; + vrLoc = 0; + }; + 5671625D0EFD40CE0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 238; + vrLoc = 0; + }; + 5671625E0EFD40D10047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162630EFD424C0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 450; + vrLoc = 0; + }; + 567162640EFD424E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 185; + vrLoc = 58; + }; + 567162650EFD424F0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162660EFD42620047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162680EFD43A70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671626D0EFD43E90047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671626E0EFD441F0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162710EFD44370047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162730EFD44600047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162760EFD44CC0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671627A0EFD44FF0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671627D0EFD453E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 5671627F0EFD454C0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162840EFD45840047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162860EFD45A10047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162870EFD46170047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162890EFD46400047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 5671628E0EFD469C0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 648; + vrLoc = 0; + }; + 5671628F0EFD47060047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 5"; + rLen = 0; + rLoc = 755; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162900EFD47060047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 5"; + rLen = 0; + rLoc = 755; + rType = 0; + vrLen = 531; + vrLoc = 0; + }; + 567162920EFD47860047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 9"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 574; + vrLoc = 0; + }; + 567162950EFD47A30047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 12"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 479; + vrLoc = 238; + }; + 567162980EFD481E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 14"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 437; + vrLoc = 238; + }; + 567162990EFD48370047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 14"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 437; + vrLoc = 238; + }; + 5671629C0EFD48C70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 11"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 747; + vrLoc = 0; + }; + 5671629E0EFD49280047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 18"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 805; + vrLoc = 0; + }; + 567162A00EFD49340047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 11"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 803; + vrLoc = 0; + }; + 567162A20EFD4B480047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 21"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 767; + vrLoc = 0; + }; + 567162A40EFD4B8F0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 689; + vrLoc = 0; + }; + 567162A60EFD4B9C0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 689; + vrLoc = 0; + }; + 567162A80EFD4BB10047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 717; + vrLoc = 0; + }; + 567162AB0EFD4CA80047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 11"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 897; + vrLoc = 0; + }; + 567162AE0EFD4CC90047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 11"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 930; + vrLoc = 0; + }; + 567162B00EFD4CE50047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 935; + vrLoc = 0; + }; + 567162B20EFD4D3B0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 929; + vrLoc = 0; + }; + 567162B40EFE612F0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 13"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 799; + vrLoc = 0; + }; + 567162BA0EFE62450047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 838; + vrLoc = 0; + }; + 567162BC0EFE62870047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1412, 650}}"; + sepNavSelRange = "{203, 0}"; + sepNavVisRange = "{0, 203}"; + }; + }; + 567162C70EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 162; + rType = 0; + vrLen = 194; + vrLoc = 0; + }; + 567162C80EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 22"; + rLen = 0; + rLoc = 1234; + rType = 0; + vrLen = 878; + vrLoc = 0; + }; + 567162C90EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 15"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162CA0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 148; + vrLoc = 0; + }; + 567162CB0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 15"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162CC0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 148; + vrLoc = 0; + }; + 567162CD0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 15"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162CE0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 148; + vrLoc = 0; + }; + 567162CF0EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 15"; + rLen = 0; + rLoc = 1199; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162D00EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 148; + vrLoc = 0; + }; + 567162D10EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162D20EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 153; + vrLoc = 0; + }; + 567162D30EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 10"; + rLen = 0; + rLoc = 1194; + rType = 0; + vrLen = 917; + vrLoc = 0; + }; + 567162D40EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 192; + vrLoc = 0; + }; + 567162D50EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 22"; + rLen = 0; + rLoc = 1234; + rType = 0; + vrLen = 878; + vrLoc = 0; + }; + 567162D60EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 162; + rType = 0; + vrLen = 194; + vrLoc = 0; + }; + 567162D70EFE646E0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 29"; + rLen = 0; + rLoc = 1234; + rType = 0; + vrLen = 1063; + vrLoc = 0; + }; + 567162D90EFE64740047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 24"; + rLen = 0; + rLoc = 1234; + rType = 0; + vrLen = 1064; + vrLoc = 0; + }; + 567162DC0EFE64960047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 32"; + rLen = 0; + rLoc = 911; + rType = 0; + vrLen = 1083; + vrLoc = 0; + }; + 567162E40EFE66560047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162E50EFE66560047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 35"; + rLen = 0; + rLoc = 1062; + rType = 0; + vrLen = 1113; + vrLoc = 0; + }; + 567162E60EFE66560047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 35"; + rLen = 0; + rLoc = 1062; + rType = 0; + vrLen = 1113; + vrLoc = 0; + }; + 567162E70EFE66560047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162E80EFE66560047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 5"; + rLen = 0; + rLoc = 116; + rType = 0; + vrLen = 1178; + vrLoc = 0; + }; + 567162ED0EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162EE0EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 37"; + rLen = 0; + rLoc = 1164; + rType = 0; + vrLen = 1151; + vrLoc = 34; + }; + 567162EF0EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 37"; + rLen = 0; + rLoc = 1164; + rType = 0; + vrLen = 1151; + vrLoc = 34; + }; + 567162F00EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162F10EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 37"; + rLen = 0; + rLoc = 1164; + rType = 0; + vrLen = 1151; + vrLoc = 34; + }; + 567162F20EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162F30EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 37"; + rLen = 0; + rLoc = 1164; + rType = 0; + vrLen = 1151; + vrLoc = 34; + }; + 567162F40EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162BF0EFE62AD0047EA2B /* sc3ctrl.h */; + name = "sc3ctrl.h: 10"; + rLen = 0; + rLoc = 203; + rType = 0; + vrLen = 203; + vrLoc = 0; + }; + 567162F50EFE66E70047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 37"; + rLen = 0; + rLoc = 1164; + rType = 0; + vrLen = 1149; + vrLoc = 34; + }; + 567162F70EFE672B0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 34"; + rLen = 0; + rLoc = 986; + rType = 0; + vrLen = 1148; + vrLoc = 34; + }; + 567162FA0EFE679F0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 4; + rLoc = 179; + rType = 0; + vrLen = 1186; + vrLoc = 34; + }; + 567162FC0EFE67B40047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 08FB7796FE84155DC02AAC07 /* sc3ctrl.m */; + name = "sc3ctrl.m: 7"; + rLen = 0; + rLoc = 160; + rType = 0; + vrLen = 1178; + vrLoc = 34; + }; + 567162FD0EFE67C30047EA2B /* sc3ctrl.m */ = { + isa = PBXFileReference; + name = sc3ctrl.m; + path = /Developer/Projects/sc3ctrl/sc3ctrl.m; + sourceTree = ""; + }; + 567163030EFE67C70047EA2B /* sc3ctrl.m */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.objc; + name = sc3ctrl.m; + path = /Developer/Projects/sc3ctrl/sc3ctrl.m; + sourceTree = ""; + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1412, 736}}"; + sepNavSelRange = "{220, 0}"; + sepNavVisRange = "{0, 1195}"; + }; + }; + 567163050EFE67DE0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567162FD0EFE67C30047EA2B /* sc3ctrl.m */; + rLen = 1; + rLoc = 38; + rType = 1; + }; + 567163060EFE67DE0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567163030EFE67C70047EA2B /* sc3ctrl.m */; + name = "sc3ctrl.m: 6"; + rLen = 0; + rLoc = 123; + rType = 0; + vrLen = 1196; + vrLoc = 0; + }; + 567163080EFE68230047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567163030EFE67C70047EA2B /* sc3ctrl.m */; + name = "sc3ctrl.m: 23"; + rLen = 0; + rLoc = 661; + rType = 0; + vrLen = 1202; + vrLoc = 0; + }; + 5671630A0EFE68400047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567163030EFE67C70047EA2B /* sc3ctrl.m */; + name = "sc3ctrl.m: 34"; + rLen = 0; + rLoc = 986; + rType = 0; + vrLen = 1208; + vrLoc = 0; + }; + 5671630B0EFE688B0047EA2B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 567163030EFE67C70047EA2B /* sc3ctrl.m */; + name = "sc3ctrl.m: 9"; + rLen = 0; + rLoc = 220; + rType = 0; + vrLen = 1195; + vrLoc = 0; + }; + 8DD76F960486AA7600D96B5E /* sc3ctrl */ = { + activeExec = 0; + executables = ( + 567161F40EFD3E560047EA2B /* sc3ctrl */, + ); + }; +} diff --git a/sc3ctrl.xcodeproj/rfw21.perspectivev3 b/sc3ctrl.xcodeproj/rfw21.perspectivev3 new file mode 100644 index 0000000..6cf535e --- /dev/null +++ b/sc3ctrl.xcodeproj/rfw21.perspectivev3 @@ -0,0 +1,1505 @@ + + + + + ActivePerspectiveName + Project + AllowedModules + + + BundleLoadPath + + MaxInstances + n + Module + PBXSmartGroupTreeModule + Name + Groups and Files Outline View + + + BundleLoadPath + + MaxInstances + n + Module + PBXNavigatorGroup + Name + Editor + + + BundleLoadPath + + MaxInstances + n + Module + XCTaskListModule + Name + Task List + + + BundleLoadPath + + MaxInstances + n + Module + XCDetailModule + Name + File and Smart Group Detail Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXBuildResultsModule + Name + Detailed Build Results Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXProjectFindModule + Name + Project Batch Find Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCProjectFormatConflictsModule + Name + Project Format Conflicts List + + + BundleLoadPath + + MaxInstances + n + Module + PBXBookmarksModule + Name + Bookmarks Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXClassBrowserModule + Name + Class Browser + + + BundleLoadPath + + MaxInstances + n + Module + PBXCVSModule + Name + Source Code Control Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXDebugBreakpointsModule + Name + Debug Breakpoints Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCDockableInspector + Name + Inspector + + + BundleLoadPath + + MaxInstances + n + Module + PBXOpenQuicklyModule + Name + Open Quickly Tool + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugSessionModule + Name + Debugger + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugCLIModule + Name + Debug Console + + + BundleLoadPath + + MaxInstances + n + Module + XCSnapshotModule + Name + Snapshots Tool + + + BundlePath + /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources + Description + AIODescriptionKey + DockingSystemVisible + + Extension + perspectivev3 + FavBarConfig + + PBXProjectModuleGUID + 567162070EFD3EA50047EA2B + XCBarModuleItemNames + + XCBarModuleItems + + + FirstTimeWindowDisplayed + + Identifier + com.apple.perspectives.project.defaultV3 + MajorVersion + 34 + MinorVersion + 0 + Name + All-In-One + Notifications + + OpenEditors + + PerspectiveWidths + + 1050 + 1050 + + Perspectives + + + ChosenToolbarItems + + XCToolbarPerspectiveControl + NSToolbarSeparatorItem + active-combo-popup + action + NSToolbarFlexibleSpaceItem + build-and-go + com.apple.ide.PBXToolbarStopButton + NSToolbarFlexibleSpaceItem + toggle-editor + get-info + com.apple.pbx.toolbar.searchfield + + ControllerClassBaseName + + IconName + WindowOfProject + Identifier + perspective.project + IsVertical + + Layout + + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C08E77C0454961000C914BD + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CA23ED40692098700951B8B + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 185 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 08FB7794FE84155DC02AAC07 + 08FB7795FE84155DC02AAC07 + C6859EA2029092E104C91782 + 08FB779DFE84155DC02AAC07 + 08FB779EFE84155DC02AAC07 + 1AB674ADFE9D54B511CA2CBB + 567162800EFD45740047EA2B + 1C37FBAC04509CD000000102 + 567162330EFD3F670047EA2B + 567162880EFD46400047EA2B + 08FB779EFE84155DC02AAC07 + 567162800EFD45740047EA2B + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 24 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {185, 876}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + + GeometryConfiguration + + Frame + {{0, 0}, {202, 894}} + GroupTreeTableConfiguration + + MainColumn + 185 + + RubberWindowFrame + 0 93 1680 935 0 0 1680 1028 + + Module + PBXSmartGroupTreeModule + Proportion + 202pt + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 567162000EFD3EA50047EA2B + PBXProjectModuleLabel + sc3ctrl.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 567162010EFD3EA50047EA2B + PBXProjectModuleLabel + sc3ctrl.m + _historyCapacity + 0 + bookmark + 5671630B0EFE688B0047EA2B + history + + 567162ED0EFE66E70047EA2B + 567163050EFE67DE0047EA2B + + prevStack + + 567162C90EFE646E0047EA2B + 567162CA0EFE646E0047EA2B + 567162CB0EFE646E0047EA2B + 567162CC0EFE646E0047EA2B + 567162CD0EFE646E0047EA2B + 567162CE0EFE646E0047EA2B + 567162CF0EFE646E0047EA2B + 567162D00EFE646E0047EA2B + 567162D10EFE646E0047EA2B + 567162D20EFE646E0047EA2B + 567162D30EFE646E0047EA2B + 567162D40EFE646E0047EA2B + 567162D50EFE646E0047EA2B + 567162D60EFE646E0047EA2B + 567162E60EFE66560047EA2B + 567162E70EFE66560047EA2B + 567162EF0EFE66E70047EA2B + 567162F00EFE66E70047EA2B + 567162F10EFE66E70047EA2B + 567162F20EFE66E70047EA2B + 567162F30EFE66E70047EA2B + 567162F40EFE66E70047EA2B + + + SplitCount + 1 + + StatusBarVisibility + + XCSharingToken + com.apple.Xcode.CommonNavigatorGroupSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {1473, 682}} + RubberWindowFrame + 0 93 1680 935 0 0 1680 1028 + + Module + PBXNavigatorGroup + Proportion + 682pt + + + Proportion + 207pt + Tabs + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA23EDF0692099D00951B8B + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{10, 27}, {1473, 180}} + RubberWindowFrame + 0 93 1680 935 0 0 1680 1028 + + Module + XCDetailModule + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA23EE00692099D00951B8B + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{10, 27}, {843, 180}} + + Module + PBXProjectFindModule + + + ContentConfiguration + + PBXCVSModuleFilterTypeKey + 1032 + PBXProjectModuleGUID + 1CA23EE10692099D00951B8B + PBXProjectModuleLabel + SCM Results + + GeometryConfiguration + + Frame + {{10, 31}, {603, 297}} + + Module + PBXCVSModule + + + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build + XCBuildResultsTrigger_Collapse + 1021 + XCBuildResultsTrigger_Open + 1011 + + GeometryConfiguration + + Frame + {{10, 27}, {1473, 180}} + + Module + PBXBuildResultsModule + + + + + Proportion + 1473pt + + + Name + Project + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + XCModuleDock + PBXNavigatorGroup + XCDockableTabModule + XCDetailModule + PBXProjectFindModule + PBXCVSModule + PBXBuildResultsModule + + TableOfContents + + 567162380EFD3F6B0047EA2B + 1CA23ED40692098700951B8B + 567162390EFD3F6B0047EA2B + 567162000EFD3EA50047EA2B + 5671623A0EFD3F6B0047EA2B + 1CA23EDF0692099D00951B8B + 1CA23EE00692099D00951B8B + 1CA23EE10692099D00951B8B + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.defaultV3 + + + ChosenToolbarItems + + XCToolbarPerspectiveControl + NSToolbarSeparatorItem + active-combo-popup + NSToolbarFlexibleSpaceItem + build-and-go + com.apple.ide.PBXToolbarStopButton + debugger-restart-executable + debugger-pause + debugger-step-over + debugger-step-into + debugger-step-out + debugger-enable-breakpoints + NSToolbarFlexibleSpaceItem + com.apple.ide.XCBreakpointsToolbarItem + clear-log + + ControllerClassBaseName + PBXDebugSessionModule + IconName + DebugTabIcon + Identifier + perspective.debug + IsVertical + + Layout + + + ContentConfiguration + + PBXProjectModuleGUID + 1CCC7628064C1048000F2A68 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {1050, 205}} + + Module + PBXDebugCLIModule + Proportion + 205pt + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {512, 150}} + {{512, 0}, {538, 150}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {1050, 150}} + {{0, 150}, {1050, 159}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1CCC7629064C1048000F2A68 + PBXProjectModuleLabel + Debug + + GeometryConfiguration + + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 210}, {1050, 309}} + PBXDebugSessionStackFrameViewKey + + DebugVariablesTableConfiguration + + Name + 120 + Value + 85 + Summary + 308 + + Frame + {{512, 0}, {538, 150}} + + + Module + PBXDebugSessionModule + Proportion + 309pt + + + Name + Debug + ServiceClasses + + XCModuleDock + PBXDebugCLIModule + PBXDebugSessionModule + PBXDebugProcessAndThreadModule + PBXDebugProcessViewModule + PBXDebugThreadViewModule + PBXDebugStackFrameViewModule + PBXNavigatorGroup + + TableOfContents + + 5671623B0EFD3F6B0047EA2B + 1CCC7628064C1048000F2A68 + 1CCC7629064C1048000F2A68 + 5671623C0EFD3F6B0047EA2B + 5671623D0EFD3F6B0047EA2B + 5671623E0EFD3F6B0047EA2B + 5671623F0EFD3F6B0047EA2B + 567162350EFD3F670047EA2B + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + + + PerspectivesBarVisible + + ShelfIsVisible + + SourceDescription + file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecification.xcperspec' + StatusbarIsVisible + + TimeStamp + 0.0 + ToolbarDisplayMode + 1 + ToolbarIsVisible + + ToolbarSizeMode + 1 + Type + Perspectives + UpdateMessage + + WindowJustification + 5 + WindowOrderList + + /Developer/Projects/sc3ctrl/sc3ctrl.xcodeproj + + WindowString + 0 93 1680 935 0 0 1680 1028 + WindowToolsV3 + + + Identifier + windowTool.debugger + Layout + + + Dock + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {317, 164}} + {{317, 0}, {377, 164}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {694, 164}} + {{0, 164}, {694, 216}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1C162984064C10D400B95A72 + PBXProjectModuleLabel + Debug - GLUTExamples (Underwater) + + GeometryConfiguration + + DebugConsoleDrawerSize + {100, 120} + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 0}, {694, 380}} + RubberWindowFrame + 321 238 694 422 0 0 1440 878 + + Module + PBXDebugSessionModule + Proportion + 100% + + + Proportion + 100% + + + Name + Debugger + ServiceClasses + + PBXDebugSessionModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CD10A99069EF8BA00B06720 + 1C0AD2AB069F1E9B00FABCE6 + 1C162984064C10D400B95A72 + 1C0AD2AC069F1E9B00FABCE6 + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + WindowString + 321 238 694 422 0 0 1440 878 + WindowToolGUID + 1CD10A99069EF8BA00B06720 + WindowToolIsVisible + 0 + + + Identifier + windowTool.build + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528F0623707200166675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD052900623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {500, 215}} + RubberWindowFrame + 192 257 500 500 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 218pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build + + GeometryConfiguration + + Frame + {{0, 222}, {500, 236}} + RubberWindowFrame + 192 257 500 500 0 0 1280 1002 + + Module + PBXBuildResultsModule + Proportion + 236pt + + + Proportion + 458pt + + + Name + Build Results + ServiceClasses + + PBXBuildResultsModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAA5065D492600B07095 + 1C78EAA6065D492600B07095 + 1CD0528F0623707200166675 + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.buildV3 + WindowString + 192 257 500 500 0 0 1280 1002 + + + Identifier + windowTool.find + Layout + + + Dock + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CDD528C0622207200134675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD0528D0623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {781, 167}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXNavigatorGroup + Proportion + 781pt + + + Proportion + 50% + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528E0623707200166675 + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{8, 0}, {773, 254}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXProjectFindModule + Proportion + 50% + + + Proportion + 428pt + + + Name + Project Find + ServiceClasses + + PBXProjectFindModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D57069F1CE1000CFCEE + 1C530D58069F1CE1000CFCEE + 1C530D59069F1CE1000CFCEE + 1CDD528C0622207200134675 + 1C530D5A069F1CE1000CFCEE + 1CE0B1FE06471DED0097A5F4 + 1CD0528E0623707200166675 + + WindowString + 62 385 781 470 0 0 1440 878 + WindowToolGUID + 1C530D57069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + windowTool.snapshots + Layout + + + Dock + + + Module + XCSnapshotModule + Proportion + 100% + + + Proportion + 100% + + + Name + Snapshots + ServiceClasses + + XCSnapshotModule + + StatusbarIsVisible + Yes + ToolbarConfiguration + xcode.toolbar.config.snapshots + WindowString + 315 824 300 550 0 0 1440 878 + WindowToolIsVisible + Yes + + + Identifier + windowTool.debuggerConsole + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAAC065D492600B07095 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {700, 358}} + RubberWindowFrame + 149 87 700 400 0 0 1440 878 + + Module + PBXDebugCLIModule + Proportion + 358pt + + + Proportion + 358pt + + + Name + Debugger Console + ServiceClasses + + PBXDebugCLIModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D5B069F1CE1000CFCEE + 1C530D5C069F1CE1000CFCEE + 1C78EAAC065D492600B07095 + + ToolbarConfiguration + xcode.toolbar.config.consoleV3 + WindowString + 149 87 440 400 0 0 1440 878 + WindowToolGUID + 1C530D5B069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + windowTool.scm + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAB2065D492600B07095 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1C78EAB3065D492600B07095 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {452, 0}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 0pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD052920623707200166675 + PBXProjectModuleLabel + SCM + + GeometryConfiguration + + ConsoleFrame + {{0, 259}, {452, 0}} + Frame + {{0, 7}, {452, 259}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + TableConfiguration + + Status + 30 + FileName + 199 + Path + 197.09500122070312 + + TableFrame + {{0, 0}, {452, 250}} + + Module + PBXCVSModule + Proportion + 262pt + + + Proportion + 266pt + + + Name + SCM + ServiceClasses + + PBXCVSModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAB4065D492600B07095 + 1C78EAB5065D492600B07095 + 1C78EAB2065D492600B07095 + 1CD052920623707200166675 + + ToolbarConfiguration + xcode.toolbar.config.scmV3 + WindowString + 743 379 452 308 0 0 1280 1002 + + + Identifier + windowTool.breakpoints + IsVertical + 0 + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + no + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 168 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 1C77FABC04509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {168, 350}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 0 + + GeometryConfiguration + + Frame + {{0, 0}, {185, 368}} + GroupTreeTableConfiguration + + MainColumn + 168 + + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 185pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA1AED706398EBD00589147 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{190, 0}, {554, 368}} + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + XCDetailModule + Proportion + 554pt + + + Proportion + 368pt + + + MajorVersion + 3 + MinorVersion + 0 + Name + Breakpoints + ServiceClasses + + PBXSmartGroupTreeModule + XCDetailModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CDDB66807F98D9800BB5817 + 1CDDB66907F98D9800BB5817 + 1CE0B1FE06471DED0097A5F4 + 1CA1AED706398EBD00589147 + + ToolbarConfiguration + xcode.toolbar.config.breakpointsV3 + WindowString + 315 424 744 409 0 0 1440 878 + WindowToolGUID + 1CDDB66807F98D9800BB5817 + WindowToolIsVisible + 1 + + + Identifier + windowTool.debugAnimator + Layout + + + Dock + + + Module + PBXNavigatorGroup + Proportion + 100% + + + Proportion + 100% + + + Name + Debug Visualizer + ServiceClasses + + PBXNavigatorGroup + + StatusbarIsVisible + 1 + ToolbarConfiguration + xcode.toolbar.config.debugAnimatorV3 + WindowString + 100 100 700 500 0 0 1280 1002 + + + Identifier + windowTool.bookmarks + Layout + + + Dock + + + Module + PBXBookmarksModule + Proportion + 166pt + + + Proportion + 166pt + + + Name + Bookmarks + ServiceClasses + + PBXBookmarksModule + + StatusbarIsVisible + 0 + WindowString + 538 42 401 187 0 0 1280 1002 + + + Identifier + windowTool.projectFormatConflicts + Layout + + + Dock + + + Module + XCProjectFormatConflictsModule + Proportion + 100% + + + Proportion + 100% + + + Name + Project Format Conflicts + ServiceClasses + + XCProjectFormatConflictsModule + + StatusbarIsVisible + 0 + WindowContentMinSize + 450 300 + WindowString + 50 850 472 307 0 0 1440 877 + + + Identifier + windowTool.classBrowser + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + OptionsSetName + Hierarchy, all classes + PBXProjectModuleGUID + 1CA6456E063B45B4001379D8 + PBXProjectModuleLabel + Class Browser - NSObject + + GeometryConfiguration + + ClassesFrame + {{0, 0}, {369, 96}} + ClassesTreeTableConfiguration + + PBXClassNameColumnIdentifier + 208 + PBXClassBookColumnIdentifier + 22 + + Frame + {{0, 0}, {616, 353}} + MembersFrame + {{0, 105}, {369, 395}} + MembersTreeTableConfiguration + + PBXMemberTypeIconColumnIdentifier + 22 + PBXMemberNameColumnIdentifier + 216 + PBXMemberTypeColumnIdentifier + 94 + PBXMemberBookColumnIdentifier + 22 + + PBXModuleWindowStatusBarHidden2 + 1 + RubberWindowFrame + 597 125 616 374 0 0 1280 1002 + + Module + PBXClassBrowserModule + Proportion + 354pt + + + Proportion + 354pt + + + Name + Class Browser + ServiceClasses + + PBXClassBrowserModule + + StatusbarIsVisible + 0 + TableOfContents + + 1C78EABA065D492600B07095 + 1C78EABB065D492600B07095 + 1CA6456E063B45B4001379D8 + + ToolbarConfiguration + xcode.toolbar.config.classbrowser + WindowString + 597 125 616 374 0 0 1280 1002 + + + Identifier + windowTool.refactoring + IncludeInToolsMenu + 0 + Layout + + + Dock + + + BecomeActive + 1 + GeometryConfiguration + + Frame + {0, 0}, {500, 335} + RubberWindowFrame + {0, 0}, {500, 335} + + Module + XCRefactoringModule + Proportion + 100% + + + Proportion + 100% + + + Name + Refactoring + ServiceClasses + + XCRefactoringModule + + WindowString + 200 200 500 356 0 0 1920 1200 + + + + diff --git a/sc3ctrl_Prefix.pch b/sc3ctrl_Prefix.pch new file mode 100644 index 0000000..e8cf2e6 --- /dev/null +++ b/sc3ctrl_Prefix.pch @@ -0,0 +1,7 @@ +// +// Prefix header for all source files of the 'sc3ctrl' target in the 'sc3ctrl' project. +// + +#ifdef __OBJC__ + #import +#endif diff --git a/supercollider/SC3Controller.sc b/supercollider/SC3Controller.sc new file mode 100644 index 0000000..c77ed6e --- /dev/null +++ b/supercollider/SC3Controller.sc @@ -0,0 +1,18 @@ +// OSCresponderNode(nil, '/testme', { |...args| args.postln }).add + +SC3Controller { + classvar nodes; + + *initClass { + nodes = List[]; + + Platform.case(\osx) { + StartUp.add { + var node; + node = OSCresponderNode(nil, '/sc3ctrl/cmd') { |t, r, msg| + msg[1].asString.interpretPrint + }.add + } + } + } +} \ No newline at end of file