From 449838d04c32b28ac51d8b6619ebef052cf0156b Mon Sep 17 00:00:00 2001 From: Krisjanis Rijnieks Date: Mon, 25 Jan 2016 16:50:41 +0100 Subject: [PATCH] Add `CameraSource` example Based on thoughts about making the addon as lighweight as possible. One of possible future steps - do the same with video and image sources, leaving more space for user interface related issues. --- example-camera/Makefile | 13 + example-camera/Project.xcconfig | 17 + example-camera/addons.make | 4 + example-camera/bin/.gitignore | 4 + example-camera/bin/data/defaultSurfaces.xml | 36 + .../example-camera.xcodeproj/project.pbxproj | 1349 +++++++++++++++++ .../contents.xcworkspacedata | 7 + .../example-camera.xcscmblueprint | 30 + .../xcshareddata/example.xcscmblueprint | 30 + .../UserInterfaceState.xcuserstate | Bin 0 -> 108619 bytes .../xcschemes/example-camera Debug.xcscheme | 91 ++ .../xcschemes/example-camera Release.xcscheme | 91 ++ .../xcschemes/xcschememanagement.plist | 27 + example-camera/openFrameworks-Info.plist | 22 + example-camera/src/CameraSource.cpp | 45 + example-camera/src/CameraSource.h | 24 + example-camera/src/main.cpp | 24 + example-camera/src/ofApp.cpp | 12 + example-camera/src/ofApp.h | 21 + 19 files changed, 1847 insertions(+) create mode 100644 example-camera/Makefile create mode 100644 example-camera/Project.xcconfig create mode 100644 example-camera/addons.make create mode 100644 example-camera/bin/.gitignore create mode 100755 example-camera/bin/data/defaultSurfaces.xml create mode 100644 example-camera/example-camera.xcodeproj/project.pbxproj create mode 100644 example-camera/example-camera.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example-camera.xcscmblueprint create mode 100644 example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example.xcscmblueprint create mode 100644 example-camera/example-camera.xcodeproj/project.xcworkspace/xcuserdata/kr15h.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Debug.xcscheme create mode 100644 example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Release.xcscheme create mode 100644 example-camera/example-camera.xcodeproj/xcuserdata/kr15h.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 example-camera/openFrameworks-Info.plist create mode 100644 example-camera/src/CameraSource.cpp create mode 100644 example-camera/src/CameraSource.h create mode 100644 example-camera/src/main.cpp create mode 100644 example-camera/src/ofApp.cpp create mode 100644 example-camera/src/ofApp.h diff --git a/example-camera/Makefile b/example-camera/Makefile new file mode 100644 index 0000000..8d8e4c0 --- /dev/null +++ b/example-camera/Makefile @@ -0,0 +1,13 @@ +# Attempt to load a config.make file. +# If none is found, project defaults in config.project.make will be used. +ifneq ($(wildcard config.make),) + include config.make +endif + +# make sure the the OF_ROOT location is defined +ifndef OF_ROOT + OF_ROOT=$(realpath ../../..) +endif + +# call the project makefile! +include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk diff --git a/example-camera/Project.xcconfig b/example-camera/Project.xcconfig new file mode 100644 index 0000000..e570b15 --- /dev/null +++ b/example-camera/Project.xcconfig @@ -0,0 +1,17 @@ +//THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT. +//THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED +OF_PATH = ../../.. + +//THIS HAS ALL THE HEADER AND LIBS FOR OF CORE +#include "../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig" + +//ICONS - NEW IN 0072 +ICON_NAME_DEBUG = icon-debug.icns +ICON_NAME_RELEASE = icon.icns +ICON_FILE_PATH = $(OF_PATH)/libs/openFrameworksCompiled/project/osx/ + +//IF YOU WANT AN APP TO HAVE A CUSTOM ICON - PUT THEM IN YOUR DATA FOLDER AND CHANGE ICON_FILE_PATH to: +//ICON_FILE_PATH = bin/data/ + +OTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_CORE_FRAMEWORKS) +HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) diff --git a/example-camera/addons.make b/example-camera/addons.make new file mode 100644 index 0000000..070b326 --- /dev/null +++ b/example-camera/addons.make @@ -0,0 +1,4 @@ +ofxPiMapper +ofxIO +ofxXmlSettings +ofxGui diff --git a/example-camera/bin/.gitignore b/example-camera/bin/.gitignore new file mode 100644 index 0000000..44fbbc9 --- /dev/null +++ b/example-camera/bin/.gitignore @@ -0,0 +1,4 @@ +*.app +data/*.jpg +data/settings.xml +data/surfaces.xml diff --git a/example-camera/bin/data/defaultSurfaces.xml b/example-camera/bin/data/defaultSurfaces.xml new file mode 100755 index 0000000..fc48ade --- /dev/null +++ b/example-camera/bin/data/defaultSurfaces.xml @@ -0,0 +1,36 @@ + + + + + 415.000000000 + 51.000000000 + + + 581.000000000 + 388.000000000 + + + 183.000000000 + 357.000000000 + + + + + 0.556249976 + 0.108333334 + + + 0.862500012 + 0.941666663 + + + 0.118749999 + 0.862500012 + + + + fbo + Camera Source + + + diff --git a/example-camera/example-camera.xcodeproj/project.pbxproj b/example-camera/example-camera.xcodeproj/project.pbxproj new file mode 100644 index 0000000..372bdb1 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/project.pbxproj @@ -0,0 +1,1349 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 391717EF1B08FFDA00F9A484 /* SetApplicationStateCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 391717ED1B08FFDA00F9A484 /* SetApplicationStateCmd.cpp */; }; + 391717F31B0A8A7300F9A484 /* MvAllTexCoordsCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 391717F11B0A8A7300F9A484 /* MvAllTexCoordsCmd.cpp */; }; + 391717F71B0BCBB500F9A484 /* MvTexCoordCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 391717F51B0BCBB500F9A484 /* MvTexCoordCmd.cpp */; }; + 3926483B192224DA0008A7F5 /* ofxXmlSettings.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39264839192224DA0008A7F5 /* ofxXmlSettings.cpp */; }; + 39264841192224F90008A7F5 /* tinyxml.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3926483D192224F90008A7F5 /* tinyxml.cpp */; }; + 39264842192224F90008A7F5 /* tinyxmlerror.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3926483F192224F90008A7F5 /* tinyxmlerror.cpp */; }; + 39264843192224F90008A7F5 /* tinyxmlparser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39264840192224F90008A7F5 /* tinyxmlparser.cpp */; }; + 392651711C5429C600C54844 /* HomographyHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 392651701C5429C600C54844 /* HomographyHelper.cpp */; }; + 3933D5D319BB87BD000ACA55 /* ofxBaseGui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5C219BB87BD000ACA55 /* ofxBaseGui.cpp */; }; + 3933D5D419BB87BD000ACA55 /* ofxButton.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5C419BB87BD000ACA55 /* ofxButton.cpp */; }; + 3933D5D519BB87BD000ACA55 /* ofxGuiGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5C719BB87BD000ACA55 /* ofxGuiGroup.cpp */; }; + 3933D5D619BB87BD000ACA55 /* ofxLabel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5C919BB87BD000ACA55 /* ofxLabel.cpp */; }; + 3933D5D719BB87BD000ACA55 /* ofxPanel.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5CB19BB87BD000ACA55 /* ofxPanel.cpp */; }; + 3933D5D819BB87BD000ACA55 /* ofxSlider.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5CD19BB87BD000ACA55 /* ofxSlider.cpp */; }; + 3933D5D919BB87BD000ACA55 /* ofxSliderGroup.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5CF19BB87BD000ACA55 /* ofxSliderGroup.cpp */; }; + 3933D5DA19BB87BD000ACA55 /* ofxToggle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3933D5D119BB87BD000ACA55 /* ofxToggle.cpp */; }; + 394BD2431C4D63AE0089A48C /* TogglePerspectiveCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 394BD2411C4D63AE0089A48C /* TogglePerspectiveCmd.cpp */; }; + 396841751BC91F6F009F0BAE /* Application.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 396841691BC91F6F009F0BAE /* Application.cpp */; }; + 396841761BC91F6F009F0BAE /* ApplicationBaseState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3968416B1BC91F6F009F0BAE /* ApplicationBaseState.cpp */; }; + 396841771BC91F6F009F0BAE /* PresentationState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3968416D1BC91F6F009F0BAE /* PresentationState.cpp */; }; + 396841781BC91F6F009F0BAE /* ProjectionMappingState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3968416F1BC91F6F009F0BAE /* ProjectionMappingState.cpp */; }; + 396841791BC91F6F009F0BAE /* SourceSelectionState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 396841711BC91F6F009F0BAE /* SourceSelectionState.cpp */; }; + 3968417A1BC91F6F009F0BAE /* TextureMappingState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 396841731BC91F6F009F0BAE /* TextureMappingState.cpp */; }; + 396841821BC93DDC009F0BAE /* AddSurfaceCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 396841801BC93DDC009F0BAE /* AddSurfaceCmd.cpp */; }; + 397C46BA1C3971CD002689E2 /* Info.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397C46B81C3971CD002689E2 /* Info.cpp */; }; + 397C46BD1C398D72002689E2 /* SurfaceStack.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397C46BB1C398D72002689E2 /* SurfaceStack.cpp */; }; + 397C46C21C3AE2A7002689E2 /* SurfaceFactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397C46C01C3AE2A7002689E2 /* SurfaceFactory.cpp */; }; + 397EFC7C1A08E7680009286E /* ofxPiMapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397EFC7B1A08E7680009286E /* ofxPiMapper.cpp */; }; + 397EFC7F1A08FE720009286E /* FboSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397EFC7D1A08FE720009286E /* FboSource.cpp */; }; + 397EFC821A09047C0009286E /* CameraSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 397EFC801A09047C0009286E /* CameraSource.cpp */; }; + 39A867961B0D312400165378 /* SetSourceCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39A867941B0D312400165378 /* SetSourceCmd.cpp */; }; + 39A9AAE01B04E78600AA83BC /* RmSurfaceCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39A9AADE1B04E78600AA83BC /* RmSurfaceCmd.cpp */; }; + 39A9AAE91B0518FC00AA83BC /* MvSurfaceCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39A9AAE71B0518FC00AA83BC /* MvSurfaceCmd.cpp */; }; + 39A9AAEC1B053B4200AA83BC /* SelSurfaceCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39A9AAEA1B053B4200AA83BC /* SelSurfaceCmd.cpp */; }; + 39A9AAF21B054FC300AA83BC /* MvSurfaceVertCmd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39A9AAF01B054FC300AA83BC /* MvSurfaceVertCmd.cpp */; }; + 39C1243319EE9589005DF557 /* lz4.c in Sources */ = {isa = PBXBuildFile; fileRef = 39C123EA19EE9589005DF557 /* lz4.c */; }; + 39C1243419EE9589005DF557 /* Base64Encoding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241219EE9589005DF557 /* Base64Encoding.cpp */; }; + 39C1243519EE9589005DF557 /* ByteBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241319EE9589005DF557 /* ByteBuffer.cpp */; }; + 39C1243619EE9589005DF557 /* ByteBufferReader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241419EE9589005DF557 /* ByteBufferReader.cpp */; }; + 39C1243719EE9589005DF557 /* ByteBufferUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241519EE9589005DF557 /* ByteBufferUtils.cpp */; }; + 39C1243819EE9589005DF557 /* ByteBufferWriter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241619EE9589005DF557 /* ByteBufferWriter.cpp */; }; + 39C1243919EE9589005DF557 /* COBSEncoding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241719EE9589005DF557 /* COBSEncoding.cpp */; }; + 39C1243A19EE9589005DF557 /* Compression.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241819EE9589005DF557 /* Compression.cpp */; }; + 39C1243B19EE9589005DF557 /* DeviceFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241919EE9589005DF557 /* DeviceFilter.cpp */; }; + 39C1243C19EE9589005DF557 /* DirectoryFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241A19EE9589005DF557 /* DirectoryFilter.cpp */; }; + 39C1243D19EE9589005DF557 /* DirectoryUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241B19EE9589005DF557 /* DirectoryUtils.cpp */; }; + 39C1243E19EE9589005DF557 /* DirectoryWatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241C19EE9589005DF557 /* DirectoryWatcher.cpp */; }; + 39C1243F19EE9589005DF557 /* DirectoryWatcherManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241D19EE9589005DF557 /* DirectoryWatcherManager.cpp */; }; + 39C1244019EE9589005DF557 /* FileExtensionFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241E19EE9589005DF557 /* FileExtensionFilter.cpp */; }; + 39C1244119EE9589005DF557 /* HexBinaryEncoding.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1241F19EE9589005DF557 /* HexBinaryEncoding.cpp */; }; + 39C1244219EE9589005DF557 /* HiddenFileFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242019EE9589005DF557 /* HiddenFileFilter.cpp */; }; + 39C1244319EE9589005DF557 /* LinkFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242119EE9589005DF557 /* LinkFilter.cpp */; }; + 39C1244419EE9589005DF557 /* PathFilterCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242219EE9589005DF557 /* PathFilterCollection.cpp */; }; + 39C1244519EE9589005DF557 /* RecursiveDirectoryIterator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242319EE9589005DF557 /* RecursiveDirectoryIterator.cpp */; }; + 39C1244619EE9589005DF557 /* RecursiveDirectoryIteratorStategies.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242419EE9589005DF557 /* RecursiveDirectoryIteratorStategies.cpp */; }; + 39C1244719EE9589005DF557 /* RegexPathFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242519EE9589005DF557 /* RegexPathFilter.cpp */; }; + 39C1244819EE9589005DF557 /* SearchPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242619EE9589005DF557 /* SearchPath.cpp */; }; + 39C1244919EE9589005DF557 /* snappy-sinksource.cc in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242A19EE9589005DF557 /* snappy-sinksource.cc */; }; + 39C1244A19EE9589005DF557 /* snappy-stubs-internal.cc in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242C19EE9589005DF557 /* snappy-stubs-internal.cc */; }; + 39C1244B19EE9589005DF557 /* snappy.cc in Sources */ = {isa = PBXBuildFile; fileRef = 39C1242F19EE9589005DF557 /* snappy.cc */; }; + 39C1245119EE95DD005DF557 /* DirectoryWatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1244D19EE95DD005DF557 /* DirectoryWatcher.cpp */; }; + 39C1245219EE95DD005DF557 /* MediaServer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1244F19EE95DD005DF557 /* MediaServer.cpp */; }; + 39C1245919F086A9005DF557 /* BaseSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1245719F086A9005DF557 /* BaseSource.cpp */; }; + 39C1245E19F08965005DF557 /* ImageSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1245A19F08965005DF557 /* ImageSource.cpp */; }; + 39C1245F19F08965005DF557 /* VideoSource.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1245C19F08965005DF557 /* VideoSource.cpp */; }; + 39C1246919F0AB96005DF557 /* BaseSurface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1246319F0AB96005DF557 /* BaseSurface.cpp */; }; + 39C1246A19F0AB96005DF557 /* QuadSurface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1246519F0AB96005DF557 /* QuadSurface.cpp */; }; + 39C1246B19F0AB96005DF557 /* TriangleSurface.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1246719F0AB96005DF557 /* TriangleSurface.cpp */; }; + 39C1247C19F187D5005DF557 /* BaseJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1246E19F187D5005DF557 /* BaseJoint.cpp */; }; + 39C1247D19F187D5005DF557 /* CircleJoint.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1247019F187D5005DF557 /* CircleJoint.cpp */; }; + 39C1247E19F187D5005DF557 /* ProjectionEditor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1247419F187D5005DF557 /* ProjectionEditor.cpp */; }; + 39C1247F19F187D5005DF557 /* RadioList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1247619F187D5005DF557 /* RadioList.cpp */; }; + 39C1248019F187D5005DF557 /* SourcesEditor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1247819F187D5005DF557 /* SourcesEditor.cpp */; }; + 39C1248119F187D5005DF557 /* TextureEditor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1247A19F187D5005DF557 /* TextureEditor.cpp */; }; + 39C1248819F1EB75005DF557 /* SurfaceManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1248319F1EB75005DF557 /* SurfaceManager.cpp */; }; + 39C1248919F1EB75005DF557 /* SurfaceManagerGui.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C1248519F1EB75005DF557 /* SurfaceManagerGui.cpp */; }; + 39C787BD1AC2111B00691393 /* CmdManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39C787BC1AC2111B00691393 /* CmdManager.cpp */; }; + 39FA2B801C457606003FAB28 /* SettingsLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 39FA2B7E1C457606003FAB28 /* SettingsLoader.cpp */; }; + E4328149138ABC9F0047C5CB /* openFrameworksDebug.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E4328148138ABC890047C5CB /* openFrameworksDebug.a */; }; + E45BE97B0E8CC7DD009D7055 /* AGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9710E8CC7DD009D7055 /* AGL.framework */; }; + E45BE97C0E8CC7DD009D7055 /* ApplicationServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9720E8CC7DD009D7055 /* ApplicationServices.framework */; }; + E45BE97D0E8CC7DD009D7055 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9730E8CC7DD009D7055 /* AudioToolbox.framework */; }; + E45BE97F0E8CC7DD009D7055 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9750E8CC7DD009D7055 /* CoreAudio.framework */; }; + E45BE9800E8CC7DD009D7055 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9760E8CC7DD009D7055 /* CoreFoundation.framework */; }; + E45BE9810E8CC7DD009D7055 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9770E8CC7DD009D7055 /* CoreServices.framework */; }; + E45BE9830E8CC7DD009D7055 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE9790E8CC7DD009D7055 /* OpenGL.framework */; }; + E45BE9840E8CC7DD009D7055 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E45BE97A0E8CC7DD009D7055 /* QuickTime.framework */; }; + E4B69E200A3A1BDC003C02F2 /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4B69E1D0A3A1BDC003C02F2 /* main.cpp */; }; + E4B69E210A3A1BDC003C02F2 /* ofApp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E4B69E1E0A3A1BDC003C02F2 /* ofApp.cpp */; }; + E4C2424710CC5A17004149E2 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4C2424410CC5A17004149E2 /* AppKit.framework */; }; + E4C2424810CC5A17004149E2 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4C2424510CC5A17004149E2 /* Cocoa.framework */; }; + E4C2424910CC5A17004149E2 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E4C2424610CC5A17004149E2 /* IOKit.framework */; }; + E4EB6799138ADC1D00A09F29 /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BBAB23BE13894E4700AA2426 /* GLUT.framework */; }; + E7E077E515D3B63C0020DFD4 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E7E077E415D3B63C0020DFD4 /* CoreVideo.framework */; }; + E7E077E815D3B6510020DFD4 /* QTKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E7E077E715D3B6510020DFD4 /* QTKit.framework */; }; + E7F985F815E0DEA3003869B5 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E7F985F515E0DE99003869B5 /* Accelerate.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + E4328147138ABC890047C5CB /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = E4328143138ABC890047C5CB /* openFrameworksLib.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = E4B27C1510CBEB8E00536013; + remoteInfo = openFrameworks; + }; + E4EEB9AB138B136A00A80321 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = E4328143138ABC890047C5CB /* openFrameworksLib.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = E4B27C1410CBEB8E00536013; + remoteInfo = openFrameworks; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + E4C2427710CC5ABF004149E2 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 391717ED1B08FFDA00F9A484 /* SetApplicationStateCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SetApplicationStateCmd.cpp; path = Commands/SetApplicationStateCmd.cpp; sourceTree = ""; }; + 391717EE1B08FFDA00F9A484 /* SetApplicationStateCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SetApplicationStateCmd.h; path = Commands/SetApplicationStateCmd.h; sourceTree = ""; }; + 391717F11B0A8A7300F9A484 /* MvAllTexCoordsCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MvAllTexCoordsCmd.cpp; path = Commands/MvAllTexCoordsCmd.cpp; sourceTree = ""; }; + 391717F21B0A8A7300F9A484 /* MvAllTexCoordsCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MvAllTexCoordsCmd.h; path = Commands/MvAllTexCoordsCmd.h; sourceTree = ""; }; + 391717F51B0BCBB500F9A484 /* MvTexCoordCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MvTexCoordCmd.cpp; path = Commands/MvTexCoordCmd.cpp; sourceTree = ""; }; + 391717F61B0BCBB500F9A484 /* MvTexCoordCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MvTexCoordCmd.h; path = Commands/MvTexCoordCmd.h; sourceTree = ""; }; + 39264839192224DA0008A7F5 /* ofxXmlSettings.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ofxXmlSettings.cpp; path = ../../ofxXmlSettings/src/ofxXmlSettings.cpp; sourceTree = ""; }; + 3926483A192224DA0008A7F5 /* ofxXmlSettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ofxXmlSettings.h; path = ../../ofxXmlSettings/src/ofxXmlSettings.h; sourceTree = ""; }; + 3926483D192224F90008A7F5 /* tinyxml.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tinyxml.cpp; sourceTree = ""; }; + 3926483E192224F90008A7F5 /* tinyxml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tinyxml.h; sourceTree = ""; }; + 3926483F192224F90008A7F5 /* tinyxmlerror.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tinyxmlerror.cpp; sourceTree = ""; }; + 39264840192224F90008A7F5 /* tinyxmlparser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tinyxmlparser.cpp; sourceTree = ""; }; + 3926516F1C5429C600C54844 /* HomographyHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomographyHelper.h; sourceTree = ""; }; + 392651701C5429C600C54844 /* HomographyHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HomographyHelper.cpp; sourceTree = ""; }; + 3933D5C219BB87BD000ACA55 /* ofxBaseGui.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxBaseGui.cpp; sourceTree = ""; }; + 3933D5C319BB87BD000ACA55 /* ofxBaseGui.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxBaseGui.h; sourceTree = ""; }; + 3933D5C419BB87BD000ACA55 /* ofxButton.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxButton.cpp; sourceTree = ""; }; + 3933D5C519BB87BD000ACA55 /* ofxButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxButton.h; sourceTree = ""; }; + 3933D5C619BB87BD000ACA55 /* ofxGui.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxGui.h; sourceTree = ""; }; + 3933D5C719BB87BD000ACA55 /* ofxGuiGroup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxGuiGroup.cpp; sourceTree = ""; }; + 3933D5C819BB87BD000ACA55 /* ofxGuiGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxGuiGroup.h; sourceTree = ""; }; + 3933D5C919BB87BD000ACA55 /* ofxLabel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxLabel.cpp; sourceTree = ""; }; + 3933D5CA19BB87BD000ACA55 /* ofxLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxLabel.h; sourceTree = ""; }; + 3933D5CB19BB87BD000ACA55 /* ofxPanel.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxPanel.cpp; sourceTree = ""; }; + 3933D5CC19BB87BD000ACA55 /* ofxPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxPanel.h; sourceTree = ""; }; + 3933D5CD19BB87BD000ACA55 /* ofxSlider.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxSlider.cpp; sourceTree = ""; }; + 3933D5CE19BB87BD000ACA55 /* ofxSlider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxSlider.h; sourceTree = ""; }; + 3933D5CF19BB87BD000ACA55 /* ofxSliderGroup.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxSliderGroup.cpp; sourceTree = ""; }; + 3933D5D019BB87BD000ACA55 /* ofxSliderGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxSliderGroup.h; sourceTree = ""; }; + 3933D5D119BB87BD000ACA55 /* ofxToggle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxToggle.cpp; sourceTree = ""; }; + 3933D5D219BB87BD000ACA55 /* ofxToggle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxToggle.h; sourceTree = ""; }; + 39366FD519BDA95E006E5BE6 /* ofxPiMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxPiMapper.h; sourceTree = ""; }; + 394BD2411C4D63AE0089A48C /* TogglePerspectiveCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TogglePerspectiveCmd.cpp; path = Commands/TogglePerspectiveCmd.cpp; sourceTree = ""; }; + 394BD2421C4D63AE0089A48C /* TogglePerspectiveCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TogglePerspectiveCmd.h; path = Commands/TogglePerspectiveCmd.h; sourceTree = ""; }; + 396841691BC91F6F009F0BAE /* Application.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Application.cpp; sourceTree = ""; }; + 3968416A1BC91F6F009F0BAE /* Application.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Application.h; sourceTree = ""; }; + 3968416B1BC91F6F009F0BAE /* ApplicationBaseState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ApplicationBaseState.cpp; sourceTree = ""; }; + 3968416C1BC91F6F009F0BAE /* ApplicationBaseState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ApplicationBaseState.h; sourceTree = ""; }; + 3968416D1BC91F6F009F0BAE /* PresentationState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PresentationState.cpp; sourceTree = ""; }; + 3968416E1BC91F6F009F0BAE /* PresentationState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PresentationState.h; sourceTree = ""; }; + 3968416F1BC91F6F009F0BAE /* ProjectionMappingState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProjectionMappingState.cpp; sourceTree = ""; }; + 396841701BC91F6F009F0BAE /* ProjectionMappingState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProjectionMappingState.h; sourceTree = ""; }; + 396841711BC91F6F009F0BAE /* SourceSelectionState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SourceSelectionState.cpp; sourceTree = ""; }; + 396841721BC91F6F009F0BAE /* SourceSelectionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceSelectionState.h; sourceTree = ""; }; + 396841731BC91F6F009F0BAE /* TextureMappingState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextureMappingState.cpp; sourceTree = ""; }; + 396841741BC91F6F009F0BAE /* TextureMappingState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextureMappingState.h; sourceTree = ""; }; + 396841801BC93DDC009F0BAE /* AddSurfaceCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AddSurfaceCmd.cpp; path = Commands/AddSurfaceCmd.cpp; sourceTree = ""; }; + 396841811BC93DDC009F0BAE /* AddSurfaceCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AddSurfaceCmd.h; path = Commands/AddSurfaceCmd.h; sourceTree = ""; }; + 397C46B81C3971CD002689E2 /* Info.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Info.cpp; sourceTree = ""; }; + 397C46B91C3971CD002689E2 /* Info.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Info.h; sourceTree = ""; }; + 397C46BB1C398D72002689E2 /* SurfaceStack.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SurfaceStack.cpp; sourceTree = ""; }; + 397C46BC1C398D72002689E2 /* SurfaceStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SurfaceStack.h; sourceTree = ""; }; + 397C46C01C3AE2A7002689E2 /* SurfaceFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SurfaceFactory.cpp; sourceTree = ""; }; + 397C46C11C3AE2A7002689E2 /* SurfaceFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SurfaceFactory.h; sourceTree = ""; }; + 397EFC7B1A08E7680009286E /* ofxPiMapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ofxPiMapper.cpp; sourceTree = ""; }; + 397EFC7D1A08FE720009286E /* FboSource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FboSource.cpp; sourceTree = ""; }; + 397EFC7E1A08FE720009286E /* FboSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FboSource.h; sourceTree = ""; }; + 397EFC801A09047C0009286E /* CameraSource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CameraSource.cpp; sourceTree = ""; }; + 397EFC811A09047C0009286E /* CameraSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CameraSource.h; sourceTree = ""; }; + 39A867941B0D312400165378 /* SetSourceCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SetSourceCmd.cpp; path = Commands/SetSourceCmd.cpp; sourceTree = ""; }; + 39A867951B0D312400165378 /* SetSourceCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SetSourceCmd.h; path = Commands/SetSourceCmd.h; sourceTree = ""; }; + 39A9AADE1B04E78600AA83BC /* RmSurfaceCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = RmSurfaceCmd.cpp; path = Commands/RmSurfaceCmd.cpp; sourceTree = ""; }; + 39A9AADF1B04E78600AA83BC /* RmSurfaceCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RmSurfaceCmd.h; path = Commands/RmSurfaceCmd.h; sourceTree = ""; }; + 39A9AAE71B0518FC00AA83BC /* MvSurfaceCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MvSurfaceCmd.cpp; path = Commands/MvSurfaceCmd.cpp; sourceTree = ""; }; + 39A9AAE81B0518FC00AA83BC /* MvSurfaceCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MvSurfaceCmd.h; path = Commands/MvSurfaceCmd.h; sourceTree = ""; }; + 39A9AAEA1B053B4200AA83BC /* SelSurfaceCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SelSurfaceCmd.cpp; path = Commands/SelSurfaceCmd.cpp; sourceTree = ""; }; + 39A9AAEB1B053B4200AA83BC /* SelSurfaceCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SelSurfaceCmd.h; path = Commands/SelSurfaceCmd.h; sourceTree = ""; }; + 39A9AAF01B054FC300AA83BC /* MvSurfaceVertCmd.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = MvSurfaceVertCmd.cpp; path = Commands/MvSurfaceVertCmd.cpp; sourceTree = ""; }; + 39A9AAF11B054FC300AA83BC /* MvSurfaceVertCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MvSurfaceVertCmd.h; path = Commands/MvSurfaceVertCmd.h; sourceTree = ""; }; + 39C123E719EE9589005DF557 /* alphanum.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = alphanum.hpp; sourceTree = ""; }; + 39C123EA19EE9589005DF557 /* lz4.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = lz4.c; sourceTree = ""; }; + 39C123EB19EE9589005DF557 /* lz4.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lz4.h; sourceTree = ""; }; + 39C123EF19EE9589005DF557 /* AbstractCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AbstractCache.h; sourceTree = ""; }; + 39C123F019EE9589005DF557 /* AccessExpireCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessExpireCache.h; sourceTree = ""; }; + 39C123F119EE9589005DF557 /* AccessExpireLRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessExpireLRUCache.h; sourceTree = ""; }; + 39C123F219EE9589005DF557 /* DirectoryWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DirectoryWatcher.h; sourceTree = ""; }; + 39C123F319EE9589005DF557 /* ExpireCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExpireCache.h; sourceTree = ""; }; + 39C123F419EE9589005DF557 /* ExpireLRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExpireLRUCache.h; sourceTree = ""; }; + 39C123F619EE9589005DF557 /* AbstractTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AbstractTypes.h; sourceTree = ""; }; + 39C123F719EE9589005DF557 /* Base64Encoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Base64Encoding.h; sourceTree = ""; }; + 39C123F819EE9589005DF557 /* ByteBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteBuffer.h; sourceTree = ""; }; + 39C123F919EE9589005DF557 /* ByteBufferReader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteBufferReader.h; sourceTree = ""; }; + 39C123FA19EE9589005DF557 /* ByteBufferUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteBufferUtils.h; sourceTree = ""; }; + 39C123FB19EE9589005DF557 /* ByteBufferWriter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ByteBufferWriter.h; sourceTree = ""; }; + 39C123FC19EE9589005DF557 /* COBSEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = COBSEncoding.h; sourceTree = ""; }; + 39C123FD19EE9589005DF557 /* Compression.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Compression.h; sourceTree = ""; }; + 39C123FE19EE9589005DF557 /* DeviceFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DeviceFilter.h; sourceTree = ""; }; + 39C123FF19EE9589005DF557 /* DirectoryFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DirectoryFilter.h; sourceTree = ""; }; + 39C1240019EE9589005DF557 /* DirectoryUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DirectoryUtils.h; sourceTree = ""; }; + 39C1240119EE9589005DF557 /* DirectoryWatcherManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DirectoryWatcherManager.h; sourceTree = ""; }; + 39C1240219EE9589005DF557 /* FileExtensionFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileExtensionFilter.h; sourceTree = ""; }; + 39C1240319EE9589005DF557 /* HexBinaryEncoding.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HexBinaryEncoding.h; sourceTree = ""; }; + 39C1240419EE9589005DF557 /* HiddenFileFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HiddenFileFilter.h; sourceTree = ""; }; + 39C1240519EE9589005DF557 /* LinkFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LinkFilter.h; sourceTree = ""; }; + 39C1240619EE9589005DF557 /* PathFilterCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PathFilterCollection.h; sourceTree = ""; }; + 39C1240719EE9589005DF557 /* RegexPathFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RegexPathFilter.h; sourceTree = ""; }; + 39C1240819EE9589005DF557 /* SearchPath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchPath.h; sourceTree = ""; }; + 39C1240919EE9589005DF557 /* LRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LRUCache.h; sourceTree = ""; }; + 39C1240A19EE9589005DF557 /* RecursiveDirectoryIterator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RecursiveDirectoryIterator.h; sourceTree = ""; }; + 39C1240B19EE9589005DF557 /* RecursiveDirectoryIteratorImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RecursiveDirectoryIteratorImpl.h; sourceTree = ""; }; + 39C1240C19EE9589005DF557 /* RecursiveDirectoryIteratorStategies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RecursiveDirectoryIteratorStategies.h; sourceTree = ""; }; + 39C1240D19EE9589005DF557 /* UniqueAccessExpireCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UniqueAccessExpireCache.h; sourceTree = ""; }; + 39C1240E19EE9589005DF557 /* UniqueAccessExpireLRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UniqueAccessExpireLRUCache.h; sourceTree = ""; }; + 39C1240F19EE9589005DF557 /* UniqueExpireCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UniqueExpireCache.h; sourceTree = ""; }; + 39C1241019EE9589005DF557 /* UniqueExpireLRUCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UniqueExpireLRUCache.h; sourceTree = ""; }; + 39C1241219EE9589005DF557 /* Base64Encoding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Base64Encoding.cpp; sourceTree = ""; }; + 39C1241319EE9589005DF557 /* ByteBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ByteBuffer.cpp; sourceTree = ""; }; + 39C1241419EE9589005DF557 /* ByteBufferReader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ByteBufferReader.cpp; sourceTree = ""; }; + 39C1241519EE9589005DF557 /* ByteBufferUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ByteBufferUtils.cpp; sourceTree = ""; }; + 39C1241619EE9589005DF557 /* ByteBufferWriter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ByteBufferWriter.cpp; sourceTree = ""; }; + 39C1241719EE9589005DF557 /* COBSEncoding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = COBSEncoding.cpp; sourceTree = ""; }; + 39C1241819EE9589005DF557 /* Compression.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Compression.cpp; sourceTree = ""; }; + 39C1241919EE9589005DF557 /* DeviceFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DeviceFilter.cpp; sourceTree = ""; }; + 39C1241A19EE9589005DF557 /* DirectoryFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoryFilter.cpp; sourceTree = ""; }; + 39C1241B19EE9589005DF557 /* DirectoryUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoryUtils.cpp; sourceTree = ""; }; + 39C1241C19EE9589005DF557 /* DirectoryWatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoryWatcher.cpp; sourceTree = ""; }; + 39C1241D19EE9589005DF557 /* DirectoryWatcherManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoryWatcherManager.cpp; sourceTree = ""; }; + 39C1241E19EE9589005DF557 /* FileExtensionFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileExtensionFilter.cpp; sourceTree = ""; }; + 39C1241F19EE9589005DF557 /* HexBinaryEncoding.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HexBinaryEncoding.cpp; sourceTree = ""; }; + 39C1242019EE9589005DF557 /* HiddenFileFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HiddenFileFilter.cpp; sourceTree = ""; }; + 39C1242119EE9589005DF557 /* LinkFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = LinkFilter.cpp; sourceTree = ""; }; + 39C1242219EE9589005DF557 /* PathFilterCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PathFilterCollection.cpp; sourceTree = ""; }; + 39C1242319EE9589005DF557 /* RecursiveDirectoryIterator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RecursiveDirectoryIterator.cpp; sourceTree = ""; }; + 39C1242419EE9589005DF557 /* RecursiveDirectoryIteratorStategies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RecursiveDirectoryIteratorStategies.cpp; sourceTree = ""; }; + 39C1242519EE9589005DF557 /* RegexPathFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RegexPathFilter.cpp; sourceTree = ""; }; + 39C1242619EE9589005DF557 /* SearchPath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SearchPath.cpp; sourceTree = ""; }; + 39C1242919EE9589005DF557 /* snappy-internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "snappy-internal.h"; sourceTree = ""; }; + 39C1242A19EE9589005DF557 /* snappy-sinksource.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "snappy-sinksource.cc"; sourceTree = ""; }; + 39C1242B19EE9589005DF557 /* snappy-sinksource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "snappy-sinksource.h"; sourceTree = ""; }; + 39C1242C19EE9589005DF557 /* snappy-stubs-internal.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "snappy-stubs-internal.cc"; sourceTree = ""; }; + 39C1242D19EE9589005DF557 /* snappy-stubs-internal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "snappy-stubs-internal.h"; sourceTree = ""; }; + 39C1242E19EE9589005DF557 /* snappy-stubs-public.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "snappy-stubs-public.h"; sourceTree = ""; }; + 39C1242F19EE9589005DF557 /* snappy.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = snappy.cc; sourceTree = ""; }; + 39C1243019EE9589005DF557 /* snappy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = snappy.h; sourceTree = ""; }; + 39C1243219EE9589005DF557 /* ofxIO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ofxIO.h; sourceTree = ""; }; + 39C1244D19EE95DD005DF557 /* DirectoryWatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DirectoryWatcher.cpp; sourceTree = ""; }; + 39C1244E19EE95DD005DF557 /* DirectoryWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DirectoryWatcher.h; sourceTree = ""; }; + 39C1244F19EE95DD005DF557 /* MediaServer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = MediaServer.cpp; sourceTree = ""; }; + 39C1245019EE95DD005DF557 /* MediaServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaServer.h; sourceTree = ""; }; + 39C1245719F086A9005DF557 /* BaseSource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseSource.cpp; sourceTree = ""; }; + 39C1245819F086A9005DF557 /* BaseSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseSource.h; sourceTree = ""; }; + 39C1245A19F08965005DF557 /* ImageSource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ImageSource.cpp; sourceTree = ""; }; + 39C1245B19F08965005DF557 /* ImageSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageSource.h; sourceTree = ""; }; + 39C1245C19F08965005DF557 /* VideoSource.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = VideoSource.cpp; sourceTree = ""; }; + 39C1245D19F08965005DF557 /* VideoSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VideoSource.h; sourceTree = ""; }; + 39C1246019F089DA005DF557 /* SourceType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourceType.h; sourceTree = ""; }; + 39C1246319F0AB96005DF557 /* BaseSurface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseSurface.cpp; sourceTree = ""; }; + 39C1246419F0AB96005DF557 /* BaseSurface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseSurface.h; sourceTree = ""; }; + 39C1246519F0AB96005DF557 /* QuadSurface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = QuadSurface.cpp; sourceTree = ""; }; + 39C1246619F0AB96005DF557 /* QuadSurface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuadSurface.h; sourceTree = ""; }; + 39C1246719F0AB96005DF557 /* TriangleSurface.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TriangleSurface.cpp; sourceTree = ""; }; + 39C1246819F0AB96005DF557 /* TriangleSurface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TriangleSurface.h; sourceTree = ""; }; + 39C1246E19F187D5005DF557 /* BaseJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BaseJoint.cpp; sourceTree = ""; }; + 39C1246F19F187D5005DF557 /* BaseJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BaseJoint.h; sourceTree = ""; }; + 39C1247019F187D5005DF557 /* CircleJoint.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CircleJoint.cpp; sourceTree = ""; }; + 39C1247119F187D5005DF557 /* CircleJoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CircleJoint.h; sourceTree = ""; }; + 39C1247219F187D5005DF557 /* EditorType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EditorType.h; sourceTree = ""; }; + 39C1247319F187D5005DF557 /* GuiMode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GuiMode.h; sourceTree = ""; }; + 39C1247419F187D5005DF557 /* ProjectionEditor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ProjectionEditor.cpp; sourceTree = ""; }; + 39C1247519F187D5005DF557 /* ProjectionEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProjectionEditor.h; sourceTree = ""; }; + 39C1247619F187D5005DF557 /* RadioList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RadioList.cpp; sourceTree = ""; }; + 39C1247719F187D5005DF557 /* RadioList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RadioList.h; sourceTree = ""; }; + 39C1247819F187D5005DF557 /* SourcesEditor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SourcesEditor.cpp; sourceTree = ""; }; + 39C1247919F187D5005DF557 /* SourcesEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SourcesEditor.h; sourceTree = ""; }; + 39C1247A19F187D5005DF557 /* TextureEditor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TextureEditor.cpp; sourceTree = ""; }; + 39C1247B19F187D5005DF557 /* TextureEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextureEditor.h; sourceTree = ""; }; + 39C1248319F1EB75005DF557 /* SurfaceManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SurfaceManager.cpp; sourceTree = ""; }; + 39C1248419F1EB75005DF557 /* SurfaceManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SurfaceManager.h; sourceTree = ""; }; + 39C1248519F1EB75005DF557 /* SurfaceManagerGui.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SurfaceManagerGui.cpp; sourceTree = ""; }; + 39C1248619F1EB75005DF557 /* SurfaceManagerGui.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SurfaceManagerGui.h; sourceTree = ""; }; + 39C1248719F1EB75005DF557 /* SurfaceType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SurfaceType.h; sourceTree = ""; }; + 39C787BB1AC20D2400691393 /* CmdManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CmdManager.h; path = Commands/CmdManager.h; sourceTree = ""; }; + 39C787BC1AC2111B00691393 /* CmdManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = CmdManager.cpp; path = Commands/CmdManager.cpp; sourceTree = ""; }; + 39FA2B7E1C457606003FAB28 /* SettingsLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SettingsLoader.cpp; sourceTree = ""; }; + 39FA2B7F1C457606003FAB28 /* SettingsLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsLoader.h; sourceTree = ""; }; + 39FDD9EA1AC007BF00262205 /* BaseCmd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BaseCmd.h; path = Commands/BaseCmd.h; sourceTree = ""; }; + BBAB23BE13894E4700AA2426 /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = ../../../libs/glut/lib/osx/GLUT.framework; sourceTree = ""; }; + E4328143138ABC890047C5CB /* openFrameworksLib.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = openFrameworksLib.xcodeproj; path = ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj; sourceTree = SOURCE_ROOT; }; + E45BE9710E8CC7DD009D7055 /* AGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AGL.framework; path = /System/Library/Frameworks/AGL.framework; sourceTree = ""; }; + E45BE9720E8CC7DD009D7055 /* ApplicationServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ApplicationServices.framework; path = /System/Library/Frameworks/ApplicationServices.framework; sourceTree = ""; }; + E45BE9730E8CC7DD009D7055 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = ""; }; + E45BE9750E8CC7DD009D7055 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = ""; }; + E45BE9760E8CC7DD009D7055 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + E45BE9770E8CC7DD009D7055 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; + E45BE9790E8CC7DD009D7055 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + E45BE97A0E8CC7DD009D7055 /* QuickTime.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = /System/Library/Frameworks/QuickTime.framework; sourceTree = ""; }; + E4B69B5B0A3A1756003C02F2 /* example-cameraDebug.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "example-cameraDebug.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + E4B69E1D0A3A1BDC003C02F2 /* main.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = main.cpp; path = src/main.cpp; sourceTree = SOURCE_ROOT; }; + E4B69E1E0A3A1BDC003C02F2 /* ofApp.cpp */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.cpp; fileEncoding = 30; name = ofApp.cpp; path = src/ofApp.cpp; sourceTree = SOURCE_ROOT; }; + E4B69E1F0A3A1BDC003C02F2 /* ofApp.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ofApp.h; path = src/ofApp.h; sourceTree = SOURCE_ROOT; }; + E4B6FCAD0C3E899E008CF71C /* openFrameworks-Info.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.xml; path = "openFrameworks-Info.plist"; sourceTree = ""; }; + E4C2424410CC5A17004149E2 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + E4C2424510CC5A17004149E2 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + E4C2424610CC5A17004149E2 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; }; + E4EB691F138AFCF100A09F29 /* CoreOF.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = CoreOF.xcconfig; path = ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig; sourceTree = SOURCE_ROOT; }; + E4EB6923138AFD0F00A09F29 /* Project.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Project.xcconfig; sourceTree = ""; }; + E7E077E415D3B63C0020DFD4 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = /System/Library/Frameworks/CoreVideo.framework; sourceTree = ""; }; + E7E077E715D3B6510020DFD4 /* QTKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QTKit.framework; path = /System/Library/Frameworks/QTKit.framework; sourceTree = ""; }; + E7F985F515E0DE99003869B5 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = /System/Library/Frameworks/Accelerate.framework; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + E4B69B590A3A1756003C02F2 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + E7F985F815E0DEA3003869B5 /* Accelerate.framework in Frameworks */, + E7E077E815D3B6510020DFD4 /* QTKit.framework in Frameworks */, + E4EB6799138ADC1D00A09F29 /* GLUT.framework in Frameworks */, + E4328149138ABC9F0047C5CB /* openFrameworksDebug.a in Frameworks */, + E45BE97B0E8CC7DD009D7055 /* AGL.framework in Frameworks */, + E45BE97C0E8CC7DD009D7055 /* ApplicationServices.framework in Frameworks */, + E45BE97D0E8CC7DD009D7055 /* AudioToolbox.framework in Frameworks */, + E45BE97F0E8CC7DD009D7055 /* CoreAudio.framework in Frameworks */, + E45BE9800E8CC7DD009D7055 /* CoreFoundation.framework in Frameworks */, + E45BE9810E8CC7DD009D7055 /* CoreServices.framework in Frameworks */, + E45BE9830E8CC7DD009D7055 /* OpenGL.framework in Frameworks */, + E45BE9840E8CC7DD009D7055 /* QuickTime.framework in Frameworks */, + E4C2424710CC5A17004149E2 /* AppKit.framework in Frameworks */, + E4C2424810CC5A17004149E2 /* Cocoa.framework in Frameworks */, + E4C2424910CC5A17004149E2 /* IOKit.framework in Frameworks */, + E7E077E515D3B63C0020DFD4 /* CoreVideo.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 39264837192224C20008A7F5 /* ofxXmlSettings */ = { + isa = PBXGroup; + children = ( + 3926483C192224F90008A7F5 /* libs */, + 39264838192224CA0008A7F5 /* src */, + ); + name = ofxXmlSettings; + sourceTree = ""; + }; + 39264838192224CA0008A7F5 /* src */ = { + isa = PBXGroup; + children = ( + 39264839192224DA0008A7F5 /* ofxXmlSettings.cpp */, + 3926483A192224DA0008A7F5 /* ofxXmlSettings.h */, + ); + name = src; + sourceTree = ""; + }; + 3926483C192224F90008A7F5 /* libs */ = { + isa = PBXGroup; + children = ( + 3926483D192224F90008A7F5 /* tinyxml.cpp */, + 3926483E192224F90008A7F5 /* tinyxml.h */, + 3926483F192224F90008A7F5 /* tinyxmlerror.cpp */, + 39264840192224F90008A7F5 /* tinyxmlparser.cpp */, + ); + name = libs; + path = ../../ofxXmlSettings/libs; + sourceTree = ""; + }; + 3933D5C019BB87A3000ACA55 /* ofxGui */ = { + isa = PBXGroup; + children = ( + 3933D5C119BB87BD000ACA55 /* src */, + ); + name = ofxGui; + sourceTree = ""; + }; + 3933D5C119BB87BD000ACA55 /* src */ = { + isa = PBXGroup; + children = ( + 3933D5C219BB87BD000ACA55 /* ofxBaseGui.cpp */, + 3933D5C319BB87BD000ACA55 /* ofxBaseGui.h */, + 3933D5C419BB87BD000ACA55 /* ofxButton.cpp */, + 3933D5C519BB87BD000ACA55 /* ofxButton.h */, + 3933D5C619BB87BD000ACA55 /* ofxGui.h */, + 3933D5C719BB87BD000ACA55 /* ofxGuiGroup.cpp */, + 3933D5C819BB87BD000ACA55 /* ofxGuiGroup.h */, + 3933D5C919BB87BD000ACA55 /* ofxLabel.cpp */, + 3933D5CA19BB87BD000ACA55 /* ofxLabel.h */, + 3933D5CB19BB87BD000ACA55 /* ofxPanel.cpp */, + 3933D5CC19BB87BD000ACA55 /* ofxPanel.h */, + 3933D5CD19BB87BD000ACA55 /* ofxSlider.cpp */, + 3933D5CE19BB87BD000ACA55 /* ofxSlider.h */, + 3933D5CF19BB87BD000ACA55 /* ofxSliderGroup.cpp */, + 3933D5D019BB87BD000ACA55 /* ofxSliderGroup.h */, + 3933D5D119BB87BD000ACA55 /* ofxToggle.cpp */, + 3933D5D219BB87BD000ACA55 /* ofxToggle.h */, + ); + name = src; + path = ../../ofxGui/src; + sourceTree = ""; + }; + 396841681BC91F6F009F0BAE /* Application */ = { + isa = PBXGroup; + children = ( + 3968416A1BC91F6F009F0BAE /* Application.h */, + 396841691BC91F6F009F0BAE /* Application.cpp */, + 39FA2B7F1C457606003FAB28 /* SettingsLoader.h */, + 39FA2B7E1C457606003FAB28 /* SettingsLoader.cpp */, + 3968416C1BC91F6F009F0BAE /* ApplicationBaseState.h */, + 3968416B1BC91F6F009F0BAE /* ApplicationBaseState.cpp */, + 3968416E1BC91F6F009F0BAE /* PresentationState.h */, + 3968416D1BC91F6F009F0BAE /* PresentationState.cpp */, + 396841701BC91F6F009F0BAE /* ProjectionMappingState.h */, + 3968416F1BC91F6F009F0BAE /* ProjectionMappingState.cpp */, + 396841721BC91F6F009F0BAE /* SourceSelectionState.h */, + 396841711BC91F6F009F0BAE /* SourceSelectionState.cpp */, + 396841741BC91F6F009F0BAE /* TextureMappingState.h */, + 396841731BC91F6F009F0BAE /* TextureMappingState.cpp */, + ); + path = Application; + sourceTree = ""; + }; + 396E8A2F190FEDD900705899 /* src */ = { + isa = PBXGroup; + children = ( + 396841681BC91F6F009F0BAE /* Application */, + 39FDD9E81AC0076200262205 /* Commands */, + 39C1246D19F187D5005DF557 /* UserInterface */, + 39C1246219F0AB96005DF557 /* Surfaces */, + 39C1245619F086A9005DF557 /* Sources */, + 39C1244C19EE95DD005DF557 /* MediaServer */, + 397C46B71C3971CD002689E2 /* Info */, + 39836CC71C502108006DB042 /* Utils */, + 39366FD519BDA95E006E5BE6 /* ofxPiMapper.h */, + 397EFC7B1A08E7680009286E /* ofxPiMapper.cpp */, + ); + name = src; + path = ../src; + sourceTree = ""; + }; + 396E8A34190FEDE500705899 /* ofxPiMapper */ = { + isa = PBXGroup; + children = ( + 396E8A2F190FEDD900705899 /* src */, + ); + name = ofxPiMapper; + sourceTree = ""; + }; + 397C46B71C3971CD002689E2 /* Info */ = { + isa = PBXGroup; + children = ( + 397C46B91C3971CD002689E2 /* Info.h */, + 397C46B81C3971CD002689E2 /* Info.cpp */, + ); + path = Info; + sourceTree = ""; + }; + 39836CC71C502108006DB042 /* Utils */ = { + isa = PBXGroup; + children = ( + 3926516F1C5429C600C54844 /* HomographyHelper.h */, + 392651701C5429C600C54844 /* HomographyHelper.cpp */, + ); + path = Utils; + sourceTree = ""; + }; + 39C123E319EE9576005DF557 /* ofxIO */ = { + isa = PBXGroup; + children = ( + 39C123E419EE9589005DF557 /* libs */, + 39C1243119EE9589005DF557 /* src */, + ); + name = ofxIO; + sourceTree = ""; + }; + 39C123E419EE9589005DF557 /* libs */ = { + isa = PBXGroup; + children = ( + 39C123E519EE9589005DF557 /* alphanum */, + 39C123E819EE9589005DF557 /* lz4 */, + 39C123EC19EE9589005DF557 /* ofxIO */, + 39C1242719EE9589005DF557 /* snappy */, + ); + name = libs; + path = ../../ofxIO/libs; + sourceTree = ""; + }; + 39C123E519EE9589005DF557 /* alphanum */ = { + isa = PBXGroup; + children = ( + 39C123E619EE9589005DF557 /* include */, + ); + path = alphanum; + sourceTree = ""; + }; + 39C123E619EE9589005DF557 /* include */ = { + isa = PBXGroup; + children = ( + 39C123E719EE9589005DF557 /* alphanum.hpp */, + ); + path = include; + sourceTree = ""; + }; + 39C123E819EE9589005DF557 /* lz4 */ = { + isa = PBXGroup; + children = ( + 39C123E919EE9589005DF557 /* src */, + ); + path = lz4; + sourceTree = ""; + }; + 39C123E919EE9589005DF557 /* src */ = { + isa = PBXGroup; + children = ( + 39C123EA19EE9589005DF557 /* lz4.c */, + 39C123EB19EE9589005DF557 /* lz4.h */, + ); + path = src; + sourceTree = ""; + }; + 39C123EC19EE9589005DF557 /* ofxIO */ = { + isa = PBXGroup; + children = ( + 39C123ED19EE9589005DF557 /* include */, + 39C1241119EE9589005DF557 /* src */, + ); + path = ofxIO; + sourceTree = ""; + }; + 39C123ED19EE9589005DF557 /* include */ = { + isa = PBXGroup; + children = ( + 39C123EE19EE9589005DF557 /* ofx */, + ); + path = include; + sourceTree = ""; + }; + 39C123EE19EE9589005DF557 /* ofx */ = { + isa = PBXGroup; + children = ( + 39C123EF19EE9589005DF557 /* AbstractCache.h */, + 39C123F019EE9589005DF557 /* AccessExpireCache.h */, + 39C123F119EE9589005DF557 /* AccessExpireLRUCache.h */, + 39C123F219EE9589005DF557 /* DirectoryWatcher.h */, + 39C123F319EE9589005DF557 /* ExpireCache.h */, + 39C123F419EE9589005DF557 /* ExpireLRUCache.h */, + 39C123F519EE9589005DF557 /* IO */, + 39C1240919EE9589005DF557 /* LRUCache.h */, + 39C1240A19EE9589005DF557 /* RecursiveDirectoryIterator.h */, + 39C1240B19EE9589005DF557 /* RecursiveDirectoryIteratorImpl.h */, + 39C1240C19EE9589005DF557 /* RecursiveDirectoryIteratorStategies.h */, + 39C1240D19EE9589005DF557 /* UniqueAccessExpireCache.h */, + 39C1240E19EE9589005DF557 /* UniqueAccessExpireLRUCache.h */, + 39C1240F19EE9589005DF557 /* UniqueExpireCache.h */, + 39C1241019EE9589005DF557 /* UniqueExpireLRUCache.h */, + ); + path = ofx; + sourceTree = ""; + }; + 39C123F519EE9589005DF557 /* IO */ = { + isa = PBXGroup; + children = ( + 39C123F619EE9589005DF557 /* AbstractTypes.h */, + 39C123F719EE9589005DF557 /* Base64Encoding.h */, + 39C123F819EE9589005DF557 /* ByteBuffer.h */, + 39C123F919EE9589005DF557 /* ByteBufferReader.h */, + 39C123FA19EE9589005DF557 /* ByteBufferUtils.h */, + 39C123FB19EE9589005DF557 /* ByteBufferWriter.h */, + 39C123FC19EE9589005DF557 /* COBSEncoding.h */, + 39C123FD19EE9589005DF557 /* Compression.h */, + 39C123FE19EE9589005DF557 /* DeviceFilter.h */, + 39C123FF19EE9589005DF557 /* DirectoryFilter.h */, + 39C1240019EE9589005DF557 /* DirectoryUtils.h */, + 39C1240119EE9589005DF557 /* DirectoryWatcherManager.h */, + 39C1240219EE9589005DF557 /* FileExtensionFilter.h */, + 39C1240319EE9589005DF557 /* HexBinaryEncoding.h */, + 39C1240419EE9589005DF557 /* HiddenFileFilter.h */, + 39C1240519EE9589005DF557 /* LinkFilter.h */, + 39C1240619EE9589005DF557 /* PathFilterCollection.h */, + 39C1240719EE9589005DF557 /* RegexPathFilter.h */, + 39C1240819EE9589005DF557 /* SearchPath.h */, + ); + path = IO; + sourceTree = ""; + }; + 39C1241119EE9589005DF557 /* src */ = { + isa = PBXGroup; + children = ( + 39C1241219EE9589005DF557 /* Base64Encoding.cpp */, + 39C1241319EE9589005DF557 /* ByteBuffer.cpp */, + 39C1241419EE9589005DF557 /* ByteBufferReader.cpp */, + 39C1241519EE9589005DF557 /* ByteBufferUtils.cpp */, + 39C1241619EE9589005DF557 /* ByteBufferWriter.cpp */, + 39C1241719EE9589005DF557 /* COBSEncoding.cpp */, + 39C1241819EE9589005DF557 /* Compression.cpp */, + 39C1241919EE9589005DF557 /* DeviceFilter.cpp */, + 39C1241A19EE9589005DF557 /* DirectoryFilter.cpp */, + 39C1241B19EE9589005DF557 /* DirectoryUtils.cpp */, + 39C1241C19EE9589005DF557 /* DirectoryWatcher.cpp */, + 39C1241D19EE9589005DF557 /* DirectoryWatcherManager.cpp */, + 39C1241E19EE9589005DF557 /* FileExtensionFilter.cpp */, + 39C1241F19EE9589005DF557 /* HexBinaryEncoding.cpp */, + 39C1242019EE9589005DF557 /* HiddenFileFilter.cpp */, + 39C1242119EE9589005DF557 /* LinkFilter.cpp */, + 39C1242219EE9589005DF557 /* PathFilterCollection.cpp */, + 39C1242319EE9589005DF557 /* RecursiveDirectoryIterator.cpp */, + 39C1242419EE9589005DF557 /* RecursiveDirectoryIteratorStategies.cpp */, + 39C1242519EE9589005DF557 /* RegexPathFilter.cpp */, + 39C1242619EE9589005DF557 /* SearchPath.cpp */, + ); + path = src; + sourceTree = ""; + }; + 39C1242719EE9589005DF557 /* snappy */ = { + isa = PBXGroup; + children = ( + 39C1242819EE9589005DF557 /* src */, + ); + path = snappy; + sourceTree = ""; + }; + 39C1242819EE9589005DF557 /* src */ = { + isa = PBXGroup; + children = ( + 39C1242919EE9589005DF557 /* snappy-internal.h */, + 39C1242A19EE9589005DF557 /* snappy-sinksource.cc */, + 39C1242B19EE9589005DF557 /* snappy-sinksource.h */, + 39C1242C19EE9589005DF557 /* snappy-stubs-internal.cc */, + 39C1242D19EE9589005DF557 /* snappy-stubs-internal.h */, + 39C1242E19EE9589005DF557 /* snappy-stubs-public.h */, + 39C1242F19EE9589005DF557 /* snappy.cc */, + 39C1243019EE9589005DF557 /* snappy.h */, + ); + path = src; + sourceTree = ""; + }; + 39C1243119EE9589005DF557 /* src */ = { + isa = PBXGroup; + children = ( + 39C1243219EE9589005DF557 /* ofxIO.h */, + ); + name = src; + path = ../../ofxIO/src; + sourceTree = ""; + }; + 39C1244C19EE95DD005DF557 /* MediaServer */ = { + isa = PBXGroup; + children = ( + 39C1244D19EE95DD005DF557 /* DirectoryWatcher.cpp */, + 39C1244E19EE95DD005DF557 /* DirectoryWatcher.h */, + 39C1244F19EE95DD005DF557 /* MediaServer.cpp */, + 39C1245019EE95DD005DF557 /* MediaServer.h */, + ); + path = MediaServer; + sourceTree = ""; + }; + 39C1245619F086A9005DF557 /* Sources */ = { + isa = PBXGroup; + children = ( + 39C1246019F089DA005DF557 /* SourceType.h */, + 39C1245719F086A9005DF557 /* BaseSource.cpp */, + 39C1245819F086A9005DF557 /* BaseSource.h */, + 39C1245A19F08965005DF557 /* ImageSource.cpp */, + 39C1245B19F08965005DF557 /* ImageSource.h */, + 39C1245C19F08965005DF557 /* VideoSource.cpp */, + 39C1245D19F08965005DF557 /* VideoSource.h */, + 397EFC7D1A08FE720009286E /* FboSource.cpp */, + 397EFC7E1A08FE720009286E /* FboSource.h */, + ); + path = Sources; + sourceTree = ""; + }; + 39C1246219F0AB96005DF557 /* Surfaces */ = { + isa = PBXGroup; + children = ( + 397C46C11C3AE2A7002689E2 /* SurfaceFactory.h */, + 397C46C01C3AE2A7002689E2 /* SurfaceFactory.cpp */, + 397C46BC1C398D72002689E2 /* SurfaceStack.h */, + 397C46BB1C398D72002689E2 /* SurfaceStack.cpp */, + 39C1248419F1EB75005DF557 /* SurfaceManager.h */, + 39C1248319F1EB75005DF557 /* SurfaceManager.cpp */, + 39C1248619F1EB75005DF557 /* SurfaceManagerGui.h */, + 39C1248519F1EB75005DF557 /* SurfaceManagerGui.cpp */, + 39C1248719F1EB75005DF557 /* SurfaceType.h */, + 39C1246419F0AB96005DF557 /* BaseSurface.h */, + 39C1246319F0AB96005DF557 /* BaseSurface.cpp */, + 39C1246619F0AB96005DF557 /* QuadSurface.h */, + 39C1246519F0AB96005DF557 /* QuadSurface.cpp */, + 39C1246819F0AB96005DF557 /* TriangleSurface.h */, + 39C1246719F0AB96005DF557 /* TriangleSurface.cpp */, + ); + path = Surfaces; + sourceTree = ""; + }; + 39C1246D19F187D5005DF557 /* UserInterface */ = { + isa = PBXGroup; + children = ( + 39C1246F19F187D5005DF557 /* BaseJoint.h */, + 39C1246E19F187D5005DF557 /* BaseJoint.cpp */, + 39C1247119F187D5005DF557 /* CircleJoint.h */, + 39C1247019F187D5005DF557 /* CircleJoint.cpp */, + 39C1247219F187D5005DF557 /* EditorType.h */, + 39C1247319F187D5005DF557 /* GuiMode.h */, + 39C1247519F187D5005DF557 /* ProjectionEditor.h */, + 39C1247419F187D5005DF557 /* ProjectionEditor.cpp */, + 39C1247719F187D5005DF557 /* RadioList.h */, + 39C1247619F187D5005DF557 /* RadioList.cpp */, + 39C1247919F187D5005DF557 /* SourcesEditor.h */, + 39C1247819F187D5005DF557 /* SourcesEditor.cpp */, + 39C1247B19F187D5005DF557 /* TextureEditor.h */, + 39C1247A19F187D5005DF557 /* TextureEditor.cpp */, + ); + path = UserInterface; + sourceTree = ""; + }; + 39FDD9E81AC0076200262205 /* Commands */ = { + isa = PBXGroup; + children = ( + 39FDD9EA1AC007BF00262205 /* BaseCmd.h */, + 39C787BB1AC20D2400691393 /* CmdManager.h */, + 39C787BC1AC2111B00691393 /* CmdManager.cpp */, + 396841811BC93DDC009F0BAE /* AddSurfaceCmd.h */, + 396841801BC93DDC009F0BAE /* AddSurfaceCmd.cpp */, + 39A9AAF11B054FC300AA83BC /* MvSurfaceVertCmd.h */, + 39A9AAF01B054FC300AA83BC /* MvSurfaceVertCmd.cpp */, + 39A9AAEB1B053B4200AA83BC /* SelSurfaceCmd.h */, + 39A9AAEA1B053B4200AA83BC /* SelSurfaceCmd.cpp */, + 39A9AAE81B0518FC00AA83BC /* MvSurfaceCmd.h */, + 39A9AAE71B0518FC00AA83BC /* MvSurfaceCmd.cpp */, + 39A9AADF1B04E78600AA83BC /* RmSurfaceCmd.h */, + 39A9AADE1B04E78600AA83BC /* RmSurfaceCmd.cpp */, + 391717EE1B08FFDA00F9A484 /* SetApplicationStateCmd.h */, + 391717ED1B08FFDA00F9A484 /* SetApplicationStateCmd.cpp */, + 391717F21B0A8A7300F9A484 /* MvAllTexCoordsCmd.h */, + 391717F11B0A8A7300F9A484 /* MvAllTexCoordsCmd.cpp */, + 391717F61B0BCBB500F9A484 /* MvTexCoordCmd.h */, + 391717F51B0BCBB500F9A484 /* MvTexCoordCmd.cpp */, + 39A867951B0D312400165378 /* SetSourceCmd.h */, + 39A867941B0D312400165378 /* SetSourceCmd.cpp */, + 394BD2421C4D63AE0089A48C /* TogglePerspectiveCmd.h */, + 394BD2411C4D63AE0089A48C /* TogglePerspectiveCmd.cpp */, + ); + name = Commands; + sourceTree = ""; + }; + BB4B014C10F69532006C3DED /* addons */ = { + isa = PBXGroup; + children = ( + 39C123E319EE9576005DF557 /* ofxIO */, + 3933D5C019BB87A3000ACA55 /* ofxGui */, + 39264837192224C20008A7F5 /* ofxXmlSettings */, + 396E8A34190FEDE500705899 /* ofxPiMapper */, + ); + name = addons; + sourceTree = ""; + }; + BBAB23C913894ECA00AA2426 /* system frameworks */ = { + isa = PBXGroup; + children = ( + E7F985F515E0DE99003869B5 /* Accelerate.framework */, + E4C2424410CC5A17004149E2 /* AppKit.framework */, + E4C2424510CC5A17004149E2 /* Cocoa.framework */, + E4C2424610CC5A17004149E2 /* IOKit.framework */, + E45BE9710E8CC7DD009D7055 /* AGL.framework */, + E45BE9720E8CC7DD009D7055 /* ApplicationServices.framework */, + E45BE9730E8CC7DD009D7055 /* AudioToolbox.framework */, + E45BE9750E8CC7DD009D7055 /* CoreAudio.framework */, + E45BE9760E8CC7DD009D7055 /* CoreFoundation.framework */, + E45BE9770E8CC7DD009D7055 /* CoreServices.framework */, + E45BE9790E8CC7DD009D7055 /* OpenGL.framework */, + E45BE97A0E8CC7DD009D7055 /* QuickTime.framework */, + E7E077E415D3B63C0020DFD4 /* CoreVideo.framework */, + E7E077E715D3B6510020DFD4 /* QTKit.framework */, + ); + name = "system frameworks"; + sourceTree = ""; + }; + BBAB23CA13894EDB00AA2426 /* 3rd party frameworks */ = { + isa = PBXGroup; + children = ( + BBAB23BE13894E4700AA2426 /* GLUT.framework */, + ); + name = "3rd party frameworks"; + sourceTree = ""; + }; + E4328144138ABC890047C5CB /* Products */ = { + isa = PBXGroup; + children = ( + E4328148138ABC890047C5CB /* openFrameworksDebug.a */, + ); + name = Products; + sourceTree = ""; + }; + E45BE5980E8CC70C009D7055 /* frameworks */ = { + isa = PBXGroup; + children = ( + BBAB23CA13894EDB00AA2426 /* 3rd party frameworks */, + BBAB23C913894ECA00AA2426 /* system frameworks */, + ); + name = frameworks; + sourceTree = ""; + }; + E4B69B4A0A3A1720003C02F2 = { + isa = PBXGroup; + children = ( + E4B6FCAD0C3E899E008CF71C /* openFrameworks-Info.plist */, + E4EB6923138AFD0F00A09F29 /* Project.xcconfig */, + E4B69E1C0A3A1BDC003C02F2 /* src */, + E4EEC9E9138DF44700A80321 /* openFrameworks */, + BB4B014C10F69532006C3DED /* addons */, + E45BE5980E8CC70C009D7055 /* frameworks */, + E4B69B5B0A3A1756003C02F2 /* example-cameraDebug.app */, + ); + sourceTree = ""; + }; + E4B69E1C0A3A1BDC003C02F2 /* src */ = { + isa = PBXGroup; + children = ( + E4B69E1D0A3A1BDC003C02F2 /* main.cpp */, + E4B69E1F0A3A1BDC003C02F2 /* ofApp.h */, + E4B69E1E0A3A1BDC003C02F2 /* ofApp.cpp */, + 397EFC811A09047C0009286E /* CameraSource.h */, + 397EFC801A09047C0009286E /* CameraSource.cpp */, + ); + path = src; + sourceTree = SOURCE_ROOT; + }; + E4EEC9E9138DF44700A80321 /* openFrameworks */ = { + isa = PBXGroup; + children = ( + E4EB691F138AFCF100A09F29 /* CoreOF.xcconfig */, + E4328143138ABC890047C5CB /* openFrameworksLib.xcodeproj */, + ); + name = openFrameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + E4B69B5A0A3A1756003C02F2 /* example-camera */ = { + isa = PBXNativeTarget; + buildConfigurationList = E4B69B5F0A3A1757003C02F2 /* Build configuration list for PBXNativeTarget "example-camera" */; + buildPhases = ( + E4B69B580A3A1756003C02F2 /* Sources */, + E4B69B590A3A1756003C02F2 /* Frameworks */, + E4B6FFFD0C3F9AB9008CF71C /* ShellScript */, + E4C2427710CC5ABF004149E2 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + E4EEB9AC138B136A00A80321 /* PBXTargetDependency */, + ); + name = "example-camera"; + productName = myOFApp; + productReference = E4B69B5B0A3A1756003C02F2 /* example-cameraDebug.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + E4B69B4C0A3A1720003C02F2 /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0720; + }; + buildConfigurationList = E4B69B4D0A3A1720003C02F2 /* Build configuration list for PBXProject "example-camera" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + English, + Japanese, + French, + German, + ); + mainGroup = E4B69B4A0A3A1720003C02F2; + productRefGroup = E4B69B4A0A3A1720003C02F2; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = E4328144138ABC890047C5CB /* Products */; + ProjectRef = E4328143138ABC890047C5CB /* openFrameworksLib.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + E4B69B5A0A3A1756003C02F2 /* example-camera */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + E4328148138ABC890047C5CB /* openFrameworksDebug.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = openFrameworksDebug.a; + remoteRef = E4328147138ABC890047C5CB /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXShellScriptBuildPhase section */ + E4B6FFFD0C3F9AB9008CF71C /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "rsync -aved ../../../libs/fmodex/lib/osx/libfmodex.dylib \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/\"; install_name_tool -change ./libfmodex.dylib @executable_path/libfmodex.dylib \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME\";\nmkdir -p \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/\"\nrsync -aved \"$ICON_FILE\" \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/\"\nrsync -aved ../../../libs/glut/lib/osx/GLUT.framework \"$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/\""; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + E4B69B580A3A1756003C02F2 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 3933D5D819BB87BD000ACA55 /* ofxSlider.cpp in Sources */, + 39C787BD1AC2111B00691393 /* CmdManager.cpp in Sources */, + 39C1247E19F187D5005DF557 /* ProjectionEditor.cpp in Sources */, + 39C1244619EE9589005DF557 /* RecursiveDirectoryIteratorStategies.cpp in Sources */, + 39C1243A19EE9589005DF557 /* Compression.cpp in Sources */, + 39C1248919F1EB75005DF557 /* SurfaceManagerGui.cpp in Sources */, + 39C1243719EE9589005DF557 /* ByteBufferUtils.cpp in Sources */, + 3933D5DA19BB87BD000ACA55 /* ofxToggle.cpp in Sources */, + 3933D5D319BB87BD000ACA55 /* ofxBaseGui.cpp in Sources */, + 39C1243C19EE9589005DF557 /* DirectoryFilter.cpp in Sources */, + 3933D5D919BB87BD000ACA55 /* ofxSliderGroup.cpp in Sources */, + 39C1243619EE9589005DF557 /* ByteBufferReader.cpp in Sources */, + 39C1246A19F0AB96005DF557 /* QuadSurface.cpp in Sources */, + 39C1247F19F187D5005DF557 /* RadioList.cpp in Sources */, + 39C1243419EE9589005DF557 /* Base64Encoding.cpp in Sources */, + 397EFC7F1A08FE720009286E /* FboSource.cpp in Sources */, + 397C46C21C3AE2A7002689E2 /* SurfaceFactory.cpp in Sources */, + E4B69E200A3A1BDC003C02F2 /* main.cpp in Sources */, + 39C1244719EE9589005DF557 /* RegexPathFilter.cpp in Sources */, + 39A9AAE91B0518FC00AA83BC /* MvSurfaceCmd.cpp in Sources */, + 39C1247C19F187D5005DF557 /* BaseJoint.cpp in Sources */, + 39C1245219EE95DD005DF557 /* MediaServer.cpp in Sources */, + 39C1243D19EE9589005DF557 /* DirectoryUtils.cpp in Sources */, + 39264843192224F90008A7F5 /* tinyxmlparser.cpp in Sources */, + 39A867961B0D312400165378 /* SetSourceCmd.cpp in Sources */, + 3933D5D419BB87BD000ACA55 /* ofxButton.cpp in Sources */, + 3968417A1BC91F6F009F0BAE /* TextureMappingState.cpp in Sources */, + 39A9AAE01B04E78600AA83BC /* RmSurfaceCmd.cpp in Sources */, + 39C1244519EE9589005DF557 /* RecursiveDirectoryIterator.cpp in Sources */, + 39C1243919EE9589005DF557 /* COBSEncoding.cpp in Sources */, + 39C1244919EE9589005DF557 /* snappy-sinksource.cc in Sources */, + 39C1248819F1EB75005DF557 /* SurfaceManager.cpp in Sources */, + 396841771BC91F6F009F0BAE /* PresentationState.cpp in Sources */, + 39A9AAF21B054FC300AA83BC /* MvSurfaceVertCmd.cpp in Sources */, + 39FA2B801C457606003FAB28 /* SettingsLoader.cpp in Sources */, + 39C1244319EE9589005DF557 /* LinkFilter.cpp in Sources */, + 39C1245919F086A9005DF557 /* BaseSource.cpp in Sources */, + 39C1244019EE9589005DF557 /* FileExtensionFilter.cpp in Sources */, + 396841751BC91F6F009F0BAE /* Application.cpp in Sources */, + 396841761BC91F6F009F0BAE /* ApplicationBaseState.cpp in Sources */, + 39264841192224F90008A7F5 /* tinyxml.cpp in Sources */, + 39C1246919F0AB96005DF557 /* BaseSurface.cpp in Sources */, + 39C1245E19F08965005DF557 /* ImageSource.cpp in Sources */, + 397C46BD1C398D72002689E2 /* SurfaceStack.cpp in Sources */, + 3933D5D619BB87BD000ACA55 /* ofxLabel.cpp in Sources */, + 39C1244A19EE9589005DF557 /* snappy-stubs-internal.cc in Sources */, + 39C1245F19F08965005DF557 /* VideoSource.cpp in Sources */, + 39C1244119EE9589005DF557 /* HexBinaryEncoding.cpp in Sources */, + 391717F31B0A8A7300F9A484 /* MvAllTexCoordsCmd.cpp in Sources */, + 397EFC7C1A08E7680009286E /* ofxPiMapper.cpp in Sources */, + 39C1244219EE9589005DF557 /* HiddenFileFilter.cpp in Sources */, + 397C46BA1C3971CD002689E2 /* Info.cpp in Sources */, + 39C1244819EE9589005DF557 /* SearchPath.cpp in Sources */, + 39C1248019F187D5005DF557 /* SourcesEditor.cpp in Sources */, + 391717EF1B08FFDA00F9A484 /* SetApplicationStateCmd.cpp in Sources */, + 39C1243F19EE9589005DF557 /* DirectoryWatcherManager.cpp in Sources */, + 394BD2431C4D63AE0089A48C /* TogglePerspectiveCmd.cpp in Sources */, + 396841821BC93DDC009F0BAE /* AddSurfaceCmd.cpp in Sources */, + 39C1243519EE9589005DF557 /* ByteBuffer.cpp in Sources */, + 39C1246B19F0AB96005DF557 /* TriangleSurface.cpp in Sources */, + 396841791BC91F6F009F0BAE /* SourceSelectionState.cpp in Sources */, + 39C1244419EE9589005DF557 /* PathFilterCollection.cpp in Sources */, + 39A9AAEC1B053B4200AA83BC /* SelSurfaceCmd.cpp in Sources */, + 39C1243319EE9589005DF557 /* lz4.c in Sources */, + 39C1243B19EE9589005DF557 /* DeviceFilter.cpp in Sources */, + 39C1243E19EE9589005DF557 /* DirectoryWatcher.cpp in Sources */, + 39C1248119F187D5005DF557 /* TextureEditor.cpp in Sources */, + 391717F71B0BCBB500F9A484 /* MvTexCoordCmd.cpp in Sources */, + 396841781BC91F6F009F0BAE /* ProjectionMappingState.cpp in Sources */, + E4B69E210A3A1BDC003C02F2 /* ofApp.cpp in Sources */, + 39C1244B19EE9589005DF557 /* snappy.cc in Sources */, + 3933D5D719BB87BD000ACA55 /* ofxPanel.cpp in Sources */, + 392651711C5429C600C54844 /* HomographyHelper.cpp in Sources */, + 39C1247D19F187D5005DF557 /* CircleJoint.cpp in Sources */, + 39264842192224F90008A7F5 /* tinyxmlerror.cpp in Sources */, + 3926483B192224DA0008A7F5 /* ofxXmlSettings.cpp in Sources */, + 39C1245119EE95DD005DF557 /* DirectoryWatcher.cpp in Sources */, + 397EFC821A09047C0009286E /* CameraSource.cpp in Sources */, + 39C1243819EE9589005DF557 /* ByteBufferWriter.cpp in Sources */, + 3933D5D519BB87BD000ACA55 /* ofxGuiGroup.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + E4EEB9AC138B136A00A80321 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = openFrameworks; + targetProxy = E4EEB9AB138B136A00A80321 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + E4B69B4E0A3A1720003C02F2 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E4EB6923138AFD0F00A09F29 /* Project.xcconfig */; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(SRCROOT)/bin/"; + COPY_PHASE_STRIP = NO; + DEAD_CODE_STRIPPING = YES; + ENABLE_TESTABILITY = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; + GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; + GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "$(OF_CORE_HEADERS)", + src, + ); + INFOPLIST_FILE = "openFrameworks-Info.plist"; + MACH_O_TYPE = mh_execute; + MACOSX_DEPLOYMENT_TARGET = 10.7; + ONLY_ACTIVE_ARCH = YES; + OTHER_CPLUSPLUSFLAGS = ( + "-D__MACOSX_CORE__", + "-lpthread", + "-mtune=native", + ); + OTHER_LDFLAGS = ( + "$(OF_CORE_LIBS)", + "$(OF_CORE_FRAMEWORKS)", + ); + PRIVATE_HEADERS_FOLDER_PATH = "$(PRODUCT_NAME:c99extidentifier)"; + SDKROOT = macosx; + }; + name = Debug; + }; + E4B69B4F0A3A1720003C02F2 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E4EB6923138AFD0F00A09F29 /* Project.xcconfig */; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + CONFIGURATION_BUILD_DIR = "$(SRCROOT)/bin/"; + COPY_PHASE_STRIP = YES; + DEAD_CODE_STRIPPING = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS = YES; + GCC_INLINES_ARE_PRIVATE_EXTERN = NO; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_UNROLL_LOOPS = YES; + GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = YES; + GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO = NO; + GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL = NO; + GCC_WARN_UNINITIALIZED_AUTOS = NO; + GCC_WARN_UNUSED_VALUE = NO; + GCC_WARN_UNUSED_VARIABLE = NO; + HEADER_SEARCH_PATHS = ( + "$(OF_CORE_HEADERS)", + src, + ); + INFOPLIST_FILE = "openFrameworks-Info.plist"; + MACH_O_TYPE = mh_execute; + MACOSX_DEPLOYMENT_TARGET = 10.7; + OTHER_CPLUSPLUSFLAGS = ( + "-D__MACOSX_CORE__", + "-lpthread", + "-mtune=native", + ); + OTHER_LDFLAGS = ( + "$(OF_CORE_LIBS)", + "$(OF_CORE_FRAMEWORKS)", + ); + PRIVATE_HEADERS_FOLDER_PATH = "$(PRODUCT_NAME:c99extidentifier)"; + SDKROOT = macosx; + }; + name = Release; + }; + E4B69B600A3A1757003C02F2 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", + ); + FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../../libs/glut/lib/osx\""; + GCC_DYNAMIC_NO_PIC = NO; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_MODEL_TUNING = NONE; + HEADER_SEARCH_PATHS = ( + "$(OF_CORE_HEADERS)", + src, + ../../../addons/ofxIO/libs/ofxIO/include, + ); + ICON = "$(ICON_NAME_DEBUG)"; + ICON_FILE = "$(ICON_FILE_PATH)$(ICON)"; + INFOPLIST_FILE = "openFrameworks-Info.plist"; + INSTALL_PATH = "$(HOME)/Applications"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_2)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_3)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_4)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_5)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_6)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_7)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_8)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_9)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_10)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_11)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_12)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_13)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_14)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_15)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_2)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_3)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_7)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_8)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_9)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_10)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_11)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_12)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_13)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_16)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_17)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_18)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_19)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_20)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_21)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_22)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_23)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_24)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_25)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_26)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_27)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_28)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_29)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_30)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_31)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_32)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_33)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_34)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_35)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_36)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_37)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_38)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_39)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_40)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_41)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_42)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_43)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_44)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_45)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_46)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_47)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_48)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_49)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_50)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_51)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_52)", + ); + MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_LDFLAGS = ( + "$(OF_CORE_LIBS)", + "$(OF_CORE_FRAMEWORKS)", + ); + PRODUCT_BUNDLE_IDENTIFIER = cc.openFrameworks.ofapp; + PRODUCT_NAME = "example-cameraDebug"; + SDKROOT = macosx; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + E4B69B610A3A1757003C02F2 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + COMBINE_HIDPI_IMAGES = YES; + COPY_PHASE_STRIP = YES; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", + ); + FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../../libs/glut/lib/osx\""; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_MODEL_TUNING = NONE; + HEADER_SEARCH_PATHS = ( + "$(OF_CORE_HEADERS)", + src, + ../../../addons/ofxIO/libs/ofxIO/include, + ); + ICON = "$(ICON_NAME_RELEASE)"; + ICON_FILE = "$(ICON_FILE_PATH)$(ICON)"; + INFOPLIST_FILE = "openFrameworks-Info.plist"; + INSTALL_PATH = "$(HOME)/Applications"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_2)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_3)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_4)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_5)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_6)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_7)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_8)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_9)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_10)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_11)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_12)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_13)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_14)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_15)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_2)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_3)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_7)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_8)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_9)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_10)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_11)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_12)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_13)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_16)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_17)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_18)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_19)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_20)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_21)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_22)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_23)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_24)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_25)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_26)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_27)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_28)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_29)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_30)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_31)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_32)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_33)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_34)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_35)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_36)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_37)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_38)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_39)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_40)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_41)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_42)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_43)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_44)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_45)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_46)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_47)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_48)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_49)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_50)", + "$(LIBRARY_SEARCH_PATHS_QUOTED_FOR_TARGET_51)", + ); + MACOSX_DEPLOYMENT_TARGET = 10.8; + OTHER_LDFLAGS = ( + "$(OF_CORE_LIBS)", + "$(OF_CORE_FRAMEWORKS)", + ); + PRODUCT_BUNDLE_IDENTIFIER = cc.openFrameworks.ofapp; + PRODUCT_NAME = "example-cameraDebug"; + SDKROOT = macosx; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + E4B69B4D0A3A1720003C02F2 /* Build configuration list for PBXProject "example-camera" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E4B69B4E0A3A1720003C02F2 /* Debug */, + E4B69B4F0A3A1720003C02F2 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + E4B69B5F0A3A1757003C02F2 /* Build configuration list for PBXNativeTarget "example-camera" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + E4B69B600A3A1757003C02F2 /* Debug */, + E4B69B610A3A1757003C02F2 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = E4B69B4C0A3A1720003C02F2 /* Project object */; +} diff --git a/example-camera/example-camera.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/example-camera/example-camera.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..8002736 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example-camera.xcscmblueprint b/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example-camera.xcscmblueprint new file mode 100644 index 0000000..f07a487 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example-camera.xcscmblueprint @@ -0,0 +1,30 @@ +{ + "DVTSourceControlWorkspaceBlueprintPrimaryRemoteRepositoryKey" : "F18B6FEBE66912B859D879DB0D93A2398D3668F4", + "DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey" : { + + }, + "DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey" : { + "CA29DB320F881B85D76220FC5498A4D1FA4F037C" : 0, + "F18B6FEBE66912B859D879DB0D93A2398D3668F4" : 0 + }, + "DVTSourceControlWorkspaceBlueprintIdentifierKey" : "DD202D43-228A-426A-87F1-93F098EBC593", + "DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey" : { + "CA29DB320F881B85D76220FC5498A4D1FA4F037C" : "ofxIO\/", + "F18B6FEBE66912B859D879DB0D93A2398D3668F4" : "ofxPiMapper\/" + }, + "DVTSourceControlWorkspaceBlueprintNameKey" : "example-camera", + "DVTSourceControlWorkspaceBlueprintVersion" : 204, + "DVTSourceControlWorkspaceBlueprintRelativePathToProjectKey" : "example-camera\/example-camera.xcodeproj", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey" : [ + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/bakercp\/ofxIO.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "CA29DB320F881B85D76220FC5498A4D1FA4F037C" + }, + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/kr15h\/ofxPiMapper.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "F18B6FEBE66912B859D879DB0D93A2398D3668F4" + } + ] +} \ No newline at end of file diff --git a/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example.xcscmblueprint b/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example.xcscmblueprint new file mode 100644 index 0000000..f42f402 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/project.xcworkspace/xcshareddata/example.xcscmblueprint @@ -0,0 +1,30 @@ +{ + "DVTSourceControlWorkspaceBlueprintPrimaryRemoteRepositoryKey" : "F18B6FEBE66912B859D879DB0D93A2398D3668F4", + "DVTSourceControlWorkspaceBlueprintWorkingCopyRepositoryLocationsKey" : { + + }, + "DVTSourceControlWorkspaceBlueprintWorkingCopyStatesKey" : { + "CA29DB320F881B85D76220FC5498A4D1FA4F037C" : 0, + "F18B6FEBE66912B859D879DB0D93A2398D3668F4" : 0 + }, + "DVTSourceControlWorkspaceBlueprintIdentifierKey" : "7BBBCBAC-9A41-4C8B-9A6B-DE741AB94199", + "DVTSourceControlWorkspaceBlueprintWorkingCopyPathsKey" : { + "CA29DB320F881B85D76220FC5498A4D1FA4F037C" : "ofxIO\/", + "F18B6FEBE66912B859D879DB0D93A2398D3668F4" : "ofxPiMapper\/" + }, + "DVTSourceControlWorkspaceBlueprintNameKey" : "example", + "DVTSourceControlWorkspaceBlueprintVersion" : 204, + "DVTSourceControlWorkspaceBlueprintRelativePathToProjectKey" : "example-camera\/example.xcodeproj", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoriesKey" : [ + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/bakercp\/ofxIO.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "CA29DB320F881B85D76220FC5498A4D1FA4F037C" + }, + { + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryURLKey" : "https:\/\/github.com\/kr15h\/ofxPiMapper.git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositorySystemKey" : "com.apple.dt.Xcode.sourcecontrol.Git", + "DVTSourceControlWorkspaceBlueprintRemoteRepositoryIdentifierKey" : "F18B6FEBE66912B859D879DB0D93A2398D3668F4" + } + ] +} \ No newline at end of file diff --git a/example-camera/example-camera.xcodeproj/project.xcworkspace/xcuserdata/kr15h.xcuserdatad/UserInterfaceState.xcuserstate b/example-camera/example-camera.xcodeproj/project.xcworkspace/xcuserdata/kr15h.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..2767758f5c16db67cc5846025a77296951228830 GIT binary patch literal 108619 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 i%JQsK_^jze**t6Dixo4f{3eT0E+dQ{>?(p2{ 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 z zvobX<<2&Qe)cCE&@4@T+4t@{39xQ)weBkxK_nEdDe=+_Fz`q;eUjmp3O3>AqsS!uk z7QuxiC9O>j9g(N8Oynu+Boyd2q{4sdQ>T$XQpZbwlYWf+pZxF2Z<>H^B-xz|!}k+K zO>pl`>OoDBzm7au)3}|G!u-K{&&*pB^N$_yj~PAmYbI%$lHTIL(~-WkFiWjJWi0g zmK(zCWag$T?FfDP!G<+pSPDPxo`S}LVUheoJ_w+;I}?tJt2D%GGlZEVCA_--sb8p^bkHx=BuE9Dkq42?-0qw#wbeCEFiq)mFlnZA z7)&N+>M_$G4JIrJr*f?C_}6a%OOykm$;-|MnHOZjqUdRes_LW4uIts^hmtKG@CFv(=^NEH-UXP3NuGzrU^66TTG>RcbR-M~9?xjUOoud-PFddh zD`$);fEXn+k4QN^Pja8x8uw{hYHB7DkLR6CEv8lghQ~OTVP?4myg~x5Hh#UW^K97; z=H(OHTA;SArsby9fEm{ZnAVt%1xyh$t1ts^#DFDSEn$|07Y^!tQNqm0Edb2yY<19S zI@xpv!HnmmOlO+T0!(-xbW}0Qk9~Z8j52n8W^f*6{1bp zpb`F^ru+I7(hen=J6n~^fhjCFYuW7E4vl2DrbkRq5`?%*@hQ{Oz}mBzITthMNvxeO zvF2NK;U~A)WHn3ABWjifejpn8nRc0^3P8M!*|ggP6#&y-%v^{Wcw-3E>|zPCX2q2& zKIoFwEQbWVIV3OW!FPZk3R4laVK%)cB~p%JU_)&&XFVM)O?r5q%0_p*aMYb(pyWGw@Cp zsQq2C5MD9n|Ngx+JsFTi#pWpHCFUlA8P5xto6RlqJl%sCcy$XfBPtqv=ZlEweJ!A&mI~^QC=aUS?hkn6M@v#mr+8=HoJ^ zsmifCU6y0MBuDMsY%*UBnDI5~8uPV)c|B&H#LQC?=F<{p<@h~&?B~w!hAavOU67s) zijjlifBWf_;FG+j`^WL1l@G4oJ5E9Pm&Ii-k1Nof!Wk`O^ z&qGSJ4{DfTCSR6{n2c1%WVf1MF~179ubbgHu2(Sgs)YO+W?qkz{Fup0ze$LflZ*pO zeik>i)^(0W(BYO^eRNQ59d(ps?h&7btCcb}T~f!yKYvo|mUui(La?v?d!?4790vYrgqnpe2v*P)ggxzd)EAH}jz z7OpR~v+x$du*U+~^1GOMPr`a%R=dovzIS{g4IM6Bg`sB_s7q89tHlAB7Mmr>Vz)qL z^+U{jgqe>q^T`&A)8Yb54`x2a%svV8v;S!T=U?{orH3tw$R)dgEOf~zW#%j5wv4ol zBO;0yfLO*`CctneVg^bRUrNLIN)l0;@rlEh$Rf%GKLi1YCX=;fSaSOmd!8j9FsEYX z8_awwVSXozJ^lQ8|Cy55v(rh8pOvc-`wR;yn#Qf4SV}BVG`09K^8;pnlrVpiFl(BB zKlJT(2{Rw+uaI(Qk@7>-hFB^r!9E9HZK(lJ$hUvS4D9lNuKg+x-o7mmUH{WJkN5zw1QbZW)0H#l@B)aJUJxCd`_pQOjs)_FJ-_-6wIFmrfKkH%BAMYb<>x zE|zT;NL(!NRH6;D(q0Q|mnE6;=etMSCCnTtOv=hpX9t!$EhJ}&FUcL2oq+iOW*wMy zN_@IxNxm^>)SRCrOt=9W_{=26ut$=QSx9j+zS2Kqf#RkGUT^eZHbuf5Bw^OHeSFY! z_mNT)OmqfBp`b~5c@Q$@M#Fl`E0#VBoR&QnC~#Wd!t4;t4wZ0+Nw{godzXLikjI}z z7HE#97-{*yLJFL5UA$$V1qz&&FEE>m*%1=vNLi+ne_!I3%g))dc9I;SXZ+t;_V+pd zpDn)tCcLRR8na_0%(3$LJI{Z7foFbqK^F0f1)!i%_9@7PpQCAlm9`3m*LX(Hsj=EIB%uXk6HY-P+C|FaiV*oR56lNW39S4{bFq@9q3<)z+!kqfvk43M`#qFG2 zf|;SI>{!#R*#t9QS~SS%w}UYN5agNFe?k1um9o~Vx0;gOw5N}I>>LbNtHA+ zI$733twntbwb<$dV0g+Du%*2WR^H1XX@kH3*nB zm^}ou(q0C8sLbr-ad&ha31MhX7Rl$bbMw|j|5DHsXjm6m>j2w&gms}cWIYnIGcfDL zY$0ZgwpbTg>j68A*<#H4Btew?PaS#1i4)epzOA-fsW^f~(`@=!TmO%_`+$$4S|9&^ zf;$rgA-kJxkrsLlq!$n*fkf#g^cF+1Kp-R`g({dM2m&eyC@3n1svv@bC@2UbDBaLY z=p}S}K`j5z%%oy+@BP1Czwh^c?|r=mvb$%V^PFeS)XaKiYMn{*8snAjl_5<}N>c}E z>L^W}mV0G+jioc=rKz(tbGiDFjB*RGg?X`y9@P)sFq-n68q#=5edId#_sm~kJjegxLK)aY++~x+aPiV8u&5hS) zuPw%gn>8g~YqMb2yHC=KQ^X*>%`o;b3%1%`JG^#lO_gkH@4cn z!}si(^DEcRL-iB(0Yy8hUWdGnmK)eHuj6#~q%;karr~;LN9djHlX38xcQsC!@WlyC z1OED5BivfR{8F@Y;dRdIa=Bq%@w#e+IZ~QNmFRKr@S7LvCK^5F`fFj2Z+m@DQ)QlU z^!mZ;M`HY0nnp`giXLOC9%J;x;j>da8w0{FACqd3cElK7JS6wcLJP30{WG(Nxk9Bg zX1-5)j5MX|t!C)0Mx99<`|D$RtIUCvPN09uVK!GXd(mc@TR*eeY@tnWY08qOv3i^1 z^fp`AuH0S{ska#ss$EIZSG3|YCT1UV&2k&9W%i}fI?^;jnkMRvPBI#OWXlTA`&=;4 zuL^RaP~S%n3uYBA%7D3%*-y(rS!Z3%&CM-nI6#^vOVbp+;b-)Q`%HZ4oq=?m`9Dyf zVFDsbP6g&L^J7|@WmTuSwYiNk>{6PZ)!HmP{S>}o%HdB7j->*M_NC0x=8jrhWsXp% zf^*d-&hJ+((N@&4ko+Cn3M$9k)7+O9%(3QP=H6!Jqv_H#Lz)d{fAP+;9<%>EJU^L}M?wDVsf0y@P_&_Zg9)=#(OnH@w|OKTD!af&nUm>I ziZs0>O>^`P%`K>f`BO$5VaC(;Dk8YOg%aaTbjeD{G*8f)Eo;g%Pc%=WS;}CZG|ktW zU7$DHD`=kcj&Y_hnCpJ*U}*Ol6<60(^Yi77-c0i>+I&HpUX`YWdYg;%Hlxl&51nyD zudaZw5be@gsnu(qd11M|Uu1rbCKpQ+o0`RXlW!Qkw>R$7^9^nNXRZqK*LokST|+9d zg5{W3mfP$q^E))VTAJRHrX_l_ZxWv&XF z%pcS2W@+LGYnk5ca=qE!z3UD-KT$ix(C*#|<8WP@542tE;>3P#*3bBrwTo@uW#){Z z`DNcHc3=t-5sN%pffbBs4T!8?JEeD7(1TgXSaU4%bohF--}ycRCk2OVCuIFO z($ZFh(pk7~DR-k_@vyK_;7$S4CTTLx$Qv8isI8Zt9od^Pi_lMX2NbQXmWM4>%Zt+D zWieMeW3fsTMX*KB>8AxFwYK%9tF)#a0|)rCsn#khjQO@`tSl}|jdI(qX{lvIxmB9B zY3&wFvMsElVe3oAs#SbLqoskRDNR`#S{hjzTbfAIc4^unO1t?w^; z*|9XGH zmH%o1cN{YW;@Xtm) z`7#%U`8G4{<_-QRYVSkK$Fx`GftlqK%Vwj!8`5N)Q8%Wukf;9Wy2v;iRpO>k%XZ5y znksum*lqcWJnxaF+tPGL&+}cQW`iP!jWbTd@m*`IT*3Y&&p}uYS+s+XGEc%-j#)VP z(7OAbG<{#9yAki*yj}JC!Q52B-AwunS+u3GoV93MnzHNlvV|>;h1~rpO+V=|{;bCs zb+-DSudUX{gmW;&7+C7A63cCiwxub%YJae>rLnN3`Bj>J)7!kKx7la>foC$mHO86C z@|-9tbr#=p->Pk8%Ivq*!^&31%Av=7Y5GHN^H06ah&f@4FN7I!vWcP1QYT)mm8|-q zM_Ch<)okU^!^)w@-%=4;n~H}qJ^}CTo;yo#Gt}71mRh&0K346>qs)9-Ygsw+u-1{v zLsBv6Z7N1Sw@=yREZBt$)yAADI)J|vl(@B#RXgY?vyQCItsHb%1Ek_9m5O?s4;yiY zefIG@A0tlvNJcxW5x~7gg^h+;^`nlmj%2K@tsHe&+e)RfR36bAt)e&DXZ-k^=JQD zfmTx5?GHt3rM0(p0F9QpR$2#I2hr#dsd!7prZ;NW8x47?`>3{YoNr|f=OQqThLk!7 zV@4D0xE z`#-@tkyf9UN;Roe*ITV&^xwL%_xGwkTH!%jq+zA@;;qkG%RLEYecsA;z&cwhwWQ*! zw^`e0)4R<)8+-9V+Hcx$4;cHI;i1}YT=CY*`m$Bq5|lkw3$1JktglO@u2kyj?bbKi zeWY#ln|Vf&h8SyA$pa(n+twAdS>`ES>q_e?+I&|k4W-gZZ?m!9X7^@a?f>vO?OrwQ zj)I6V?c{4{sq+NZb=HmLhWe3p6U}}im8Mc@rZ?+nglbn}+STKR)G*_Y0&aNaDsN!8 zzjlZi99Fb0Y_skxx9u;jyJ-6>skD%azutC0K^k1Iziphp;?fxL^52qWaKL()Hp`v} zj#!V<=5eV6NhMfsGemDQYUkc6)u$LMt-p4GG%!#*K;&XX;aZz#y-2HNuLqZ`mudB? zRKlbZuD2SYw;B@n)2Tm<^Ev^X*U@f&DS7_EddvEq7HOHQ!S~i5^i7J=N-B?OZ5Ez? zs62P|-gA1SJZicqynEKav_zIUqyFtJDxLAJAeA;!d0Y>#tsY*l@E7i!E4W0U->c4! zT8Tt@SM;t@UU=SBy}gX^qNLKUWO(7nf*TZUkonDyg6w%ay!D%q%eoKGySg_wA$zk9 zMN1_{5AO**yy&q9=1ee-*|lFrU}h>EUVZN-T6krhaq({I-HbMyOQnNUI_hn9GRFB# z(gArv&t71dcBL&qyOL3qM(<$n2-+-jW9Qw{yA^G=mP!|?bk*DJrnlMha?b;&sui@U z&7j=PShCG_-cOdB#tz;cjWqU{MsCd-_QyoY%Yr^zI#^plEy zMqJ^HxOSns@`^fs#)&|#`qSxmzTc6h+?~p7&X!wXsqeSE9Av;g{{}59qxvad*D=74LE{ zP<^r|%9jQ!^ihhP#G0sr;@;f=W?HXehFF2K6Y8C&{TfabEW_b6!xj^mxhg2p@ zML#*M7$>KD_sMLv;ih((L)(WB<61JK9iVN>igy!i6>Q~Rp|(}DafRB(j-r%`eui3^ zs*g;IM}FBG+q9=n81iE; zb;%y0XF=PaWg02D`(^XB@w*voZMAK6Y;|q*Z1rsoYz=LVY>jPAY)x&=Y<^OiDHZmX zUX;olsk|(e`BHgBDhs9Znp74`3krx1 ziuU&l3l9(WV}%O!iwup>!s2>(yO{QzK#45bknuG}%G`f6q}@&z6cQ5Q7Zld6onLVK zut>k~n3yQP$e@tmfc8u;q3wf9He`GWk-~GOABZR>G`xLeR8W{-Ky(B-iVPt=?ZX26 z{M!*xNN|LIR8&aGhKw%|Qg|}-0}b(^kcbffK)>LakSITX86?mzJRq8X`g4D1U`$Lq zZp|p!knz1g3J-ODprNpUQ2*e_pddeg|A+v;V7~U;FETtj*e@WceOP!%U`R|@M5!DZ z-`=C}Jmv=)iU06*@)3FBUgApfYqppp?8U%;dA(Buai z3J(ttBt4;iTva5Z(3lXv$e6$wzn~a@e-78$1w@5Lmu$%R;v9u1AwSTNmQw$y0FoUO zNwOnC!u`VAg}3($507leHIT^g(3tR&4H@5hqwpZ(2O5fsiU?>IMLkCbhx?Q4;Ap=H zt|RzGNBGCI3k_)>8W>!vA>(^%6rMx;KtmBR{?XwvQIUMSU5HzdY(e;A_{!jJt!$#x_KsXt-C_Kb~t z(Q<6rQdyp3dsZqdw9{Zdg%3F>e27Bl)CB!InEA!UN}{rDx=75ivE5&pUHzD-ERNV_ ziKDjJwiiUFN>^-cZLA_@_xQB-Q&B*XO55xUm8(SDzl`r z>WFQgZ9Y#5FxeK^UWqeXy2f@Wd|PLC%J9q)v{d3}ed3d|+-CL&-#IM0iypRxwnYO= zyu8%*n&?&X2gbV=+ZcUEhxXB(Q-?p;p=Gu=ZEuNQ<-Q(g_HN&&*MpxbOy1kJ9MR}) zF8dVzV7ZO!MLD(=Qh6`Own{2%|C4O4(X#oTRNgNun;+WP!!Q!IPAcpFG1mXlELN1| zO}1CeJxO0-yqj&GYVmH7%7;0&&!n>9KZ$p{7Vi$JY%D9@Znm!rOdy=os}PqL4+j}pF8xsY8&-*2R%FG+=pzLH%fJEA{dnKs;= z8QZ?ofTWD*+=Hb@zWPv0Z9PLb^NCJ#ch#NaZi7R+DOVZR70EbQ+nEnKU*jb3#vdT55VGPqR!*c4sD~ro?8A z)}Hod%(SuY;reqXxL4~RAL*8+y`70p+Y>C^TCb$cWVgO4wx1QLE9~d&=j|8l7wycZ ze@j)BY9*;wm8y5PZ($Oy+BvPU%zn+DZ@(^8Ayp5lR#;}gX}@K^E!BslYLcp=h2G#F z3o8{V&lXEfr&n?2rvLhlQ9NZf)}6+K%J`~?ICJBF{cd9!`rdNgwiS)qND#jDD+u2q zr8h-|9s1eMQ%(Naq2KNI?SDwsQ>qoEs$FqwYcwW$`1X#)F!xUvCy2UJia!`5zHEY!17_AyqG_nx(2;ReRj1VNuY( z!;WgAvZK1AM&GWn%@gA@aOQA>hK(8zFhWh? zgZ+%Zy0wP1_bhGHgtoissW{TiuTt|C{>0E%+vL+TJ(k$C_yl*9zc4?PU5Vxbg9?LO z8rXz?hlKLR_DQUzsVS_FOGC6DhDWfkP$DylM$VSDY*OaW`JgxD)l=4aOq3 zb(>!4si~RS9-^YKh(|?T;U@w`n1~jgL{BkL3>B$jjK~mK;u$eryd+)|Z-}?V+hUnm zAy$cZ#d`6H*de|ax#Fa_D6WWW;<|^2hw5SRc+{h|M?DWek6@3-JUV!E_UP)--J`e1 zV2`If+#cy3SsoKT=6KBWSmm+V<1>#PMwTmh7=Mb#3;rzl!(*pZxeUe;siT&|cW~F( zE?JrJ>}|ED{Fd>f+M*YE*8Wwvy3}=WHD#s!nxnp>f&IFpk)yFbi`b-UXCjd*74BSV zzbSro_&J)3U&XIXD%sto>XPcC+1>d+Q%jwHJqKvd+WEI{A|~F{@L#v2y(uYJXA zdRB0Ba&&fdQD0Qg$qKb)g;eQrQC8rdp*2#iCDqzett<$O;MCJl=ux79A;~&W>LC zmS1H)%KU%)5Z6*)wo}emg_PV0aTq7`R0enKe<768&;E26Ck54d|C5hIE$e#^$cVlJ z|Hk4{3sj|v6k!n+^He2Nw=@{im7F8XI+Od&T z{iNDlsx7kF5I52fj)}Y>vUa6_cL*vssWE4Eb)Y#`K zcrAWtROy!{ai1Jl*ttmD%$G}O+7+}=?iHDAtVWYK5OySL$*NwM{AV1qM5EP?Y=?9_ z>zL}8=6KFA-7&-Qykn+R{iPZp)j+8RNi|riAyN&MYM4~Rr5dr?F5sx27?wUtyCOEpJ&R+XOm%_g4JviVJ-f%J*Yca9(GPUd_c|B4-vI<9N{ z*regw-i~%KZ5$Ux@*UuDWtH<&1=#<3x^h7P&+MA7+*hk}AAhjJO^`>N44LPj_eV7voGaXL}0+DjKW-JQSHs^-6cU3+r%)gL_tT z9A8K^CdcumRJmJ$XYv}$FUV_oizsa3YsX%#i9J$%GRLt`svWZH^wPdrr114ajw8al z%<+vQ*Kt^?9i`eys-2fPj*{8qQthH;GbNinnZ~7-O2XJIQlu%v^}iPF`%n^`3@QCy z&av=-;lu}j{)9Vqv^z6>g0U9nX=~wGsdg=13okf$5Kj@ynqj=PR;rP@cTeWf~3s-vVDC)H%Ba&>x;R;1c~ zh_-Vu&S@1C7$B`s@ca#BL`1i!T8tPJBn8Txl77LLvDP9d!S@_{2xZi;l8oQn3q5w)Lo zB24Ws)d3vdYP%dyznSXRuc2xWWahHDao@x-XJzLjqO!A!v#Qg}X?9wiR&kHDq%gR` z(_cf112}k?C&E>QX9c zMw88prZo1Ev-I<9dQ~_bB5|41>2x`Lq&h^ZL#67bKAhE^HQ2+tpIc_@wlu&idMAk$?G~f+(B~osFEnQcaL5 z+mQHJp6G3^Q23gkxTn1~Ok0cM|8eknRJ(fQ40Hww);TurN!j9m@ZsmB4}Du`Pac18 zMmEwD<_s_U!p~A?gqD@Et_c~RY~_3`&fMt1Aui5x>2+(Vv$fXTfBb&Nqh!D>TbBG+ zqsE+WC@Qf|Ntw-!6}+%8n;Y95?WAmp-Ct**vHLs1sJ3Y4AZLtJQ?six_fOJp(e>AM z8Mv3QnQt(^;#+u=h_j=!8}~FgJ2^W$yEwZ_b&OQgrJ5nt%;nDR&K}}dCsR|FR3~c3 zEl+3H>DSpkOy45+@2Q=$(l)9Cj0s%d{+R6~t!P6~v>_>&2b=?(aoW-bItMuiJ6R3J zN_Cu6$4hm>@=9me2oB^#c!j^%^i^X6$QGhnpZN47Z8Br`$URQmpk?%oAE%!YVRnAB z^s5E4b8G^K9C2pfQZMQs=Zq6O2Ksf(RBgY|QR*#v>)MQ380<(V58BFcGV@N#5%;uR z941lr`!Z6K-ORw8)z-RP`0g>z4DH<{Z*q<^Q>s(+w{z98C>z?eYa9SM$BWdZ&I!(m zQhi3M&la7Ka!%&!I;~69LCiNE?@Nz$OP$jBtW>k5DzhVsQeU@i`rG<3YvHnIIA=ZZ zvDwZSq&iiq)3}0AG*EThK69be=U#Sl16PS_EY4S){Qg}Inhz1pT76 zjrQV`g}W8nj!50MgSP9RKkD4*{K&b9N&jQf$+_9dmmylUGYduuYI_`A8Iw4(bGSPt zDJ#QRy0)+G9-nEv;z~2VSl}NoNp)eikm?+%zJA>KnR6@4*yjA)xt-;F?A+;La(?Mi zu^;D_k`vS2DSbGH$3D=&1g+_mOyelsH!(Fqe?o3~6U9Kz5*F?`Y0FwDRgR?RmfVi* zc7A1S$E5nIR9`OK>=>i4U)zWra2|9XlIlFE&X?+f2R0%_+l<1AyY!@9_|wzIbpFbJ zJe`-yi1RWz+38VHbn>Vu)kRuQ_`V?{#OvD3vzatzS2w28+fFVFXeS(swv46r)JqTC zQs-T5CjC#}ZY<$D=l5~uy8povmO6jXTK`YpTDWHYtm&@hjdQ_?_rTVE<_eyo2HUasT+L9CSr239j-<9fW zsjiXgdn;XyT}}ADj597j7svW*rMgku_tSR&Hc9nktqV477SV4*aVP3isJ50H$K*vJ zm3lqOJuEf7V1{P5-gvuqo`CP%VeKp2kQ!4sZ-`FOwlM6~YkNtt?Yd~Y(peb~zN{S| z7969~PNp$O73QYIp^hue6~TpM7e~?W=eSx*bzR|vW^A@1GfKX>jjJv7<>Ih#eU6L6 z!VfsbQF{NTFq_e?4xC7L#W)+fo|G!}#D3Za{;mCA|2IGSFuP9oKE`+M6@ILTE4DZq z4lzE;jwpPoudAOi`<6;}SrTC>3R~j!l?l4*9=)o7il zQvF=2+oif=rL&Q1vfycUu59fr5j(42Fpp^^vxom`C8J$7ViXfbX&0C{TGb9-^z5@? z;3d7X^?RDM*;qevVsF6NKI)00g3>n`DVfGTjouvl9^F!sC-lrpNug$< z$}EhvRC&jl1Nixq@nhW`Qj#*0;**mn6u#cBdv9Z_sV%c$OI2`Ss7RRSn?ponm>00Gtj@YkH5C^1sP^xV1zL9FKR1Zt_ z$h!>u8rOTSwfwox#TO~KKGX;Qs8l(0Jg)uSv$FKme-q48-;317FFHLvHT}VLn%Rw) zxGs_$pO)cH9?ymR{e>E!f{QYDU{feV{q*t^7)5Pt8i>110v?^_7u3MhnjHxweVqx3g;-W3)pgFLiz4qI^zB^=5YM!j$fI z?bEgrU%9?^?QyXkI4RXrQavrzGs|83T?bqTU8FNlsu!esQL2};LbDX^xD*~SXAB(1 zMY1jwM*MJhuS`19KO<{sQbtCW+t`D39cMf5V!>y#tDhD}U8h}VTzRguqO$9pIO00* zy5PF#Z0c<4QPIQXy5wSi!FAbnm9AxQcZsn^Bxj9I>6$fqsCF{W>P|`2SCf)Iv?P@J zLMLt{QLWO|e5qcS>WzZkBG=!Pg%A6KSIa32pND)*J|?3qd{oiNNA;;F)obPuM#AE8lc8wy z_5a3~5yzQ>in22zKErpY+nwU;9?$9K1nwf3;LFVjquhxlvgSL2$$Utxdo<^RlM;OO zc|l(feX5Amw~O-TWA?F=Hy?{@FKge|QoY4`r>}jdmist-oIWleP5|AO>bKJKVd+_^ z?6uEmxQ3R?no_+}UM_3<)bXiPkjr}HvYt-^sopg|tX1_Rq|(FkU%&s!=t*Ody4}K7LZA(AbmyQ+jg!uVB*h@%ITSH*KLlVLstL5mNnLsy|8fXQ}>DP;NetX(?(g z)gQ`BQQP7a8OJL=b)@1G!#ulZo zUA9Oa7B|+vc|>#nIPQ3h)9$$A>or@H@g2w7DXD*dZYbtfde(u~3DZW~qz6IYNndmz#J$1D2e<|jc0WAxMtfP;1=BVsS@9xusA>+)^ zZ&JOl57{4uL)J$dvc6KiSKg2fC>}CrQw}tn`V5xp@A{CLo&QG$?Wux6d+Gnq;EZS) zR5Ub+K3sAwXJ|(HjACd;OO@Ru4{c~XD-;e*nl?0Jr22PxLz7uNH1-J5iFRi8P*I;~?c`tHE4}A73ZQ;%m3op8At~F5D)%`yFD#%iw13m|(r;qe} zbSc-heL0V>AA{A>kDs(7=n}`p+F5zyZZ!^jsujJX;E=l1tC|1LH+ZE_vy^!msf;_> zd`|kD>a8DBb2FRZb~Yh=PzOyBf|lUcvZ|9H@e*D|4&K39tiuP`gir7(w&E!63*kk( zUbO2~4K+{;wNV%K(GZQnvb-Kc8$_Z#oyEz=R zVQz5F$G1b{qvcf~-A0L$|pgA8QhX-t8{G>~U+^6dQz7J|5J zv}>bX8)Io>ENzUXjreR^@ENvYyAXErWM|CmEXzI^afn9(+(<(@GBFn8F$t4Fdv^Ng z@I)wvAsa7({5a-;m>k69ASMUzcWlC^*ox1w0|!CA9LI11c{qm)xPe^yo8rQo}9$wT#5A{AI{zQ8jPEBKMo1uqOM(C zFaYGkMLt~Q!!;Z!NCSCskrx+v;ryU*F&3O%60Ti1fa5rYGdPQz_!akXAAjO+R%Z{; zKOZx!u)zUp(dSWAM@_T?{qkYFecr=i{D7Z8TRwjY?sNt9{Agt%s!zZq5L@+UATbr> zqxuZY#B4BL)#rfxR3|^x$xn60tomzMj5o0aIar1jSOxl8eGM4b>g(_UHsB+CjLrBI zTk$z|U?<2=^{=o8`#`R$lk@7ipbq%mP*I&asD27(a2Drr5tnfl`M7~wxPx!;J$}T` zAkWqB;XeMv-$K;zz(Y{riHA`cRp12+ykUnEKB$HosD;|7i~4AY#%KyZv_JrY5P~p7 zpcPu5a%gvodY z5>xRUW?&{}<3-HD%b1T>un@0dG2X-yS@M}Jzeq}Jm^%=AJ zj8*-|;RegApN3hO59+l3Mr_6BIEQ@D=LW>ufc`e1zYS=kK@6TmGO|G24PM7GtN?Y| zfck833crA{YDga%)@iOR7 zW8!GM1v|lbG`@y!@x2gD$ZHcDSZA8hP7~T`LOV@HAroUkEKQam2m5do$JxzSP!;5~ zX&_pG{xprpNRW@FFJU1V+otRA35ccX5zwEe=Y(kH3EF7JxHM~mAcUYZ$ZNB{AdY6w zKw>edk!CAFpPKClW7X^zFh+iik>8`Ji~5K`H}t@4EC7A-qelF8gIe>u13vFZoi?w5 z251CgXif~xiJ|#;u>9sz@g`V)^LN1Vn;*jo{D?pBmk=##q9Lf07G2N>{Xkw@Oa}dF z@iyMY8jzC~G&j&FEK@&m#f}X<)ypQ!bjmx+yL~s>2;6iJ};7QQ$;BlA$ z`W#FR1TzM~+Gp)?tiw7-Jo_7MsAb z!*1XQkniwNJdQ|^oA4Jvyx|9M94Cc{FvADrG-3#bBMHP4K|B$}6G8tY?%_U%-fi#% zI)JuX()X6H;S8?enh>pswN-Ucr>&@qR)Z0TMaaQ2(6?5!+lp8ps|P=j3l`ePto#H%3o$7%O*`u8}s*wzo^w{1AmF$t6L9zFuOYs);?mho@< zhY*oLcnst(auhN#7Mno-B3Vx&{}Lj~6Ay!Njv~iVtXom<-~(*HZ$h;5z(aT(Pog89 z$IGC9?M~qm7?1W1;g3LM;Au<&F}B}^?f6rOXcZN~*hbU;=$>F5h^D5aS$6bK(BAjA z5Ha*ShGoZ4S25I840RR5IK(Z0F{$wUBF5G*x|6r=Vc=xIZ-rK7m;*o&O_yS)F(fd)<11$LSPTMr8pwMF@}7abXOM!b zFoO>aN(5s+=zV+)-Zz-I2Uh|0GdK<-FcO>aId%v!q&n(@n1(Q>Lm1N`jOmawxB|vL zE)P8PDhAsfYL(mozWGeF&5*o2sv1WU7)RmZ$RG?egSz& zq;H9JP!IGk@kw-q8z~@1iLcia|wCARl+!H`s?j;~TH~DgZg*_nuZu0LY#$gp<0l6F29ASt+FAPQ;CSod{!`pZl zYp@%Kkc->+8NUiK+=^2TT_{t_71;j}mWLu>@&F#H0DaRmJx zL4QZk-w{m^1nO%<7xckcFs38k#0G4~4t#+xL0luq--xrI%@LPz4d3Di5bp@aXT*K{ zDMV5u^aZt%bOd}RiO(eQnWP(_k4blh7)e|siEE@8#@lZ{ck$1%38O$?l6T=JAx75#xfo3@Mw5%tK_ITt+q^-a^ScCWR0XE`eY{6D+$4=}9wUS2sX@_ta$3TwKsFyVA zCG8^ULs~v=f;^>>qqHCK3+{n>Nc&reF%>}W##BUQki#+La11#d2L9E@pz z#%P8XpmxTDfUzFa3T+UH_ILsv(FNTRi$3U&L5RapxG@5wkb*JD1hp}S+88q#*_aAy zW6VsvfH|0lSFi|+@fLEh9ILPzYq1_1unC*-89v7s*oCjL4+lYAj5!MGV$5k!dt<1* zF_&=-H*g!@;s^YU-*6v)36bsr6FgA~RbYlU9PmMP)IuH9M;(0dL49RVUm4UF_Y{hZ zW1zk=sIQE3xQHvr$4%V9clZ&%;2!?K-$GMN7_ z%A~$Bsjp1xEAtglUzyZb=3B_Ya;(B?ti^h4z$R?QXZRdnU>Cl|J{&|Yj^YGP<18-V zGN`Xi>MN7_%A~$BsjtkRL49RXUzvXik>vpsJW&Z%V1_pw@IiIdLLJmcBQ!;G1Rxk; zXo=Qni*|@X2Xsa^^h7VjBLU08FplClP6;t77Q{ViC=xLod0-4C-2#1_^qmk- zQ%_GPVHD`&(`jH_CKLB$#$vLHhcO=XYcllq#Ukr!Xc{YN9si(-dlF%6oVp z9|-Y`9~h5k9s_m$Oe8+S7x)spu}6sPR-jMW9l<0sWKo zPcn9rag+2(GH&vFFgDN9r)P=#*@<`>&)^p!ralA(o}kXA@}8;mZ7O}6O5di^w`q@n zdYe`aHQ)>SHjTbbqi@sb+cf(29Irpu2u;uoEwB{ppuN5UjNf!}Fr6GsCkNBX!E|yk zUHkb??7~;rE5rS69^kcYWfL7(PQCv%B^?mZ!1 z=CzmU_sdUX3ZxM8JWv&8SV14=%>}hEk3P-I!Ezzy*FY0c1M{0B0K`0>nCBDod}5wY z%nPXT1=RQgVqMS~)c6A4vw$&Pa0t0zJ${APUg?j4V4Poh3XH`o_wgtG7UIV7y-Y44(_}dRufsH}pU+?80Fj#c?n$i+O!9W3qS%=-1)|Tm=1F z{2dsV#Xk%22IKX{crYe!FeYz2gFE;gf8Z}6-ei2H|#Kj%E?W6ot<6JlvUxG@~m=F()`0JXUEH_*qWjPtTAJd0@{ z{$(>k-DzMpww%5#r*A79sEhh&2(Vy)z6MAoh30VIsZ<)a}|>^uaM)!WCS@4I$nijFDix z-cP|8@cR4o@BJU~GZ?>h>7ZWM(Z_XDFeCHa~0&+W7Dbe2LwlpBs36!;|QU&Y+(g zczr`Ij(~n{I4Q(Ne!h{~-AL_jd4@_&;X48Cr#jom7wpR(8o_0 z+fTL#v6=U54nhdR&=PB*y~a3i-i94QY~l4SQD~1CbO3qUatP#M3whXbT!>G*gE9Uz z4)I9DS=_{J+{O1oe8$f|8-omFVLZsqXTO0ye)b3c7GmoJOvm$>g%`o+x3Vq}n%GtW z3dq$qaVMB@P}_SL=RKLAFMAlfJ;c4|Pa*a)etQ|0y~MTG3s%^{SnREa8X%6n zaiFceui!1bi`Cc&V%tkYdk=uz?L7kOa4&J}C62wUS9`C6+S*Ib_EiMqx34waAgBAN zv3*lPF7~~KH?Ratu>$Yo1F*b(jPt%NV4U|chWp6<{zniD+T7nBJwR^u4+eSI&)Du~ zZ1Kat>r;CK&qzEbqWPkkbPT!B`(Sg?u3ndVw|%QWFQ8qZR1a zL2CM7M|44V^v57DJ_m<_d>$N*G_bsbvp{VfWPLkGUJug0gXHxf{X0ni4${Aa^zR^f zJ-7+E_)UmI)Wac`dngR_>k$1qM9m#yIfq!zA(nG!1nA=-`gn*w9-@zjSmq)6c<5Qo z#scJEHP&K1Hh^Uv`W#&QxP;rdC&V`upr9fuqbi(u6gA+Bx~LCg{w4x3 z=!Tx?jeZ!2M3A3vMq)I`(>K(^H`Kv5)9@l*$1<$MyLb=l@CiP}Hc<25d ztGJ8r@e_W%eiwg|F}pPJx(DGq$H0+tZBg>ECc)h%@B;j3*e|Gvxk^8CFz7V}u|IozN9M z&6cRw*&ye>s`!fK3d>0MB_;icOG%)5qI7I3scEdsD(xdKpRjOXIX#Fvi_WKCsKEgIo7iV*E4*4MNvv=?vi2p2cpC#^d6`+9l z&sBmqs-r#v(F(+Uj`jasdl3IQ;yxFPKA^785&yX%7>+bdz;w(3ai1gZbHsg)xX)47 z=T?EZ&k^@I;y(8wKE+o!jPtmTTcAG9eGls6+@C`5k~mL&oTom{Qy=Ha`FV1Ep1JCL zbA+KKTB9x6p)M;euNSMp4Dx%C{9deuIv~#%8=(n;K+G3A zgS=j(9xhT37e`1o@iZ>u zHmK)I)WanO6+vzXbqNoxgBEgBzj-~5P^K)Zdj;$ir1!$1U6i@m~26e+Y4vn6DD^RbswM%vXu|DluOr=Bvbfm6)$S z24cQS%vXu|DluOr=BtB{gmf_OSI1)#reFqU;YG~Fe6Su}eG99w9$T>+)Zta?@G5n9 z^)Sxh94_Jt@0v3!)p!D0)YrYI9h=^xfX+N=m$4aFb0_z zhl!Yq>6nQZFb6M#d|z7$V!lSq*LH)LuMzV#V!lSq*NFKVF<&F*Ys7qwn6DA@HDbO- z%=yHePt5tmoKMX8#GFse`3*qK`NW)0%=yHePt5tmoF4;X&L`%4V$LV#d}7Wg=6qt# zC+2)&&Yuoq&L`%4V$LV#d}7XD31ZGC=KS3t=6qt#C+2)&&L`%4V$LV#d}7Wg=6qt# zC+2)&zD~^7iTOG)Unl14#C)BYuQvcOUnl14#C)BYuM_iiV!j>&V!lqy*NOQ$F<&R< z>%@GWn6DG_bz;6g9mIT{n6DG_bz;6w%-5IUJ#5Ao*oCjL4+n7qr*Re+a2Z!|7rzT} zLxC05P!qLL4-MguAcTUtzCm5zXoDxv9sMy3sYpi_#$ytuVFsw_8`SiTxtNE=U>&^i z5s3E&ao!-#8@V_N;=MtfH;D7bHIUyMw?Vu&9|keqB!-(T_a@7|IRUKqH_6G(MWFqg zZy^WEu@>vG0h>UcZhi{Z_nUtTajP=u<1PAjD;ixf5Q!L$kr<6Mu&i58gSqAw%e?g* z=;JN=c8lfST7eHi`?t1X2foBt_y$M7a&MhN9?s#O5Vxt5+s)AjabTIZGms6&{5E5L zoBrJz-@ARo8{hSdAG^sZN~gIxx7s-ZHojsUs6V?`}ALQ@daod5)bTD{X2?GS?w=!9N)3gqa{SdgPTpR3xPpA#1VP^U4#aKH_ZePgm97E! z+sRG>qz95R0Ji{xPYnz_i*0K)sZTlK?ZTp^0{DS;#a<}yc zL3=zI?7%2=-Cjf~wdlHC*X_+rW(qUej|Cjh>72#6T);oLip5;dO~~7RJNBggQJ&>h z^xXbFAENK}PuakC{D{8Wrk@DW+eF(P(~#+)YFK*w@$@gY_%6#=c4Pa zhhRsx%D?qQPQg32ddJptxP_N^k9M{PL5KNvq@$+}{dCyLjwG+t>@XdCZZO2A_ z;deIEMh6iFf}k^jRPwNkonxt>nmX)a=T7LTb2>ASyK^7rvyjs`pNqJd%eayo(Nm|n zb}r!_q>C(Q!n_5gkW#9P#}`bR5xfaz=XSL&se@?n)z<66{}>{p)I^iAn6tOm<^7d$TX|IGR(qkSmb2OV+L% zxEWcyWbKl*YdQMudW`3I72kW8o#^@!xx3`MtHeGMK6uGy_z3panz3oo!VkH~+BM7=P$)gyv z?Vf~wy7kkopYGYXtJ_`O^Em`}b{~bVx=-dDF6Mgfz#ZN9vXo^!$um5MySrEO5^wPV zU$BYIw9!EqJ%RrlE#gUJC@G|oi~07{;+yHQe?9iE$Nu%~g?aYOV*!V8B=Ytg%c)$% zVs1s|9+`V&?vc62JbPsBk-10a9+`Vq@jCMMtjC{+JwNjsf3k&cdKq9a2)4%&CY6yC zBJcKQCey++%yzq(Zr_Lf@a=3r2z_rq3%RyG!KawpcK2>?qdy3Go!^_pFx=Cd!48aK zG)0tBMm@gQ-r4NWT-?!XroCp`>s#$T5&PeJI_~a02ea+H20iuar*|0-qo-ay_3Ed0 zH81ljZ}1kn>iwK=(NS*%9rfy{S4X`%>Kj5bY1qZS5#%6yUk#JdPoLfI+Z{di>8VdY zeFt+WN3f7%kiG9*F5w35!K$JR37xl zV;}qNV}A;=_vbQ(3YutTXJ+C%>YvU2%w;}@a5zVD0%vj&i?Ngay6(4={bt|46kYc} z$uro={*|oab=L3+-(es7b=_|t`?sR=eqHwu2Ejla3Fv&lz6=b#O8IVN*V=9tVenPW1?WRA%k zlR37IFZl_1WAeu2jmaC^9t4B(4$3UL1K zgGb@p8$2Ez51xr#9=wuUxtFCZ<6$1d4iBzmH81ljud@cbJh%}Z56U_y>)?O0`uGN8 zK`2OK7^!41oNNjxqn;LaWq0;uANJ#54&?|IaxBMlIu~#?H**_zayR$!2#@m=D|nuj zyvo1%h>iTh?`)=x4*G}&AytP$@gy>YO!AO9By*^dCMGe3ne4`F_GS)$V*y8VGBSrQ z=PDL+JvVU|_p+2_Jj|m!%S*h4%%Syc;5&ZgXST4F2;KD3AB5t<=sYfmVyda5feB1x zIy0EX9_+*82ykU96 z@`mLN%Nv$AJdcIwIIQFFMd&!JXa5m?m?*u(3 z=sDq9Zs2Ba_>wANcftK*zbhjuonrvK`1eibh7YgN20zH z^U-&rz7zGGsPDvj8rX?h?8jjo#|fN_z7x+x---H8)OVu36R$z`#M^j~C(&`DtckKF z%9^;Ab;z11Yoe@)-?NFI*+Mt5Ae5BMSSs-CCDkEYl5a0*A~GgTWjZsEH)#*-Mv}Zq z@+QffByW3$wy8G29phTpIYNt$-Jb(Fh=aL_`|yno)#uQM z(Am&m`JF$}*DyOcOgF>E(MS{CKI~k)cbMH8wuqIO#jv+|mo-F#Q1USBb8;G)?8@Je zC3zkTumj0Q;9bc&OV(Mk&XR9nIjeXBXD2&5*;|vnHTgqiPL|VuH3+4|k$}5W@)%7O zI!rOQ6dk0T#ASGYig~2m!fogvMF%O5@&r$_f)Dr{-)@RorP!&I4!Y>3hd#VD)x1($ znU0-For615=Q5u|@YYl_Oud||Sd6!(xNM%FZQNjn9z^*cC2Y5%~UrQOaF z?&cosu;0lUN_&Rqc#SuChxb^EtZ6c)$(Xi*Z|P(kI!oJ5KlU{}88b`IWCXeFfZXYF zr^}sQNh>>}+jRNU{+@!OZS#^y{GFv{d2q}{Re*H7y2;&^uZvMVGlFnNn|+LjHHyYlu)!fb!%qGKZGQ2BeIcAfwhA;S)KlqDw z%pzkO=8$0y8Rn3gP8Md6X$F~j?8q33@rF$KGshu!rhJ(vatU`}A2Q89^D~^AsgEpu zWSMPNKHi_@?OD~-(ZB?zu?xGhJA1MZb2ya4Ig+FCj;si>XW64H-48zt^BsOUS8@%n z@d4}j2(ufp2XmQ+eHr2G5kIg6eT;DC2)Rd?rT>``%8n-i`z-Wq_wiv$m_#y~}ngQ~8lLyr;l>3iMYXLxKJZ^j9EDft@cXM5Y3n3S{y-CPRM5 zWT;>qc;O)3>D^6z!-|qO`&cIbyH|wh4pxMp-u`9$NtjKa)HOL0eO6;qjo4olrpx|ln;oBMcxhj;{gSh@xce zdsq4u-|#K^9eW7Q8has^;H6BE9mgWB!}n0O zgnPK32YG_0c@`a%>7Z;iZy;CM7i^&~2$jc^h~CTfUT((aBgsei<)bO2nCaNta@osu zQ2r?HDtA}8yUN{FzLGV#qkKIZ_>Ld>iJl}Qpps@zfKj;b*fGnNXf@n=|7GgFz4j;h>OwL1r*rz&?>9ma|H z7OPI@EH32=u0mH;@>J=i>T#ap8QxXfD9IDUd zexAfx)w-^>AJulT`X%1N`PI&^UWfCmH=^h2pZSfyXr~jsR7ZnQ%`no*!o7Y!XQ;-m z*663Eh$<$cj~aPuX0Zoy)##)~Cp9{$(MipbEaWP@z2;@Sug2Xq?yIq{HGR0Z)=X;6 zyfzWDuFYWwMqzhr-Cb*UYs)Z?+LJKvTHi+P>*%ibJG`&f`)b`$`zPL58w)~pW?W~F z>M|KYF3ztjX981bWoKrxC;PA;2QZg|@UFTOIR&$>I}5X@J0I_?yBgm|-L))Z1<&&W zFY*enVlH*&Qs-N!^DWeU$$Ea_cQ(^T2a&*Et)icL{nQU71@Ec%E!2BMy}8uaGLG>y zGnrYKPrdondr!Uh)O%08x75!^{`woSm-X);OTGKXxo=z&!$>6qosG-GOvahXxI!jj z7US;Z0hVLd;~vAC$2oJHZ+x5?G?+m{0e-Hbgfc3rp`J#XaAt%48{}<}w?Wx_B$8tQEvxKM6Z-X~9{1${7_0>3%Iws=W#+{hK?zp4T9gTBvZlm)W|Bm-Gp2`_q z$RaMq_uOc{jf=UTCs@Htyv4h$VJ$iwKMXyM_pb4~GLMsS)_7-)ch-1kjlYf?gU|%C zosdoi`k1f>hjSiR^56f=E!>X2Cp^T{Jj*{>g)9?fnIOvqStfkIfB2ZM*~s_!PMYLv zO2wT`S!83zO=jHm4_5LvAF_^*@bgW-@H=+2sSP{Y)Q9i5+1@nkz1druhhSHlODV^W zHrH?WnryEpujUQjM6WyT&k_8clQ@+#I2-wPx|A!pnrpe9JGhH`xu5q~%R1zp z;*C>uJ7qo#(C3s00}KYC7Vm9IUjZq;t!Cc37j~;vzSiS7fs@f`t4>?xYrTMLxP_(ohFTxx30Ckt zFJM-!dTsp*nOo&;-NbMF!DhAup=s&JGR-;DR^jc_-VFZtU*Wj_`{xed{NF$S|KCH? G-u@qf#lZLg literal 0 HcmV?d00001 diff --git a/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Debug.xcscheme b/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Debug.xcscheme new file mode 100644 index 0000000..8855cd1 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Debug.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Release.xcscheme b/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Release.xcscheme new file mode 100644 index 0000000..9431cdd --- /dev/null +++ b/example-camera/example-camera.xcodeproj/xcshareddata/xcschemes/example-camera Release.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/example-camera/example-camera.xcodeproj/xcuserdata/kr15h.xcuserdatad/xcschemes/xcschememanagement.plist b/example-camera/example-camera.xcodeproj/xcuserdata/kr15h.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..40bc446 --- /dev/null +++ b/example-camera/example-camera.xcodeproj/xcuserdata/kr15h.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,27 @@ + + + + + SchemeUserState + + example-camera Debug.xcscheme_^#shared#^_ + + orderHint + 0 + + example-camera Release.xcscheme_^#shared#^_ + + orderHint + 1 + + + SuppressBuildableAutocreation + + E4B69B5A0A3A1756003C02F2 + + primary + + + + + diff --git a/example-camera/openFrameworks-Info.plist b/example-camera/openFrameworks-Info.plist new file mode 100644 index 0000000..60abaf8 --- /dev/null +++ b/example-camera/openFrameworks-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + ${ICON} + CFBundleIdentifier + cc.openFrameworks.ofapp + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + + diff --git a/example-camera/src/CameraSource.cpp b/example-camera/src/CameraSource.cpp new file mode 100644 index 0000000..898f2a6 --- /dev/null +++ b/example-camera/src/CameraSource.cpp @@ -0,0 +1,45 @@ +#include "CameraSource.h" + +CameraSource::CameraSource(){ + name = "Camera Source"; + + _cameraWidth = 320; + _cameraHeight = 240; + + vector devices = _videoGrabber.listDevices(); + _cameraFound = false; + + for(int i = 0; i < devices.size(); i++){ + if(devices[i].bAvailable){ + ofLogNotice() << devices[i].id << ": " << devices[i].deviceName; + _cameraFound = true; + break; + } + } + + if(_cameraFound){ + _videoGrabber.setDeviceID(0); + _videoGrabber.setup(_cameraWidth, _cameraHeight); + } + + allocate(_cameraWidth, _cameraHeight); +} + +void CameraSource::update(){ + if(_videoGrabber.isInitialized()){ + _videoGrabber.update(); + } +} + +void CameraSource::draw(){ + ofClear(0); + ofSetHexColor(0xffffff); + + if(_videoGrabber.isInitialized()){ + ofDisableNormalizedTexCoords(); + _videoGrabber.draw(0, 0); + ofEnableNormalizedTexCoords(); + }else{ + ofDrawBitmapString("no camera", _cameraWidth / 2.0f - 40.0f, _cameraHeight / 2.0f + 10.0f); + } +} \ No newline at end of file diff --git a/example-camera/src/CameraSource.h b/example-camera/src/CameraSource.h new file mode 100644 index 0000000..d6d9e3e --- /dev/null +++ b/example-camera/src/CameraSource.h @@ -0,0 +1,24 @@ +/* + * CameraSource + * Camera source for ofxPiMapper + * Created by Krisjanis Rijnieks on 25/01/2016 + */ + +#pragma once + +#include "ofMain.h" +#include "FboSource.h" + +class CameraSource : public ofx::piMapper::FboSource { + public: + CameraSource(); + + void update(); + void draw(); + + private: + ofVideoGrabber _videoGrabber; + int _cameraWidth; + int _cameraHeight; + bool _cameraFound; +}; \ No newline at end of file diff --git a/example-camera/src/main.cpp b/example-camera/src/main.cpp new file mode 100644 index 0000000..d1b6467 --- /dev/null +++ b/example-camera/src/main.cpp @@ -0,0 +1,24 @@ +#include "ofMain.h" +#include "ofApp.h" +#include +#include + +int main(int argc, char * argv[]){ + bool fullscreen = false; + + vector arguments = vector(argv, argv + argc); + for(int i = 0; i < arguments.size(); ++i){ + if(arguments.at(i) == "-f"){ + fullscreen = true; + break; + } + } + + if(fullscreen){ + ofSetupOpenGL(800, 450, OF_FULLSCREEN); + }else{ + ofSetupOpenGL(800, 450, OF_WINDOW); + } + + ofRunApp(new ofApp()); +} diff --git a/example-camera/src/ofApp.cpp b/example-camera/src/ofApp.cpp new file mode 100644 index 0000000..84411de --- /dev/null +++ b/example-camera/src/ofApp.cpp @@ -0,0 +1,12 @@ +#include "ofApp.h" + +void ofApp::setup(){ + ofBackground(0); + cameraSource = new CameraSource(); + piMapper.registerFboSource(*cameraSource); + piMapper.setup(); +} + +void ofApp::draw(){ + piMapper.draw(); +} \ No newline at end of file diff --git a/example-camera/src/ofApp.h b/example-camera/src/ofApp.h new file mode 100644 index 0000000..1274838 --- /dev/null +++ b/example-camera/src/ofApp.h @@ -0,0 +1,21 @@ +/* + * CameraSource example + * Based on the thought that ofxPiMapper should be as bare-bones as possible, thus all the source + * type functionality should come from outside. + * Created by Krisjanis Rijnieks on 25/01/2016 + */ + +#pragma once + +#include "ofMain.h" +#include "ofxPiMapper.h" +#include "CameraSource.h" + +class ofApp : public ofBaseApp { + public: + void setup(); + void draw(); + + ofxPiMapper piMapper; + CameraSource * cameraSource; +}; \ No newline at end of file