From 97355f4b61fe94e24d92d1722b216081bb9dd261 Mon Sep 17 00:00:00 2001 From: Darren Mothersele Date: Wed, 20 Nov 2013 16:30:57 +0000 Subject: [PATCH] adding example --- ofxBeatExample/Makefile | 13 + ofxBeatExample/Project.xcconfig | 17 + ofxBeatExample/addons.make | 1 + ofxBeatExample/bin/data/.gitkeep | 0 ofxBeatExample/config.make | 142 ++ .../ofxBeatExample.xcodeproj/project.pbxproj | 1267 +++++++++++++++++ .../contents.xcworkspacedata | 7 + .../UserInterfaceState.xcuserstate | Bin 0 -> 55055 bytes .../xcschemes/ofxBeatExample Debug.xcscheme | 86 ++ .../xcschemes/ofxBeatExample Release.xcscheme | 86 ++ .../xcschemes/xcschememanagement.plist | 14 + ofxBeatExample/openFrameworks-Info.plist | 22 + ofxBeatExample/src/main.cpp | 13 + ofxBeatExample/src/testApp.cpp | 67 + ofxBeatExample/src/testApp.h | 26 + 15 files changed, 1761 insertions(+) create mode 100644 ofxBeatExample/Makefile create mode 100644 ofxBeatExample/Project.xcconfig create mode 100644 ofxBeatExample/addons.make create mode 100644 ofxBeatExample/bin/data/.gitkeep create mode 100644 ofxBeatExample/config.make create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/project.pbxproj create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/xcuserdata/darren.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/xcshareddata/xcschemes/ofxBeatExample Debug.xcscheme create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/xcshareddata/xcschemes/ofxBeatExample Release.xcscheme create mode 100644 ofxBeatExample/ofxBeatExample.xcodeproj/xcuserdata/darren.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 ofxBeatExample/openFrameworks-Info.plist create mode 100644 ofxBeatExample/src/main.cpp create mode 100644 ofxBeatExample/src/testApp.cpp create mode 100644 ofxBeatExample/src/testApp.h diff --git a/ofxBeatExample/Makefile b/ofxBeatExample/Makefile new file mode 100644 index 0000000..7a7fe8b --- /dev/null +++ b/ofxBeatExample/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=../../.. +endif + +# call the project makefile! +include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk diff --git a/ofxBeatExample/Project.xcconfig b/ofxBeatExample/Project.xcconfig new file mode 100644 index 0000000..c90f7b1 --- /dev/null +++ b/ofxBeatExample/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) +HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) diff --git a/ofxBeatExample/addons.make b/ofxBeatExample/addons.make new file mode 100644 index 0000000..e39b174 --- /dev/null +++ b/ofxBeatExample/addons.make @@ -0,0 +1 @@ +ofxBeat diff --git a/ofxBeatExample/bin/data/.gitkeep b/ofxBeatExample/bin/data/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/ofxBeatExample/config.make b/ofxBeatExample/config.make new file mode 100644 index 0000000..df10f64 --- /dev/null +++ b/ofxBeatExample/config.make @@ -0,0 +1,142 @@ +################################################################################ +# CONFIGURE PROJECT MAKEFILE (optional) +# This file is where we make project specific configurations. +################################################################################ + +################################################################################ +# OF ROOT +# The location of your root openFrameworks installation +# (default) OF_ROOT = ../../.. +################################################################################ +# OF_ROOT = ../../.. + +################################################################################ +# PROJECT ROOT +# The location of the project - a starting place for searching for files +# (default) PROJECT_ROOT = . (this directory) +# +################################################################################ +# PROJECT_ROOT = . + +################################################################################ +# PROJECT SPECIFIC CHECKS +# This is a project defined section to create internal makefile flags to +# conditionally enable or disable the addition of various features within +# this makefile. For instance, if you want to make changes based on whether +# GTK is installed, one might test that here and create a variable to check. +################################################################################ +# None + +################################################################################ +# PROJECT EXTERNAL SOURCE PATHS +# These are fully qualified paths that are not within the PROJECT_ROOT folder. +# Like source folders in the PROJECT_ROOT, these paths are subject to +# exlclusion via the PROJECT_EXLCUSIONS list. +# +# (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank) +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_EXTERNAL_SOURCE_PATHS = + +################################################################################ +# PROJECT EXCLUSIONS +# These makefiles assume that all folders in your current project directory +# and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations +# to look for source code. The any folders or files that match any of the +# items in the PROJECT_EXCLUSIONS list below will be ignored. +# +# Each item in the PROJECT_EXCLUSIONS list will be treated as a complete +# string unless teh user adds a wildcard (%) operator to match subdirectories. +# GNU make only allows one wildcard for matching. The second wildcard (%) is +# treated literally. +# +# (default) PROJECT_EXCLUSIONS = (blank) +# +# Will automatically exclude the following: +# +# $(PROJECT_ROOT)/bin% +# $(PROJECT_ROOT)/obj% +# $(PROJECT_ROOT)/%.xcodeproj +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_EXCLUSIONS = + +################################################################################ +# PROJECT LINKER FLAGS +# These flags will be sent to the linker when compiling the executable. +# +# (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ + +# Currently, shared libraries that are needed are copied to the +# $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to +# add a runtime path to search for those shared libraries, since they aren't +# incorporated directly into the final executable application binary. +# TODO: should this be a default setting? +# PROJECT_LDFLAGS=-Wl,-rpath=./libs + +################################################################################ +# PROJECT DEFINES +# Create a space-delimited list of DEFINES. The list will be converted into +# CFLAGS with the "-D" flag later in the makefile. +# +# (default) PROJECT_DEFINES = (blank) +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_DEFINES = + +################################################################################ +# PROJECT CFLAGS +# This is a list of fully qualified CFLAGS required when compiling for this +# project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS +# defined in your platform specific core configuration files. These flags are +# presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below. +# +# (default) PROJECT_CFLAGS = (blank) +# +# Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in +# your platform specific configuration file will be applied by default and +# further flags here may not be needed. +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_CFLAGS = + +################################################################################ +# PROJECT OPTIMIZATION CFLAGS +# These are lists of CFLAGS that are target-specific. While any flags could +# be conditionally added, they are usually limited to optimization flags. +# These flags are added BEFORE the PROJECT_CFLAGS. +# +# PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets. +# +# (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank) +# +# PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets. +# +# (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank) +# +# Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the +# PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration +# file will be applied by default and further optimization flags here may not +# be needed. +# +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_OPTIMIZATION_CFLAGS_RELEASE = +# PROJECT_OPTIMIZATION_CFLAGS_DEBUG = + +################################################################################ +# PROJECT COMPILERS +# Custom compilers can be set for CC and CXX +# (default) PROJECT_CXX = (blank) +# (default) PROJECT_CC = (blank) +# Note: Leave a leading space when adding list items with the += operator +################################################################################ +# PROJECT_CXX = +# PROJECT_CC = diff --git a/ofxBeatExample/ofxBeatExample.xcodeproj/project.pbxproj b/ofxBeatExample/ofxBeatExample.xcodeproj/project.pbxproj new file mode 100644 index 0000000..12f1238 --- /dev/null +++ b/ofxBeatExample/ofxBeatExample.xcodeproj/project.pbxproj @@ -0,0 +1,1267 @@ + + + + archiveVersion + 1 + classes + + objectVersion + 46 + objects + + F21017D5316CB2B55CD68641 + + explicitFileType + sourcecode.c.h + fileEncoding + 30 + isa + PBXFileReference + name + ofxBeat.h + path + ../../../addons/ofxBeat/src/ofxBeat.h + sourceTree + SOURCE_ROOT + + C098DBE008A1B5C6D12ABFFD + + fileRef + C6684F2AB3BF96EE746EF6DA + isa + PBXBuildFile + + C6684F2AB3BF96EE746EF6DA + + explicitFileType + sourcecode.cpp.cpp + fileEncoding + 30 + isa + PBXFileReference + name + ofxBeat.cpp + path + ../../../addons/ofxBeat/src/ofxBeat.cpp + sourceTree + SOURCE_ROOT + + 4FA7C66BC39A49BCFA509386 + + explicitFileType + sourcecode.c.h + fileEncoding + 30 + isa + PBXFileReference + name + fft.h + path + ../../../addons/ofxBeat/src/fft.h + sourceTree + SOURCE_ROOT + + 2593B7743D30DF6DEB591433 + + children + + B85440CFD1540D81C05B85CB + 4FA7C66BC39A49BCFA509386 + C6684F2AB3BF96EE746EF6DA + F21017D5316CB2B55CD68641 + + isa + PBXGroup + name + src + sourceTree + <group> + + 5B3BFE89BB3B98E8FC2F783F + + children + + 2593B7743D30DF6DEB591433 + + isa + PBXGroup + name + ofxBeat + sourceTree + <group> + + A86D7323CE1A9450906A91DD + + fileRef + B85440CFD1540D81C05B85CB + isa + PBXBuildFile + + B85440CFD1540D81C05B85CB + + explicitFileType + sourcecode.cpp.cpp + fileEncoding + 30 + isa + PBXFileReference + name + fft.cpp + path + ../../../addons/ofxBeat/src/fft.cpp + sourceTree + SOURCE_ROOT + + BB4B014C10F69532006C3DED + + children + + 5B3BFE89BB3B98E8FC2F783F + + isa + PBXGroup + name + addons + sourceTree + <group> + + BBAB23BE13894E4700AA2426 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + GLUT.framework + path + ../../../libs/glut/lib/osx/GLUT.framework + sourceTree + <group> + + BBAB23C913894ECA00AA2426 + + children + + E7F985F515E0DE99003869B5 + E4C2424410CC5A17004149E2 + E4C2424510CC5A17004149E2 + E4C2424610CC5A17004149E2 + E45BE9710E8CC7DD009D7055 + E45BE9720E8CC7DD009D7055 + E45BE9730E8CC7DD009D7055 + E45BE9740E8CC7DD009D7055 + E45BE9750E8CC7DD009D7055 + E45BE9760E8CC7DD009D7055 + E45BE9770E8CC7DD009D7055 + E45BE9790E8CC7DD009D7055 + E45BE97A0E8CC7DD009D7055 + E7E077E415D3B63C0020DFD4 + E7E077E715D3B6510020DFD4 + + isa + PBXGroup + name + system frameworks + sourceTree + <group> + + BBAB23CA13894EDB00AA2426 + + children + + BBAB23BE13894E4700AA2426 + + isa + PBXGroup + name + 3rd party frameworks + sourceTree + <group> + + BBAB23CB13894F3D00AA2426 + + fileRef + BBAB23BE13894E4700AA2426 + isa + PBXBuildFile + + E4328143138ABC890047C5CB + + isa + PBXFileReference + lastKnownFileType + wrapper.pb-project + name + openFrameworksLib.xcodeproj + path + ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj + sourceTree + SOURCE_ROOT + + E4328144138ABC890047C5CB + + children + + E4328148138ABC890047C5CB + + isa + PBXGroup + name + Products + sourceTree + <group> + + E4328147138ABC890047C5CB + + containerPortal + E4328143138ABC890047C5CB + isa + PBXContainerItemProxy + proxyType + 2 + remoteGlobalIDString + E4B27C1510CBEB8E00536013 + remoteInfo + openFrameworks + + E4328148138ABC890047C5CB + + fileType + archive.ar + isa + PBXReferenceProxy + path + openFrameworksDebug.a + remoteRef + E4328147138ABC890047C5CB + sourceTree + BUILT_PRODUCTS_DIR + + E4328149138ABC9F0047C5CB + + fileRef + E4328148138ABC890047C5CB + isa + PBXBuildFile + + E45BE5980E8CC70C009D7055 + + children + + BBAB23CA13894EDB00AA2426 + BBAB23C913894ECA00AA2426 + + isa + PBXGroup + name + frameworks + sourceTree + <group> + + E45BE9710E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + AGL.framework + path + /System/Library/Frameworks/AGL.framework + sourceTree + <absolute> + + E45BE9720E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + ApplicationServices.framework + path + /System/Library/Frameworks/ApplicationServices.framework + sourceTree + <absolute> + + E45BE9730E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + AudioToolbox.framework + path + /System/Library/Frameworks/AudioToolbox.framework + sourceTree + <absolute> + + E45BE9740E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + Carbon.framework + path + /System/Library/Frameworks/Carbon.framework + sourceTree + <absolute> + + E45BE9750E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + CoreAudio.framework + path + /System/Library/Frameworks/CoreAudio.framework + sourceTree + <absolute> + + E45BE9760E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + CoreFoundation.framework + path + /System/Library/Frameworks/CoreFoundation.framework + sourceTree + <absolute> + + E45BE9770E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + CoreServices.framework + path + /System/Library/Frameworks/CoreServices.framework + sourceTree + <absolute> + + E45BE9790E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + OpenGL.framework + path + /System/Library/Frameworks/OpenGL.framework + sourceTree + <absolute> + + E45BE97A0E8CC7DD009D7055 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + QuickTime.framework + path + /System/Library/Frameworks/QuickTime.framework + sourceTree + <absolute> + + E45BE97B0E8CC7DD009D7055 + + fileRef + E45BE9710E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE97C0E8CC7DD009D7055 + + fileRef + E45BE9720E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE97D0E8CC7DD009D7055 + + fileRef + E45BE9730E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE97E0E8CC7DD009D7055 + + fileRef + E45BE9740E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE97F0E8CC7DD009D7055 + + fileRef + E45BE9750E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE9800E8CC7DD009D7055 + + fileRef + E45BE9760E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE9810E8CC7DD009D7055 + + fileRef + E45BE9770E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE9830E8CC7DD009D7055 + + fileRef + E45BE9790E8CC7DD009D7055 + isa + PBXBuildFile + + E45BE9840E8CC7DD009D7055 + + fileRef + E45BE97A0E8CC7DD009D7055 + isa + PBXBuildFile + + E4B69B4A0A3A1720003C02F2 + + children + + E4B6FCAD0C3E899E008CF71C + E4EB6923138AFD0F00A09F29 + E4B69E1C0A3A1BDC003C02F2 + E4EEC9E9138DF44700A80321 + BB4B014C10F69532006C3DED + E45BE5980E8CC70C009D7055 + E4B69B5B0A3A1756003C02F2 + + isa + PBXGroup + sourceTree + <group> + + E4B69B4C0A3A1720003C02F2 + + attributes + + LastUpgradeCheck + 0460 + + buildConfigurationList + E4B69B4D0A3A1720003C02F2 + compatibilityVersion + Xcode 3.2 + developmentRegion + English + hasScannedForEncodings + 0 + isa + PBXProject + knownRegions + + English + Japanese + French + German + + mainGroup + E4B69B4A0A3A1720003C02F2 + productRefGroup + E4B69B4A0A3A1720003C02F2 + projectDirPath + + projectReferences + + + ProductGroup + E4328144138ABC890047C5CB + ProjectRef + E4328143138ABC890047C5CB + + + projectRoot + + targets + + E4B69B5A0A3A1756003C02F2 + + + E4B69B4D0A3A1720003C02F2 + + buildConfigurations + + E4B69B4E0A3A1720003C02F2 + E4B69B4F0A3A1720003C02F2 + + defaultConfigurationIsVisible + 0 + defaultConfigurationName + Release + isa + XCConfigurationList + + E4B69B4E0A3A1720003C02F2 + + baseConfigurationReference + E4EB6923138AFD0F00A09F29 + buildSettings + + HEADER_SEARCH_PATHS + + $(OF_CORE_HEADERS) + ../../../addons/ofxBeat/libs + ../../../addons/ofxBeat/src + + ARCHS + $(NATIVE_ARCH) + CONFIGURATION_BUILD_DIR + $(SRCROOT)/bin/ + COPY_PHASE_STRIP + NO + 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 + 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 + MACOSX_DEPLOYMENT_TARGET + 10.6 + OTHER_CPLUSPLUSFLAGS + + -D__MACOSX_CORE__ + -lpthread + -mtune=native + + SDKROOT + macosx + + isa + XCBuildConfiguration + name + Debug + + E4B69B4F0A3A1720003C02F2 + + baseConfigurationReference + E4EB6923138AFD0F00A09F29 + buildSettings + + HEADER_SEARCH_PATHS + + $(OF_CORE_HEADERS) + ../../../addons/ofxBeat/libs + ../../../addons/ofxBeat/src + + ARCHS + $(NATIVE_ARCH) + 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 + MACOSX_DEPLOYMENT_TARGET + 10.6 + OTHER_CPLUSPLUSFLAGS + + -D__MACOSX_CORE__ + -lpthread + -mtune=native + + SDKROOT + macosx + + isa + XCBuildConfiguration + name + Release + + E4B69B580A3A1756003C02F2 + + buildActionMask + 2147483647 + files + + E4B69E200A3A1BDC003C02F2 + E4B69E210A3A1BDC003C02F2 + A86D7323CE1A9450906A91DD + C098DBE008A1B5C6D12ABFFD + + isa + PBXSourcesBuildPhase + runOnlyForDeploymentPostprocessing + 0 + + E4B69B590A3A1756003C02F2 + + buildActionMask + 2147483647 + files + + E7F985F815E0DEA3003869B5 + E7E077E815D3B6510020DFD4 + E4EB6799138ADC1D00A09F29 + E4328149138ABC9F0047C5CB + E45BE97B0E8CC7DD009D7055 + E45BE97C0E8CC7DD009D7055 + E45BE97D0E8CC7DD009D7055 + E45BE97E0E8CC7DD009D7055 + E45BE97F0E8CC7DD009D7055 + E45BE9800E8CC7DD009D7055 + E45BE9810E8CC7DD009D7055 + E45BE9830E8CC7DD009D7055 + E45BE9840E8CC7DD009D7055 + E4C2424710CC5A17004149E2 + E4C2424810CC5A17004149E2 + E4C2424910CC5A17004149E2 + E7E077E515D3B63C0020DFD4 + + isa + PBXFrameworksBuildPhase + runOnlyForDeploymentPostprocessing + 0 + + E4B69B5A0A3A1756003C02F2 + + buildConfigurationList + E4B69B5F0A3A1757003C02F2 + buildPhases + + E4B69B580A3A1756003C02F2 + E4B69B590A3A1756003C02F2 + E4B6FFFD0C3F9AB9008CF71C + E4C2427710CC5ABF004149E2 + + buildRules + + dependencies + + E4EEB9AC138B136A00A80321 + + isa + PBXNativeTarget + name + ofxBeatExample + productName + myOFApp + productReference + E4B69B5B0A3A1756003C02F2 + productType + com.apple.product-type.application + + E4B69B5B0A3A1756003C02F2 + + explicitFileType + wrapper.application + includeInIndex + 0 + isa + PBXFileReference + path + ofxBeatExampleDebug.app + sourceTree + BUILT_PRODUCTS_DIR + + E4B69B5F0A3A1757003C02F2 + + buildConfigurations + + E4B69B600A3A1757003C02F2 + E4B69B610A3A1757003C02F2 + + defaultConfigurationIsVisible + 0 + defaultConfigurationName + Release + isa + XCConfigurationList + + E4B69B600A3A1757003C02F2 + + 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 + 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) + + PRODUCT_NAME + $(TARGET_NAME)Debug + WRAPPER_EXTENSION + app + + isa + XCBuildConfiguration + name + Debug + + E4B69B610A3A1757003C02F2 + + 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 + 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) + + PRODUCT_NAME + $(TARGET_NAME) + WRAPPER_EXTENSION + app + + isa + XCBuildConfiguration + name + Release + + E4B69E1C0A3A1BDC003C02F2 + + children + + E4B69E1D0A3A1BDC003C02F2 + E4B69E1E0A3A1BDC003C02F2 + E4B69E1F0A3A1BDC003C02F2 + + isa + PBXGroup + path + src + sourceTree + SOURCE_ROOT + + E4B69E1D0A3A1BDC003C02F2 + + fileEncoding + 30 + isa + PBXFileReference + lastKnownFileType + sourcecode.cpp.cpp + name + main.cpp + path + src/main.cpp + sourceTree + SOURCE_ROOT + + E4B69E1E0A3A1BDC003C02F2 + + explicitFileType + sourcecode.cpp.cpp + fileEncoding + 30 + isa + PBXFileReference + name + testApp.cpp + path + src/testApp.cpp + sourceTree + SOURCE_ROOT + + E4B69E1F0A3A1BDC003C02F2 + + fileEncoding + 30 + isa + PBXFileReference + lastKnownFileType + sourcecode.c.h + name + testApp.h + path + src/testApp.h + sourceTree + SOURCE_ROOT + + E4B69E200A3A1BDC003C02F2 + + fileRef + E4B69E1D0A3A1BDC003C02F2 + isa + PBXBuildFile + + E4B69E210A3A1BDC003C02F2 + + fileRef + E4B69E1E0A3A1BDC003C02F2 + isa + PBXBuildFile + + E4B6FCAD0C3E899E008CF71C + + fileEncoding + 30 + isa + PBXFileReference + lastKnownFileType + text.plist.xml + path + openFrameworks-Info.plist + sourceTree + <group> + + E4B6FFFD0C3F9AB9008CF71C + + buildActionMask + 2147483647 + files + + inputPaths + + isa + PBXShellScriptBuildPhase + outputPaths + + runOnlyForDeploymentPostprocessing + 0 + shellPath + /bin/sh + shellScript + cp -f ../../../libs/fmodex/lib/osx/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/libfmodex.dylib"; install_name_tool -change ./libfmodex.dylib @executable_path/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME"; +mkdir -p "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" +cp -f "$ICON_FILE" "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" + + + E4C2424410CC5A17004149E2 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + AppKit.framework + path + /System/Library/Frameworks/AppKit.framework + sourceTree + <absolute> + + E4C2424510CC5A17004149E2 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + Cocoa.framework + path + /System/Library/Frameworks/Cocoa.framework + sourceTree + <absolute> + + E4C2424610CC5A17004149E2 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + IOKit.framework + path + /System/Library/Frameworks/IOKit.framework + sourceTree + <absolute> + + E4C2424710CC5A17004149E2 + + fileRef + E4C2424410CC5A17004149E2 + isa + PBXBuildFile + + E4C2424810CC5A17004149E2 + + fileRef + E4C2424510CC5A17004149E2 + isa + PBXBuildFile + + E4C2424910CC5A17004149E2 + + fileRef + E4C2424610CC5A17004149E2 + isa + PBXBuildFile + + E4C2427710CC5ABF004149E2 + + buildActionMask + 2147483647 + dstPath + + dstSubfolderSpec + 10 + files + + BBAB23CB13894F3D00AA2426 + + isa + PBXCopyFilesBuildPhase + runOnlyForDeploymentPostprocessing + 0 + + E4EB6799138ADC1D00A09F29 + + fileRef + BBAB23BE13894E4700AA2426 + isa + PBXBuildFile + + E4EB691F138AFCF100A09F29 + + fileEncoding + 4 + isa + PBXFileReference + lastKnownFileType + text.xcconfig + name + CoreOF.xcconfig + path + ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig + sourceTree + SOURCE_ROOT + + E4EB6923138AFD0F00A09F29 + + fileEncoding + 4 + isa + PBXFileReference + lastKnownFileType + text.xcconfig + path + Project.xcconfig + sourceTree + <group> + + E4EEB9AB138B136A00A80321 + + containerPortal + E4328143138ABC890047C5CB + isa + PBXContainerItemProxy + proxyType + 1 + remoteGlobalIDString + E4B27C1410CBEB8E00536013 + remoteInfo + openFrameworks + + E4EEB9AC138B136A00A80321 + + isa + PBXTargetDependency + name + openFrameworks + targetProxy + E4EEB9AB138B136A00A80321 + + E4EEC9E9138DF44700A80321 + + children + + E4EB691F138AFCF100A09F29 + E4328143138ABC890047C5CB + + isa + PBXGroup + name + openFrameworks + sourceTree + <group> + + E7E077E415D3B63C0020DFD4 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + CoreVideo.framework + path + /System/Library/Frameworks/CoreVideo.framework + sourceTree + <absolute> + + E7E077E515D3B63C0020DFD4 + + fileRef + E7E077E415D3B63C0020DFD4 + isa + PBXBuildFile + + E7E077E715D3B6510020DFD4 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + QTKit.framework + path + /System/Library/Frameworks/QTKit.framework + sourceTree + <absolute> + + E7E077E815D3B6510020DFD4 + + fileRef + E7E077E715D3B6510020DFD4 + isa + PBXBuildFile + + E7F985F515E0DE99003869B5 + + isa + PBXFileReference + lastKnownFileType + wrapper.framework + name + Accelerate.framework + path + /System/Library/Frameworks/Accelerate.framework + sourceTree + <absolute> + + E7F985F815E0DEA3003869B5 + + fileRef + E7F985F515E0DE99003869B5 + isa + PBXBuildFile + + + rootObject + E4B69B4C0A3A1720003C02F2 + + diff --git a/ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..ecb5a60 --- /dev/null +++ b/ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/xcuserdata/darren.xcuserdatad/UserInterfaceState.xcuserstate b/ofxBeatExample/ofxBeatExample.xcodeproj/project.xcworkspace/xcuserdata/darren.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..c6d21ad6d85cd63d842cc1d8b6fa2dc221f592e9 GIT binary patch literal 55055 zcmc$H2V7Lg_Wzx^ySGa*>>{E9f{KMA2#9@Q7hI*eg$^siszd}ru|$n`QcN+4F}=rb zG%>~`#w4bhm|lz}z4u~F@AW@(@7`q>mK8Mb_kZtwp0In)cg~zSbLPz4xnJhBHZ`_) zq^2ID00k+U(ouSfk)DvAEKgYCZfkFBX)aG_nRlkUzN5V&p{}idVI%(7kHrPMNNIdwL*f7-l5*7KBvB*zNEgUzNNmSexm-O{-*u` z9N>WfL?D3yARNSj;UFF)fDvFM7zL-m8PE*#;Vf7POQ0Q=!U|XoU2q!i{Yhk9lR1=1FwfS!CT=*xCL&9JK-*PH@p|#4{1L!dN4BALX(L?AM zdN@6TPNc`u$@F-70-Z%qqNma`=v+FFw$cT3F>RxrbU9r`*V1)#1HFJglU_`>((UvT zdO5w4UQM4%UqD|(uca@i*V9+i*U>l9x6m8t&Ga^U2Yn~Ko4$wMOFuyGryr#c&hyx=`Ifok2H9 z7p)tni_<0OM(M`rl60xMbX}${TQ@~FU6-S?=w|9>>xy)9bPipau2NT{o2#qW&DS;R znshC?HeIJ~nQn#d939e~ue(rpiS9Dp6}qc**XnN2-K@J!w@J5Ecf0Nm-Ceppy8Cqd zbPwqs(LJtvQunm(Io*r8L%JinS9Ndb-qyXR`%w3Z?sMH&x)ZwZbU*5T(fzLbOZTrH z>h*d~FX}_|;ra-Dq<*k|s6JL7uOF!&tskdP(WmJ%^b_@y_0#kwy;+~HpQSIEG7Bqkmujss1zl*ZLFsAM}6d z|J47*=omf2Fai_C7?`2VFeZi>#UwJLneohI#>7~dnT(a0#S}4iri`g#T#TDJlWAkx znH9`RW({*8a}jefa|3fDa}#qja|?4Ta~rdj*~Z+->|*vY4=@ih4>6B32brgs7nsA$ z5#|f#OXe%)IP*1gg87E|midnPp80|Knfaahi}{y@tezFwa5jn^%to{EYyvxiO=6ST z6gHI|&sy18>}Vzz{x!`fIoTg6th^Vu`mMQjV(%671wEMm`P&tuPLFJRZO z7qSWs@Pvj@_(|8ka=JWYkd?8=L+xb$y zg0JRX{5;;xFXR{T&HPz>2fvg*n_tDt{CWHu{$l=8ejR@$e+_>UH$|9WBxP#Oa5#ATmA?BXZ|<- zPyQbP2s(ik1Yv*>CY&J{g(zW&5F-p1MhJ<*SRq*$FH8`!gh|3wVTO<^S6Ls)SmhPG}Go2xkh5g;t?mSRyPJRtl?ybA=0pi-fhp<-&U5YT-KJM&TA=gRoiH zChQRI6m|>u2z!MGg#E&!!U5r+@Qm=h@RIO~a8!6rcvE;scwhKP_*D2pI4*o6d@uYY z{3`q*{4G){l9(!{iq5Azme3E8Za9EZ!z= z61R%Ci+6~3iF?HR#C_sJ;v?eY;*;Xj;&bAQ;vw;f_^SAZ__p|-_@VfT___F%ctZS6 z{89Wx{9XJ@{8xgKUg9KC3X#I42q{t;EDe=nrFdziG+G)brATQ~hBR54B2ASnQl6AA z&6KQ?U2;fHsZ^?w7Dx-FM(Ipxk<=tDmX=D(q~+4t()rQ_(i-U!>2m2-={9MDv{Bk5 zZI-r6JEc3MJEdLH9_az;Vd)X+fHR@Fv#IGQ#Zv+$QW6zP4J<3NCogg@Z?DAvdRD>G zg!-ns_V!KG04hX=GQEikqrzn!0^iDJS6D)3c3M`}gw)KWjJ)jhqzPH+sYyB68L3IB zsp*#S>1pPi%!wvfScKJVDQjt4)ZSWG?>4v8cP@4}cW5mesTeBpb}Et@L`6}9sc32l zHIy1A>t#k}WlrX0K^A4{b}E*NqlQ!Q*pMh{Bo!|YkVE7!1g^kVv2p_W!CFh&X>4w2 zS(?{Yx7h6pi^Crjw>7xi+zsCL9d+|^TbeuCTAG^hith@W=4+hamo8IYZbnYV_{^ld ztn~3o6D(O7NhVXq_#{(qPHI-JC38Y*dWI`3%G;{7IS;$Ey}r%uZZ2$Tzy^%-1y@b$ zYTVh}cvh#|+JK$WIKR=|<_e3!;->lzTyz9B*S9f8OH0$dx;ATjX=8iiye8b(Ag>{~ z8##Vo8CR@G9T%ICzG__Tit%X^@y}Ul8LL(uQN})<%GgLnVK0Urp|YrnR5mrKQXTeY z?8S2RM|V4p4pUoO-SSOXU~+kpy;!M}v|*e|%yi2QZ}fp27M4epbr zp|PW-&D7?ubA^TB-|Y)qmKN15XXx^3cDTZlh(ENj z^BY-bM`KfC$8rK`#}#2mX`_3oitWW!oAVn#KM1qCy>UTv00d&4ir?sNClQI&@*11m zC3PJOtJGf$>gKt%a(qw1*!$}LCBL*$|IFgZq!mE+{$a{LbL ztc8l}W>HPlVyc;HkrU(*9@k;-twG=x1a3uOn{371A(oik^EwwSaC^LG#O+(@mKN0Hu)P@DIR zZEr1T0OwH`5PpJQj%Uj)5s$q)BI6;_{9Zen17XAZ+$3+c% z{EfB4y|_rpo>5w=4)9&H_MK%J9%r&~>dIqP+ILP{fh#PszGZQ8U2AKTJ9$|>j-%w( zwidF%(t5p@dWaghg}R^GM?FA2C{L8L14EKip$@=OijFm;R?xQRMK9hGOurcKnV)N68%oGY7aFih6~;JJ@~ zCrPcaZb5TnM<-c|;=26g*I<`g{0#RDiu^}i2HvIKt1hy810Co6cd5ymB_B{9`&se{ z^{JdE=ga1j_!+A{@Im>CI$m33FYN3fQKzgQo2jqJ3Zgc0g8If4c7|7=tF_J43DO>3 z@p^Tu>Z$L^Jo-T{kVB7AKU2R@zv61nqnzgPf}Xu zyOyLTPfSjAwX`pDwc%Fk+TAHQ$lFuu8X8)fEz59AO>QE%EXQ5f;rYGWuj+gt(;+3^ z^uW}?zg#eWhvwgZ0Zk=t1{44Q$|dp~*|r(zfF3ZiU3SP$*;=ZGR;e1xuCU>~y2&SO zd-r9nzom+6K?rs&2$f5{DGCe(QB>kKa0Z9~24Dn{V31rUm&+A$rCcRfZv%rtG|r>= zzaU1gLEtPUo#K@V|F4~ddweb~yXsoo-3_tIJc-3qxz*j)u{<^x=hp=-YC4V5W}d&0 zl4=ur?WegBPyf2*YT*^{Bc`=cTG!O+_LCawBjrD3RTN*RYA7T(`hcjON~8|$4#(aZ z4aR`6U>ryS$sh%!g7F{?q=N|{17w0MFcD;fNnkRV0;Ym#U^4C;@YT4cLJLI6)~W1LdFsRDvo{4QfCwaDlm?4$K4fpaHnSe6Rp4 z1dZTKun07P#h@9qfL3r8Xant_19XBVU@2GzmV>jw3a}Ea0_T9$Kn8fl0Ox`8!3AIq zxDZ?fE(Vu?wct{48Mqv*16P3c;7V{6xEfpot_9bD>%k4+MsO3j8QcPH1-F3>U?bQB zHiIo-E7%6MgWJIluoK(??gYEQU0^r38|(r1fP2AxU@y2I>;n&g2f;&NKX@2C0v-jA zfycoC@C0}g90X5+r@=GeS@0Zq9=rfv1TTS?!6EPpI1G+}qu>~L6}$#s2XBBk!CT;M z@D6wvya(O~AAk?RN8n@d3HTIz20jO0fG@#U;5hgioB-c|Z^3uqd+-DJ5&Q&x2ETw` z!EfMq@CW!4{0067|A2oX1p$PRhB~N+3}hh(c_=^;N^k%SfuS%AhQopI3>X0o&p zAQ%M)!)Q1J4u!*D42*?wa5#*I32+1)2}i+1I2w+DW8pZM1e0M3OoiiN8cc^1UCFP59-7P(bEOKy|f~pC_L$Um&lMFO)BmFP1Nn*UFd5m&upQ>*Oos_41YS zRr1yHHS)Fcb@KJ{4f2ihP4dn1E%L4MZSn?rqr6GpEN_vw%G>1a^6l~td8d4be5bri zzDwRM-!1Qv?~(77@00h+_sjd_2jmCkhvfb8!}25Yqw-_&MLsMak&nv9_VE{12*e@~hrnpV z$Uz_%0W$&?1o9BbM_?ubRs?1tfD4`i1n|;Sgg`L@B?!zxz=nVw0S5w31WFMoL!cai z3Ir+&0*er6LSQih%?Pw0 z&??V7LWyuHoCc>?;LU$~M;oqQWEb9%0;Oi`zy(_;uH;v)G?~p-hqbuKRN%6kXWNxk z9GYN`D=gHzirW?S&G_S7Wv8hAuCv7pP~kG=I`9JNGGRzQ}4UAfX;QRr)Kc`stcIkSAls)*R=o@lwnMS0eIr_Ds1@5*sn3(PLF z)uwf?mZ**Bsb-&PvXS1|EV;#nC3atxI-)Ynqf*?eY|vJ&RFO+fHmj+~;q7Ask&W&y zo1dHODz(_`*domiC1?`63z{uC&U}}(h&Wj7fclfBbtZuy)mzt zhj*r|CYlM|G>aWGEjGpds)cz4rhKny=Ms(hZW`FhrB)IeWZcvd^bXwxL?IHG-K|Y6 z%gJFNo-GcWwZsqgA|f=zPsmi@u-J--Kl5$H&JwM!YlBG^m*FVVBrhkD(Y;_6`UKZ{ zBAD2VV2Q<6Xtk5R;aDIMp}}8GwBr1<@U+XZ7U3|onoF!MYoRH>OZ++_9_uG=wv-eU zSCD~s6%^+xb43Hckw}m1O}eDm?!aEowP3r7@->}Xh|XX?9cz)@K_c4EgByC6^Yh9J0pwMbdQaL%{dy(;(gG{!#LT7oCK;xDaNdx=5|fhulm;}oM^(Yu?zU!kQ!L)6bT+wHuEgHQ6WLW{ zD)b^AAc8|cU_sm`o44x+gF)II#omeb3=tgG3uL#I;CUh&2?`pU7b)2-$5~{?78Vqf zbgXseB_cGUOUPVNV9mj4rVx+6H3#Q>M@9D)<`tq6(?i8+vyn;D&4{B!c&LvsUJN{0 zjO3dVpQ-X15gpYfir1UjIOUnGc3c`%*jNp-s#p2vYacO*Jgn4P`=+y*i!DPT5ye#Q(T~CA&-@VxbG?QwPpd8psz!W@MKP@rJ9+>X_-mkyB(g*~~6HQZ`&B zbUEWV(J^%C;7K~uRqS$9lz3skAtDi7BE>cw3`!2w8vdS0_=JtR@D!N+mWH2*kWbin zD}_Rn9ede@Ybr~w!w>gYqT0`3I31)@9vni=_lFUDi^v;#kVb+T)e| zo5*H$$zm_haTa4aPu$>iJ}*J#8gs(3w^bEu@>PuT~gt< z7Sn@>O0us?uFXOQl9ZuJ=Epw9`vhD~V|~0vn`~O~L`M_dSYKUBxh2=>Fy-J3MgpP8 zr{<-H5$U15NMpa}S0w%OfMBt3?R4)#UvGKmy7n(0YI&d;A+a_S_-UG-ETxIXravs9uR zAGi&icS@Xit}0stt+DhVjrldxwVHcpNoJ77)Y0(l3ADztiGtr~clE5RF->|3ksj&W z7ZQ7Fk*g+uyK811-dmU)CQWBL(Mj;tQ3H_p*A>tKIYcATSA!G*I3Sc^)^sdIc+b$a zhS3(Hdw#EdN{C@qZ5NKTDSidDAn`R-YgDrIsYeDEW9D z$BS!m899XX4&YS;uMeR`2GCNZlrea7Q)DT?VTOaMxP+9dnsL_>urVih9hnKP0!Oi? zcLUK&Ke-+;!e+r4PKhO-BIjlTkl8l?yrscKbs;$m#RnziAX+&(rf(w{DSg9GrYb&= z)Q-OBO+>km^V~5Lmy>3@DUWmm?^e48V=Fg}#x`V$nPq`-+c&Q7}@(w<)W z6BtR`H{|+Z+!we%1$E5}I_nnTqYx5ax%k-IWwpDUxKPh8!n=0zffgeB2*UUt zsQGqZn)l2TQZV7+@;b&lM(+`jp6Msxn3tIBcwD-#3Lg@Lp39Lxf_)}_jE9#tr}u=7 z{)FgFJ&E_!RmgLqr9CoItAC$?_?$rX%;=g4q!b)G7C*pI3b)+y^4=%^R|Ki|3vvw!Li{(3C)rp2|{+S?!^e|*)(2M zRKIv4MLntZ#>X!NW^zAZJo+w^(@{(kmS)fI1SmHcka}SmU#^bLRaXg*MM|;W(?x#~ zz@8PY&!GDOs-09)r~-%&@*Gz0X*~TeL7UcR^ZZ<<;Nf!5(^VZLSUm?1UvI>h$?Dzs zIy8Bl=;+}SnXFzvDAW?)fL)W2B&(jtiN08?9=vP0GaN+K7;dy8# z=Ww2EriF)2B=9{4p{%ZrJTr|gX=!S#$M?e2@gxNU2APSU9FPr4fy+}tc+o-vJ1z)X ziN%bcgIm3>4<`sc3+=!N4szh=H3AQV%VM(?+q~vP5U|-jeCGjc$5Y7E)D+v~scd{Z znLE>xJKJT)2lDug7#A3LYl{nbFK{FQE;TkR%1>bOACqIxI+F6f8RzQDz~$_`0+V5)2keBBXCkb4cH0DksCwiK4&XHYrC z<_gWu`2N~SrjgS9JbZ~jsYLPp6kJ5$D;;>~e1>f#LGGE{`w$Pfa4;8_X%>zqIF?iM zWKMB$0kO>gTu3*LKw3`?QtM{`*c1YLN;4pHg3D3tN>9Tl_l^L-X{X@=Qbh!S%pj2F zQ*!|+VS74tB0=oWH1&x~Yau>D&c%IKE{ycVo=mXq{jk;>rOMNBe7sYMLzJZEJZAxZ z(t@A$<<7R?jGzVCwElY7+kl#5Y!-(Tr)!^0iq1qJ^H0TQYS4LB3w}c7;~a0c%_lANCvkQ2gw_IHXC1}FA712H1i3%6t{3DYOBp$l z(uS_^G!0g^WH>t1y){1R@)}%1ko%Kqy#{;27(e*8dF`|lwEhg8&-}3C;|DxHik)_R z>Bcivdd`wk(n4K7gF{``@n*quO#wf{(L6#%FUW#lL7J;MwdS-=c(dmjGy46x50S_wqF zZN=*w*+k)jl$?Q+=NI1bU3${)DtKPE72%`eQmf73#3u}0aGG^z_su#l8othlFI;*7 zwOH|5w~FB91)F~U)~RcawMe~RT%4DOF8~zh;Y&xkHtl>}Clkz`o3o6PoO0^lcShC(!nbt zet7NZdhDvZ`1Bg^S!xL|exi&ISaG>v^}6QL{<+2*5O}+ZpUJ3;0zP_GE-gEXbBnbH zcDi*0xI9=y__@XlTDqiNMU#3B*={LN9_wjweB~+o$7j#y9Sdbwsje_u z1J{rSf+qjK-S9j%)a>;So9hW^&<#sqP<*9OSp@MuRRh-Syoo>tT~GWVeJTf~_vD(Y z3xC*E+T2P2`#OHH_{Hj2d}5=WeJOKC0mcu-)w*4|S8Jb%ZY>;2l`HWHBMDLR^jvuWi7%O&3M%lnO+&h$AQkrkDIkhVxzUYRO%JT{R*m;f58Zz*KZ6Z(yppX=Q&Kh=vxYTxkidS^tEH*0u%s$>q6120zIgUDwI zo~5Tnea9=Z=jJKrk($$9AdmsVrSFjH@~2e>ep}g>33&eL*o)Uvvex#*H7C}Pa@AP#*Y;=)VBy~VUX_I-SwSqnCPU()WJ7j zoi=j0UU|$)?h7cuU8&<;0&P7lX#Ch5KXu28kEuj^Xr%jqz?PpDEWQpyjJIG^{CHp4 zs9MbGVUp&Tk4Y=`|Ev}KUP(zAzMI^2zWy0$pyWSmpl~+1o2I>Gq5G1cpWd+gI?0Bg zZfc(Snm`Ae;wO(7Uuay^<(7CCu5Sr=(SPQZQhX)YTT%Q#uqP5uh9pcf)7b28Sh+Ir z#Z&bfK7Me4@4Bfk1-Zs+-T#@OB>1C{LYtgKc<#qpE0uaz)A)^OB=*$sJY2&M*3tv) zul^)jS-orFw@%f!`^eL70-@gV@=tF65RhR#LCCUP;Bt_&6zyFrJs`4!{bfD3M{`Y9 z?-o+8BXZFJIVdeC8B8>Y#5P^ z3J8l|#L*sh=+6iymgf~S60yjDXvJD-tdHs)s|4@mG|Pq%u^|DmYz~vtZ1qaU5Xr#f zg6|sIy?q@X0MUw%E7jZHJ}<-RM-a(w&Q>JJ`$D)R!k0!hGZTqujK7&(qWJw6at%cj z9!rD=`3vJqH@HB?;iF9;eR41PIvD$^BExxLCbwFO$A*NaW~RHMjlFYvn68eGon*a9LKV30^~db6Cq zIGB_d%N9(^J4nu8QWLbHEDt7?p-EK*lgiYjYJ*8-X;O8;q$X-o4Z)o3u-)nBT=On*6{s`3yrY19d|U5r%Z zwG>5SF=lV;`WTOvwYkB)ta!er+w~m+s}NX*z-k1RBCrx)R#du}Ox}-II0HQtXXX}y zne62U#2gi!3de;)=%ZhcsgLwmBCs5jBI>WfR$r^XuF|)avk_R)gER@VC+ct1--H(j z+*}vgn#zBnm|RlV*tSW3GjVEAnKM@ZtN!PxLTL31^@o0gej_2PI!9Ldx%8X$TLOE2 zlYT3~4>Tz1&~Mk@j*FV^9_g~zpB!$Jeg}c;vwSzN;6g|p0l!eQceb{+v~?t_ELPeu zCi}@8)$hWNze~SSe>e39;U=AjS+=V1znE|fAC4?>%a{k|JQ=^#LHvHN{yu!$7qfb8 z((k1vt3Rq^xsQzH0|;CohvJt{6(-D7LWG%>sc>Rq9!xD(AJ!kB61V6d(LbtxO#e6n z7b0*G0v982$rk++`X@n*{wW03B7g&<9f7N5Yk7ftzQP_^VQXBlQ2D7+r6^Phqzu@} zUbZzaQ=-<~i~7T)xtH`W>ksK)LEusZE<@mQ1lDb#;;C8sV-%*Hxk6#jT926?F@IKc zDP|lbOlp|*)4h~%Hn!X9mMX+nn8a?d|F<6cI(t2)*urn!_l^(<6m&u&$f<68m&(}SWdhTGp#KPS+37z-;Hr%jW~^yb*z7R5X?shP8&eQ=xZ8*e zw61=x|B{G*fxtBz^n-I8JHg^qL{EYTje6<*s;nb|OBPKFb9&g_%m03uXoayAar+W%oPPA;`h=o54&{P z)4qx;xs9o2YVb>ueQ045Q%lhMBB}-UTxOnkW-^#B>Rv6f=aa}@z+ld(`w+OlE3y|c z&Au^8eZsWLn7(SSY>uCCcB@}FcQ8x4i7qFi`-o^ute@yA24TWO<{V}FAn?RC=1S%&oS);FYZ)A8Pa^PwlBKce zO9;G7Y$Sx&mSwH@A&|R4A@wA45Z}VbAA3#m`##4#zopHSHu1eyRh$$E_FUy4sIy&7 zsrWlfGs*v$T$Yeq+uZed>S)VncNxMy>|uw-f|%u!WDw0aqz$dx8<N$}PX{+L zn-O?QOE>DuVrusl-p=g60mIymz|$L2{{1=GYHx3=FDX@sGut)Q{mdg>7Gd|lD4Vsf4lqxsso8HaPs_+27n_-u z?On{7rnYWm?nRgI4 zg1}J(jv??W0}>35%@s) z;X`5#A@jDhwY9XJbWp>wq?c9`OA|t3@|icll&2>o7L*k|XSte}mD0phB6urfkE$1r zh~m!(#km@4-L1hZjc@b$Z7rRxSiz^tQU@kA%fmL#{K)*Y0fBeb#P$pGE9RK>u)|^o z&dtm(%x_BdhJR7h?H`&v$-RFon;7K_mh$<6rPW_NL&P#HUcNo$2FoMxu_vjq5_M=Z zJAe&gLlO7{fzJ{6%A48PfvmwdU9m4>k!aVMsyz27XI>R@Gu|wDxKlNBP z4gp;8e2Mvav9h|hs+t!*?x#7D9qp$%h8>H*aRk2B8uk*3`!(zeTl{}YQ;Vb0f1-CW z*lLbXW2aJyJK1!00-M2RvRUjzHk+NqPG+Yd@Ero*Bk%(PKO*oG0zV`03j)6)fQz`_ zcTywS>C`ON#OAQMteLft1WTCB{~+Zror&mdL{CF>Eut~MAx^cJ?jMI)4laWhwYD@i zceE?K`Itl&XU4%E9&**=NpBbXLgxI3~X%BV@y8`br*`@3w=TiBKCDk`2` zjUb00PLo$4C@70hiMk!oV$-3qXXB?Q-M;eF7r6`T+UhXreVYxxt>Uhk+1TL5@2;rD z6())3rli#%{#ptN_KI`tf0ZkLtRf?GRoRM+3FBf@wf#AJF?%`b$|dYt_EPpT1SJFq zAQ*yR=oWSzdj;;wl?a9*7_M|>;Q!~Ye0xRO^Ga9JCuFQD$A5PNS14V5xtZPA>#%HM zH{-r+MKA(EgVGnHY*pN|a=@cgDp!op${ZJ)ot=qMCuC*#qTa#o!V4dT%d&GfvUedk z2v1W_9PDB5#|;J`+GihNA0$Nk2u2||m{9HGl+im?xVrj2ig!WmV+cn3@UF8@uul@+ zbp(eZID{Nlb*RMV=Qkv1Ry@nT=pi;|Um(Qh2oBrKz6A8_Ap~P&2ZFJrbzkCbe`0R! zl#o;<>S>X3Imcf}HSriR@l^!lyr&lI8|?eR_{-T3*bg=Sas-DXIzu^pX;c0m6PT;G zU#Mi??3e6U>~Z#M_5}M4`z`w&`#t*u`y=}k`!o9s`z!k!`#bvw`zQMs`#1X!`!7dv zfP);(={P;da4g4hJST7>CvgL~5H6Gpp+$b)Q8_kX3#&YAhBrcgt;ZnKrTpE|oP2e)POfHL?$YpbrxXIiU zZYnp8o6gPPOk56^%b7U~m&fIEGdU|ai<`|AaD`kESIm`gb2uAk=Nz1qE9J_#a;}1_ zBIJHj31j&ZMYuW_$)Z*XsNZ*gyP?{M#O?{V*QA8;RX zA8{XZpKzaYpK+gaUvOV?UvbB|uelT4H{7?}cii{f58RL3Pu$PkFWj%(Z`|+P9|*=H zn1J921VSnt2v#6iiC`6i)d3lY2s!HW^R1i`fkUW(vl2wslhIs~ska6N)JyI+Oi z)d*gL;I#-|hv4-H-hkkZ2;PL?%?RFt;H?PWhTsMSHzK$R!OaM6L2xUA+YsE2;Oz+R zKyW95cOZBtg1ZpB3&Gt8-i_cM1n)ucUIgz$a4&-QBe)O22M~M^!G{pskKn@yK7!z* z2tJ13;|Lx=@CgK;MDQSjPa*g;g3loMEP~G=_&kCyAowDJFCq9cf`<@%1;N7z9zpOZ zg2xbi6~WgKd>z3z5PTECw-9_A!FLdR7s2-sd>_FN5d09qj}ZJA!A}tU6v59B{2akA z5d0FsuMj+r;MWMAK=2y`zeVsn1iwe{2Lyja@FxU+M(`H|e?{;&1b;{H4+Q^2@Gk`a zM(`g5|3x%~Xn<&lXd2NvMC%dFAeu!qhiD$r0-{AkONbtT=nzDQB03Dw;fNlH=ra%< zfoKDwjfjp!^dLk>A$l;PqY*s>(L)hE4AC)&jzx4FqHzX|M|1+BM<9A6qDLV*5z(U& zJqFQZ5j_skNr+BHbPA$V5j`H!X^2io^aL*(Ij7u#I5`KoLjA%kmmq=?i}T9;hm#PC z^UB?az7mV`%I$}K5R3E59f&>pd&>6^RA%E`?t&+~jI$^UB?iV8r6Qa_{4$#Nxbi@uOeF;=FPR#9sx! zq(rFwec#W)uXuP#7xpPTiN*P=iPEVMi}TlY>jr*ly;ov!{>E;?!FZkdTZnKFVsU;0 z5%A&I4nQombD9`~yTbtBaHSREWj-{RAY=4PAo1+M7|%y;zB4<=p(VXFpvoU7sTR%ArO*> znXq5P;=&+;)O{qJgw(xvVsRmwD4mR0To^{A`a>)(#1W0Y5sM26M7CeV;=(AR(pO?} zVa!RS{fNbdq+U%Yi;o|%xR6R@`%Ek@q!aNz5)SuDEG}dcl%Aw?J?P2R_h*9>iwoKP z0t-$oE=(a{r$sC-OeYXMX;*r5j=aa^E!TP@78h~|T2Jc4fM^;CuJYG&v=?s$3qk0~ zV-gU-YftaQ;=;^+^zWp^;==5HSf{>pMqYC!L>mE##f2h**N4y|-uJu{*DJBOFo%Hk zWOD7{x^Becf`jOt2C=wMMgUHaSX`(i7(JPfdl*kV(VbXas3FRIoaem~iwkoJN>2iq zfF=Yb78mOK=#U`9;=+7_5nw6>Ci7M+IX^0Ip|O|#1Vso$EG{(l(x1Rc+P=ZxnwG%* z(fD3ZPAo385rk7F78g2+dhgu89s_#i78aHf{gW|0=LR4a7gi9>q#mpz{#_49EH0cw zRC{t(`l~7%V&$)gX*m_|j{W|4n1BdQ&*|ll-mDXu*iZg{=gs z_v8@($&XlExSirbk99{h>% z1n`t%I{>k`IFg|CXEpK8lwOF%#nGp0pD(evIPP@a*Ns?QOd)_h4}W|H*k=!|luJR0 z#l^IfcGsV}J1DWZn9(=uyn}EOVsUXI!TWEC#l^`4v*)HQhzENi78j=xq@ZP&-(J}# zt-68|i;E@#9JK1_4Orn$_3|P2Ml3FxPp<)=r8Y3JxR~ER*LVZsWW?g)ECSqDVrrj1 zl+`a{ak21}{o}Le^NvMNVsWvAG!QiT`;D;IKf#E_MLPivx?u?n+B>nhSV|y+t|xww zJ|V93z6Y_mSU~{$I(`8Otrg(l#NuK#Y2|-PEH1kKniSX}HN;8V$4`zPT)?;TvLtd|t ze3-~~qn`~xEG|AqUI&)tc|#h-~_H&<(dz9IM>E>m_A1jAQ2+EQ<0TfCKrc3RBNmr* z!R0i^N-U8JFi3vH;*t{e;8@oReiByzC|$(g1Bf5qdk%}AiXL<85!Zo%u+dCH%B3-qw zcK3qCn4gnSzV%S?{53H=q&>cJG$95p5+_kL=NopOKiN3ls5nEXS{r1sBYz zt6yYyW2)ae%o^0Cq?Bf139b1>rc?^MKkDs}{d96*2?H#G9#{i^tdS>#J@`NSswst($uGgUghAHH`c098WJcy? zv9!pZhnbhLBja!|c*HpKl9sf?IWBiPfYUjfTgvqST z;mK9dS>M=Dm)}N+Ym;(Xni`Ib9F;h_Qnj)f>y)cMV)}8ltxbtzFsyp!c63~lkerf= zn=f0~*x|;VQp~Wo*44XnQmHUn7BE~|x@O;|v@!Vij7%(OZmjRX{>1ZUQwI5PVm9U# z^>Ipr>aIPHHu^hPs@(fx4NxmD)gUrnXYssU6ha)C1H3>RIYA^#=7J^$GPE^#%18 z06+o;Fa*SaM34fqfEnZiE0_&RKsl%abHQTJ3Od0h;4-iY+z0l7hgAndp#Dou_x$Vm z2lEQkHiZaPS}R>z<0V2h~wMneq-q zJMpYXbSa|Cwn^8480iM-MrhWItH=)kvzXz`7<|sE1hFR(!e-$dOL(mP zQ=wl{Awu?!+Wc&RZ*L``Q!Hk=*Cj%3GUCfKR$bWHG?$IfJDvxRI2W^ufp-N9nY zLUuR1hrO5G%kE3EehP2qt-OtQ@ojtuzl2}LpUto2&*5eMT>gCiI{pU!CjM4_Bfo{;&hOyw z#NET{@R$;ZUR=8fcL)azk7WN4D3VVfp!h^zo;Su2#;fQcdcujay zct?0&_(=Fv_(J$f_**oJ3F2fiPplSKi&u%ainob(io3-<;(g-%;sfFb;tBCP@dxo| z@mKM8@gGT)21*fr z9+O^{UXhMSuS#!7Z%gkK>h&tfU^dy9dP}CjRQ6h*g9bQfE@$w z8F1f#`v*KQVE=$e27D0`8Il*WB;>r1H6a&;tPQy=WL?PSkUK;6gxnjlH)LPP!I0-d zUI=+9-q2>C4J_t2rCBSTX{r-Yh9i$d+8&d{>Z>d@NIxuNqy>qDDDJ44S8 zT^o9J=+4kRp)ZBL7W!uB+oA7L= z6JZC#o(_99?D??6VQ+-}9Uc{)7(PCHLU?BQ#BfWvE!+`a8eSe=8D1S;8@?!fad>NZ zd-#&@<>4#C&k5fW{&@K30|yLD8fY6>6>(m~1rZlUTpY1B;9F2sMNo&M+7Zk%lNkv|*?r#t>(SH;gchGK@BiH6$5Q z4C4*yh73cNA=@z7Fx4>KU^3(yEQWl8)iB#oXec(!G1v`GLz$t%P-UnwxD0iMdV|}r zz|d$|WLRuyF`Q*+H*^}78kQSY7*-ip8<62V!v%&54Hp~M8ZI-eGpsjUWw^$0o#6(< zO@>^AH%+-ult*k^dqu;1{A;W5Jj!;^-m49^-~FuZIy zY&d3k-SC#-UBd^4j}4z0zBGJo_}1`);b+5dhCdDe7=ck|WQ~GxfHBN?hS6w@G7d4u z7>6527!!?SjmgIG#tFtO<0Ru$;|yc2G0$i<78r|-Hlx#6Zmcra8taS=#s$VRjf;(~ z#&+Wp<8tFl<7(r%#tV!W8P^&wH?B8cZM@ESqwyBw2IFSqHscQCoyOh9dyIRH4;c3w zA2l8@9yC5t@jqe!WH-2RN)cA$*xbYj~_r{-$zZ(BA{vAn0(veIg zA1OtKMh=WLL=K7^92p;(6qyn^C$ciKDY89sW#k2s7e?L|d3)r}$b*qDMIMU$A@a}2 zzX!z+8aF6;P{APQpt3>jgH{eYXV8s!WUrIvDj*)S29sJSYGG@rQA!S464w*M(&5(6N z)(^RF$Rk4@8}h}F?}z+2G;Ck~!)_V2f7rocPY?TK*ok4^#)QN~#ze(r z#mtDwiK&liifN9yC}w@kRWbWx4#qqk^F_?}F+awh5j!MySnSN$IkEQGb7R-WUKYDM z_JP=kV&94VH1_k@zvGxVE-o%^Ox(CQXIyRE+_+_NDDJ$t8{;;|ZH;>@?%BBK<9>+y zGw$!<#^Eu;BO*o^N2HIKGGf|@mJ!QFoIPU0h#e#D81c@CPe*({a==LA$U!3~k2H_W8`&~) z*~qg;ZXCID91&L1PDxwT-PBTQhdU z*d1f<82i!K<6}>ZOB*+N+|+UMxQoZF9rwz(H^;r5G&E^sQeu)bsWxeD(zQvqC2dT4 zE9v8;Pm?2)W0Qv`*CfwRUYNW+`R?RAFdQc7mZ#FV8ea>}_W`%@04Je~4) zDwE2kPD!<-=BKVqy&(0%)caE(OFfYKed-^ne~r%`pEKS(e#!XN9q1`+o#<OlPO_)61vVO|PH6ZTjx%duDJm!e^W@W9bZe#-nsI!_3DZ+-M9zcK%#{Nwp2W~R@aGIQF@8)j~rxn<^GR=t(Ax~vPWXIl4L z4_cp|HDuO^S)*oE&1#r6f7Z>jw$9o<>$6$k&ia0K?(BluMYAuTeckLEW`8jI%h|^Z zQVX&RCKt37tSDGj@I=821uqpE3WpWO7Pb|xC|p(eOyMhqM~a3PjVwwmYAsq`w4&(g zqC-W8i{pyN6pt%jR*Z_zD}Jx|^WrZ{rkBhtnN@O2$+nW)OMaUJ=FoGTb86?zowH}o zLvtRU^Q(=rLEC6snr(v3Wm{-F)3(L7%eLG0itSC?+qU2Az)sua>|^ZX?1lDHd%1m? z9of&bZ?W&P@3y~SKW2Z;{)7Eb``?a8N33JGW11u1VRbBYoaJbDT;aIEag*aA$CHky z9G^PAaeU_-=!|v_bxw4eoVm_g=K^P=^L*!J&UMb6&U>AEokyMTINx*rS*j~#N@GeB zOUIPvmKKy2l`bf4Ep01ZS9*QvjiviaA1{5P^xe|WO1~(h%cQc9ve9K}WfRJZ%gW0t z%R0->DU-`?D%(=Ft?WSA^JOoVeO~rm*$?Fd%8liN$|sahEuUUqRo+lOzkGH1Mdg>2 z?<~K!d~f-Y^0&+1E&sXvpYnezKm}c)uL!9~uE?lxRxGMmRnpZY+*|Q< z#YYvNR(w%$yyBaR?XVpK| zRCQ!^LUmGgYIS;bW_5OTPPL_aX7%jqqUw_Bit766=IS-oS5@C!eOvXW>aEqcSMRC5 zuX*>&7PY3YVNOjvgX;E=WAZ9Ib3tB=JlF4Yd)$uUh`Yc-!=c%f?B4Qua#;; zY6sQE)h5@b)TY*^)lRR?sWsQ;*UqXfsCCv>*4EU{t({lfQrl6xq;^^Ds#>}ByxI$D z*VSHMyR~*_?VYuE)!tisf9->{`)gmSeXaKM+P_>z*Lc?iSEei5HO1w0)w#bIt=L%u{7BCC+EkqyW<$W~+< zvJ?3pVg0+xrHC9+B3dL3Nk=k~e54YwBaKK4;zDR-9}+?KBL|R9|*R;pbREM!Dwdu!g$2!MTer}(Fy3s=wvhworW$%SD|as z_2@U~W^^lxqZBGbm1rueL$gpLYCT%vEkS#Yz#IQTZFB~c42!k6vHtN#>4hv5EEh&EE~(k%$OA`!b-7n ztO~2e>{tVK5Ic?C!FrhQFh63(GdD7Erjlu3rZcmc7G@RG!E9yH%pfzwJjncsd6@Yd z^Ca^O^9u7S^9J)F^9i$?`GWb1`8PfQAB;!i@8Kiy_wiUf4xfh4z(2?5;PdbW_*#53 z&cInX2j}7>PT?Y4f*bHW+=f@0N=Pp}rVwy|)QoTXxESZSI`}`jyqm?#mv>j$_ih-1FQH?k(I?-}no(U%xR3?ZV4VZ?A^91%lIBw~pvL>!SstRprM-x8Y% zoZt{Vf=>WKMx+zDgo(%}3J4ofNmLVcgq=7>{6Rb+x``LWOa4IqaQ;aC`}{HdvHbD; z5BbyipYlKF&*9JGf5~6OU&3EWk|afnNGYix)ufixlNn?-nM;~UD_KOAlI3I-Sxef< zMzV!;kzO)Dwvl1-KjZ=OC-P_V7xGu~BzcBBPj--3$m`@S@;2E;-X|ZCPs!)xUt|y2 z3;KZm;4SbD7y^cZ;b0UP1IB?5!AD>c_ykM?Gr?!z3osWf01Lqquna5*E5RD@HP{F? zfvsRW*ah|g6ySgZcwjGpKnNs24pcw`(m*=M0!Cm07ElOEfDKfF8c+`!Kr?Ux5AcH^ z2!VF+12_l{gQMU$_zj!}=fFj98C(N5K_~bF+yf866VMG_fLGuj@CNpS17Q>#45Q(D za3mZJ$HEvm5yrwPa4MVuXTjMp9?pjea4}p8li&)t8m@yI;J0uK+y-~T-H-v9kPW$z z4*?WFF_b|iOocjVfSE7{=D~be0E=N6tbo<94mw~HY=v&E7M5fn*Ll!%g2 z3QA3BDLs`zWmCD7nX*zvR4G+XRZ+E+oob*wl#e<`U88PLF9m%C{RJ_CDS|k`8o?&P z7J)*b7o-d71x|rma9nUsa6!;5_($+sI8FG4FkZMzhzr@mOkuvzD)b7&!ggVo@Tss{ z6eF4bxD`xp7dSm`_eJerP9^XwNj20N(EB0 zv{Y)7wo4C7k4UdeyQKGIZ^?$r-jgkmEt4h5cru|(EVIaLvI^ND*$LT6*?rk_*$eqd zd5nC5e33j^zEaMTlX56G$xGyA@`(J9{Ac-1`91jq#YjbrVuE6+Vzpwef~OEF#ENP~ zlcGg&S<$Juql{9%ryQY-S1wj2Dz_+iD-oqksZ;8ePGwNJPkBmtNqI%tt^7y%S~W)X zkt$ZTMzu+`MYUHYQOQ(gsydZjbwhPmbzePHJw`oNouE!qC#(0UIclytU2Rh5t7-Lq z^#S!&^&NHBze+GXb!6(o)a9uwQYERHR9&h))s^Z=J(YSX^@?VYW`t&xW`SmzCP{;7 z2+dwij;26Uq&cEFr8%Q{rR}F3ppDlq)+TCk?OrX=TD9fcO6?KtDeW0;kFLLNpzbr> z0$qY`hYr)>I+LzMSEf6tJFYvS>(>3Fd!05ZZD!i6w2f)o({`qnrPZa`({86dN_(Oo ztB=)B)+g#$>DTC?UanW_EA$S1qyCislKzVRjUmb~$S~6|*D&9(&A>2Vh75z*U@@F9 zTrhN`k4vAFJ|&%<4$`Ug=5&8Lo&GALU&erpgp8z&n;qug%@53v@@M47=g-Sm<{R=e z@{i@8%|CA$ZJB8K*s{&Suwa&2ON+&6?Pncqeb>6dy3M-7nr|($mRqk|yR7#L<`*n2 z_^QBKP+m}3@UY-T!OOxGg&PXLDJ&?gD6A@cT==rEr)XYLV$rgqtRhQMLD9{kdqoe5 zzbyW$czLn0xUjgm_S)a0Z z$_AHhE!$JZDD#ws$|7ZNY*DsBHpG@<e^Ifp zVtK`i3S&iKMRCRDiq48Vl`|{nR?e@KSEf}ODvwv5tGrM(zG`ySCsip`RF$wQRCTcG zP<3?m=;{xuzpF;7(P~e1s5(+Jyk=ZYObu0|s8Q7%uQ^w9p>}p{LhYhjORcT8qPDB{ zX>E61LS0f_a$QbcL0wVZv%0_Qdh0jWe_y|+zODX1{XzRkdyIX8U1(R?Q|*3xyM4d? zPy1^}AIB2MO2=x4%~9`gIR0=vaXf2S(6Fo_sUfo=zrosYtl@0K`NnaLlNzTq@*BmC z(#B(rXB*EqO>COlG`&gGq;AqQ9c?<@bhddyb6oSZW?8eYS>JrB`BL+hmU%6SEz4Sp zTdG@XTVAxhY3&$i0Nf0%jI#Ma$Ry=arOTDw;1J~Y-BP#Q zUF5EE*SHV3e{mmo-*rE8KlhCAjQ4!#S?pQiS>@q+1Rjyc>?!rwJVDP7o*z9|J$F1^ z-u~Vp-e~U(Z@hP&cawLQcehvK)p&JYo44NU@c!UE>OJP|@;>!;`-b^G@Qw4$^)2x& z_3iXAeJr2Wm+dq98hjp~&v(Li!Pnt??(6lv@sIV#`X~Dn{j2OR(+lW@^b&d*okWZ2e7c$T)9v&R^g;SCeUv^% zU!&=AZB<_61xHNpB|L$EpM4F-a3!EmrWcsO`8 zcq8~Q_&oSmuqW8tHlXe8wn1(0whe6?(>9?kuI;msDP#%RLQNr0s4a9TbUJh{bTM=} zbS-o<)ERmjdLH^K)D!9r_X+n84-8KWuMbPZwc(a + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ofxBeatExample/ofxBeatExample.xcodeproj/xcshareddata/xcschemes/ofxBeatExample Release.xcscheme b/ofxBeatExample/ofxBeatExample.xcodeproj/xcshareddata/xcschemes/ofxBeatExample Release.xcscheme new file mode 100644 index 0000000..80ec586 --- /dev/null +++ b/ofxBeatExample/ofxBeatExample.xcodeproj/xcshareddata/xcschemes/ofxBeatExample Release.xcscheme @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ofxBeatExample/ofxBeatExample.xcodeproj/xcuserdata/darren.xcuserdatad/xcschemes/xcschememanagement.plist b/ofxBeatExample/ofxBeatExample.xcodeproj/xcuserdata/darren.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..13dfb6e --- /dev/null +++ b/ofxBeatExample/ofxBeatExample.xcodeproj/xcuserdata/darren.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SuppressBuildableAutocreation + + E4B69B5A0A3A1756003C02F2 + + primary + + + + + diff --git a/ofxBeatExample/openFrameworks-Info.plist b/ofxBeatExample/openFrameworks-Info.plist new file mode 100644 index 0000000..edb46d2 --- /dev/null +++ b/ofxBeatExample/openFrameworks-Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + com.yourcompany.openFrameworks + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + CFBundleIconFile + ${ICON} + + diff --git a/ofxBeatExample/src/main.cpp b/ofxBeatExample/src/main.cpp new file mode 100644 index 0000000..a7d241d --- /dev/null +++ b/ofxBeatExample/src/main.cpp @@ -0,0 +1,13 @@ +#include "ofMain.h" +#include "testApp.h" + +//======================================================================== +int main( ){ + ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context + + // this kicks off the running of my app + // can be OF_WINDOW or OF_FULLSCREEN + // pass in width and height too: + ofRunApp(new testApp()); + +} diff --git a/ofxBeatExample/src/testApp.cpp b/ofxBeatExample/src/testApp.cpp new file mode 100644 index 0000000..e7283cf --- /dev/null +++ b/ofxBeatExample/src/testApp.cpp @@ -0,0 +1,67 @@ +#include "testApp.h" + +//-------------------------------------------------------------- +void testApp::setup(){ + ofSoundStreamSetup(0, 1, this, 44100, beat.getBufferSize(), 4); +} + +//-------------------------------------------------------------- +void testApp::update(){ + beat.update(ofGetElapsedTimeMillis()); +} + +//-------------------------------------------------------------- +void testApp::draw(){ + cout << beat.kick() << "," << beat.snare() << "," << beat.hihat() << endl; +} + + +void testApp::audioReceived(float* input, int bufferSize, int nChannels) { + beat.audioReceived(input, bufferSize, nChannels); +} + + +//-------------------------------------------------------------- +void testApp::keyPressed(int key){ + +} + +//-------------------------------------------------------------- +void testApp::keyReleased(int key){ + +} + +//-------------------------------------------------------------- +void testApp::mouseMoved(int x, int y ){ + +} + +//-------------------------------------------------------------- +void testApp::mouseDragged(int x, int y, int button){ + +} + +//-------------------------------------------------------------- +void testApp::mousePressed(int x, int y, int button){ + +} + +//-------------------------------------------------------------- +void testApp::mouseReleased(int x, int y, int button){ + +} + +//-------------------------------------------------------------- +void testApp::windowResized(int w, int h){ + +} + +//-------------------------------------------------------------- +void testApp::gotMessage(ofMessage msg){ + +} + +//-------------------------------------------------------------- +void testApp::dragEvent(ofDragInfo dragInfo){ + +} diff --git a/ofxBeatExample/src/testApp.h b/ofxBeatExample/src/testApp.h new file mode 100644 index 0000000..bfaf141 --- /dev/null +++ b/ofxBeatExample/src/testApp.h @@ -0,0 +1,26 @@ +#pragma once + +#include "ofMain.h" +#include "ofxBeat.h" + +class testApp : public ofBaseApp{ + ofxBeat beat; + + public: + void setup(); + void update(); + void draw(); + + void keyPressed(int key); + void keyReleased(int key); + void mouseMoved(int x, int y ); + void mouseDragged(int x, int y, int button); + void mousePressed(int x, int y, int button); + void mouseReleased(int x, int y, int button); + void windowResized(int w, int h); + void dragEvent(ofDragInfo dragInfo); + void gotMessage(ofMessage msg); + + void audioReceived(float*, int, int); + +};