diff --git a/CSFML/xcode/SFML-bare.xcodeproj/project.pbxproj b/CSFML/xcode/SFML-bare.xcodeproj/project.pbxproj index 798466d95..506c8f80e 100644 --- a/CSFML/xcode/SFML-bare.xcodeproj/project.pbxproj +++ b/CSFML/xcode/SFML-bare.xcodeproj/project.pbxproj @@ -245,10 +245,10 @@ A011E5E70F65786600FAE48D /* zlib.h in Headers */ = {isa = PBXBuildFile; fileRef = A011E5660F65786600FAE48D /* zlib.h */; }; A011E5E80F65786600FAE48D /* zutil.c in Sources */ = {isa = PBXBuildFile; fileRef = A011E5670F65786600FAE48D /* zutil.c */; }; A011E5E90F65786600FAE48D /* zutil.h in Headers */ = {isa = PBXBuildFile; fileRef = A011E5680F65786600FAE48D /* zutil.h */; }; - A011E5FB0F65791B00FAE48D /* libcsfml-system.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system.dylib */; }; - A011E6060F65797100FAE48D /* libcsfml-system.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system.dylib */; }; - A011E6140F6579CA00FAE48D /* libcsfml-window.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E38F0F6574B500FAE48D /* libcsfml-window.dylib */; }; - A011E6170F6579D100FAE48D /* libcsfml-system.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system.dylib */; }; + A011E5FB0F65791B00FAE48D /* libcsfml-system-d.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */; }; + A011E6060F65797100FAE48D /* libcsfml-system-d.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */; }; + A011E6140F6579CA00FAE48D /* libcsfml-window-d.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E38F0F6574B500FAE48D /* libcsfml-window-d.dylib */; }; + A011E6170F6579D100FAE48D /* libcsfml-system-d.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */; }; A01BEF370F6BF2490095262C /* sndfile.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A01BEF360F6BF2490095262C /* sndfile.framework */; }; /* End PBXBuildFile section */ @@ -291,11 +291,11 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - A011E3720F65749300FAE48D /* libcsfml-system.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-system.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; - A011E37D0F65749F00FAE48D /* libcsfml-network.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-network.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; - A011E3860F6574AC00FAE48D /* libcsfml-audio.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-audio.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; - A011E38F0F6574B500FAE48D /* libcsfml-window.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-window.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; - A011E3980F6574BE00FAE48D /* libcsfml-graphics.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-graphics.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; + A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-system-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; + A011E37D0F65749F00FAE48D /* libcsfml-network-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-network-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; + A011E3860F6574AC00FAE48D /* libcsfml-audio-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-audio-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; + A011E38F0F6574B500FAE48D /* libcsfml-window-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-window-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; + A011E3980F6574BE00FAE48D /* libcsfml-graphics-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = "libcsfml-graphics-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; A011E3A40F6574E400FAE48D /* SFML-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SFML-Info.plist"; sourceTree = ""; }; A011E3DE0F65776B00FAE48D /* Sleep.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Sleep.cpp; path = ../src/SFML/System/Sleep.cpp; sourceTree = SOURCE_ROOT; }; A011E3DF0F65776B00FAE48D /* Thread.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Thread.cpp; path = ../src/SFML/System/Thread.cpp; sourceTree = SOURCE_ROOT; }; @@ -539,7 +539,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A011E5FB0F65791B00FAE48D /* libcsfml-system.dylib in Frameworks */, + A011E5FB0F65791B00FAE48D /* libcsfml-system-d.dylib in Frameworks */, A01BEF370F6BF2490095262C /* sndfile.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -548,7 +548,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A011E6060F65797100FAE48D /* libcsfml-system.dylib in Frameworks */, + A011E6060F65797100FAE48D /* libcsfml-system-d.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -556,8 +556,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A011E6140F6579CA00FAE48D /* libcsfml-window.dylib in Frameworks */, - A011E6170F6579D100FAE48D /* libcsfml-system.dylib in Frameworks */, + A011E6140F6579CA00FAE48D /* libcsfml-window-d.dylib in Frameworks */, + A011E6170F6579D100FAE48D /* libcsfml-system-d.dylib in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -581,11 +581,11 @@ A011E3730F65749300FAE48D /* Products */ = { isa = PBXGroup; children = ( - A011E3720F65749300FAE48D /* libcsfml-system.dylib */, - A011E37D0F65749F00FAE48D /* libcsfml-network.dylib */, - A011E3860F6574AC00FAE48D /* libcsfml-audio.dylib */, - A011E38F0F6574B500FAE48D /* libcsfml-window.dylib */, - A011E3980F6574BE00FAE48D /* libcsfml-graphics.dylib */, + A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */, + A011E37D0F65749F00FAE48D /* libcsfml-network-d.dylib */, + A011E3860F6574AC00FAE48D /* libcsfml-audio-d.dylib */, + A011E38F0F6574B500FAE48D /* libcsfml-window-d.dylib */, + A011E3980F6574BE00FAE48D /* libcsfml-graphics-d.dylib */, ); name = Products; sourceTree = ""; @@ -1088,7 +1088,7 @@ ); name = "csfml-system"; productName = "csfml-system"; - productReference = A011E3720F65749300FAE48D /* libcsfml-system.dylib */; + productReference = A011E3720F65749300FAE48D /* libcsfml-system-d.dylib */; productType = "com.apple.product-type.library.dynamic"; }; A011E37C0F65749F00FAE48D /* csfml-network */ = { @@ -1105,7 +1105,7 @@ ); name = "csfml-network"; productName = "csfml-network"; - productReference = A011E37D0F65749F00FAE48D /* libcsfml-network.dylib */; + productReference = A011E37D0F65749F00FAE48D /* libcsfml-network-d.dylib */; productType = "com.apple.product-type.library.dynamic"; }; A011E3850F6574AC00FAE48D /* csfml-audio */ = { @@ -1122,7 +1122,7 @@ ); name = "csfml-audio"; productName = "csfml-audio"; - productReference = A011E3860F6574AC00FAE48D /* libcsfml-audio.dylib */; + productReference = A011E3860F6574AC00FAE48D /* libcsfml-audio-d.dylib */; productType = "com.apple.product-type.library.dynamic"; }; A011E38E0F6574B500FAE48D /* csfml-window */ = { @@ -1139,7 +1139,7 @@ ); name = "csfml-window"; productName = "csfml-window"; - productReference = A011E38F0F6574B500FAE48D /* libcsfml-window.dylib */; + productReference = A011E38F0F6574B500FAE48D /* libcsfml-window-d.dylib */; productType = "com.apple.product-type.library.dynamic"; }; A011E3970F6574BE00FAE48D /* csfml-graphics */ = { @@ -1156,7 +1156,7 @@ ); name = "csfml-graphics"; productName = "csfml-graphics"; - productReference = A011E3980F6574BE00FAE48D /* libcsfml-graphics.dylib */; + productReference = A011E3980F6574BE00FAE48D /* libcsfml-graphics-d.dylib */; productType = "com.apple.product-type.library.dynamic"; }; /* End PBXNativeTarget section */ @@ -1442,6 +1442,7 @@ "$(SRCROOT)/../../include", "$(SRCROOT)/../../src", ); + INSTALL_PATH = "@executable_path"; OBJROOT = "$(SRCROOT)/build"; SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; SYMROOT = "$(SRCROOT)/../../lib"; @@ -1462,6 +1463,7 @@ "$(SRCROOT)/../../include", "$(SRCROOT)/../../src", ); + INSTALL_PATH = "@executable_path"; OBJROOT = "$(SRCROOT)/build"; SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; SYMROOT = "$(SRCROOT)/../../lib"; @@ -1478,7 +1480,6 @@ GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", CoreFoundation, @@ -1497,7 +1498,6 @@ EXECUTABLE_PREFIX = lib; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", CoreFoundation, @@ -1518,7 +1518,6 @@ GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; - INSTALL_PATH = /usr/local/lib; PREBINDING = NO; PRODUCT_NAME = "csfml-network-d"; }; @@ -1533,7 +1532,6 @@ EXECUTABLE_PREFIX = lib; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; PREBINDING = NO; PRODUCT_NAME = "csfml-network"; ZERO_LINK = NO; @@ -1546,11 +1544,7 @@ ALWAYS_SEARCH_USER_PATHS = NO; COPY_PHASE_STRIP = NO; EXECUTABLE_PREFIX = lib; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../extlibs/libs-xcode\""; + FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/../../extlibs/libs-xcode"; GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; @@ -1562,7 +1556,6 @@ "$(SRCROOT)/../../src", "$(SRCROOT)/../../extlibs/headers", ); - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", OpenAL, @@ -1579,11 +1572,7 @@ COPY_PHASE_STRIP = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; EXECUTABLE_PREFIX = lib; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../extlibs/libs-xcode\""; + FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/../../extlibs/libs-xcode"; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_MODEL_TUNING = G5; HEADER_SEARCH_PATHS = ( @@ -1593,14 +1582,12 @@ "$(SRCROOT)/../../src", "$(SRCROOT)/../../extlibs/headers", ); - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", OpenAL, ); PREBINDING = NO; PRODUCT_NAME = "csfml-audio"; - ZERO_LINK = NO; }; name = Release; }; @@ -1614,7 +1601,6 @@ GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", Cocoa, @@ -1633,7 +1619,6 @@ EXECUTABLE_PREFIX = lib; GCC_ENABLE_FIX_AND_CONTINUE = NO; GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", Cocoa, @@ -1661,7 +1646,6 @@ "$(SRCROOT)/../../src", "$(SRCROOT)/../../extlibs/headers", ); - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", OpenGL, @@ -1688,7 +1672,6 @@ "$(SRCROOT)/../../src", "$(SRCROOT)/../../extlibs/headers", ); - INSTALL_PATH = /usr/local/lib; OTHER_LDFLAGS = ( "-framework", OpenGL, diff --git a/build/vc2005/sfml-window.vcproj b/build/vc2005/sfml-window.vcproj index 18c46c516..d53068fbe 100644 --- a/build/vc2005/sfml-window.vcproj +++ b/build/vc2005/sfml-window.vcproj @@ -476,10 +476,6 @@ RelativePath="..\..\src\SFML\Window\Joystick.hpp" > - - diff --git a/build/xcode/SFML.xcodeproj/project.pbxproj b/build/xcode/SFML.xcodeproj/project.pbxproj index 95fcf3f3e..aa058f2f2 100644 --- a/build/xcode/SFML.xcodeproj/project.pbxproj +++ b/build/xcode/SFML.xcodeproj/project.pbxproj @@ -56,9 +56,9 @@ A04C59B40EDDBA9C00935061 /* VideoModeSupport.hpp in Headers */ = {isa = PBXBuildFile; fileRef = A04C59AA0EDDBA9C00935061 /* VideoModeSupport.hpp */; }; A04C59B70EDDBA9C00935061 /* WindowImplCocoa.hpp in Headers */ = {isa = PBXBuildFile; fileRef = A04C59AD0EDDBA9C00935061 /* WindowImplCocoa.hpp */; }; A04C59B80EDDBA9C00935061 /* WindowImplCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = A04C59AE0EDDBA9C00935061 /* WindowImplCocoa.mm */; }; - A05EEF700E5CF18F00572B7E /* sfml-window-d.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A0C93EB40D9A9CA000B9E0C8 /* sfml-window-d.framework */; }; + A05EEF700E5CF18F00572B7E /* sfml-window.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A0C93EB40D9A9CA000B9E0C8 /* sfml-window.framework */; }; A093E3D00D8BF918002236B4 /* dummy.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A093E3CF0D8BF918002236B4 /* dummy.cpp */; }; - A093E5480D8BFEAE002236B4 /* sfml-system-d.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */; }; + A093E5480D8BFEAE002236B4 /* sfml-system.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system.framework */; }; A09EEBF70D8C19BF00F6C625 /* Platform.hpp in Headers */ = {isa = PBXBuildFile; fileRef = A09EEBED0D8C19BF00F6C625 /* Platform.hpp */; }; A09EEBF80D8C19BF00F6C625 /* Randomizer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A09EEBEE0D8C19BF00F6C625 /* Randomizer.cpp */; }; A09EEBF90D8C19BF00F6C625 /* Mutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A09EEBF00D8C19BF00F6C625 /* Mutex.cpp */; }; @@ -69,9 +69,8 @@ A09EEBFE0D8C19BF00F6C625 /* Lock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A09EEBF50D8C19BF00F6C625 /* Lock.cpp */; }; A09EEBFF0D8C19BF00F6C625 /* Sleep.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A09EEBF60D8C19BF00F6C625 /* Sleep.cpp */; }; A0B617730F66936F005E0970 /* sndfile.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A0B617720F66936F005E0970 /* sndfile.framework */; }; - A0B617780F66938D005E0970 /* sndfile.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = A0B617720F66936F005E0970 /* sndfile.framework */; }; - A0BE1A200D917332007D4CAD /* sfml-system-d.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */; }; - A0C93F930D9AA9FA00B9E0C8 /* sfml-system-d.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */; }; + A0BE1A200D917332007D4CAD /* sfml-system.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system.framework */; }; + A0C93F930D9AA9FA00B9E0C8 /* sfml-system.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A093E37F0D8BF87A002236B4 /* sfml-system.framework */; }; A0CE9FE70F46F72500FD00CE /* GLKit.h in Headers */ = {isa = PBXBuildFile; fileRef = A0CE9FE50F46F72500FD00CE /* GLKit.h */; }; A0CE9FE80F46F72500FD00CE /* GLKit.mm in Sources */ = {isa = PBXBuildFile; fileRef = A0CE9FE60F46F72500FD00CE /* GLKit.mm */; }; A0EEDE990F59D49C0023A7F7 /* Initializer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A0EEDE980F59D49C0023A7F7 /* Initializer.cpp */; }; @@ -309,19 +308,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - A0B617500F66926C005E0970 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - A0B617780F66938D005E0970 /* sndfile.framework in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ A018A2790EA21866005FFAC3 /* Http.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Http.cpp; path = ../../src/SFML/Network/Http.cpp; sourceTree = SOURCE_ROOT; }; A018A27A0EA21866005FFAC3 /* Ftp.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Ftp.cpp; path = ../../src/SFML/Network/Ftp.cpp; sourceTree = SOURCE_ROOT; }; @@ -426,14 +412,14 @@ A04C59AE0EDDBA9C00935061 /* WindowImplCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.objcpp; name = WindowImplCocoa.mm; path = ../../src/SFML/Window/Cocoa/WindowImplCocoa.mm; sourceTree = SOURCE_ROOT; }; A093E3750D8BF86E002236B4 /* SFML.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SFML.framework; sourceTree = BUILT_PRODUCTS_DIR; }; A093E3770D8BF86E002236B4 /* SFML-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SFML-Info.plist"; sourceTree = SOURCE_ROOT; }; - A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-system-d.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A093E37F0D8BF87A002236B4 /* sfml-system.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-system.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; A093E3800D8BF87A002236B4 /* sfml-system-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "sfml-system-Info.plist"; sourceTree = SOURCE_ROOT; }; - A093E3880D8BF885002236B4 /* sfml-network-d.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-network-d.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A093E3880D8BF885002236B4 /* sfml-network.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-network.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; A093E3890D8BF885002236B4 /* sfml-network-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "sfml-network-Info.plist"; sourceTree = SOURCE_ROOT; }; A093E3920D8BF892002236B4 /* sfml-window-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "sfml-window-Info.plist"; sourceTree = SOURCE_ROOT; }; - A093E39A0D8BF89B002236B4 /* sfml-audio-d.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-audio-d.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A093E39A0D8BF89B002236B4 /* sfml-audio.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-audio.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; A093E39B0D8BF89B002236B4 /* sfml-audio-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "sfml-audio-Info.plist"; sourceTree = SOURCE_ROOT; }; - A093E3A30D8BF8A2002236B4 /* sfml-graphics-d.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-graphics-d.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A093E3A30D8BF8A2002236B4 /* sfml-graphics.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-graphics.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; A093E3A40D8BF8A2002236B4 /* sfml-graphics-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "sfml-graphics-Info.plist"; sourceTree = SOURCE_ROOT; }; A093E3CF0D8BF918002236B4 /* dummy.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = dummy.cpp; sourceTree = SOURCE_ROOT; }; A09EEBED0D8C19BF00F6C625 /* Platform.hpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.h; name = Platform.hpp; path = ../../src/SFML/System/Platform.hpp; sourceTree = SOURCE_ROOT; }; @@ -446,7 +432,7 @@ A09EEBF50D8C19BF00F6C625 /* Lock.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Lock.cpp; path = ../../src/SFML/System/Lock.cpp; sourceTree = SOURCE_ROOT; }; A09EEBF60D8C19BF00F6C625 /* Sleep.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Sleep.cpp; path = ../../src/SFML/System/Sleep.cpp; sourceTree = SOURCE_ROOT; }; A0B617720F66936F005E0970 /* sndfile.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = sndfile.framework; path = "../../extlibs/libs-xcode/sndfile.framework"; sourceTree = SOURCE_ROOT; }; - A0C93EB40D9A9CA000B9E0C8 /* sfml-window-d.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-window-d.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A0C93EB40D9A9CA000B9E0C8 /* sfml-window.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = "sfml-window.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; A0CE9FE50F46F72500FD00CE /* GLKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GLKit.h; sourceTree = ""; }; A0CE9FE60F46F72500FD00CE /* GLKit.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = GLKit.mm; sourceTree = ""; }; A0EEDE980F59D49C0023A7F7 /* Initializer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Initializer.cpp; path = ../../src/SFML/System/Initializer.cpp; sourceTree = SOURCE_ROOT; }; @@ -618,7 +604,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A093E5480D8BFEAE002236B4 /* sfml-system-d.framework in Frameworks */, + A093E5480D8BFEAE002236B4 /* sfml-system.framework in Frameworks */, A0B617730F66936F005E0970 /* sndfile.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -627,8 +613,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A0BE1A200D917332007D4CAD /* sfml-system-d.framework in Frameworks */, - A05EEF700E5CF18F00572B7E /* sfml-window-d.framework in Frameworks */, + A0BE1A200D917332007D4CAD /* sfml-system.framework in Frameworks */, + A05EEF700E5CF18F00572B7E /* sfml-window.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -636,7 +622,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A0C93F930D9AA9FA00B9E0C8 /* sfml-system-d.framework in Frameworks */, + A0C93F930D9AA9FA00B9E0C8 /* sfml-system.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -865,11 +851,11 @@ isa = PBXGroup; children = ( A093E3750D8BF86E002236B4 /* SFML.framework */, - A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */, - A093E3880D8BF885002236B4 /* sfml-network-d.framework */, - A093E39A0D8BF89B002236B4 /* sfml-audio-d.framework */, - A093E3A30D8BF8A2002236B4 /* sfml-graphics-d.framework */, - A0C93EB40D9A9CA000B9E0C8 /* sfml-window-d.framework */, + A093E37F0D8BF87A002236B4 /* sfml-system.framework */, + A093E3880D8BF885002236B4 /* sfml-network.framework */, + A093E39A0D8BF89B002236B4 /* sfml-audio.framework */, + A093E3A30D8BF8A2002236B4 /* sfml-graphics.framework */, + A0C93EB40D9A9CA000B9E0C8 /* sfml-window.framework */, ); name = Products; sourceTree = ""; @@ -1311,7 +1297,7 @@ ); name = "sfml-system"; productName = "sfml-system"; - productReference = A093E37F0D8BF87A002236B4 /* sfml-system-d.framework */; + productReference = A093E37F0D8BF87A002236B4 /* sfml-system.framework */; productType = "com.apple.product-type.framework"; }; A093E3870D8BF885002236B4 /* sfml-network */ = { @@ -1330,7 +1316,7 @@ ); name = "sfml-network"; productName = "sfml-network"; - productReference = A093E3880D8BF885002236B4 /* sfml-network-d.framework */; + productReference = A093E3880D8BF885002236B4 /* sfml-network.framework */; productType = "com.apple.product-type.framework"; }; A093E3990D8BF89B002236B4 /* sfml-audio */ = { @@ -1341,7 +1327,6 @@ A093E3960D8BF89B002236B4 /* Resources */, A093E3970D8BF89B002236B4 /* Sources */, A093E3980D8BF89B002236B4 /* Frameworks */, - A0B617500F66926C005E0970 /* CopyFiles */, ); buildRules = ( ); @@ -1350,7 +1335,7 @@ ); name = "sfml-audio"; productName = "sfml-audio"; - productReference = A093E39A0D8BF89B002236B4 /* sfml-audio-d.framework */; + productReference = A093E39A0D8BF89B002236B4 /* sfml-audio.framework */; productType = "com.apple.product-type.framework"; }; A093E3A20D8BF8A2002236B4 /* sfml-graphics */ = { @@ -1370,7 +1355,7 @@ ); name = "sfml-graphics"; productName = "sfml-graphics"; - productReference = A093E3A30D8BF8A2002236B4 /* sfml-graphics-d.framework */; + productReference = A093E3A30D8BF8A2002236B4 /* sfml-graphics.framework */; productType = "com.apple.product-type.framework"; }; A0C93EB30D9A9CA000B9E0C8 /* sfml-window */ = { @@ -1389,7 +1374,7 @@ ); name = "sfml-window"; productName = "sfml-window"; - productReference = A0C93EB40D9A9CA000B9E0C8 /* sfml-window-d.framework */; + productReference = A0C93EB40D9A9CA000B9E0C8 /* sfml-window.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -1867,11 +1852,7 @@ COPY_PHASE_STRIP = NO; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../extlibs/libs-xcode\""; + FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/../../extlibs/libs-xcode"; FRAMEWORK_VERSION = A; GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; @@ -1887,7 +1868,6 @@ "-framework", OpenAL, ); - OTHER_REZFLAGS = ""; PRODUCT_NAME = "sfml-audio-d"; SECTORDER_FLAGS = ""; WARNING_CFLAGS = ( @@ -1904,11 +1884,7 @@ COPY_PHASE_STRIP = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../extlibs/libs-xcode\""; + FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/../../extlibs/libs-xcode"; FRAMEWORK_VERSION = A; GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; @@ -1923,7 +1899,6 @@ "-framework", OpenAL, ); - OTHER_REZFLAGS = ""; PRODUCT_NAME = "sfml-audio"; SECTORDER_FLAGS = ""; WARNING_CFLAGS = ( @@ -2273,11 +2248,7 @@ COPY_PHASE_STRIP = NO; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)", - ); - FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 = "\"$(SRCROOT)/../../extlibs/libs-xcode\""; + FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)/../../extlibs/libs-xcode"; FRAMEWORK_VERSION = A; GCC_PRECOMPILE_PREFIX_HEADER = NO; GCC_PREFIX_HEADER = ""; @@ -2293,7 +2264,6 @@ "-framework", OpenAL, ); - OTHER_REZFLAGS = ""; PRODUCT_NAME = "sfml-audio-d"; SECTORDER_FLAGS = ""; WARNING_CFLAGS = ( diff --git a/dotnet/src/Window/VideoMode.cs b/dotnet/src/Window/VideoMode.cs index 824769027..8dcced9dc 100644 --- a/dotnet/src/Window/VideoMode.cs +++ b/dotnet/src/Window/VideoMode.cs @@ -1,5 +1,6 @@ using System; using System.Runtime.InteropServices; +using System.Security; namespace SFML { @@ -42,6 +43,51 @@ namespace SFML BitsPerPixel = bpp; } + //////////////////////////////////////////////////////////// + /// + /// Tell whether or not the video mode is supported + /// + /// True if the video mode is valid, false otherwise + //////////////////////////////////////////////////////////// + public bool IsValid() + { + return sfVideoMode_IsValid(this); + } + + //////////////////////////////////////////////////////////// + /// + /// Get the number of valid video modes + /// + //////////////////////////////////////////////////////////// + public static uint ModesCount + { + get {return sfVideoMode_GetModesCount();} + } + + //////////////////////////////////////////////////////////// + /// + /// Get a valid video mode. + /// Index must be in range [0, ModesCount[. + /// Modes are sorted from best to worst + /// + /// Index of the video mode to get + /// index-th video mode + //////////////////////////////////////////////////////////// + public static VideoMode GetMode(uint index) + { + return sfVideoMode_GetMode(index); + } + + //////////////////////////////////////////////////////////// + /// + /// Get the current desktop video mode + /// + //////////////////////////////////////////////////////////// + public static VideoMode DesktopMode + { + get {return sfVideoMode_GetDesktopMode();} + } + /// Video mode width, in pixels public uint Width; @@ -50,6 +96,20 @@ namespace SFML /// Video mode depth, in bits per pixel public uint BitsPerPixel; + + #region Imports + [DllImport("csfml-window"), SuppressUnmanagedCodeSecurity] + static extern VideoMode sfVideoMode_GetDesktopMode(); + + [DllImport("csfml-window"), SuppressUnmanagedCodeSecurity] + static extern uint sfVideoMode_GetModesCount(); + + [DllImport("csfml-window"), SuppressUnmanagedCodeSecurity] + static extern VideoMode sfVideoMode_GetMode(uint Index); + + [DllImport("csfml-window"), SuppressUnmanagedCodeSecurity] + static extern bool sfVideoMode_IsValid(VideoMode Mode); + #endregion } } } diff --git a/extlibs/libs-xcode/OpenAL.framework/Headers b/extlibs/libs-xcode/OpenAL.framework/Headers new file mode 120000 index 000000000..a177d2a6b --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/extlibs/libs-xcode/OpenAL.framework/OpenAL b/extlibs/libs-xcode/OpenAL.framework/OpenAL new file mode 120000 index 000000000..7a4d340e4 --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/OpenAL @@ -0,0 +1 @@ +Versions/Current/OpenAL \ No newline at end of file diff --git a/extlibs/libs-xcode/OpenAL.framework/Resources b/extlibs/libs-xcode/OpenAL.framework/Resources new file mode 120000 index 000000000..953ee36f3 --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/MacOSX_OALExtensions.h b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/MacOSX_OALExtensions.h new file mode 100644 index 000000000..f3d0a40ec --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/MacOSX_OALExtensions.h @@ -0,0 +1,194 @@ +/********************************************************************************************************************************** +* +* OpenAL cross platform audio library +* Copyright © 2006, Apple Computer, Inc. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without modification, are permitted provided +* that the following conditions are met: +* +* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following +* disclaimer in the documentation and/or other materials provided with the distribution. +* 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of its contributors may be used to endorse or promote +* products derived from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS +* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE +* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +* +**********************************************************************************************************************************/ + +#ifndef __MAC_OSX_OAL_EXTENSIONS_H__ +#define __MAC_OSX_OAL_EXTENSIONS_H__ + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +/* + Convert Data When Loading. + Default false, currently applies only to monophonic sounds. Use with alEnable()/alDisable() +*/ + #define ALC_MAC_OSX_CONVERT_DATA_UPON_LOADING 0xF001 + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ALC_EXT_MAC_OSX + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +typedef ALvoid (*alcMacOSXRenderingQualityProcPtr) (const ALint value); +typedef ALvoid (*alMacOSXRenderChannelCountProcPtr) (const ALint value); +typedef ALvoid (*alcMacOSXMixerMaxiumumBussesProcPtr) (const ALint value); +typedef ALvoid (*alcMacOSXMixerOutputRateProcPtr) (const ALdouble value); + +typedef ALint (*alcMacOSXGetRenderingQualityProcPtr) (); +typedef ALint (*alMacOSXGetRenderChannelCountProcPtr) (); +typedef ALint (*alcMacOSXGetMixerMaxiumumBussesProcPtr) (); +typedef ALdouble (*alcMacOSXGetMixerOutputRateProcPtr) (); + +/* Render Quality. Used with alcMacOSXRenderingQuality() */ + + #define ALC_MAC_OSX_SPATIAL_RENDERING_QUALITY_HIGH 'rqhi' + #define ALC_MAC_OSX_SPATIAL_RENDERING_QUALITY_LOW 'rdlo' + +/* + Render Channels. Used with alMacOSXRenderChannelCount() + Allows a user to force OpenAL to render to stereo, regardless of the audio hardware being used +*/ + #define ALC_MAC_OSX_RENDER_CHANNEL_COUNT_STEREO 'rcst' + #define ALC_MAC_OSX_RENDER_CHANNEL_COUNT_MULTICHANNEL 'rcmc' + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + AL_EXT_STATIC_BUFFER + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +typedef ALvoid AL_APIENTRY (*alBufferDataStaticProcPtr) (const ALint bid, ALenum format, ALvoid* data, ALsizei size, ALsizei freq); + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ALC_EXT_ASA : Apple Spatial Audio Extension + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ +/* + Used with the ASA API calls: alcASAGetSource(), alcASASetSource(), alcASAGetListener(), alcASASetListener() +*/ + +typedef ALenum (*alcASAGetSourceProcPtr) (const ALuint property, ALuint source, ALvoid *data, ALuint* dataSize); +typedef ALenum (*alcASASetSourceProcPtr) (const ALuint property, ALuint source, ALvoid *data, ALuint dataSize); +typedef ALenum (*alcASAGetListenerProcPtr) (const ALuint property, ALvoid *data, ALuint* dataSize); +typedef ALenum (*alcASASetListenerProcPtr) (const ALuint property, ALvoid *data, ALuint dataSize); + + /* listener properties */ + #define ALC_ASA_REVERB_ON 'rvon' // type ALboolean + #define ALC_ASA_REVERB_GLOBAL_LEVEL 'rvgl' // type ALfloat -40.0 db - 40.0 db + + #define ALC_ASA_REVERB_ROOM_TYPE 'rvrt' // type ALint + + /* reverb room type presets for the ALC_ASA_REVERB_ROOM_TYPE property */ + #define ALC_ASA_REVERB_ROOM_TYPE_SmallRoom 0 + #define ALC_ASA_REVERB_ROOM_TYPE_MediumRoom 1 + #define ALC_ASA_REVERB_ROOM_TYPE_LargeRoom 2 + #define ALC_ASA_REVERB_ROOM_TYPE_MediumHall 3 + #define ALC_ASA_REVERB_ROOM_TYPE_LargeHall 4 + #define ALC_ASA_REVERB_ROOM_TYPE_Plate 5 + #define ALC_ASA_REVERB_ROOM_TYPE_MediumChamber 6 + #define ALC_ASA_REVERB_ROOM_TYPE_LargeChamber 7 + #define ALC_ASA_REVERB_ROOM_TYPE_Cathedral 8 + #define ALC_ASA_REVERB_ROOM_TYPE_LargeRoom2 9 + #define ALC_ASA_REVERB_ROOM_TYPE_MediumHall2 10 + #define ALC_ASA_REVERB_ROOM_TYPE_MediumHall3 11 + #define ALC_ASA_REVERB_ROOM_TYPE_LargeHall2 12 + + #define ALC_ASA_REVERB_PRESET 'rvps' // type ALchar* - (set only) path to an au preset file + + #define ALC_ASA_REVERB_EQ_GAIN 'rveg' // type ALfloat + #define ALC_ASA_REVERB_EQ_BANDWITH 'rveb' // type ALfloat + #define ALC_ASA_REVERB_EQ_FREQ 'rvef' // type ALfloat + + #define ALC_ASA_REVERB_QUALITY 'rvqt' // type ALint + + /* reverb quality settings for the ALC_ASA_REVERB_QUALITY property */ + #define ALC_ASA_REVERB_QUALITY_Max 0x7F + #define ALC_ASA_REVERB_QUALITY_High 0x60 + #define ALC_ASA_REVERB_QUALITY_Medium 0x40 + #define ALC_ASA_REVERB_QUALITY_Low 0x20 + #define ALC_ASA_REVERB_QUALITY_Min 0 + + /* source properties */ + #define ALC_ASA_REVERB_SEND_LEVEL 'rvsl' // type ALfloat 0.0 (dry) - 1.0 (wet) (0-100% dry/wet mix, 0.0 default) + #define ALC_ASA_OCCLUSION 'occl' // type ALfloat -100.0 db (most occlusion) - 0.0 db (no occlusion, 0.0 default) + #define ALC_ASA_OBSTRUCTION 'obst' // type ALfloat -100.0 db (most obstruction) - 0.0 db (no obstruction, 0.0 default) + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ALC_EXT_ASA_ROGER_BEEP : Apple Spatial Audio Extension for Roger Beep Effect + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +/* + Roger Beep : an effect to simulate effects such as Walkie Talkie noise. It is designed to replace the + source audio data with a specific 'tone' when falling below a specified db threshold for a specified time. + This Extension will be present when the Roger Beep Audio Unit is present on the system (10.5 or greater) + Use the alcASAGetSource() and alcASASetSource() APIs in the ALC_EXT_ASA extension. +*/ + + /* source properties */ + #define ALC_ASA_ROGER_BEEP_ENABLE 'rben' // type ALboolean - initializes Roger Beep for use - returns error if source is not in a Stopped or Initial state + #define ALC_ASA_ROGER_BEEP_ON 'rbon' // type ALboolean - set effect on/off (bypass) - default setting is true (on) + #define ALC_ASA_ROGER_BEEP_GAIN 'rbgn' // type ALfloat - 20.0 (db) apply maximum effect : -80.0(db) apply minimum effect amount + #define ALC_ASA_ROGER_BEEP_SENSITIVITY 'rbsn' // type ALint - specifiy a predefined sensitivity setting + #define ALC_ASA_ROGER_BEEP_TYPE 'rbtp' // type ALint - choose predefined specific Roger Beep tone + #define ALC_ASA_ROGER_BEEP_PRESET 'rbps' // type ALchar* - path to an au preset file (set only) + + /* settings for the ALC_ASA_ROGER_BEEP_TYPE property */ + #define ALC_ASA_ROGER_BEEP_TYPE_quindartone 0 + #define ALC_ASA_ROGER_BEEP_TYPE_whitenoise 1 + #define ALC_ASA_ROGER_BEEP_TYPE_walkietalkie 2 + + /* settings for the ALC_ASA_ROGER_BEEP_SENSITIVITY property */ + + #define ALC_ASA_ROGER_BEEP_SENSITIVITY_Light 0 + #define ALC_ASA_ROGER_BEEP_SENSITIVITY_Medium 1 + #define ALC_ASA_ROGER_BEEP_SENSITIVITY_Heavy 2 + +/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ALC_EXT_ASA_DISTORTION : Apple Spatial Audio Extension for Distortion Effect + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ + +/* + Distortion Effect + This Extension will be present when the Distortion Audio Unit is present on the system (10.5 or greater) + Use the alcASAGetSource() and alcASASetSource() APIs in the ALC_EXT_ASA extension. +*/ + + /* source properties */ + #define ALC_ASA_DISTORTION_ENABLE 'dsen' // type ALboolean - initializes Distortion for use - returns error if source is not in a Stopped or Initial state + #define ALC_ASA_DISTORTION_ON 'dson' // type ALboolean - set effect on/off (bypass) - default setting is true (on) + #define ALC_ASA_DISTORTION_MIX 'dsmx' // type ALfloat - mix balance between dry signal and distortion effect - 0.0 (no effect) - 100.0 (all effect) + #define ALC_ASA_DISTORTION_TYPE 'dstp' // type ALint - choose predefined distortion settings + #define ALC_ASA_DISTORTION_PRESET 'dsps' // type ALchar* - path to an au preset file (set only) + + /* settings for the ALC_ASA_DISTORTION_TYPE property */ + #define ALC_ASA_DISTORTION_TYPE_BitBrush 0 + #define ALC_ASA_DISTORTION_TYPE_BufferBeats 1 + #define ALC_ASA_DISTORTION_TYPE_LoFi 2 + #define ALC_ASA_DISTORTION_TYPE_BrokenSpeaker 3 + #define ALC_ASA_DISTORTION_TYPE_Cellphone 4 + #define ALC_ASA_DISTORTION_TYPE_Decimated1 5 + #define ALC_ASA_DISTORTION_TYPE_Decimated2 6 + #define ALC_ASA_DISTORTION_TYPE_Decimated3 7 + #define ALC_ASA_DISTORTION_TYPE_Decimated4 8 + #define ALC_ASA_DISTORTION_TYPE_DistortedFunk 9 + #define ALC_ASA_DISTORTION_TYPE_DistortionCubed 10 + #define ALC_ASA_DISTORTION_TYPE_DistortionSquared 11 + #define ALC_ASA_DISTORTION_TYPE_Echo1 12 + #define ALC_ASA_DISTORTION_TYPE_Echo2 13 + #define ALC_ASA_DISTORTION_TYPE_EchoTight1 14 + #define ALC_ASA_DISTORTION_TYPE_EchoTight2 15 + #define ALC_ASA_DISTORTION_TYPE_EverythingBroken 16 + #define ALC_ASA_DISTORTION_TYPE_AlienChatter 17 + #define ALC_ASA_DISTORTION_TYPE_CosmicInteference 18 + #define ALC_ASA_DISTORTION_TYPE_GoldenPi 19 + #define ALC_ASA_DISTORTION_TYPE_RadioTower 20 + #define ALC_ASA_DISTORTION_TYPE_Waves 21 + + + +#endif // __MAC_OSX_OAL_EXTENSIONS_H__ \ No newline at end of file diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/al.h b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/al.h new file mode 100644 index 000000000..630b6ad52 --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/al.h @@ -0,0 +1,724 @@ +#ifndef AL_AL_H +#define AL_AL_H + +#if defined(__cplusplus) +extern "C" { +#endif + +#if defined(_WIN32) && !defined(_XBOX) + /* _OPENAL32LIB is deprecated */ + #if defined(AL_BUILD_LIBRARY) || defined (_OPENAL32LIB) + #define AL_API __declspec(dllexport) + #else + #define AL_API __declspec(dllimport) + #endif +#else + #if defined(AL_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY) + #define AL_API __attribute__((visibility("default"))) + #else + #define AL_API extern + #endif +#endif + +#if defined(_WIN32) + #define AL_APIENTRY __cdecl +#else + #define AL_APIENTRY +#endif + +#if defined(TARGET_OS_MAC) && TARGET_OS_MAC + #pragma export on +#endif + +/* + * The OPENAL, ALAPI, ALAPIENTRY, AL_INVALID, AL_ILLEGAL_ENUM, and + * AL_ILLEGAL_COMMAND macros are deprecated, but are included for + * applications porting code from AL 1.0 + */ +#define OPENAL +#define ALAPI AL_API +#define ALAPIENTRY AL_APIENTRY +#define AL_INVALID (-1) +#define AL_ILLEGAL_ENUM AL_INVALID_ENUM +#define AL_ILLEGAL_COMMAND AL_INVALID_OPERATION + +#define AL_VERSION_1_0 +#define AL_VERSION_1_1 + + +/** 8-bit boolean */ +typedef char ALboolean; + +/** character */ +typedef char ALchar; + +/** signed 8-bit 2's complement integer */ +typedef char ALbyte; + +/** unsigned 8-bit integer */ +typedef unsigned char ALubyte; + +/** signed 16-bit 2's complement integer */ +typedef short ALshort; + +/** unsigned 16-bit integer */ +typedef unsigned short ALushort; + +/** signed 32-bit 2's complement integer */ +typedef int ALint; + +/** unsigned 32-bit integer */ +typedef unsigned int ALuint; + +/** non-negative 32-bit binary integer size */ +typedef int ALsizei; + +/** enumerated 32-bit value */ +typedef int ALenum; + +/** 32-bit IEEE754 floating-point */ +typedef float ALfloat; + +/** 64-bit IEEE754 floating-point */ +typedef double ALdouble; + +/** void type (for opaque pointers only) */ +typedef void ALvoid; + + +/* Enumerant values begin at column 50. No tabs. */ + +/* "no distance model" or "no buffer" */ +#define AL_NONE 0 + +/* Boolean False. */ +#define AL_FALSE 0 + +/** Boolean True. */ +#define AL_TRUE 1 + +/** Indicate Source has relative coordinates. */ +#define AL_SOURCE_RELATIVE 0x202 + + + +/** + * Directional source, inner cone angle, in degrees. + * Range: [0-360] + * Default: 360 + */ +#define AL_CONE_INNER_ANGLE 0x1001 + +/** + * Directional source, outer cone angle, in degrees. + * Range: [0-360] + * Default: 360 + */ +#define AL_CONE_OUTER_ANGLE 0x1002 + +/** + * Specify the pitch to be applied, either at source, + * or on mixer results, at listener. + * Range: [0.5-2.0] + * Default: 1.0 + */ +#define AL_PITCH 0x1003 + +/** + * Specify the current location in three dimensional space. + * OpenAL, like OpenGL, uses a right handed coordinate system, + * where in a frontal default view X (thumb) points right, + * Y points up (index finger), and Z points towards the + * viewer/camera (middle finger). + * To switch from a left handed coordinate system, flip the + * sign on the Z coordinate. + * Listener position is always in the world coordinate system. + */ +#define AL_POSITION 0x1004 + +/** Specify the current direction. */ +#define AL_DIRECTION 0x1005 + +/** Specify the current velocity in three dimensional space. */ +#define AL_VELOCITY 0x1006 + +/** + * Indicate whether source is looping. + * Type: ALboolean? + * Range: [AL_TRUE, AL_FALSE] + * Default: FALSE. + */ +#define AL_LOOPING 0x1007 + +/** + * Indicate the buffer to provide sound samples. + * Type: ALuint. + * Range: any valid Buffer id. + */ +#define AL_BUFFER 0x1009 + +/** + * Indicate the gain (volume amplification) applied. + * Type: ALfloat. + * Range: ]0.0- ] + * A value of 1.0 means un-attenuated/unchanged. + * Each division by 2 equals an attenuation of -6dB. + * Each multiplicaton with 2 equals an amplification of +6dB. + * A value of 0.0 is meaningless with respect to a logarithmic + * scale; it is interpreted as zero volume - the channel + * is effectively disabled. + */ +#define AL_GAIN 0x100A + +/* + * Indicate minimum source attenuation + * Type: ALfloat + * Range: [0.0 - 1.0] + * + * Logarthmic + */ +#define AL_MIN_GAIN 0x100D + +/** + * Indicate maximum source attenuation + * Type: ALfloat + * Range: [0.0 - 1.0] + * + * Logarthmic + */ +#define AL_MAX_GAIN 0x100E + +/** + * Indicate listener orientation. + * + * at/up + */ +#define AL_ORIENTATION 0x100F + +/** + * Source state information. + */ +#define AL_SOURCE_STATE 0x1010 +#define AL_INITIAL 0x1011 +#define AL_PLAYING 0x1012 +#define AL_PAUSED 0x1013 +#define AL_STOPPED 0x1014 + +/** + * Buffer Queue params + */ +#define AL_BUFFERS_QUEUED 0x1015 +#define AL_BUFFERS_PROCESSED 0x1016 + +/** + * Source buffer position information + */ +#define AL_SEC_OFFSET 0x1024 +#define AL_SAMPLE_OFFSET 0x1025 +#define AL_BYTE_OFFSET 0x1026 + +/* + * Source type (Static, Streaming or undetermined) + * Source is Static if a Buffer has been attached using AL_BUFFER + * Source is Streaming if one or more Buffers have been attached using alSourceQueueBuffers + * Source is undetermined when it has the NULL buffer attached + */ +#define AL_SOURCE_TYPE 0x1027 +#define AL_STATIC 0x1028 +#define AL_STREAMING 0x1029 +#define AL_UNDETERMINED 0x1030 + +/** Sound samples: format specifier. */ +#define AL_FORMAT_MONO8 0x1100 +#define AL_FORMAT_MONO16 0x1101 +#define AL_FORMAT_STEREO8 0x1102 +#define AL_FORMAT_STEREO16 0x1103 + +/** + * source specific reference distance + * Type: ALfloat + * Range: 0.0 - +inf + * + * At 0.0, no distance attenuation occurs. Default is + * 1.0. + */ +#define AL_REFERENCE_DISTANCE 0x1020 + +/** + * source specific rolloff factor + * Type: ALfloat + * Range: 0.0 - +inf + * + */ +#define AL_ROLLOFF_FACTOR 0x1021 + +/** + * Directional source, outer cone gain. + * + * Default: 0.0 + * Range: [0.0 - 1.0] + * Logarithmic + */ +#define AL_CONE_OUTER_GAIN 0x1022 + +/** + * Indicate distance above which sources are not + * attenuated using the inverse clamped distance model. + * + * Default: +inf + * Type: ALfloat + * Range: 0.0 - +inf + */ +#define AL_MAX_DISTANCE 0x1023 + +/** + * Sound samples: frequency, in units of Hertz [Hz]. + * This is the number of samples per second. Half of the + * sample frequency marks the maximum significant + * frequency component. + */ +#define AL_FREQUENCY 0x2001 +#define AL_BITS 0x2002 +#define AL_CHANNELS 0x2003 +#define AL_SIZE 0x2004 + +/** + * Buffer state. + * + * Not supported for public use (yet). + */ +#define AL_UNUSED 0x2010 +#define AL_PENDING 0x2011 +#define AL_PROCESSED 0x2012 + + +/** Errors: No Error. */ +#define AL_NO_ERROR AL_FALSE + +/** + * Invalid Name paramater passed to AL call. + */ +#define AL_INVALID_NAME 0xA001 + +/** + * Invalid parameter passed to AL call. + */ +#define AL_INVALID_ENUM 0xA002 + +/** + * Invalid enum parameter value. + */ +#define AL_INVALID_VALUE 0xA003 + +/** + * Illegal call. + */ +#define AL_INVALID_OPERATION 0xA004 + + +/** + * No mojo. + */ +#define AL_OUT_OF_MEMORY 0xA005 + + +/** Context strings: Vendor Name. */ +#define AL_VENDOR 0xB001 +#define AL_VERSION 0xB002 +#define AL_RENDERER 0xB003 +#define AL_EXTENSIONS 0xB004 + +/** Global tweakage. */ + +/** + * Doppler scale. Default 1.0 + */ +#define AL_DOPPLER_FACTOR 0xC000 + +/** + * Tweaks speed of propagation. + */ +#define AL_DOPPLER_VELOCITY 0xC001 + +/** + * Speed of Sound in units per second + */ +#define AL_SPEED_OF_SOUND 0xC003 + +/** + * Distance models + * + * used in conjunction with DistanceModel + * + * implicit: NONE, which disances distance attenuation. + */ +#define AL_DISTANCE_MODEL 0xD000 +#define AL_INVERSE_DISTANCE 0xD001 +#define AL_INVERSE_DISTANCE_CLAMPED 0xD002 +#define AL_LINEAR_DISTANCE 0xD003 +#define AL_LINEAR_DISTANCE_CLAMPED 0xD004 +#define AL_EXPONENT_DISTANCE 0xD005 +#define AL_EXPONENT_DISTANCE_CLAMPED 0xD006 + +/* + * Renderer State management + */ +AL_API void AL_APIENTRY alEnable( ALenum capability ); + +AL_API void AL_APIENTRY alDisable( ALenum capability ); + +AL_API ALboolean AL_APIENTRY alIsEnabled( ALenum capability ); + + +/* + * State retrieval + */ +AL_API const ALchar* AL_APIENTRY alGetString( ALenum param ); + +AL_API void AL_APIENTRY alGetBooleanv( ALenum param, ALboolean* data ); + +AL_API void AL_APIENTRY alGetIntegerv( ALenum param, ALint* data ); + +AL_API void AL_APIENTRY alGetFloatv( ALenum param, ALfloat* data ); + +AL_API void AL_APIENTRY alGetDoublev( ALenum param, ALdouble* data ); + +AL_API ALboolean AL_APIENTRY alGetBoolean( ALenum param ); + +AL_API ALint AL_APIENTRY alGetInteger( ALenum param ); + +AL_API ALfloat AL_APIENTRY alGetFloat( ALenum param ); + +AL_API ALdouble AL_APIENTRY alGetDouble( ALenum param ); + + +/* + * Error support. + * Obtain the most recent error generated in the AL state machine. + */ +AL_API ALenum AL_APIENTRY alGetError( void ); + + +/* + * Extension support. + * Query for the presence of an extension, and obtain any appropriate + * function pointers and enum values. + */ +AL_API ALboolean AL_APIENTRY alIsExtensionPresent( const ALchar* extname ); + +AL_API void* AL_APIENTRY alGetProcAddress( const ALchar* fname ); + +AL_API ALenum AL_APIENTRY alGetEnumValue( const ALchar* ename ); + + +/* + * LISTENER + * Listener represents the location and orientation of the + * 'user' in 3D-space. + * + * Properties include: - + * + * Gain AL_GAIN ALfloat + * Position AL_POSITION ALfloat[3] + * Velocity AL_VELOCITY ALfloat[3] + * Orientation AL_ORIENTATION ALfloat[6] (Forward then Up vectors) +*/ + +/* + * Set Listener parameters + */ +AL_API void AL_APIENTRY alListenerf( ALenum param, ALfloat value ); + +AL_API void AL_APIENTRY alListener3f( ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); + +AL_API void AL_APIENTRY alListenerfv( ALenum param, const ALfloat* values ); + +AL_API void AL_APIENTRY alListeneri( ALenum param, ALint value ); + +AL_API void AL_APIENTRY alListener3i( ALenum param, ALint value1, ALint value2, ALint value3 ); + +AL_API void AL_APIENTRY alListeneriv( ALenum param, const ALint* values ); + +/* + * Get Listener parameters + */ +AL_API void AL_APIENTRY alGetListenerf( ALenum param, ALfloat* value ); + +AL_API void AL_APIENTRY alGetListener3f( ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3 ); + +AL_API void AL_APIENTRY alGetListenerfv( ALenum param, ALfloat* values ); + +AL_API void AL_APIENTRY alGetListeneri( ALenum param, ALint* value ); + +AL_API void AL_APIENTRY alGetListener3i( ALenum param, ALint *value1, ALint *value2, ALint *value3 ); + +AL_API void AL_APIENTRY alGetListeneriv( ALenum param, ALint* values ); + + +/** + * SOURCE + * Sources represent individual sound objects in 3D-space. + * Sources take the PCM data provided in the specified Buffer, + * apply Source-specific modifications, and then + * submit them to be mixed according to spatial arrangement etc. + * + * Properties include: - + * + * Gain AL_GAIN ALfloat + * Min Gain AL_MIN_GAIN ALfloat + * Max Gain AL_MAX_GAIN ALfloat + * Position AL_POSITION ALfloat[3] + * Velocity AL_VELOCITY ALfloat[3] + * Direction AL_DIRECTION ALfloat[3] + * Head Relative Mode AL_SOURCE_RELATIVE ALint (AL_TRUE or AL_FALSE) + * Reference Distance AL_REFERENCE_DISTANCE ALfloat + * Max Distance AL_MAX_DISTANCE ALfloat + * RollOff Factor AL_ROLLOFF_FACTOR ALfloat + * Inner Angle AL_CONE_INNER_ANGLE ALint or ALfloat + * Outer Angle AL_CONE_OUTER_ANGLE ALint or ALfloat + * Cone Outer Gain AL_CONE_OUTER_GAIN ALint or ALfloat + * Pitch AL_PITCH ALfloat + * Looping AL_LOOPING ALint (AL_TRUE or AL_FALSE) + * MS Offset AL_MSEC_OFFSET ALint or ALfloat + * Byte Offset AL_BYTE_OFFSET ALint or ALfloat + * Sample Offset AL_SAMPLE_OFFSET ALint or ALfloat + * Attached Buffer AL_BUFFER ALint + * State (Query only) AL_SOURCE_STATE ALint + * Buffers Queued (Query only) AL_BUFFERS_QUEUED ALint + * Buffers Processed (Query only) AL_BUFFERS_PROCESSED ALint + */ + +/* Create Source objects */ +AL_API void AL_APIENTRY alGenSources( ALsizei n, ALuint* sources ); + +/* Delete Source objects */ +AL_API void AL_APIENTRY alDeleteSources( ALsizei n, const ALuint* sources ); + +/* Verify a handle is a valid Source */ +AL_API ALboolean AL_APIENTRY alIsSource( ALuint sid ); + +/* + * Set Source parameters + */ +AL_API void AL_APIENTRY alSourcef( ALuint sid, ALenum param, ALfloat value ); + +AL_API void AL_APIENTRY alSource3f( ALuint sid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); + +AL_API void AL_APIENTRY alSourcefv( ALuint sid, ALenum param, const ALfloat* values ); + +AL_API void AL_APIENTRY alSourcei( ALuint sid, ALenum param, ALint value ); + +AL_API void AL_APIENTRY alSource3i( ALuint sid, ALenum param, ALint value1, ALint value2, ALint value3 ); + +AL_API void AL_APIENTRY alSourceiv( ALuint sid, ALenum param, const ALint* values ); + +/* + * Get Source parameters + */ +AL_API void AL_APIENTRY alGetSourcef( ALuint sid, ALenum param, ALfloat* value ); + +AL_API void AL_APIENTRY alGetSource3f( ALuint sid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3); + +AL_API void AL_APIENTRY alGetSourcefv( ALuint sid, ALenum param, ALfloat* values ); + +AL_API void AL_APIENTRY alGetSourcei( ALuint sid, ALenum param, ALint* value ); + +AL_API void AL_APIENTRY alGetSource3i( ALuint sid, ALenum param, ALint* value1, ALint* value2, ALint* value3); + +AL_API void AL_APIENTRY alGetSourceiv( ALuint sid, ALenum param, ALint* values ); + + +/* + * Source vector based playback calls + */ + +/* Play, replay, or resume (if paused) a list of Sources */ +AL_API void AL_APIENTRY alSourcePlayv( ALsizei ns, const ALuint *sids ); + +/* Stop a list of Sources */ +AL_API void AL_APIENTRY alSourceStopv( ALsizei ns, const ALuint *sids ); + +/* Rewind a list of Sources */ +AL_API void AL_APIENTRY alSourceRewindv( ALsizei ns, const ALuint *sids ); + +/* Pause a list of Sources */ +AL_API void AL_APIENTRY alSourcePausev( ALsizei ns, const ALuint *sids ); + +/* + * Source based playback calls + */ + +/* Play, replay, or resume a Source */ +AL_API void AL_APIENTRY alSourcePlay( ALuint sid ); + +/* Stop a Source */ +AL_API void AL_APIENTRY alSourceStop( ALuint sid ); + +/* Rewind a Source (set playback postiton to beginning) */ +AL_API void AL_APIENTRY alSourceRewind( ALuint sid ); + +/* Pause a Source */ +AL_API void AL_APIENTRY alSourcePause( ALuint sid ); + +/* + * Source Queuing + */ +AL_API void AL_APIENTRY alSourceQueueBuffers( ALuint sid, ALsizei numEntries, const ALuint *bids ); + +AL_API void AL_APIENTRY alSourceUnqueueBuffers( ALuint sid, ALsizei numEntries, ALuint *bids ); + + +/** + * BUFFER + * Buffer objects are storage space for sample data. + * Buffers are referred to by Sources. One Buffer can be used + * by multiple Sources. + * + * Properties include: - + * + * Frequency (Query only) AL_FREQUENCY ALint + * Size (Query only) AL_SIZE ALint + * Bits (Query only) AL_BITS ALint + * Channels (Query only) AL_CHANNELS ALint + */ + +/* Create Buffer objects */ +AL_API void AL_APIENTRY alGenBuffers( ALsizei n, ALuint* buffers ); + +/* Delete Buffer objects */ +AL_API void AL_APIENTRY alDeleteBuffers( ALsizei n, const ALuint* buffers ); + +/* Verify a handle is a valid Buffer */ +AL_API ALboolean AL_APIENTRY alIsBuffer( ALuint bid ); + +/* Specify the data to be copied into a buffer */ +AL_API void AL_APIENTRY alBufferData( ALuint bid, ALenum format, const ALvoid* data, ALsizei size, ALsizei freq ); + +/* + * Set Buffer parameters + */ +AL_API void AL_APIENTRY alBufferf( ALuint bid, ALenum param, ALfloat value ); + +AL_API void AL_APIENTRY alBuffer3f( ALuint bid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); + +AL_API void AL_APIENTRY alBufferfv( ALuint bid, ALenum param, const ALfloat* values ); + +AL_API void AL_APIENTRY alBufferi( ALuint bid, ALenum param, ALint value ); + +AL_API void AL_APIENTRY alBuffer3i( ALuint bid, ALenum param, ALint value1, ALint value2, ALint value3 ); + +AL_API void AL_APIENTRY alBufferiv( ALuint bid, ALenum param, const ALint* values ); + +/* + * Get Buffer parameters + */ +AL_API void AL_APIENTRY alGetBufferf( ALuint bid, ALenum param, ALfloat* value ); + +AL_API void AL_APIENTRY alGetBuffer3f( ALuint bid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3); + +AL_API void AL_APIENTRY alGetBufferfv( ALuint bid, ALenum param, ALfloat* values ); + +AL_API void AL_APIENTRY alGetBufferi( ALuint bid, ALenum param, ALint* value ); + +AL_API void AL_APIENTRY alGetBuffer3i( ALuint bid, ALenum param, ALint* value1, ALint* value2, ALint* value3); + +AL_API void AL_APIENTRY alGetBufferiv( ALuint bid, ALenum param, ALint* values ); + + +/* + * Global Parameters + */ +AL_API void AL_APIENTRY alDopplerFactor( ALfloat value ); + +AL_API void AL_APIENTRY alDopplerVelocity( ALfloat value ); + +AL_API void AL_APIENTRY alSpeedOfSound( ALfloat value ); + +AL_API void AL_APIENTRY alDistanceModel( ALenum distanceModel ); + +/* + * Pointer-to-function types, useful for dynamically getting AL entry points. + */ +typedef void (AL_APIENTRY *LPALENABLE)( ALenum capability ); +typedef void (AL_APIENTRY *LPALDISABLE)( ALenum capability ); +typedef ALboolean (AL_APIENTRY *LPALISENABLED)( ALenum capability ); +typedef const ALchar* (AL_APIENTRY *LPALGETSTRING)( ALenum param ); +typedef void (AL_APIENTRY *LPALGETBOOLEANV)( ALenum param, ALboolean* data ); +typedef void (AL_APIENTRY *LPALGETINTEGERV)( ALenum param, ALint* data ); +typedef void (AL_APIENTRY *LPALGETFLOATV)( ALenum param, ALfloat* data ); +typedef void (AL_APIENTRY *LPALGETDOUBLEV)( ALenum param, ALdouble* data ); +typedef ALboolean (AL_APIENTRY *LPALGETBOOLEAN)( ALenum param ); +typedef ALint (AL_APIENTRY *LPALGETINTEGER)( ALenum param ); +typedef ALfloat (AL_APIENTRY *LPALGETFLOAT)( ALenum param ); +typedef ALdouble (AL_APIENTRY *LPALGETDOUBLE)( ALenum param ); +typedef ALenum (AL_APIENTRY *LPALGETERROR)( void ); +typedef ALboolean (AL_APIENTRY *LPALISEXTENSIONPRESENT)(const ALchar* extname ); +typedef void* (AL_APIENTRY *LPALGETPROCADDRESS)( const ALchar* fname ); +typedef ALenum (AL_APIENTRY *LPALGETENUMVALUE)( const ALchar* ename ); +typedef void (AL_APIENTRY *LPALLISTENERF)( ALenum param, ALfloat value ); +typedef void (AL_APIENTRY *LPALLISTENER3F)( ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); +typedef void (AL_APIENTRY *LPALLISTENERFV)( ALenum param, const ALfloat* values ); +typedef void (AL_APIENTRY *LPALLISTENERI)( ALenum param, ALint value ); +typedef void (AL_APIENTRY *LPALLISTENER3I)( ALenum param, ALint value1, ALint value2, ALint value3 ); +typedef void (AL_APIENTRY *LPALLISTENERIV)( ALenum param, const ALint* values ); +typedef void (AL_APIENTRY *LPALGETLISTENERF)( ALenum param, ALfloat* value ); +typedef void (AL_APIENTRY *LPALGETLISTENER3F)( ALenum param, ALfloat *value1, ALfloat *value2, ALfloat *value3 ); +typedef void (AL_APIENTRY *LPALGETLISTENERFV)( ALenum param, ALfloat* values ); +typedef void (AL_APIENTRY *LPALGETLISTENERI)( ALenum param, ALint* value ); +typedef void (AL_APIENTRY *LPALGETLISTENER3I)( ALenum param, ALint *value1, ALint *value2, ALint *value3 ); +typedef void (AL_APIENTRY *LPALGETLISTENERIV)( ALenum param, ALint* values ); +typedef void (AL_APIENTRY *LPALGENSOURCES)( ALsizei n, ALuint* sources ); +typedef void (AL_APIENTRY *LPALDELETESOURCES)( ALsizei n, const ALuint* sources ); +typedef ALboolean (AL_APIENTRY *LPALISSOURCE)( ALuint sid ); +typedef void (AL_APIENTRY *LPALSOURCEF)( ALuint sid, ALenum param, ALfloat value); +typedef void (AL_APIENTRY *LPALSOURCE3F)( ALuint sid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); +typedef void (AL_APIENTRY *LPALSOURCEFV)( ALuint sid, ALenum param, const ALfloat* values ); +typedef void (AL_APIENTRY *LPALSOURCEI)( ALuint sid, ALenum param, ALint value); +typedef void (AL_APIENTRY *LPALSOURCE3I)( ALuint sid, ALenum param, ALint value1, ALint value2, ALint value3 ); +typedef void (AL_APIENTRY *LPALSOURCEIV)( ALuint sid, ALenum param, const ALint* values ); +typedef void (AL_APIENTRY *LPALGETSOURCEF)( ALuint sid, ALenum param, ALfloat* value ); +typedef void (AL_APIENTRY *LPALGETSOURCE3F)( ALuint sid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3); +typedef void (AL_APIENTRY *LPALGETSOURCEFV)( ALuint sid, ALenum param, ALfloat* values ); +typedef void (AL_APIENTRY *LPALGETSOURCEI)( ALuint sid, ALenum param, ALint* value ); +typedef void (AL_APIENTRY *LPALGETSOURCE3I)( ALuint sid, ALenum param, ALint* value1, ALint* value2, ALint* value3); +typedef void (AL_APIENTRY *LPALGETSOURCEIV)( ALuint sid, ALenum param, ALint* values ); +typedef void (AL_APIENTRY *LPALSOURCEPLAYV)( ALsizei ns, const ALuint *sids ); +typedef void (AL_APIENTRY *LPALSOURCESTOPV)( ALsizei ns, const ALuint *sids ); +typedef void (AL_APIENTRY *LPALSOURCEREWINDV)( ALsizei ns, const ALuint *sids ); +typedef void (AL_APIENTRY *LPALSOURCEPAUSEV)( ALsizei ns, const ALuint *sids ); +typedef void (AL_APIENTRY *LPALSOURCEPLAY)( ALuint sid ); +typedef void (AL_APIENTRY *LPALSOURCESTOP)( ALuint sid ); +typedef void (AL_APIENTRY *LPALSOURCEREWIND)( ALuint sid ); +typedef void (AL_APIENTRY *LPALSOURCEPAUSE)( ALuint sid ); +typedef void (AL_APIENTRY *LPALSOURCEQUEUEBUFFERS)(ALuint sid, ALsizei numEntries, const ALuint *bids ); +typedef void (AL_APIENTRY *LPALSOURCEUNQUEUEBUFFERS)(ALuint sid, ALsizei numEntries, ALuint *bids ); +typedef void (AL_APIENTRY *LPALGENBUFFERS)( ALsizei n, ALuint* buffers ); +typedef void (AL_APIENTRY *LPALDELETEBUFFERS)( ALsizei n, const ALuint* buffers ); +typedef ALboolean (AL_APIENTRY *LPALISBUFFER)( ALuint bid ); +typedef void (AL_APIENTRY *LPALBUFFERDATA)( ALuint bid, ALenum format, const ALvoid* data, ALsizei size, ALsizei freq ); +typedef void (AL_APIENTRY *LPALBUFFERF)( ALuint bid, ALenum param, ALfloat value); +typedef void (AL_APIENTRY *LPALBUFFER3F)( ALuint bid, ALenum param, ALfloat value1, ALfloat value2, ALfloat value3 ); +typedef void (AL_APIENTRY *LPALBUFFERFV)( ALuint bid, ALenum param, const ALfloat* values ); +typedef void (AL_APIENTRY *LPALBUFFERI)( ALuint bid, ALenum param, ALint value); +typedef void (AL_APIENTRY *LPALBUFFER3I)( ALuint bid, ALenum param, ALint value1, ALint value2, ALint value3 ); +typedef void (AL_APIENTRY *LPALBUFFERIV)( ALuint bid, ALenum param, const ALint* values ); +typedef void (AL_APIENTRY *LPALGETBUFFERF)( ALuint bid, ALenum param, ALfloat* value ); +typedef void (AL_APIENTRY *LPALGETBUFFER3F)( ALuint bid, ALenum param, ALfloat* value1, ALfloat* value2, ALfloat* value3); +typedef void (AL_APIENTRY *LPALGETBUFFERFV)( ALuint bid, ALenum param, ALfloat* values ); +typedef void (AL_APIENTRY *LPALGETBUFFERI)( ALuint bid, ALenum param, ALint* value ); +typedef void (AL_APIENTRY *LPALGETBUFFER3I)( ALuint bid, ALenum param, ALint* value1, ALint* value2, ALint* value3); +typedef void (AL_APIENTRY *LPALGETBUFFERIV)( ALuint bid, ALenum param, ALint* values ); +typedef void (AL_APIENTRY *LPALDOPPLERFACTOR)( ALfloat value ); +typedef void (AL_APIENTRY *LPALDOPPLERVELOCITY)( ALfloat value ); +typedef void (AL_APIENTRY *LPALSPEEDOFSOUND)( ALfloat value ); +typedef void (AL_APIENTRY *LPALDISTANCEMODEL)( ALenum distanceModel ); + +#if defined(TARGET_OS_MAC) && TARGET_OS_MAC + #pragma export off +#endif + +#if defined(__cplusplus) +} /* extern "C" */ +#endif + +#endif /* AL_AL_H */ diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/alc.h b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/alc.h new file mode 100644 index 000000000..b0bbfbe7d --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Headers/alc.h @@ -0,0 +1,281 @@ +#ifndef AL_ALC_H +#define AL_ALC_H + +#if defined(__cplusplus) +extern "C" { +#endif + +#if defined(_WIN32) && !defined(_XBOX) + /* _OPENAL32LIB is deprecated */ + #if defined(AL_BUILD_LIBRARY) || defined (_OPENAL32LIB) + #define ALC_API __declspec(dllexport) + #else + #define ALC_API __declspec(dllimport) + #endif +#else + #if defined(AL_BUILD_LIBRARY) && defined(HAVE_GCC_VISIBILITY) + #define ALC_API __attribute__((visibility("default"))) + #else + #define ALC_API extern + #endif +#endif + +#if defined(_WIN32) + #define ALC_APIENTRY __cdecl +#else + #define ALC_APIENTRY +#endif + +#if defined(TARGET_OS_MAC) && TARGET_OS_MAC + #pragma export on +#endif + +/* + * The ALCAPI, ALCAPIENTRY, and ALC_INVALID macros are deprecated, but are + * included for applications porting code from AL 1.0 + */ +#define ALCAPI ALC_API +#define ALCAPIENTRY ALC_APIENTRY +#define ALC_INVALID 0 + + +#define ALC_VERSION_0_1 1 + +typedef struct ALCdevice_struct ALCdevice; +typedef struct ALCcontext_struct ALCcontext; + + +/** 8-bit boolean */ +typedef char ALCboolean; + +/** character */ +typedef char ALCchar; + +/** signed 8-bit 2's complement integer */ +typedef char ALCbyte; + +/** unsigned 8-bit integer */ +typedef unsigned char ALCubyte; + +/** signed 16-bit 2's complement integer */ +typedef short ALCshort; + +/** unsigned 16-bit integer */ +typedef unsigned short ALCushort; + +/** signed 32-bit 2's complement integer */ +typedef int ALCint; + +/** unsigned 32-bit integer */ +typedef unsigned int ALCuint; + +/** non-negative 32-bit binary integer size */ +typedef int ALCsizei; + +/** enumerated 32-bit value */ +typedef int ALCenum; + +/** 32-bit IEEE754 floating-point */ +typedef float ALCfloat; + +/** 64-bit IEEE754 floating-point */ +typedef double ALCdouble; + +/** void type (for opaque pointers only) */ +typedef void ALCvoid; + + +/* Enumerant values begin at column 50. No tabs. */ + +/* Boolean False. */ +#define ALC_FALSE 0 + +/* Boolean True. */ +#define ALC_TRUE 1 + +/** + * followed by Hz + */ +#define ALC_FREQUENCY 0x1007 + +/** + * followed by Hz + */ +#define ALC_REFRESH 0x1008 + +/** + * followed by AL_TRUE, AL_FALSE + */ +#define ALC_SYNC 0x1009 + +/** + * followed by Num of requested Mono (3D) Sources + */ +#define ALC_MONO_SOURCES 0x1010 + +/** + * followed by Num of requested Stereo Sources + */ +#define ALC_STEREO_SOURCES 0x1011 + +/** + * errors + */ + +/** + * No error + */ +#define ALC_NO_ERROR ALC_FALSE + +/** + * No device + */ +#define ALC_INVALID_DEVICE 0xA001 + +/** + * invalid context ID + */ +#define ALC_INVALID_CONTEXT 0xA002 + +/** + * bad enum + */ +#define ALC_INVALID_ENUM 0xA003 + +/** + * bad value + */ +#define ALC_INVALID_VALUE 0xA004 + +/** + * Out of memory. + */ +#define ALC_OUT_OF_MEMORY 0xA005 + + +/** + * The Specifier string for default device + */ +#define ALC_DEFAULT_DEVICE_SPECIFIER 0x1004 +#define ALC_DEVICE_SPECIFIER 0x1005 +#define ALC_EXTENSIONS 0x1006 + +#define ALC_MAJOR_VERSION 0x1000 +#define ALC_MINOR_VERSION 0x1001 + +#define ALC_ATTRIBUTES_SIZE 0x1002 +#define ALC_ALL_ATTRIBUTES 0x1003 + +/** + * ALC_ENUMERATE_ALL_EXT enums + */ +#define ALC_DEFAULT_ALL_DEVICES_SPECIFIER 0x1012 +#define ALC_ALL_DEVICES_SPECIFIER 0x1013 + +/** + * Capture extension + */ +#define ALC_CAPTURE_DEVICE_SPECIFIER 0x310 +#define ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER 0x311 +#define ALC_CAPTURE_SAMPLES 0x312 + + +/* + * Context Management + */ +ALC_API ALCcontext * ALC_APIENTRY alcCreateContext( ALCdevice *device, const ALCint* attrlist ); + +ALC_API ALCboolean ALC_APIENTRY alcMakeContextCurrent( ALCcontext *context ); + +ALC_API void ALC_APIENTRY alcProcessContext( ALCcontext *context ); + +ALC_API void ALC_APIENTRY alcSuspendContext( ALCcontext *context ); + +ALC_API void ALC_APIENTRY alcDestroyContext( ALCcontext *context ); + +ALC_API ALCcontext * ALC_APIENTRY alcGetCurrentContext( void ); + +ALC_API ALCdevice* ALC_APIENTRY alcGetContextsDevice( ALCcontext *context ); + + +/* + * Device Management + */ +ALC_API ALCdevice * ALC_APIENTRY alcOpenDevice( const ALCchar *devicename ); + +ALC_API ALCboolean ALC_APIENTRY alcCloseDevice( ALCdevice *device ); + + +/* + * Error support. + * Obtain the most recent Context error + */ +ALC_API ALCenum ALC_APIENTRY alcGetError( ALCdevice *device ); + + +/* + * Extension support. + * Query for the presence of an extension, and obtain any appropriate + * function pointers and enum values. + */ +ALC_API ALCboolean ALC_APIENTRY alcIsExtensionPresent( ALCdevice *device, const ALCchar *extname ); + +ALC_API void * ALC_APIENTRY alcGetProcAddress( ALCdevice *device, const ALCchar *funcname ); + +ALC_API ALCenum ALC_APIENTRY alcGetEnumValue( ALCdevice *device, const ALCchar *enumname ); + + +/* + * Query functions + */ +ALC_API const ALCchar * ALC_APIENTRY alcGetString( ALCdevice *device, ALCenum param ); + +ALC_API void ALC_APIENTRY alcGetIntegerv( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *data ); + + +/* + * Capture functions + */ +ALC_API ALCdevice* ALC_APIENTRY alcCaptureOpenDevice( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize ); + +ALC_API ALCboolean ALC_APIENTRY alcCaptureCloseDevice( ALCdevice *device ); + +ALC_API void ALC_APIENTRY alcCaptureStart( ALCdevice *device ); + +ALC_API void ALC_APIENTRY alcCaptureStop( ALCdevice *device ); + +ALC_API void ALC_APIENTRY alcCaptureSamples( ALCdevice *device, ALCvoid *buffer, ALCsizei samples ); + +/* + * Pointer-to-function types, useful for dynamically getting ALC entry points. + */ +typedef ALCcontext * (ALC_APIENTRY *LPALCCREATECONTEXT) (ALCdevice *device, const ALCint *attrlist); +typedef ALCboolean (ALC_APIENTRY *LPALCMAKECONTEXTCURRENT)( ALCcontext *context ); +typedef void (ALC_APIENTRY *LPALCPROCESSCONTEXT)( ALCcontext *context ); +typedef void (ALC_APIENTRY *LPALCSUSPENDCONTEXT)( ALCcontext *context ); +typedef void (ALC_APIENTRY *LPALCDESTROYCONTEXT)( ALCcontext *context ); +typedef ALCcontext * (ALC_APIENTRY *LPALCGETCURRENTCONTEXT)( void ); +typedef ALCdevice * (ALC_APIENTRY *LPALCGETCONTEXTSDEVICE)( ALCcontext *context ); +typedef ALCdevice * (ALC_APIENTRY *LPALCOPENDEVICE)( const ALCchar *devicename ); +typedef ALCboolean (ALC_APIENTRY *LPALCCLOSEDEVICE)( ALCdevice *device ); +typedef ALCenum (ALC_APIENTRY *LPALCGETERROR)( ALCdevice *device ); +typedef ALCboolean (ALC_APIENTRY *LPALCISEXTENSIONPRESENT)( ALCdevice *device, const ALCchar *extname ); +typedef void * (ALC_APIENTRY *LPALCGETPROCADDRESS)(ALCdevice *device, const ALCchar *funcname ); +typedef ALCenum (ALC_APIENTRY *LPALCGETENUMVALUE)(ALCdevice *device, const ALCchar *enumname ); +typedef const ALCchar* (ALC_APIENTRY *LPALCGETSTRING)( ALCdevice *device, ALCenum param ); +typedef void (ALC_APIENTRY *LPALCGETINTEGERV)( ALCdevice *device, ALCenum param, ALCsizei size, ALCint *dest ); +typedef ALCdevice * (ALC_APIENTRY *LPALCCAPTUREOPENDEVICE)( const ALCchar *devicename, ALCuint frequency, ALCenum format, ALCsizei buffersize ); +typedef ALCboolean (ALC_APIENTRY *LPALCCAPTURECLOSEDEVICE)( ALCdevice *device ); +typedef void (ALC_APIENTRY *LPALCCAPTURESTART)( ALCdevice *device ); +typedef void (ALC_APIENTRY *LPALCCAPTURESTOP)( ALCdevice *device ); +typedef void (ALC_APIENTRY *LPALCCAPTURESAMPLES)( ALCdevice *device, ALCvoid *buffer, ALCsizei samples ); + +#if defined(TARGET_OS_MAC) && TARGET_OS_MAC + #pragma export off +#endif + +#if defined(__cplusplus) +} +#endif + +#endif /* AL_ALC_H */ diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/A/OpenAL b/extlibs/libs-xcode/OpenAL.framework/Versions/A/OpenAL new file mode 100755 index 000000000..4e0daa26d Binary files /dev/null and b/extlibs/libs-xcode/OpenAL.framework/Versions/A/OpenAL differ diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/A/Resources/Info.plist b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Resources/Info.plist new file mode 100644 index 000000000..8e95c9d47 --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + OpenAL + CFBundleIdentifier + com.apple.audio.OpenAL + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + OpenAL + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.2 + CFBundleSignature + ???? + CFBundleVersion + 1.2 + CSResourcesFileMapped + + + diff --git a/extlibs/libs-xcode/OpenAL.framework/Versions/Current b/extlibs/libs-xcode/OpenAL.framework/Versions/Current new file mode 120000 index 000000000..8c7e5a667 --- /dev/null +++ b/extlibs/libs-xcode/OpenAL.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/python/src/RenderWindow.cpp b/python/src/RenderWindow.cpp index 598efd877..ad35f934e 100644 --- a/python/src/RenderWindow.cpp +++ b/python/src/RenderWindow.cpp @@ -244,11 +244,13 @@ PyTypeObject PySfRenderWindowType = { Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/ "Simple wrapper for sf.Window that allows easy 2D rendering.\n\ Default constructor : sf.RenderWindow()\n\ -Other constructor : sf.RenderWindow(Mode, Title, Style::Resize|Style::Close, Params = WindowSettings())\n\ -Parameters:\n\ +Construct a new window : sf.RenderWindow(Mode, Title, Style::Resize|Style::Close, Params = WindowSettings())\n\ Mode : Video mode to use\n\ Title : Title of the window\n\ WindowStyle : Window style (Resize | Close by default)\n\ + Params : Creation parameters (see default constructor for default values)\n\ +Construct the window from an existing control : sf.RenderWindow(Handle, Params)\n\ + Handle : handle of the control (long integer)\n\ Params : Creation parameters (see default constructor for default values)", /* tp_doc */ 0, /* tp_traverse */ 0, /* tp_clear */ diff --git a/python/src/Window.cpp b/python/src/Window.cpp index 481eaf42b..bed8e7026 100644 --- a/python/src/Window.cpp +++ b/python/src/Window.cpp @@ -48,11 +48,29 @@ PySfWindow_dealloc(PySfWindow* self) static PyObject * PySfWindow_new(PyTypeObject *type, PyObject *args, PyObject *kwds) -{ +{ + long Handle; + PySfWindowSettings *Params=NULL; PySfWindow *self; self = (PySfWindow *)type->tp_alloc(type, 0); - if (self != NULL) - self->obj = new sf::Window(); + if (self != NULL) + { + if (PyArg_ParseTuple(args, "l|O!:Window.__new__", &Handle, &PySfWindowSettingsType, &Params)) + { + if (Params) + { + PySfWindowSettingsUpdate(Params); + self->obj = new sf::Window((sf::WindowHandle)Handle, *(Params->obj)); + } + else + self->obj = new sf::Window((sf::WindowHandle)Handle); + } + else + { + PyErr_Clear(); + self->obj = new sf::Window(); + } + } return (PyObject *)self; } @@ -99,7 +117,6 @@ PySfWindow_GetEvent(PySfWindow *self, PyObject *args) } - PyObject* PySfWindow_Create(PySfWindow* self, PyObject *args, PyObject *kwds) { @@ -109,7 +126,7 @@ PySfWindow_Create(PySfWindow* self, PyObject *args, PyObject *kwds) unsigned long WindowStyle = sf::Style::Resize | sf::Style::Close; PySfWindowSettings *Params=NULL; - const char *kwlist[] = {"VideoMode", "Title", "WindowStyle", "Params", NULL}; + const char *kwlist[] = {"VideoMode", "Title", "WindowStyle", "Params", NULL}; if (!PyArg_ParseTupleAndKeywords(args, kwds, "O!s|IO!:Window.Create", (char **)kwlist, &PySfVideoModeType, &VideoModeTmp, &Title, &WindowStyle, &PySfWindowSettingsType, &Params)) return NULL; @@ -131,9 +148,17 @@ PySfWindow_Create(PySfWindow* self, PyObject *args, PyObject *kwds) static int PySfWindow_init(PySfWindow *self, PyObject *args, PyObject *kwds) { - if (args != NULL) + long Handle; + PySfWindowSettings *Params; + + if (args != NULL) + { + if (PyArg_ParseTuple(args, "l|O!:Window.__new__", &Handle, &PySfWindowSettingsType, &Params)) + return 0; + PyErr_Clear(); if (PySfWindow_Create(self, args, kwds) == NULL) - return -1; + return -1; + } return 0; } @@ -344,7 +369,9 @@ Construct a new window : sf.Window(Mode, Title, sf.Style.Resize | sf.Style.Close Title : Title of the window\n\ WindowStyle : Window style (Resize | Close by default)\n\ Params : Creation parameters (see default constructor for default values)\n\ -", /* tp_doc */ +Construct the window from an existing control : sf.Window(Handle, Params)\n\ + Handle : Platform-specific handle of the control\n\ + Params : Creation parameters (see default constructor for default values)", /* tp_doc */ 0, /* tp_traverse */ 0, /* tp_clear */ 0, /* tp_richcompare */ diff --git a/samples/build/vc2005/opengl.vcproj b/samples/build/vc2005/opengl.vcproj index b9660a7fa..fec3590c2 100644 --- a/samples/build/vc2005/opengl.vcproj +++ b/samples/build/vc2005/opengl.vcproj @@ -147,7 +147,7 @@ AdditionalLibraryDirectories="" GenerateDebugInformation="true" ProgramDatabaseFile="$(IntDir)$(TargetName).pdb" - SubSystem="2" + SubSystem="1" OptimizeReferences="2" EnableCOMDATFolding="2" TargetMachine="1" diff --git a/samples/qt/QSFMLCanvas.cpp b/samples/qt/QSFMLCanvas.cpp index 3baa04666..f4302ee2c 100644 --- a/samples/qt/QSFMLCanvas.cpp +++ b/samples/qt/QSFMLCanvas.cpp @@ -20,6 +20,7 @@ myInitialized (false) { // Setup some states to allow direct rendering into the widget setAttribute(Qt::WA_PaintOnScreen); + setAttribute(Qt::WA_OpaquePaintEvent); setAttribute(Qt::WA_NoSystemBackground); // Set strong focus to enable keyboard events to be received @@ -63,6 +64,15 @@ void QSFMLCanvas::OnUpdate() } +//////////////////////////////////////////////////////////// +/// Return the paint engine used by the widget to draw itself +//////////////////////////////////////////////////////////// +QPaintEngine* QSFMLCanvas::paintEngine() const +{ + return 0; +} + + //////////////////////////////////////////////////////////// /// Called when the widget is shown ; /// we use it to initialize our SFML window diff --git a/samples/qt/QSFMLCanvas.hpp b/samples/qt/QSFMLCanvas.hpp index a129e014b..e02f02636 100644 --- a/samples/qt/QSFMLCanvas.hpp +++ b/samples/qt/QSFMLCanvas.hpp @@ -50,6 +50,12 @@ private : //////////////////////////////////////////////////////////// virtual void OnUpdate(); + //////////////////////////////////////////////////////////// + /// Return the paint engine used by the widget to draw itself + /// + //////////////////////////////////////////////////////////// + virtual QPaintEngine* paintEngine() const; + //////////////////////////////////////////////////////////// /// Called when the widget is shown ; /// we use it to initialize our SFML window diff --git a/samples/sockets/Sockets.cpp b/samples/sockets/Sockets.cpp index 076021907..8c8d5c851 100644 --- a/samples/sockets/Sockets.cpp +++ b/samples/sockets/Sockets.cpp @@ -3,6 +3,7 @@ // Headers //////////////////////////////////////////////////////////// #include +#include //////////////////////////////////////////////////////////// diff --git a/samples/voip/VoIP.cpp b/samples/voip/VoIP.cpp index 09360b67e..125bd8a52 100644 --- a/samples/voip/VoIP.cpp +++ b/samples/voip/VoIP.cpp @@ -3,7 +3,8 @@ // Headers //////////////////////////////////////////////////////////// #include -#include +#include +#include //////////////////////////////////////////////////////////// diff --git a/src/SFML/Graphics/Sprite.cpp b/src/SFML/Graphics/Sprite.cpp index 5dfe3a8e3..b5a52a8c5 100644 --- a/src/SFML/Graphics/Sprite.cpp +++ b/src/SFML/Graphics/Sprite.cpp @@ -49,12 +49,11 @@ myIsFlippedY(false) //////////////////////////////////////////////////////////// Sprite::Sprite(const Image& Img, const Vector2f& Position, const Vector2f& Scale, float Rotation, const Color& Col) : Drawable (Position, Scale, Rotation, Col), -myImage (&Img), -mySubRect (0, 0, Img.GetWidth(), Img.GetHeight()), +mySubRect (0, 0, 1, 1), myIsFlippedX(false), myIsFlippedY(false) { - + SetImage(Img); } @@ -63,9 +62,11 @@ myIsFlippedY(false) //////////////////////////////////////////////////////////// void Sprite::SetImage(const Image& Img) { - // If there was no source image before, adjust the rectangle - if (!myImage) + // If there was no source image before and the new image is valid, adjust the source rectangle + if (!myImage && (Img.GetWidth() > 0) && (Img.GetHeight() > 0)) + { SetSubRect(IntRect(0, 0, Img.GetWidth(), Img.GetHeight())); + } // Assign the new image myImage = &Img; @@ -87,10 +88,11 @@ void Sprite::SetSubRect(const IntRect& SubRect) //////////////////////////////////////////////////////////// void Sprite::Resize(float Width, float Height) { - if ((mySubRect.GetWidth() > 0) && (mySubRect.GetHeight() > 0)) - { - SetScale(Width / mySubRect.GetWidth(), Height / mySubRect.GetHeight()); - } + int LocalWidth = mySubRect.GetWidth(); + int LocalHeight = mySubRect.GetHeight(); + + if ((LocalWidth > 0) && (LocalHeight > 0)) + SetScale(Width / LocalWidth, Height / LocalHeight); } @@ -182,9 +184,9 @@ void Sprite::Render(RenderTarget&) const float Height = static_cast(mySubRect.GetHeight()); // Check if the image is valid - if (myImage) + if (myImage && (myImage->GetWidth() > 0) && (myImage->GetHeight() > 0)) { - // Set the texture + // Bind the texture myImage->Bind(); // Calculate the texture coordinates diff --git a/src/SFML/Network/IPAddress.cpp b/src/SFML/Network/IPAddress.cpp index 929cf07ba..9d51f240a 100644 --- a/src/SFML/Network/IPAddress.cpp +++ b/src/SFML/Network/IPAddress.cpp @@ -205,31 +205,17 @@ IPAddress IPAddress::GetPublicAddress(float Timeout) { // The trick here is more complicated, because the only way // to get our public IP address is to get it from a distant computer. - // Here we get the web page from http://www.whatismyip.org + // Here we get the web page from http://www.sfml-dev.org/ip-provider.php // and parse the result to extract our IP address // (not very hard : the web page contains only our IP address). - // If the server is not responding, we use a fallback server which - // is stored on the SFML website. - // First try: www.whatismyip.org - { - Http Server("www.whatismyip.org"); - Http::Request Request(Http::Request::Get, "/"); - Http::Response Page = Server.SendRequest(Request, Timeout / 2); - if (Page.GetStatus() == Http::Response::Ok) - return IPAddress(Page.GetBody()); - } + Http Server("www.sfml-dev.org"); + Http::Request Request(Http::Request::Get, "/ip-provider.php"); + Http::Response Page = Server.SendRequest(Request, Timeout); + if (Page.GetStatus() == Http::Response::Ok) + return IPAddress(Page.GetBody()); - // Fallback: www.sfml-dev.org/ip-provider.php - { - Http Server("www.sfml-dev.org"); - Http::Request Request(Http::Request::Get, "/ip-provider.php"); - Http::Response Page = Server.SendRequest(Request, Timeout / 2); - if (Page.GetStatus() == Http::Response::Ok) - return IPAddress(Page.GetBody()); - } - - // Everything failed: return an invalid address + // Something failed: return an invalid address return IPAddress(); }