Compare commits

..
Author SHA1 Message Date
Ross Bencina
66bda13f84 Ports Portaudio WMME device timeout system to MacOsX CoreAudio in order to
avoid deadlock when a device is unplugged.
Vincent Lucas committed on Jan 10, 2013
2a20693 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:53:30 +10:00
Ross Bencina
ab8b64023c Commits the C source code of a refining of the automatic audio device
selection to pick up devices from the same hardware.
lyubomir committed on Dec 19, 2012
6441b56 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:51:44 +10:00
Ross Bencina
c534056a7b Fixes freezes in Pa_ReadStream, Pa_StopStream and Pa_WriteStream and
incorrect causes of paInvalidChannelCount errors in PortAudio on
Windows/WMME. Mitigates an issue with hightened CPU usage (on all
supported operating systems) related to hotplug.
lyubomir committed on Dec 4, 2012
a45b993 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:49:43 +10:00
Ross Bencina
6c6269425f - Fixes multiple crashes in PortAudio.
- Removes the DirectSound support from PortAudio in order to prevent
  issues with bad audio quality.
  - Attempts to recognize USB PortAudio devices on Windows as such,
    ignores the virtual Microsoft Sound Mapper devices to avoid user
    confusion. Contributed by Vincent Lucas.
    lyubomir committed on Nov 15, 2012
    a93910c from
    https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:46:54 +10:00
Ross Bencina
15d77417bf Adds hotplug to portaudio wmme host api, also fixes a NPE that can prevent
device change updates.
damencho committed on Nov 6, 2012
5ca6fed from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:44:31 +10:00
Ross Bencina
0a7b80cfce Adds device uid for wmme and dsound devices.
damencho committed on Nov 3, 2012
7e70e94 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:36:13 +10:00
Ross Bencina
e7a274942b Improves device selection via portaudio for MacOSX (hostapi coreaudio):
adds the possibility to get the device transport type (USB, bluetooth,
etc.) and an unique identifier. Corrects problems when: loading the same
device twice (for the moment only for the same hostapi), a new plugged
device is selected during a call or if the selected device is unchanged.
Vincent Lucas committed on Oct 29, 2012
26848f0 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:34:22 +10:00
Ross Bencina
b77a1f828c Adds portaudio sources [adds hotplug support for pa_linux_alsa,
pa_mac_core, plus some other tweaks]
damencho committed on Mar 29, 2012
d2076b1 from https://github.com/jitsi/libsrc/commits/master/portaudio.zip
2016-09-03 22:29:58 +10:00
Ross Bencina
d13fcd8ea9 Roll-up of SVN hotplug branch at most recent revision (r1677), based at the same point in the master revision history as it was originally applied. 2016-09-03 22:22:52 +10:00
355 changed files with 62925 additions and 189543 deletions

View file

@ -1,13 +0,0 @@
# EditorConfig info: https://editorconfig.org/
root = true
[Makefile*]
indent_style = tab
[*.{c,cpp,h,cxx,hxx}]
indent_style = space
indent_size = 4
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 120

43
.gitattributes vendored
View file

@ -1,43 +0,0 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto
# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
*.c text
*.h text
*.cpp text
*.hpp text
*.fth text
*.java text
*.f text
*.txt text
*.dox text
*.m text
# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
*.def text eol=crlf
*.dsp text eol=crlf
*.dsw text eol=crlf
*.vcproj text eol=crlf
*.sln text eol=crlf
*.doc text eol=crlf
*.bat text eol=crlf
# Denote all files that are truly binary and should not be modified.
*.dic binary
*.odt binary
*.pdf binary
*.png binary
*.jpg binary
*.wav binary
*.la binary
config.guess binary
config.status binary
config.sub binary
configure binary
depcomp binary
install-sh binary
libtool binary
missing binary

View file

@ -1,34 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
(Please use the mailing list for support requests and general discussion. This is only for actual bugs.)
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior. Include code if applicable.
1.
**Expected behavior**
A clear and concise description of what you expected to happen.
**Actual behavior**
What actually happened.
Include a recording if helpful.
Error messages or logs longer than a page should be attached as a .txt file.
**Desktop (please complete the following information):**
- OS: [e.g. Mac OS]
- OS Version [e.g. 22]
- PortAudio version: stable, nightly snapshot (which?), current (please give date and/or Git hash):
- If Windows or Linux, which Host API (e.g. WASAPI):
**Additional context**
Add any other context about the problem here.

View file

@ -1,96 +0,0 @@
name: MSBuild MSVC Project File CI
on: [push, pull_request]
env:
# Path to the solution file relative to the root of the project.
SOLUTION_FILE_PATH: ./build/msvc/portaudio.sln
VCPROJ_FILE_PATH: ./build/msvc/portaudio.vcproj
VCXPROJ_FILE_PATH: ./build/msvc/portaudio.vcxproj
VCXPROJ_FILTERS_FILE_PATH: ./build/msvc/portaudio.vcxproj.filters
VCXPROJ_USER_FILE_PATH: ./build/msvc/portaudio.vcxproj.user
DEF_FILE_PATH: ./build/msvc/portaudio.def
jobs:
build:
runs-on: windows-latest
strategy:
matrix:
BUILD_CONFIGURATION: [Release]
BUILD_PLATFORM: [Win32, x64]
steps:
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v1
- uses: actions/checkout@v2
- name: Upgrade VC Project File
# We maintain our vcproj file in an old format to maintain backwards compatibility
# This step upgrades the project to the latest version of MSVC
# see https://docs.microsoft.com/en-us/visualstudio/ide/reference/upgrade-devenv-exe?view=vs-2019
# pipe to file to ensure that it terminates https://stackoverflow.com/questions/48896010/occasionally-occurring-msbuild-error-msb3428/48918105#48918105
# discussion of using vswhere.exe here: https://stackoverflow.com/questions/65287456/how-to-upgrade-a-visual-studio-project-from-within-a-github-action/65311868#65311868
run: |
$devenv = & vswhere.exe '-property' productPath
Write-Output "$devenv"
& $devenv "${{env.VCPROJ_FILE_PATH}}" /Upgrade /NoSplash | Out-Null
Write-Output "devenv launched"
while (!(Test-Path "${{env.VCXPROJ_FILE_PATH}}")) { Start-Sleep -Seconds 10 }
Write-Output "vcxproj found"
while (!(Test-Path "${{env.VCXPROJ_FILTERS_FILE_PATH}}")) { Start-Sleep -Seconds 10 }
Write-Output "vcxproj.filters found"
Start-Sleep -Seconds 10
Write-Output "done."
- name: Remove ASIO Files and Enable PA_USE_DS=1
# Process the project files to remove ASIO-related sources and includes (since we can not access the ASIO SDK in a public build)
run: |
# Process .vcxproj file: remove source files
$xdoc = new-object System.Xml.XmlDocument
$vcxprojFile = resolve-path("${{env.VCXPROJ_FILE_PATH}}")
$xdoc.load($vcxprojFile)
$namespace = New-Object -TypeName "Xml.XmlNamespaceManager" -ArgumentList $xdoc.NameTable
$namespace.AddNamespace("vs", $xdoc.DocumentElement.NamespaceURI)
$nodes = $xdoc.SelectNodes("//vs:ClCompile[contains(@Include, '..\src\hostapi\asio')]", $namespace)
Write-Output "deleting ASIO related compilation nodes from .vcxproj:"
Write-Output $nodes
ForEach($node in $nodes) {
$parent = $node.ParentNode
$parent.RemoveChild($node)
}
# Enable DirectSound host API
$nodes = $xdoc.SelectNodes("//vs:PreprocessorDefinitions[contains(., 'PA_USE_DS=0')]", $namespace)
ForEach($node in $nodes) {
$text = $node.InnerText
$node.InnerText = $text -replace 'PA_USE_DS=0', 'PA_USE_DS=1'
}
$xdoc.save($vcxprojFile)
# Process .vcxproj.filters file: remove source files and includes
$vcxprojFiltersFile = resolve-path("${{env.VCXPROJ_FILTERS_FILE_PATH}}")
$xdoc.load($vcxprojFiltersFile)
$namespace = New-Object -TypeName "Xml.XmlNamespaceManager" -ArgumentList $xdoc.NameTable
$namespace.AddNamespace("vs", $xdoc.DocumentElement.NamespaceURI)
$nodes = $xdoc.SelectNodes("//vs:ClCompile[contains(@Include, '..\src\hostapi\asio')]", $namespace)
Write-Output "deleting ASIO related compilation nodes from .vcxproj.filters:"
Write-Output $nodes
ForEach($node in $nodes) {
$parent = $node.ParentNode
$parent.RemoveChild($node)
}
$nodes = $xdoc.SelectNodes("//vs:ClInclude[contains(@Include, 'pa_asio.h')]", $namespace)
Write-Output "deleting ASIO related include nodes from .vcxproj.filters:"
Write-Output $nodes
ForEach($node in $nodes) {
$parent = $node.ParentNode
$parent.RemoveChild($node)
}
$xdoc.save($vcxprojFiltersFile)
# Process .def file: remove PaAsio_ symbols
Set-Content -Path "${{env.DEF_FILE_PATH}}" -Value (Get-Content -Path "${{env.DEF_FILE_PATH}}" | Select-String -Pattern 'PaAsio_' -NotMatch)
- name: Build
working-directory: ${{env.GITHUB_WORKSPACE}}
# Add additional options to the MSBuild command line here (like platform or verbosity level).
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
run: msbuild /m /p:Configuration=${{matrix.BUILD_CONFIGURATION}} /p:Platform=${{matrix.BUILD_PLATFORM}} ${{env.VCXPROJ_FILE_PATH}}

View file

@ -1,20 +0,0 @@
name: autotools build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build-autotools:
runs-on: ubuntu-latest
name: Ubuntu
steps:
- uses: actions/checkout@v2
- name: configure
run: ./configure
- name: make
run: make

View file

@ -1,56 +0,0 @@
name: CMake build
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- name: Ubuntu
os: ubuntu-latest
install_dir: ~/portaudio
- name: Ubuntu mingw64
os: ubuntu-latest
install_dir: ~/portaudio
dependencies_extras: mingw-w64
cmake_extras: -DCMAKE_TOOLCHAIN_FILE=i686-w64-mingw32.cmake
- name: Windows
os: windows-latest
install_dir: C:\portaudio
- name: macOS
os: macOS-latest
install_dir: ~/portaudio
runs-on: ${{ matrix.os }}
name: ${{ matrix.name }}
env:
cmake_build_type: RelWithDebInfo
steps:
- name: checkout Git repository
uses: actions/checkout@v2
- name: "[Ubuntu] install dependencies"
run: sudo apt-get install libasound2-dev libjack-dev ${{ matrix.dependencies_extras }}
if: matrix.os == 'ubuntu-latest'
- name: configure
run: cmake ${{ matrix.cmake_extras }}
-DCMAKE_INSTALL_PREFIX=${{ matrix.install_dir }}
-DCMAKE_BUILD_TYPE=${{ env.cmake_build_type }}
-DPA_BUILD_TESTS=ON
-DPA_BUILD_EXAMPLES=ON
-S .
-B build
- name: build
run: cmake --build build --config ${{ env.cmake_build_type }} --parallel 2
- name: install
run: cmake --install build --config ${{ env.cmake_build_type }}
- name: "Upload GitHub Actions artifacts"
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.name }} PortAudio build
path: ${{ matrix.install_dir }}

52
.gitignore vendored
View file

@ -1,52 +0,0 @@
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# annoying files
**/.DS_Store
# Generated by configure and make
Makefile
bin-stamp
bin/*
config.log
config.status
lib-stamp
lib/*
libtool
portaudio-2.0.pc
autom4te.cache/*
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
# Visual Studio 2017/2019 state folder
.vs/
# Visual Studio CMake build output folder
out/
# Visual Studio CMake settings file
CMakeSettings.json

View file

@ -1,499 +0,0 @@
# $Id: $
#
# For a "How-To" please refer to the Portaudio documentation at:
# http://www.portaudio.com/trac/wiki/TutorialDir/Compile/CMake
#
CMAKE_MINIMUM_REQUIRED(VERSION 3.0.0)
# Check if the user is building PortAudio stand-alone or as part of a larger
# project. If this is part of a larger project (i.e. the CMakeLists.txt has
# been imported by some other CMakeLists.txt), we don't want to trump over
# the top of that project's global settings.
IF(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_LIST_DIR})
PROJECT(portaudio)
# CMAKE_CONFIGURATION_TYPES only exists for multi-config generators (like
# Visual Studio or Xcode). For these projects, we won't define
# CMAKE_BUILD_TYPE as it does not make sense.
IF(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
MESSAGE(STATUS "Setting CMAKE_BUILD_TYPE type to 'Debug' as none was specified.")
SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Choose the type of build." FORCE)
SET_PROPERTY(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release")
ENDIF()
SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
IF(WIN32 AND MSVC)
OPTION(PA_DLL_LINK_WITH_STATIC_RUNTIME "Link with static runtime libraries (minimizes runtime dependencies)" ON)
IF(PA_DLL_LINK_WITH_STATIC_RUNTIME)
FOREACH(flag_var
CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO
CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE
CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO)
IF(${flag_var} MATCHES "/MD")
STRING(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}")
ENDIF()
ENDFOREACH()
ENDIF()
ENDIF()
ENDIF()
SET(PA_VERSION 19)
SET(PA_PKGCONFIG_VERSION ${PA_VERSION})
SET(PA_SOVERSION "${PA_VERSION}.0")
# Most of the code from this point onwards is related to populating the
# following variables:
# PA_PUBLIC_INCLUDES - This contains the list of public PortAudio header
# files. These files will be copied into /include paths on Unix'y
# systems when "make install" is invoked.
# PA_PRIVATE_INCLUDES - This contains the list of header files which
# are not part of PortAudio, but are required by the various hostapis.
# It is only used by CMake IDE generators (like Visual Studio) to
# provide quick-links to useful headers. It has no impact on build
# output.
# PA_PRIVATE_INCLUDE_PATHS - This contains the list of include paths which
# will be passed to the compiler while PortAudio is being built which
# are not required by applications using the PortAudio API.
# PA_PRIVATE_COMPILE_DEFINITIONS - This contains a list of preprocessor
# macro definitions which will be set when compiling PortAudio source
# files.
# PA_SOURCES - This contains the list of source files which will be built
# into the static and shared PortAudio libraries.
# PA_NON_UNICODE_SOURCES - This also contains a list of source files which
# will be build into the static and shared PortAudio libraries. However,
# these sources will not have any unicode compiler definitions added
# to them. This list should only contain external source dependencies.
# PA_EXTRA_SHARED_SOURCES - Contains a list of extra files which will be
# associated only with the shared PortAudio library. This only seems
# relevant for Windows shared libraries which require a list of export
# symbols.
# Where other PA_* variables are set, these are almost always only used to
# preserve the historic SOURCE_GROUP behavior (which again only has an impact
# on IDE-style generators for visual appearance) or store the output of
# find_library() calls.
SET(PA_COMMON_INCLUDES
src/common/pa_allocation.h
src/common/pa_converters.h
src/common/pa_cpuload.h
src/common/pa_debugprint.h
src/common/pa_dither.h
src/common/pa_endianness.h
src/common/pa_hostapi.h
src/common/pa_memorybarrier.h
src/common/pa_process.h
src/common/pa_ringbuffer.h
src/common/pa_stream.h
src/common/pa_trace.h
src/common/pa_types.h
src/common/pa_util.h
)
SET(PA_COMMON_SOURCES
src/common/pa_allocation.c
src/common/pa_converters.c
src/common/pa_cpuload.c
src/common/pa_debugprint.c
src/common/pa_dither.c
src/common/pa_front.c
src/common/pa_process.c
src/common/pa_ringbuffer.c
src/common/pa_stream.c
src/common/pa_trace.c
)
SOURCE_GROUP("common" FILES ${PA_COMMON_INCLUDES} ${PA_COMMON_SOURCES})
SET(PA_PUBLIC_INCLUDES include/portaudio.h)
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake_support)
SET(PA_SKELETON_SOURCES src/hostapi/skeleton/pa_hostapi_skeleton.c)
SOURCE_GROUP("hostapi\\skeleton" ${PA_SKELETON_SOURCES})
SET(PA_SOURCES ${PA_COMMON_SOURCES} ${PA_SKELETON_SOURCES})
SET(PA_PRIVATE_INCLUDE_PATHS src/common ${CMAKE_CURRENT_BINARY_DIR})
IF(WIN32)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} _CRT_SECURE_NO_WARNINGS)
SET(PA_PLATFORM_SOURCES
src/os/win/pa_win_hostapis.c
src/os/win/pa_win_util.c
src/os/win/pa_win_waveformat.c
src/os/win/pa_win_wdmks_utils.c
src/os/win/pa_win_coinitialize.c)
SET(PA_PLATFORM_INCLUDES
src/os/win/pa_win_util.h
src/os/win/pa_win_coinitialize.h
src/os/win/pa_win_wdmks_utils.h)
IF(MSVC)
SET(PA_PLATFORM_SOURCES ${PA_PLATFORM_SOURCES} src/os/win/pa_x86_plain_converters.c)
SET(PA_PLATFORM_INCLUDES ${PA_PLATFORM_INCLUDES} src/os/win/pa_x86_plain_converters.h)
ELSE()
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} _WIN32_WINNT=0x0501 WINVER=0x0501)
SET(DEF_EXCLUDE_X86_PLAIN_CONVERTERS ";")
ENDIF()
SOURCE_GROUP("os\\win" FILES ${PA_PLATFORM_SOURCES} ${PA_PLATFORM_INCLUDES})
SET(PA_SOURCES ${PA_SOURCES} ${PA_PLATFORM_SOURCES})
SET(PA_PRIVATE_INCLUDES ${PA_PRIVATE_INCLUDES} ${PA_PLATFORM_INCLUDES})
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} src/os/win)
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} winmm)
# Try to find ASIO SDK (assumes that portaudio and asiosdk folders are side-by-side, see
# http://www.portaudio.com/trac/wiki/TutorialDir/Compile/WindowsASIOMSVC)
FIND_PACKAGE(ASIOSDK)
IF(ASIOSDK_FOUND)
OPTION(PA_USE_ASIO "Enable support for ASIO" ON)
ELSE()
OPTION(PA_USE_ASIO "Enable support for ASIO" OFF)
ENDIF()
IF(PA_USE_ASIO)
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} ${ASIOSDK_ROOT_DIR}/common)
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} ${ASIOSDK_ROOT_DIR}/host)
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} ${ASIOSDK_ROOT_DIR}/host/pc)
SET(PA_ASIO_SOURCES src/hostapi/asio/pa_asio.cpp src/hostapi/asio/iasiothiscallresolver.cpp)
SET(PA_ASIOSDK_SOURCES ${ASIOSDK_ROOT_DIR}/common/asio.cpp ${ASIOSDK_ROOT_DIR}/host/pc/asiolist.cpp ${ASIOSDK_ROOT_DIR}/host/asiodrivers.cpp)
SOURCE_GROUP("hostapi\\ASIO" FILES ${PA_ASIO_SOURCES})
SOURCE_GROUP("hostapi\\ASIO\\ASIOSDK" FILES ${PA_ASIOSDK_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_asio.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_ASIO_SOURCES})
SET(PA_NON_UNICODE_SOURCES ${PA_NON_UNICODE_SOURCES} ${PA_ASIOSDK_SOURCES})
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ole32 uuid)
ELSE()
# Set variables for DEF file expansion
SET(DEF_EXCLUDE_ASIO_SYMBOLS ";")
ENDIF()
OPTION(PA_USE_DS "Enable support for DirectSound" ON)
IF(PA_USE_DS)
IF(MINGW)
MESSAGE(STATUS "DirectSound support will be built with DSound provided by MinGW.")
OPTION(PA_USE_DIRECTSOUNDFULLDUPLEXCREATE "Use DirectSound full duplex create" OFF)
ELSE(MINGW)
OPTION(PA_USE_DIRECTSOUNDFULLDUPLEXCREATE "Use DirectSound full duplex create" ON)
ENDIF(MINGW)
MARK_AS_ADVANCED(PA_USE_DIRECTSOUNDFULLDUPLEXCREATE)
IF(PA_USE_DIRECTSOUNDFULLDUPLEXCREATE)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PAWIN_USE_DIRECTSOUNDFULLDUPLEXCREATE)
ENDIF()
SET(PA_DS_INCLUDES src/hostapi/dsound/pa_win_ds_dynlink.h)
SET(PA_DS_SOURCES src/hostapi/dsound/pa_win_ds.c src/hostapi/dsound/pa_win_ds_dynlink.c)
SOURCE_GROUP("hostapi\\dsound" FILES ${PA_DS_INCLUDES} ${PA_DS_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_ds.h include/pa_win_waveformat.h)
SET(PA_PRIVATE_INCLUDES ${PA_PRIVATE_INCLUDES} ${PA_DS_INCLUDES})
SET(PA_SOURCES ${PA_SOURCES} ${PA_DS_SOURCES})
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} dsound)
ENDIF(PA_USE_DS)
OPTION(PA_USE_WMME "Enable support for MME" ON)
IF(PA_USE_WMME)
SET(PA_WMME_SOURCES src/hostapi/wmme/pa_win_wmme.c)
SOURCE_GROUP("hostapi\\wmme" FILES ${PA_WMME_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_wmme.h include/pa_win_waveformat.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_WMME_SOURCES})
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ole32 uuid)
ENDIF()
# MinGW versions below 4.93, especially non MinGW-w64 distributions may
# break in the wasapi build. If an older MinGW version is required, WASAPI-
# support needs to be disabled.
OPTION(PA_USE_WASAPI "Enable support for WASAPI" ON)
IF(PA_USE_WASAPI)
SET(PA_WASAPI_SOURCES src/hostapi/wasapi/pa_win_wasapi.c)
SOURCE_GROUP("hostapi\\wasapi" FILES ${PA_WASAPI_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_wasapi.h include/pa_win_waveformat.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_WASAPI_SOURCES})
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ole32 uuid)
ELSE()
SET(DEF_EXCLUDE_WASAPI_SYMBOLS ";")
ENDIF()
OPTION(PA_USE_WDMKS "Enable support for WDMKS" ON)
IF(PA_USE_WDMKS)
SET(PA_WDMKS_SOURCES src/hostapi/wdmks/pa_win_wdmks.c)
SOURCE_GROUP("hostapi\\wdmks" FILES ${PA_WDMKS_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_win_wdmks.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_WDMKS_SOURCES})
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} setupapi ole32 uuid)
ENDIF()
OPTION(PA_USE_WDMKS_DEVICE_INFO "Use WDM/KS API for device info" ON)
MARK_AS_ADVANCED(PA_USE_WDMKS_DEVICE_INFO)
IF(PA_USE_WDMKS_DEVICE_INFO)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PAWIN_USE_WDMKS_DEVICE_INFO)
ENDIF()
SET(GENERATED_MESSAGE "CMake generated file, do NOT edit! Use CMake-GUI to change configuration instead.")
CONFIGURE_FILE(cmake_support/template_portaudio.def ${CMAKE_CURRENT_BINARY_DIR}/portaudio_cmake.def @ONLY)
CONFIGURE_FILE(cmake_support/options_cmake.h.in ${CMAKE_CURRENT_BINARY_DIR}/options_cmake.h @ONLY)
SET(PA_PRIVATE_INCLUDES ${PA_PRIVATE_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR}/options_cmake.h)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PORTAUDIO_CMAKE_GENERATED)
SOURCE_GROUP("cmake_generated" FILES ${CMAKE_CURRENT_BINARY_DIR}/portaudio_cmake.def ${CMAKE_CURRENT_BINARY_DIR}/options_cmake.h)
SET(PA_EXTRA_SHARED_SOURCES ${CMAKE_CURRENT_BINARY_DIR}/portaudio_cmake.def)
ELSE()
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} src/os/unix)
SET(PA_PLATFORM_SOURCES src/os/unix/pa_unix_hostapis.c src/os/unix/pa_unix_util.c)
SOURCE_GROUP("os\\unix" FILES ${PA_PLATFORM_SOURCES})
SET(PA_SOURCES ${PA_SOURCES} ${PA_PLATFORM_SOURCES})
IF(APPLE)
SET(CMAKE_MACOSX_RPATH 1)
OPTION(PA_USE_COREAUDIO "Enable support for CoreAudio" ON)
IF(PA_USE_COREAUDIO)
SET(PA_COREAUDIO_SOURCES
src/hostapi/coreaudio/pa_mac_core.c
src/hostapi/coreaudio/pa_mac_core_blocking.c
src/hostapi/coreaudio/pa_mac_core_utilities.c)
SET(PA_COREAUDIO_INCLUDES
src/hostapi/coreaudio/pa_mac_core_blocking.h
src/hostapi/coreaudio/pa_mac_core_utilities.h)
SOURCE_GROUP("hostapi\\coreaudio" FILES ${PA_COREAUDIO_SOURCES} ${PA_COREAUDIO_INCLUDES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_mac_core.h)
SET(PA_PRIVATE_INCLUDES ${PA_PRIVATE_INCLUDES} ${PA_COREAUDIO_INCLUDES})
SET(PA_SOURCES ${PA_SOURCES} ${PA_COREAUDIO_SOURCES})
FIND_LIBRARY(COREAUDIO_LIBRARY CoreAudio REQUIRED)
FIND_LIBRARY(AUDIOTOOLBOX_LIBRARY AudioToolbox REQUIRED)
FIND_LIBRARY(AUDIOUNIT_LIBRARY AudioUnit REQUIRED)
FIND_LIBRARY(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
FIND_LIBRARY(CORESERVICES_LIBRARY CoreServices REQUIRED)
MARK_AS_ADVANCED(COREAUDIO_LIBRARY AUDIOTOOLBOX_LIBRARY AUDIOUNIT_LIBRARY COREFOUNDATION_LIBRARY CORESERVICES_LIBRARY)
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${COREAUDIO_LIBRARY} ${AUDIOTOOLBOX_LIBRARY} ${AUDIOUNIT_LIBRARY} ${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY})
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_USE_COREAUDIO)
SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -framework CoreAudio -framework AudioToolbox -framework AudioUnit -framework CoreFoundation -framework CoreServices")
ENDIF()
ELSEIF(UNIX)
FIND_PACKAGE(Jack)
IF(JACK_FOUND)
OPTION(PA_USE_JACK "Enable support for Jack" ON)
ELSE()
OPTION(PA_USE_JACK "Enable support for Jack" OFF)
ENDIF()
IF(PA_USE_JACK)
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} ${JACK_INCLUDE_DIRS})
SET(PA_JACK_SOURCES src/hostapi/jack/pa_jack.c)
SOURCE_GROUP("hostapi\\JACK" FILES ${PA_JACK_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_jack.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_JACK_SOURCES})
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_USE_JACK)
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${JACK_LIBRARIES})
SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -ljack")
ENDIF()
FIND_PACKAGE(ALSA)
IF(ALSA_FOUND)
OPTION(PA_USE_ALSA "Enable support for ALSA" ON)
OPTION(PA_ALSA_DYNAMIC "Enable loading ALSA through dlopen" OFF)
ELSE()
OPTION(PA_USE_ALSA "Enable support for ALSA" OFF)
ENDIF()
IF(PA_USE_ALSA)
SET(PA_PRIVATE_INCLUDE_PATHS ${PA_PRIVATE_INCLUDE_PATHS} ${ALSA_INCLUDE_DIRS})
SET(PA_ALSA_SOURCES src/hostapi/alsa/pa_linux_alsa.c)
SOURCE_GROUP("hostapi\\ALSA" FILES ${PA_ALSA_SOURCES})
SET(PA_PUBLIC_INCLUDES ${PA_PUBLIC_INCLUDES} include/pa_linux_alsa.h)
SET(PA_SOURCES ${PA_SOURCES} ${PA_ALSA_SOURCES})
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_USE_ALSA)
IF(PA_ALSA_DYNAMIC)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_ALSA_DYNAMIC)
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${CMAKE_DL_LIBS})
SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -l${CMAKE_DL_LIBS}")
ELSE()
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} ${ALSA_LIBRARIES})
SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -lasound")
ENDIF()
ENDIF()
ENDIF()
SET(PA_PKGCONFIG_LDFLAGS "${PA_PKGCONFIG_LDFLAGS} -lm -lpthread")
SET(PA_LIBRARY_DEPENDENCIES ${PA_LIBRARY_DEPENDENCIES} m pthread)
ENDIF()
SOURCE_GROUP("include" FILES ${PA_PUBLIC_INCLUDES})
SET(PA_INCLUDES ${PA_PRIVATE_INCLUDES} ${PA_PUBLIC_INCLUDES})
IF(WIN32)
OPTION(PA_UNICODE_BUILD "Enable Portaudio Unicode build" ON)
IF(PA_UNICODE_BUILD)
SET_SOURCE_FILES_PROPERTIES(${PA_SOURCES} PROPERTIES COMPILE_DEFINITIONS "UNICODE;_UNICODE")
ENDIF()
ENDIF()
OPTION(PA_ENABLE_DEBUG_OUTPUT "Enable debug output for Portaudio" OFF)
IF(PA_ENABLE_DEBUG_OUTPUT)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_ENABLE_DEBUG_OUTPUT)
ENDIF()
INCLUDE(TestBigEndian)
TEST_BIG_ENDIAN(IS_BIG_ENDIAN)
IF(IS_BIG_ENDIAN)
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_BIG_ENDIAN)
ELSE()
SET(PA_PRIVATE_COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS} PA_LITTLE_ENDIAN)
ENDIF()
OPTION(PA_BUILD_STATIC "Build static library" ON)
OPTION(PA_BUILD_SHARED "Build shared/dynamic library" ON)
IF(MSVC)
OPTION(PA_LIBNAME_ADD_SUFFIX "Add suffix _static to static library name" ON)
ELSE()
OPTION(PA_LIBNAME_ADD_SUFFIX "Add suffix _static to static library name" OFF)
ENDIF()
# MSVC: if PA_LIBNAME_ADD_SUFFIX is not used, and both static and shared libraries are
# built, one, of import- and static libraries, will overwrite the other. In
# embedded builds this is not an issue as they will only build the configuration
# used in the host application.
MARK_AS_ADVANCED(PA_LIBNAME_ADD_SUFFIX)
IF(MSVC AND PA_BUILD_STATIC AND PA_BUILD_SHARED AND NOT PA_LIBNAME_ADD_SUFFIX)
MESSAGE(WARNING "Building both shared and static libraries, and avoiding the suffix _static will lead to a name conflict")
SET(PA_LIBNAME_ADD_SUFFIX ON CACHE BOOL "Forcing use of suffix _static to avoid name conflict between static and import library" FORCE)
MESSAGE(WARNING "PA_LIBNAME_ADD_SUFFIX was set to ON")
ENDIF()
SET(PA_TARGETS "")
IF(PA_BUILD_SHARED)
LIST(APPEND PA_TARGETS portaudio)
ADD_LIBRARY(portaudio SHARED ${PA_INCLUDES} ${PA_COMMON_INCLUDES} ${PA_SOURCES} ${PA_NON_UNICODE_SOURCES} ${PA_EXTRA_SHARED_SOURCES})
SET_PROPERTY(TARGET portaudio APPEND_STRING PROPERTY COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS})
TARGET_INCLUDE_DIRECTORIES(portaudio PRIVATE ${PA_PRIVATE_INCLUDE_PATHS})
TARGET_INCLUDE_DIRECTORIES(portaudio PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>" "$<INSTALL_INTERFACE:include>")
TARGET_LINK_LIBRARIES(portaudio ${PA_LIBRARY_DEPENDENCIES})
ENDIF()
IF(PA_BUILD_STATIC)
LIST(APPEND PA_TARGETS portaudio_static)
ADD_LIBRARY(portaudio_static STATIC ${PA_INCLUDES} ${PA_COMMON_INCLUDES} ${PA_SOURCES} ${PA_NON_UNICODE_SOURCES})
SET_PROPERTY(TARGET portaudio_static APPEND_STRING PROPERTY COMPILE_DEFINITIONS ${PA_PRIVATE_COMPILE_DEFINITIONS})
TARGET_INCLUDE_DIRECTORIES(portaudio_static PRIVATE ${PA_PRIVATE_INCLUDE_PATHS})
TARGET_INCLUDE_DIRECTORIES(portaudio_static PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>" "$<INSTALL_INTERFACE:include>")
TARGET_LINK_LIBRARIES(portaudio_static ${PA_LIBRARY_DEPENDENCIES})
IF(NOT PA_LIBNAME_ADD_SUFFIX)
SET_PROPERTY(TARGET portaudio_static PROPERTY OUTPUT_NAME portaudio)
ENDIF()
ENDIF()
IF(WIN32 AND MSVC)
OPTION(PA_CONFIG_LIB_OUTPUT_PATH "Make sure that output paths are kept neat" OFF)
IF(CMAKE_CL_64)
SET(TARGET_POSTFIX x64)
IF(PA_CONFIG_LIB_OUTPUT_PATH)
SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/bin/x64)
ENDIF()
ELSE()
SET(TARGET_POSTFIX x86)
IF(PA_CONFIG_LIB_OUTPUT_PATH)
SET(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR}/bin/Win32)
ENDIF()
ENDIF()
IF(PA_BUILD_SHARED)
IF(PA_LIBNAME_ADD_SUFFIX)
SET_TARGET_PROPERTIES(portaudio PROPERTIES OUTPUT_NAME portaudio_${TARGET_POSTFIX})
ELSE()
SET_TARGET_PROPERTIES(portaudio PROPERTIES OUTPUT_NAME portaudio)
ENDIF()
ENDIF()
IF(PA_BUILD_STATIC)
IF(PA_LIBNAME_ADD_SUFFIX)
SET_TARGET_PROPERTIES(portaudio_static PROPERTIES OUTPUT_NAME portaudio_static_${TARGET_POSTFIX})
ELSE()
SET_TARGET_PROPERTIES(portaudio_static PROPERTIES OUTPUT_NAME portaudio)
ENDIF()
ENDIF()
ELSE()
IF(APPLE AND CMAKE_VERSION VERSION_GREATER 3.4.2)
OPTION(PA_OUTPUT_OSX_FRAMEWORK "Generate an OS X framework instead of the simple library" OFF)
IF(PA_OUTPUT_OSX_FRAMEWORK)
SET_TARGET_PROPERTIES(portaudio PROPERTIES
FRAMEWORK TRUE
MACOSX_FRAMEWORK_IDENTIFIER com.portaudio
FRAMEWORK_VERSION A
PUBLIC_HEADER "${PA_PUBLIC_INCLUDES}"
VERSION ${PA_SOVERSION}
SOVERSION ${PA_SOVERSION})
ENDIF()
ENDIF()
ENDIF()
# At least on Windows in embedded builds, portaudio's install target should likely
# not be executed, as the library would usually already be installed as part of, and
# by means of the host application.
# The option below offers the option to avoid executing the portaudio install target
# for cases in which the host-application executes install, but no independent install
# of portaudio is wished.
OPTION(PA_DISABLE_INSTALL "Disable targets install and uninstall (for embedded builds)" OFF)
IF(NOT PA_OUTPUT_OSX_FRAMEWORK AND NOT PA_DISABLE_INSTALL)
INCLUDE(CMakePackageConfigHelpers)
CONFIGURE_PACKAGE_CONFIG_FILE(cmake_support/portaudioConfig.cmake.in ${CMAKE_BINARY_DIR}/cmake/portaudio/portaudioConfig.cmake
INSTALL_DESTINATION "lib/cmake/portaudio"
NO_CHECK_REQUIRED_COMPONENTS_MACRO)
WRITE_BASIC_PACKAGE_VERSION_FILE(${CMAKE_BINARY_DIR}/cmake/portaudio/portaudioConfigVersion.cmake
VERSION ${PA_VERSION}
COMPATIBILITY SameMajorVersion)
CONFIGURE_FILE(cmake_support/portaudio-2.0.pc.in ${CMAKE_CURRENT_BINARY_DIR}/portaudio-2.0.pc @ONLY)
INSTALL(FILES README.md DESTINATION share/doc/portaudio)
INSTALL(FILES LICENSE.txt DESTINATION share/doc/portaudio)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/portaudio-2.0.pc DESTINATION lib/pkgconfig)
INSTALL(FILES ${PA_PUBLIC_INCLUDES} DESTINATION include)
INSTALL(TARGETS ${PA_TARGETS}
EXPORT portaudio-targets
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib)
INSTALL(EXPORT portaudio-targets FILE "portaudioTargets.cmake" DESTINATION "lib/cmake/portaudio")
EXPORT(TARGETS ${PA_TARGETS} FILE "${PROJECT_BINARY_DIR}/cmake/portaudio/portaudioTargets.cmake")
INSTALL(FILES "${CMAKE_BINARY_DIR}/cmake/portaudio/portaudioConfig.cmake"
"${CMAKE_BINARY_DIR}/cmake/portaudio/portaudioConfigVersion.cmake"
DESTINATION "lib/cmake/portaudio")
IF (NOT TARGET uninstall)
CONFIGURE_FILE(
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_support/cmake_uninstall.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY)
ADD_CUSTOM_TARGET(uninstall
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
ENDIF()
ENDIF()
# Prepared for inclusion of test files
OPTION(PA_BUILD_TESTS "Include test projects" OFF)
IF(PA_BUILD_TESTS)
MACRO(ADD_TEST appl_name)
ADD_EXECUTABLE(${appl_name} "${appl_name}.c")
TARGET_LINK_LIBRARIES(${appl_name} portaudio_static)
TARGET_INCLUDE_DIRECTORIES(${appl_name} PRIVATE "${CMAKE_SOURCE_DIR}/src/common")
SET_TARGET_PROPERTIES(${appl_name}
PROPERTIES
FOLDER "Test"
)
ENDMACRO(ADD_TEST)
SUBDIRS(test)
SUBDIRS(qa)
ENDIF()
# Prepared for inclusion of test files
OPTION(PA_BUILD_EXAMPLES "Include example projects" OFF)
IF(PA_BUILD_EXAMPLES)
SUBDIRS(examples)
ENDIF()

View file

@ -43,7 +43,7 @@ SUBGROUPING = YES
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = NO
EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = NO
EXTRACT_LOCAL_CLASSES = YES
@ -60,14 +60,14 @@ INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_BY_SCOPE_NAME = NO
GENERATE_TODOLIST = NO
GENERATE_TESTLIST = NO
GENERATE_BUGLIST = NO
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_DIRECTORIES = YES
SHOW_DIRECTORIES = NO
FILE_VERSION_FILTER =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
@ -83,15 +83,15 @@ WARN_LOGFILE =
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = doc/src \
src \
include \
examples
test
FILE_PATTERNS = *.h \
*.c \
*.cpp \
*.java \
*.dox
RECURSIVE = YES
EXCLUDE = src/hostapi/wasapi/mingw-include
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
@ -104,7 +104,7 @@ FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = YES
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES

View file

@ -1,242 +0,0 @@
# Doxyfile 1.4.6
#---------------------------------------------------------------------------
# Project related configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = PortAudio
PROJECT_NUMBER = 2.0
OUTPUT_DIRECTORY = ./doc/
CREATE_SUBDIRS = NO
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ABBREVIATE_BRIEF = "The $name class" \
"The $name widget" \
"The $name file" \
is \
provides \
specifies \
contains \
represents \
a \
an \
the
ALWAYS_DETAILED_SEC = NO
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
STRIP_FROM_INC_PATH =
SHORT_NAMES = NO
JAVADOC_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
DETAILS_AT_TOP = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
TAB_SIZE = 8
ALIASES =
OPTIMIZE_OUTPUT_FOR_C = YES
OPTIMIZE_OUTPUT_JAVA = NO
BUILTIN_STL_SUPPORT = NO
DISTRIBUTE_GROUP_DOC = NO
SUBGROUPING = YES
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
EXTRACT_ALL = YES
EXTRACT_PRIVATE = NO
EXTRACT_STATIC = NO
EXTRACT_LOCAL_CLASSES = YES
EXTRACT_LOCAL_METHODS = NO
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
INTERNAL_DOCS = YES
CASE_SENSE_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = YES
INLINE_INFO = YES
SORT_MEMBER_DOCS = YES
SORT_BRIEF_DOCS = NO
SORT_BY_SCOPE_NAME = NO
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ENABLED_SECTIONS = INTERNAL
MAX_INITIALIZER_LINES = 30
SHOW_USED_FILES = YES
SHOW_DIRECTORIES = YES
FILE_VERSION_FILTER =
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = doc/src \
include \
examples \
src \
test \
qa
FILE_PATTERNS = *.h \
*.c \
*.cpp \
*.java \
*.dox
RECURSIVE = YES
EXCLUDE = src/hostapi/wasapi/mingw-include
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH = doc/src/images
INPUT_FILTER =
FILTER_PATTERNS =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
USE_HTAGS = NO
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = NO
COLS_IN_ALPHA_INDEX = 5
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = html
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = NO
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NO
TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
XML_PROGRAMLISTING = YES
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::additions related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = NO
HIDE_UNDOC_RELATIONS = NO
HAVE_DOT = NO
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
GROUP_GRAPHS = YES
UML_LOOK = NO
TEMPLATE_RELATIONS = YES
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DIRECTORY_GRAPH = YES
DOT_IMAGE_FORMAT = png
DOT_PATH =
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
MAX_DOT_GRAPH_DEPTH = 1000
DOT_TRANSPARENT = NO
DOT_MULTI_TARGETS = NO
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
#---------------------------------------------------------------------------
# Configuration::additions related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO

View file

@ -18,7 +18,7 @@ libdir = @libdir@
includedir = @includedir@
CC = @CC@
CXX = @CXX@
CFLAGS = @CFLAGS@ @DEFS@
CFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src/common -I$(top_srcdir)/src/os/unix @CFLAGS@ @DEFS@
LIBS = @LIBS@
AR = @AR@
RANLIB = @RANLIB@
@ -44,7 +44,7 @@ PALIB = libportaudio.la
PAINC = include/portaudio.h
PA_LDFLAGS = $(LDFLAGS) $(SHARED_FLAGS) -rpath $(libdir) -no-undefined \
-export-symbols-regex "(Pa|PaMacCore|PaJack|PaAlsa|PaAsio|PaOSS|PaWasapi|PaWasapiWinrt)_.*" \
-export-symbols-regex "(Pa|PaMacCore|PaJack|PaAlsa|PaAsio|PaOSS)_.*" \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
COMMON_OBJS = \
@ -67,23 +67,9 @@ LOOPBACK_OBJS = \
qa/loopback/src/write_wav.o \
qa/loopback/src/paqa.o
EXAMPLES = \
bin/pa_devs \
bin/pa_fuzz \
bin/paex_pink \
bin/paex_read_write_wire \
bin/paex_record \
bin/paex_saw \
bin/paex_sine \
bin/paex_write_sine \
bin/paex_write_sine_nonint
SELFTESTS = \
TESTS = \
bin/paqa_devs \
bin/paqa_errs \
bin/paqa_latency
TESTS = \
bin/patest1 \
bin/patest_buffer \
bin/patest_callbackstop \
@ -99,9 +85,15 @@ TESTS = \
bin/patest_mono \
bin/patest_multi_sine \
bin/patest_out_underflow \
bin/patest_pink \
bin/patest_prime \
bin/patest_read_record \
bin/patest_read_write_wire \
bin/patest_record \
bin/patest_ringmix \
bin/patest_saw \
bin/patest_sine8 \
bin/patest_sine \
bin/patest_sine_channelmaps \
bin/patest_sine_formats \
bin/patest_sine_time \
@ -113,6 +105,11 @@ TESTS = \
bin/patest_two_rates \
bin/patest_underflow \
bin/patest_wire \
bin/patest_write_sine \
bin/patest_write_sine_nonint \
bin/patest_update_available_device_list \
bin/pa_devs \
bin/pa_fuzz \
bin/pa_minlat
# Most of these don't compile yet. Put them in TESTS, above, if
@ -146,24 +143,20 @@ SRC_DIRS = \
src/hostapi/dsound \
src/hostapi/jack \
src/hostapi/oss \
src/hostapi/skeleton \
src/hostapi/wasapi \
src/hostapi/wdmks \
src/hostapi/wmme \
src/os/unix \
src/os/mac_osx \
src/os/win
SUBDIRS =
@ENABLE_CXX_TRUE@SUBDIRS += bindings/cpp
all: lib/$(PALIB) all-recursive tests examples selftests
all: lib/$(PALIB) all-recursive tests
tests: bin-stamp $(TESTS)
examples: bin-stamp $(EXAMPLES)
selftests: bin-stamp $(SELFTESTS)
loopback: bin-stamp bin/paloopback
# With ASIO enabled we must link libportaudio and all test programs with CXX
@ -175,14 +168,6 @@ $(ALL_TESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) test/%.c
@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/test/$*.c lib/$(PALIB) $(LIBS)
$(EXAMPLES): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) examples/%.c
@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/examples/$*.c lib/$(PALIB) $(LIBS)
$(SELFTESTS): bin/%: lib/$(PALIB) $(MAKEFILE) $(PAINC) qa/%.c
@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(top_srcdir)/qa/$*.c lib/$(PALIB) $(LIBS)
bin/paloopback: lib/$(PALIB) $(MAKEFILE) $(PAINC) $(LOOPBACK_OBJS)
@WITH_ASIO_FALSE@ $(LIBTOOL) --mode=link $(CC) -o $@ $(CFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
@WITH_ASIO_TRUE@ $(LIBTOOL) --mode=link --tag=CXX $(CXX) -o $@ $(CXXFLAGS) $(LOOPBACK_OBJS) lib/$(PALIB) $(LIBS)
@ -221,16 +206,16 @@ clean:
distclean: clean
$(RM) config.log config.status Makefile libtool portaudio-2.0.pc
%.o: %.c $(MAKEFILE) $(PAINC) lib-stamp
%.o: %.c $(MAKEFILE) $(PAINC)
$(CC) -c $(CFLAGS) $< -o $@
%.lo: %.c $(MAKEFILE) $(PAINC) lib-stamp
%.lo: %.c $(MAKEFILE) $(PAINC)
$(LIBTOOL) --mode=compile $(CC) -c $(CFLAGS) $< -o $@
%.lo: %.cpp $(MAKEFILE) $(PAINC) lib-stamp
%.lo: %.cpp $(MAKEFILE) $(PAINC)
$(LIBTOOL) --mode=compile --tag=CXX $(CXX) -c $(CXXFLAGS) $< -o $@
%.o: %.cpp $(MAKEFILE) $(PAINC) lib-stamp
%.o: %.cpp $(MAKEFILE) $(PAINC)
$(CXX) -c $(CXXFLAGS) $< -o $@
%.o: %.asm

View file

@ -1,26 +1,16 @@
PortAudio uses "autoconf" tools to generate Makefiles for Linux and Mac platforms.
The source for these are configure.in and Makefile.in
If you modify either of these files then please run this command before
testing and checking in your changes. I run this command on Linux.
testing and checking in your changes.
autoreconf -if
If you do not have autoreconf then do:
sudo apt-get install autoconf
If you get error like "possibly undefined macro: AC_LIBTOOL_WIN32_DLL"
then you try installing some more packages and then try again.
sudo apt-get install build-essential
sudo apt-get install pkg-config
sudo apt-get install libtool
autoreconf -if
Then test a build by doing:
./configure
make clean
make
sudo make install
then check in the related files that are modified.
These might include files like:

103
README.md
View file

@ -1,103 +0,0 @@
# PortAudio - portable audio I/O library
This is a fork of PortAudio that adds `Pa_RefreshDevice` functionality (see commit `1f01a3ddc05df7ee3bb3cad5ef960d335aff018b`), which allows runtime detection of audio device changes without restarting your application.
PortAudio is a portable audio I/O library designed for cross-platform
support of audio. It uses either a callback mechanism to request audio
processing, or blocking read/write calls to buffer data between the
native audio subsystem and the client. Audio can be processed in various
formats, including 32 bit floating point, and will be converted to the
native format internally.
## Documentation:
* Documentation is available at http://www.portaudio.com/docs/
* Or at `/doc/html/index.html` after running Doxygen.
* Also see `src/common/portaudio.h` for the API spec.
* And see the `examples/` and `test/` directories for many examples of usage. (We suggest `examples/paex_saw.c` for an example.)
For information on compiling programs with PortAudio, please see the
tutorial at:
http://portaudio.com/docs/v19-doxydocs/tutorial_start.html
We have an active mailing list for user and developer discussions.
Please feel free to join. See http://www.portaudio.com for details.
## Important Files and Folders:
include/portaudio.h = header file for PortAudio API. Specifies API.
src/common/ = platform independent code, host independent
code for all implementations.
src/os = os specific (but host api neutral) code
src/hostapi = implementations for different host apis
### Host API Implementations:
src/hostapi/alsa = Advanced Linux Sound Architecture (ALSA)
src/hostapi/asihpi = AudioScience HPI
src/hostapi/asio = ASIO for Windows and Macintosh
src/hostapi/coreaudio = Macintosh Core Audio for OS X
src/hostapi/dsound = Windows Direct Sound
src/hostapi/jack = JACK Audio Connection Kit
src/hostapi/oss = Unix Open Sound System (OSS)
src/hostapi/wasapi = Windows Vista WASAPI
src/hostapi/wdmks = Windows WDM Kernel Streaming
src/hostapi/wmme = Windows MultiMedia Extensions (MME)
### Test Programs:
test/pa_fuzz.c = guitar fuzz box
test/pa_devs.c = print a list of available devices
test/pa_minlat.c = determine minimum latency for your machine
test/paqa_devs.c = self test that opens all devices
test/paqa_errs.c = test error detection and reporting
test/patest_clip.c = hear a sine wave clipped and unclipped
test/patest_dither.c = hear effects of dithering (extremely subtle)
test/patest_pink.c = fun with pink noise
test/patest_record.c = record and playback some audio
test/patest_maxsines.c = how many sine waves can we play? Tests Pa_GetCPULoad().
test/patest_sine.c = output a sine wave in a simple PA app
test/patest_sync.c = test synchronization of audio and video
test/patest_wire.c = pass input to output, wire simulator
## Using with Node.js
This fork can be used with the [nodeaudio](https://andrewgundersen.net/repos/nodeaudio) Node.js bindings, which provide native audio I/O capabilities to JavaScript/TypeScript applications.
### Building PortAudio
Build portaudio:
./configure and make
At the time of writing (MacOS 12.1) I initially received build errors (-WError) about unused variables, so I had to remove -WError flag from the build rules.
Anytime the build configuration changes, make sure to run (see PortAudio docs):
autoreconf -if
Use find command in usr/local/lib to see install state:
find /usr/local/lib -name "libport*" -maxdepth 1
The default build of PortAudio sets an absolute install path (usr/local/lib) which causes issues if you want to package the .dylib in a project. To fix this, use install_name_tool to rename the binary using a relative @loader_path:
install_name_tool -id "@loader_path/libportaudio.dylib" libportaudio.dylib
Ideally, this would be set in the build config settings of PortAudio, but I haven't figured out how to do that yet.
### Using with nodeaudio
The [nodeaudio](https://andrewgundersen.net/repos/nodeaudio) bindings wrap this PortAudio fork to expose audio I/O capabilities to Node.js applications. Clone and build the nodeaudio project to get started:
git clone https://andrewgundersen.net/repos/nodeaudio
cd nodeaudio
node-gyp rebuild
This will link against the PortAudio library you've built, allowing you to use audio functionality from JavaScript.
TODO: Sign on build
Of course, any binary (e.g. libportaudio.dylib) must be signed before distribution.

98
README.txt Normal file
View file

@ -0,0 +1,98 @@
README for PortAudio
/*
* PortAudio Portable Real-Time Audio Library
* Latest Version at: http://www.portaudio.com
*
* Copyright (c) 1999-2008 Phil Burk and Ross Bencina
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files
* (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
* The text above constitutes the entire PortAudio license; however,
* the PortAudio community also makes the following non-binding requests:
*
* Any person wishing to distribute modifications to the Software is
* requested to send the modifications to the original developer so that
* they can be incorporated into the canonical version. It is also
* requested that these non-binding requests be included along with the
* license above.
*/
PortAudio is a portable audio I/O library designed for cross-platform
support of audio. It uses either a callback mechanism to request audio
processing, or blocking read/write calls to buffer data between the
native audio subsystem and the client. Audio can be processed in various
formats, including 32 bit floating point, and will be converted to the
native format internally.
Documentation:
Documentation is available in "/doc/html/index.html"
Also see "src/common/portaudio.h" for API spec.
Also see http://www.portaudio.com/docs/
And see the "test/" directory for many examples of usage
(we suggest "test/patest_saw.c" for an example)
For information on compiling programs with PortAudio, please see the
tutorial at:
http://portaudio.com/trac/wiki/TutorialDir/TutorialStart
We have an active mailing list for user and developer discussions.
Please feel free to join. See http://www.portaudio.com for details.
Important Files and Folders:
include/portaudio.h = header file for PortAudio API. Specifies API.
src/common/ = platform independant code, host independant
code for all implementations.
src/os = os specific (but host api neutral) code
src/hostapi = implementations for different host apis
Host API Implementations:
src/hostapi/alsa = Advanced Linux Sound Architecture (ALSA)
src/hostapi/asihpi = AudioScience HPI
src/hostapi/asio = ASIO for Windows and Macintosh
src/hostapi/coreaudio = Macintosh Core Audio for OS X
src/hostapi/dsound = Windows Direct Sound
src/hostapi/jack = JACK Audio Connection Kit
src/hostapi/oss = Unix Open Sound System (OSS)
src/hostapi/wasapi = Windows Vista WASAPI
src/hostapi/wdmks = Windows WDM Kernel Streaming
src/hostapi/wmme = Windows MultiMedia Extensions (MME)
Test Programs:
test/pa_fuzz.c = guitar fuzz box
test/pa_devs.c = print a list of available devices
test/pa_minlat.c = determine minimum latency for your machine
test/paqa_devs.c = self test that opens all devices
test/paqa_errs.c = test error detection and reporting
test/patest_clip.c = hear a sine wave clipped and unclipped
test/patest_dither.c = hear effects of dithering (extremely subtle)
test/patest_pink.c = fun with pink noise
test/patest_record.c = record and playback some audio
test/patest_maxsines.c = how many sine waves can we play? Tests Pa_GetCPULoad().
test/patest_sine.c = output a sine wave in a simple PA app
test/patest_sync.c = test syncronization of audio and video
test/patest_wire.c = pass input to output, wire simulator

4925
aclocal.m4 vendored

File diff suppressed because it is too large Load diff

View file

@ -1,178 +1,178 @@
Note: Because PortAudioCpp is now in the main PortAudio SVN repository, having these per-release changelogs probably doesn't make much sense anymore. Perhaps it's better to just note mayor changes by date from now on.
PortAudioCpp v19 revision 16 06/05/22:
mblaauw:
- Added up-to-date MSVC 6.0 projects created by David Moore. Besides MSVC 6.0 users, MSVC 7.0 users may use these projects and automatically convert them to MSVC 7.0 projects.
- Changed the code and projects (MSVC 7.1 only) to be up-to-date with PortAudio's new directory structure.
- Added equivalents of the PaAsio_GetInputChannelName() and PaAsio_GetOutputChannelName() functions to the AsioDeviceAdapter wrapper-class (missing functions pointed out by David Moore).
- Added code to PortAudio's main SVN repository.
PortAudioCpp v19 revision 15 (unknown release date):
mblaauw:
- Changed some exception handling code in HostApi's constructor.
- Added accessors to PortAudio PaStream from PortAudioCpp Stream (their absence being pointed out
by Tom Jordan).
- Fixed a bug/typo in MemFunToCallbackInterfaceAdapter::init() thanks to Fredrik Viklund.
- Fixed issue with concrete Stream classes possibly throwing an exception and fixed documentation w.r.t. this.
- Moved files to portaudio/binding/cpp/. Made new msvc 7.1 projects to reflect the change and removed msvc 6.0
and 7.0 projects (because I can no longer maintain them myself). Gnu projects will probably need updating.
PortAudioCpp v19 revision 14 03/10/24:
mblaauw:
- Fixed some error handling bugs in Stream and System (pointed out by Tom Jordan).
- Updated documentation a little (main page).
- Fixed order of members so initializer list was in the right order in
StreamParameters (pointed out by Ludwig Schwardt).
- Added new lines at EOF's (as indicated by Ludwig Schwardt).
PortAudioCpp v19 revision 13 03/10/19:
lschwardt:
- Added build files for GNU/Linux.
- Fixed bug in Exception where the inherited what() member function (and destructor) had looser
exception specification (namely no exception specification, i.e. could throw anything) than
the std::exception base class's what() member function (which had throw(), i.e. no-throw guarantee).
- Changed the iterators so that they have a set of public typedefs instead of deriving the C++ standard
library std::iterator<> struct. G++ 2.95 doesn't support std::exception<> and composition-by-aggregation
is preferred over composition-by-inheritance in this case.
- Changed some minor things to avoid G++ warning messages.
mblaauw:
- Renamed this file (/WHATSNEW.txt) to /CHANGELOG.
- Renamed /PA_ISSUES.txt to /PA_ISSUES.
- Added /INSTALL file with some build info for GNU/Linux and VC6.
- Added MSVC 6.0 projects for building PortAudioCpp as a statically or dynamically linkable library.
- Moved build files to /build/(gnu/ or vc6/).
- Moved Doxygen configuration files to /doc/ and output to /doc/api_reference/.
- Added a /doc/README with some info how to generate Doxygen documentation.
PortAudioCpp v19 revision 12 03/09/02:
mblaauw:
- Updated code to reflect changes on V19-devel CVS branch.
- Fixed some typos in the documentation.
PortAudioCpp v19 revision 11 03/07/31:
mblaauw:
- Renamed SingleDirecionStreamParameters to DirectionSpecificStreamParameters.
- Implemented BlockingStream.
- Updated code to reflect recent changes to PortAudio V19-devel.
- Fixed a potential memory leak when an exception was thrown in the HostApi
constructor.
- Renamed ``Latency'' to ``BufferSize'' in AsioDeviceAdapter.
- Updated class documentation.
PortAudioCpp v19 revision 10 03/07/18:
mblaauw:
- SingleDirectionStreamParameters now has a (static) null() method.
- StreamParameters uses references for the direction-specific stream parameters
instead of pointers (use null() method (above) instead of NULL).
- StreamParameters and SingleDirectionStreamParameters must now be fully specified
and now default values are used (because this was not very useful in general and
only made things more complex).
- Updated documentation.
PortAudioCpp v19 revision 09 03/06/25:
mblaauw:
- Changed some things in SingleDirectionStreamParameters to ease it's usage.
- Placed all SingleDirectionStreamParameters stuff into a separate file.
+ Totally redid the callback stuff, now it's less awkward and supports C++ functions.
PortAudioCpp v19 revision 08 03/06/20:
mblaauw:
- Made deconstructors for Device and HostApi private.
+ Added a AsioDeviceWrapper host api specific device extension class.
- Refactored Exception into a Exception base class and PaException and PaCppException
derived classes.
- Added ASIO specific device info to the devs.cxx example.
- Fixed a bug in System::hostApiCount() and System::defaultHostApi().
+ Moved Device::null to System::nullDevice.
- Fixed some bugs in Device and System.
PortAudioCpp v19 revision 07 03/06/08:
mblaauw:
- Updated some doxy comments.
+ Renamed CbXyz to CallbackXyz.
+ Renamed all ``configurations'' to ``parameters''.
+ Renamed HalfDuplexStreamConfiguration to SingleDirectionStreamConfiguration.
- Renamed SingleDirectionStreamParameters::streamParameters() to
SingleDirectionStreamParameters::paSteamParameters.
- Added a non-constant version of SingleDirectionStreamParameters::paStreamParameters().
- A few improvements to SingleDirectionStreamParameters.
- Allowed AutoSystem to be created without initializing the System singleton
(using a ctor flag).
- Added a BlockingStream class (not implemented for now).
- Fixed many bugs in the implementation of the iterators.
- Fixed a bug in Device::operator==().
+ Added a C++ version of the patest_sine.c test/example.
- Added a ctor for StreamParameters for a default half-duplex stream.
- Added SingleDirectionStreamParameters::setDevice() and setNumChannels().
- Renamed System::numHostApis() to System::hostApiCount().
+ Rewrote the iterators and related classes. They are now fully STL compliant. The System now
has a static array of all HostApis and all Devices. Only the System can create HostApis and
Devices and they are non-copyable now. All HostApis and Devices are now passed by-reference.
- Renamed (System::) getVersion() to version() and getVersionText() to versionText().
- Renamed (Device::) numXyzChannels() to maxXyzChannels().
- Changed some stuff in StreamParameters.
+ Added a C++ version of the patest_devs.c test/example.
PortAudioCpp v19 revision 06 03/06/04:
mblaauw:
+ Added this file to the project (roughly, a `+' denotes a major change, a `-' a minor change).
- Added System::deviceByIndex(), useful when a Device's index is stored for instance.
- Renamed System::hostApiFromTypeId() to System::hostApiByTypeId().
- Updated and added some Doxygen documentation.
- Made Stream::usedIntputLatency(), Stream::usedOutputLatency() and
Stream::usedSampleRate() throw an paInternalError equivalent exception instead of paBadStreamPtr.
- Changed exception handling in Stream::open() functions. They now follow the PA error handling
mechanism better and a couple of bugs regarding ownership of objects were fixed.
- Renamed Device::isDefaultXyzDevice() to Device::isSystemDefaultXyzDevice().
- Added Device::isHostApiDefaultXyzDevice().
- Added StreamConfiguration::unsetFlag().
- Removed CUSTOM from SampleDataFormat.
- System::hostApiByTypeId() now throws an paInternalError if the type id was out-of-range; this
is a temporary work-around (see comments).
- Changed CbInterface to use paCallbackFun() instead of operator()().
- Renamed ``object'' to ``instance'' in CbMemFunAdapter.hxx.
- Added StreamConfiguration::setXyzHostApiSpecificSampleFormat().
- Added StreamConfiguration::isXyzSampleFormatHostApiSpecific().
- Changed error handling in System::terminate(), it can now throw an Exception.
- Added error handling in System::defaultHostApi().
- Added error handling in System::hostApisEnd().
- Changed some (but probably not all) C casts to C++ casts to avoid confusion with a
certain Python person.
- Renamed RaiiSystem to AutoSystem (class and file) as this is a come common convention.
- Renamed System::numDevices() to System::deviceCount() to be more compatible with PortAudio
(although PortAudio uses Pa_CountDevices() instead, see comment).
- Renamed HostApi::numDevices() to HostApi::deviceCount().
- Changed INC_ to INCLUDED_ in the header multiple include guards.
- Changed the order of functions in the StreamConfiguration class' header.
- Written some more info in PortAudioCpp.hxx (Doxygen).
- Added CallbackStream.hxx and CallbackStream.cxx files.
+ Refactored StreamConfiguration to remove the duplication which was there. There is now a
HalfDuplexStreamConfiguration class. Also made some improvements to these classes while
doing the refactoring.
+ Moved all code files to source/portaudiocpp/ and changed includes.
+ Moved all header files to include/portaudiocpp/ to easy a binary build if needed. The project
must be set to have .../include/ as a path to look for includes.
+ Refactored the Stream class into a Stream base class and a CallbackStream derived class.
- Renamed Stream::usingXyz() to Stream::xyz().
- Updated some doxy comments.
- Changed ``using namespace portaudio'' in .cxx files to ``namespace portaudio { ... }''.
PortAudioCpp v19 revision 05 03/04/09:
mblaauw:
- Initial release on the PortAudio mailinglist.
Note: Because PortAudioCpp is now in the main PortAudio SVN repository, having these per-release changelogs probably doesn't make much sense anymore. Perhaps it's better to just note mayor changes by date from now on.
PortAudioCpp v19 revision 16 06/05/22:
mblaauw:
- Added up-to-date MSVC 6.0 projects created by David Moore. Besides MSVC 6.0 users, MSVC 7.0 users may use these projects and automatically convert them to MSVC 7.0 projects.
- Changed the code and projects (MSVC 7.1 only) to be up-to-date with PortAudio's new directory structure.
- Added equivalents of the PaAsio_GetInputChannelName() and PaAsio_GetOutputChannelName() functions to the AsioDeviceAdapter wrapper-class (missing functions pointed out by David Moore).
- Added code to PortAudio's main SVN repository.
PortAudioCpp v19 revision 15 (unknown release date):
mblaauw:
- Changed some exception handling code in HostApi's constructor.
- Added accessors to PortAudio PaStream from PortAudioCpp Stream (their absense being pointed out
by Tom Jordan).
- Fixed a bug/typo in MemFunToCallbackInterfaceAdapter::init() thanks to Fredrik Viklund.
- Fixed issue with concrete Stream classes possibly throwing an exception and fixed documentation w.r.t. this.
- Moved files to portaudio/binding/cpp/. Made new msvc 7.1 projects to reflect the change and removed msvc 6.0
and 7.0 projects (because I can no longer maintain them myself). Gnu projects will probably need updating.
PortAudioCpp v19 revision 14 03/10/24:
mblaauw:
- Fixed some error handling bugs in Stream and System (pointed out by Tom Jordan).
- Updated documentation a little (main page).
- Fixed order of members so initializer list was in the right order in
StreamParameters (pointed out by Ludwig Schwardt).
- Added new lines at EOF's (as indicated by Ludwig Schwardt).
PortAudioCpp v19 revision 13 03/10/19:
lschwardt:
- Added build files for GNU/Linux.
- Fixed bug in Exception where the inherited what() member function (and destructor) had looser
exception specification (namely no exception specification, i.e. could throw anything) than
the std::exception base class's what() member function (which had throw(), i.e. no-throw guarantee).
- Changed the iterators so that they have a set of public typedefs instead of deriving the C++ standard
library std::iterator<> struct. G++ 2.95 doesn't support std::exception<> and composition-by-aggregation
is prefered over composition-by-inheritance in this case.
- Changed some minor things to avoid G++ warning messages.
mblaauw:
- Renamed this file (/WHATSNEW.txt) to /CHANGELOG.
- Renamed /PA_ISSUES.txt to /PA_ISSUES.
- Added /INSTALL file with some build info for GNU/Linux and VC6.
- Added MSVC 6.0 projects for building PortAudioCpp as a staticly or dynamically linkable library.
- Moved build files to /build/(gnu/ or vc6/).
- Moved Doxygen configuration files to /doc/ and output to /doc/api_reference/.
- Added a /doc/README with some info how to generate Doxygen documentation.
PortAudioCpp v19 revision 12 03/09/02:
mblaauw:
- Updated code to reflect changes on V19-devel CVS branch.
- Fixed some typos in the documentation.
PortAudioCpp v19 revision 11 03/07/31:
mblaauw:
- Renamed SingleDirecionStreamParameters to DirectionSpecificStreamParameters.
- Implemented BlockingStream.
- Updated code to reflect recent changes to PortAudio V19-devel.
- Fixed a potential memory leak when an exception was thrown in the HostApi
constructor.
- Renamed ``Latency'' to ``BufferSize'' in AsioDeviceAdapter.
- Updated class documentation.
PortAudioCpp v19 revision 10 03/07/18:
mblaauw:
- SingleDirectionStreamParameters now has a (static) null() method.
- StreamParameters uses references for the direction-specific stream parameters
instead of pointers (use null() method (above) instead of NULL).
- StreamParameters and SingleDirectionStreamParameters must now be fully specified
and now default values are used (because this was not very useful in general and
only made things more complex).
- Updated documentation.
PortAudioCpp v19 revision 09 03/06/25:
mblaauw:
- Changed some things in SingleDirectionStreamParameters to ease it's usage.
- Placed all SingleDirectionStreamParameters stuff into a separate file.
+ Totally redid the callback stuff, now it's less ackward and supports C++ functions.
PortAudioCpp v19 revision 08 03/06/20:
mblaauw:
- Made deconstructors for Device and HostApi private.
+ Added a AsioDeviceWrapper host api specific device extension class.
- Refactored Exception into a Exception base class and PaException and PaCppException
derived classes.
- Added ASIO specific device info to the devs.cxx example.
- Fixed a bug in System::hostApiCount() and System::defaultHostApi().
+ Moved Device::null to System::nullDevice.
- Fixed some bugs in Device and System.
PortAudioCpp v19 revision 07 03/06/08:
mblaauw:
- Updated some doxy comments.
+ Renamed CbXyz to CallbackXyz.
+ Renamed all ``configurations'' to ``parameters''.
+ Renamed HalfDuplexStreamConfiguration to SingleDirectionStreamConfiguration.
- Renamed SingleDirectionStreamParameters::streamParameters() to
SingleDirectionStreamParameters::paSteamParameters.
- Added a non-constant version of SingleDirectionStreamParameters::paStreamParameters().
- A few improvements to SingleDirectionStreamParameters.
- Allowed AutoSystem to be created without initializing the System singleton
(using a ctor flag).
- Added a BlockingStream class (not implemented for now).
- Fixed many bugs in the implementation of the iterators.
- Fixed a bug in Device::operator==().
+ Added a C++ version of the patest_sine.c test/example.
- Added a ctor for StreamParameters for a default half-duplex stream.
- Added SingleDirectionStreamParameters::setDevice() and setNumChannels().
- Renamed System::numHostApis() to System::hostApiCount().
+ Rewrote the iterators and related classes. They are now fully STL compliant. The System now
has a static array of all HostApis and all Devices. Only the System can create HostApis and
Devices and they are non-copyable now. All HostApis and Devices are now passed by-reference.
- Renamed (System::) getVersion() to version() and getVersionText() to versionText().
- Renamed (Device::) numXyzChannels() to maxXyzChannels().
- Changed some stuff in StreamParameters.
+ Added a C++ version of the patest_devs.c test/example.
PortAudioCpp v19 revision 06 03/06/04:
mblaauw:
+ Added this file to the project (roughly, a `+' denotes a major change, a `-' a minor change).
- Added System::deviceByIndex(), useful when a Device's index is stored for instance.
- Renamed System::hostApiFromTypeId() to System::hostApiByTypeId().
- Updated and added some Doxygen documentation.
- Made Stream::usedIntputLatency(), Stream::usedOutputLatency() and
Stream::usedSampleRate() throw an paInternalError equivalent exception instead of paBadStreamPtr.
- Changed exception handling in Stream::open() functions. They now follow the PA error handling
mechanism better and a couple of bugs regarding ownership of objects were fixed.
- Renamed Device::isDefaultXyzDevice() to Device::isSystemDefaultXyzDevice().
- Added Device::isHostApiDefaultXyzDevice().
- Added StreamConfiguration::unsetFlag().
- Removed CUSTOM from SampleDataFormat.
- System::hostApiByTypeId() now throws an paInternalError if the type id was out-of-range; this
is a temporary work-around (see comments).
- Changed CbInterface to use paCallbackFun() instead of operator()().
- Renamed ``object'' to ``instance'' in CbMemFunAdapter.hxx.
- Added StreamConfiguration::setXyzHostApiSpecificSampleFormat().
- Added StreamConfiguration::isXyzSampleFormatHostApiSpecific().
- Changed error handling in System::terminate(), it can now throw an Exception.
- Added error handling in System::defaultHostApi().
- Added error handling in System::hostApisEnd().
- Changed some (but probably not all) C casts to C++ casts to avoid confusion with a
certain Python person.
- Renamed RaiiSystem to AutoSystem (class and file) as this is a come common convention.
- Renamed System::numDevices() to System::deviceCount() to be more compatible with PortAudio
(although PortAudio uses Pa_CountDevices() instead, see comment).
- Renamed HostApi::numDevices() to HostApi::deviceCount().
- Changed INC_ to INCLUDED_ in the header multiple include guards.
- Changed the order of functions in the StreamConfiguration class' header.
- Written some more info in PortAudioCpp.hxx (Doxygen).
- Added CallbackStream.hxx and CallbackStream.cxx files.
+ Refactored StreamConfiguration to remove the duplication which was there. There is now a
HalfDuplexStreamConfiguration class. Also made some improvements to these classes while
doing the refactoring.
+ Moved all code files to source/portaudiocpp/ and changed includes.
+ Moved all header files to include/portaudiocpp/ to easy a binary build if needed. The project
must be set to have .../include/ as a path to look for includes.
+ Refactored the Stream class into a Stream base class and a CallbackStream derived class.
- Renamed Stream::usingXyz() to Stream::xyz().
- Updated some doxy comments.
- Changed ``using namespace portaudio'' in .cxx files to ``namespace portaudio { ... }''.
PortAudioCpp v19 revision 05 03/04/09:
mblaauw:
- Initial release on the PortAudio mailinglist.

View file

@ -1,8 +1,8 @@
Installation Instructions
*************************
Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2021 Free
Software Foundation, Inc.
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
2006, 2007, 2008, 2009 Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@ -12,96 +12,97 @@ without warranty of any kind.
Basic Installation
==================
Briefly, the shell command './configure && make && make install'
should configure, build, and install this package. The following
more-detailed instructions are generic; see the 'README' file for
Briefly, the shell commands `./configure; make; make install' should
configure, build, and install this package. The following
more-detailed instructions are generic; see the `README' file for
instructions specific to this package. Some packages provide this
'INSTALL' file but do not implement all of the features documented
`INSTALL' file but do not implement all of the features documented
below. The lack of an optional feature in a given package is not
necessarily a bug. More recommendations for GNU packages can be found
in *note Makefile Conventions: (standards)Makefile Conventions.
The 'configure' shell script attempts to guess correct values for
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a 'Makefile' in each directory of the package.
It may also create one or more '.h' files containing system-dependent
definitions. Finally, it creates a shell script 'config.status' that
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a
file 'config.log' containing compiler output (useful mainly for
debugging 'configure').
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called 'config.cache' and
enabled with '--cache-file=config.cache' or simply '-C') that saves the
results of its tests to speed up reconfiguring. Caching is disabled by
default to prevent problems with accidental use of stale cache files.
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. Caching is
disabled by default to prevent problems with accidental use of stale
cache files.
If you need to do unusual things to compile the package, please try
to figure out how 'configure' could check whether to do them, and mail
diffs or instructions to the address given in the 'README' so they can
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If you are using the cache, and at
some point 'config.cache' contains results you don't want to keep, you
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file 'configure.ac' (or 'configure.in') is used to create
'configure' by a program called 'autoconf'. You need 'configure.ac' if
you want to change it or regenerate 'configure' using a newer version of
'autoconf'.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You need `configure.ac' if
you want to change it or regenerate `configure' using a newer version
of `autoconf'.
The simplest way to compile this package is:
The simplest way to compile this package is:
1. 'cd' to the directory containing the package's source code and type
'./configure' to configure the package for your system.
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system.
Running 'configure' might take a while. While running, it prints
Running `configure' might take a while. While running, it prints
some messages telling which features it is checking for.
2. Type 'make' to compile the package.
2. Type `make' to compile the package.
3. Optionally, type 'make check' to run any self-tests that come with
3. Optionally, type `make check' to run any self-tests that come with
the package, generally using the just-built uninstalled binaries.
4. Type 'make install' to install the programs and any data files and
4. Type `make install' to install the programs and any data files and
documentation. When installing into a prefix owned by root, it is
recommended that the package be configured and built as a regular
user, and only the 'make install' phase executed with root
user, and only the `make install' phase executed with root
privileges.
5. Optionally, type 'make installcheck' to repeat any self-tests, but
5. Optionally, type `make installcheck' to repeat any self-tests, but
this time using the binaries in their final installed location.
This target does not install anything. Running this target as a
regular user, particularly if the prior 'make install' required
regular user, particularly if the prior `make install' required
root privileges, verifies that the installation completed
correctly.
6. You can remove the program binaries and object files from the
source code directory by typing 'make clean'. To also remove the
files that 'configure' created (so you can compile the package for
a different kind of computer), type 'make distclean'. There is
also a 'make maintainer-clean' target, but that is intended mainly
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
7. Often, you can also type 'make uninstall' to remove the installed
7. Often, you can also type `make uninstall' to remove the installed
files again. In practice, not all packages have tested that
uninstallation works correctly, even though it is required by the
GNU Coding Standards.
8. Some packages, particularly those that use Automake, provide 'make
8. Some packages, particularly those that use Automake, provide `make
distcheck', which can by used by developers to test that all other
targets like 'make install' and 'make uninstall' work correctly.
targets like `make install' and `make uninstall' work correctly.
This target is generally not run by end users.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the 'configure' script does not know about. Run './configure --help'
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
You can give 'configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here is
an example:
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c99 CFLAGS=-g LIBS=-lposix
@ -110,23 +111,23 @@ an example:
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you can use GNU 'make'. 'cd' to the
own directory. To do this, you can use GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the 'configure' script. 'configure' automatically checks for the source
code in the directory that 'configure' is in and in '..'. This is known
as a "VPATH" build.
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'. This
is known as a "VPATH" build.
With a non-GNU 'make', it is safer to compile the package for one
With a non-GNU `make', it is safer to compile the package for one
architecture at a time in the source code directory. After you have
installed the package for one architecture, use 'make distclean' before
installed the package for one architecture, use `make distclean' before
reconfiguring for another architecture.
On MacOS X 10.5 and later systems, you can create libraries and
executables that work on multiple system types--known as "fat" or
"universal" binaries--by specifying multiple '-arch' options to the
compiler but only a single '-arch' option to the preprocessor. Like
"universal" binaries--by specifying multiple `-arch' options to the
compiler but only a single `-arch' option to the preprocessor. Like
this:
./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
@ -135,104 +136,100 @@ this:
This is not guaranteed to produce working output in all cases, you
may have to build one architecture at a time and combine the results
using the 'lipo' tool if you have problems.
using the `lipo' tool if you have problems.
Installation Names
==================
By default, 'make install' installs the package's commands under
'/usr/local/bin', include files under '/usr/local/include', etc. You
can specify an installation prefix other than '/usr/local' by giving
'configure' the option '--prefix=PREFIX', where PREFIX must be an
By default, `make install' installs the package's commands under
`/usr/local/bin', include files under `/usr/local/include', etc. You
can specify an installation prefix other than `/usr/local' by giving
`configure' the option `--prefix=PREFIX', where PREFIX must be an
absolute file name.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
pass the option `--exec-prefix=PREFIX' to `configure', the package uses
PREFIX as the prefix for installing programs and libraries.
Documentation and other data files still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like '--bindir=DIR' to specify different values for particular
kinds of files. Run 'configure --help' for a list of the directories
you can set and what kinds of files go in them. In general, the default
for these options is expressed in terms of '${prefix}', so that
specifying just '--prefix' will affect all of the other directory
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them. In general, the
default for these options is expressed in terms of `${prefix}', so that
specifying just `--prefix' will affect all of the other directory
specifications that were not explicitly provided.
The most portable way to affect installation locations is to pass the
correct locations to 'configure'; however, many packages provide one or
correct locations to `configure'; however, many packages provide one or
both of the following shortcuts of passing variable assignments to the
'make install' command line to change installation locations without
`make install' command line to change installation locations without
having to reconfigure or recompile.
The first method involves providing an override variable for each
affected directory. For example, 'make install
affected directory. For example, `make install
prefix=/alternate/directory' will choose an alternate location for all
directory configuration variables that were expressed in terms of
'${prefix}'. Any directories that were specified during 'configure',
but not in terms of '${prefix}', must each be overridden at install time
for the entire installation to be relocated. The approach of makefile
variable overrides for each directory variable is required by the GNU
Coding Standards, and ideally causes no recompilation. However, some
platforms have known limitations with the semantics of shared libraries
that end up requiring recompilation when using this method, particularly
noticeable in packages that use GNU Libtool.
`${prefix}'. Any directories that were specified during `configure',
but not in terms of `${prefix}', must each be overridden at install
time for the entire installation to be relocated. The approach of
makefile variable overrides for each directory variable is required by
the GNU Coding Standards, and ideally causes no recompilation.
However, some platforms have known limitations with the semantics of
shared libraries that end up requiring recompilation when using this
method, particularly noticeable in packages that use GNU Libtool.
The second method involves providing the 'DESTDIR' variable. For
example, 'make install DESTDIR=/alternate/directory' will prepend
'/alternate/directory' before all installation names. The approach of
'DESTDIR' overrides is not required by the GNU Coding Standards, and
The second method involves providing the `DESTDIR' variable. For
example, `make install DESTDIR=/alternate/directory' will prepend
`/alternate/directory' before all installation names. The approach of
`DESTDIR' overrides is not required by the GNU Coding Standards, and
does not work on platforms that have drive letters. On the other hand,
it does better at avoiding recompilation issues, and works well even
when some directory options were not specified in terms of '${prefix}'
at 'configure' time.
when some directory options were not specified in terms of `${prefix}'
at `configure' time.
Optional Features
=================
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving 'configure' the
option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Some packages pay attention to '--enable-FEATURE' options to
'configure', where FEATURE indicates an optional part of the package.
They may also pay attention to '--with-PACKAGE' options, where PACKAGE
is something like 'gnu-as' or 'x' (for the X Window System). The
'README' should mention any '--enable-' and '--with-' options that the
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
For packages that use the X Window System, 'configure' can usually
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the 'configure' options '--x-includes=DIR' and
'--x-libraries=DIR' to specify their locations.
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Some packages offer the ability to configure how verbose the
execution of 'make' will be. For these packages, running './configure
execution of `make' will be. For these packages, running `./configure
--enable-silent-rules' sets the default to minimal output, which can be
overridden with 'make V=1'; while running './configure
overridden with `make V=1'; while running `./configure
--disable-silent-rules' sets the default to verbose, which can be
overridden with 'make V=0'.
overridden with `make V=0'.
Particular systems
==================
On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC
is not installed, it is recommended to use the following options in
On HP-UX, the default C compiler is not ANSI C compatible. If GNU
CC is not installed, it is recommended to use the following options in
order to use an ANSI C compiler:
./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
and if that doesn't work, install pre-built binaries of GCC for HP-UX.
HP-UX 'make' updates targets which have the same timestamps as their
prerequisites, which makes it generally unusable when shipped generated
files such as 'configure' are involved. Use GNU 'make' instead.
On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
parse its '<wchar.h>' header file. The option '-nodtk' can be used as a
workaround. If GNU CC is not installed, it is therefore recommended to
try
parse its `<wchar.h>' header file. The option `-nodtk' can be used as
a workaround. If GNU CC is not installed, it is therefore recommended
to try
./configure CC="cc"
@ -240,26 +237,26 @@ and if that doesn't work, try
./configure CC="cc -nodtk"
On Solaris, don't put '/usr/ucb' early in your 'PATH'. This
On Solaris, don't put `/usr/ucb' early in your `PATH'. This
directory contains several dysfunctional programs; working variants of
these programs are available in '/usr/bin'. So, if you need '/usr/ucb'
in your 'PATH', put it _after_ '/usr/bin'.
these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
in your `PATH', put it _after_ `/usr/bin'.
On Haiku, software installed for all users goes in '/boot/common',
not '/usr/local'. It is recommended to use the following options:
On Haiku, software installed for all users goes in `/boot/common',
not `/usr/local'. It is recommended to use the following options:
./configure --prefix=/boot/common
Specifying the System Type
==========================
There may be some features 'configure' cannot figure out
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, 'configure' can figure that out, but if it prints
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
'--build=TYPE' option. TYPE can either be a short name for the system
type, such as 'sun4', or a canonical name which has the form:
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
@ -268,101 +265,101 @@ where SYSTEM can have one of these forms:
OS
KERNEL-OS
See the file 'config.sub' for the possible values of each field. If
'config.sub' isn't included in this package, then this package doesn't
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the option '--target=TYPE' to select the type of system they will
use the option `--target=TYPE' to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with '--host=TYPE'.
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for 'configure' scripts to share,
you can create a site shell script called 'config.site' that gives
default values for variables like 'CC', 'cache_file', and 'prefix'.
'configure' looks for 'PREFIX/share/config.site' if it exists, then
'PREFIX/etc/config.site' if it exists. Or, you can set the
'CONFIG_SITE' environment variable to the location of the site script.
A warning: not all 'configure' scripts look for a site script.
If you want to set default values for `configure' scripts to share,
you can create a site shell script called `config.site' that gives
default values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to 'configure'. However, some packages may run
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the 'configure' command line, using 'VAR=value'. For example:
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified 'gcc' to be used as the C compiler (unless it is
causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script).
Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
Autoconf limitation. Until the limitation is lifted, you can use this
workaround:
Unfortunately, this technique does not work for `CONFIG_SHELL' due to
an Autoconf bug. Until the bug is fixed you can use this workaround:
CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
'configure' Invocation
`configure' Invocation
======================
'configure' recognizes the following options to control how it
`configure' recognizes the following options to control how it
operates.
'--help'
'-h'
Print a summary of all of the options to 'configure', and exit.
`--help'
`-h'
Print a summary of all of the options to `configure', and exit.
'--help=short'
'--help=recursive'
`--help=short'
`--help=recursive'
Print a summary of the options unique to this package's
'configure', and exit. The 'short' variant lists options used only
in the top level, while the 'recursive' variant lists options also
present in any nested packages.
`configure', and exit. The `short' variant lists options used
only in the top level, while the `recursive' variant lists options
also present in any nested packages.
'--version'
'-V'
Print the version of Autoconf used to generate the 'configure'
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
'--cache-file=FILE'
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally 'config.cache'. FILE defaults to '/dev/null' to
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
'--config-cache'
'-C'
Alias for '--cache-file=config.cache'.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
'--quiet'
'--silent'
'-q'
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to '/dev/null' (any error
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
'--srcdir=DIR'
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
'configure' can determine that directory automatically.
`configure' can determine that directory automatically.
'--prefix=DIR'
Use DIR as the installation prefix. *note Installation Names:: for
more details, including other options available for fine-tuning the
installation locations.
`--prefix=DIR'
Use DIR as the installation prefix. *note Installation Names::
for more details, including other options available for fine-tuning
the installation locations.
'--no-create'
'-n'
`--no-create'
`-n'
Run the configure checks, but stop before creating any output
files.
'configure' also accepts some other, not widely useful, options. Run
'configure --help' for more details.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.

View file

@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -15,61 +16,6 @@
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@ -89,44 +35,30 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = .
DIST_COMMON = README $(am__configure_deps) \
$(srcdir)/../../config.guess $(srcdir)/../../config.sub \
$(srcdir)/../../install-sh $(srcdir)/../../ltmain.sh \
$(srcdir)/../../missing $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(srcdir)/portaudiocpp.pc.in \
$(top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
$(am__configure_deps) $(am__DIST_COMMON)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES = portaudiocpp.pc
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
ctags-recursive dvi-recursive html-recursive info-recursive \
install-data-recursive install-dvi-recursive \
install-exec-recursive install-html-recursive \
install-info-recursive install-pdf-recursive \
install-ps-recursive install-recursive installcheck-recursive \
installdirs-recursive pdf-recursive ps-recursive \
tags-recursive uninstall-recursive
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@ -148,53 +80,23 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
DATA = $(pkgconfig_DATA)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
$(RECURSIVE_TARGETS) \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
cscope distdir distdir-am dist dist-all distcheck
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir dist dist-all distcheck
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/portaudiocpp.pc.in \
AUTHORS COPYING ChangeLog INSTALL NEWS README compile \
config.guess config.sub install-sh ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
if test -d "$(distdir)"; then \
find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -rf "$(distdir)" \
|| { sleep 5 && rm -rf "$(distdir)"; }; \
else :; fi
am__post_remove_distdir = $(am__remove_distdir)
{ test ! -d "$(distdir)" \
|| { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr "$(distdir)"; }; }
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@ -222,16 +124,10 @@ am__relativize = \
reldir="$$dir2"
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
DIST_TARGETS = dist-gzip
# Exists only to be overridden by the user if desired.
AM_DISTCHECK_DVI_TARGET = dvi
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@ -241,9 +137,8 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@ -259,7 +154,6 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
@ -276,11 +170,9 @@ LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
LT_VERSION_INFO = @LT_VERSION_INFO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
@ -307,7 +199,6 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
@ -341,6 +232,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@ -348,7 +240,6 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -365,29 +256,30 @@ pkgconfig_DATA = portaudiocpp.pc
all: all-recursive
.SUFFIXES:
am--refresh: Makefile
am--refresh:
@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
$(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@ -411,11 +303,8 @@ distclean-libtool:
-rm -f libtool config.lt
install-pkgconfigDATA: $(pkgconfig_DATA)
@$(NORMAL_INSTALL)
test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@ -429,28 +318,27 @@ uninstall-pkgconfigDATA:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
# This directory's subdirectories are mostly independent; you can cd
# into them and run 'make' without going through this Makefile.
# To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in 'config.status', edit 'config.status'
# (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
@fail=; \
if $(am__make_keepgoing); then \
failcom='fail=yes'; \
else \
failcom='exit 1'; \
fi; \
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
for subdir in $$list; do \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
@ -465,12 +353,57 @@ $(am__recursive_targets):
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-recursive
TAGS: tags
$(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@ -486,23 +419,32 @@ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
$(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-recursive
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@ -511,35 +453,11 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscope: cscope.files
test ! -s cscope.files \
|| $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
clean-cscope:
-rm -f cscope.files
cscope.files: clean-cscope cscopelist
cscopelist: cscopelist-recursive
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
distdir: $(DISTFILES)
$(am__remove_distdir)
test -d "$(distdir)" || mkdir "$(distdir)"
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@ -552,14 +470,14 @@ distdir-am: $(DISTFILES)
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
@ -573,10 +491,13 @@ distdir-am: $(DISTFILES)
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
$(am__make_dryrun) \
|| test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
@ -604,47 +525,37 @@ distdir-am: $(DISTFILES)
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r "$(distdir)"
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
$(am__post_remove_distdir)
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
$(am__post_remove_distdir)
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-lzip: distdir
tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
$(am__post_remove_distdir)
dist-lzma: distdir
tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
$(am__remove_distdir)
dist-xz: distdir
tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
$(am__post_remove_distdir)
dist-zstd: distdir
tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
$(am__post_remove_distdir)
tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
$(am__remove_distdir)
dist-tarZ: distdir
@echo WARNING: "Support for distribution archives compressed with" \
"legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
$(am__remove_distdir)
dist-shar: distdir
@echo WARNING: "Support for shar distribution archives is" \
"deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
$(am__post_remove_distdir)
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__post_remove_distdir)
$(am__remove_distdir)
dist dist-all:
$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
$(am__post_remove_distdir)
dist dist-all: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
@ -652,37 +563,33 @@ dist dist-all:
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.lz*) \
lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
*.tar.lzma*) \
lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
*.tar.xz*) \
xz -dc $(distdir).tar.xz | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
*.tar.zst*) \
zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
chmod -R a-w $(distdir); chmod a+w $(distdir)
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
&& $(am__cd) $(distdir)/_build/sub \
&& ../../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
&& $(am__cd) $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=../.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
@ -703,21 +610,13 @@ distcheck: dist
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
&& cd "$$am__cwd" \
|| exit 1
$(am__post_remove_distdir)
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
distuninstallcheck:
@test -n '$(distuninstallcheck_dir)' || { \
echo 'ERROR: trying to run $@ with an empty' \
'$$(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
$(am__cd) '$(distuninstallcheck_dir)' || { \
echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
exit 1; \
}; \
test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
@$(am__cd) '$(distuninstallcheck_dir)' \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
@ -751,15 +650,10 @@ install-am: all-am
installcheck: installcheck-recursive
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
@ -841,26 +735,25 @@ ps-am:
uninstall-am: uninstall-pkgconfigDATA
.MAKE: $(am__recursive_targets) install-am install-strip
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
clean-libtool cscope cscopelist-am ctags ctags-am dist \
dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
dist-xz dist-zip dist-zstd distcheck distclean \
distclean-generic distclean-libtool distclean-tags \
distcleancheck distdir distuninstallcheck dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-pkgconfigDATA install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs installdirs-am \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am uninstall-pkgconfigDATA
.PRECIOUS: Makefile
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am am--refresh check check-am clean clean-generic \
clean-libtool ctags ctags-recursive dist dist-all dist-bzip2 \
dist-gzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
distcheck distclean distclean-generic distclean-libtool \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-pkgconfigDATA install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
installdirs-am maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-recursive uninstall uninstall-am \
uninstall-pkgconfigDATA
# Tell versions [3.59,3.63) of GNU make to not export all variables.

5557
bindings/cpp/aclocal.m4 vendored

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1,382 +0,0 @@
# This file was generated by Autom4te 2.71.
# It contains the lists of macros which have been traced.
# It can be safely removed.
@request = (
bless( [
'0',
1,
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf'
],
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf/autoconf/autoconf.m4f',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/internal/ac-config-macro-dirs.m4',
'/usr/local/share/aclocal/libtool.m4',
'/usr/local/share/aclocal/ltargz.m4',
'/usr/local/share/aclocal/ltdl.m4',
'/usr/local/share/aclocal/ltoptions.m4',
'/usr/local/share/aclocal/ltsugar.m4',
'/usr/local/share/aclocal/ltversion.m4',
'/usr/local/share/aclocal/lt~obsolete.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/amversion.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/auxdir.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/cond.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/depend.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/depout.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/init.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/install-sh.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/lead-dot.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/maintainer.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/make.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/missing.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/options.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/prog-cc-c-o.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/runlog.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/sanity.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/silent.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/strip.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/substnot.m4',
'/usr/local/Cellar/automake/1.16.5/share/aclocal-1.16/tar.m4',
'configure.ac'
],
{
'AC_LIBTOOL_LINKER_OPTION' => 1,
'LT_WITH_LTDL' => 1,
'AC_LIBLTDL_CONVENIENCE' => 1,
'AC_LTDL_SYSSEARCHPATH' => 1,
'LT_LIB_DLLOAD' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
'LTOBSOLETE_VERSION' => 1,
'_AM_MANGLE_OPTION' => 1,
'AM_DEP_TRACK' => 1,
'LTDL_INSTALLABLE' => 1,
'AM_PROG_INSTALL_SH' => 1,
'AM_PROG_LD' => 1,
'AM_SET_DEPDIR' => 1,
'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
'AM_INIT_AUTOMAKE' => 1,
'm4_pattern_forbid' => 1,
'_AC_PROG_LIBTOOL' => 1,
'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
'LT_SYS_SYMBOL_USCORE' => 1,
'AC_LIBTOOL_RC' => 1,
'_LT_REQUIRED_DARWIN_CHECKS' => 1,
'AM_DISABLE_SHARED' => 1,
'AC_PATH_TOOL_PREFIX' => 1,
'_LT_AC_LANG_CXX_CONFIG' => 1,
'LT_AC_PROG_SED' => 1,
'AC_PROG_NM' => 1,
'AM_ENABLE_SHARED' => 1,
'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
'LTDL_CONVENIENCE' => 1,
'AC_CONFIG_MACRO_DIR' => 1,
'_LT_AC_LANG_GCJ_CONFIG' => 1,
'AM_PROG_CC_C_O' => 1,
'LT_AC_PROG_EGREP' => 1,
'AC_LTDL_SHLIBEXT' => 1,
'AM_ENABLE_STATIC' => 1,
'_LT_COMPILER_BOILERPLATE' => 1,
'_AM_SET_OPTIONS' => 1,
'_LT_AC_LANG_F77_CONFIG' => 1,
'AM_SILENT_RULES' => 1,
'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
'_AM_CONFIG_MACRO_DIRS' => 1,
'm4_pattern_allow' => 1,
'AU_DEFUN' => 1,
'AM_RUN_LOG' => 1,
'AC_PROG_LD_RELOAD_FLAG' => 1,
'_AM_DEPENDENCIES' => 1,
'LTOPTIONS_VERSION' => 1,
'AM_SUBST_NOTMAKE' => 1,
'LT_SYS_DLSEARCH_PATH' => 1,
'LT_FUNC_DLSYM_USCORE' => 1,
'AC_LIBTOOL_CXX' => 1,
'AC_LTDL_SYMBOL_USCORE' => 1,
'AM_PROG_LIBTOOL' => 1,
'LT_PROG_GO' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_LTDL_SHLIBPATH' => 1,
'_AM_SET_OPTION' => 1,
'AC_DEFUN' => 1,
'AM_CONDITIONAL' => 1,
'LT_INIT' => 1,
'_LT_AC_CHECK_DLFCN' => 1,
'_LT_PROG_F77' => 1,
'_AM_IF_OPTION' => 1,
'AC_LIBTOOL_SETUP' => 1,
'_LT_PATH_TOOL_PREFIX' => 1,
'AC_PROG_LD_GNU' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'AC_LIBTOOL_PROG_CC_C_O' => 1,
'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
'AC_CHECK_LIBM' => 1,
'_m4_warn' => 1,
'AC_LIBTOOL_FC' => 1,
'LT_PATH_LD' => 1,
'_LT_WITH_SYSROOT' => 1,
'LT_SYS_DLOPEN_SELF' => 1,
'_LT_PROG_CXX' => 1,
'LT_AC_PROG_RC' => 1,
'_LT_AC_LOCK' => 1,
'LT_SYS_MODULE_EXT' => 1,
'AM_DISABLE_STATIC' => 1,
'_LT_LIBOBJ' => 1,
'_LT_AC_PROG_CXXCPP' => 1,
'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
'LTDL_INIT' => 1,
'LT_OUTPUT' => 1,
'LT_PROG_GCJ' => 1,
'_LT_COMPILER_OPTION' => 1,
'LT_SYS_DLOPEN_DEPLIBS' => 1,
'AC_WITH_LTDL' => 1,
'_LT_LINKER_BOILERPLATE' => 1,
'_LT_AC_SHELL_INIT' => 1,
'LT_SUPPORTED_TAG' => 1,
'AC_LTDL_ENABLE_INSTALL' => 1,
'LTVERSION_VERSION' => 1,
'AC_LIBTOOL_WIN32_DLL' => 1,
'AM_MISSING_HAS_RUN' => 1,
'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
'_LT_AC_LANG_RC_CONFIG' => 1,
'AC_DISABLE_STATIC' => 1,
'AC_DISABLE_FAST_INSTALL' => 1,
'_LT_PROG_LTMAIN' => 1,
'_LT_AC_PROG_ECHO_BACKSLASH' => 1,
'AM_AUX_DIR_EXPAND' => 1,
'_LT_AC_SYS_COMPILER' => 1,
'AM_SANITY_CHECK' => 1,
'_LT_PROG_FC' => 1,
'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
'AC_LIBTOOL_GCJ' => 1,
'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
'AC_PROG_LIBTOOL' => 1,
'_AM_AUTOCONF_VERSION' => 1,
'AC_ENABLE_FAST_INSTALL' => 1,
'LT_PATH_NM' => 1,
'_LT_CC_BASENAME' => 1,
'AC_DEFUN_ONCE' => 1,
'_LTDL_SETUP' => 1,
'_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
'AC_LIBTOOL_CONFIG' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'AC_LTDL_OBJDIR' => 1,
'_LT_AC_FILE_LTDLL_C' => 1,
'AC_LTDL_DLSYM_USCORE' => 1,
'AC_LIBTOOL_OBJDIR' => 1,
'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
'AC_LIBLTDL_INSTALLABLE' => 1,
'AC_LTDL_DLLIB' => 1,
'AC_LIBTOOL_LANG_C_CONFIG' => 1,
'AC_DISABLE_SHARED' => 1,
'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
'_LT_AC_TAGVAR' => 1,
'AC_ENABLE_SHARED' => 1,
'AM_PROG_NM' => 1,
'AC_LIBTOOL_COMPILER_OPTION' => 1,
'AM_PROG_INSTALL_STRIP' => 1,
'AC_LIBTOOL_PICMODE' => 1,
'AM_SET_LEADING_DOT' => 1,
'AC_DEPLIBS_CHECK_METHOD' => 1,
'_LT_PREPARE_SED_QUOTE_VARS' => 1,
'AC_LIBTOOL_DLOPEN_SELF' => 1,
'AC_LIB_LTDL' => 1,
'LT_LIB_M' => 1,
'AC_ENABLE_STATIC' => 1,
'AC_PATH_MAGIC' => 1,
'AC_LIBTOOL_F77' => 1,
'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
'LT_LANG' => 1,
'_LT_LINKER_OPTION' => 1,
'AM_MISSING_PROG' => 1,
'LTSUGAR_VERSION' => 1,
'include' => 1,
'_AM_PROG_CC_C_O' => 1,
'LT_AC_PROG_GCJ' => 1,
'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
'_LT_AC_TAGCONFIG' => 1,
'_AM_PROG_TAR' => 1,
'AM_MAKE_INCLUDE' => 1,
'_LT_AC_LANG_F77' => 1,
'AC_LTDL_PREOPEN' => 1,
'AC_LIBTOOL_DLOPEN' => 1,
'LT_CMD_MAX_LEN' => 1,
'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
'_LT_AC_SYS_LIBPATH_AIX' => 1,
'_LT_AC_TRY_DLOPEN_SELF' => 1,
'AC_PROG_EGREP' => 1,
'LT_PROG_RC' => 1,
'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
'_AC_AM_CONFIG_HEADER_HOOK' => 1,
'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
'LT_FUNC_ARGZ' => 1,
'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
'_LT_PROG_ECHO_BACKSLASH' => 1,
'_LT_AC_LANG_CXX' => 1,
'LT_SYS_MODULE_PATH' => 1,
'_LT_AC_LANG_C_CONFIG' => 1,
'AC_PROG_LD' => 1,
'_LT_DLL_DEF_P' => 1,
'_LT_AC_LANG_GCJ' => 1,
'm4_include' => 1
}
], 'Autom4te::Request' ),
bless( [
'1',
1,
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf'
],
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf/autoconf/autoconf.m4f',
'aclocal.m4',
'configure.ac'
],
{
'_m4_warn' => 1,
'AC_PROG_LIBTOOL' => 1,
'AM_PROG_CC_C_O' => 1,
'AM_PROG_FC_C_O' => 1,
'AM_PROG_MKDIR_P' => 1,
'sinclude' => 1,
'GTK_DOC_CHECK' => 1,
'AC_LIBSOURCE' => 1,
'AC_CONFIG_FILES' => 1,
'AM_PROG_F77_C_O' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'm4_sinclude' => 1,
'AM_PROG_AR' => 1,
'm4_include' => 1,
'AM_NLS' => 1,
'AM_XGETTEXT_OPTION' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'AM_SILENT_RULES' => 1,
'm4_pattern_allow' => 1,
'_AM_COND_ENDIF' => 1,
'AC_CANONICAL_HOST' => 1,
'AM_PATH_GUILE' => 1,
'AC_SUBST_TRACE' => 1,
'IT_PROG_INTLTOOL' => 1,
'AM_PROG_LIBTOOL' => 1,
'AM_ENABLE_MULTILIB' => 1,
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_CANONICAL_BUILD' => 1,
'AM_PROG_MOC' => 1,
'AC_CONFIG_LIBOBJ_DIR' => 1,
'AM_PROG_CXX_C_O' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'LT_SUPPORTED_TAG' => 1,
'AM_EXTRA_RECURSIVE_TARGETS' => 1,
'_AM_COND_ELSE' => 1,
'AC_FC_PP_DEFINE' => 1,
'AM_MAKEFILE_INCLUDE' => 1,
'AH_OUTPUT' => 1,
'AM_POT_TOOLS' => 1,
'AC_FC_FREEFORM' => 1,
'AC_FC_SRCEXT' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AC_CONFIG_HEADERS' => 1,
'AC_CANONICAL_TARGET' => 1,
'_LT_AC_TAGCONFIG' => 1,
'include' => 1,
'_AM_MAKEFILE_INCLUDE' => 1,
'AM_INIT_AUTOMAKE' => 1,
'm4_pattern_forbid' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_SUBST' => 1,
'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
'AM_CONDITIONAL' => 1,
'AC_CONFIG_LINKS' => 1,
'LT_INIT' => 1,
'AC_FC_PP_SRCEXT' => 1,
'AM_GNU_GETTEXT' => 1,
'_AM_COND_IF' => 1,
'AC_INIT' => 1
}
], 'Autom4te::Request' ),
bless( [
'2',
1,
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf'
],
[
'/usr/local/Cellar/autoconf/2.71/share/autoconf/autoconf/autoconf.m4f',
'aclocal.m4',
'/usr/local/Cellar/autoconf/2.71/share/autoconf/autoconf/trailer.m4',
'configure.ac'
],
{
'GTK_DOC_CHECK' => 1,
'AC_LIBSOURCE' => 1,
'AM_PROG_MKDIR_P' => 1,
'sinclude' => 1,
'AM_PROG_CC_C_O' => 1,
'AM_PROG_FC_C_O' => 1,
'_m4_warn' => 1,
'AC_PROG_LIBTOOL' => 1,
'm4_sinclude' => 1,
'AM_PROG_AR' => 1,
'_AM_SUBST_NOTMAKE' => 1,
'AC_REQUIRE_AUX_FILE' => 1,
'AM_PROG_F77_C_O' => 1,
'AC_CANONICAL_SYSTEM' => 1,
'AC_CONFIG_FILES' => 1,
'm4_pattern_allow' => 1,
'_AM_COND_ENDIF' => 1,
'LT_CONFIG_LTDL_DIR' => 1,
'AM_SILENT_RULES' => 1,
'AM_XGETTEXT_OPTION' => 1,
'm4_include' => 1,
'AM_NLS' => 1,
'AC_SUBST_TRACE' => 1,
'IT_PROG_INTLTOOL' => 1,
'AC_CANONICAL_HOST' => 1,
'AM_PATH_GUILE' => 1,
'AC_CONFIG_AUX_DIR' => 1,
'LT_SUPPORTED_TAG' => 1,
'AM_EXTRA_RECURSIVE_TARGETS' => 1,
'AM_PROG_MOC' => 1,
'AC_CONFIG_LIBOBJ_DIR' => 1,
'AM_PROG_CXX_C_O' => 1,
'AM_MAINTAINER_MODE' => 1,
'AC_CANONICAL_BUILD' => 1,
'AM_PROG_LIBTOOL' => 1,
'AM_ENABLE_MULTILIB' => 1,
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
'AM_AUTOMAKE_VERSION' => 1,
'AC_FC_SRCEXT' => 1,
'AC_DEFINE_TRACE_LITERAL' => 1,
'AH_OUTPUT' => 1,
'AM_MAKEFILE_INCLUDE' => 1,
'AM_POT_TOOLS' => 1,
'AC_FC_FREEFORM' => 1,
'_AM_COND_ELSE' => 1,
'AC_FC_PP_DEFINE' => 1,
'_AM_MAKEFILE_INCLUDE' => 1,
'AM_INIT_AUTOMAKE' => 1,
'm4_pattern_forbid' => 1,
'include' => 1,
'AC_CANONICAL_TARGET' => 1,
'AC_CONFIG_HEADERS' => 1,
'_LT_AC_TAGCONFIG' => 1,
'AM_GNU_GETTEXT' => 1,
'AC_FC_PP_SRCEXT' => 1,
'AC_INIT' => 1,
'_AM_COND_IF' => 1,
'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
'AM_CONDITIONAL' => 1,
'LT_INIT' => 1,
'AC_CONFIG_LINKS' => 1,
'AC_CONFIG_SUBDIRS' => 1,
'AC_SUBST' => 1
}
], 'Autom4te::Request' )
);

File diff suppressed because it is too large Load diff

View file

@ -1,618 +0,0 @@
m4trace:aclocal.m4:9759: -1- AC_SUBST([am__quote])
m4trace:aclocal.m4:9759: -1- AC_SUBST_TRACE([am__quote])
m4trace:aclocal.m4:9759: -1- m4_pattern_allow([^am__quote$])
m4trace:configure.ac:15: -1- AC_INIT([PortAudioCpp], [12])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?A[CHUM]_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([_AC_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
m4trace:configure.ac:15: -1- m4_pattern_allow([^AS_FLAGS$])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?m4_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^dnl$])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?AS_])
m4trace:configure.ac:15: -1- AC_SUBST([SHELL])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([SHELL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^SHELL$])
m4trace:configure.ac:15: -1- AC_SUBST([PATH_SEPARATOR])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PATH_SEPARATOR$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_NAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_NAME$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_STRING])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_URL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:15: -1- AC_SUBST([exec_prefix], [NONE])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([exec_prefix])
m4trace:configure.ac:15: -1- m4_pattern_allow([^exec_prefix$])
m4trace:configure.ac:15: -1- AC_SUBST([prefix], [NONE])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([prefix])
m4trace:configure.ac:15: -1- m4_pattern_allow([^prefix$])
m4trace:configure.ac:15: -1- AC_SUBST([program_transform_name], [s,x,x,])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([program_transform_name])
m4trace:configure.ac:15: -1- m4_pattern_allow([^program_transform_name$])
m4trace:configure.ac:15: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([bindir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^bindir$])
m4trace:configure.ac:15: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sbindir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sbindir$])
m4trace:configure.ac:15: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([libexecdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^libexecdir$])
m4trace:configure.ac:15: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([datarootdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^datarootdir$])
m4trace:configure.ac:15: -1- AC_SUBST([datadir], ['${datarootdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([datadir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^datadir$])
m4trace:configure.ac:15: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sysconfdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sysconfdir$])
m4trace:configure.ac:15: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sharedstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sharedstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([localstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^localstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([runstatedir], ['${localstatedir}/run'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([runstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^runstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([includedir], ['${prefix}/include'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([includedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^includedir$])
m4trace:configure.ac:15: -1- AC_SUBST([oldincludedir], ['/usr/include'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([oldincludedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^oldincludedir$])
m4trace:configure.ac:15: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
['${datarootdir}/doc/${PACKAGE_TARNAME}'],
['${datarootdir}/doc/${PACKAGE}'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([docdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^docdir$])
m4trace:configure.ac:15: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([infodir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^infodir$])
m4trace:configure.ac:15: -1- AC_SUBST([htmldir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([htmldir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^htmldir$])
m4trace:configure.ac:15: -1- AC_SUBST([dvidir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([dvidir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^dvidir$])
m4trace:configure.ac:15: -1- AC_SUBST([pdfdir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([pdfdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^pdfdir$])
m4trace:configure.ac:15: -1- AC_SUBST([psdir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([psdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^psdir$])
m4trace:configure.ac:15: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([libdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^libdir$])
m4trace:configure.ac:15: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([localedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^localedir$])
m4trace:configure.ac:15: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([mandir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^mandir$])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_NAME$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
@%:@undef PACKAGE_NAME])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
@%:@undef PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
@%:@undef PACKAGE_VERSION])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
@%:@undef PACKAGE_STRING])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
@%:@undef PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
@%:@undef PACKAGE_URL])
m4trace:configure.ac:15: -1- AC_SUBST([DEFS])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([DEFS])
m4trace:configure.ac:15: -1- m4_pattern_allow([^DEFS$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_C])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_C])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_C$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_N])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_N])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_N$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_T])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_T])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_T$])
m4trace:configure.ac:15: -1- AC_SUBST([LIBS])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:15: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:15: -1- AC_SUBST([build_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([build_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^build_alias$])
m4trace:configure.ac:15: -1- AC_SUBST([host_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([host_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^host_alias$])
m4trace:configure.ac:15: -1- AC_SUBST([target_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([target_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^target_alias$])
m4trace:configure.ac:17: -1- AM_INIT_AUTOMAKE
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
m4trace:configure.ac:17: -1- AM_AUTOMAKE_VERSION([1.16.5])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([install-sh])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_PROGRAM])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_SCRIPT])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_DATA])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_DATA])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_DATA$])
m4trace:configure.ac:17: -1- AC_SUBST([am__isrc], [' -I$(srcdir)'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__isrc])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__isrc$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([am__isrc])
m4trace:configure.ac:17: -1- AC_SUBST([CYGPATH_W])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CYGPATH_W])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CYGPATH_W$])
m4trace:configure.ac:17: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([PACKAGE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^PACKAGE$])
m4trace:configure.ac:17: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([VERSION])
m4trace:configure.ac:17: -1- m4_pattern_allow([^VERSION$])
m4trace:configure.ac:17: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^PACKAGE$])
m4trace:configure.ac:17: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
@%:@undef PACKAGE])
m4trace:configure.ac:17: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
m4trace:configure.ac:17: -1- m4_pattern_allow([^VERSION$])
m4trace:configure.ac:17: -1- AH_OUTPUT([VERSION], [/* Version number of package */
@%:@undef VERSION])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([missing])
m4trace:configure.ac:17: -1- AC_SUBST([ACLOCAL])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([ACLOCAL])
m4trace:configure.ac:17: -1- m4_pattern_allow([^ACLOCAL$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOCONF])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOCONF])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOCONF$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOMAKE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOMAKE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOMAKE$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOHEADER])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOHEADER])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOHEADER$])
m4trace:configure.ac:17: -1- AC_SUBST([MAKEINFO])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([MAKEINFO])
m4trace:configure.ac:17: -1- m4_pattern_allow([^MAKEINFO$])
m4trace:configure.ac:17: -1- AC_SUBST([install_sh])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([install_sh])
m4trace:configure.ac:17: -1- m4_pattern_allow([^install_sh$])
m4trace:configure.ac:17: -1- AC_SUBST([STRIP])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([STRIP])
m4trace:configure.ac:17: -1- m4_pattern_allow([^STRIP$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([install-sh])
m4trace:configure.ac:17: -1- AC_SUBST([MKDIR_P])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([MKDIR_P])
m4trace:configure.ac:17: -1- m4_pattern_allow([^MKDIR_P$])
m4trace:configure.ac:17: -1- AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([mkdir_p])
m4trace:configure.ac:17: -1- m4_pattern_allow([^mkdir_p$])
m4trace:configure.ac:17: -1- AC_SUBST([AWK])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AWK])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AWK$])
m4trace:configure.ac:17: -1- AC_SUBST([SET_MAKE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([SET_MAKE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^SET_MAKE$])
m4trace:configure.ac:17: -1- AC_SUBST([am__leading_dot])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__leading_dot])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__leading_dot$])
m4trace:configure.ac:17: -1- AC_SUBST([AMTAR], ['$${TAR-tar}'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AMTAR])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AMTAR$])
m4trace:configure.ac:17: -1- AC_SUBST([am__tar])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__tar])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__tar$])
m4trace:configure.ac:17: -1- AC_SUBST([am__untar])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__untar])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__untar$])
m4trace:configure.ac:17: -1- AC_SUBST([CTAGS])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CTAGS])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CTAGS$])
m4trace:configure.ac:17: -1- AC_SUBST([ETAGS])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([ETAGS])
m4trace:configure.ac:17: -1- m4_pattern_allow([^ETAGS$])
m4trace:configure.ac:17: -1- AC_SUBST([CSCOPE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CSCOPE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CSCOPE$])
m4trace:configure.ac:17: -1- AM_SILENT_RULES
m4trace:configure.ac:17: -1- AC_SUBST([AM_V])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_V])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_V$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_V])
m4trace:configure.ac:17: -1- AC_SUBST([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_DEFAULT_V$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- AC_SUBST([AM_DEFAULT_VERBOSITY])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_DEFAULT_VERBOSITY])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])
m4trace:configure.ac:17: -1- AC_SUBST([AM_BACKSLASH])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_BACKSLASH])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_BACKSLASH$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
m4trace:configure.ac:18: -1- AM_MAINTAINER_MODE
m4trace:configure.ac:18: -1- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
m4trace:configure.ac:18: -1- AC_SUBST([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINTAINER_MODE_TRUE$])
m4trace:configure.ac:18: -1- AC_SUBST([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINTAINER_MODE_FALSE$])
m4trace:configure.ac:18: -1- _AM_SUBST_NOTMAKE([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- _AM_SUBST_NOTMAKE([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- AC_SUBST([MAINT])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINT])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINT$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([LDFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([LDFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^LDFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([LIBS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:35: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([ac_ct_CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([ac_ct_CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^ac_ct_CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([EXEEXT])
m4trace:configure.ac:35: -1- m4_pattern_allow([^EXEEXT$])
m4trace:configure.ac:35: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([OBJEXT])
m4trace:configure.ac:35: -1- m4_pattern_allow([^OBJEXT$])
m4trace:configure.ac:35: -1- AC_REQUIRE_AUX_FILE([compile])
m4trace:configure.ac:35: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([DEPDIR])
m4trace:configure.ac:35: -1- m4_pattern_allow([^DEPDIR$])
m4trace:configure.ac:35: -1- AC_SUBST([am__include])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__include])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__include$])
m4trace:configure.ac:35: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEP_TRUE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEP_TRUE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEP_TRUE$])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEP_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEP_FALSE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEP_FALSE$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- AC_SUBST([am__nodep])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__nodep])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__nodep$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__nodep])
m4trace:configure.ac:35: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CCDEPMODE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CCDEPMODE$])
m4trace:configure.ac:35: -1- AM_CONDITIONAL([am__fastdepCC], [
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3])
m4trace:configure.ac:35: -1- AC_SUBST([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
m4trace:configure.ac:35: -1- AC_SUBST([am__fastdepCC_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
m4trace:configure.ac:36: -1- AC_SUBST([CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([CXXFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXXFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXXFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([LDFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([LDFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^LDFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([LIBS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:36: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([ac_ct_CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^ac_ct_CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([CXXDEPMODE], [depmode=$am_cv_CXX_dependencies_compiler_type])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXXDEPMODE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXXDEPMODE$])
m4trace:configure.ac:36: -1- AM_CONDITIONAL([am__fastdepCXX], [
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCXX_FALSE])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([am__fastdepCXX_FALSE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
m4trace:configure.ac:36: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
m4trace:configure.ac:37: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_WIN32_DLL' is obsolete.
You should run autoupdate.], [aclocal.m4:8510: AC_LIBTOOL_WIN32_DLL is expanded from...
configure.ac:37: the top level])
m4trace:configure.ac:37: -1- AC_CANONICAL_HOST
m4trace:configure.ac:37: -1- AC_CANONICAL_BUILD
m4trace:configure.ac:37: -1- AC_REQUIRE_AUX_FILE([config.sub])
m4trace:configure.ac:37: -1- AC_REQUIRE_AUX_FILE([config.guess])
m4trace:configure.ac:37: -1- AC_SUBST([build], [$ac_cv_build])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build$])
m4trace:configure.ac:37: -1- AC_SUBST([build_cpu], [$[1]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_cpu])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_cpu$])
m4trace:configure.ac:37: -1- AC_SUBST([build_vendor], [$[2]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_vendor])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_vendor$])
m4trace:configure.ac:37: -1- AC_SUBST([build_os])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_os])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_os$])
m4trace:configure.ac:37: -1- AC_SUBST([host], [$ac_cv_host])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host$])
m4trace:configure.ac:37: -1- AC_SUBST([host_cpu], [$[1]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_cpu])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_cpu$])
m4trace:configure.ac:37: -1- AC_SUBST([host_vendor], [$[2]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_vendor])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_vendor$])
m4trace:configure.ac:37: -1- AC_SUBST([host_os])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_os])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_os$])
m4trace:configure.ac:37: -1- AC_SUBST([AS])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([AS])
m4trace:configure.ac:37: -1- m4_pattern_allow([^AS$])
m4trace:configure.ac:37: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:37: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:37: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:37: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:37: -1- _m4_warn([obsolete], [AC_LIBTOOL_WIN32_DLL: Remove this warning and the call to _LT_SET_OPTION when you
put the 'win32-dll' option into LT_INIT's first parameter.], [./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...
aclocal.m4:8510: AC_LIBTOOL_WIN32_DLL is expanded from...
configure.ac:37: the top level])
m4trace:configure.ac:38: -1- AC_PROG_LIBTOOL
m4trace:configure.ac:38: -1- _m4_warn([obsolete], [The macro `AC_PROG_LIBTOOL' is obsolete.
You should run autoupdate.], [aclocal.m4:121: AC_PROG_LIBTOOL is expanded from...
configure.ac:38: the top level])
m4trace:configure.ac:38: -1- LT_INIT
m4trace:configure.ac:38: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
m4trace:configure.ac:38: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
m4trace:configure.ac:38: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
m4trace:configure.ac:38: -1- AC_SUBST([LIBTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LIBTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LIBTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([SED])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([SED])
m4trace:configure.ac:38: -1- m4_pattern_allow([^SED$])
m4trace:configure.ac:38: -1- AC_SUBST([GREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([GREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^GREP$])
m4trace:configure.ac:38: -1- AC_SUBST([EGREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([EGREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^EGREP$])
m4trace:configure.ac:38: -1- AC_SUBST([FGREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([FGREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^FGREP$])
m4trace:configure.ac:38: -1- AC_SUBST([GREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([GREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^GREP$])
m4trace:configure.ac:38: -1- AC_SUBST([LD])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LD])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LD$])
m4trace:configure.ac:38: -1- AC_SUBST([DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([ac_ct_DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([ac_ct_DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([NM])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([NM])
m4trace:configure.ac:38: -1- m4_pattern_allow([^NM$])
m4trace:configure.ac:38: -1- AC_SUBST([LN_S], [$as_ln_s])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LN_S])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LN_S$])
m4trace:configure.ac:38: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:38: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:38: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([AR])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([AR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^AR$])
m4trace:configure.ac:38: -1- AC_SUBST([ac_ct_AR])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([ac_ct_AR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^ac_ct_AR$])
m4trace:configure.ac:38: -1- AC_SUBST([STRIP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([STRIP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^STRIP$])
m4trace:configure.ac:38: -1- AC_SUBST([RANLIB])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([RANLIB])
m4trace:configure.ac:38: -1- m4_pattern_allow([^RANLIB$])
m4trace:configure.ac:38: -1- m4_pattern_allow([LT_OBJDIR])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([LT_OBJDIR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_OBJDIR$])
m4trace:configure.ac:38: -1- AH_OUTPUT([LT_OBJDIR], [/* Define to the sub-directory where libtool stores uninstalled libraries. */
@%:@undef LT_OBJDIR])
m4trace:configure.ac:38: -1- LT_SUPPORTED_TAG([CC])
m4trace:configure.ac:38: -1- AC_SUBST([MANIFEST_TOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([MANIFEST_TOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^MANIFEST_TOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([DSYMUTIL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DSYMUTIL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DSYMUTIL$])
m4trace:configure.ac:38: -1- AC_SUBST([NMEDIT])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([NMEDIT])
m4trace:configure.ac:38: -1- m4_pattern_allow([^NMEDIT$])
m4trace:configure.ac:38: -1- AC_SUBST([LIPO])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LIPO])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LIPO$])
m4trace:configure.ac:38: -1- AC_SUBST([OTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([OTOOL64])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OTOOL64])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OTOOL64$])
m4trace:configure.ac:38: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
@%:@undef HAVE_DLFCN_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */
@%:@undef HAVE_STDIO_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
@%:@undef HAVE_STDLIB_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
@%:@undef HAVE_STRING_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
@%:@undef HAVE_INTTYPES_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
@%:@undef HAVE_STDINT_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
@%:@undef HAVE_STRINGS_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
@%:@undef HAVE_SYS_STAT_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
@%:@undef HAVE_SYS_TYPES_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
@%:@undef HAVE_UNISTD_H])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
m4trace:configure.ac:38: -1- m4_pattern_allow([^STDC_HEADERS$])
m4trace:configure.ac:38: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
@%:@undef STDC_HEADERS])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H])
m4trace:configure.ac:38: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
m4trace:configure.ac:38: -1- LT_SUPPORTED_TAG([CXX])
m4trace:configure.ac:38: -1- AC_SUBST([CXXCPP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CXXCPP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CXXCPP$])
m4trace:configure.ac:38: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:38: -1- AC_SUBST([CXXCPP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CXXCPP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CXXCPP$])
m4trace:configure.ac:38: -1- AC_SUBST([LD])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LD])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LD$])
m4trace:configure.ac:38: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
m4trace:configure.ac:41: -1- AC_SUBST([DEFAULT_INCLUDES])
m4trace:configure.ac:41: -1- AC_SUBST_TRACE([DEFAULT_INCLUDES])
m4trace:configure.ac:41: -1- m4_pattern_allow([^DEFAULT_INCLUDES$])
m4trace:configure.ac:42: -1- AC_SUBST([PORTAUDIO_ROOT])
m4trace:configure.ac:42: -1- AC_SUBST_TRACE([PORTAUDIO_ROOT])
m4trace:configure.ac:42: -1- m4_pattern_allow([^PORTAUDIO_ROOT$])
m4trace:configure.ac:43: -1- AC_SUBST([CXXFLAGS])
m4trace:configure.ac:43: -1- AC_SUBST_TRACE([CXXFLAGS])
m4trace:configure.ac:43: -1- m4_pattern_allow([^CXXFLAGS$])
m4trace:configure.ac:44: -1- AC_SUBST([LT_VERSION_INFO])
m4trace:configure.ac:44: -1- AC_SUBST_TRACE([LT_VERSION_INFO])
m4trace:configure.ac:44: -1- m4_pattern_allow([^LT_VERSION_INFO$])
m4trace:configure.ac:46: -1- AC_CONFIG_FILES([
Makefile
lib/Makefile
include/Makefile
bin/Makefile
doc/Makefile
portaudiocpp.pc
])
m4trace:configure.ac:54: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:54: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:54: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:54: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:54: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
m4trace:configure.ac:54: -1- AC_SUBST([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
m4trace:configure.ac:54: -1- AC_SUBST([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
m4trace:configure.ac:54: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_build_prefix])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([MKDIR_P])
m4trace:configure.ac:54: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])

View file

@ -1,618 +0,0 @@
m4trace:aclocal.m4:9759: -1- AC_SUBST([am__quote])
m4trace:aclocal.m4:9759: -1- AC_SUBST_TRACE([am__quote])
m4trace:aclocal.m4:9759: -1- m4_pattern_allow([^am__quote$])
m4trace:configure.ac:15: -1- AC_INIT([PortAudioCpp], [12])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?A[CHUM]_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([_AC_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section `AC_LIBOBJ vs LIBOBJS'])
m4trace:configure.ac:15: -1- m4_pattern_allow([^AS_FLAGS$])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?m4_])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^dnl$])
m4trace:configure.ac:15: -1- m4_pattern_forbid([^_?AS_])
m4trace:configure.ac:15: -1- AC_SUBST([SHELL])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([SHELL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^SHELL$])
m4trace:configure.ac:15: -1- AC_SUBST([PATH_SEPARATOR])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PATH_SEPARATOR$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_NAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_NAME$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_STRING])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:15: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([PACKAGE_URL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:15: -1- AC_SUBST([exec_prefix], [NONE])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([exec_prefix])
m4trace:configure.ac:15: -1- m4_pattern_allow([^exec_prefix$])
m4trace:configure.ac:15: -1- AC_SUBST([prefix], [NONE])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([prefix])
m4trace:configure.ac:15: -1- m4_pattern_allow([^prefix$])
m4trace:configure.ac:15: -1- AC_SUBST([program_transform_name], [s,x,x,])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([program_transform_name])
m4trace:configure.ac:15: -1- m4_pattern_allow([^program_transform_name$])
m4trace:configure.ac:15: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([bindir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^bindir$])
m4trace:configure.ac:15: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sbindir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sbindir$])
m4trace:configure.ac:15: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([libexecdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^libexecdir$])
m4trace:configure.ac:15: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([datarootdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^datarootdir$])
m4trace:configure.ac:15: -1- AC_SUBST([datadir], ['${datarootdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([datadir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^datadir$])
m4trace:configure.ac:15: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sysconfdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sysconfdir$])
m4trace:configure.ac:15: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([sharedstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^sharedstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([localstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^localstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([runstatedir], ['${localstatedir}/run'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([runstatedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^runstatedir$])
m4trace:configure.ac:15: -1- AC_SUBST([includedir], ['${prefix}/include'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([includedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^includedir$])
m4trace:configure.ac:15: -1- AC_SUBST([oldincludedir], ['/usr/include'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([oldincludedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^oldincludedir$])
m4trace:configure.ac:15: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
['${datarootdir}/doc/${PACKAGE_TARNAME}'],
['${datarootdir}/doc/${PACKAGE}'])])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([docdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^docdir$])
m4trace:configure.ac:15: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([infodir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^infodir$])
m4trace:configure.ac:15: -1- AC_SUBST([htmldir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([htmldir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^htmldir$])
m4trace:configure.ac:15: -1- AC_SUBST([dvidir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([dvidir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^dvidir$])
m4trace:configure.ac:15: -1- AC_SUBST([pdfdir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([pdfdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^pdfdir$])
m4trace:configure.ac:15: -1- AC_SUBST([psdir], ['${docdir}'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([psdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^psdir$])
m4trace:configure.ac:15: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([libdir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^libdir$])
m4trace:configure.ac:15: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([localedir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^localedir$])
m4trace:configure.ac:15: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([mandir])
m4trace:configure.ac:15: -1- m4_pattern_allow([^mandir$])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_NAME$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
@%:@undef PACKAGE_NAME])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
@%:@undef PACKAGE_TARNAME])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
@%:@undef PACKAGE_VERSION])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
@%:@undef PACKAGE_STRING])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
@%:@undef PACKAGE_BUGREPORT])
m4trace:configure.ac:15: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
m4trace:configure.ac:15: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:15: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
@%:@undef PACKAGE_URL])
m4trace:configure.ac:15: -1- AC_SUBST([DEFS])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([DEFS])
m4trace:configure.ac:15: -1- m4_pattern_allow([^DEFS$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_C])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_C])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_C$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_N])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_N])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_N$])
m4trace:configure.ac:15: -1- AC_SUBST([ECHO_T])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([ECHO_T])
m4trace:configure.ac:15: -1- m4_pattern_allow([^ECHO_T$])
m4trace:configure.ac:15: -1- AC_SUBST([LIBS])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:15: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:15: -1- AC_SUBST([build_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([build_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^build_alias$])
m4trace:configure.ac:15: -1- AC_SUBST([host_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([host_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^host_alias$])
m4trace:configure.ac:15: -1- AC_SUBST([target_alias])
m4trace:configure.ac:15: -1- AC_SUBST_TRACE([target_alias])
m4trace:configure.ac:15: -1- m4_pattern_allow([^target_alias$])
m4trace:configure.ac:17: -1- AM_INIT_AUTOMAKE
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
m4trace:configure.ac:17: -1- AM_AUTOMAKE_VERSION([1.16.5])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([install-sh])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_PROGRAM])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_SCRIPT])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_DATA])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_DATA])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_DATA$])
m4trace:configure.ac:17: -1- AC_SUBST([am__isrc], [' -I$(srcdir)'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__isrc])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__isrc$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([am__isrc])
m4trace:configure.ac:17: -1- AC_SUBST([CYGPATH_W])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CYGPATH_W])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CYGPATH_W$])
m4trace:configure.ac:17: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([PACKAGE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^PACKAGE$])
m4trace:configure.ac:17: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([VERSION])
m4trace:configure.ac:17: -1- m4_pattern_allow([^VERSION$])
m4trace:configure.ac:17: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^PACKAGE$])
m4trace:configure.ac:17: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
@%:@undef PACKAGE])
m4trace:configure.ac:17: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
m4trace:configure.ac:17: -1- m4_pattern_allow([^VERSION$])
m4trace:configure.ac:17: -1- AH_OUTPUT([VERSION], [/* Version number of package */
@%:@undef VERSION])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([missing])
m4trace:configure.ac:17: -1- AC_SUBST([ACLOCAL])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([ACLOCAL])
m4trace:configure.ac:17: -1- m4_pattern_allow([^ACLOCAL$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOCONF])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOCONF])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOCONF$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOMAKE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOMAKE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOMAKE$])
m4trace:configure.ac:17: -1- AC_SUBST([AUTOHEADER])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AUTOHEADER])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AUTOHEADER$])
m4trace:configure.ac:17: -1- AC_SUBST([MAKEINFO])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([MAKEINFO])
m4trace:configure.ac:17: -1- m4_pattern_allow([^MAKEINFO$])
m4trace:configure.ac:17: -1- AC_SUBST([install_sh])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([install_sh])
m4trace:configure.ac:17: -1- m4_pattern_allow([^install_sh$])
m4trace:configure.ac:17: -1- AC_SUBST([STRIP])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([STRIP])
m4trace:configure.ac:17: -1- m4_pattern_allow([^STRIP$])
m4trace:configure.ac:17: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM])
m4trace:configure.ac:17: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
m4trace:configure.ac:17: -1- AC_REQUIRE_AUX_FILE([install-sh])
m4trace:configure.ac:17: -1- AC_SUBST([MKDIR_P])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([MKDIR_P])
m4trace:configure.ac:17: -1- m4_pattern_allow([^MKDIR_P$])
m4trace:configure.ac:17: -1- AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([mkdir_p])
m4trace:configure.ac:17: -1- m4_pattern_allow([^mkdir_p$])
m4trace:configure.ac:17: -1- AC_SUBST([AWK])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AWK])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AWK$])
m4trace:configure.ac:17: -1- AC_SUBST([SET_MAKE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([SET_MAKE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^SET_MAKE$])
m4trace:configure.ac:17: -1- AC_SUBST([am__leading_dot])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__leading_dot])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__leading_dot$])
m4trace:configure.ac:17: -1- AC_SUBST([AMTAR], ['$${TAR-tar}'])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AMTAR])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AMTAR$])
m4trace:configure.ac:17: -1- AC_SUBST([am__tar])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__tar])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__tar$])
m4trace:configure.ac:17: -1- AC_SUBST([am__untar])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([am__untar])
m4trace:configure.ac:17: -1- m4_pattern_allow([^am__untar$])
m4trace:configure.ac:17: -1- AC_SUBST([CTAGS])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CTAGS])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CTAGS$])
m4trace:configure.ac:17: -1- AC_SUBST([ETAGS])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([ETAGS])
m4trace:configure.ac:17: -1- m4_pattern_allow([^ETAGS$])
m4trace:configure.ac:17: -1- AC_SUBST([CSCOPE])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([CSCOPE])
m4trace:configure.ac:17: -1- m4_pattern_allow([^CSCOPE$])
m4trace:configure.ac:17: -1- AM_SILENT_RULES
m4trace:configure.ac:17: -1- AC_SUBST([AM_V])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_V])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_V$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_V])
m4trace:configure.ac:17: -1- AC_SUBST([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_DEFAULT_V$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V])
m4trace:configure.ac:17: -1- AC_SUBST([AM_DEFAULT_VERBOSITY])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_DEFAULT_VERBOSITY])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])
m4trace:configure.ac:17: -1- AC_SUBST([AM_BACKSLASH])
m4trace:configure.ac:17: -1- AC_SUBST_TRACE([AM_BACKSLASH])
m4trace:configure.ac:17: -1- m4_pattern_allow([^AM_BACKSLASH$])
m4trace:configure.ac:17: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
m4trace:configure.ac:18: -1- AM_MAINTAINER_MODE
m4trace:configure.ac:18: -1- AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
m4trace:configure.ac:18: -1- AC_SUBST([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINTAINER_MODE_TRUE$])
m4trace:configure.ac:18: -1- AC_SUBST([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINTAINER_MODE_FALSE$])
m4trace:configure.ac:18: -1- _AM_SUBST_NOTMAKE([MAINTAINER_MODE_TRUE])
m4trace:configure.ac:18: -1- _AM_SUBST_NOTMAKE([MAINTAINER_MODE_FALSE])
m4trace:configure.ac:18: -1- AC_SUBST([MAINT])
m4trace:configure.ac:18: -1- AC_SUBST_TRACE([MAINT])
m4trace:configure.ac:18: -1- m4_pattern_allow([^MAINT$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([LDFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([LDFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^LDFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([LIBS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:35: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([ac_ct_CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([ac_ct_CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^ac_ct_CC$])
m4trace:configure.ac:35: -1- AC_SUBST([CC])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CC])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CC$])
m4trace:configure.ac:35: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([EXEEXT])
m4trace:configure.ac:35: -1- m4_pattern_allow([^EXEEXT$])
m4trace:configure.ac:35: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([OBJEXT])
m4trace:configure.ac:35: -1- m4_pattern_allow([^OBJEXT$])
m4trace:configure.ac:35: -1- AC_REQUIRE_AUX_FILE([compile])
m4trace:configure.ac:35: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([DEPDIR])
m4trace:configure.ac:35: -1- m4_pattern_allow([^DEPDIR$])
m4trace:configure.ac:35: -1- AC_SUBST([am__include])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__include])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__include$])
m4trace:configure.ac:35: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEP_TRUE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEP_TRUE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEP_TRUE$])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEP_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEP_FALSE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEP_FALSE$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
m4trace:configure.ac:35: -1- AC_SUBST([am__nodep])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__nodep])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__nodep$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__nodep])
m4trace:configure.ac:35: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([CCDEPMODE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^CCDEPMODE$])
m4trace:configure.ac:35: -1- AM_CONDITIONAL([am__fastdepCC], [
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3])
m4trace:configure.ac:35: -1- AC_SUBST([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
m4trace:configure.ac:35: -1- AC_SUBST([am__fastdepCC_FALSE])
m4trace:configure.ac:35: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
m4trace:configure.ac:35: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
m4trace:configure.ac:35: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
m4trace:configure.ac:36: -1- AC_SUBST([CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([CXXFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXXFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXXFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([LDFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([LDFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^LDFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([LIBS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([LIBS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^LIBS$])
m4trace:configure.ac:36: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:36: -1- AC_SUBST([CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([ac_ct_CXX])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([ac_ct_CXX])
m4trace:configure.ac:36: -1- m4_pattern_allow([^ac_ct_CXX$])
m4trace:configure.ac:36: -1- AC_SUBST([CXXDEPMODE], [depmode=$am_cv_CXX_dependencies_compiler_type])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([CXXDEPMODE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^CXXDEPMODE$])
m4trace:configure.ac:36: -1- AM_CONDITIONAL([am__fastdepCXX], [
test "x$enable_dependency_tracking" != xno \
&& test "$am_cv_CXX_dependencies_compiler_type" = gcc3])
m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^am__fastdepCXX_TRUE$])
m4trace:configure.ac:36: -1- AC_SUBST([am__fastdepCXX_FALSE])
m4trace:configure.ac:36: -1- AC_SUBST_TRACE([am__fastdepCXX_FALSE])
m4trace:configure.ac:36: -1- m4_pattern_allow([^am__fastdepCXX_FALSE$])
m4trace:configure.ac:36: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_TRUE])
m4trace:configure.ac:36: -1- _AM_SUBST_NOTMAKE([am__fastdepCXX_FALSE])
m4trace:configure.ac:37: -1- _m4_warn([obsolete], [The macro `AC_LIBTOOL_WIN32_DLL' is obsolete.
You should run autoupdate.], [aclocal.m4:8510: AC_LIBTOOL_WIN32_DLL is expanded from...
configure.ac:37: the top level])
m4trace:configure.ac:37: -1- AC_CANONICAL_HOST
m4trace:configure.ac:37: -1- AC_CANONICAL_BUILD
m4trace:configure.ac:37: -1- AC_REQUIRE_AUX_FILE([config.sub])
m4trace:configure.ac:37: -1- AC_REQUIRE_AUX_FILE([config.guess])
m4trace:configure.ac:37: -1- AC_SUBST([build], [$ac_cv_build])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build$])
m4trace:configure.ac:37: -1- AC_SUBST([build_cpu], [$[1]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_cpu])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_cpu$])
m4trace:configure.ac:37: -1- AC_SUBST([build_vendor], [$[2]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_vendor])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_vendor$])
m4trace:configure.ac:37: -1- AC_SUBST([build_os])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([build_os])
m4trace:configure.ac:37: -1- m4_pattern_allow([^build_os$])
m4trace:configure.ac:37: -1- AC_SUBST([host], [$ac_cv_host])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host$])
m4trace:configure.ac:37: -1- AC_SUBST([host_cpu], [$[1]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_cpu])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_cpu$])
m4trace:configure.ac:37: -1- AC_SUBST([host_vendor], [$[2]])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_vendor])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_vendor$])
m4trace:configure.ac:37: -1- AC_SUBST([host_os])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([host_os])
m4trace:configure.ac:37: -1- m4_pattern_allow([^host_os$])
m4trace:configure.ac:37: -1- AC_SUBST([AS])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([AS])
m4trace:configure.ac:37: -1- m4_pattern_allow([^AS$])
m4trace:configure.ac:37: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:37: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:37: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:37: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:37: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:37: -1- _m4_warn([obsolete], [AC_LIBTOOL_WIN32_DLL: Remove this warning and the call to _LT_SET_OPTION when you
put the 'win32-dll' option into LT_INIT's first parameter.], [./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from...
aclocal.m4:8510: AC_LIBTOOL_WIN32_DLL is expanded from...
configure.ac:37: the top level])
m4trace:configure.ac:38: -1- AC_PROG_LIBTOOL
m4trace:configure.ac:38: -1- _m4_warn([obsolete], [The macro `AC_PROG_LIBTOOL' is obsolete.
You should run autoupdate.], [aclocal.m4:121: AC_PROG_LIBTOOL is expanded from...
configure.ac:38: the top level])
m4trace:configure.ac:38: -1- LT_INIT
m4trace:configure.ac:38: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
m4trace:configure.ac:38: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
m4trace:configure.ac:38: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
m4trace:configure.ac:38: -1- AC_SUBST([LIBTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LIBTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LIBTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([SED])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([SED])
m4trace:configure.ac:38: -1- m4_pattern_allow([^SED$])
m4trace:configure.ac:38: -1- AC_SUBST([GREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([GREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^GREP$])
m4trace:configure.ac:38: -1- AC_SUBST([EGREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([EGREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^EGREP$])
m4trace:configure.ac:38: -1- AC_SUBST([FGREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([FGREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^FGREP$])
m4trace:configure.ac:38: -1- AC_SUBST([GREP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([GREP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^GREP$])
m4trace:configure.ac:38: -1- AC_SUBST([LD])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LD])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LD$])
m4trace:configure.ac:38: -1- AC_SUBST([DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([ac_ct_DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([ac_ct_DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([DUMPBIN])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DUMPBIN])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DUMPBIN$])
m4trace:configure.ac:38: -1- AC_SUBST([NM])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([NM])
m4trace:configure.ac:38: -1- m4_pattern_allow([^NM$])
m4trace:configure.ac:38: -1- AC_SUBST([LN_S], [$as_ln_s])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LN_S])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LN_S$])
m4trace:configure.ac:38: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:38: -1- AC_SUBST([OBJDUMP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OBJDUMP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OBJDUMP$])
m4trace:configure.ac:38: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([DLLTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DLLTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DLLTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([AR])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([AR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^AR$])
m4trace:configure.ac:38: -1- AC_SUBST([ac_ct_AR])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([ac_ct_AR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^ac_ct_AR$])
m4trace:configure.ac:38: -1- AC_SUBST([STRIP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([STRIP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^STRIP$])
m4trace:configure.ac:38: -1- AC_SUBST([RANLIB])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([RANLIB])
m4trace:configure.ac:38: -1- m4_pattern_allow([^RANLIB$])
m4trace:configure.ac:38: -1- m4_pattern_allow([LT_OBJDIR])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([LT_OBJDIR])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_OBJDIR$])
m4trace:configure.ac:38: -1- AH_OUTPUT([LT_OBJDIR], [/* Define to the sub-directory where libtool stores uninstalled libraries. */
@%:@undef LT_OBJDIR])
m4trace:configure.ac:38: -1- LT_SUPPORTED_TAG([CC])
m4trace:configure.ac:38: -1- AC_SUBST([MANIFEST_TOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([MANIFEST_TOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^MANIFEST_TOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([DSYMUTIL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([DSYMUTIL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^DSYMUTIL$])
m4trace:configure.ac:38: -1- AC_SUBST([NMEDIT])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([NMEDIT])
m4trace:configure.ac:38: -1- m4_pattern_allow([^NMEDIT$])
m4trace:configure.ac:38: -1- AC_SUBST([LIPO])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LIPO])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LIPO$])
m4trace:configure.ac:38: -1- AC_SUBST([OTOOL])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OTOOL])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OTOOL$])
m4trace:configure.ac:38: -1- AC_SUBST([OTOOL64])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([OTOOL64])
m4trace:configure.ac:38: -1- m4_pattern_allow([^OTOOL64$])
m4trace:configure.ac:38: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
@%:@undef HAVE_DLFCN_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */
@%:@undef HAVE_STDIO_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
@%:@undef HAVE_STDLIB_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
@%:@undef HAVE_STRING_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
@%:@undef HAVE_INTTYPES_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
@%:@undef HAVE_STDINT_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
@%:@undef HAVE_STRINGS_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
@%:@undef HAVE_SYS_STAT_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
@%:@undef HAVE_SYS_TYPES_H])
m4trace:configure.ac:38: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
@%:@undef HAVE_UNISTD_H])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
m4trace:configure.ac:38: -1- m4_pattern_allow([^STDC_HEADERS$])
m4trace:configure.ac:38: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
@%:@undef STDC_HEADERS])
m4trace:configure.ac:38: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H])
m4trace:configure.ac:38: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
m4trace:configure.ac:38: -1- LT_SUPPORTED_TAG([CXX])
m4trace:configure.ac:38: -1- AC_SUBST([CXXCPP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CXXCPP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CXXCPP$])
m4trace:configure.ac:38: -1- AC_SUBST([CPPFLAGS])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CPPFLAGS])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:38: -1- AC_SUBST([CXXCPP])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([CXXCPP])
m4trace:configure.ac:38: -1- m4_pattern_allow([^CXXCPP$])
m4trace:configure.ac:38: -1- AC_SUBST([LD])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LD])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LD$])
m4trace:configure.ac:38: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
m4trace:configure.ac:38: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
m4trace:configure.ac:41: -1- AC_SUBST([DEFAULT_INCLUDES])
m4trace:configure.ac:41: -1- AC_SUBST_TRACE([DEFAULT_INCLUDES])
m4trace:configure.ac:41: -1- m4_pattern_allow([^DEFAULT_INCLUDES$])
m4trace:configure.ac:42: -1- AC_SUBST([PORTAUDIO_ROOT])
m4trace:configure.ac:42: -1- AC_SUBST_TRACE([PORTAUDIO_ROOT])
m4trace:configure.ac:42: -1- m4_pattern_allow([^PORTAUDIO_ROOT$])
m4trace:configure.ac:43: -1- AC_SUBST([CXXFLAGS])
m4trace:configure.ac:43: -1- AC_SUBST_TRACE([CXXFLAGS])
m4trace:configure.ac:43: -1- m4_pattern_allow([^CXXFLAGS$])
m4trace:configure.ac:44: -1- AC_SUBST([LT_VERSION_INFO])
m4trace:configure.ac:44: -1- AC_SUBST_TRACE([LT_VERSION_INFO])
m4trace:configure.ac:44: -1- m4_pattern_allow([^LT_VERSION_INFO$])
m4trace:configure.ac:46: -1- AC_CONFIG_FILES([
Makefile
lib/Makefile
include/Makefile
bin/Makefile
doc/Makefile
portaudiocpp.pc
])
m4trace:configure.ac:54: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
m4trace:configure.ac:54: -1- m4_pattern_allow([^LIB@&t@OBJS$])
m4trace:configure.ac:54: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([LTLIBOBJS])
m4trace:configure.ac:54: -1- m4_pattern_allow([^LTLIBOBJS$])
m4trace:configure.ac:54: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
m4trace:configure.ac:54: -1- AC_SUBST([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
m4trace:configure.ac:54: -1- AC_SUBST([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
m4trace:configure.ac:54: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
m4trace:configure.ac:54: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_build_prefix])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([top_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_top_srcdir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([abs_top_builddir])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([INSTALL])
m4trace:configure.ac:54: -1- AC_SUBST_TRACE([MKDIR_P])
m4trace:configure.ac:54: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])

View file

@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -15,61 +16,6 @@
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@ -90,11 +36,11 @@ build_triplet = @build@
host_triplet = @host@
noinst_PROGRAMS = devs$(EXEEXT) sine$(EXEEXT)
subdir = bin
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@ -104,78 +50,30 @@ devs_OBJECTS = $(am_devs_OBJECTS)
devs_LDADD = $(LDADD)
devs_DEPENDENCIES = $(LIBDIR)/libportaudiocpp.la \
$(top_builddir)/$(PORTAUDIO_ROOT)/lib/libportaudio.la
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
am_sine_OBJECTS = sine.$(OBJEXT)
sine_OBJECTS = $(am_sine_OBJECTS)
sine_LDADD = $(LDADD)
sine_DEPENDENCIES = $(LIBDIR)/libportaudiocpp.la \
$(top_builddir)/$(PORTAUDIO_ROOT)/lib/libportaudio.la
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__maybe_remake_depfiles = depfiles
am__depfiles_remade = ./$(DEPDIR)/devs.Po ./$(DEPDIR)/sine.Po
depcomp = $(SHELL) $(top_srcdir)/../../depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
SOURCES = $(devs_SOURCES) $(sine_SOURCES)
DIST_SOURCES = $(devs_SOURCES) $(sine_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@ -185,9 +83,8 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@ -203,7 +100,6 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
@ -220,11 +116,9 @@ LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
LT_VERSION_INFO = @LT_VERSION_INFO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
@ -251,7 +145,6 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
@ -285,6 +178,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@ -292,7 +186,6 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -322,13 +215,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu bin/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu bin/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@ -348,14 +242,12 @@ clean-noinstPROGRAMS:
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
devs$(EXEEXT): $(devs_OBJECTS) $(devs_DEPENDENCIES) $(EXTRA_devs_DEPENDENCIES)
devs$(EXEEXT): $(devs_OBJECTS) $(devs_DEPENDENCIES)
@rm -f devs$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(devs_OBJECTS) $(devs_LDADD) $(LIBS)
sine$(EXEEXT): $(sine_OBJECTS) $(sine_DEPENDENCIES) $(EXTRA_sine_DEPENDENCIES)
$(CXXLINK) $(devs_OBJECTS) $(devs_LDADD) $(LIBS)
sine$(EXEEXT): $(sine_OBJECTS) $(sine_DEPENDENCIES)
@rm -f sine$(EXEEXT)
$(AM_V_CXXLD)$(CXXLINK) $(sine_OBJECTS) $(sine_LDADD) $(LIBS)
$(CXXLINK) $(sine_OBJECTS) $(sine_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@ -363,63 +255,57 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devs.Po@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sine.Po@am__quote@ # am--include-marker
$(am__depfiles_remade):
@$(MKDIR_P) $(@D)
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
am--depfiles: $(am__depfiles_remade)
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devs.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sine.Po@am__quote@
.cxx.o:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cxx.obj:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.cxx.lo:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
devs.o: $(BINDIR)/devs.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT devs.o -MD -MP -MF $(DEPDIR)/devs.Tpo -c -o devs.o `test -f '$(BINDIR)/devs.cxx' || echo '$(srcdir)/'`$(BINDIR)/devs.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devs.Tpo $(DEPDIR)/devs.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(BINDIR)/devs.cxx' object='devs.o' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT devs.o -MD -MP -MF $(DEPDIR)/devs.Tpo -c -o devs.o `test -f '$(BINDIR)/devs.cxx' || echo '$(srcdir)/'`$(BINDIR)/devs.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/devs.Tpo $(DEPDIR)/devs.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(BINDIR)/devs.cxx' object='devs.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o devs.o `test -f '$(BINDIR)/devs.cxx' || echo '$(srcdir)/'`$(BINDIR)/devs.cxx
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o devs.o `test -f '$(BINDIR)/devs.cxx' || echo '$(srcdir)/'`$(BINDIR)/devs.cxx
devs.obj: $(BINDIR)/devs.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT devs.obj -MD -MP -MF $(DEPDIR)/devs.Tpo -c -o devs.obj `if test -f '$(BINDIR)/devs.cxx'; then $(CYGPATH_W) '$(BINDIR)/devs.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/devs.cxx'; fi`
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devs.Tpo $(DEPDIR)/devs.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(BINDIR)/devs.cxx' object='devs.obj' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT devs.obj -MD -MP -MF $(DEPDIR)/devs.Tpo -c -o devs.obj `if test -f '$(BINDIR)/devs.cxx'; then $(CYGPATH_W) '$(BINDIR)/devs.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/devs.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/devs.Tpo $(DEPDIR)/devs.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(BINDIR)/devs.cxx' object='devs.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o devs.obj `if test -f '$(BINDIR)/devs.cxx'; then $(CYGPATH_W) '$(BINDIR)/devs.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/devs.cxx'; fi`
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o devs.obj `if test -f '$(BINDIR)/devs.cxx'; then $(CYGPATH_W) '$(BINDIR)/devs.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/devs.cxx'; fi`
sine.o: $(BINDIR)/sine.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sine.o -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.o `test -f '$(BINDIR)/sine.cxx' || echo '$(srcdir)/'`$(BINDIR)/sine.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(BINDIR)/sine.cxx' object='sine.o' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sine.o -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.o `test -f '$(BINDIR)/sine.cxx' || echo '$(srcdir)/'`$(BINDIR)/sine.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(BINDIR)/sine.cxx' object='sine.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sine.o `test -f '$(BINDIR)/sine.cxx' || echo '$(srcdir)/'`$(BINDIR)/sine.cxx
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sine.o `test -f '$(BINDIR)/sine.cxx' || echo '$(srcdir)/'`$(BINDIR)/sine.cxx
sine.obj: $(BINDIR)/sine.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sine.obj -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.obj `if test -f '$(BINDIR)/sine.cxx'; then $(CYGPATH_W) '$(BINDIR)/sine.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/sine.cxx'; fi`
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(BINDIR)/sine.cxx' object='sine.obj' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT sine.obj -MD -MP -MF $(DEPDIR)/sine.Tpo -c -o sine.obj `if test -f '$(BINDIR)/sine.cxx'; then $(CYGPATH_W) '$(BINDIR)/sine.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/sine.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/sine.Tpo $(DEPDIR)/sine.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(BINDIR)/sine.cxx' object='sine.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sine.obj `if test -f '$(BINDIR)/sine.cxx'; then $(CYGPATH_W) '$(BINDIR)/sine.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/sine.cxx'; fi`
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o sine.obj `if test -f '$(BINDIR)/sine.cxx'; then $(CYGPATH_W) '$(BINDIR)/sine.cxx'; else $(CYGPATH_W) '$(srcdir)/$(BINDIR)/sine.cxx'; fi`
mostlyclean-libtool:
-rm -f *.lo
@ -427,15 +313,26 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@ -447,11 +344,15 @@ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@ -460,28 +361,11 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@ -525,15 +409,10 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
@ -551,8 +430,7 @@ clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \
mostlyclean-am
distclean: distclean-am
-rm -f ./$(DEPDIR)/devs.Po
-rm -f ./$(DEPDIR)/sine.Po
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
@ -598,8 +476,7 @@ install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f ./$(DEPDIR)/devs.Po
-rm -f ./$(DEPDIR)/sine.Po
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@ -620,21 +497,18 @@ uninstall-am:
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \
ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
.PRECIOUS: Makefile
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libtool clean-noinstPROGRAMS ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
pdf pdf-am ps ps-am tags uninstall uninstall-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.

Binary file not shown.

View file

@ -1,248 +1,248 @@
# Microsoft Developer Studio Project File - Name="devs_example" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=devs_example - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "devs_example.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "devs_example.mak" CFG="devs_example - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "devs_example - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "devs_example - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "devs_example - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 portaudiocpp-vc6-r.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/devs_example.exe" /libpath:"../../lib"
!ELSEIF "$(CFG)" == "devs_example - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 portaudiocpp-vc6-d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../bin/devs_example.exe" /pdbtype:sept /libpath:"../../lib"
!ENDIF
# Begin Target
# Name "devs_example - Win32 Release"
# Name "devs_example - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\pa_asio\pa_asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_front.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_hostapis.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_util.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wmme\pa_win_wmme.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_endianness.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_hostapi.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_types.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_util.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# Begin Group "Example Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\example\devs.cxx
# End Source File
# End Group
# Begin Group "ASIO 2 SDK"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\common\asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\asiodrivers.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp
# End Source File
# End Group
# End Target
# End Project
# Microsoft Developer Studio Project File - Name="devs_example" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=devs_example - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "devs_example.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "devs_example.mak" CFG="devs_example - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "devs_example - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "devs_example - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "devs_example - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 portaudiocpp-vc6-r.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/devs_example.exe" /libpath:"../../lib"
!ELSEIF "$(CFG)" == "devs_example - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 portaudiocpp-vc6-d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../bin/devs_example.exe" /pdbtype:sept /libpath:"../../lib"
!ENDIF
# Begin Target
# Name "devs_example - Win32 Release"
# Name "devs_example - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\pa_asio\pa_asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_front.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_hostapis.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_util.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wmme\pa_win_wmme.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_endianness.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_hostapi.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_types.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_util.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# Begin Group "Example Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\example\devs.cxx
# End Source File
# End Group
# Begin Group "ASIO 2 SDK"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\common\asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\asiodrivers.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp
# End Source File
# End Group
# End Target
# End Project

View file

@ -1,44 +1,44 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "devs_example"=".\devs_example.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name static_library
End Project Dependency
}}}
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "devs_example"=".\devs_example.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name static_library
End Project Dependency
}}}
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View file

@ -1,252 +1,252 @@
# Microsoft Developer Studio Project File - Name="sine_example" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=sine_example - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "sine_example.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "sine_example.mak" CFG="sine_example - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "sine_example - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "sine_example - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "sine_example - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 portaudiocpp-vc6-r.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/sine_example.exe" /libpath:"../../lib"
!ELSEIF "$(CFG)" == "sine_example - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 portaudiocpp-vc6-d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../bin/sine_example.exe" /pdbtype:sept /libpath:"../../lib"
!ENDIF
# Begin Target
# Name "sine_example - Win32 Release"
# Name "sine_example - Win32 Debug"
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_endianness.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_hostapi.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_types.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_util.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# Begin Group "Example Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\example\sine.cxx
# End Source File
# End Group
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\pa_asio\pa_asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_front.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_hostapis.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_util.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wmme\pa_win_wmme.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.c
# End Source File
# End Group
# Begin Group "ASIO 2 SDK"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\common\asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\asiodrivers.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp
# End Source File
# End Group
# End Target
# End Project
# Microsoft Developer Studio Project File - Name="sine_example" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=sine_example - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "sine_example.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "sine_example.mak" CFG="sine_example - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "sine_example - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "sine_example - Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "sine_example - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 portaudiocpp-vc6-r.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 /out:"../../bin/sine_example.exe" /libpath:"../../lib"
!ELSEIF "$(CFG)" == "sine_example - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /I "../../../../src/common/" /I "../../../../../asiosdk2/common/" /I "../../../../../asiosdk2/host/" /I "../../../../../asiosdk2/host/pc/" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 portaudiocpp-vc6-d.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /out:"../../bin/sine_example.exe" /pdbtype:sept /libpath:"../../lib"
!ENDIF
# Begin Target
# Name "sine_example - Win32 Release"
# Name "sine_example - Win32 Debug"
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_endianness.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_hostapi.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_types.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_util.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.h
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# Begin Group "Example Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\example\sine.cxx
# End Source File
# End Group
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\..\..\pa_asio\iasiothiscallresolver.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_allocation.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\pa_asio\pa_asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_converters.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_cpuload.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_dither.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_front.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_process.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_stream.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\common\pa_trace.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_hostapis.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_win_util.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\hostapi\wmme\pa_win_wmme.c
# End Source File
# Begin Source File
SOURCE=..\..\..\..\src\os\win\pa_x86_plain_converters.c
# End Source File
# End Group
# Begin Group "ASIO 2 SDK"
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\common\asio.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\asiodrivers.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp
# End Source File
# End Group
# End Target
# End Project

View file

@ -1,44 +1,44 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "sine_example"=".\sine_example.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name static_library
End Project Dependency
}}}
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "sine_example"=".\sine_example.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name static_library
End Project Dependency
}}}
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View file

@ -1,395 +1,395 @@
# Microsoft Developer Studio Project File - Name="static_library" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104
CFG=static_library - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "static_library.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "static_library.mak" CFG="static_library - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "static_library - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE "static_library - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "static_library - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"../../lib/portaudiocpp-vc6-r.lib"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"../../lib/portaudiocpp-vc6-d.lib"
!ENDIF
# Begin Target
# Name "static_library - Win32 Release"
# Name "static_library - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\source\portaudiocpp\AsioDeviceAdapter.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\BlockingStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CallbackInterface.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CppFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Device.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\DirectionSpecificStreamParameters.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Exception.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\HostApi.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\InterfaceCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\MemFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Stream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\StreamParameters.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\System.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\SystemDeviceIterator.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\SystemHostApiIterator.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\include\portaudiocpp\AsioDeviceAdapter.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\AutoSystem.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\BlockingStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CallbackInterface.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CppFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Device.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\DirectionSpecificStreamParameters.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Exception.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\HostApi.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\InterfaceCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\MemFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\PortAudioCpp.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SampleDataFormat.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Stream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\StreamParameters.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\System.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SystemDeviceIterator.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SystemHostApiIterator.hxx
# End Source File
# End Group
# End Target
# End Project
# Microsoft Developer Studio Project File - Name="static_library" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104
CFG=static_library - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "static_library.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "static_library.mak" CFG="static_library - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "static_library - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE "static_library - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "static_library - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
# ADD CPP /nologo /MTd /W3 /GX /O2 /I "../../include/" /I "../../../../include/" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /FD /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "NDEBUG"
# ADD RSC /l 0x809 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"../../lib/portaudiocpp-vc6-r.lib"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "../../include/" /I "../../../../include/" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /FD /GZ /c
# SUBTRACT CPP /YX
# ADD BASE RSC /l 0x809 /d "_DEBUG"
# ADD RSC /l 0x809 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"../../lib/portaudiocpp-vc6-d.lib"
!ENDIF
# Begin Target
# Name "static_library - Win32 Release"
# Name "static_library - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=..\..\source\portaudiocpp\AsioDeviceAdapter.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\BlockingStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CallbackInterface.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\CppFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Device.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\DirectionSpecificStreamParameters.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Exception.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\HostApi.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\InterfaceCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\MemFunCallbackStream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\Stream.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\StreamParameters.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\System.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\SystemDeviceIterator.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# Begin Source File
SOURCE=..\..\source\portaudiocpp\SystemHostApiIterator.cxx
!IF "$(CFG)" == "static_library - Win32 Release"
!ELSEIF "$(CFG)" == "static_library - Win32 Debug"
# SUBTRACT CPP /YX
!ENDIF
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=..\..\include\portaudiocpp\AsioDeviceAdapter.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\AutoSystem.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\BlockingStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CallbackInterface.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\CppFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Device.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\DirectionSpecificStreamParameters.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Exception.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\HostApi.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\InterfaceCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\MemFunCallbackStream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\PortAudioCpp.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SampleDataFormat.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\Stream.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\StreamParameters.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\System.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SystemDeviceIterator.hxx
# End Source File
# Begin Source File
SOURCE=..\..\include\portaudiocpp\SystemHostApiIterator.hxx
# End Source File
# End Group
# End Target
# End Project

View file

@ -1,29 +1,29 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "static_library"=".\static_library.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View file

@ -1,30 +1,30 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "devs_example", "devs_example.vcproj", "{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
ProjectSection(ProjectDependencies) = postProject
{D18EA0C9-8C65-441D-884C-55EB43A84F2A} = {D18EA0C9-8C65-441D-884C-55EB43A84F2A}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.ActiveCfg = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.Build.0 = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.ActiveCfg = Release|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.Build.0 = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "devs_example", "devs_example.vcproj", "{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
ProjectSection(ProjectDependencies) = postProject
{D18EA0C9-8C65-441D-884C-55EB43A84F2A} = {D18EA0C9-8C65-441D-884C-55EB43A84F2A}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.ActiveCfg = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.Build.0 = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.ActiveCfg = Release|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.Build.0 = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

View file

@ -1,195 +1,195 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="devs_example"
ProjectGUID="{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-d.lib"
OutputFile="../../bin/devs_example.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/devs_example.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-r.lib"
OutputFile="../../bin/devs_example.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\example\devs.cxx">
</File>
</Filter>
<Filter
Name="PortAudio v19 Files"
Filter="">
<File
RelativePath="..\..\..\..\src\common\pa_allocation.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\asio\pa_asio.cpp">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_converters.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_cpuload.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_dither.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_front.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_process.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_stream.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_trace.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_hostapis.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_util.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wmme\pa_win_wmme.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_x86_plain_converters.c">
</File>
</Filter>
<Filter
Name="ASIO 2 SDK Files"
Filter="">
<File
RelativePath="..\..\..\..\..\asiosdk2\common\asio.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\asiodrivers.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="devs_example"
ProjectGUID="{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-d.lib"
OutputFile="../../bin/devs_example.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/devs_example.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-r.lib"
OutputFile="../../bin/devs_example.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\example\devs.cxx">
</File>
</Filter>
<Filter
Name="PortAudio v19 Files"
Filter="">
<File
RelativePath="..\..\..\..\src\common\pa_allocation.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\asio\pa_asio.cpp">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_converters.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_cpuload.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_dither.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_front.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_process.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_stream.c">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_trace.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_hostapis.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_util.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wmme\pa_win_wmme.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_x86_plain_converters.c">
</File>
</Filter>
<Filter
Name="ASIO 2 SDK Files"
Filter="">
<File
RelativePath="..\..\..\..\..\asiosdk2\common\asio.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\asiodrivers.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View file

@ -1,30 +1,30 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sine_example", "sine_example.vcproj", "{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
ProjectSection(ProjectDependencies) = postProject
{D18EA0C9-8C65-441D-884C-55EB43A84F2A} = {D18EA0C9-8C65-441D-884C-55EB43A84F2A}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.ActiveCfg = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.Build.0 = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.ActiveCfg = Release|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.Build.0 = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "sine_example", "sine_example.vcproj", "{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
ProjectSection(ProjectDependencies) = postProject
{D18EA0C9-8C65-441D-884C-55EB43A84F2A} = {D18EA0C9-8C65-441D-884C-55EB43A84F2A}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.ActiveCfg = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Debug.Build.0 = Debug|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.ActiveCfg = Release|Win32
{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}.Release.Build.0 = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

View file

@ -1,327 +1,327 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="sine_example"
ProjectGUID="{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-d.lib"
OutputFile="../../bin/sine_example.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/sine_example.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-r.lib"
OutputFile="../../bin/sine_example.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\example\sine.cxx">
</File>
</Filter>
<Filter
Name="PortAudio v19 Files"
Filter="">
<File
RelativePath="..\..\..\..\src\common\pa_allocation.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\asio\pa_asio.cpp">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_converters.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_cpuload.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_dither.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_front.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_process.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_stream.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_trace.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_hostapis.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_util.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wmme\pa_win_wmme.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_x86_plain_converters.c">
</File>
</Filter>
<Filter
Name="ASIO 2 SDK Files"
Filter="">
<File
RelativePath="..\..\..\..\..\asiosdk2\common\asio.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\asiodrivers.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="sine_example"
ProjectGUID="{1B9A038D-80A3-4DBD-9F0D-AF10B49B863A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="Debug"
IntermediateDirectory="Debug"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-d.lib"
OutputFile="../../bin/sine_example.exe"
LinkIncremental="2"
GenerateDebugInformation="TRUE"
ProgramDatabaseFile="$(OutDir)/sine_example.pdb"
SubSystem="1"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="Release"
IntermediateDirectory="Release"
ConfigurationType="1"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/;../../../../src/common/;../../../../../asiosdk2/common/,../../../../../asiosdk2/host/,../../../../../asiosdk2/host/pc/"
PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="../../lib/portaudiocpp-vc7_1-r.lib"
OutputFile="../../bin/sine_example.exe"
LinkIncremental="1"
GenerateDebugInformation="TRUE"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCWebDeploymentTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\example\sine.cxx">
</File>
</Filter>
<Filter
Name="PortAudio v19 Files"
Filter="">
<File
RelativePath="..\..\..\..\src\common\pa_allocation.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\asio\pa_asio.cpp">
</File>
<File
RelativePath="..\..\..\..\src\common\pa_converters.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_cpuload.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_dither.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_front.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_process.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_stream.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\common\pa_trace.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\hostapi\dsound\pa_win_ds_dynlink.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_hostapis.c">
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_win_util.c">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wasapi\pa_win_wasapi.cpp">
</File>
<File
RelativePath="..\..\..\..\src\hostapi\wmme\pa_win_wmme.c">
<FileConfiguration
Name="Debug|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32">
<Tool
Name="VCCLCompilerTool"
ObjectFile="$(IntDir)/$(InputName)1.obj"/>
</FileConfiguration>
</File>
<File
RelativePath="..\..\..\..\src\os\win\pa_x86_plain_converters.c">
</File>
</Filter>
<Filter
Name="ASIO 2 SDK Files"
Filter="">
<File
RelativePath="..\..\..\..\..\asiosdk2\common\asio.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\asiodrivers.cpp">
</File>
<File
RelativePath="..\..\..\..\..\asiosdk2\host\pc\asiolist.cpp">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View file

@ -1,21 +1,21 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "static_library", "static_library.vcproj", "{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Release = Release
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.ActiveCfg = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Debug.Build.0 = Debug|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.ActiveCfg = Release|Win32
{D18EA0C9-8C65-441D-884C-55EB43A84F2A}.Release.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal

View file

@ -1,218 +1,218 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="static_library"
ProjectGUID="{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="../../lib/"
IntermediateDirectory="Debug"
ConfigurationType="4"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/portaudiocpp-vc7_1-d.lib"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="../../lib/"
IntermediateDirectory="Release"
ConfigurationType="4"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/portaudiocpp-vc7_1-r.lib"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\source\portaudiocpp\AsioDeviceAdapter.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\AsioDeviceAdapter.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\AutoSystem.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\BlockingStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\BlockingStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CallbackInterface.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CallbackInterface.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CppFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CppFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Device.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Device.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\DirectionSpecificStreamParameters.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\DirectionSpecificStreamParameters.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Exception.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Exception.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\HostApi.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\HostApi.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\InterfaceCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\InterfaceCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\MemFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\MemFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\PortAudioCpp.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SampleDataFormat.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Stream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Stream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\StreamParameters.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\StreamParameters.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\System.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\System.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\SystemDeviceIterator.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SystemDeviceIterator.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\SystemHostApiIterator.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SystemHostApiIterator.hxx">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
Name="static_library"
ProjectGUID="{D18EA0C9-8C65-441D-884C-55EB43A84F2A}"
Keyword="Win32Proj">
<Platforms>
<Platform
Name="Win32"/>
</Platforms>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="../../lib/"
IntermediateDirectory="Debug"
ConfigurationType="4"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="../../include/;../../../../include/"
PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
MinimalRebuild="TRUE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/portaudiocpp-vc7_1-d.lib"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="../../lib/"
IntermediateDirectory="Release"
ConfigurationType="4"
CharacterSet="2">
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="../../include/;../../../../include/"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
ProgramDataBaseFileName="$(IntDir)/vc71.pdb"
WarningLevel="3"
Detect64BitPortabilityProblems="TRUE"
DebugInformationFormat="3"/>
<Tool
Name="VCCustomBuildTool"/>
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)/portaudiocpp-vc7_1-r.lib"/>
<Tool
Name="VCMIDLTool"/>
<Tool
Name="VCPostBuildEventTool"/>
<Tool
Name="VCPreBuildEventTool"/>
<Tool
Name="VCPreLinkEventTool"/>
<Tool
Name="VCResourceCompilerTool"/>
<Tool
Name="VCWebServiceProxyGeneratorTool"/>
<Tool
Name="VCXMLDataGeneratorTool"/>
<Tool
Name="VCManagedWrapperGeneratorTool"/>
<Tool
Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Files"
Filter="">
<File
RelativePath="..\..\source\portaudiocpp\AsioDeviceAdapter.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\AsioDeviceAdapter.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\AutoSystem.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\BlockingStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\BlockingStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CallbackInterface.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CallbackInterface.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\CppFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\CppFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Device.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Device.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\DirectionSpecificStreamParameters.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\DirectionSpecificStreamParameters.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Exception.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Exception.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\HostApi.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\HostApi.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\InterfaceCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\InterfaceCallbackStream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\MemFunCallbackStream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\MemFunCallbackStream.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\PortAudioCpp.hxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SampleDataFormat.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\Stream.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\Stream.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\StreamParameters.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\StreamParameters.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\System.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\System.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\SystemDeviceIterator.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SystemDeviceIterator.hxx">
</File>
<File
RelativePath="..\..\source\portaudiocpp\SystemHostApiIterator.cxx">
</File>
<File
RelativePath="..\..\include\portaudiocpp\SystemHostApiIterator.hxx">
</File>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View file

@ -1,348 +0,0 @@
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:

Binary file not shown.

Binary file not shown.

BIN
bindings/cpp/configure vendored

Binary file not shown.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -14,61 +15,6 @@
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@ -88,39 +34,19 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = doc
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@ -130,9 +56,8 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@ -148,7 +73,6 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
@ -165,11 +89,9 @@ LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
LT_VERSION_INFO = @LT_VERSION_INFO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
@ -196,7 +118,6 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
@ -230,6 +151,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@ -237,7 +159,6 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -262,13 +183,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu doc/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@ -285,16 +207,14 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
tags TAGS:
tags: TAGS
TAGS:
ctags CTAGS:
ctags: CTAGS
CTAGS:
cscope cscopelist:
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@ -338,15 +258,10 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
@ -427,18 +342,15 @@ uninstall-am:
.MAKE: install-am install-strip
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
cscopelist-am ctags-am distclean distclean-generic \
distclean-libtool distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
.PRECIOUS: Makefile
distclean distclean-generic distclean-libtool distdir dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am
#INCLUDES = -I$(srcdir)/$(PACPP_ROOT)/include -I$(top_srcdir)/include

View file

@ -1,34 +1,34 @@
GNU/Linux:
----------
1) Download and install a recent version of Doxygen (preferably version 1.3.3 or
later). See http://www.doxygen.org/.
2) Download and install a recent version of GraphViz. See
http://www.research.att.com/sw/tools/graphviz/.
3) Run ``doxygen config.doxy.linux'' in this directory or load and generate the file
config.doxy.linux from the Doxywizard application. Or alternatively ``make docs'' can
be run from the build/gnu folder.
The generated html documentation will be placed in /doc/api_reference/. To open
the main page of the documentation, open the file /doc/api_reference/index.html in
an html browser.
Windows:
--------
1) Download and install a recent Doxygen (preferably version 1.3.4 or later). See
http://www.doxygen.org/.
2) Download and install a recent version of GraphViz. See
http://www.research.att.com/sw/tools/graphviz/.
3) If needed, edit the config.doxy file in an ascii text editor so that
``DOT_PATH'' variable points to the folder where GraphViz is installed.
4) Run ``doxygen config.doxy'' in this directory or load and generate the file
config.doxy from the Doxywizard application.
The generated html documentation will be placed in /doc/api_reference/. To open
the main page of the documentation, open the file /doc/api_reference/index.html in
an html browser.
GNU/Linux:
----------
1) Download and install a recent version of Doxygen (preferably version 1.3.3 or
later). See http://www.doxygen.org/.
2) Download and install a recent version of GraphViz. See
http://www.research.att.com/sw/tools/graphviz/.
3) Run ``doxygen config.doxy.linux'' in this directory or load and generate the file
config.doxy.linux from the Doxywizard application. Or alternatively ``make docs'' can
be run from the build/gnu folder.
The generated html documentation will be placed in /doc/api_reference/. To open
the main page of the documentation, open the file /doc/api_reference/index.html in
an html browser.
Windows:
--------
1) Download and install a recent Doxygen (preferably version 1.3.4 or later). See
http://www.doxygen.org/.
2) Download and install a recent version of GraphViz. See
http://www.research.att.com/sw/tools/graphviz/.
3) If needed, edit the config.doxy file in an ascii text editor so that
``DOT_PATH'' variable points to the folder where GraphViz is installed.
4) Run ``doxygen config.doxy'' in this directory or load and generate the file
config.doxy from the Doxywizard application.
The generated html documentation will be placed in /doc/api_reference/. To open
the main page of the documentation, open the file /doc/api_reference/index.html in
an html browser.

View file

@ -1,210 +1,210 @@
# Doxyfile 1.3.3
#---------------------------------------------------------------------------
# General configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = PortAudioCpp
PROJECT_NUMBER = 2.0
OUTPUT_DIRECTORY = ./
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = YES
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ALWAYS_DETAILED_SEC = YES
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
SHORT_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = YES
JAVADOC_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
DETAILS_AT_TOP = YES
INHERIT_DOCS = YES
INLINE_INFO = YES
SORT_MEMBER_DOCS = NO
DISTRIBUTE_GROUP_DOC = NO
TAB_SIZE = 4
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ALIASES =
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
SHOW_USED_FILES = YES
SUBGROUPING = YES
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../source \
../include
FILE_PATTERNS = *.hxx \
*.cxx
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 2
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = api_reference
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = NO
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NO
TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
UML_LOOK = YES
TEMPLATE_RELATIONS = YES
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DOT_IMAGE_FORMAT = png
DOT_PATH = "/usr/bin/dot"
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
MAX_DOT_GRAPH_DEPTH = 0
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO
CGI_NAME = search.cgi
CGI_URL =
DOC_URL =
DOC_ABSPATH =
BIN_ABSPATH = /usr/local/bin/
EXT_DOC_PATHS =
# Doxyfile 1.3.3
#---------------------------------------------------------------------------
# General configuration options
#---------------------------------------------------------------------------
PROJECT_NAME = PortAudioCpp
PROJECT_NUMBER = 2.0
OUTPUT_DIRECTORY = ./
OUTPUT_LANGUAGE = English
USE_WINDOWS_ENCODING = YES
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
EXTRACT_STATIC = YES
EXTRACT_LOCAL_CLASSES = YES
HIDE_UNDOC_MEMBERS = NO
HIDE_UNDOC_CLASSES = NO
HIDE_FRIEND_COMPOUNDS = NO
HIDE_IN_BODY_DOCS = NO
BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ALWAYS_DETAILED_SEC = YES
INLINE_INHERITED_MEMB = NO
FULL_PATH_NAMES = NO
STRIP_FROM_PATH =
INTERNAL_DOCS = NO
CASE_SENSE_NAMES = YES
SHORT_NAMES = YES
HIDE_SCOPE_NAMES = NO
SHOW_INCLUDE_FILES = YES
JAVADOC_AUTOBRIEF = NO
MULTILINE_CPP_IS_BRIEF = NO
DETAILS_AT_TOP = YES
INHERIT_DOCS = YES
INLINE_INFO = YES
SORT_MEMBER_DOCS = NO
DISTRIBUTE_GROUP_DOC = NO
TAB_SIZE = 4
GENERATE_TODOLIST = YES
GENERATE_TESTLIST = YES
GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES
ALIASES =
ENABLED_SECTIONS =
MAX_INITIALIZER_LINES = 30
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
SHOW_USED_FILES = YES
SUBGROUPING = YES
#---------------------------------------------------------------------------
# configuration options related to warning and progress messages
#---------------------------------------------------------------------------
QUIET = NO
WARNINGS = YES
WARN_IF_UNDOCUMENTED = YES
WARN_IF_DOC_ERROR = YES
WARN_FORMAT = "$file:$line: $text"
WARN_LOGFILE =
#---------------------------------------------------------------------------
# configuration options related to the input files
#---------------------------------------------------------------------------
INPUT = ../source \
../include
FILE_PATTERNS = *.hxx \
*.cxx
RECURSIVE = YES
EXCLUDE =
EXCLUDE_SYMLINKS = NO
EXCLUDE_PATTERNS =
EXAMPLE_PATH =
EXAMPLE_PATTERNS =
EXAMPLE_RECURSIVE = NO
IMAGE_PATH =
INPUT_FILTER =
FILTER_SOURCE_FILES = NO
#---------------------------------------------------------------------------
# configuration options related to source browsing
#---------------------------------------------------------------------------
SOURCE_BROWSER = NO
INLINE_SOURCES = NO
STRIP_CODE_COMMENTS = YES
REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
VERBATIM_HEADERS = YES
#---------------------------------------------------------------------------
# configuration options related to the alphabetical class index
#---------------------------------------------------------------------------
ALPHABETICAL_INDEX = YES
COLS_IN_ALPHA_INDEX = 2
IGNORE_PREFIX =
#---------------------------------------------------------------------------
# configuration options related to the HTML output
#---------------------------------------------------------------------------
GENERATE_HTML = YES
HTML_OUTPUT = api_reference
HTML_FILE_EXTENSION = .html
HTML_HEADER =
HTML_FOOTER =
HTML_STYLESHEET =
HTML_ALIGN_MEMBERS = YES
GENERATE_HTMLHELP = NO
CHM_FILE =
HHC_LOCATION =
GENERATE_CHI = NO
BINARY_TOC = NO
TOC_EXPAND = NO
DISABLE_INDEX = NO
ENUM_VALUES_PER_LINE = 4
GENERATE_TREEVIEW = NO
TREEVIEW_WIDTH = 250
#---------------------------------------------------------------------------
# configuration options related to the LaTeX output
#---------------------------------------------------------------------------
GENERATE_LATEX = NO
LATEX_OUTPUT = latex
LATEX_CMD_NAME = latex
MAKEINDEX_CMD_NAME = makeindex
COMPACT_LATEX = NO
PAPER_TYPE = a4wide
EXTRA_PACKAGES =
LATEX_HEADER =
PDF_HYPERLINKS = NO
USE_PDFLATEX = NO
LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
#---------------------------------------------------------------------------
# configuration options related to the RTF output
#---------------------------------------------------------------------------
GENERATE_RTF = NO
RTF_OUTPUT = rtf
COMPACT_RTF = NO
RTF_HYPERLINKS = NO
RTF_STYLESHEET_FILE =
RTF_EXTENSIONS_FILE =
#---------------------------------------------------------------------------
# configuration options related to the man page output
#---------------------------------------------------------------------------
GENERATE_MAN = NO
MAN_OUTPUT = man
MAN_EXTENSION = .3
MAN_LINKS = NO
#---------------------------------------------------------------------------
# configuration options related to the XML output
#---------------------------------------------------------------------------
GENERATE_XML = NO
XML_OUTPUT = xml
XML_SCHEMA =
XML_DTD =
#---------------------------------------------------------------------------
# configuration options for the AutoGen Definitions output
#---------------------------------------------------------------------------
GENERATE_AUTOGEN_DEF = NO
#---------------------------------------------------------------------------
# configuration options related to the Perl module output
#---------------------------------------------------------------------------
GENERATE_PERLMOD = NO
PERLMOD_LATEX = NO
PERLMOD_PRETTY = YES
PERLMOD_MAKEVAR_PREFIX =
#---------------------------------------------------------------------------
# Configuration options related to the preprocessor
#---------------------------------------------------------------------------
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = NO
EXPAND_ONLY_PREDEF = NO
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED =
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to external references
#---------------------------------------------------------------------------
TAGFILES =
GENERATE_TAGFILE =
ALLEXTERNALS = NO
EXTERNAL_GROUPS = YES
PERL_PATH = /usr/bin/perl
#---------------------------------------------------------------------------
# Configuration options related to the dot tool
#---------------------------------------------------------------------------
CLASS_DIAGRAMS = YES
HIDE_UNDOC_RELATIONS = YES
HAVE_DOT = YES
CLASS_GRAPH = YES
COLLABORATION_GRAPH = YES
UML_LOOK = YES
TEMPLATE_RELATIONS = YES
INCLUDE_GRAPH = YES
INCLUDED_BY_GRAPH = YES
CALL_GRAPH = NO
GRAPHICAL_HIERARCHY = YES
DOT_IMAGE_FORMAT = png
DOT_PATH = "/usr/bin/dot"
DOTFILE_DIRS =
MAX_DOT_GRAPH_WIDTH = 1024
MAX_DOT_GRAPH_HEIGHT = 1024
MAX_DOT_GRAPH_DEPTH = 0
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
#---------------------------------------------------------------------------
# Configuration::addtions related to the search engine
#---------------------------------------------------------------------------
SEARCHENGINE = NO
CGI_NAME = search.cgi
CGI_URL =
DOC_URL =
DOC_ABSPATH =
BIN_ABSPATH = /usr/local/bin/
EXT_DOC_PATHS =

View file

@ -8,44 +8,44 @@
// ---------------------------------------------------------------------------------------
void printSupportedStandardSampleRates(
const portaudio::DirectionSpecificStreamParameters &inputParameters,
const portaudio::DirectionSpecificStreamParameters &outputParameters)
const portaudio::DirectionSpecificStreamParameters &inputParameters,
const portaudio::DirectionSpecificStreamParameters &outputParameters)
{
static double STANDARD_SAMPLE_RATES[] = {
8000.0, 9600.0, 11025.0, 12000.0, 16000.0, 22050.0, 24000.0, 32000.0,
44100.0, 48000.0, 88200.0, 96000.0, -1 }; // negative terminated list
static double STANDARD_SAMPLE_RATES[] = {
8000.0, 9600.0, 11025.0, 12000.0, 16000.0, 22050.0, 24000.0, 32000.0,
44100.0, 48000.0, 88200.0, 96000.0, -1 }; // negative terminated list
int printCount = 0;
int printCount = 0;
for (int i = 0; STANDARD_SAMPLE_RATES[i] > 0; ++i)
{
portaudio::StreamParameters tmp = portaudio::StreamParameters(inputParameters, outputParameters, STANDARD_SAMPLE_RATES[i], 0, paNoFlag);
for (int i = 0; STANDARD_SAMPLE_RATES[i] > 0; ++i)
{
portaudio::StreamParameters tmp = portaudio::StreamParameters(inputParameters, outputParameters, STANDARD_SAMPLE_RATES[i], 0, paNoFlag);
if (tmp.isSupported())
{
if (printCount == 0)
{
std::cout << " " << STANDARD_SAMPLE_RATES[i]; // 8.2
printCount = 1;
}
else if (printCount == 4)
{
std::cout << "," << std::endl;
std::cout << " " << STANDARD_SAMPLE_RATES[i]; // 8.2
printCount = 1;
}
else
{
std::cout << ", " << STANDARD_SAMPLE_RATES[i]; // 8.2
++printCount;
}
}
}
if (tmp.isSupported())
{
if (printCount == 0)
{
std::cout << " " << STANDARD_SAMPLE_RATES[i]; // 8.2
printCount = 1;
}
else if (printCount == 4)
{
std::cout << "," << std::endl;
std::cout << " " << STANDARD_SAMPLE_RATES[i]; // 8.2
printCount = 1;
}
else
{
std::cout << ", " << STANDARD_SAMPLE_RATES[i]; // 8.2
++printCount;
}
}
}
if (printCount == 0)
std::cout << "None" << std::endl;
else
std::cout << std::endl;
if (printCount == 0)
std::cout << "None" << std::endl;
else
std::cout << std::endl;
}
// ---------------------------------------------------------------------------------------
@ -53,125 +53,125 @@ void printSupportedStandardSampleRates(
int main(int, char*[]);
int main(int, char*[])
{
try
{
portaudio::AutoSystem autoSys;
try
{
portaudio::AutoSystem autoSys;
portaudio::System &sys = portaudio::System::instance();
portaudio::System &sys = portaudio::System::instance();
std::cout << "PortAudio version number = " << sys.version() << std::endl;
std::cout << "PortAudio version text = '" << sys.versionText() << "'" << std::endl;
std::cout << "PortAudio version number = " << sys.version() << std::endl;
std::cout << "PortAudio version text = '" << sys.versionText() << "'" << std::endl;
int numDevices = sys.deviceCount();
std::cout << "Number of devices = " << numDevices << std::endl;
int numDevices = sys.deviceCount();
std::cout << "Number of devices = " << numDevices << std::endl;
for (portaudio::System::DeviceIterator i = sys.devicesBegin(); i != sys.devicesEnd(); ++i)
{
std::cout << "--------------------------------------- device #" << (*i).index() << std::endl;
for (portaudio::System::DeviceIterator i = sys.devicesBegin(); i != sys.devicesEnd(); ++i)
{
std::cout << "--------------------------------------- device #" << (*i).index() << std::endl;
// Mark global and API specific default devices:
bool defaultDisplayed = false;
// Mark global and API specific default devices:
bool defaultDisplayed = false;
if ((*i).isSystemDefaultInputDevice())
{
std::cout << "[ Default Input";
defaultDisplayed = true;
}
else if ((*i).isHostApiDefaultInputDevice())
{
std::cout << "[ Default " << (*i).hostApi().name() << " Input";
defaultDisplayed = true;
}
if ((*i).isSystemDefaultInputDevice())
{
std::cout << "[ Default Input";
defaultDisplayed = true;
}
else if ((*i).isHostApiDefaultInputDevice())
{
std::cout << "[ Default " << (*i).hostApi().name() << " Input";
defaultDisplayed = true;
}
if ((*i).isSystemDefaultOutputDevice())
{
std::cout << (defaultDisplayed ? "," : "[");
std::cout << " Default Output";
defaultDisplayed = true;
}
else if ((*i).isHostApiDefaultOutputDevice())
{
std::cout << (defaultDisplayed ? "," : "[");
std::cout << " Default " << (*i).hostApi().name() << " Output";
defaultDisplayed = true;
}
if ((*i).isSystemDefaultOutputDevice())
{
std::cout << (defaultDisplayed ? "," : "[");
std::cout << " Default Output";
defaultDisplayed = true;
}
else if ((*i).isHostApiDefaultOutputDevice())
{
std::cout << (defaultDisplayed ? "," : "[");
std::cout << " Default " << (*i).hostApi().name() << " Output";
defaultDisplayed = true;
}
if (defaultDisplayed)
std::cout << " ]" << std::endl;
if (defaultDisplayed)
std::cout << " ]" << std::endl;
// Print device info:
std::cout << "Name = " << (*i).name() << std::endl;
std::cout << "Host API = " << (*i).hostApi().name() << std::endl;
std::cout << "Max inputs = " << (*i).maxInputChannels() << ", Max outputs = " << (*i).maxOutputChannels() << std::endl;
// Print device info:
std::cout << "Name = " << (*i).name() << std::endl;
std::cout << "Host API = " << (*i).hostApi().name() << std::endl;
std::cout << "Max inputs = " << (*i).maxInputChannels() << ", Max outputs = " << (*i).maxOutputChannels() << std::endl;
std::cout << "Default low input latency = " << (*i).defaultLowInputLatency() << std::endl; // 8.3
std::cout << "Default low output latency = " << (*i).defaultLowOutputLatency() << std::endl; // 8.3
std::cout << "Default high input latency = " << (*i).defaultHighInputLatency() << std::endl; // 8.3
std::cout << "Default high output latency = " << (*i).defaultHighOutputLatency() << std::endl; // 8.3
std::cout << "Default low input latency = " << (*i).defaultLowInputLatency() << std::endl; // 8.3
std::cout << "Default low output latency = " << (*i).defaultLowOutputLatency() << std::endl; // 8.3
std::cout << "Default high input latency = " << (*i).defaultHighInputLatency() << std::endl; // 8.3
std::cout << "Default high output latency = " << (*i).defaultHighOutputLatency() << std::endl; // 8.3
#ifdef WIN32
// ASIO specific latency information:
if ((*i).hostApi().typeId() == paASIO)
{
portaudio::AsioDeviceAdapter asioDevice((*i));
// ASIO specific latency information:
if ((*i).hostApi().typeId() == paASIO)
{
portaudio::AsioDeviceAdapter asioDevice((*i));
std::cout << "ASIO minimum buffer size = " << asioDevice.minBufferSize() << std::endl;
std::cout << "ASIO maximum buffer size = " << asioDevice.maxBufferSize() << std::endl;
std::cout << "ASIO preferred buffer size = " << asioDevice.preferredBufferSize() << std::endl;
std::cout << "ASIO minimum buffer size = " << asioDevice.minBufferSize() << std::endl;
std::cout << "ASIO maximum buffer size = " << asioDevice.maxBufferSize() << std::endl;
std::cout << "ASIO preferred buffer size = " << asioDevice.preferredBufferSize() << std::endl;
if (asioDevice.granularity() == -1)
std::cout << "ASIO buffer granularity = power of 2" << std::endl;
else
std::cout << "ASIO buffer granularity = " << asioDevice.granularity() << std::endl;
}
if (asioDevice.granularity() == -1)
std::cout << "ASIO buffer granularity = power of 2" << std::endl;
else
std::cout << "ASIO buffer granularity = " << asioDevice.granularity() << std::endl;
}
#endif // WIN32
std::cout << "Default sample rate = " << (*i).defaultSampleRate() << std::endl; // 8.2
std::cout << "Default sample rate = " << (*i).defaultSampleRate() << std::endl; // 8.2
// Poll for standard sample rates:
portaudio::DirectionSpecificStreamParameters inputParameters((*i), (*i).maxInputChannels(), portaudio::INT16, true, 0.0, NULL);
portaudio::DirectionSpecificStreamParameters outputParameters((*i), (*i).maxOutputChannels(), portaudio::INT16, true, 0.0, NULL);
// Poll for standard sample rates:
portaudio::DirectionSpecificStreamParameters inputParameters((*i), (*i).maxInputChannels(), portaudio::INT16, true, 0.0, NULL);
portaudio::DirectionSpecificStreamParameters outputParameters((*i), (*i).maxOutputChannels(), portaudio::INT16, true, 0.0, NULL);
if (inputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for half-duplex 16 bit " << inputParameters.numChannels() << " channel input = " << std::endl;
printSupportedStandardSampleRates(inputParameters, portaudio::DirectionSpecificStreamParameters::null());
}
if (inputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for half-duplex 16 bit " << inputParameters.numChannels() << " channel input = " << std::endl;
printSupportedStandardSampleRates(inputParameters, portaudio::DirectionSpecificStreamParameters::null());
}
if (outputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for half-duplex 16 bit " << outputParameters.numChannels() << " channel output = " << std::endl;
printSupportedStandardSampleRates(portaudio::DirectionSpecificStreamParameters::null(), outputParameters);
}
if (outputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for half-duplex 16 bit " << outputParameters.numChannels() << " channel output = " << std::endl;
printSupportedStandardSampleRates(portaudio::DirectionSpecificStreamParameters::null(), outputParameters);
}
if (inputParameters.numChannels() > 0 && outputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for full-duplex 16 bit " << inputParameters.numChannels() << " channel input, " << outputParameters.numChannels() << " channel output = " << std::endl;
printSupportedStandardSampleRates(inputParameters, outputParameters);
}
}
if (inputParameters.numChannels() > 0 && outputParameters.numChannels() > 0)
{
std::cout << "Supported standard sample rates" << std::endl;
std::cout << " for full-duplex 16 bit " << inputParameters.numChannels() << " channel input, " << outputParameters.numChannels() << " channel output = " << std::endl;
printSupportedStandardSampleRates(inputParameters, outputParameters);
}
}
std::cout << "----------------------------------------------" << std::endl;
}
catch (const portaudio::PaException &e)
{
std::cout << "A PortAudio error occurred: " << e.paErrorText() << std::endl;
}
catch (const portaudio::PaCppException &e)
{
std::cout << "A PortAudioCpp error occurred: " << e.what() << std::endl;
}
catch (const std::exception &e)
{
std::cout << "A generic exception occurred: " << e.what() << std::endl;
}
catch (...)
{
std::cout << "An unknown exception occurred." << std::endl;
}
std::cout << "----------------------------------------------" << std::endl;
}
catch (const portaudio::PaException &e)
{
std::cout << "A PortAudio error occured: " << e.paErrorText() << std::endl;
}
catch (const portaudio::PaCppException &e)
{
std::cout << "A PortAudioCpp error occured: " << e.what() << std::endl;
}
catch (const std::exception &e)
{
std::cout << "A generic exception occured: " << e.what() << std::endl;
}
catch (...)
{
std::cout << "An unknown exception occured." << std::endl;
}
return 0;
return 0;
}

View file

@ -1,135 +1,137 @@
// ---------------------------------------------------------------------------------------
#include <iostream>
#include <cmath>
#include <cassert>
#include <cstddef>
#include "portaudiocpp/PortAudioCpp.hxx"
// ---------------------------------------------------------------------------------------
// Some constants:
const int NUM_SECONDS = 5;
const double SAMPLE_RATE = 44100.0;
const int FRAMES_PER_BUFFER = 64;
const int TABLE_SIZE = 200;
// ---------------------------------------------------------------------------------------
// SineGenerator class:
class SineGenerator
{
public:
SineGenerator(int tableSize) : tableSize_(tableSize), leftPhase_(0), rightPhase_(0)
{
const double PI = 3.14159265;
table_ = new float[tableSize];
for (int i = 0; i < tableSize; ++i)
{
table_[i] = 0.125f * (float)sin(((double)i/(double)tableSize)*PI*2.);
}
}
~SineGenerator()
{
delete[] table_;
}
int generate(const void *inputBuffer, void *outputBuffer, unsigned long framesPerBuffer,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags)
{
assert(outputBuffer != NULL);
float **out = static_cast<float **>(outputBuffer);
for (unsigned int i = 0; i < framesPerBuffer; ++i)
{
out[0][i] = table_[leftPhase_];
out[1][i] = table_[rightPhase_];
leftPhase_ += 1;
if (leftPhase_ >= tableSize_)
leftPhase_ -= tableSize_;
rightPhase_ += 3;
if (rightPhase_ >= tableSize_)
rightPhase_ -= tableSize_;
}
return paContinue;
}
private:
float *table_;
int tableSize_;
int leftPhase_;
int rightPhase_;
};
// ---------------------------------------------------------------------------------------
// main:
int main(int, char *[]);
int main(int, char *[])
{
try
{
// Create a SineGenerator object:
SineGenerator sineGenerator(TABLE_SIZE);
std::cout << "Setting up PortAudio..." << std::endl;
// Set up the System:
portaudio::AutoSystem autoSys;
portaudio::System &sys = portaudio::System::instance();
// Set up the parameters required to open a (Callback)Stream:
portaudio::DirectionSpecificStreamParameters outParams(sys.defaultOutputDevice(), 2, portaudio::FLOAT32, false, sys.defaultOutputDevice().defaultLowOutputLatency(), NULL);
portaudio::StreamParameters params(portaudio::DirectionSpecificStreamParameters::null(), outParams, SAMPLE_RATE, FRAMES_PER_BUFFER, paClipOff);
std::cout << "Opening stereo output stream..." << std::endl;
// Create (and open) a new Stream, using the SineGenerator::generate function as a callback:
portaudio::MemFunCallbackStream<SineGenerator> stream(params, sineGenerator, &SineGenerator::generate);
std::cout << "Starting playback for " << NUM_SECONDS << " seconds." << std::endl;
// Start the Stream (audio playback starts):
stream.start();
// Wait for 5 seconds:
sys.sleep(NUM_SECONDS * 1000);
std::cout << "Closing stream..." <<std::endl;
// Stop the Stream (not strictly needed as termintating the System will also stop all open Streams):
stream.stop();
// Close the Stream (not strictly needed as terminating the System will also close all open Streams):
stream.close();
// Terminate the System (not strictly needed as the AutoSystem will also take care of this when it
// goes out of scope):
sys.terminate();
std::cout << "Test finished." << std::endl;
}
catch (const portaudio::PaException &e)
{
std::cout << "A PortAudio error occurred: " << e.paErrorText() << std::endl;
}
catch (const portaudio::PaCppException &e)
{
std::cout << "A PortAudioCpp error occurred: " << e.what() << std::endl;
}
catch (const std::exception &e)
{
std::cout << "A generic exception occurred: " << e.what() << std::endl;
}
catch (...)
{
std::cout << "An unknown exception occurred." << std::endl;
}
return 0;
}
// ---------------------------------------------------------------------------------------
#include <iostream>
#include <cmath>
#include <cassert>
#include <cstddef>
#include "portaudiocpp/PortAudioCpp.hxx"
// ---------------------------------------------------------------------------------------
// Some constants:
const int NUM_SECONDS = 5;
const double SAMPLE_RATE = 44100.0;
const int FRAMES_PER_BUFFER = 64;
const int TABLE_SIZE = 200;
// ---------------------------------------------------------------------------------------
// SineGenerator class:
class SineGenerator
{
public:
SineGenerator(int tableSize) : tableSize_(tableSize), leftPhase_(0), rightPhase_(0)
{
const double PI = 3.14159265;
table_ = new float[tableSize];
for (int i = 0; i < tableSize; ++i)
{
table_[i] = 0.125f * (float)sin(((double)i/(double)tableSize)*PI*2.);
}
}
~SineGenerator()
{
delete[] table_;
}
int generate(const void *inputBuffer, void *outputBuffer, unsigned long framesPerBuffer,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags)
{
assert(outputBuffer != NULL);
float **out = static_cast<float **>(outputBuffer);
for (unsigned int i = 0; i < framesPerBuffer; ++i)
{
out[0][i] = table_[leftPhase_];
out[1][i] = table_[rightPhase_];
leftPhase_ += 1;
if (leftPhase_ >= tableSize_)
leftPhase_ -= tableSize_;
rightPhase_ += 3;
if (rightPhase_ >= tableSize_)
rightPhase_ -= tableSize_;
}
return paContinue;
}
private:
float *table_;
int tableSize_;
int leftPhase_;
int rightPhase_;
};
// ---------------------------------------------------------------------------------------
// main:
int main(int, char *[]);
int main(int, char *[])
{
try
{
// Create a SineGenerator object:
SineGenerator sineGenerator(TABLE_SIZE);
std::cout << "Setting up PortAudio..." << std::endl;
// Set up the System:
portaudio::AutoSystem autoSys;
portaudio::System &sys = portaudio::System::instance();
// Set up the parameters required to open a (Callback)Stream:
portaudio::DirectionSpecificStreamParameters outParams(sys.defaultOutputDevice(), 2, portaudio::FLOAT32, false, sys.defaultOutputDevice().defaultLowOutputLatency(), NULL);
portaudio::StreamParameters params(portaudio::DirectionSpecificStreamParameters::null(), outParams, SAMPLE_RATE, FRAMES_PER_BUFFER, paClipOff);
std::cout << "Opening stereo output stream..." << std::endl;
// Create (and open) a new Stream, using the SineGenerator::generate function as a callback:
portaudio::MemFunCallbackStream<SineGenerator> stream(params, sineGenerator, &SineGenerator::generate);
std::cout << "Starting playback for " << NUM_SECONDS << " seconds." << std::endl;
// Start the Stream (audio playback starts):
stream.start();
// Wait for 5 seconds:
sys.sleep(NUM_SECONDS * 1000);
std::cout << "Closing stream..." <<std::endl;
// Stop the Stream (not strictly needed as termintating the System will also stop all open Streams):
stream.stop();
// Close the Stream (not strictly needed as terminating the System will also close all open Streams):
stream.close();
// Terminate the System (not strictly needed as the AutoSystem will also take care of this when it
// goes out of scope):
sys.terminate();
std::cout << "Test finished." << std::endl;
}
catch (const portaudio::PaException &e)
{
std::cout << "A PortAudio error occured: " << e.paErrorText() << std::endl;
}
catch (const portaudio::PaCppException &e)
{
std::cout << "A PortAudioCpp error occured: " << e.what() << std::endl;
}
catch (const std::exception &e)
{
std::cout << "A generic exception occured: " << e.what() << std::endl;
}
catch (...)
{
std::cout << "An unknown exception occured." << std::endl;
}
return 0;
}

View file

@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -15,61 +16,6 @@
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@ -89,34 +35,17 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = include
DIST_COMMON = $(pkginclude_HEADERS) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(pkginclude_HEADERS) \
$(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
SOURCES =
DIST_SOURCES =
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@ -138,36 +67,13 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(pkgincludedir)"
HEADERS = $(pkginclude_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
am__DIST_COMMON = $(srcdir)/Makefile.in
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@ -177,9 +83,8 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@ -195,7 +100,6 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
@ -212,11 +116,9 @@ LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
LT_VERSION_INFO = @LT_VERSION_INFO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
@ -243,7 +145,6 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
@ -277,6 +178,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@ -284,7 +186,6 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -329,13 +230,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu include/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu include/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@ -354,11 +256,8 @@ clean-libtool:
-rm -rf .libs _libs
install-pkgincludeHEADERS: $(pkginclude_HEADERS)
@$(NORMAL_INSTALL)
test -z "$(pkgincludedir)" || $(MKDIR_P) "$(DESTDIR)$(pkgincludedir)"
@list='$(pkginclude_HEADERS)'; test -n "$(pkgincludedir)" || list=; \
if test -n "$$list"; then \
echo " $(MKDIR_P) '$(DESTDIR)$(pkgincludedir)'"; \
$(MKDIR_P) "$(DESTDIR)$(pkgincludedir)" || exit 1; \
fi; \
for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
echo "$$d$$p"; \
@ -372,17 +271,30 @@ uninstall-pkgincludeHEADERS:
@$(NORMAL_UNINSTALL)
@list='$(pkginclude_HEADERS)'; test -n "$(pkgincludedir)" || list=; \
files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
dir='$(DESTDIR)$(pkgincludedir)'; $(am__uninstall_files_from_dir)
test -n "$$files" || exit 0; \
echo " ( cd '$(DESTDIR)$(pkgincludedir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(pkgincludedir)" && rm -f $$files
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@ -394,11 +306,15 @@ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@ -407,28 +323,11 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@ -475,15 +374,10 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
@ -563,21 +457,18 @@ uninstall-am: uninstall-pkgincludeHEADERS
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
clean-libtool cscopelist-am ctags ctags-am distclean \
distclean-generic distclean-libtool distclean-tags distdir dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-dvi install-dvi-am \
install-exec install-exec-am install-html install-html-am \
install-info install-info-am install-man install-pdf \
install-pdf-am install-pkgincludeHEADERS install-ps \
install-ps-am install-strip installcheck installcheck-am \
installdirs maintainer-clean maintainer-clean-generic \
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am \
uninstall-pkgincludeHEADERS
.PRECIOUS: Makefile
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libtool ctags distclean distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-pkgincludeHEADERS install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags uninstall uninstall-am uninstall-pkgincludeHEADERS
# portaudiocpp/AsioDeviceAdapter.hxx

View file

@ -4,41 +4,41 @@
namespace portaudio
{
// Forward declaration(s):
class Device;
// Forward declaration(s):
class Device;
// Declaration(s):
//////
/// @brief Adapts the given Device to an ASIO specific extension.
///
/// Deleting the AsioDeviceAdapter does not affect the underlying
/// Device.
//////
class AsioDeviceAdapter
{
public:
AsioDeviceAdapter(Device &device);
// Declaration(s):
//////
/// @brief Adapts the given Device to an ASIO specific extension.
///
/// Deleting the AsioDeviceAdapter does not affect the underlaying
/// Device.
//////
class AsioDeviceAdapter
{
public:
AsioDeviceAdapter(Device &device);
Device &device();
Device &device();
long minBufferSize() const;
long maxBufferSize() const;
long preferredBufferSize() const;
long granularity() const;
long minBufferSize() const;
long maxBufferSize() const;
long preferredBufferSize() const;
long granularity() const;
void showControlPanel(void *systemSpecific);
void showControlPanel(void *systemSpecific);
const char *inputChannelName(int channelIndex) const;
const char *outputChannelName(int channelIndex) const;
const char *inputChannelName(int channelIndex) const;
const char *outputChannelName(int channelIndex) const;
private:
Device *device_;
private:
Device *device_;
long minBufferSize_;
long maxBufferSize_;
long preferredBufferSize_;
long granularity_;
};
long minBufferSize_;
long maxBufferSize_;
long preferredBufferSize_;
long granularity_;
};
}
#endif // INCLUDED_PORTAUDIO_ASIODEVICEADAPTER_HXX

View file

@ -1,62 +1,62 @@
#ifndef INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
#define INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief A RAII idiom class to ensure automatic clean-up when an exception is
/// raised.
///
/// A simple helper class which uses the 'Resource Acquisition is Initialization'
/// idiom (RAII). Use this class to initialize/terminate the System rather than
/// using System directly. AutoSystem must be created on stack and must be valid
/// throughout the time you wish to use PortAudioCpp. Your 'main' function might be
/// a good place for it.
///
/// To avoid having to type portaudio::System::instance().xyz() all the time, it's usually
/// a good idea to make a reference to the System which can be accessed directly.
/// @verbatim
/// portaudio::AutoSys autoSys;
/// portaudio::System &sys = portaudio::System::instance();
/// @endverbatim
//////
class AutoSystem
{
public:
AutoSystem(bool initialize = true)
{
if (initialize)
System::initialize();
}
~AutoSystem()
{
if (System::exists())
System::terminate();
}
void initialize()
{
System::initialize();
}
void terminate()
{
System::terminate();
}
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
#ifndef INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
#define INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief A RAII idiom class to ensure automatic clean-up when an exception is
/// raised.
///
/// A simple helper class which uses the 'Resource Acquisition is Initialization'
/// idiom (RAII). Use this class to initialize/terminate the System rather than
/// using System directly. AutoSystem must be created on stack and must be valid
/// throughout the time you wish to use PortAudioCpp. Your 'main' function might be
/// a good place for it.
///
/// To avoid having to type portaudio::System::instance().xyz() all the time, it's usually
/// a good idea to make a reference to the System which can be accessed directly.
/// @verbatim
/// portaudio::AutoSys autoSys;
/// portaudio::System &sys = portaudio::System::instance();
/// @endverbatim
//////
class AutoSystem
{
public:
AutoSystem(bool initialize = true)
{
if (initialize)
System::initialize();
}
~AutoSystem()
{
if (System::exists())
System::terminate();
}
void initialize()
{
System::initialize();
}
void terminate()
{
System::terminate();
}
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_AUTOSYSTEM_HXX

View file

@ -1,44 +1,45 @@
#ifndef INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
#define INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudiocpp/Stream.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Stream class for blocking read/write-style input and output.
//////
class BlockingStream : public Stream
{
public:
BlockingStream();
BlockingStream(const StreamParameters &parameters);
~BlockingStream();
void open(const StreamParameters &parameters);
void read(void *buffer, unsigned long numFrames);
void write(const void *buffer, unsigned long numFrames);
signed long availableReadSize() const;
signed long availableWriteSize() const;
private:
BlockingStream(const BlockingStream &); // non-copyable
BlockingStream &operator=(const BlockingStream &); // non-copyable
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
#define INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudiocpp/Stream.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Stream class for blocking read/write-style input and output.
//////
class BlockingStream : public Stream
{
public:
BlockingStream();
BlockingStream(const StreamParameters &parameters);
~BlockingStream();
void open(const StreamParameters &parameters);
void read(void *buffer, unsigned long numFrames);
void write(const void *buffer, unsigned long numFrames);
signed long availableReadSize() const;
signed long availableWriteSize() const;
private:
BlockingStream(const BlockingStream &); // non-copyable
BlockingStream &operator=(const BlockingStream &); // non-copyable
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_BLOCKINGSTREAM_HXX

View file

@ -1,48 +1,49 @@
#ifndef INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s)
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// @brief Callback stream using a free function with C linkage. It's important that the function
/// the passed function pointer points to is declared ``extern "C"''.
//////
class CFunCallbackStream : public CallbackStream
{
public:
CFunCallbackStream();
CFunCallbackStream(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
~CFunCallbackStream();
void open(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
private:
CFunCallbackStream(const CFunCallbackStream &); // non-copyable
CFunCallbackStream &operator=(const CFunCallbackStream &); // non-copyable
};
// -----------------------------------------------------------------------------------
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s)
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// @brief Callback stream using a free function with C linkage. It's important that the function
/// the passed function pointer points to is declared ``extern "C"''.
//////
class CFunCallbackStream : public CallbackStream
{
public:
CFunCallbackStream();
CFunCallbackStream(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
~CFunCallbackStream();
void open(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData);
private:
CFunCallbackStream(const CFunCallbackStream &); // non-copyable
CFunCallbackStream &operator=(const CFunCallbackStream &); // non-copyable
};
// -----------------------------------------------------------------------------------
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX

View file

@ -1,45 +1,45 @@
#ifndef INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX
#define INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// @brief Interface for an object that's callable as a PortAudioCpp callback object (ie that implements the
/// paCallbackFun method).
//////
class CallbackInterface
{
public:
virtual ~CallbackInterface() {}
virtual int paCallbackFun(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags) = 0;
};
// -----------------------------------------------------------------------------------
namespace impl
{
extern "C"
{
int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
} // extern "C"
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX
#ifndef INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX
#define INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// @brief Interface for an object that's callable as a PortAudioCpp callback object (ie that implements the
/// paCallbackFun method).
//////
class CallbackInterface
{
public:
virtual ~CallbackInterface() {}
virtual int paCallbackFun(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags) = 0;
};
// -----------------------------------------------------------------------------------
namespace impl
{
extern "C"
{
int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
} // extern "C"
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CALLBACKINTERFACE_HXX

View file

@ -1,40 +1,40 @@
#ifndef INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/Stream.hxx"
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Base class for all Streams which use a callback-based mechanism.
//////
class CallbackStream : public Stream
{
protected:
CallbackStream();
virtual ~CallbackStream();
public:
// stream info (time-varying)
double cpuLoad() const;
private:
CallbackStream(const CallbackStream &); // non-copyable
CallbackStream &operator=(const CallbackStream &); // non-copyable
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/Stream.hxx"
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Base class for all Streams which use a callback-based mechanism.
//////
class CallbackStream : public Stream
{
protected:
CallbackStream();
virtual ~CallbackStream();
public:
// stream info (time-varying)
double cpuLoad() const;
private:
CallbackStream(const CallbackStream &); // non-copyable
CallbackStream &operator=(const CallbackStream &); // non-copyable
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CALLBACKSTREAM_HXX

View file

@ -1,86 +1,86 @@
#ifndef INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
namespace impl
{
extern "C"
{
int cppCallbackToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
} // extern "C"
}
// -----------------------------------------------------------------------------------
//////
/// @brief Callback stream using a C++ function (either a free function or a static function)
/// callback.
//////
class FunCallbackStream : public CallbackStream
{
public:
typedef int (*CallbackFunPtr)(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
// -------------------------------------------------------------------------------
//////
/// @brief Simple structure containing a function pointer to the C++ callback function and a
/// (void) pointer to the user supplied data.
//////
struct CppToCCallbackData
{
CppToCCallbackData();
CppToCCallbackData(CallbackFunPtr funPtr, void *userData);
void init(CallbackFunPtr funPtr, void *userData);
CallbackFunPtr funPtr;
void *userData;
};
// -------------------------------------------------------------------------------
FunCallbackStream();
FunCallbackStream(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData);
~FunCallbackStream();
void open(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData);
private:
FunCallbackStream(const FunCallbackStream &); // non-copyable
FunCallbackStream &operator=(const FunCallbackStream &); // non-copyable
CppToCCallbackData adapterData_;
void open(const StreamParameters &parameters);
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
namespace impl
{
extern "C"
{
int cppCallbackToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
} // extern "C"
}
// -----------------------------------------------------------------------------------
//////
/// @brief Callback stream using a C++ function (either a free function or a static function)
/// callback.
//////
class FunCallbackStream : public CallbackStream
{
public:
typedef int (*CallbackFunPtr)(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags,
void *userData);
// -------------------------------------------------------------------------------
//////
/// @brief Simple structure containing a function pointer to the C++ callback function and a
/// (void) pointer to the user supplied data.
//////
struct CppToCCallbackData
{
CppToCCallbackData();
CppToCCallbackData(CallbackFunPtr funPtr, void *userData);
void init(CallbackFunPtr funPtr, void *userData);
CallbackFunPtr funPtr;
void *userData;
};
// -------------------------------------------------------------------------------
FunCallbackStream();
FunCallbackStream(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData);
~FunCallbackStream();
void open(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData);
private:
FunCallbackStream(const FunCallbackStream &); // non-copyable
FunCallbackStream &operator=(const FunCallbackStream &); // non-copyable
CppToCCallbackData adapterData_;
void open(const StreamParameters &parameters);
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_CPPFUNCALLBACKSTREAM_HXX

View file

@ -1,90 +1,91 @@
#ifndef INCLUDED_PORTAUDIO_DEVICE_HXX
#define INCLUDED_PORTAUDIO_DEVICE_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include "portaudio.h"
#include "portaudiocpp/SampleDataFormat.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class System;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Class which represents a PortAudio device in the System.
///
/// A single physical device in the system may have multiple PortAudio
/// Device representations using different HostApi 's though. A Device
/// can be half-duplex or full-duplex. A half-duplex Device can be used
/// to create a half-duplex Stream. A full-duplex Device can be used to
/// create a full-duplex Stream. If supported by the HostApi, two
/// half-duplex Devices can even be used to create a full-duplex Stream.
///
/// Note that Device objects are very light-weight and can be passed around
/// by-value.
//////
class Device
{
public:
// query info: name, max in channels, max out channels,
// default low/high input/output latency, default sample rate
PaDeviceIndex index() const;
const char *name() const;
int maxInputChannels() const;
int maxOutputChannels() const;
PaTime defaultLowInputLatency() const;
PaTime defaultHighInputLatency() const;
PaTime defaultLowOutputLatency() const;
PaTime defaultHighOutputLatency() const;
double defaultSampleRate() const;
bool isInputOnlyDevice() const; // extended
bool isOutputOnlyDevice() const; // extended
bool isFullDuplexDevice() const; // extended
bool isSystemDefaultInputDevice() const; // extended
bool isSystemDefaultOutputDevice() const; // extended
bool isHostApiDefaultInputDevice() const; // extended
bool isHostApiDefaultOutputDevice() const; // extended
bool operator==(const Device &rhs) const;
bool operator!=(const Device &rhs) const;
// host api reference
HostApi &hostApi();
const HostApi &hostApi() const;
private:
PaDeviceIndex index_;
const PaDeviceInfo *info_;
private:
friend class System;
explicit Device(PaDeviceIndex index);
~Device();
Device(const Device &); // non-copyable
Device &operator=(const Device &); // non-copyable
};
// -----------------------------------------------------------------------------------
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_DEVICE_HXX
#ifndef INCLUDED_PORTAUDIO_DEVICE_HXX
#define INCLUDED_PORTAUDIO_DEVICE_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include "portaudio.h"
#include "portaudiocpp/SampleDataFormat.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class System;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Class which represents a PortAudio device in the System.
///
/// A single physical device in the system may have multiple PortAudio
/// Device representations using different HostApi 's though. A Device
/// can be half-duplex or full-duplex. A half-duplex Device can be used
/// to create a half-duplex Stream. A full-duplex Device can be used to
/// create a full-duplex Stream. If supported by the HostApi, two
/// half-duplex Devices can even be used to create a full-duplex Stream.
///
/// Note that Device objects are very light-weight and can be passed around
/// by-value.
//////
class Device
{
public:
// query info: name, max in channels, max out channels,
// default low/hight input/output latency, default sample rate
PaDeviceIndex index() const;
const char *name() const;
int maxInputChannels() const;
int maxOutputChannels() const;
PaTime defaultLowInputLatency() const;
PaTime defaultHighInputLatency() const;
PaTime defaultLowOutputLatency() const;
PaTime defaultHighOutputLatency() const;
double defaultSampleRate() const;
bool isInputOnlyDevice() const; // extended
bool isOutputOnlyDevice() const; // extended
bool isFullDuplexDevice() const; // extended
bool isSystemDefaultInputDevice() const; // extended
bool isSystemDefaultOutputDevice() const; // extended
bool isHostApiDefaultInputDevice() const; // extended
bool isHostApiDefaultOutputDevice() const; // extended
bool operator==(const Device &rhs);
bool operator!=(const Device &rhs);
// host api reference
HostApi &hostApi();
const HostApi &hostApi() const;
private:
PaDeviceIndex index_;
const PaDeviceInfo *info_;
private:
friend class System;
explicit Device(PaDeviceIndex index);
~Device();
Device(const Device &); // non-copyable
Device &operator=(const Device &); // non-copyable
};
// -----------------------------------------------------------------------------------
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_DEVICE_HXX

View file

@ -1,77 +1,77 @@
#ifndef INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX
#define INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX
// ---------------------------------------------------------------------------------------
#include <cstddef>
#include "portaudio.h"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/SampleDataFormat.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief All parameters for one direction (either in or out) of a Stream. Together with
/// parameters common to both directions, two DirectionSpecificStreamParameters can make up
/// a StreamParameters object which contains all parameters for a Stream.
//////
class DirectionSpecificStreamParameters
{
public:
static DirectionSpecificStreamParameters null();
DirectionSpecificStreamParameters();
DirectionSpecificStreamParameters(const Device &device, int numChannels, SampleDataFormat format,
bool interleaved, PaTime suggestedLatency, void *hostApiSpecificStreamInfo);
// Set up methods:
void setDevice(const Device &device);
void setNumChannels(int numChannels);
void setSampleFormat(SampleDataFormat format, bool interleaved = true);
void setHostApiSpecificSampleFormat(PaSampleFormat format, bool interleaved = true);
void setSuggestedLatency(PaTime latency);
void setHostApiSpecificStreamInfo(void *streamInfo);
// Accessor methods:
PaStreamParameters *paStreamParameters();
const PaStreamParameters *paStreamParameters() const;
Device &device() const;
int numChannels() const;
SampleDataFormat sampleFormat() const;
bool isSampleFormatInterleaved() const;
bool isSampleFormatHostApiSpecific() const;
PaSampleFormat hostApiSpecificSampleFormat() const;
PaTime suggestedLatency() const;
void *hostApiSpecificStreamInfo() const;
private:
PaStreamParameters paStreamParameters_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX
#ifndef INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX
#define INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX
// ---------------------------------------------------------------------------------------
#include <cstddef>
#include "portaudio.h"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/SampleDataFormat.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief All parameters for one direction (either in or out) of a Stream. Together with
/// parameters common to both directions, two DirectionSpecificStreamParameters can make up
/// a StreamParameters object which contains all parameters for a Stream.
//////
class DirectionSpecificStreamParameters
{
public:
static DirectionSpecificStreamParameters null();
DirectionSpecificStreamParameters();
DirectionSpecificStreamParameters(const Device &device, int numChannels, SampleDataFormat format,
bool interleaved, PaTime suggestedLatency, void *hostApiSpecificStreamInfo);
// Set up methods:
void setDevice(const Device &device);
void setNumChannels(int numChannels);
void setSampleFormat(SampleDataFormat format, bool interleaved = true);
void setHostApiSpecificSampleFormat(PaSampleFormat format, bool interleaved = true);
void setSuggestedLatency(PaTime latency);
void setHostApiSpecificStreamInfo(void *streamInfo);
// Accessor methods:
PaStreamParameters *paStreamParameters();
const PaStreamParameters *paStreamParameters() const;
Device &device() const;
int numChannels() const;
SampleDataFormat sampleFormat() const;
bool isSampleFormatInterleaved() const;
bool isSampleFormatHostApiSpecific() const;
PaSampleFormat hostApiSpecificSampleFormat() const;
PaTime suggestedLatency() const;
void *hostApiSpecificStreamInfo() const;
private:
PaStreamParameters paStreamParameters_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SINGLEDIRECTIONSTREAMPARAMETERS_HXX

View file

@ -1,107 +1,108 @@
#ifndef INCLUDED_PORTAUDIO_EXCEPTION_HXX
#define INCLUDED_PORTAUDIO_EXCEPTION_HXX
// ---------------------------------------------------------------------------------------
#include <exception>
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Base class for all exceptions PortAudioCpp can throw.
///
/// Class is derived from std::exception.
//////
class Exception : public std::exception
{
public:
virtual ~Exception() throw() {}
virtual const char *what() const throw() = 0;
};
// -----------------------------------------------------------------------------------
//////
/// @brief Wrapper for PortAudio error codes to C++ exceptions.
///
/// It wraps up PortAudio's error handling mechanism using
/// C++ exceptions and is derived from std::exception for
/// easy exception handling and to ease integration with
/// other code.
///
/// To know what exceptions each function may throw, look up
/// the errors that can occur in the PortAudio documentation
/// for the equivalent functions.
///
/// Some functions are likely to throw an exception (such as
/// Stream::open(), etc) and these should always be called in
/// try{} catch{} blocks and the thrown exceptions should be
/// handled properly (ie. the application shouldn't just abort,
/// but merely display a warning dialog to the user or something).
/// However nearly all functions in PortAudioCpp are capable
/// of throwing exceptions. When a function like Stream::isStopped()
/// throws an exception, it's such an exceptional state that it's
/// not likely that it can be recovered. PaExceptions such as these
/// can ``safely'' be left to be handled by some outer catch-all-like
/// mechanism for unrecoverable errors.
//////
class PaException : public Exception
{
public:
explicit PaException(PaError error);
const char *what() const throw();
PaError paError() const;
const char *paErrorText() const;
bool isHostApiError() const; // extended
long lastHostApiError() const;
const char *lastHostApiErrorText() const;
bool operator==(const PaException &rhs) const;
bool operator!=(const PaException &rhs) const;
private:
PaError error_;
};
// -----------------------------------------------------------------------------------
//////
/// @brief Exceptions specific to PortAudioCpp (ie. exceptions which do not have an
/// equivalent PortAudio error code).
//////
class PaCppException : public Exception
{
public:
enum ExceptionSpecifier
{
UNABLE_TO_ADAPT_DEVICE
};
PaCppException(ExceptionSpecifier specifier);
const char *what() const throw();
ExceptionSpecifier specifier() const;
bool operator==(const PaCppException &rhs) const;
bool operator!=(const PaCppException &rhs) const;
private:
ExceptionSpecifier specifier_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_EXCEPTION_HXX
#ifndef INCLUDED_PORTAUDIO_EXCEPTION_HXX
#define INCLUDED_PORTAUDIO_EXCEPTION_HXX
// ---------------------------------------------------------------------------------------
#include <exception>
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Base class for all exceptions PortAudioCpp can throw.
///
/// Class is derived from std::exception.
//////
class Exception : public std::exception
{
public:
virtual ~Exception() throw() {}
virtual const char *what() const throw() = 0;
};
// -----------------------------------------------------------------------------------
//////
/// @brief Wrapper for PortAudio error codes to C++ exceptions.
///
/// It wraps up PortAudio's error handling mechanism using
/// C++ exceptions and is derived from std::exception for
/// easy exception handling and to ease integration with
/// other code.
///
/// To know what exceptions each function may throw, look up
/// the errors that can occure in the PortAudio documentation
/// for the equivalent functions.
///
/// Some functions are likely to throw an exception (such as
/// Stream::open(), etc) and these should always be called in
/// try{} catch{} blocks and the thrown exceptions should be
/// handled properly (ie. the application shouldn't just abort,
/// but merely display a warning dialog to the user or something).
/// However nearly all functions in PortAudioCpp are capable
/// of throwing exceptions. When a function like Stream::isStopped()
/// throws an exception, it's such an exceptional state that it's
/// not likely that it can be recovered. PaExceptions such as these
/// can ``safely'' be left to be handled by some outer catch-all-like
/// mechanism for unrecoverable errors.
//////
class PaException : public Exception
{
public:
explicit PaException(PaError error);
const char *what() const throw();
PaError paError() const;
const char *paErrorText() const;
bool isHostApiError() const; // extended
long lastHostApiError() const;
const char *lastHostApiErrorText() const;
bool operator==(const PaException &rhs) const;
bool operator!=(const PaException &rhs) const;
private:
PaError error_;
};
// -----------------------------------------------------------------------------------
//////
/// @brief Exceptions specific to PortAudioCpp (ie. exceptions which do not have an
/// equivalent PortAudio error code).
//////
class PaCppException : public Exception
{
public:
enum ExceptionSpecifier
{
UNABLE_TO_ADAPT_DEVICE
};
PaCppException(ExceptionSpecifier specifier);
const char *what() const throw();
ExceptionSpecifier specifier() const;
bool operator==(const PaCppException &rhs) const;
bool operator!=(const PaCppException &rhs) const;
private:
ExceptionSpecifier specifier_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_EXCEPTION_HXX

View file

@ -1,75 +1,76 @@
#ifndef INCLUDED_PORTAUDIO_HOSTAPI_HXX
#define INCLUDED_PORTAUDIO_HOSTAPI_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief HostApi represents a host API (usually type of driver) in the System.
///
/// A single System can support multiple HostApi's each one typically having
/// a set of Devices using that HostApi (usually driver type). All Devices in
/// the HostApi can be enumerated and the default input/output Device for this
/// HostApi can be retrieved.
//////
class HostApi
{
public:
typedef System::DeviceIterator DeviceIterator;
// query info: id, name, numDevices
PaHostApiTypeId typeId() const;
PaHostApiIndex index() const;
const char *name() const;
int deviceCount() const;
// iterate devices
DeviceIterator devicesBegin();
DeviceIterator devicesEnd();
// default devices
Device &defaultInputDevice() const;
Device &defaultOutputDevice() const;
// comparison operators
bool operator==(const HostApi &rhs) const;
bool operator!=(const HostApi &rhs) const;
private:
const PaHostApiInfo *info_;
Device **devices_;
private:
friend class System;
explicit HostApi(PaHostApiIndex index);
~HostApi();
HostApi(const HostApi &); // non-copyable
HostApi &operator=(const HostApi &); // non-copyable
};
}
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_HOSTAPI_HXX
#ifndef INCLUDED_PORTAUDIO_HOSTAPI_HXX
#define INCLUDED_PORTAUDIO_HOSTAPI_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief HostApi represents a host API (usually type of driver) in the System.
///
/// A single System can support multiple HostApi's each one typically having
/// a set of Devices using that HostApi (usually driver type). All Devices in
/// the HostApi can be enumerated and the default input/output Device for this
/// HostApi can be retreived.
//////
class HostApi
{
public:
typedef System::DeviceIterator DeviceIterator;
// query info: id, name, numDevices
PaHostApiTypeId typeId() const;
PaHostApiIndex index() const;
const char *name() const;
int deviceCount() const;
// iterate devices
DeviceIterator devicesBegin();
DeviceIterator devicesEnd();
// default devices
Device &defaultInputDevice() const;
Device &defaultOutputDevice() const;
// comparison operators
bool operator==(const HostApi &rhs) const;
bool operator!=(const HostApi &rhs) const;
private:
const PaHostApiInfo *info_;
Device **devices_;
private:
friend class System;
explicit HostApi(PaHostApiIndex index);
~HostApi();
HostApi(const HostApi &); // non-copyable
HostApi &operator=(const HostApi &); // non-copyable
};
}
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_HOSTAPI_HXX

View file

@ -1,49 +1,49 @@
#ifndef INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s)
namespace portaudio
{
class StreamParameters;
class CallbackInterface;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Callback stream using an instance of an object that's derived from the CallbackInterface
/// interface.
//////
class InterfaceCallbackStream : public CallbackStream
{
public:
InterfaceCallbackStream();
InterfaceCallbackStream(const StreamParameters &parameters, CallbackInterface &instance);
~InterfaceCallbackStream();
void open(const StreamParameters &parameters, CallbackInterface &instance);
private:
InterfaceCallbackStream(const InterfaceCallbackStream &); // non-copyable
InterfaceCallbackStream &operator=(const InterfaceCallbackStream &); // non-copyable
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s)
namespace portaudio
{
class StreamParameters;
class CallbackInterface;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Callback stream using an instance of an object that's derived from the CallbackInterface
/// interface.
//////
class InterfaceCallbackStream : public CallbackStream
{
public:
InterfaceCallbackStream();
InterfaceCallbackStream(const StreamParameters &parameters, CallbackInterface &instance);
~InterfaceCallbackStream();
void open(const StreamParameters &parameters, CallbackInterface &instance);
private:
InterfaceCallbackStream(const InterfaceCallbackStream &); // non-copyable
InterfaceCallbackStream &operator=(const InterfaceCallbackStream &); // non-copyable
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_INTERFACECALLBACKSTREAM_HXX

View file

@ -1,107 +1,107 @@
#ifndef INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/InterfaceCallbackStream.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Callback stream using a class's member function as a callback. Template argument T is the type of the
/// class of which a member function is going to be used.
///
/// Example usage:
/// @verbatim MemFunCallback<MyClass> stream = MemFunCallbackStream(parameters, *this, &MyClass::myCallbackFunction); @endverbatim
//////
template<typename T>
class MemFunCallbackStream : public CallbackStream
{
public:
typedef int (T::*CallbackFunPtr)(const void *, void *, unsigned long, const PaStreamCallbackTimeInfo *,
PaStreamCallbackFlags);
// -------------------------------------------------------------------------------
MemFunCallbackStream()
{
}
MemFunCallbackStream(const StreamParameters &parameters, T &instance, CallbackFunPtr memFun) : adapter_(instance, memFun)
{
open(parameters);
}
~MemFunCallbackStream()
{
close();
}
void open(const StreamParameters &parameters, T &instance, CallbackFunPtr memFun)
{
// XXX: need to check if already open?
adapter_.init(instance, memFun);
open(parameters);
}
private:
MemFunCallbackStream(const MemFunCallbackStream &); // non-copyable
MemFunCallbackStream &operator=(const MemFunCallbackStream &); // non-copyable
//////
/// @brief Inner class which adapts a member function callback to a CallbackInterface compliant
/// class (so it can be adapted using the paCallbackAdapter function).
//////
class MemFunToCallbackInterfaceAdapter : public CallbackInterface
{
public:
MemFunToCallbackInterfaceAdapter() {}
MemFunToCallbackInterfaceAdapter(T &instance, CallbackFunPtr memFun) : instance_(&instance), memFun_(memFun) {}
void init(T &instance, CallbackFunPtr memFun)
{
instance_ = &instance;
memFun_ = memFun;
}
int paCallbackFun(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags)
{
return (instance_->*memFun_)(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags);
}
private:
T *instance_;
CallbackFunPtr memFun_;
};
MemFunToCallbackInterfaceAdapter adapter_;
void open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::callbackInterfaceToPaCallbackAdapter,
static_cast<void *>(&adapter_));
if (err != paNoError)
throw PaException(err);
}
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
#ifndef INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
#define INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/CallbackStream.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/InterfaceCallbackStream.hxx"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief Callback stream using a class's member function as a callback. Template argument T is the type of the
/// class of which a member function is going to be used.
///
/// Example usage:
/// @verbatim MemFunCallback<MyClass> stream = MemFunCallbackStream(parameters, *this, &MyClass::myCallbackFunction); @endverbatim
//////
template<typename T>
class MemFunCallbackStream : public CallbackStream
{
public:
typedef int (T::*CallbackFunPtr)(const void *, void *, unsigned long, const PaStreamCallbackTimeInfo *,
PaStreamCallbackFlags);
// -------------------------------------------------------------------------------
MemFunCallbackStream()
{
}
MemFunCallbackStream(const StreamParameters &parameters, T &instance, CallbackFunPtr memFun) : adapter_(instance, memFun)
{
open(parameters);
}
~MemFunCallbackStream()
{
close();
}
void open(const StreamParameters &parameters, T &instance, CallbackFunPtr memFun)
{
// XXX: need to check if already open?
adapter_.init(instance, memFun);
open(parameters);
}
private:
MemFunCallbackStream(const MemFunCallbackStream &); // non-copyable
MemFunCallbackStream &operator=(const MemFunCallbackStream &); // non-copyable
//////
/// @brief Inner class which adapts a member function callback to a CallbackInterface compliant
/// class (so it can be adapted using the paCallbackAdapter function).
//////
class MemFunToCallbackInterfaceAdapter : public CallbackInterface
{
public:
MemFunToCallbackInterfaceAdapter() {}
MemFunToCallbackInterfaceAdapter(T &instance, CallbackFunPtr memFun) : instance_(&instance), memFun_(memFun) {}
void init(T &instance, CallbackFunPtr memFun)
{
instance_ = &instance;
memFun_ = memFun;
}
int paCallbackFun(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags)
{
return (instance_->*memFun_)(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags);
}
private:
T *instance_;
CallbackFunPtr memFun_;
};
MemFunToCallbackInterfaceAdapter adapter_;
void open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::callbackInterfaceToPaCallbackAdapter,
static_cast<void *>(&adapter_));
if (err != paNoError)
throw PaException(err);
}
};
} // portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_MEMFUNCALLBACKSTREAM_HXX

View file

@ -1,109 +1,109 @@
#ifndef INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX
#define INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX
// ---------------------------------------------------------------------------------------
//////
/// @mainpage PortAudioCpp
///
/// <h1>PortAudioCpp - A Native C++ Binding of PortAudio V19</h1>
/// <h2>PortAudio</h2>
/// <p>
/// PortAudio is a portable and mature C API for accessing audio hardware. It offers both callback-based and blocking
/// style input and output, deals with sample data format conversions, dithering and much more. There are a large number
/// of implementations available for various platforms including Windows MME, Windows DirectX, Windows and MacOS (Classic)
/// ASIO, MacOS Classic SoundManager, MacOS X CoreAudio, OSS (Linux), Linux ALSA, JACK (MacOS X and Linux) and SGI Irix
/// AL. Note that, currently not all of these implementations are equally complete or up-to-date (as PortAudio V19 is
/// still in development). Because PortAudio has a C API, it can easily be called from a variety of other programming
/// languages.
/// </p>
/// <h2>PortAudioCpp</h2>
/// <p>
/// Although, it is possible to use PortAudio's C API from within a C++ program, this is usually a little awkward
/// as procedural and object-oriented paradigms need to be mixed. PortAudioCpp aims to resolve this by encapsulating
/// PortAudio's C API to form an equivalent object-oriented C++ API. It provides a more natural integration of PortAudio
/// into C++ programs as well as a more structured interface. PortAudio's concepts were preserved as much as possible and
/// no additional features were added except for some `convenience methods'.
/// </p>
/// <p>
/// PortAudioCpp's main features are:
/// <ul>
/// <li>Structured object model.</li>
/// <li>C++ exception handling instead of C-style error return codes.</li>
/// <li>Handling of callbacks using free functions (C and C++), static functions, member functions or instances of classes
/// derived from a given interface.</li>
/// <li>STL compliant iterators to host APIs and devices.</li>
/// <li>Some additional convenience functions to more easily set up and use PortAudio.</li>
/// </ul>
/// </p>
/// <p>
/// PortAudioCpp requires a recent version of the PortAudio V19 source code. This can be obtained from CVS or as a snapshot
/// from the website. The examples also require the ASIO 2 SDK which can be obtained from the Steinberg website. Alternatively, the
/// examples can easily be modified to compile without needing ASIO.
/// </p>
/// <p>
/// Supported platforms:
/// <ul>
/// <li>Microsoft Visual C++ 6.0, 7.0 (.NET 2002) and 7.1 (.NET 2003).</li>
/// <li>GNU G++ 2.95 and G++ 3.3.</li>
/// </ul>
/// Other platforms should be easily supported as PortAudioCpp is platform-independent and (reasonably) C++ standard compliant.
/// </p>
/// <p>
/// This documentation mainly provides information specific to PortAudioCpp. For a more complete explanation of all of the
/// concepts used, please consult the PortAudio documentation.
/// </p>
/// <p>
/// PortAudioCpp was developed by Merlijn Blaauw with many great suggestions and help from Ross Bencina. Ludwig Schwardt provided
/// GNU/Linux build files and checked G++ compatibility. PortAudioCpp may be used under the same licensing, conditions and
/// warranty as PortAudio. See <a href="http://www.portaudio.com/license.html">the PortAudio license</a> for more details.
/// </p>
/// <h2>Links</h2>
/// <p>
/// <a href="http://www.portaudio.com/">Official PortAudio site.</a><br>
/// </p>
//////
// ---------------------------------------------------------------------------------------
//////
/// @namespace portaudio
///
/// To avoid name collision, everything in PortAudioCpp is in the portaudio
/// namespace. If this name is too long it's usually pretty safe to use an
/// alias like ``namespace pa = portaudio;''.
//////
// ---------------------------------------------------------------------------------------
//////
/// @file PortAudioCpp.hxx
/// An include-all header file (for lazy programmers and using pre-compiled headers).
//////
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/AutoSystem.hxx"
#include "portaudiocpp/BlockingStream.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
#include "portaudiocpp/CallbackStream.hxx"
#include "portaudiocpp/CFunCallbackStream.hxx"
#include "portaudiocpp/CppFunCallbackStream.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/InterfaceCallbackStream.hxx"
#include "portaudiocpp/MemFunCallbackStream.hxx"
#include "portaudiocpp/SampleDataFormat.hxx"
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
#include "portaudiocpp/Stream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
#include "portaudiocpp/SystemHostApiIterator.hxx"
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX
#ifndef INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX
#define INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX
// ---------------------------------------------------------------------------------------
//////
/// @mainpage PortAudioCpp
///
/// <h1>PortAudioCpp - A Native C++ Binding of PortAudio V19</h1>
/// <h2>PortAudio</h2>
/// <p>
/// PortAudio is a portable and mature C API for accessing audio hardware. It offers both callback-based and blocking
/// style input and output, deals with sample data format conversions, dithering and much more. There are a large number
/// of implementations available for various platforms including Windows MME, Windows DirectX, Windows and MacOS (Classic)
/// ASIO, MacOS Classic SoundManager, MacOS X CoreAudio, OSS (Linux), Linux ALSA, JACK (MacOS X and Linux) and SGI Irix
/// AL. Note that, currently not all of these implementations are equally complete or up-to-date (as PortAudio V19 is
/// still in development). Because PortAudio has a C API, it can easily be called from a variety of other programming
/// languages.
/// </p>
/// <h2>PortAudioCpp</h2>
/// <p>
/// Although, it is possible to use PortAudio's C API from within a C++ program, this is usually a little awkward
/// as procedural and object-oriented paradigms need to be mixed. PortAudioCpp aims to resolve this by encapsulating
/// PortAudio's C API to form an equivalent object-oriented C++ API. It provides a more natural integration of PortAudio
/// into C++ programs as well as a more structured interface. PortAudio's concepts were preserved as much as possible and
/// no additional features were added except for some `convenience methods'.
/// </p>
/// <p>
/// PortAudioCpp's main features are:
/// <ul>
/// <li>Structured object model.</li>
/// <li>C++ exception handling instead of C-style error return codes.</li>
/// <li>Handling of callbacks using free functions (C and C++), static functions, member functions or instances of classes
/// derived from a given interface.</li>
/// <li>STL compliant iterators to host APIs and devices.</li>
/// <li>Some additional convenience functions to more easily set up and use PortAudio.</li>
/// </ul>
/// </p>
/// <p>
/// PortAudioCpp requires a recent version of the PortAudio V19 source code. This can be obtained from CVS or as a snapshot
/// from the website. The examples also require the ASIO 2 SDK which can be obtained from the Steinberg website. Alternatively, the
/// examples can easily be modified to compile without needing ASIO.
/// </p>
/// <p>
/// Supported platforms:
/// <ul>
/// <li>Microsoft Visual C++ 6.0, 7.0 (.NET 2002) and 7.1 (.NET 2003).</li>
/// <li>GNU G++ 2.95 and G++ 3.3.</li>
/// </ul>
/// Other platforms should be easily supported as PortAudioCpp is platform-independent and (reasonably) C++ standard compliant.
/// </p>
/// <p>
/// This documentation mainly provides information specific to PortAudioCpp. For a more complete explaination of all of the
/// concepts used, please consult the PortAudio documentation.
/// </p>
/// <p>
/// PortAudioCpp was developed by Merlijn Blaauw with many great suggestions and help from Ross Bencina. Ludwig Schwardt provided
/// GNU/Linux build files and checked G++ compatibility. PortAudioCpp may be used under the same licensing, conditions and
/// warranty as PortAudio. See <a href="http://www.portaudio.com/license.html">the PortAudio license</a> for more details.
/// </p>
/// <h2>Links</h2>
/// <p>
/// <a href="http://www.portaudio.com/">Official PortAudio site.</a><br>
/// </p>
//////
// ---------------------------------------------------------------------------------------
//////
/// @namespace portaudio
///
/// To avoid name collision, everything in PortAudioCpp is in the portaudio
/// namespace. If this name is too long it's usually pretty safe to use an
/// alias like ``namespace pa = portaudio;''.
//////
// ---------------------------------------------------------------------------------------
//////
/// @file PortAudioCpp.hxx
/// An include-all header file (for lazy programmers and using pre-compiled headers).
//////
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/AutoSystem.hxx"
#include "portaudiocpp/BlockingStream.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
#include "portaudiocpp/CallbackStream.hxx"
#include "portaudiocpp/CFunCallbackStream.hxx"
#include "portaudiocpp/CppFunCallbackStream.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/InterfaceCallbackStream.hxx"
#include "portaudiocpp/MemFunCallbackStream.hxx"
#include "portaudiocpp/SampleDataFormat.hxx"
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
#include "portaudiocpp/Stream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
#include "portaudiocpp/SystemHostApiIterator.hxx"
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_PORTAUDIOCPP_HXX

View file

@ -1,35 +1,35 @@
#ifndef INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX
#define INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief PortAudio sample data formats.
///
/// Small helper enum to wrap the PortAudio defines.
//////
enum SampleDataFormat
{
INVALID_FORMAT = 0,
FLOAT32 = paFloat32,
INT32 = paInt32,
INT24 = paInt24,
INT16 = paInt16,
INT8 = paInt8,
UINT8 = paUInt8
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX
#ifndef INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX
#define INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
namespace portaudio
{
//////
/// @brief PortAudio sample data formats.
///
/// Small helper enum to wrap the PortAudio defines.
//////
enum SampleDataFormat
{
INVALID_FORMAT = 0,
FLOAT32 = paFloat32,
INT32 = paInt32,
INT24 = paInt24,
INT16 = paInt16,
INT8 = paInt8,
UINT8 = paUInt8
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SAMPLEDATAFORMAT_HXX

View file

@ -1,81 +1,82 @@
#ifndef INCLUDED_PORTAUDIO_STREAM_HXX
#define INCLUDED_PORTAUDIO_STREAM_HXX
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief A Stream represents an active or inactive input and/or output data
/// stream in the System.
///
/// Concrete Stream classes should ensure themselves being in a closed state at
/// destruction (i.e. by calling their own close() method in their deconstructor).
/// Following good C++ programming practices, care must be taken to ensure no
/// exceptions are thrown by the deconstructor of these classes. As a consequence,
/// clients need to explicitly call close() to ensure the stream closed successfully.
///
/// The Stream object can be used to manipulate the Stream's state. Also, time-constant
/// and time-varying information about the Stream can be retrieved.
//////
class Stream
{
public:
// Opening/closing:
virtual ~Stream();
virtual void close();
bool isOpen() const;
// Additional set up:
void setStreamFinishedCallback(PaStreamFinishedCallback *callback);
// State management:
void start();
void stop();
void abort();
bool isStopped() const;
bool isActive() const;
// Stream info (time-constant, but might become time-variant soon):
PaTime inputLatency() const;
PaTime outputLatency() const;
double sampleRate() const;
// Stream info (time-varying):
PaTime time() const;
// Accessors for PortAudio PaStream, useful for interfacing
// with PortAudio add-ons (such as PortMixer) for instance:
const PaStream *paStream() const;
PaStream *paStream();
protected:
Stream(); // abstract class
PaStream *stream_;
private:
Stream(const Stream &); // non-copyable
Stream &operator=(const Stream &); // non-copyable
};
} // namespace portaudio
#endif // INCLUDED_PORTAUDIO_STREAM_HXX
#ifndef INCLUDED_PORTAUDIO_STREAM_HXX
#define INCLUDED_PORTAUDIO_STREAM_HXX
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class StreamParameters;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief A Stream represents an active or inactive input and/or output data
/// stream in the System.
///
/// Concrete Stream classes should ensure themselves being in a closed state at
/// destruction (i.e. by calling their own close() method in their deconstructor).
/// Following good C++ programming practices, care must be taken to ensure no
/// exceptions are thrown by the deconstructor of these classes. As a consequence,
/// clients need to explicitly call close() to ensure the stream closed successfully.
///
/// The Stream object can be used to manipulate the Stream's state. Also, time-constant
/// and time-varying information about the Stream can be retreived.
//////
class Stream
{
public:
// Opening/closing:
virtual ~Stream();
virtual void close();
bool isOpen() const;
// Additional set up:
void setStreamFinishedCallback(PaStreamFinishedCallback *callback);
// State management:
void start();
void stop();
void abort();
bool isStopped() const;
bool isActive() const;
// Stream info (time-constant, but might become time-variant soon):
PaTime inputLatency() const;
PaTime outputLatency() const;
double sampleRate() const;
// Stream info (time-varying):
PaTime time() const;
// Accessors for PortAudio PaStream, useful for interfacing
// with PortAudio add-ons (such as PortMixer) for instance:
const PaStream *paStream() const;
PaStream *paStream();
protected:
Stream(); // abstract class
PaStream *stream_;
private:
Stream(const Stream &); // non-copyable
Stream &operator=(const Stream &); // non-copyable
};
} // namespace portaudio
#endif // INCLUDED_PORTAUDIO_STREAM_HXX

View file

@ -1,77 +1,77 @@
#ifndef INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX
#define INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief The entire set of parameters needed to configure and open
/// a Stream.
///
/// It contains parameters of input, output and shared parameters.
/// Using the isSupported() method, the StreamParameters can be
/// checked if opening a Stream using this StreamParameters would
/// succeed or not. Accessors are provided to higher-level parameters
/// aswell as the lower-level parameters which are mainly intended for
/// internal use.
//////
class StreamParameters
{
public:
StreamParameters();
StreamParameters(const DirectionSpecificStreamParameters &inputParameters,
const DirectionSpecificStreamParameters &outputParameters, double sampleRate,
unsigned long framesPerBuffer, PaStreamFlags flags);
// Set up for direction-specific:
void setInputParameters(const DirectionSpecificStreamParameters &parameters);
void setOutputParameters(const DirectionSpecificStreamParameters &parameters);
// Set up for common parameters:
void setSampleRate(double sampleRate);
void setFramesPerBuffer(unsigned long framesPerBuffer);
void setFlag(PaStreamFlags flag);
void unsetFlag(PaStreamFlags flag);
void clearFlags();
// Validation:
bool isSupported() const;
// Accessors (direction-specific):
DirectionSpecificStreamParameters &inputParameters();
const DirectionSpecificStreamParameters &inputParameters() const;
DirectionSpecificStreamParameters &outputParameters();
const DirectionSpecificStreamParameters &outputParameters() const;
// Accessors (common):
double sampleRate() const;
unsigned long framesPerBuffer() const;
PaStreamFlags flags() const;
bool isFlagSet(PaStreamFlags flag) const;
private:
// Half-duplex specific parameters:
DirectionSpecificStreamParameters inputParameters_;
DirectionSpecificStreamParameters outputParameters_;
// Common parameters:
double sampleRate_;
unsigned long framesPerBuffer_;
PaStreamFlags flags_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX
#ifndef INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX
#define INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief The entire set of parameters needed to configure and open
/// a Stream.
///
/// It contains parameters of input, output and shared parameters.
/// Using the isSupported() method, the StreamParameters can be
/// checked if opening a Stream using this StreamParameters would
/// succeed or not. Accessors are provided to higher-level parameters
/// aswell as the lower-level parameters which are mainly intended for
/// internal use.
//////
class StreamParameters
{
public:
StreamParameters();
StreamParameters(const DirectionSpecificStreamParameters &inputParameters,
const DirectionSpecificStreamParameters &outputParameters, double sampleRate,
unsigned long framesPerBuffer, PaStreamFlags flags);
// Set up for direction-specific:
void setInputParameters(const DirectionSpecificStreamParameters &parameters);
void setOutputParameters(const DirectionSpecificStreamParameters &parameters);
// Set up for common parameters:
void setSampleRate(double sampleRate);
void setFramesPerBuffer(unsigned long framesPerBuffer);
void setFlag(PaStreamFlags flag);
void unsetFlag(PaStreamFlags flag);
void clearFlags();
// Validation:
bool isSupported() const;
// Accessors (direction-specific):
DirectionSpecificStreamParameters &inputParameters();
const DirectionSpecificStreamParameters &inputParameters() const;
DirectionSpecificStreamParameters &outputParameters();
const DirectionSpecificStreamParameters &outputParameters() const;
// Accessors (common):
double sampleRate() const;
unsigned long framesPerBuffer() const;
PaStreamFlags flags() const;
bool isFlagSet(PaStreamFlags flag) const;
private:
// Half-duplex specific parameters:
DirectionSpecificStreamParameters inputParameters_;
DirectionSpecificStreamParameters outputParameters_;
// Common parameters:
double sampleRate_;
unsigned long framesPerBuffer_;
PaStreamFlags flags_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_STREAMPARAMETERS_HXX

View file

@ -1,106 +1,107 @@
#ifndef INCLUDED_PORTAUDIO_SYSTEM_HXX
#define INCLUDED_PORTAUDIO_SYSTEM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
class Stream;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief System singleton which represents the PortAudio system.
///
/// The System is used to initialize/terminate PortAudio and provide
/// a single access point to the PortAudio System (instance()).
/// It can be used to iterate through all HostApi 's in the System as
/// well as all devices in the System. It also provides some utility
/// functionality of PortAudio.
///
/// Terminating the System will also abort and close the open streams.
/// The Stream objects will need to be deallocated by the client though
/// (it's usually a good idea to have them cleaned up automatically).
//////
class System
{
public:
class HostApiIterator; // forward declaration
class DeviceIterator; // forward declaration
// -------------------------------------------------------------------------------
static int version();
static const char *versionText();
static void initialize();
static void terminate();
static System &instance();
static bool exists();
// -------------------------------------------------------------------------------
// host apis:
HostApiIterator hostApisBegin();
HostApiIterator hostApisEnd();
HostApi &defaultHostApi();
HostApi &hostApiByTypeId(PaHostApiTypeId type);
HostApi &hostApiByIndex(PaHostApiIndex index);
int hostApiCount();
// -------------------------------------------------------------------------------
// devices:
DeviceIterator devicesBegin();
DeviceIterator devicesEnd();
Device &defaultInputDevice();
Device &defaultOutputDevice();
Device &deviceByIndex(PaDeviceIndex index);
int deviceCount();
static Device &nullDevice();
// -------------------------------------------------------------------------------
// misc:
void sleep(long msec);
int sizeOfSample(PaSampleFormat format);
private:
System();
~System();
static System *instance_;
static int initCount_;
static HostApi **hostApis_;
static Device **devices_;
static Device *nullDevice_;
};
} // namespace portaudio
#endif // INCLUDED_PORTAUDIO_SYSTEM_HXX
#ifndef INCLUDED_PORTAUDIO_SYSTEM_HXX
#define INCLUDED_PORTAUDIO_SYSTEM_HXX
// ---------------------------------------------------------------------------------------
#include "portaudio.h"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
class Stream;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief System singleton which represents the PortAudio system.
///
/// The System is used to initialize/terminate PortAudio and provide
/// a single acccess point to the PortAudio System (instance()).
/// It can be used to iterate through all HostApi 's in the System as
/// well as all devices in the System. It also provides some utility
/// functionality of PortAudio.
///
/// Terminating the System will also abort and close the open streams.
/// The Stream objects will need to be deallocated by the client though
/// (it's usually a good idea to have them cleaned up automatically).
//////
class System
{
public:
class HostApiIterator; // forward declaration
class DeviceIterator; // forward declaration
// -------------------------------------------------------------------------------
static int version();
static const char *versionText();
static void initialize();
static void terminate();
static System &instance();
static bool exists();
// -------------------------------------------------------------------------------
// host apis:
HostApiIterator hostApisBegin();
HostApiIterator hostApisEnd();
HostApi &defaultHostApi();
HostApi &hostApiByTypeId(PaHostApiTypeId type);
HostApi &hostApiByIndex(PaHostApiIndex index);
int hostApiCount();
// -------------------------------------------------------------------------------
// devices:
DeviceIterator devicesBegin();
DeviceIterator devicesEnd();
Device &defaultInputDevice();
Device &defaultOutputDevice();
Device &deviceByIndex(PaDeviceIndex index);
int deviceCount();
static Device &nullDevice();
// -------------------------------------------------------------------------------
// misc:
void sleep(long msec);
int sizeOfSample(PaSampleFormat format);
private:
System();
~System();
static System *instance_;
static int initCount_;
static HostApi **hostApis_;
static Device **devices_;
static Device *nullDevice_;
};
} // namespace portaudio
#endif // INCLUDED_PORTAUDIO_SYSTEM_HXX

View file

@ -1,65 +1,66 @@
#ifndef INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX
#define INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include <cstddef>
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Iterator class for iterating through all Devices in a System.
///
/// Devices will be iterated by iterating all Devices in each
/// HostApi in the System. Compliant with the STL bidirectional
/// iterator concept.
//////
class System::DeviceIterator
{
public:
typedef std::bidirectional_iterator_tag iterator_category;
typedef Device value_type;
typedef ptrdiff_t difference_type;
typedef Device * pointer;
typedef Device & reference;
Device &operator*() const;
Device *operator->() const;
DeviceIterator &operator++();
DeviceIterator operator++(int);
DeviceIterator &operator--();
DeviceIterator operator--(int);
bool operator==(const DeviceIterator &rhs) const;
bool operator!=(const DeviceIterator &rhs) const;
private:
friend class System;
friend class HostApi;
Device **ptr_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX
#ifndef INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX
#define INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include <cstddef>
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class Device;
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Iterator class for iterating through all Devices in a System.
///
/// Devices will be iterated by iterating all Devices in each
/// HostApi in the System. Compliant with the STL bidirectional
/// iterator concept.
//////
class System::DeviceIterator
{
public:
typedef std::bidirectional_iterator_tag iterator_category;
typedef Device value_type;
typedef ptrdiff_t difference_type;
typedef Device * pointer;
typedef Device & reference;
Device &operator*() const;
Device *operator->() const;
DeviceIterator &operator++();
DeviceIterator operator++(int);
DeviceIterator &operator--();
DeviceIterator operator--(int);
bool operator==(const DeviceIterator &rhs);
bool operator!=(const DeviceIterator &rhs);
private:
friend class System;
friend class HostApi;
Device **ptr_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SYSTEMDEVICEITERATOR_HXX

View file

@ -1,61 +1,61 @@
#ifndef INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX
#define INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include <cstddef>
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Iterator class for iterating through all HostApis in a System.
///
/// Compliant with the STL bidirectional iterator concept.
//////
class System::HostApiIterator
{
public:
typedef std::bidirectional_iterator_tag iterator_category;
typedef Device value_type;
typedef ptrdiff_t difference_type;
typedef HostApi * pointer;
typedef HostApi & reference;
HostApi &operator*() const;
HostApi *operator->() const;
HostApiIterator &operator++();
HostApiIterator operator++(int);
HostApiIterator &operator--();
HostApiIterator operator--(int);
bool operator==(const HostApiIterator &rhs) const;
bool operator!=(const HostApiIterator &rhs) const;
private:
friend class System;
HostApi **ptr_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX
#ifndef INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX
#define INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX
// ---------------------------------------------------------------------------------------
#include <iterator>
#include <cstddef>
#include "portaudiocpp/System.hxx"
// ---------------------------------------------------------------------------------------
// Forward declaration(s):
namespace portaudio
{
class HostApi;
}
// ---------------------------------------------------------------------------------------
// Declaration(s):
namespace portaudio
{
//////
/// @brief Iterator class for iterating through all HostApis in a System.
///
/// Compliant with the STL bidirectional iterator concept.
//////
class System::HostApiIterator
{
public:
typedef std::bidirectional_iterator_tag iterator_category;
typedef Device value_type;
typedef ptrdiff_t difference_type;
typedef HostApi * pointer;
typedef HostApi & reference;
HostApi &operator*() const;
HostApi *operator->() const;
HostApiIterator &operator++();
HostApiIterator operator++(int);
HostApiIterator &operator--();
HostApiIterator operator--(int);
bool operator==(const HostApiIterator &rhs);
bool operator!=(const HostApiIterator &rhs);
private:
friend class System;
HostApi **ptr_;
};
} // namespace portaudio
// ---------------------------------------------------------------------------------------
#endif // INCLUDED_PORTAUDIO_SYSTEMHOSTAPIITERATOR_HXX

Binary file not shown.

View file

@ -1,8 +1,9 @@
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@ -15,61 +16,6 @@
@SET_MAKE@
VPATH = @srcdir@
am__is_gnu_make = { \
if test -z '$(MAKELEVEL)'; then \
false; \
elif test -n '$(MAKE_HOST)'; then \
true; \
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
true; \
else \
false; \
fi; \
}
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
@ -89,11 +35,11 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = lib
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@ -118,12 +64,6 @@ am__nobase_list = $(am__nobase_strip_setup); \
am__base_list = \
sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
test -z "$$files" \
|| { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
libportaudiocpp_la_DEPENDENCIES = \
@ -136,88 +76,28 @@ am_libportaudiocpp_la_OBJECTS = BlockingStream.lo CallbackInterface.lo \
StreamParameters.lo System.lo SystemDeviceIterator.lo \
SystemHostApiIterator.lo
libportaudiocpp_la_OBJECTS = $(am_libportaudiocpp_la_OBJECTS)
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 =
libportaudiocpp_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
$(AM_CXXFLAGS) $(CXXFLAGS) $(libportaudiocpp_la_LDFLAGS) \
$(LDFLAGS) -o $@
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__maybe_remake_depfiles = depfiles
am__depfiles_remade = ./$(DEPDIR)/BlockingStream.Plo \
./$(DEPDIR)/CFunCallbackStream.Plo \
./$(DEPDIR)/CallbackInterface.Plo \
./$(DEPDIR)/CallbackStream.Plo \
./$(DEPDIR)/CppFunCallbackStream.Plo ./$(DEPDIR)/Device.Plo \
./$(DEPDIR)/DirectionSpecificStreamParameters.Plo \
./$(DEPDIR)/Exception.Plo ./$(DEPDIR)/HostApi.Plo \
./$(DEPDIR)/InterfaceCallbackStream.Plo \
./$(DEPDIR)/MemFunCallbackStream.Plo ./$(DEPDIR)/Stream.Plo \
./$(DEPDIR)/StreamParameters.Plo ./$(DEPDIR)/System.Plo \
./$(DEPDIR)/SystemDeviceIterator.Plo \
./$(DEPDIR)/SystemHostApiIterator.Plo
libportaudiocpp_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(libportaudiocpp_la_LDFLAGS) $(LDFLAGS) -o $@
depcomp = $(SHELL) $(top_srcdir)/../../depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
$(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo " CXX " $@;
am__v_CXX_1 =
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo " CXXLD " $@;
am__v_CXXLD_1 =
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
SOURCES = $(libportaudiocpp_la_SOURCES)
DIST_SOURCES = $(libportaudiocpp_la_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
@ -227,9 +107,8 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@ -245,7 +124,6 @@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
@ -262,11 +140,9 @@ LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
LT_VERSION_INFO = @LT_VERSION_INFO@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MANIFEST_TOOL = @MANIFEST_TOOL@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
@ -293,7 +169,6 @@ abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
@ -327,6 +202,7 @@ libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
@ -334,7 +210,6 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@ -382,13 +257,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu lib/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu lib/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@ -399,9 +275,9 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
@$(NORMAL_INSTALL)
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
list2=; for p in $$list; do \
if test -f $$p; then \
@ -409,8 +285,6 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
else :; fi; \
done; \
test -z "$$list2" || { \
echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
$(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
$(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
}
@ -426,17 +300,14 @@ uninstall-libLTLIBRARIES:
clean-libLTLIBRARIES:
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
@list='$(lib_LTLIBRARIES)'; \
locs=`for p in $$list; do echo $$p; done | \
sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
sort -u`; \
test -z "$$locs" || { \
echo rm -f $${locs}; \
rm -f $${locs}; \
}
libportaudiocpp.la: $(libportaudiocpp_la_OBJECTS) $(libportaudiocpp_la_DEPENDENCIES) $(EXTRA_libportaudiocpp_la_DEPENDENCIES)
$(AM_V_CXXLD)$(libportaudiocpp_la_LINK) -rpath $(libdir) $(libportaudiocpp_la_OBJECTS) $(libportaudiocpp_la_LIBADD) $(LIBS)
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
test "$$dir" != "$$p" || dir=.; \
echo "rm -f \"$${dir}/so_locations\""; \
rm -f "$${dir}/so_locations"; \
done
libportaudiocpp.la: $(libportaudiocpp_la_OBJECTS) $(libportaudiocpp_la_DEPENDENCIES)
$(libportaudiocpp_la_LINK) -rpath $(libdir) $(libportaudiocpp_la_OBJECTS) $(libportaudiocpp_la_LIBADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@ -444,161 +315,155 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BlockingStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CFunCallbackStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CallbackInterface.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CallbackStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CppFunCallbackStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Device.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectionSpecificStreamParameters.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Exception.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HostApi.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InterfaceCallbackStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MemFunCallbackStream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Stream.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StreamParameters.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/System.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SystemDeviceIterator.Plo@am__quote@ # am--include-marker
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SystemHostApiIterator.Plo@am__quote@ # am--include-marker
$(am__depfiles_remade):
@$(MKDIR_P) $(@D)
@echo '# dummy' >$@-t && $(am__mv) $@-t $@
am--depfiles: $(am__depfiles_remade)
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BlockingStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CFunCallbackStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CallbackInterface.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CallbackStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CppFunCallbackStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Device.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/DirectionSpecificStreamParameters.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Exception.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/HostApi.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/InterfaceCallbackStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MemFunCallbackStream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Stream.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/StreamParameters.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/System.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SystemDeviceIterator.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/SystemHostApiIterator.Plo@am__quote@
.cxx.o:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cxx.obj:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.cxx.lo:
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
BlockingStream.lo: $(SRCDIR)/BlockingStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BlockingStream.lo -MD -MP -MF $(DEPDIR)/BlockingStream.Tpo -c -o BlockingStream.lo `test -f '$(SRCDIR)/BlockingStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/BlockingStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/BlockingStream.Tpo $(DEPDIR)/BlockingStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/BlockingStream.cxx' object='BlockingStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT BlockingStream.lo -MD -MP -MF $(DEPDIR)/BlockingStream.Tpo -c -o BlockingStream.lo `test -f '$(SRCDIR)/BlockingStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/BlockingStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/BlockingStream.Tpo $(DEPDIR)/BlockingStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/BlockingStream.cxx' object='BlockingStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BlockingStream.lo `test -f '$(SRCDIR)/BlockingStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/BlockingStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o BlockingStream.lo `test -f '$(SRCDIR)/BlockingStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/BlockingStream.cxx
CallbackInterface.lo: $(SRCDIR)/CallbackInterface.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CallbackInterface.lo -MD -MP -MF $(DEPDIR)/CallbackInterface.Tpo -c -o CallbackInterface.lo `test -f '$(SRCDIR)/CallbackInterface.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackInterface.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/CallbackInterface.Tpo $(DEPDIR)/CallbackInterface.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/CallbackInterface.cxx' object='CallbackInterface.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CallbackInterface.lo -MD -MP -MF $(DEPDIR)/CallbackInterface.Tpo -c -o CallbackInterface.lo `test -f '$(SRCDIR)/CallbackInterface.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackInterface.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/CallbackInterface.Tpo $(DEPDIR)/CallbackInterface.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/CallbackInterface.cxx' object='CallbackInterface.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CallbackInterface.lo `test -f '$(SRCDIR)/CallbackInterface.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackInterface.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CallbackInterface.lo `test -f '$(SRCDIR)/CallbackInterface.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackInterface.cxx
CallbackStream.lo: $(SRCDIR)/CallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CallbackStream.lo -MD -MP -MF $(DEPDIR)/CallbackStream.Tpo -c -o CallbackStream.lo `test -f '$(SRCDIR)/CallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/CallbackStream.Tpo $(DEPDIR)/CallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/CallbackStream.cxx' object='CallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CallbackStream.lo -MD -MP -MF $(DEPDIR)/CallbackStream.Tpo -c -o CallbackStream.lo `test -f '$(SRCDIR)/CallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/CallbackStream.Tpo $(DEPDIR)/CallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/CallbackStream.cxx' object='CallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CallbackStream.lo `test -f '$(SRCDIR)/CallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CallbackStream.lo `test -f '$(SRCDIR)/CallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CallbackStream.cxx
CFunCallbackStream.lo: $(SRCDIR)/CFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/CFunCallbackStream.Tpo -c -o CFunCallbackStream.lo `test -f '$(SRCDIR)/CFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/CFunCallbackStream.Tpo $(DEPDIR)/CFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/CFunCallbackStream.cxx' object='CFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/CFunCallbackStream.Tpo -c -o CFunCallbackStream.lo `test -f '$(SRCDIR)/CFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/CFunCallbackStream.Tpo $(DEPDIR)/CFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/CFunCallbackStream.cxx' object='CFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CFunCallbackStream.lo `test -f '$(SRCDIR)/CFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CFunCallbackStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CFunCallbackStream.lo `test -f '$(SRCDIR)/CFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CFunCallbackStream.cxx
CppFunCallbackStream.lo: $(SRCDIR)/CppFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CppFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/CppFunCallbackStream.Tpo -c -o CppFunCallbackStream.lo `test -f '$(SRCDIR)/CppFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CppFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/CppFunCallbackStream.Tpo $(DEPDIR)/CppFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/CppFunCallbackStream.cxx' object='CppFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT CppFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/CppFunCallbackStream.Tpo -c -o CppFunCallbackStream.lo `test -f '$(SRCDIR)/CppFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CppFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/CppFunCallbackStream.Tpo $(DEPDIR)/CppFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/CppFunCallbackStream.cxx' object='CppFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CppFunCallbackStream.lo `test -f '$(SRCDIR)/CppFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CppFunCallbackStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o CppFunCallbackStream.lo `test -f '$(SRCDIR)/CppFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/CppFunCallbackStream.cxx
Device.lo: $(SRCDIR)/Device.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Device.lo -MD -MP -MF $(DEPDIR)/Device.Tpo -c -o Device.lo `test -f '$(SRCDIR)/Device.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Device.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/Device.Tpo $(DEPDIR)/Device.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/Device.cxx' object='Device.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Device.lo -MD -MP -MF $(DEPDIR)/Device.Tpo -c -o Device.lo `test -f '$(SRCDIR)/Device.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Device.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/Device.Tpo $(DEPDIR)/Device.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/Device.cxx' object='Device.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Device.lo `test -f '$(SRCDIR)/Device.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Device.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Device.lo `test -f '$(SRCDIR)/Device.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Device.cxx
DirectionSpecificStreamParameters.lo: $(SRCDIR)/DirectionSpecificStreamParameters.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DirectionSpecificStreamParameters.lo -MD -MP -MF $(DEPDIR)/DirectionSpecificStreamParameters.Tpo -c -o DirectionSpecificStreamParameters.lo `test -f '$(SRCDIR)/DirectionSpecificStreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/DirectionSpecificStreamParameters.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/DirectionSpecificStreamParameters.Tpo $(DEPDIR)/DirectionSpecificStreamParameters.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/DirectionSpecificStreamParameters.cxx' object='DirectionSpecificStreamParameters.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT DirectionSpecificStreamParameters.lo -MD -MP -MF $(DEPDIR)/DirectionSpecificStreamParameters.Tpo -c -o DirectionSpecificStreamParameters.lo `test -f '$(SRCDIR)/DirectionSpecificStreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/DirectionSpecificStreamParameters.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/DirectionSpecificStreamParameters.Tpo $(DEPDIR)/DirectionSpecificStreamParameters.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/DirectionSpecificStreamParameters.cxx' object='DirectionSpecificStreamParameters.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DirectionSpecificStreamParameters.lo `test -f '$(SRCDIR)/DirectionSpecificStreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/DirectionSpecificStreamParameters.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o DirectionSpecificStreamParameters.lo `test -f '$(SRCDIR)/DirectionSpecificStreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/DirectionSpecificStreamParameters.cxx
Exception.lo: $(SRCDIR)/Exception.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Exception.lo -MD -MP -MF $(DEPDIR)/Exception.Tpo -c -o Exception.lo `test -f '$(SRCDIR)/Exception.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Exception.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/Exception.Tpo $(DEPDIR)/Exception.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/Exception.cxx' object='Exception.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Exception.lo -MD -MP -MF $(DEPDIR)/Exception.Tpo -c -o Exception.lo `test -f '$(SRCDIR)/Exception.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Exception.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/Exception.Tpo $(DEPDIR)/Exception.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/Exception.cxx' object='Exception.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Exception.lo `test -f '$(SRCDIR)/Exception.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Exception.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Exception.lo `test -f '$(SRCDIR)/Exception.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Exception.cxx
HostApi.lo: $(SRCDIR)/HostApi.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT HostApi.lo -MD -MP -MF $(DEPDIR)/HostApi.Tpo -c -o HostApi.lo `test -f '$(SRCDIR)/HostApi.cxx' || echo '$(srcdir)/'`$(SRCDIR)/HostApi.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/HostApi.Tpo $(DEPDIR)/HostApi.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/HostApi.cxx' object='HostApi.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT HostApi.lo -MD -MP -MF $(DEPDIR)/HostApi.Tpo -c -o HostApi.lo `test -f '$(SRCDIR)/HostApi.cxx' || echo '$(srcdir)/'`$(SRCDIR)/HostApi.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/HostApi.Tpo $(DEPDIR)/HostApi.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/HostApi.cxx' object='HostApi.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o HostApi.lo `test -f '$(SRCDIR)/HostApi.cxx' || echo '$(srcdir)/'`$(SRCDIR)/HostApi.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o HostApi.lo `test -f '$(SRCDIR)/HostApi.cxx' || echo '$(srcdir)/'`$(SRCDIR)/HostApi.cxx
InterfaceCallbackStream.lo: $(SRCDIR)/InterfaceCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT InterfaceCallbackStream.lo -MD -MP -MF $(DEPDIR)/InterfaceCallbackStream.Tpo -c -o InterfaceCallbackStream.lo `test -f '$(SRCDIR)/InterfaceCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/InterfaceCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/InterfaceCallbackStream.Tpo $(DEPDIR)/InterfaceCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/InterfaceCallbackStream.cxx' object='InterfaceCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT InterfaceCallbackStream.lo -MD -MP -MF $(DEPDIR)/InterfaceCallbackStream.Tpo -c -o InterfaceCallbackStream.lo `test -f '$(SRCDIR)/InterfaceCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/InterfaceCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/InterfaceCallbackStream.Tpo $(DEPDIR)/InterfaceCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/InterfaceCallbackStream.cxx' object='InterfaceCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o InterfaceCallbackStream.lo `test -f '$(SRCDIR)/InterfaceCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/InterfaceCallbackStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o InterfaceCallbackStream.lo `test -f '$(SRCDIR)/InterfaceCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/InterfaceCallbackStream.cxx
MemFunCallbackStream.lo: $(SRCDIR)/MemFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MemFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/MemFunCallbackStream.Tpo -c -o MemFunCallbackStream.lo `test -f '$(SRCDIR)/MemFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/MemFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/MemFunCallbackStream.Tpo $(DEPDIR)/MemFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/MemFunCallbackStream.cxx' object='MemFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MemFunCallbackStream.lo -MD -MP -MF $(DEPDIR)/MemFunCallbackStream.Tpo -c -o MemFunCallbackStream.lo `test -f '$(SRCDIR)/MemFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/MemFunCallbackStream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MemFunCallbackStream.Tpo $(DEPDIR)/MemFunCallbackStream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/MemFunCallbackStream.cxx' object='MemFunCallbackStream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MemFunCallbackStream.lo `test -f '$(SRCDIR)/MemFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/MemFunCallbackStream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MemFunCallbackStream.lo `test -f '$(SRCDIR)/MemFunCallbackStream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/MemFunCallbackStream.cxx
Stream.lo: $(SRCDIR)/Stream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Stream.lo -MD -MP -MF $(DEPDIR)/Stream.Tpo -c -o Stream.lo `test -f '$(SRCDIR)/Stream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Stream.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/Stream.Tpo $(DEPDIR)/Stream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/Stream.cxx' object='Stream.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT Stream.lo -MD -MP -MF $(DEPDIR)/Stream.Tpo -c -o Stream.lo `test -f '$(SRCDIR)/Stream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Stream.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/Stream.Tpo $(DEPDIR)/Stream.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/Stream.cxx' object='Stream.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Stream.lo `test -f '$(SRCDIR)/Stream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Stream.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o Stream.lo `test -f '$(SRCDIR)/Stream.cxx' || echo '$(srcdir)/'`$(SRCDIR)/Stream.cxx
StreamParameters.lo: $(SRCDIR)/StreamParameters.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT StreamParameters.lo -MD -MP -MF $(DEPDIR)/StreamParameters.Tpo -c -o StreamParameters.lo `test -f '$(SRCDIR)/StreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/StreamParameters.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/StreamParameters.Tpo $(DEPDIR)/StreamParameters.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/StreamParameters.cxx' object='StreamParameters.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT StreamParameters.lo -MD -MP -MF $(DEPDIR)/StreamParameters.Tpo -c -o StreamParameters.lo `test -f '$(SRCDIR)/StreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/StreamParameters.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/StreamParameters.Tpo $(DEPDIR)/StreamParameters.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/StreamParameters.cxx' object='StreamParameters.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o StreamParameters.lo `test -f '$(SRCDIR)/StreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/StreamParameters.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o StreamParameters.lo `test -f '$(SRCDIR)/StreamParameters.cxx' || echo '$(srcdir)/'`$(SRCDIR)/StreamParameters.cxx
System.lo: $(SRCDIR)/System.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT System.lo -MD -MP -MF $(DEPDIR)/System.Tpo -c -o System.lo `test -f '$(SRCDIR)/System.cxx' || echo '$(srcdir)/'`$(SRCDIR)/System.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/System.Tpo $(DEPDIR)/System.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/System.cxx' object='System.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT System.lo -MD -MP -MF $(DEPDIR)/System.Tpo -c -o System.lo `test -f '$(SRCDIR)/System.cxx' || echo '$(srcdir)/'`$(SRCDIR)/System.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/System.Tpo $(DEPDIR)/System.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/System.cxx' object='System.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o System.lo `test -f '$(SRCDIR)/System.cxx' || echo '$(srcdir)/'`$(SRCDIR)/System.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o System.lo `test -f '$(SRCDIR)/System.cxx' || echo '$(srcdir)/'`$(SRCDIR)/System.cxx
SystemDeviceIterator.lo: $(SRCDIR)/SystemDeviceIterator.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SystemDeviceIterator.lo -MD -MP -MF $(DEPDIR)/SystemDeviceIterator.Tpo -c -o SystemDeviceIterator.lo `test -f '$(SRCDIR)/SystemDeviceIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemDeviceIterator.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/SystemDeviceIterator.Tpo $(DEPDIR)/SystemDeviceIterator.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/SystemDeviceIterator.cxx' object='SystemDeviceIterator.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SystemDeviceIterator.lo -MD -MP -MF $(DEPDIR)/SystemDeviceIterator.Tpo -c -o SystemDeviceIterator.lo `test -f '$(SRCDIR)/SystemDeviceIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemDeviceIterator.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/SystemDeviceIterator.Tpo $(DEPDIR)/SystemDeviceIterator.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/SystemDeviceIterator.cxx' object='SystemDeviceIterator.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SystemDeviceIterator.lo `test -f '$(SRCDIR)/SystemDeviceIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemDeviceIterator.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SystemDeviceIterator.lo `test -f '$(SRCDIR)/SystemDeviceIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemDeviceIterator.cxx
SystemHostApiIterator.lo: $(SRCDIR)/SystemHostApiIterator.cxx
@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SystemHostApiIterator.lo -MD -MP -MF $(DEPDIR)/SystemHostApiIterator.Tpo -c -o SystemHostApiIterator.lo `test -f '$(SRCDIR)/SystemHostApiIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemHostApiIterator.cxx
@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/SystemHostApiIterator.Tpo $(DEPDIR)/SystemHostApiIterator.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$(SRCDIR)/SystemHostApiIterator.cxx' object='SystemHostApiIterator.lo' libtool=yes @AMDEPBACKSLASH@
@am__fastdepCXX_TRUE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT SystemHostApiIterator.lo -MD -MP -MF $(DEPDIR)/SystemHostApiIterator.Tpo -c -o SystemHostApiIterator.lo `test -f '$(SRCDIR)/SystemHostApiIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemHostApiIterator.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/SystemHostApiIterator.Tpo $(DEPDIR)/SystemHostApiIterator.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$(SRCDIR)/SystemHostApiIterator.cxx' object='SystemHostApiIterator.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SystemHostApiIterator.lo `test -f '$(SRCDIR)/SystemHostApiIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemHostApiIterator.cxx
@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o SystemHostApiIterator.lo `test -f '$(SRCDIR)/SystemHostApiIterator.cxx' || echo '$(srcdir)/'`$(SRCDIR)/SystemHostApiIterator.cxx
mostlyclean-libtool:
-rm -f *.lo
@ -606,15 +471,26 @@ mostlyclean-libtool:
clean-libtool:
-rm -rf .libs _libs
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
@ -626,11 +502,15 @@ tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
@ -639,28 +519,11 @@ GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
distdir-am: $(DISTFILES)
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
@ -707,15 +570,10 @@ install-am: all-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
@ -733,22 +591,7 @@ clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
mostlyclean-am
distclean: distclean-am
-rm -f ./$(DEPDIR)/BlockingStream.Plo
-rm -f ./$(DEPDIR)/CFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/CallbackInterface.Plo
-rm -f ./$(DEPDIR)/CallbackStream.Plo
-rm -f ./$(DEPDIR)/CppFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/Device.Plo
-rm -f ./$(DEPDIR)/DirectionSpecificStreamParameters.Plo
-rm -f ./$(DEPDIR)/Exception.Plo
-rm -f ./$(DEPDIR)/HostApi.Plo
-rm -f ./$(DEPDIR)/InterfaceCallbackStream.Plo
-rm -f ./$(DEPDIR)/MemFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/Stream.Plo
-rm -f ./$(DEPDIR)/StreamParameters.Plo
-rm -f ./$(DEPDIR)/System.Plo
-rm -f ./$(DEPDIR)/SystemDeviceIterator.Plo
-rm -f ./$(DEPDIR)/SystemHostApiIterator.Plo
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
@ -794,22 +637,7 @@ install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -f ./$(DEPDIR)/BlockingStream.Plo
-rm -f ./$(DEPDIR)/CFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/CallbackInterface.Plo
-rm -f ./$(DEPDIR)/CallbackStream.Plo
-rm -f ./$(DEPDIR)/CppFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/Device.Plo
-rm -f ./$(DEPDIR)/DirectionSpecificStreamParameters.Plo
-rm -f ./$(DEPDIR)/Exception.Plo
-rm -f ./$(DEPDIR)/HostApi.Plo
-rm -f ./$(DEPDIR)/InterfaceCallbackStream.Plo
-rm -f ./$(DEPDIR)/MemFunCallbackStream.Plo
-rm -f ./$(DEPDIR)/Stream.Plo
-rm -f ./$(DEPDIR)/StreamParameters.Plo
-rm -f ./$(DEPDIR)/System.Plo
-rm -f ./$(DEPDIR)/SystemDeviceIterator.Plo
-rm -f ./$(DEPDIR)/SystemHostApiIterator.Plo
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@ -830,21 +658,19 @@ uninstall-am: uninstall-libLTLIBRARIES
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
ctags ctags-am distclean distclean-compile distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-libLTLIBRARIES install-man install-pdf \
install-pdf-am install-ps install-ps-am install-strip \
installcheck installcheck-am installdirs maintainer-clean \
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
clean-libLTLIBRARIES clean-libtool ctags distclean \
distclean-compile distclean-generic distclean-libtool \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am \
install-libLTLIBRARIES install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
.PRECIOUS: Makefile
tags uninstall uninstall-am uninstall-libLTLIBRARIES
# Tell versions [3.59,3.63) of GNU make to not export all variables.

File diff suppressed because it is too large Load diff

Binary file not shown.

View file

@ -1,81 +1,83 @@
#include "portaudiocpp/AsioDeviceAdapter.hxx"
#include "portaudiocpp/AsioDeviceAdapter.hxx"
#include "portaudio.h"
#include "pa_asio.h"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
AsioDeviceAdapter::AsioDeviceAdapter(Device &device)
{
if (device.hostApi().typeId() != paASIO)
throw PaCppException(PaCppException::UNABLE_TO_ADAPT_DEVICE);
device_ = &device;
PaError err = PaAsio_GetAvailableLatencyValues(device_->index(), &minBufferSize_, &maxBufferSize_,
&preferredBufferSize_, &granularity_);
if (err != paNoError)
throw PaException(err);
}
Device &AsioDeviceAdapter::device()
{
return *device_;
}
long AsioDeviceAdapter::minBufferSize() const
{
return minBufferSize_;
}
long AsioDeviceAdapter::maxBufferSize() const
{
return maxBufferSize_;
}
long AsioDeviceAdapter::preferredBufferSize() const
{
return preferredBufferSize_;
}
long AsioDeviceAdapter::granularity() const
{
return granularity_;
}
void AsioDeviceAdapter::showControlPanel(void *systemSpecific)
{
PaError err = PaAsio_ShowControlPanel(device_->index(), systemSpecific);
if (err != paNoError)
throw PaException(err);
}
const char *AsioDeviceAdapter::inputChannelName(int channelIndex) const
{
const char *channelName;
PaError err = PaAsio_GetInputChannelName(device_->index(), channelIndex, &channelName);
#include "portaudio.h"
#include "pa_asio.h"
if (err != paNoError)
throw PaException(err);
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/Exception.hxx"
return channelName;
}
const char *AsioDeviceAdapter::outputChannelName(int channelIndex) const
{
const char *channelName;
PaError err = PaAsio_GetOutputChannelName(device_->index(), channelIndex, &channelName);
namespace portaudio
{
AsioDeviceAdapter::AsioDeviceAdapter(Device &device)
{
if (device.hostApi().typeId() != paASIO)
throw PaCppException(PaCppException::UNABLE_TO_ADAPT_DEVICE);
if (err != paNoError)
throw PaException(err);
device_ = &device;
PaError err = PaAsio_GetAvailableLatencyValues(device_->index(), &minBufferSize_, &maxBufferSize_,
&preferredBufferSize_, &granularity_);
if (err != paNoError)
throw PaException(err);
}
Device &AsioDeviceAdapter::device()
{
return *device_;
}
long AsioDeviceAdapter::minBufferSize() const
{
return minBufferSize_;
}
long AsioDeviceAdapter::maxBufferSize() const
{
return maxBufferSize_;
}
long AsioDeviceAdapter::preferredBufferSize() const
{
return preferredBufferSize_;
}
long AsioDeviceAdapter::granularity() const
{
return granularity_;
}
void AsioDeviceAdapter::showControlPanel(void *systemSpecific)
{
PaError err = PaAsio_ShowControlPanel(device_->index(), systemSpecific);
if (err != paNoError)
throw PaException(err);
}
const char *AsioDeviceAdapter::inputChannelName(int channelIndex) const
{
const char *channelName;
PaError err = PaAsio_GetInputChannelName(device_->index(), channelIndex, &channelName);
if (err != paNoError)
throw PaException(err);
return channelName;
}
const char *AsioDeviceAdapter::outputChannelName(int channelIndex) const
{
const char *channelName;
PaError err = PaAsio_GetOutputChannelName(device_->index(), channelIndex, &channelName);
if (err != paNoError)
throw PaException(err);
return channelName;
}
}
return channelName;
}
}

View file

@ -1,97 +1,100 @@
#include "portaudiocpp/BlockingStream.hxx"
#include "portaudio.h"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// --------------------------------------------------------------------------------------
BlockingStream::BlockingStream()
{
}
BlockingStream::BlockingStream(const StreamParameters &parameters)
{
open(parameters);
}
BlockingStream::~BlockingStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// --------------------------------------------------------------------------------------
void BlockingStream::open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), NULL, NULL);
if (err != paNoError)
{
throw PaException(err);
}
}
// --------------------------------------------------------------------------------------
void BlockingStream::read(void *buffer, unsigned long numFrames)
{
PaError err = Pa_ReadStream(stream_, buffer, numFrames);
if (err != paNoError)
{
throw PaException(err);
}
}
void BlockingStream::write(const void *buffer, unsigned long numFrames)
{
PaError err = Pa_WriteStream(stream_, buffer, numFrames);
if (err != paNoError)
{
throw PaException(err);
}
}
// --------------------------------------------------------------------------------------
signed long BlockingStream::availableReadSize() const
{
signed long avail = Pa_GetStreamReadAvailable(stream_);
if (avail < 0)
{
throw PaException(avail);
}
return avail;
}
signed long BlockingStream::availableWriteSize() const
{
signed long avail = Pa_GetStreamWriteAvailable(stream_);
if (avail < 0)
{
throw PaException(avail);
}
return avail;
}
// --------------------------------------------------------------------------------------
} // portaudio
#include "portaudiocpp/BlockingStream.hxx"
#include "portaudio.h"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// --------------------------------------------------------------------------------------
BlockingStream::BlockingStream()
{
}
BlockingStream::BlockingStream(const StreamParameters &parameters)
{
open(parameters);
}
BlockingStream::~BlockingStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// --------------------------------------------------------------------------------------
void BlockingStream::open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), NULL, NULL);
if (err != paNoError)
{
throw PaException(err);
}
}
// --------------------------------------------------------------------------------------
void BlockingStream::read(void *buffer, unsigned long numFrames)
{
PaError err = Pa_ReadStream(stream_, buffer, numFrames);
if (err != paNoError)
{
throw PaException(err);
}
}
void BlockingStream::write(const void *buffer, unsigned long numFrames)
{
PaError err = Pa_WriteStream(stream_, buffer, numFrames);
if (err != paNoError)
{
throw PaException(err);
}
}
// --------------------------------------------------------------------------------------
signed long BlockingStream::availableReadSize() const
{
signed long avail = Pa_GetStreamReadAvailable(stream_);
if (avail < 0)
{
throw PaException(avail);
}
return avail;
}
signed long BlockingStream::availableWriteSize() const
{
signed long avail = Pa_GetStreamWriteAvailable(stream_);
if (avail < 0)
{
throw PaException(avail);
}
return avail;
}
// --------------------------------------------------------------------------------------
} // portaudio

View file

@ -1,41 +1,41 @@
#include "portaudiocpp/CFunCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
CFunCallbackStream::CFunCallbackStream()
{
}
CFunCallbackStream::CFunCallbackStream(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData)
{
open(parameters, funPtr, userData);
}
CFunCallbackStream::~CFunCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// ---------------------------------------------------------------------------------==
void CFunCallbackStream::open(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), funPtr, userData);
if (err != paNoError)
{
throw PaException(err);
}
}
}
#include "portaudiocpp/CFunCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
CFunCallbackStream::CFunCallbackStream()
{
}
CFunCallbackStream::CFunCallbackStream(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData)
{
open(parameters, funPtr, userData);
}
CFunCallbackStream::~CFunCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// ---------------------------------------------------------------------------------==
void CFunCallbackStream::open(const StreamParameters &parameters, PaStreamCallback *funPtr, void *userData)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), funPtr, userData);
if (err != paNoError)
{
throw PaException(err);
}
}
}

View file

@ -1,23 +1,25 @@
#include "portaudiocpp/CallbackInterface.hxx"
namespace portaudio
{
namespace impl
{
//////
/// Adapts any CallbackInterface object to a C-callable function (ie this function). A
/// pointer to the object should be passed as ``userData'' when setting up the callback.
//////
int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData)
{
CallbackInterface *cb = static_cast<CallbackInterface *>(userData);
return cb->paCallbackFun(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags);
}
} // namespace impl
} // namespace portaudio
#include "portaudiocpp/CallbackInterface.hxx"
namespace portaudio
{
namespace impl
{
//////
/// Adapts any CallbackInterface object to a C-callable function (ie this function). A
/// pointer to the object should be passed as ``userData'' when setting up the callback.
//////
int callbackInterfaceToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData)
{
CallbackInterface *cb = static_cast<CallbackInterface *>(userData);
return cb->paCallbackFun(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags);
}
} // namespace impl
} // namespace portaudio

View file

@ -1,20 +1,20 @@
#include "portaudiocpp/CallbackStream.hxx"
namespace portaudio
{
CallbackStream::CallbackStream()
{
}
CallbackStream::~CallbackStream()
{
}
// -----------------------------------------------------------------------------------
double CallbackStream::cpuLoad() const
{
return Pa_GetStreamCpuLoad(stream_);
}
} // namespace portaudio
#include "portaudiocpp/CallbackStream.hxx"
namespace portaudio
{
CallbackStream::CallbackStream()
{
}
CallbackStream::~CallbackStream()
{
}
// -----------------------------------------------------------------------------------
double CallbackStream::cpuLoad() const
{
return Pa_GetStreamCpuLoad(stream_);
}
} // namespace portaudio

View file

@ -1,81 +1,81 @@
#include "portaudiocpp/CppFunCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
namespace impl
{
//////
/// Adapts any a C++ callback to a C-callable function (ie this function). A
/// pointer to a struct with the C++ function pointer and the actual user data should be
/// passed as the ``userData'' parameter when setting up the callback.
//////
int cppCallbackToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData)
{
FunCallbackStream::CppToCCallbackData *data = static_cast<FunCallbackStream::CppToCCallbackData *>(userData);
return data->funPtr(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags, data->userData);
}
}
// -----------------------------------------------------------------------------------
FunCallbackStream::CppToCCallbackData::CppToCCallbackData()
{
}
FunCallbackStream::CppToCCallbackData::CppToCCallbackData(CallbackFunPtr funPtr, void *userData) : funPtr(funPtr), userData(userData)
{
}
void FunCallbackStream::CppToCCallbackData::init(CallbackFunPtr funPtr, void *userData)
{
this->funPtr = funPtr;
this->userData = userData;
}
// -----------------------------------------------------------------------------------
FunCallbackStream::FunCallbackStream()
{
}
FunCallbackStream::FunCallbackStream(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData) : adapterData_(funPtr, userData)
{
open(parameters);
}
FunCallbackStream::~FunCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
void FunCallbackStream::open(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData)
{
adapterData_.init(funPtr, userData);
open(parameters);
}
void FunCallbackStream::open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::cppCallbackToPaCallbackAdapter,
static_cast<void *>(&adapterData_));
if (err != paNoError)
{
throw PaException(err);
}
}
// -----------------------------------------------------------------------------------
}
#include "portaudiocpp/CppFunCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
namespace impl
{
//////
/// Adapts any a C++ callback to a C-callable function (ie this function). A
/// pointer to a struct with the C++ function pointer and the actual user data should be
/// passed as the ``userData'' parameter when setting up the callback.
//////
int cppCallbackToPaCallbackAdapter(const void *inputBuffer, void *outputBuffer, unsigned long numFrames,
const PaStreamCallbackTimeInfo *timeInfo, PaStreamCallbackFlags statusFlags, void *userData)
{
FunCallbackStream::CppToCCallbackData *data = static_cast<FunCallbackStream::CppToCCallbackData *>(userData);
return data->funPtr(inputBuffer, outputBuffer, numFrames, timeInfo, statusFlags, data->userData);
}
}
// -----------------------------------------------------------------------------------
FunCallbackStream::CppToCCallbackData::CppToCCallbackData()
{
}
FunCallbackStream::CppToCCallbackData::CppToCCallbackData(CallbackFunPtr funPtr, void *userData) : funPtr(funPtr), userData(userData)
{
}
void FunCallbackStream::CppToCCallbackData::init(CallbackFunPtr funPtr, void *userData)
{
this->funPtr = funPtr;
this->userData = userData;
}
// -----------------------------------------------------------------------------------
FunCallbackStream::FunCallbackStream()
{
}
FunCallbackStream::FunCallbackStream(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData) : adapterData_(funPtr, userData)
{
open(parameters);
}
FunCallbackStream::~FunCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
void FunCallbackStream::open(const StreamParameters &parameters, CallbackFunPtr funPtr, void *userData)
{
adapterData_.init(funPtr, userData);
open(parameters);
}
void FunCallbackStream::open(const StreamParameters &parameters)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::cppCallbackToPaCallbackAdapter,
static_cast<void *>(&adapterData_));
if (err != paNoError)
{
throw PaException(err);
}
}
// -----------------------------------------------------------------------------------
}

View file

@ -1,166 +1,168 @@
#include "portaudiocpp/Device.hxx"
#include <cstddef>
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -------------------------------------------------------------------------------
Device::Device(PaDeviceIndex index) : index_(index)
{
if (index == paNoDevice)
info_ = NULL;
else
info_ = Pa_GetDeviceInfo(index);
}
Device::~Device()
{
}
PaDeviceIndex Device::index() const
{
return index_;
}
const char *Device::name() const
{
if (info_ == NULL)
return "";
return info_->name;
}
int Device::maxInputChannels() const
{
if (info_ == NULL)
return 0;
return info_->maxInputChannels;
}
int Device::maxOutputChannels() const
{
if (info_ == NULL)
return 0;
return info_->maxOutputChannels;
}
PaTime Device::defaultLowInputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultLowInputLatency;
}
PaTime Device::defaultHighInputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultHighInputLatency;
}
PaTime Device::defaultLowOutputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultLowOutputLatency;
}
PaTime Device::defaultHighOutputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultHighOutputLatency;
}
double Device::defaultSampleRate() const
{
if (info_ == NULL)
return 0.0;
return info_->defaultSampleRate;
}
// -------------------------------------------------------------------------------
bool Device::isInputOnlyDevice() const
{
return (maxOutputChannels() == 0);
}
bool Device::isOutputOnlyDevice() const
{
return (maxInputChannels() == 0);
}
bool Device::isFullDuplexDevice() const
{
return (maxInputChannels() > 0 && maxOutputChannels() > 0);
}
bool Device::isSystemDefaultInputDevice() const
{
return (System::instance().defaultInputDevice() == *this);
}
bool Device::isSystemDefaultOutputDevice() const
{
return (System::instance().defaultOutputDevice() == *this);
}
bool Device::isHostApiDefaultInputDevice() const
{
return (hostApi().defaultInputDevice() == *this);
}
bool Device::isHostApiDefaultOutputDevice() const
{
return (hostApi().defaultOutputDevice() == *this);
}
// -------------------------------------------------------------------------------
bool Device::operator==(const Device &rhs) const
{
return (index_ == rhs.index_);
}
bool Device::operator!=(const Device &rhs) const
{
return !(*this == rhs);
}
// -------------------------------------------------------------------------------
HostApi &Device::hostApi()
{
// NOTE: will cause an exception when called for the null device
if (info_ == NULL)
throw PaException(paInternalError);
return System::instance().hostApiByIndex(info_->hostApi);
}
const HostApi &Device::hostApi() const
{
// NOTE; will cause an exception when called for the null device
if (info_ == NULL)
throw PaException(paInternalError);
return System::instance().hostApiByIndex(info_->hostApi);
}
// -------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/Device.hxx"
#include <cstddef>
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -------------------------------------------------------------------------------
Device::Device(PaDeviceIndex index) : index_(index)
{
if (index == paNoDevice)
info_ = NULL;
else
info_ = Pa_GetDeviceInfo(index);
}
Device::~Device()
{
}
PaDeviceIndex Device::index() const
{
return index_;
}
const char *Device::name() const
{
if (info_ == NULL)
return "";
return info_->name;
}
int Device::maxInputChannels() const
{
if (info_ == NULL)
return 0;
return info_->maxInputChannels;
}
int Device::maxOutputChannels() const
{
if (info_ == NULL)
return 0;
return info_->maxOutputChannels;
}
PaTime Device::defaultLowInputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultLowInputLatency;
}
PaTime Device::defaultHighInputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultHighInputLatency;
}
PaTime Device::defaultLowOutputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultLowOutputLatency;
}
PaTime Device::defaultHighOutputLatency() const
{
if (info_ == NULL)
return static_cast<PaTime>(0.0);
return info_->defaultHighOutputLatency;
}
double Device::defaultSampleRate() const
{
if (info_ == NULL)
return 0.0;
return info_->defaultSampleRate;
}
// -------------------------------------------------------------------------------
bool Device::isInputOnlyDevice() const
{
return (maxOutputChannels() == 0);
}
bool Device::isOutputOnlyDevice() const
{
return (maxInputChannels() == 0);
}
bool Device::isFullDuplexDevice() const
{
return (maxInputChannels() > 0 && maxOutputChannels() > 0);
}
bool Device::isSystemDefaultInputDevice() const
{
return (System::instance().defaultInputDevice() == *this);
}
bool Device::isSystemDefaultOutputDevice() const
{
return (System::instance().defaultOutputDevice() == *this);
}
bool Device::isHostApiDefaultInputDevice() const
{
return (hostApi().defaultInputDevice() == *this);
}
bool Device::isHostApiDefaultOutputDevice() const
{
return (hostApi().defaultOutputDevice() == *this);
}
// -------------------------------------------------------------------------------
bool Device::operator==(const Device &rhs)
{
return (index_ == rhs.index_);
}
bool Device::operator!=(const Device &rhs)
{
return !(*this == rhs);
}
// -------------------------------------------------------------------------------
HostApi &Device::hostApi()
{
// NOTE: will cause an exception when called for the null device
if (info_ == NULL)
throw PaException(paInternalError);
return System::instance().hostApiByIndex(info_->hostApi);
}
const HostApi &Device::hostApi() const
{
// NOTE; will cause an exception when called for the null device
if (info_ == NULL)
throw PaException(paInternalError);
return System::instance().hostApiByIndex(info_->hostApi);
}
// -------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,163 +1,163 @@
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
#include "portaudiocpp/Device.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// Returns a `nil' DirectionSpecificStreamParameters object. This can be used to
/// specify that one direction of a Stream is not required (i.e. when creating
/// a half-duplex Stream). All fields of the null DirectionSpecificStreamParameters
/// object are invalid except for the device and the number of channel, which are set
/// to paNoDevice and 0 respectively.
//////
DirectionSpecificStreamParameters DirectionSpecificStreamParameters::null()
{
DirectionSpecificStreamParameters tmp;
tmp.paStreamParameters_.device = paNoDevice;
tmp.paStreamParameters_.channelCount = 0;
return tmp;
}
// -----------------------------------------------------------------------------------
//////
/// Default constructor -- all parameters will be uninitialized.
//////
DirectionSpecificStreamParameters::DirectionSpecificStreamParameters()
{
}
//////
/// Constructor which sets all required fields.
//////
DirectionSpecificStreamParameters::DirectionSpecificStreamParameters(const Device &device, int numChannels,
SampleDataFormat format, bool interleaved, PaTime suggestedLatency, void *hostApiSpecificStreamInfo)
{
setDevice(device);
setNumChannels(numChannels);
setSampleFormat(format, interleaved);
setSuggestedLatency(suggestedLatency);
setHostApiSpecificStreamInfo(hostApiSpecificStreamInfo);
}
// -----------------------------------------------------------------------------------
void DirectionSpecificStreamParameters::setDevice(const Device &device)
{
paStreamParameters_.device = device.index();
}
void DirectionSpecificStreamParameters::setNumChannels(int numChannels)
{
paStreamParameters_.channelCount = numChannels;
}
void DirectionSpecificStreamParameters::setSampleFormat(SampleDataFormat format, bool interleaved)
{
paStreamParameters_.sampleFormat = static_cast<PaSampleFormat>(format);
if (!interleaved)
paStreamParameters_.sampleFormat |= paNonInterleaved;
}
void DirectionSpecificStreamParameters::setHostApiSpecificSampleFormat(PaSampleFormat format, bool interleaved)
{
paStreamParameters_.sampleFormat = format;
paStreamParameters_.sampleFormat |= paCustomFormat;
if (!interleaved)
paStreamParameters_.sampleFormat |= paNonInterleaved;
}
void DirectionSpecificStreamParameters::setSuggestedLatency(PaTime latency)
{
paStreamParameters_.suggestedLatency = latency;
}
void DirectionSpecificStreamParameters::setHostApiSpecificStreamInfo(void *streamInfo)
{
paStreamParameters_.hostApiSpecificStreamInfo = streamInfo;
}
// -----------------------------------------------------------------------------------
PaStreamParameters *DirectionSpecificStreamParameters::paStreamParameters()
{
if (paStreamParameters_.channelCount > 0 && paStreamParameters_.device != paNoDevice)
return &paStreamParameters_;
else
return NULL;
}
const PaStreamParameters *DirectionSpecificStreamParameters::paStreamParameters() const
{
if (paStreamParameters_.channelCount > 0 && paStreamParameters_.device != paNoDevice)
return &paStreamParameters_;
else
return NULL;
}
Device &DirectionSpecificStreamParameters::device() const
{
return System::instance().deviceByIndex(paStreamParameters_.device);
}
int DirectionSpecificStreamParameters::numChannels() const
{
return paStreamParameters_.channelCount;
}
//////
/// Returns the (non host api-specific) sample format, without including
/// the paNonInterleaved flag. If the sample format is host api-spefific,
/// INVALID_FORMAT (0) will be returned.
//////
SampleDataFormat DirectionSpecificStreamParameters::sampleFormat() const
{
if (isSampleFormatHostApiSpecific())
return INVALID_FORMAT;
else
return static_cast<SampleDataFormat>(paStreamParameters_.sampleFormat & ~paNonInterleaved);
}
bool DirectionSpecificStreamParameters::isSampleFormatInterleaved() const
{
return ((paStreamParameters_.sampleFormat & paNonInterleaved) == 0);
}
bool DirectionSpecificStreamParameters::isSampleFormatHostApiSpecific() const
{
return ((paStreamParameters_.sampleFormat & paCustomFormat) == 0);
}
//////
/// Returns the host api-specific sample format, without including any
/// paCustomFormat or paNonInterleaved flags. Will return 0 if the sample format is
/// not host api-specific.
//////
PaSampleFormat DirectionSpecificStreamParameters::hostApiSpecificSampleFormat() const
{
if (isSampleFormatHostApiSpecific())
return paStreamParameters_.sampleFormat & ~paCustomFormat & ~paNonInterleaved;
else
return 0;
}
PaTime DirectionSpecificStreamParameters::suggestedLatency() const
{
return paStreamParameters_.suggestedLatency;
}
void *DirectionSpecificStreamParameters::hostApiSpecificStreamInfo() const
{
return paStreamParameters_.hostApiSpecificStreamInfo;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/DirectionSpecificStreamParameters.hxx"
#include "portaudiocpp/Device.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// Returns a `nil' DirectionSpecificStreamParameters object. This can be used to
/// specify that one direction of a Stream is not required (i.e. when creating
/// a half-duplex Stream). All fields of the null DirectionSpecificStreamParameters
/// object are invalid except for the device and the number of channel, which are set
/// to paNoDevice and 0 respectively.
//////
DirectionSpecificStreamParameters DirectionSpecificStreamParameters::null()
{
DirectionSpecificStreamParameters tmp;
tmp.paStreamParameters_.device = paNoDevice;
tmp.paStreamParameters_.channelCount = 0;
return tmp;
}
// -----------------------------------------------------------------------------------
//////
/// Default constructor -- all parameters will be uninitialized.
//////
DirectionSpecificStreamParameters::DirectionSpecificStreamParameters()
{
}
//////
/// Constructor which sets all required fields.
//////
DirectionSpecificStreamParameters::DirectionSpecificStreamParameters(const Device &device, int numChannels,
SampleDataFormat format, bool interleaved, PaTime suggestedLatency, void *hostApiSpecificStreamInfo)
{
setDevice(device);
setNumChannels(numChannels);
setSampleFormat(format, interleaved);
setSuggestedLatency(suggestedLatency);
setHostApiSpecificStreamInfo(hostApiSpecificStreamInfo);
}
// -----------------------------------------------------------------------------------
void DirectionSpecificStreamParameters::setDevice(const Device &device)
{
paStreamParameters_.device = device.index();
}
void DirectionSpecificStreamParameters::setNumChannels(int numChannels)
{
paStreamParameters_.channelCount = numChannels;
}
void DirectionSpecificStreamParameters::setSampleFormat(SampleDataFormat format, bool interleaved)
{
paStreamParameters_.sampleFormat = static_cast<PaSampleFormat>(format);
if (!interleaved)
paStreamParameters_.sampleFormat |= paNonInterleaved;
}
void DirectionSpecificStreamParameters::setHostApiSpecificSampleFormat(PaSampleFormat format, bool interleaved)
{
paStreamParameters_.sampleFormat = format;
paStreamParameters_.sampleFormat |= paCustomFormat;
if (!interleaved)
paStreamParameters_.sampleFormat |= paNonInterleaved;
}
void DirectionSpecificStreamParameters::setSuggestedLatency(PaTime latency)
{
paStreamParameters_.suggestedLatency = latency;
}
void DirectionSpecificStreamParameters::setHostApiSpecificStreamInfo(void *streamInfo)
{
paStreamParameters_.hostApiSpecificStreamInfo = streamInfo;
}
// -----------------------------------------------------------------------------------
PaStreamParameters *DirectionSpecificStreamParameters::paStreamParameters()
{
if (paStreamParameters_.channelCount > 0 && paStreamParameters_.device != paNoDevice)
return &paStreamParameters_;
else
return NULL;
}
const PaStreamParameters *DirectionSpecificStreamParameters::paStreamParameters() const
{
if (paStreamParameters_.channelCount > 0 && paStreamParameters_.device != paNoDevice)
return &paStreamParameters_;
else
return NULL;
}
Device &DirectionSpecificStreamParameters::device() const
{
return System::instance().deviceByIndex(paStreamParameters_.device);
}
int DirectionSpecificStreamParameters::numChannels() const
{
return paStreamParameters_.channelCount;
}
//////
/// Returns the (non host api-specific) sample format, without including
/// the paNonInterleaved flag. If the sample format is host api-spefific,
/// INVALID_FORMAT (0) will be returned.
//////
SampleDataFormat DirectionSpecificStreamParameters::sampleFormat() const
{
if (isSampleFormatHostApiSpecific())
return INVALID_FORMAT;
else
return static_cast<SampleDataFormat>(paStreamParameters_.sampleFormat & ~paNonInterleaved);
}
bool DirectionSpecificStreamParameters::isSampleFormatInterleaved() const
{
return ((paStreamParameters_.sampleFormat & paNonInterleaved) == 0);
}
bool DirectionSpecificStreamParameters::isSampleFormatHostApiSpecific() const
{
return ((paStreamParameters_.sampleFormat & paCustomFormat) == 0);
}
//////
/// Returns the host api-specific sample format, without including any
/// paCustomFormat or paNonInterleaved flags. Will return 0 if the sample format is
/// not host api-specific.
//////
PaSampleFormat DirectionSpecificStreamParameters::hostApiSpecificSampleFormat() const
{
if (isSampleFormatHostApiSpecific())
return paStreamParameters_.sampleFormat & ~paCustomFormat & ~paNonInterleaved;
else
return 0;
}
PaTime DirectionSpecificStreamParameters::suggestedLatency() const
{
return paStreamParameters_.suggestedLatency;
}
void *DirectionSpecificStreamParameters::hostApiSpecificStreamInfo() const
{
return paStreamParameters_.hostApiSpecificStreamInfo;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,121 +1,123 @@
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
// PaException:
// -----------------------------------------------------------------------------------
//////
/// Wraps a PortAudio error into a PortAudioCpp PaException.
//////
PaException::PaException(PaError error) : error_(error)
{
}
// -----------------------------------------------------------------------------------
//////
/// Alias for paErrorText(), to have std::exception compliance.
//////
const char *PaException::what() const throw()
{
return paErrorText();
}
// -----------------------------------------------------------------------------------
//////
/// Returns the PortAudio error code (PaError).
//////
PaError PaException::paError() const
{
return error_;
}
//////
/// Returns the error as a (zero-terminated) text string.
//////
const char *PaException::paErrorText() const
{
return Pa_GetErrorText(error_);
}
//////
/// Returns true is the error is a HostApi error.
//////
bool PaException::isHostApiError() const
{
return (error_ == paUnanticipatedHostError);
}
//////
/// Returns the last HostApi error (which is the current one if
/// isHostApiError() returns true) as an error code.
//////
long PaException::lastHostApiError() const
{
return Pa_GetLastHostErrorInfo()->errorCode;
}
//////
/// Returns the last HostApi error (which is the current one if
/// isHostApiError() returns true) as a (zero-terminated) text
/// string, if it's available.
//////
const char *PaException::lastHostApiErrorText() const
{
return Pa_GetLastHostErrorInfo()->errorText;
}
// -----------------------------------------------------------------------------------
bool PaException::operator==(const PaException &rhs) const
{
return (error_ == rhs.error_);
}
bool PaException::operator!=(const PaException &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
// PaCppException:
// -----------------------------------------------------------------------------------
PaCppException::PaCppException(ExceptionSpecifier specifier) : specifier_(specifier)
{
}
const char *PaCppException::what() const throw()
{
switch (specifier_)
{
case UNABLE_TO_ADAPT_DEVICE:
{
return "Unable to adapt the given device to the specified host api specific device extension";
}
}
return "Unknown exception";
}
PaCppException::ExceptionSpecifier PaCppException::specifier() const
{
return specifier_;
}
bool PaCppException::operator==(const PaCppException &rhs) const
{
return (specifier_ == rhs.specifier_);
}
bool PaCppException::operator!=(const PaCppException &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
// PaException:
// -----------------------------------------------------------------------------------
//////
/// Wraps a PortAudio error into a PortAudioCpp PaException.
//////
PaException::PaException(PaError error) : error_(error)
{
}
// -----------------------------------------------------------------------------------
//////
/// Alias for paErrorText(), to have std::exception compliance.
//////
const char *PaException::what() const throw()
{
return paErrorText();
}
// -----------------------------------------------------------------------------------
//////
/// Returns the PortAudio error code (PaError).
//////
PaError PaException::paError() const
{
return error_;
}
//////
/// Returns the error as a (zero-terminated) text string.
//////
const char *PaException::paErrorText() const
{
return Pa_GetErrorText(error_);
}
//////
/// Returns true is the error is a HostApi error.
//////
bool PaException::isHostApiError() const
{
return (error_ == paUnanticipatedHostError);
}
//////
/// Returns the last HostApi error (which is the current one if
/// isHostApiError() returns true) as an error code.
//////
long PaException::lastHostApiError() const
{
return Pa_GetLastHostErrorInfo()->errorCode;
}
//////
/// Returns the last HostApi error (which is the current one if
/// isHostApiError() returns true) as a (zero-terminated) text
/// string, if it's available.
//////
const char *PaException::lastHostApiErrorText() const
{
return Pa_GetLastHostErrorInfo()->errorText;
}
// -----------------------------------------------------------------------------------
bool PaException::operator==(const PaException &rhs) const
{
return (error_ == rhs.error_);
}
bool PaException::operator!=(const PaException &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
// PaCppException:
// -----------------------------------------------------------------------------------
PaCppException::PaCppException(ExceptionSpecifier specifier) : specifier_(specifier)
{
}
const char *PaCppException::what() const throw()
{
switch (specifier_)
{
case UNABLE_TO_ADAPT_DEVICE:
{
return "Unable to adapt the given device to the specified host api specific device extension";
}
}
return "Unknown exception";
}
PaCppException::ExceptionSpecifier PaCppException::specifier() const
{
return specifier_;
}
bool PaCppException::operator==(const PaCppException &rhs) const
{
return (specifier_ == rhs.specifier_);
}
bool PaCppException::operator!=(const PaCppException &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,121 +1,121 @@
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
HostApi::HostApi(PaHostApiIndex index) : devices_(NULL)
{
try
{
info_ = Pa_GetHostApiInfo(index);
// Create and populate devices array:
int numDevices = deviceCount();
devices_ = new Device*[numDevices];
for (int i = 0; i < numDevices; ++i)
{
PaDeviceIndex deviceIndex = Pa_HostApiDeviceIndexToDeviceIndex(index, i);
if (deviceIndex < 0)
{
throw PaException(deviceIndex);
}
devices_[i] = &System::instance().deviceByIndex(deviceIndex);
}
}
catch (const std::exception &e)
{
// Delete any (partially) constructed objects (deconstructor isn't called):
delete[] devices_; // devices_ is either NULL or valid
// Re-throw exception:
throw e;
}
}
HostApi::~HostApi()
{
// Destroy devices array:
delete[] devices_;
}
// -----------------------------------------------------------------------------------
PaHostApiTypeId HostApi::typeId() const
{
return info_->type;
}
PaHostApiIndex HostApi::index() const
{
PaHostApiIndex index = Pa_HostApiTypeIdToHostApiIndex(typeId());
if (index < 0)
throw PaException(index);
return index;
}
const char *HostApi::name() const
{
return info_->name;
}
int HostApi::deviceCount() const
{
return info_->deviceCount;
}
// -----------------------------------------------------------------------------------
HostApi::DeviceIterator HostApi::devicesBegin()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[0]; // begin (first element)
return tmp;
}
HostApi::DeviceIterator HostApi::devicesEnd()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[deviceCount()]; // end (one past last element)
return tmp;
}
// -----------------------------------------------------------------------------------
Device &HostApi::defaultInputDevice() const
{
return System::instance().deviceByIndex(info_->defaultInputDevice);
}
Device &HostApi::defaultOutputDevice() const
{
return System::instance().deviceByIndex(info_->defaultOutputDevice);
}
// -----------------------------------------------------------------------------------
bool HostApi::operator==(const HostApi &rhs) const
{
return (typeId() == rhs.typeId());
}
bool HostApi::operator!=(const HostApi &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/System.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
#include "portaudiocpp/Exception.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
HostApi::HostApi(PaHostApiIndex index) : devices_(NULL)
{
try
{
info_ = Pa_GetHostApiInfo(index);
// Create and populate devices array:
int numDevices = deviceCount();
devices_ = new Device*[numDevices];
for (int i = 0; i < numDevices; ++i)
{
PaDeviceIndex deviceIndex = Pa_HostApiDeviceIndexToDeviceIndex(index, i);
if (deviceIndex < 0)
{
throw PaException(deviceIndex);
}
devices_[i] = &System::instance().deviceByIndex(deviceIndex);
}
}
catch (const std::exception &e)
{
// Delete any (partially) constructed objects (deconstructor isn't called):
delete[] devices_; // devices_ is either NULL or valid
// Re-throw exception:
throw e;
}
}
HostApi::~HostApi()
{
// Destroy devices array:
delete[] devices_;
}
// -----------------------------------------------------------------------------------
PaHostApiTypeId HostApi::typeId() const
{
return info_->type;
}
PaHostApiIndex HostApi::index() const
{
PaHostApiIndex index = Pa_HostApiTypeIdToHostApiIndex(typeId());
if (index < 0)
throw PaException(index);
return index;
}
const char *HostApi::name() const
{
return info_->name;
}
int HostApi::deviceCount() const
{
return info_->deviceCount;
}
// -----------------------------------------------------------------------------------
HostApi::DeviceIterator HostApi::devicesBegin()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[0]; // begin (first element)
return tmp;
}
HostApi::DeviceIterator HostApi::devicesEnd()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[deviceCount()]; // end (one past last element)
return tmp;
}
// -----------------------------------------------------------------------------------
Device &HostApi::defaultInputDevice() const
{
return System::instance().deviceByIndex(info_->defaultInputDevice);
}
Device &HostApi::defaultOutputDevice() const
{
return System::instance().deviceByIndex(info_->defaultOutputDevice);
}
// -----------------------------------------------------------------------------------
bool HostApi::operator==(const HostApi &rhs) const
{
return (typeId() == rhs.typeId());
}
bool HostApi::operator!=(const HostApi &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,45 +1,45 @@
#include "portaudiocpp/InterfaceCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
namespace portaudio
{
// ---------------------------------------------------------------------------------==
InterfaceCallbackStream::InterfaceCallbackStream()
{
}
InterfaceCallbackStream::InterfaceCallbackStream(const StreamParameters &parameters, CallbackInterface &instance)
{
open(parameters, instance);
}
InterfaceCallbackStream::~InterfaceCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// ---------------------------------------------------------------------------------==
void InterfaceCallbackStream::open(const StreamParameters &parameters, CallbackInterface &instance)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::callbackInterfaceToPaCallbackAdapter, static_cast<void *>(&instance));
if (err != paNoError)
{
throw PaException(err);
}
}
}
#include "portaudiocpp/InterfaceCallbackStream.hxx"
#include "portaudiocpp/StreamParameters.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/CallbackInterface.hxx"
namespace portaudio
{
// ---------------------------------------------------------------------------------==
InterfaceCallbackStream::InterfaceCallbackStream()
{
}
InterfaceCallbackStream::InterfaceCallbackStream(const StreamParameters &parameters, CallbackInterface &instance)
{
open(parameters, instance);
}
InterfaceCallbackStream::~InterfaceCallbackStream()
{
try
{
close();
}
catch (...)
{
// ignore all errors
}
}
// ---------------------------------------------------------------------------------==
void InterfaceCallbackStream::open(const StreamParameters &parameters, CallbackInterface &instance)
{
PaError err = Pa_OpenStream(&stream_, parameters.inputParameters().paStreamParameters(), parameters.outputParameters().paStreamParameters(),
parameters.sampleRate(), parameters.framesPerBuffer(), parameters.flags(), &impl::callbackInterfaceToPaCallbackAdapter, static_cast<void *>(&instance));
if (err != paNoError)
{
throw PaException(err);
}
}
}

View file

@ -1,3 +1,4 @@
#include "portaudiocpp/MemFunCallbackStream.hxx"
// (... template class ...)
#include "portaudiocpp/MemFunCallbackStream.hxx"
// (... template class ...)

View file

@ -1,195 +1,195 @@
#include "portaudiocpp/Stream.hxx"
#include <cstddef>
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/System.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
Stream::Stream() : stream_(NULL)
{
}
Stream::~Stream()
{
// (can't call close here,
// the derived class should atleast call
// close() in it's deconstructor)
}
// -----------------------------------------------------------------------------------
//////
/// Closes the Stream if it's open, else does nothing.
//////
void Stream::close()
{
if (isOpen() && System::exists())
{
PaError err = Pa_CloseStream(stream_);
stream_ = NULL;
if (err != paNoError)
throw PaException(err);
}
}
//////
/// Returns true if the Stream is open.
//////
bool Stream::isOpen() const
{
return (stream_ != NULL);
}
// -----------------------------------------------------------------------------------
void Stream::setStreamFinishedCallback(PaStreamFinishedCallback *callback)
{
PaError err = Pa_SetStreamFinishedCallback(stream_, callback);
if (err != paNoError)
throw PaException(err);
}
// -----------------------------------------------------------------------------------
void Stream::start()
{
PaError err = Pa_StartStream(stream_);
if (err != paNoError)
throw PaException(err);
}
void Stream::stop()
{
PaError err = Pa_StopStream(stream_);
if (err != paNoError)
throw PaException(err);
}
void Stream::abort()
{
PaError err = Pa_AbortStream(stream_);
if (err != paNoError)
throw PaException(err);
}
bool Stream::isStopped() const
{
PaError ret = Pa_IsStreamStopped(stream_);
if (ret < 0)
throw PaException(ret);
return (ret == 1);
}
bool Stream::isActive() const
{
PaError ret = Pa_IsStreamActive(stream_);
if (ret < 0)
throw PaException(ret);
return (ret == 1);
}
// -----------------------------------------------------------------------------------
//////
/// Returns the best known input latency for the Stream. This value may differ from the
/// suggested input latency set in the StreamParameters. Includes all sources of
/// latency known to PortAudio such as internal buffering, and Host API reported latency.
/// Doesn't include any estimates of unknown latency.
//////
PaTime Stream::inputLatency() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return PaTime(0.0);
}
return info->inputLatency;
}
//////
/// Returns the best known output latency for the Stream. This value may differ from the
/// suggested output latency set in the StreamParameters. Includes all sources of
/// latency known to PortAudio such as internal buffering, and Host API reported latency.
/// Doesn't include any estimates of unknown latency.
//////
PaTime Stream::outputLatency() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return PaTime(0.0);
}
return info->outputLatency;
}
//////
/// Returns the sample rate of the Stream. Usually this will be the
/// best known estimate of the used sample rate. For instance when opening a
/// Stream setting 44100.0 Hz in the StreamParameters, the actual sample
/// rate might be something like 44103.2 Hz (due to imperfections in the
/// sound card hardware).
//////
double Stream::sampleRate() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return 0.0;
}
return info->sampleRate;
}
// -----------------------------------------------------------------------------------
PaTime Stream::time() const
{
return Pa_GetStreamTime(stream_);
}
// -----------------------------------------------------------------------------------
//////
/// Accessor (const) for PortAudio PaStream pointer, useful for interfacing with
/// PortAudio add-ons such as PortMixer for instance. Normally accessing this
/// pointer should not be needed as PortAudioCpp aims to provide all of PortAudio's
/// functionality.
//////
const PaStream *Stream::paStream() const
{
return stream_;
}
//////
/// Accessor (non-const) for PortAudio PaStream pointer, useful for interfacing with
/// PortAudio add-ons such as PortMixer for instance. Normally accessing this
/// pointer should not be needed as PortAudioCpp aims to provide all of PortAudio's
/// functionality.
//////
PaStream *Stream::paStream()
{
return stream_;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/Stream.hxx"
#include <cstddef>
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/System.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
Stream::Stream() : stream_(NULL)
{
}
Stream::~Stream()
{
// (can't call close here,
// the derived class should atleast call
// close() in it's deconstructor)
}
// -----------------------------------------------------------------------------------
//////
/// Closes the Stream if it's open, else does nothing.
//////
void Stream::close()
{
if (isOpen() && System::exists())
{
PaError err = Pa_CloseStream(stream_);
stream_ = NULL;
if (err != paNoError)
throw PaException(err);
}
}
//////
/// Returns true if the Stream is open.
//////
bool Stream::isOpen() const
{
return (stream_ != NULL);
}
// -----------------------------------------------------------------------------------
void Stream::setStreamFinishedCallback(PaStreamFinishedCallback *callback)
{
PaError err = Pa_SetStreamFinishedCallback(stream_, callback);
if (err != paNoError)
throw PaException(err);
}
// -----------------------------------------------------------------------------------
void Stream::start()
{
PaError err = Pa_StartStream(stream_);
if (err != paNoError)
throw PaException(err);
}
void Stream::stop()
{
PaError err = Pa_StopStream(stream_);
if (err != paNoError)
throw PaException(err);
}
void Stream::abort()
{
PaError err = Pa_AbortStream(stream_);
if (err != paNoError)
throw PaException(err);
}
bool Stream::isStopped() const
{
PaError ret = Pa_IsStreamStopped(stream_);
if (ret < 0)
throw PaException(ret);
return (ret == 1);
}
bool Stream::isActive() const
{
PaError ret = Pa_IsStreamActive(stream_);
if (ret < 0)
throw PaException(ret);
return (ret == 1);
}
// -----------------------------------------------------------------------------------
//////
/// Returns the best known input latency for the Stream. This value may differ from the
/// suggested input latency set in the StreamParameters. Includes all sources of
/// latency known to PortAudio such as internal buffering, and Host API reported latency.
/// Doesn't include any estimates of unknown latency.
//////
PaTime Stream::inputLatency() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return PaTime(0.0);
}
return info->inputLatency;
}
//////
/// Returns the best known output latency for the Stream. This value may differ from the
/// suggested output latency set in the StreamParameters. Includes all sources of
/// latency known to PortAudio such as internal buffering, and Host API reported latency.
/// Doesn't include any estimates of unknown latency.
//////
PaTime Stream::outputLatency() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return PaTime(0.0);
}
return info->outputLatency;
}
//////
/// Returns the sample rate of the Stream. Usually this will be the
/// best known estimate of the used sample rate. For instance when opening a
/// Stream setting 44100.0 Hz in the StreamParameters, the actual sample
/// rate might be something like 44103.2 Hz (due to imperfections in the
/// sound card hardware).
//////
double Stream::sampleRate() const
{
const PaStreamInfo *info = Pa_GetStreamInfo(stream_);
if (info == NULL)
{
throw PaException(paInternalError);
return 0.0;
}
return info->sampleRate;
}
// -----------------------------------------------------------------------------------
PaTime Stream::time() const
{
return Pa_GetStreamTime(stream_);
}
// -----------------------------------------------------------------------------------
//////
/// Accessor (const) for PortAudio PaStream pointer, useful for interfacing with
/// PortAudio add-ons such as PortMixer for instance. Normally accessing this
/// pointer should not be needed as PortAudioCpp aims to provide all of PortAudio's
/// functionality.
//////
const PaStream *Stream::paStream() const
{
return stream_;
}
//////
/// Accessor (non-const) for PortAudio PaStream pointer, useful for interfacing with
/// PortAudio add-ons such as PortMixer for instance. Normally accessing this
/// pointer should not be needed as PortAudioCpp aims to provide all of PortAudio's
/// functionality.
//////
PaStream *Stream::paStream()
{
return stream_;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,160 +1,165 @@
#include "portaudiocpp/StreamParameters.hxx"
#include <cstddef>
#include "portaudiocpp/Device.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// Default constructor; does nothing.
//////
StreamParameters::StreamParameters()
{
}
//////
/// Sets up the all parameters needed to open either a half-duplex or full-duplex Stream.
///
/// @param inputParameters The parameters for the input direction of the to-be opened
/// Stream or DirectionSpecificStreamParameters::null() for an output-only Stream.
/// @param outputParameters The parameters for the output direction of the to-be opened
/// Stream or DirectionSpecificStreamParameters::null() for an input-only Stream.
/// @param sampleRate The to-be opened Stream's sample rate in Hz.
/// @param framesPerBuffer The number of frames per buffer for a CallbackStream, or
/// the preferred buffer granularity for a BlockingStream.
/// @param flags The flags for the to-be opened Stream; default paNoFlag.
//////
StreamParameters::StreamParameters(const DirectionSpecificStreamParameters &inputParameters,
const DirectionSpecificStreamParameters &outputParameters, double sampleRate, unsigned long framesPerBuffer,
PaStreamFlags flags) : inputParameters_(inputParameters), outputParameters_(outputParameters),
sampleRate_(sampleRate), framesPerBuffer_(framesPerBuffer), flags_(flags)
{
}
// -----------------------------------------------------------------------------------
//////
/// Sets the requested sample rate. If this sample rate isn't supported by the hardware, the
/// Stream will fail to open. The real-life sample rate used might differ slightly due to
/// imperfections in the sound card hardware; use Stream::sampleRate() to retrieve the
/// best known estimate for this value.
//////
void StreamParameters::setSampleRate(double sampleRate)
{
sampleRate_ = sampleRate;
}
//////
/// Either the number of frames per buffer for a CallbackStream, or
/// the preferred buffer granularity for a BlockingStream. See PortAudio
/// documentation.
//////
void StreamParameters::setFramesPerBuffer(unsigned long framesPerBuffer)
{
framesPerBuffer_ = framesPerBuffer;
}
//////
/// Sets the specified flag or does nothing when the flag is already set. Doesn't
/// `unset' any previously existing flags (use clearFlags() for that).
//////
void StreamParameters::setFlag(PaStreamFlags flag)
{
flags_ |= flag;
}
//////
/// Unsets the specified flag or does nothing if the flag isn't set. Doesn't affect
/// any other flags.
//////
void StreamParameters::unsetFlag(PaStreamFlags flag)
{
flags_ &= ~flag;
}
//////
/// Clears or `unsets' all set flags.
//////
void StreamParameters::clearFlags()
{
flags_ = paNoFlag;
}
// -----------------------------------------------------------------------------------
void StreamParameters::setInputParameters(const DirectionSpecificStreamParameters &parameters)
{
inputParameters_ = parameters;
}
void StreamParameters::setOutputParameters(const DirectionSpecificStreamParameters &parameters)
{
outputParameters_ = parameters;
}
// -----------------------------------------------------------------------------------
bool StreamParameters::isSupported() const
{
return (Pa_IsFormatSupported(inputParameters_.paStreamParameters(),
outputParameters_.paStreamParameters(), sampleRate_) == paFormatIsSupported);
}
// -----------------------------------------------------------------------------------
double StreamParameters::sampleRate() const
{
return sampleRate_;
}
unsigned long StreamParameters::framesPerBuffer() const
{
return framesPerBuffer_;
}
//////
/// Returns all currently set flags as a binary combined
/// integer value (PaStreamFlags). Use isFlagSet() to
/// avoid dealing with the bitmasks.
//////
PaStreamFlags StreamParameters::flags() const
{
return flags_;
}
//////
/// Returns true if the specified flag is currently set
/// or false if it isn't.
//////
bool StreamParameters::isFlagSet(PaStreamFlags flag) const
{
return ((flags_ & flag) != 0);
}
// -----------------------------------------------------------------------------------
DirectionSpecificStreamParameters &StreamParameters::inputParameters()
{
return inputParameters_;
}
const DirectionSpecificStreamParameters &StreamParameters::inputParameters() const
{
return inputParameters_;
}
DirectionSpecificStreamParameters &StreamParameters::outputParameters()
{
return outputParameters_;
}
const DirectionSpecificStreamParameters &StreamParameters::outputParameters() const
{
return outputParameters_;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/StreamParameters.hxx"
#include <cstddef>
#include "portaudiocpp/Device.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
//////
/// Default constructor; does nothing.
//////
StreamParameters::StreamParameters()
{
}
//////
/// Sets up the all parameters needed to open either a half-duplex or full-duplex Stream.
///
/// @param inputParameters The parameters for the input direction of the to-be opened
/// Stream or DirectionSpecificStreamParameters::null() for an output-only Stream.
/// @param outputParameters The parameters for the output direction of the to-be opened
/// Stream or DirectionSpecificStreamParameters::null() for an input-only Stream.
/// @param sampleRate The to-be opened Stream's sample rate in Hz.
/// @param framesPerBuffer The number of frames per buffer for a CallbackStream, or
/// the preferred buffer granularity for a BlockingStream.
/// @param flags The flags for the to-be opened Stream; default paNoFlag.
//////
StreamParameters::StreamParameters(const DirectionSpecificStreamParameters &inputParameters,
const DirectionSpecificStreamParameters &outputParameters, double sampleRate, unsigned long framesPerBuffer,
PaStreamFlags flags) : inputParameters_(inputParameters), outputParameters_(outputParameters),
sampleRate_(sampleRate), framesPerBuffer_(framesPerBuffer), flags_(flags)
{
}
// -----------------------------------------------------------------------------------
//////
/// Sets the requested sample rate. If this sample rate isn't supported by the hardware, the
/// Stream will fail to open. The real-life sample rate used might differ slightly due to
/// imperfections in the sound card hardware; use Stream::sampleRate() to retreive the
/// best known estimate for this value.
//////
void StreamParameters::setSampleRate(double sampleRate)
{
sampleRate_ = sampleRate;
}
//////
/// Either the number of frames per buffer for a CallbackStream, or
/// the preferred buffer granularity for a BlockingStream. See PortAudio
/// documentation.
//////
void StreamParameters::setFramesPerBuffer(unsigned long framesPerBuffer)
{
framesPerBuffer_ = framesPerBuffer;
}
//////
/// Sets the specified flag or does nothing when the flag is already set. Doesn't
/// `unset' any previously existing flags (use clearFlags() for that).
//////
void StreamParameters::setFlag(PaStreamFlags flag)
{
flags_ |= flag;
}
//////
/// Unsets the specified flag or does nothing if the flag isn't set. Doesn't affect
/// any other flags.
//////
void StreamParameters::unsetFlag(PaStreamFlags flag)
{
flags_ &= ~flag;
}
//////
/// Clears or `unsets' all set flags.
//////
void StreamParameters::clearFlags()
{
flags_ = paNoFlag;
}
// -----------------------------------------------------------------------------------
void StreamParameters::setInputParameters(const DirectionSpecificStreamParameters &parameters)
{
inputParameters_ = parameters;
}
void StreamParameters::setOutputParameters(const DirectionSpecificStreamParameters &parameters)
{
outputParameters_ = parameters;
}
// -----------------------------------------------------------------------------------
bool StreamParameters::isSupported() const
{
return (Pa_IsFormatSupported(inputParameters_.paStreamParameters(),
outputParameters_.paStreamParameters(), sampleRate_) == paFormatIsSupported);
}
// -----------------------------------------------------------------------------------
double StreamParameters::sampleRate() const
{
return sampleRate_;
}
unsigned long StreamParameters::framesPerBuffer() const
{
return framesPerBuffer_;
}
//////
/// Returns all currently set flags as a binary combined
/// integer value (PaStreamFlags). Use isFlagSet() to
/// avoid dealing with the bitmasks.
//////
PaStreamFlags StreamParameters::flags() const
{
return flags_;
}
//////
/// Returns true if the specified flag is currently set
/// or false if it isn't.
//////
bool StreamParameters::isFlagSet(PaStreamFlags flag) const
{
return ((flags_ & flag) != 0);
}
// -----------------------------------------------------------------------------------
DirectionSpecificStreamParameters &StreamParameters::inputParameters()
{
return inputParameters_;
}
const DirectionSpecificStreamParameters &StreamParameters::inputParameters() const
{
return inputParameters_;
}
DirectionSpecificStreamParameters &StreamParameters::outputParameters()
{
return outputParameters_;
}
const DirectionSpecificStreamParameters &StreamParameters::outputParameters() const
{
return outputParameters_;
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,307 +1,308 @@
#include "portaudiocpp/System.hxx"
#include <cstddef>
#include <cassert>
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/Stream.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/SystemHostApiIterator.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
// Static members:
System *System::instance_ = NULL;
int System::initCount_ = 0;
HostApi **System::hostApis_ = NULL;
Device **System::devices_ = NULL;
Device *System::nullDevice_ = NULL;
// -----------------------------------------------------------------------------------
int System::version()
{
return Pa_GetVersion();
}
const char *System::versionText()
{
return Pa_GetVersionText();
}
void System::initialize()
{
++initCount_;
if (initCount_ == 1)
{
// Create singleton:
assert(instance_ == NULL);
instance_ = new System();
// Initialize the PortAudio system:
{
PaError err = Pa_Initialize();
if (err != paNoError)
throw PaException(err);
}
// Create and populate device array:
{
int numDevices = instance().deviceCount();
devices_ = new Device*[numDevices];
for (int i = 0; i < numDevices; ++i)
devices_[i] = new Device(i);
}
// Create and populate host api array:
{
int numHostApis = instance().hostApiCount();
hostApis_ = new HostApi*[numHostApis];
for (int i = 0; i < numHostApis; ++i)
hostApis_[i] = new HostApi(i);
}
// Create null device:
nullDevice_ = new Device(paNoDevice);
}
}
void System::terminate()
{
PaError err = paNoError;
if (initCount_ == 1)
{
// Destroy null device:
delete nullDevice_;
// Destroy host api array:
{
if (hostApis_ != NULL)
{
int numHostApis = instance().hostApiCount();
for (int i = 0; i < numHostApis; ++i)
delete hostApis_[i];
delete[] hostApis_;
hostApis_ = NULL;
}
}
// Destroy device array:
{
if (devices_ != NULL)
{
int numDevices = instance().deviceCount();
for (int i = 0; i < numDevices; ++i)
delete devices_[i];
delete[] devices_;
devices_ = NULL;
}
}
// Terminate the PortAudio system:
assert(instance_ != NULL);
err = Pa_Terminate();
// Destroy singleton:
delete instance_;
instance_ = NULL;
}
if (initCount_ > 0)
--initCount_;
if (err != paNoError)
throw PaException(err);
}
System &System::instance()
{
assert(exists());
return *instance_;
}
bool System::exists()
{
return (instance_ != NULL);
}
// -----------------------------------------------------------------------------------
System::HostApiIterator System::hostApisBegin()
{
System::HostApiIterator tmp;
tmp.ptr_ = &hostApis_[0]; // begin (first element)
return tmp;
}
System::HostApiIterator System::hostApisEnd()
{
int count = hostApiCount();
System::HostApiIterator tmp;
tmp.ptr_ = &hostApis_[count]; // end (one past last element)
return tmp;
}
HostApi &System::defaultHostApi()
{
PaHostApiIndex defaultHostApi = Pa_GetDefaultHostApi();
if (defaultHostApi < 0)
throw PaException(defaultHostApi);
return *hostApis_[defaultHostApi];
}
HostApi &System::hostApiByTypeId(PaHostApiTypeId type)
{
PaHostApiIndex index = Pa_HostApiTypeIdToHostApiIndex(type);
if (index < 0)
throw PaException(index);
return *hostApis_[index];
}
HostApi &System::hostApiByIndex(PaHostApiIndex index)
{
if (index < 0 || index >= hostApiCount())
throw PaException(paInternalError);
return *hostApis_[index];
}
int System::hostApiCount()
{
PaHostApiIndex count = Pa_GetHostApiCount();
if (count < 0)
throw PaException(count);
return count;
}
// -----------------------------------------------------------------------------------
System::DeviceIterator System::devicesBegin()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[0];
return tmp;
}
System::DeviceIterator System::devicesEnd()
{
int count = deviceCount();
DeviceIterator tmp;
tmp.ptr_ = &devices_[count];
return tmp;
}
//////
/// Returns the System's default input Device, or the null Device if none
/// was available.
//////
Device &System::defaultInputDevice()
{
PaDeviceIndex index = Pa_GetDefaultInputDevice();
return deviceByIndex(index);
}
//////
/// Returns the System's default output Device, or the null Device if none
/// was available.
//////
Device &System::defaultOutputDevice()
{
PaDeviceIndex index = Pa_GetDefaultOutputDevice();
return deviceByIndex(index);
}
//////
/// Returns the Device for the given index.
/// Will throw a paInternalError equivalent PaException if the given index
/// is out of range.
//////
Device &System::deviceByIndex(PaDeviceIndex index)
{
if (index < -1 || index >= deviceCount())
{
throw PaException(paInternalError);
}
if (index == -1)
return System::instance().nullDevice();
return *devices_[index];
}
int System::deviceCount()
{
PaDeviceIndex count = Pa_GetDeviceCount();
if (count < 0)
throw PaException(count);
return count;
}
Device &System::nullDevice()
{
return *nullDevice_;
}
// -----------------------------------------------------------------------------------
void System::sleep(long msec)
{
Pa_Sleep(msec);
}
int System::sizeOfSample(PaSampleFormat format)
{
PaError err = Pa_GetSampleSize(format);
if (err < 0)
{
throw PaException(err);
return 0;
}
return err;
}
// -----------------------------------------------------------------------------------
System::System()
{
// (left blank intentionally)
}
System::~System()
{
// (left blank intentionally)
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/System.hxx"
#include <cstddef>
#include <cassert>
#include "portaudiocpp/HostApi.hxx"
#include "portaudiocpp/Device.hxx"
#include "portaudiocpp/Stream.hxx"
#include "portaudiocpp/Exception.hxx"
#include "portaudiocpp/SystemHostApiIterator.hxx"
#include "portaudiocpp/SystemDeviceIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
// Static members:
System *System::instance_ = NULL;
int System::initCount_ = 0;
HostApi **System::hostApis_ = NULL;
Device **System::devices_ = NULL;
Device *System::nullDevice_ = NULL;
// -----------------------------------------------------------------------------------
int System::version()
{
return Pa_GetVersion();
}
const char *System::versionText()
{
return Pa_GetVersionText();
}
void System::initialize()
{
++initCount_;
if (initCount_ == 1)
{
// Create singleton:
assert(instance_ == NULL);
instance_ = new System();
// Initialize the PortAudio system:
{
PaError err = Pa_Initialize();
if (err != paNoError)
throw PaException(err);
}
// Create and populate device array:
{
int numDevices = instance().deviceCount();
devices_ = new Device*[numDevices];
for (int i = 0; i < numDevices; ++i)
devices_[i] = new Device(i);
}
// Create and populate host api array:
{
int numHostApis = instance().hostApiCount();
hostApis_ = new HostApi*[numHostApis];
for (int i = 0; i < numHostApis; ++i)
hostApis_[i] = new HostApi(i);
}
// Create null device:
nullDevice_ = new Device(paNoDevice);
}
}
void System::terminate()
{
PaError err = paNoError;
if (initCount_ == 1)
{
// Destroy null device:
delete nullDevice_;
// Destroy host api array:
{
if (hostApis_ != NULL)
{
int numHostApis = instance().hostApiCount();
for (int i = 0; i < numHostApis; ++i)
delete hostApis_[i];
delete[] hostApis_;
hostApis_ = NULL;
}
}
// Destroy device array:
{
if (devices_ != NULL)
{
int numDevices = instance().deviceCount();
for (int i = 0; i < numDevices; ++i)
delete devices_[i];
delete[] devices_;
devices_ = NULL;
}
}
// Terminate the PortAudio system:
assert(instance_ != NULL);
err = Pa_Terminate();
// Destroy singleton:
delete instance_;
instance_ = NULL;
}
if (initCount_ > 0)
--initCount_;
if (err != paNoError)
throw PaException(err);
}
System &System::instance()
{
assert(exists());
return *instance_;
}
bool System::exists()
{
return (instance_ != NULL);
}
// -----------------------------------------------------------------------------------
System::HostApiIterator System::hostApisBegin()
{
System::HostApiIterator tmp;
tmp.ptr_ = &hostApis_[0]; // begin (first element)
return tmp;
}
System::HostApiIterator System::hostApisEnd()
{
int count = hostApiCount();
System::HostApiIterator tmp;
tmp.ptr_ = &hostApis_[count]; // end (one past last element)
return tmp;
}
HostApi &System::defaultHostApi()
{
PaHostApiIndex defaultHostApi = Pa_GetDefaultHostApi();
if (defaultHostApi < 0)
throw PaException(defaultHostApi);
return *hostApis_[defaultHostApi];
}
HostApi &System::hostApiByTypeId(PaHostApiTypeId type)
{
PaHostApiIndex index = Pa_HostApiTypeIdToHostApiIndex(type);
if (index < 0)
throw PaException(index);
return *hostApis_[index];
}
HostApi &System::hostApiByIndex(PaHostApiIndex index)
{
if (index < 0 || index >= hostApiCount())
throw PaException(paInternalError);
return *hostApis_[index];
}
int System::hostApiCount()
{
PaHostApiIndex count = Pa_GetHostApiCount();
if (count < 0)
throw PaException(count);
return count;
}
// -----------------------------------------------------------------------------------
System::DeviceIterator System::devicesBegin()
{
DeviceIterator tmp;
tmp.ptr_ = &devices_[0];
return tmp;
}
System::DeviceIterator System::devicesEnd()
{
int count = deviceCount();
DeviceIterator tmp;
tmp.ptr_ = &devices_[count];
return tmp;
}
//////
/// Returns the System's default input Device, or the null Device if none
/// was available.
//////
Device &System::defaultInputDevice()
{
PaDeviceIndex index = Pa_GetDefaultInputDevice();
return deviceByIndex(index);
}
//////
/// Returns the System's default output Device, or the null Device if none
/// was available.
//////
Device &System::defaultOutputDevice()
{
PaDeviceIndex index = Pa_GetDefaultOutputDevice();
return deviceByIndex(index);
}
//////
/// Returns the Device for the given index.
/// Will throw a paInternalError equivalent PaException if the given index
/// is out of range.
//////
Device &System::deviceByIndex(PaDeviceIndex index)
{
if (index < -1 || index >= deviceCount())
{
throw PaException(paInternalError);
}
if (index == -1)
return System::instance().nullDevice();
return *devices_[index];
}
int System::deviceCount()
{
PaDeviceIndex count = Pa_GetDeviceCount();
if (count < 0)
throw PaException(count);
return count;
}
Device &System::nullDevice()
{
return *nullDevice_;
}
// -----------------------------------------------------------------------------------
void System::sleep(long msec)
{
Pa_Sleep(msec);
}
int System::sizeOfSample(PaSampleFormat format)
{
PaError err = Pa_GetSampleSize(format);
if (err < 0)
{
throw PaException(err);
return 0;
}
return err;
}
// -----------------------------------------------------------------------------------
System::System()
{
// (left blank intentionally)
}
System::~System()
{
// (left blank intentionally)
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,58 +1,60 @@
#include "portaudiocpp/SystemDeviceIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
Device &System::DeviceIterator::operator*() const
{
return **ptr_;
}
Device *System::DeviceIterator::operator->() const
{
return &**this;
}
// -----------------------------------------------------------------------------------
System::DeviceIterator &System::DeviceIterator::operator++()
{
++ptr_;
return *this;
}
System::DeviceIterator System::DeviceIterator::operator++(int)
{
System::DeviceIterator prev = *this;
++*this;
return prev;
}
System::DeviceIterator &System::DeviceIterator::operator--()
{
--ptr_;
return *this;
}
System::DeviceIterator System::DeviceIterator::operator--(int)
{
System::DeviceIterator prev = *this;
--*this;
return prev;
}
// -----------------------------------------------------------------------------------
bool System::DeviceIterator::operator==(const System::DeviceIterator &rhs) const
{
return (ptr_ == rhs.ptr_);
}
bool System::DeviceIterator::operator!=(const System::DeviceIterator &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/SystemDeviceIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
Device &System::DeviceIterator::operator*() const
{
return **ptr_;
}
Device *System::DeviceIterator::operator->() const
{
return &**this;
}
// -----------------------------------------------------------------------------------
System::DeviceIterator &System::DeviceIterator::operator++()
{
++ptr_;
return *this;
}
System::DeviceIterator System::DeviceIterator::operator++(int)
{
System::DeviceIterator prev = *this;
++*this;
return prev;
}
System::DeviceIterator &System::DeviceIterator::operator--()
{
--ptr_;
return *this;
}
System::DeviceIterator System::DeviceIterator::operator--(int)
{
System::DeviceIterator prev = *this;
--*this;
return prev;
}
// -----------------------------------------------------------------------------------
bool System::DeviceIterator::operator==(const System::DeviceIterator &rhs)
{
return (ptr_ == rhs.ptr_);
}
bool System::DeviceIterator::operator!=(const System::DeviceIterator &rhs)
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,58 +1,59 @@
#include "portaudiocpp/SystemHostApiIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
HostApi &System::HostApiIterator::operator*() const
{
return **ptr_;
}
HostApi *System::HostApiIterator::operator->() const
{
return &**this;
}
// -----------------------------------------------------------------------------------
System::HostApiIterator &System::HostApiIterator::operator++()
{
++ptr_;
return *this;
}
System::HostApiIterator System::HostApiIterator::operator++(int)
{
System::HostApiIterator prev = *this;
++*this;
return prev;
}
System::HostApiIterator &System::HostApiIterator::operator--()
{
--ptr_;
return *this;
}
System::HostApiIterator System::HostApiIterator::operator--(int)
{
System::HostApiIterator prev = *this;
--*this;
return prev;
}
// -----------------------------------------------------------------------------------
bool System::HostApiIterator::operator==(const System::HostApiIterator &rhs) const
{
return (ptr_ == rhs.ptr_);
}
bool System::HostApiIterator::operator!=(const System::HostApiIterator &rhs) const
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio
#include "portaudiocpp/SystemHostApiIterator.hxx"
namespace portaudio
{
// -----------------------------------------------------------------------------------
HostApi &System::HostApiIterator::operator*() const
{
return **ptr_;
}
HostApi *System::HostApiIterator::operator->() const
{
return &**this;
}
// -----------------------------------------------------------------------------------
System::HostApiIterator &System::HostApiIterator::operator++()
{
++ptr_;
return *this;
}
System::HostApiIterator System::HostApiIterator::operator++(int)
{
System::HostApiIterator prev = *this;
++*this;
return prev;
}
System::HostApiIterator &System::HostApiIterator::operator--()
{
--ptr_;
return *this;
}
System::HostApiIterator System::HostApiIterator::operator--(int)
{
System::HostApiIterator prev = *this;
--*this;
return prev;
}
// -----------------------------------------------------------------------------------
bool System::HostApiIterator::operator==(const System::HostApiIterator &rhs)
{
return (ptr_ == rhs.ptr_);
}
bool System::HostApiIterator::operator!=(const System::HostApiIterator &rhs)
{
return !(*this == rhs);
}
// -----------------------------------------------------------------------------------
} // namespace portaudio

View file

@ -1,26 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PortAudioJNI", "PortAudioJNI.vcxproj", "{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Debug|Win32.ActiveCfg = Debug|Win32
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Debug|Win32.Build.0 = Debug|Win32
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Debug|x64.ActiveCfg = Debug|x64
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Debug|x64.Build.0 = Debug|x64
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Release|Win32.ActiveCfg = Release|Win32
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Release|Win32.Build.0 = Release|Win32
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Release|x64.ActiveCfg = Release|x64
{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View file

@ -1,198 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="PortAudioJNI"
ProjectGUID="{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}"
RootNamespace="PortAudioJNI"
Keyword="Win32Proj"
TargetFrameworkVersion="196613"
>
<Platforms>
<Platform
Name="Win32"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
OutputDirectory="..\..\..\..\jportaudio"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="C:\glassfish3\jdk\include;C:\glassfish3\jdk\include\win32"
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name="Release|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="2"
CharacterSet="1"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCustomBuildTool"
/>
<Tool
Name="VCXMLDataGeneratorTool"
/>
<Tool
Name="VCWebServiceProxyGeneratorTool"
/>
<Tool
Name="VCMIDLTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="2"
EnableIntrinsicFunctions="true"
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
TargetMachine="1"
/>
<Tool
Name="VCALinkTool"
/>
<Tool
Name="VCManifestTool"
/>
<Tool
Name="VCXDCMakeTool"
/>
<Tool
Name="VCBscMakeTool"
/>
<Tool
Name="VCFxCopTool"
/>
<Tool
Name="VCAppVerifierTool"
/>
<Tool
Name="VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File
RelativePath="..\..\..\src\com_portaudio_PortAudio.c"
>
</File>
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
<File
RelativePath="..\..\..\src\com_portaudio_PortAudio.h"
>
</File>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View file

@ -1,174 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{4024D885-39B0-4C8A-B3E7-BAB4BA08DFBB}</ProjectGuid>
<RootNamespace>PortAudioJNI</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\..\..\jportaudio\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\..\..\..\jportaudio\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\..\..\jportaudio\</OutDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\..\..\..\jportaudio\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Configuration)\</IntDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">jportaudio_x64</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">jportaudio_x86</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">jportaudio_x86</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">jportaudio_x64</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\..\..\include;%JAVA_HOME%\include;%JAVA_HOME%\include\win32</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\..\..\include;%JAVA_HOME%\include;%JAVA_HOME%\include\win32</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\..\..\..\..\..\include;%JAVA_HOME%\include;%JAVA_HOME%\include\win32</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;PORTAUDIOJNI_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>..\..\..\..\..\..\include;%JAVA_HOME%\include;%JAVA_HOME%\include\win32</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\src\com_portaudio_BlockingStream.c" />
<ClCompile Include="..\..\..\src\com_portaudio_PortAudio.c" />
<ClCompile Include="..\..\..\src\jpa_tools.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\src\com_portaudio_BlockingStream.h" />
<ClInclude Include="..\..\..\src\com_portaudio_PortAudio.h" />
<ClInclude Include="..\..\..\src\jpa_tools.h" />
</ItemGroup>
<ItemGroup>
<Library Include="..\..\..\..\jportaudio\portaudio_x64.lib" />
<Library Include="..\..\..\..\jportaudio\portaudio_x86.lib" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View file

@ -1,351 +0,0 @@
/*
* Portable Audio I/O Library
* Java Binding for PortAudio
*
* Based on the Open Source API proposed by Ross Bencina
* Copyright (c) 2008 Ross Bencina
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files
* (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
* The text above constitutes the entire PortAudio license; however,
* the PortAudio community also makes the following non-binding requests:
*
* Any person wishing to distribute modifications to the Software is
* requested to send the modifications to the original developer so that
* they can be incorporated into the canonical version. It is also
* requested that these non-binding requests be included along with the
* license above.
*/
#include "com_portaudio_BlockingStream.h"
#include "portaudio.h"
#include "jpa_tools.h"
#ifndef FALSE
#define FALSE (0)
#endif
#ifndef TRUE
#define TRUE (!FALSE)
#endif
/*
* Class: com_portaudio_BlockingStream
* Method: getReadAvailable
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_BlockingStream_getReadAvailable
(JNIEnv *env, jobject blockingStream)
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream == NULL ) return 0;
return Pa_GetStreamReadAvailable( stream );
}
/*
* Class: com_portaudio_BlockingStream
* Method: getWriteAvailable
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_BlockingStream_getWriteAvailable
(JNIEnv *env, jobject blockingStream)
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream == NULL ) return 0;
return Pa_GetStreamWriteAvailable( stream );
}
/*
* Class: com_portaudio_BlockingStream
* Method: writeFloats
* Signature: ([FI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_writeFloats
(JNIEnv *env, jobject blockingStream, jfloatArray buffer, jint numFrames)
{
jfloat *carr;
jint err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( buffer == NULL )
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"null stream buffer");
return FALSE;
}
carr = (*env)->GetFloatArrayElements(env, buffer, NULL);
if (carr == NULL)
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"invalid stream buffer");
return FALSE;
}
err = Pa_WriteStream( stream, carr, numFrames );
(*env)->ReleaseFloatArrayElements(env, buffer, carr, 0);
if( err == paOutputUnderflowed )
{
return TRUE;
}
else
{
jpa_CheckError( env, err );
return FALSE;
}
}
/*
* Class: com_portaudio_BlockingStream
* Method: readFloats
* Signature: ([FI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_readFloats
(JNIEnv *env, jobject blockingStream, jfloatArray buffer, jint numFrames)
{
jfloat *carr;
jint err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( buffer == NULL )
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"null stream buffer");
return FALSE;
}
carr = (*env)->GetFloatArrayElements(env, buffer, NULL);
if (carr == NULL)
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"invalid stream buffer");
return FALSE;
}
err = Pa_ReadStream( stream, carr, numFrames );
(*env)->ReleaseFloatArrayElements(env, buffer, carr, 0);
if( err == paInputOverflowed )
{
return TRUE;
}
else
{
jpa_CheckError( env, err );
return FALSE;
}
}
/*
* Class: com_portaudio_BlockingStream
* Method: writeShorts
* Signature: ([SI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_writeShorts
(JNIEnv *env, jobject blockingStream, jfloatArray buffer, jint numFrames)
{
jshort *carr;
jint err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( buffer == NULL )
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"null stream buffer");
return FALSE;
}
carr = (*env)->GetShortArrayElements(env, buffer, NULL);
if (carr == NULL)
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"invalid stream buffer");
return FALSE;
}
err = Pa_WriteStream( stream, carr, numFrames );
(*env)->ReleaseShortArrayElements(env, buffer, carr, 0);
if( err == paOutputUnderflowed )
{
return TRUE;
}
else
{
jpa_CheckError( env, err );
return FALSE;
}
}
/*
* Class: com_portaudio_BlockingStream
* Method: readShorts
* Signature: ([SI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_readShorts
(JNIEnv *env, jobject blockingStream, jfloatArray buffer, jint numFrames)
{
jshort *carr;
jint err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( buffer == NULL )
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"null stream buffer");
return FALSE;
}
carr = (*env)->GetShortArrayElements(env, buffer, NULL);
if (carr == NULL)
{
(*env)->ThrowNew( env, (*env)->FindClass(env,"java/lang/RuntimeException"),
"invalid stream buffer");
return FALSE;
}
err = Pa_ReadStream( stream, carr, numFrames );
(*env)->ReleaseShortArrayElements(env, buffer, carr, 0);
if( err == paInputOverflowed )
{
return TRUE;
}
else
{
jpa_CheckError( env, err );
return FALSE;
}
}
/*
* Class: com_portaudio_BlockingStream
* Method: start
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_start
(JNIEnv *env, jobject blockingStream )
{
PaStream *stream = jpa_GetStreamPointer( env, blockingStream );
int err = Pa_StartStream( stream );
jpa_CheckError( env, err );
}
/*
* Class: com_portaudio_BlockingStream
* Method: stop
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_stop
(JNIEnv *env, jobject blockingStream )
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
int err = Pa_StopStream( stream );
jpa_CheckError( env, err );
}
/*
* Class: com_portaudio_BlockingStream
* Method: abort
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_abort
(JNIEnv *env, jobject blockingStream )
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
int err = Pa_AbortStream( stream );
jpa_CheckError( env, err );
}
/*
* Class: com_portaudio_BlockingStream
* Method: close
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_close
(JNIEnv *env, jobject blockingStream )
{
jclass cls;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream != NULL )
{
int err = Pa_CloseStream( stream );
jpa_CheckError( env, err );
cls = (*env)->GetObjectClass(env, blockingStream);
jpa_SetLongField( env, cls, blockingStream, "nativeStream", (jlong) 0 );
}
}
/*
* Class: com_portaudio_BlockingStream
* Method: isStopped
* Signature: ()V
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_isStopped
(JNIEnv *env, jobject blockingStream )
{
int err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream == NULL ) return 1;
err = Pa_IsStreamStopped( stream );
return (jpa_CheckError( env, err ) > 0);
}
/*
* Class: com_portaudio_BlockingStream
* Method: isActive
* Signature: ()V
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_isActive
(JNIEnv *env, jobject blockingStream )
{
int err;
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream == NULL ) return 0;
err = Pa_IsStreamActive( stream );
return (jpa_CheckError( env, err ) > 0);
}
/*
* Class: com_portaudio_BlockingStream
* Method: getTime
* Signature: ()D
*/
JNIEXPORT jdouble JNICALL Java_com_portaudio_BlockingStream_getTime
(JNIEnv *env, jobject blockingStream )
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
if( stream == NULL ) return 0.0;
return Pa_GetStreamTime( stream );
}
/*
* Class: com_portaudio_BlockingStream
* Method: getInfo
* Signature: ()Lcom/portaudio/StreamInfo;
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_getInfo
(JNIEnv *env, jobject blockingStream, jobject streamInfo)
{
PaStream *stream =jpa_GetStreamPointer( env, blockingStream );
const PaStreamInfo *info = Pa_GetStreamInfo( stream );
if( streamInfo == NULL )
{
jpa_ThrowError( env, "Invalid stream." );
}
else
{
/* Get a reference to obj's class */
jclass cls = (*env)->GetObjectClass(env, streamInfo);
jpa_SetIntField( env, cls, streamInfo, "structVersion", info->structVersion );
jpa_SetDoubleField( env, cls, streamInfo, "inputLatency", info->inputLatency );
jpa_SetDoubleField( env, cls, streamInfo, "outputLatency", info->outputLatency );
jpa_SetDoubleField( env, cls, streamInfo, "sampleRate", info->sampleRate );
}
}

View file

@ -1,130 +0,0 @@
/* DO NOT EDIT THIS FILE - it is machine generated */
#if defined(__APPLE__)
#include <JavaVM/jni.h>
#else
#include <jni.h>
#endif
/* Header for class com_portaudio_BlockingStream */
#ifndef _Included_com_portaudio_BlockingStream
#define _Included_com_portaudio_BlockingStream
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: com_portaudio_BlockingStream
* Method: getReadAvailable
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_BlockingStream_getReadAvailable
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: getWriteAvailable
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_BlockingStream_getWriteAvailable
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: readFloats
* Signature: ([FI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_readFloats
(JNIEnv *, jobject, jfloatArray, jint);
/*
* Class: com_portaudio_BlockingStream
* Method: writeFloats
* Signature: ([FI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_writeFloats
(JNIEnv *, jobject, jfloatArray, jint);
/*
* Class: com_portaudio_BlockingStream
* Method: readShorts
* Signature: ([SI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_readShorts
(JNIEnv *, jobject, jshortArray, jint);
/*
* Class: com_portaudio_BlockingStream
* Method: writeShorts
* Signature: ([SI)Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_writeShorts
(JNIEnv *, jobject, jshortArray, jint);
/*
* Class: com_portaudio_BlockingStream
* Method: start
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_start
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: stop
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_stop
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: abort
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_abort
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: close
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_close
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: isStopped
* Signature: ()Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_isStopped
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: isActive
* Signature: ()Z
*/
JNIEXPORT jboolean JNICALL Java_com_portaudio_BlockingStream_isActive
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: getTime
* Signature: ()D
*/
JNIEXPORT jdouble JNICALL Java_com_portaudio_BlockingStream_getTime
(JNIEnv *, jobject);
/*
* Class: com_portaudio_BlockingStream
* Method: getInfo
* Signature: (Lcom/portaudio/StreamInfo;)V
*/
JNIEXPORT void JNICALL Java_com_portaudio_BlockingStream_getInfo
(JNIEnv *, jobject, jobject);
#ifdef __cplusplus
}
#endif
#endif

View file

@ -1,279 +0,0 @@
/*
* Portable Audio I/O Library
* Java Binding for PortAudio
*
* Based on the Open Source API proposed by Ross Bencina
* Copyright (c) 2008 Ross Bencina
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files
* (the "Software"), to deal in the Software without restriction,
* including without limitation the rights to use, copy, modify, merge,
* publish, distribute, sublicense, and/or sell copies of the Software,
* and to permit persons to whom the Software is furnished to do so,
* subject to the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
* ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
* The text above constitutes the entire PortAudio license; however,
* the PortAudio community also makes the following non-binding requests:
*
* Any person wishing to distribute modifications to the Software is
* requested to send the modifications to the original developer so that
* they can be incorporated into the canonical version. It is also
* requested that these non-binding requests be included along with the
* license above.
*/
#include "com_portaudio_PortAudio.h"
#include "portaudio.h"
#include "jpa_tools.h"
/*
* Class: com_portaudio_PortAudio
* Method: getVersion
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getVersion
(JNIEnv *env, jclass clazz)
{
return Pa_GetVersion();
}
/*
* Class: com_portaudio_PortAudio
* Method: getVersionText
* Signature: ()Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_com_portaudio_PortAudio_getVersionText
(JNIEnv *env, jclass clazz)
{
return (*env)->NewStringUTF(env, Pa_GetVersionText() );
}
/*
* Class: com_portaudio_PortAudio
* Method: initialize
* Signature: ()I
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_initialize
(JNIEnv *env, jclass clazz)
{
PaError err = Pa_Initialize();
jpa_CheckError( env, err );
}
/*
* Class: com_portaudio_PortAudio
* Method: terminate
* Signature: ()I
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_terminate
(JNIEnv *env, jclass clazz)
{
PaError err = Pa_Terminate();
jpa_CheckError( env, err );
}
/*
* Class: com_portaudio_PortAudio
* Method: getDeviceCount
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDeviceCount
(JNIEnv *env, jclass clazz)
{
jint count = Pa_GetDeviceCount();
return jpa_CheckError( env, count );
}
/*
* Class: com_portaudio_PortAudio
* Method: getDeviceInfo
* Signature: (ILcom/portaudio/DeviceInfo;)I
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_getDeviceInfo
(JNIEnv *env, jclass clazz, jint index, jobject deviceInfo)
{
const PaDeviceInfo *info;
/* Get a reference to obj's class */
jclass cls = (*env)->GetObjectClass(env, deviceInfo);
info = Pa_GetDeviceInfo( index );
if( info == NULL )
{
jpa_ThrowError( env, "Pa_GetDeviceInfo returned NULL." );
}
else
{
jpa_SetStringField( env, cls, deviceInfo, "name", info->name );
jpa_SetIntField( env, cls, deviceInfo, "maxInputChannels", info->maxInputChannels );
jpa_SetIntField( env, cls, deviceInfo, "maxOutputChannels", info->maxOutputChannels );
jpa_SetIntField( env, cls, deviceInfo, "hostApi", info->hostApi );
jpa_SetDoubleField( env, cls, deviceInfo, "defaultSampleRate", info->defaultSampleRate );
jpa_SetDoubleField( env, cls, deviceInfo, "defaultLowInputLatency", info->defaultLowInputLatency );
jpa_SetDoubleField( env, cls, deviceInfo, "defaultLowInputLatency", info->defaultHighInputLatency );
jpa_SetDoubleField( env, cls, deviceInfo, "defaultLowOutputLatency", info->defaultLowOutputLatency );
jpa_SetDoubleField( env, cls, deviceInfo, "defaultHighOutputLatency", info->defaultHighOutputLatency );
}
}
/*
* Class: com_portaudio_PortAudio
* Method: geHostApiCount
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getHostApiCount
(JNIEnv *env, jclass clazz)
{
jint count = Pa_GetHostApiCount();
return jpa_CheckError( env, count );
}
/*
* Class: com_portaudio_PortAudio
* Method: hostApiTypeIdToHostApiIndex
* Signature: (I)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_hostApiTypeIdToHostApiIndex
(JNIEnv *env, jclass clazz, jint hostApiType)
{
return Pa_HostApiTypeIdToHostApiIndex( (PaHostApiTypeId) hostApiType );
}
/*
* Class: com_portaudio_PortAudio
* Method: hostApiDeviceIndexToDeviceIndex
* Signature: (II)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_hostApiDeviceIndexToDeviceIndex
(JNIEnv *env, jclass clazz, jint hostApiIndex, jint apiDeviceIndex)
{
return Pa_HostApiDeviceIndexToDeviceIndex( hostApiIndex, apiDeviceIndex );
}
/*
* Class: com_portaudio_PortAudio
* Method: getHostApiInfo
* Signature: (ILcom/portaudio/HostApiInfo;)I
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_getHostApiInfo
(JNIEnv *env, jclass clazz, jint index, jobject hostApiInfo)
{
const PaHostApiInfo *info;
/* Get a reference to obj's class */
jclass cls = (*env)->GetObjectClass(env, hostApiInfo);
info = Pa_GetHostApiInfo( index );
if( info == NULL )
{
jpa_ThrowError( env, "Pa_GetHostApiInfo returned NULL." );
}
else
{
jpa_SetIntField( env, cls, hostApiInfo, "version", info->structVersion );
jpa_SetIntField( env, cls, hostApiInfo, "type", info->type );
jpa_SetStringField( env, cls, hostApiInfo, "name", info->name );
jpa_SetIntField( env, cls, hostApiInfo, "deviceCount", info->deviceCount );
jpa_SetIntField( env, cls, hostApiInfo, "defaultInputDevice", info->defaultInputDevice );
jpa_SetIntField( env, cls, hostApiInfo, "defaultOutputDevice", info->defaultOutputDevice );
}
}
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultInputDevice
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultInputDevice
(JNIEnv *env, jclass clazz)
{
jint deviceId = Pa_GetDefaultInputDevice();
return jpa_CheckError( env, deviceId );
}
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultOutputDevice
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultOutputDevice
(JNIEnv *env, jclass clazz)
{
jint deviceId = Pa_GetDefaultOutputDevice();
return jpa_CheckError( env, deviceId );
}
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultHostApi
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultHostApi
(JNIEnv *env, jclass clazz)
{
jint deviceId = Pa_GetDefaultHostApi();
return jpa_CheckError( env, deviceId );
}
/*
* Class: com_portaudio_PortAudio
* Method: isFormatSupported
* Signature: (Lcom/portaudio/StreamParameters;Lcom/portaudio/StreamParameters;I)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_isFormatSupported
(JNIEnv *env, jclass clazz, jobject inParams, jobject outParams, jint sampleRate )
{
PaStreamParameters myInParams, *paInParams;
PaStreamParameters myOutParams, *paOutParams;
paInParams = jpa_FillStreamParameters( env, inParams, &myInParams );
paOutParams = jpa_FillStreamParameters( env, outParams, &myOutParams );
return Pa_IsFormatSupported( paInParams, paOutParams, sampleRate );
}
/*
* Class: com_portaudio_PortAudio
* Method: openStream
* Signature: (Lcom/portaudio/BlockingStream;Lcom/portaudio/StreamParameters;Lcom/portaudio/StreamParameters;III)I
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_openStream
(JNIEnv *env, jclass clazz, jobject blockingStream, jobject inParams, jobject outParams, jint sampleRate, jint framesPerBuffer, jint flags )
{
int err;
PaStreamParameters myInParams, *paInParams;
PaStreamParameters myOutParams, *paOutParams;
PaStream *stream;
paInParams = jpa_FillStreamParameters( env, inParams, &myInParams );
paOutParams = jpa_FillStreamParameters( env, outParams, &myOutParams );
err = Pa_OpenStream( &stream, paInParams, paOutParams, sampleRate, framesPerBuffer, flags, NULL, NULL );
if( jpa_CheckError( env, err ) == 0 )
{
jclass cls = (*env)->GetObjectClass(env, blockingStream);
jpa_SetLongField( env, cls, blockingStream, "nativeStream", (jlong) stream );
if( paInParams != NULL )
{
jpa_SetIntField( env, cls, blockingStream, "inputFormat", paInParams->sampleFormat );
}
if( paOutParams != NULL )
{
jpa_SetIntField( env, cls, blockingStream, "outputFormat", paOutParams->sampleFormat );
}
}
}

View file

@ -1,183 +0,0 @@
/* DO NOT EDIT THIS FILE - it is machine generated */
#if defined(__APPLE__)
#include <JavaVM/jni.h>
#else
#include <jni.h>
#endif
/* Header for class com_portaudio_PortAudio */
#ifndef _Included_com_portaudio_PortAudio
#define _Included_com_portaudio_PortAudio
#ifdef __cplusplus
extern "C" {
#endif
#undef com_portaudio_PortAudio_FLAG_CLIP_OFF
#define com_portaudio_PortAudio_FLAG_CLIP_OFF 1L
#undef com_portaudio_PortAudio_FLAG_DITHER_OFF
#define com_portaudio_PortAudio_FLAG_DITHER_OFF 2L
#undef com_portaudio_PortAudio_FORMAT_FLOAT_32
#define com_portaudio_PortAudio_FORMAT_FLOAT_32 1L
#undef com_portaudio_PortAudio_FORMAT_INT_32
#define com_portaudio_PortAudio_FORMAT_INT_32 2L
#undef com_portaudio_PortAudio_FORMAT_INT_24
#define com_portaudio_PortAudio_FORMAT_INT_24 4L
#undef com_portaudio_PortAudio_FORMAT_INT_16
#define com_portaudio_PortAudio_FORMAT_INT_16 8L
#undef com_portaudio_PortAudio_FORMAT_INT_8
#define com_portaudio_PortAudio_FORMAT_INT_8 16L
#undef com_portaudio_PortAudio_FORMAT_UINT_8
#define com_portaudio_PortAudio_FORMAT_UINT_8 32L
#undef com_portaudio_PortAudio_HOST_API_TYPE_DEV
#define com_portaudio_PortAudio_HOST_API_TYPE_DEV 0L
#undef com_portaudio_PortAudio_HOST_API_TYPE_DIRECTSOUND
#define com_portaudio_PortAudio_HOST_API_TYPE_DIRECTSOUND 1L
#undef com_portaudio_PortAudio_HOST_API_TYPE_MME
#define com_portaudio_PortAudio_HOST_API_TYPE_MME 2L
#undef com_portaudio_PortAudio_HOST_API_TYPE_ASIO
#define com_portaudio_PortAudio_HOST_API_TYPE_ASIO 3L
#undef com_portaudio_PortAudio_HOST_API_TYPE_SOUNDMANAGER
#define com_portaudio_PortAudio_HOST_API_TYPE_SOUNDMANAGER 4L
#undef com_portaudio_PortAudio_HOST_API_TYPE_COREAUDIO
#define com_portaudio_PortAudio_HOST_API_TYPE_COREAUDIO 5L
#undef com_portaudio_PortAudio_HOST_API_TYPE_OSS
#define com_portaudio_PortAudio_HOST_API_TYPE_OSS 7L
#undef com_portaudio_PortAudio_HOST_API_TYPE_ALSA
#define com_portaudio_PortAudio_HOST_API_TYPE_ALSA 8L
#undef com_portaudio_PortAudio_HOST_API_TYPE_AL
#define com_portaudio_PortAudio_HOST_API_TYPE_AL 9L
#undef com_portaudio_PortAudio_HOST_API_TYPE_BEOS
#define com_portaudio_PortAudio_HOST_API_TYPE_BEOS 10L
#undef com_portaudio_PortAudio_HOST_API_TYPE_WDMKS
#define com_portaudio_PortAudio_HOST_API_TYPE_WDMKS 11L
#undef com_portaudio_PortAudio_HOST_API_TYPE_JACK
#define com_portaudio_PortAudio_HOST_API_TYPE_JACK 12L
#undef com_portaudio_PortAudio_HOST_API_TYPE_WASAPI
#define com_portaudio_PortAudio_HOST_API_TYPE_WASAPI 13L
#undef com_portaudio_PortAudio_HOST_API_TYPE_AUDIOSCIENCE
#define com_portaudio_PortAudio_HOST_API_TYPE_AUDIOSCIENCE 14L
#undef com_portaudio_PortAudio_HOST_API_TYPE_COUNT
#define com_portaudio_PortAudio_HOST_API_TYPE_COUNT 15L
/*
* Class: com_portaudio_PortAudio
* Method: getVersion
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getVersion
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getVersionText
* Signature: ()Ljava/lang/String;
*/
JNIEXPORT jstring JNICALL Java_com_portaudio_PortAudio_getVersionText
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: initialize
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_initialize
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: terminate
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_terminate
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getDeviceCount
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDeviceCount
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getDeviceInfo
* Signature: (ILcom/portaudio/DeviceInfo;)V
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_getDeviceInfo
(JNIEnv *, jclass, jint, jobject);
/*
* Class: com_portaudio_PortAudio
* Method: getHostApiCount
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getHostApiCount
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getHostApiInfo
* Signature: (ILcom/portaudio/HostApiInfo;)V
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_getHostApiInfo
(JNIEnv *, jclass, jint, jobject);
/*
* Class: com_portaudio_PortAudio
* Method: hostApiTypeIdToHostApiIndex
* Signature: (I)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_hostApiTypeIdToHostApiIndex
(JNIEnv *, jclass, jint);
/*
* Class: com_portaudio_PortAudio
* Method: hostApiDeviceIndexToDeviceIndex
* Signature: (II)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_hostApiDeviceIndexToDeviceIndex
(JNIEnv *, jclass, jint, jint);
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultInputDevice
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultInputDevice
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultOutputDevice
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultOutputDevice
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: getDefaultHostApi
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_getDefaultHostApi
(JNIEnv *, jclass);
/*
* Class: com_portaudio_PortAudio
* Method: isFormatSupported
* Signature: (Lcom/portaudio/StreamParameters;Lcom/portaudio/StreamParameters;I)I
*/
JNIEXPORT jint JNICALL Java_com_portaudio_PortAudio_isFormatSupported
(JNIEnv *, jclass, jobject, jobject, jint);
/*
* Class: com_portaudio_PortAudio
* Method: openStream
* Signature: (Lcom/portaudio/BlockingStream;Lcom/portaudio/StreamParameters;Lcom/portaudio/StreamParameters;III)V
*/
JNIEXPORT void JNICALL Java_com_portaudio_PortAudio_openStream
(JNIEnv *, jclass, jobject, jobject, jobject, jint, jint, jint);
#ifdef __cplusplus
}
#endif
#endif

Some files were not shown because too many files have changed in this diff Show more