Merge pull request #1870 from Cxbx-Reloaded/develop
Move develop Branch into master Branch
This commit is contained in:
commit
2a23634c77
|
@ -0,0 +1,46 @@
|
|||
# Documentation is here: https://www.appveyor.com/docs/appveyor-yml/
|
||||
# You can validate ymls here: https://ci.appveyor.com/tools/validate-yaml
|
||||
|
||||
skip_commits:
|
||||
files:
|
||||
- doc/*
|
||||
- doc/*/*
|
||||
- .github/*
|
||||
- .github/*/*
|
||||
- .azure-pipelines.yml
|
||||
- .travis.yml
|
||||
- CONTRIBUTORS
|
||||
- COPYING
|
||||
- README.md
|
||||
- gen-msvc-project.bat
|
||||
- setup.bat
|
||||
|
||||
init:
|
||||
- ps: Update-AppveyorBuild -Version "$env:appveyor_repo_commit"
|
||||
|
||||
image: # If this is modified, please also update the build script
|
||||
- Visual Studio 2019
|
||||
|
||||
configuration: # The builds will be run in this order
|
||||
- Release
|
||||
- Debug
|
||||
|
||||
before_build:
|
||||
- |-
|
||||
git submodule update --init --recursive
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G "Visual Studio 16 2019" -A Win32
|
||||
|
||||
build_script:
|
||||
- cmake --build . --config %configuration%
|
||||
|
||||
on_success:
|
||||
- ps: |-
|
||||
If ($env:configuration -eq 'Release') {
|
||||
cd bin\$env:configuration
|
||||
7z u "$env:configuration.zip" ..\..\..\COPYING ..\..\..\README.md
|
||||
7z u "$env:configuration.zip" Cxbx.exe glew32.dll subhook.dll SDL2.dll
|
||||
7z u "$env:configuration.zip" cxbxr-debugger.exe capstone.dll cs_x86.dll
|
||||
Get-ChildItem .\*.zip | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
|
||||
}
|
|
@ -0,0 +1,82 @@
|
|||
trigger:
|
||||
branches:
|
||||
include:
|
||||
- '*'
|
||||
paths:
|
||||
exclude:
|
||||
- doc/*
|
||||
- doc/*/*
|
||||
- .github/*
|
||||
- .github/*/*
|
||||
- .appveyor.yml
|
||||
- .travis.yml
|
||||
- CONTRIBUTORS
|
||||
- COPYING
|
||||
- README.md
|
||||
- gen-msvc-project.bat
|
||||
- setup.bat
|
||||
|
||||
pr:
|
||||
branches:
|
||||
include:
|
||||
- '*'
|
||||
paths:
|
||||
exclude:
|
||||
- doc/*
|
||||
- doc/*/*
|
||||
- .github/*
|
||||
- .github/*/*
|
||||
- .appveyor.yml
|
||||
- .travis.yml
|
||||
- CONTRIBUTORS
|
||||
- COPYING
|
||||
- README.md
|
||||
- gen-msvc-project.bat
|
||||
- setup.bat
|
||||
|
||||
jobs:
|
||||
- job:
|
||||
pool:
|
||||
vmImage: windows-latest
|
||||
strategy:
|
||||
matrix:
|
||||
Release:
|
||||
configuration: Release
|
||||
Debug:
|
||||
configuration: Debug
|
||||
|
||||
steps:
|
||||
- checkout: self
|
||||
submodules: recursive
|
||||
|
||||
- script: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. -G "Visual Studio 16 2019" -A Win32
|
||||
displayName: 'Before build'
|
||||
|
||||
- script: cmake --build . --config %configuration%
|
||||
workingDirectory: build
|
||||
displayName: 'Build'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy files to $(Build.ArtifactStagingDirectory)'
|
||||
condition: and(succeeded(), eq(variables['Agent.JobName'], 'Release'))
|
||||
inputs:
|
||||
Contents: |
|
||||
COPYING
|
||||
README.md
|
||||
build\bin\$(configuration)\Cxbx.exe
|
||||
build\bin\$(configuration)\glew32.dll
|
||||
build\bin\$(configuration)\subhook.dll
|
||||
build\bin\$(configuration)\SDL2.dll
|
||||
build\bin\$(configuration)\cxbxr-debugger.exe
|
||||
build\bin\$(configuration)\capstone.dll
|
||||
build\bin\$(configuration)\cx_x86.dll
|
||||
TargetFolder: '$(Build.ArtifactStagingDirectory)'
|
||||
flattenFolders: true
|
||||
|
||||
- publish: $(Build.ArtifactStagingDirectory)
|
||||
artifact: $(configuration)
|
||||
condition: and(succeeded(), eq(variables['Agent.JobName'], 'Release'))
|
||||
displayName: Publish artifact(s)
|
|
@ -17,3 +17,6 @@
|
|||
*.PDF diff=astextplain
|
||||
*.rtf diff=astextplain
|
||||
*.RTF diff=astextplain
|
||||
|
||||
[Cc][Mm]ake[Ll]ists.txt text=lf
|
||||
*.bat text=lf
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Cxbx-Reloaded Discord server
|
||||
url: https://discord.gg/26Xjx23
|
||||
about: You can ask questions here.
|
|
@ -1,5 +1,14 @@
|
|||
---
|
||||
name: Issue template
|
||||
about: Issue template.
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
Questions can be asked on Gitter https://gitter.im/Cxbx-Reloaded/Lobby or Discord https://discord.gg/26Xjx23
|
||||
Questions can be asked on Discord: https://discord.gg/26Xjx23
|
||||
If this is an issue specifically related to one game, please report it at https://github.com/Cxbx-Reloaded/game-compatibility
|
||||
Any emulation/general issues like crashes when a controller is connected, or regressions across several titles can be reported here.
|
||||
-->
|
|
@ -0,0 +1,119 @@
|
|||
name: GitHub CI
|
||||
|
||||
on:
|
||||
push:
|
||||
paths-ignore:
|
||||
- '.github/CONTRIBUTING.md'
|
||||
- '.github/FUNDING.md'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- 'doc/*'
|
||||
- 'doc/*/*'
|
||||
- '.appveyor.yml'
|
||||
- '.azure-pipelines.yml'
|
||||
- '.travis.yml'
|
||||
- 'gen-msvc-project.bat'
|
||||
- 'setup.bat'
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '.github/CONTRIBUTING.md'
|
||||
- '.github/FUNDING.md'
|
||||
- '.github/ISSUE_TEMPLATE/*'
|
||||
- 'doc/*'
|
||||
- 'doc/*/*'
|
||||
- '.appveyor.yml'
|
||||
- '.azure-pipelines.yml'
|
||||
- '.travis.yml'
|
||||
- 'gen-msvc-project.bat'
|
||||
- 'setup.bat'
|
||||
|
||||
jobs:
|
||||
build-windows:
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
configuration: [Release, Debug]
|
||||
vsver: [VS2019, VS2017]
|
||||
include:
|
||||
- vsver: VS2019
|
||||
os: windows-latest
|
||||
- vsver: VS2017 # TODO: Remove VS2017 once WINE supports VS2019 runtimes;
|
||||
os: windows-2016 # https://github.com/actions/virtual-environments/issues/68#issuecomment-602652021
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: Generate cmake files
|
||||
run: |
|
||||
mkdir build && cd build
|
||||
cmake .. -A Win32
|
||||
- name: Build
|
||||
working-directory: build
|
||||
run: cmake --build . --config ${{ matrix.configuration }} -j $env:NUMBER_OF_PROCESSORS
|
||||
- name: Prepare artifacts
|
||||
if: matrix.configuration == 'Release'
|
||||
run: |
|
||||
robocopy . artifacts COPYING README.md /r:0 /w:0
|
||||
robocopy build\bin\${{ matrix.configuration }} artifacts `
|
||||
Cxbx.exe glew32.dll subhook.dll SDL2.dll `
|
||||
cxbxr-debugger.exe capstone.dll cs_x86.dll /r:0 /w:0
|
||||
If ($LastExitCode -le 7) { $LastExitCode = 0 }
|
||||
- uses: actions/upload-artifact@v1
|
||||
if: matrix.configuration == 'Release'
|
||||
with:
|
||||
name: CxbxReloaded-${{ matrix.configuration }}-${{ matrix.vsver }}
|
||||
path: artifacts
|
||||
|
||||
release:
|
||||
if: | # TODO: Remove develop once rebased
|
||||
github.event.action != 'pull_request' &&
|
||||
(github.ref == 'refs/heads/develop' ||
|
||||
github.ref == 'refs/heads/master') &&
|
||||
github.repository == 'Cxbx-Reloaded/Cxbx-Reloaded'
|
||||
needs: build-windows
|
||||
env:
|
||||
artifact_1: CxbxReloaded-Release-VS2019
|
||||
artifact_2: CxbxReloaded-Release-VS2017
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Download artifacts (1)
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: ${{ env.artifact_1 }}
|
||||
- name: Download artifacts (2)
|
||||
uses: actions/download-artifact@v1
|
||||
with:
|
||||
name: ${{ env.artifact_2 }}
|
||||
- name: Prepare artifacts for release
|
||||
run: | # download-artifact doesn't download a zip, so rezip it
|
||||
echo "::set-env name=short_commit_sha::$(git rev-parse --short HEAD)"
|
||||
7z a -mx1 "$env:artifact_1.zip" ".\$env:artifact_1\*"
|
||||
7z a -mx1 "$env:artifact_2.zip" ".\$env:artifact_2\*"
|
||||
- name: Create Release
|
||||
id: create_release
|
||||
uses: actions/create-release@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: CI-${{ env.short_commit_sha }}
|
||||
release_name: CI-${{ env.short_commit_sha }}
|
||||
prerelease: true
|
||||
- name: Upload Release Asset (1)
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ${{ env.artifact_1 }}.zip
|
||||
asset_name: ${{ env.artifact_1 }}.zip
|
||||
asset_content_type: application/zip
|
||||
- name: Upload Release Asset (2)
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ${{ env.artifact_2 }}.zip
|
||||
asset_name: ${{ env.artifact_2 }}.zip
|
||||
asset_content_type: application/zip
|
|
@ -1,115 +1,16 @@
|
|||
# Compiled Object files
|
||||
*.slo
|
||||
*.lo
|
||||
*.o
|
||||
# Build folders
|
||||
[Bb]uild/
|
||||
[Bb]uild-*/
|
||||
|
||||
# Compiled Dynamic libraries
|
||||
*.so
|
||||
*.dylib
|
||||
|
||||
# Compiled Static libraries
|
||||
*.lai
|
||||
*.la
|
||||
*.a
|
||||
|
||||
#OS junk files
|
||||
[Tt]humbs.db
|
||||
*.DS_Store
|
||||
|
||||
#Documentation output
|
||||
doc/doxygen/html
|
||||
|
||||
#Export
|
||||
export
|
||||
|
||||
#Visual Studio files
|
||||
*.[Oo]bj
|
||||
*.user
|
||||
*.aps
|
||||
*.pch
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
*_i.c
|
||||
*_p.c
|
||||
*.ncb
|
||||
*.suo
|
||||
*.tlb
|
||||
*.tlh
|
||||
*.bak
|
||||
*.ilk
|
||||
*.log
|
||||
*.sbr
|
||||
*.sdf
|
||||
*.opensdf
|
||||
*.unsuccessfulbuild
|
||||
obj/
|
||||
[Bb]in
|
||||
build/win32/[Dd]ebug*/
|
||||
build/win32/[Rr]elease*/
|
||||
build/win32/Win32/
|
||||
build/win32/Cxbx.ChildProcessDbgSettings
|
||||
Build/win32/ipch/
|
||||
Ankh.NoLoad
|
||||
*.ChildProcessDbgSettings
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!*.[Cc]ache/
|
||||
|
||||
# Visual Studio 2015/2017 cache files
|
||||
# Visual Studio Cache
|
||||
.vs/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
#MonoDevelop
|
||||
*.pidb
|
||||
*.userprefs
|
||||
|
||||
#Tooling
|
||||
_ReSharper*/
|
||||
*.resharper
|
||||
[Tt]est[Rr]esult*
|
||||
*.sass-cache
|
||||
|
||||
#Subversion files
|
||||
.svn
|
||||
|
||||
# Office Temp Files
|
||||
~$*
|
||||
|
||||
#NuGet
|
||||
packages/
|
||||
|
||||
#ncrunch
|
||||
*ncrunch*
|
||||
*crunch*.local.xml
|
||||
|
||||
# visual studio database projects
|
||||
*.dbmdl
|
||||
# Generated files
|
||||
*.aps
|
||||
|
||||
#Test files
|
||||
*.testsettings
|
||||
src/Version.h
|
||||
*.opendb
|
||||
*.db
|
||||
src/[Vv]ersion.h
|
||||
*.xbe
|
||||
*.ipch
|
||||
*.db-shm
|
||||
*.db-wal
|
||||
|
||||
# Last known git hash
|
||||
LAST_GIT_VERSION
|
||||
|
|
|
@ -1,12 +1,23 @@
|
|||
[submodule "import/subhook"]
|
||||
path = import/subhook
|
||||
url = https://github.com/Cxbx-Reloaded/subhook
|
||||
url = https://github.com/Zeex/subhook.git
|
||||
[submodule "import/cs_x86"]
|
||||
path = import/cs_x86
|
||||
url = https://github.com/x1nixmzeng/cs_x86
|
||||
[submodule "import/d3d8to9"]
|
||||
path = import/d3d8to9
|
||||
url = https://github.com/Cxbx-Reloaded/d3d8to9
|
||||
[submodule "import/XbSymbolDatabase"]
|
||||
path = import/XbSymbolDatabase
|
||||
url = https://github.com/Cxbx-Reloaded/XbSymbolDatabase.git
|
||||
url = https://github.com/Cxbx-Reloaded/XbSymbolDatabase
|
||||
[submodule "import/simpleini"]
|
||||
path = import/simpleini
|
||||
url = https://github.com/brofield/simpleini
|
||||
[submodule "import/libtommath"]
|
||||
path = import/libtommath
|
||||
url = https://github.com/libtom/libtommath
|
||||
branch = master
|
||||
[submodule "import/libtomcrypt"]
|
||||
path = import/libtomcrypt
|
||||
url = https://github.com/libtom/libtomcrypt
|
||||
branch = master
|
||||
[submodule "import/SDL2"]
|
||||
path = import/SDL2
|
||||
url = https://github.com/SDL-mirror/SDL
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
language: cpp
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- os: windows
|
||||
env: configuration=Debug
|
||||
- os: windows
|
||||
env: configuration=Release
|
||||
|
||||
before_script:
|
||||
- if [ $TRAVIS_OS_NAME == 'windows' ]; then
|
||||
mkdir build;
|
||||
cd build;
|
||||
cmake .. -G "Visual Studio 15 2017" -A Win32;
|
||||
fi
|
||||
|
||||
script:
|
||||
- if [ $TRAVIS_OS_NAME == 'windows' ]; then
|
||||
cmake --build . --config $configuration;
|
||||
fi
|
|
@ -0,0 +1,400 @@
|
|||
cmake_minimum_required (VERSION 3.8)
|
||||
|
||||
project(Cxbx-Reloaded)
|
||||
|
||||
# Allow devs to disable regeneration option.
|
||||
# Suppress extra stuff from generated solution
|
||||
#set(CMAKE_SUPPRESS_REGENERATION true)
|
||||
|
||||
# Output all binary files into one folder
|
||||
if(NOT DEFINED CMAKE_RUNTIME_OUTPUT_DIRECTORY)
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${Cxbx-Reloaded_BINARY_DIR}/bin")
|
||||
endif()
|
||||
|
||||
set(SUBHOOK_TESTS OFF)
|
||||
set(SUBHOOK_INSTALL OFF)
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/import/subhook")
|
||||
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/import/XbSymbolDatabase")
|
||||
|
||||
# Not require since only include a header file
|
||||
#add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/import/simpleini")
|
||||
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/import/SDL2")
|
||||
|
||||
if(${CMAKE_GENERATOR} MATCHES "Visual Studio ([^9]|[9][0-9])")
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/import/cs_x86")
|
||||
endif()
|
||||
|
||||
# Cxbx-Reloaded projects
|
||||
set(CXBXR_ROOT_DIR ${CMAKE_CURRENT_LIST_DIR})
|
||||
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/projects/libtom")
|
||||
|
||||
find_package(Git)
|
||||
|
||||
if(Git_FOUND)
|
||||
message("Git found: ${GIT_EXECUTABLE}")
|
||||
|
||||
execute_process(
|
||||
COMMAND git describe --always --tags --first-parent
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
OUTPUT_VARIABLE _GIT_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
|
||||
message("Git version: " ${_GIT_VERSION})
|
||||
else()
|
||||
set(_GIT_VERSION "unknown")
|
||||
endif()
|
||||
|
||||
# Appears to update whenever define has changed.
|
||||
configure_file(
|
||||
"${CXBXR_ROOT_DIR}/src/version.h.in" "${CXBXR_ROOT_DIR}/src/version.h" @ONLY
|
||||
NEWLINE_STYLE LF
|
||||
)
|
||||
|
||||
#add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/projects/vsbc")
|
||||
|
||||
# Split the files into group for which project is likely
|
||||
# going to be used for both header and source files.
|
||||
# Then move only specific project files into their
|
||||
# cmakelist file in finalize stage.
|
||||
# Any of files being shared between two projects need to
|
||||
# leave in parent cmakelist (here) for better sync across
|
||||
# child projects.
|
||||
|
||||
# Common (GUI and Emulator)
|
||||
file (GLOB CXBXR_HEADER_COMMON
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuDes.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuRsa.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuSha.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/LibRc4.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/CxbxDebugger.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/EmuEEPROM.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Error.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/DInputKeyboardCodes.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/DInputKeyboardMouse.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/layout_xbox_controller.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputManager.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/SdlJoystick.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/XInputPad.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/IPCHybrid.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Logging.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/ReservedMemory.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Settings.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Timer.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/CPUID.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/crc32c.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/CxbxUtil.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/strConverter.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/AlignPosfix1.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/AlignPrefix1.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/EmuShared.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/Mutex.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/Threads.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbdm/CxbxXbdm.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbe/Xbe.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbe/XbePrinter.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xdvdfs-tools/buffered_io.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xdvdfs-tools/xdvdfs.h"
|
||||
"${CXBXR_ROOT_DIR}/src/Cxbx.h"
|
||||
"${CXBXR_ROOT_DIR}/src/CxbxVersion.h"
|
||||
"${CXBXR_ROOT_DIR}/src/version.h"
|
||||
)
|
||||
|
||||
# GUI v1
|
||||
file (GLOB CXBXR_HEADER_GUIv1
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/Button.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/EmuDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputWindow.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DbgConsole.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgAbout.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgAudioConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgInputConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgDukeControllerConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgEepromConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgLoggingConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgNetworkConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgVideoConfig.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/ResCxbx.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/Wnd.h"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/WndMain.h"
|
||||
)
|
||||
|
||||
# Emulator (module)
|
||||
file (GLOB CXBXR_HEADER_EMU
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/gloffscreen/glextensions.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/gloffscreen/gloffscreen.h"
|
||||
"${CXBXR_ROOT_DIR}/src/common/XADPCM.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/Direct3D9.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/VertexShader.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/VertexShaderSource.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/WalkIndexBuffer.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/ResourceTracker.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbConvert.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbD3D8Logging.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbD3D8Types.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbPixelShader.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbPushBuffer.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbState.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbVertexBuffer.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbVertexShader.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/common/windows/WFXformat.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSound.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundGlobal.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundInline.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundLogging.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DSStream_PacketManager.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/XbDSoundLogging.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/XbDSoundTypes.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/Intercept.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/Patches.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XACTENG/XactEng.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XAPI/Xapi.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XAPI/XapiCxbxr.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XGRAPHIC/XGraphic.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XONLINE/XOnline.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/common/strings.hpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlAvModes.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlKe.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlKi.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlLogging.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/init/CxbxKrnl.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/PhysicalMemory.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/PoolManager.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/VMManager.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/Emu.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuFile.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuFS.h"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuNtDll.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/ADM1032Device.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/EEPROMDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/EmuNVNet.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/LED.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/MCPXDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/PCIBus.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/PCIDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMBus.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMCDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/Hub.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/OHCI.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/UsbCommon.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/USBDevice.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/XidGamepad.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_debug.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_int.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_psh.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_regs.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_shaders.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_shaders_common.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_vsh.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/qemu-thread.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/queue.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/swizzle.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/vga.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/x86/EmuX86.h"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/Xbox.h"
|
||||
)
|
||||
|
||||
# Common (GUI and Emulator)
|
||||
file (GLOB CXBXR_SOURCE_COMMON
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuDes.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuRsa.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/EmuSha.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/crypto/LibRc4.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/CxbxDebugger.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/EmuEEPROM.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Error.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/DInputKeyboardMouse.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputManager.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/SdlJoystick.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/XInputPad.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Logging.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Settings.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/Timer.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/crc32c.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/CxbxUtil.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/hasher.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/EmuShared.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/InlineFunc.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/IPCWindows.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/Mutex.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/win32/Threads.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbdm/CxbxXbdm.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbe/Xbe.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xbe/XbePrinter.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xdvdfs-tools/buffered_io.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/xdvdfs-tools/xdvdfs.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/CxbxVersion.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DbgConsole.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/HighPerformanceGraphicsEnabler.c"
|
||||
)
|
||||
|
||||
# GUI v1
|
||||
file (GLOB CXBXR_SOURCE_GUIv1
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/Button.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/EmuDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/input/InputWindow.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgAbout.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgAudioConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgInputConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgDukeControllerConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgEepromConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgLoggingConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgNetworkConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/DlgVideoConfig.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/WinMain.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/Wnd.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/gui/WndMain.cpp"
|
||||
)
|
||||
|
||||
# Emulator (module)
|
||||
# TODO: Merge CXBXR_KRNL_CPP into CXBXR_SOURCE_EMU once cxbx project is removed.
|
||||
file (GLOB CXBXR_KRNL_CPP
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/init/CxbxKrnl.cpp"
|
||||
)
|
||||
file (GLOB CXBXR_SOURCE_EMU
|
||||
"${CXBXR_KRNL_CPP}"
|
||||
"${CXBXR_ROOT_DIR}/HighPerformanceGraphicsEnabler.c"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/gloffscreen/glextensions.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/gloffscreen/gloffscreen_common.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/common/util/gloffscreen/gloffscreen_wgl.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/Direct3D9.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/RenderStates.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/TextureStates.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/VertexShader.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/VertexShaderSource.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/Direct3D9/WalkIndexBuffer.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/ResourceTracker.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbConvert.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbD3D8Logging.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbPixelShader.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbPushBuffer.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbVertexBuffer.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/D3D8/XbVertexShader.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSound.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSound3DCalculator.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundBuffer.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundGlobal.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundLogging.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DirectSoundStream.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/DSStream_PacketManager.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/DirectSound/XFileMediaObject.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/DSOUND/XbDSoundLogging.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/Intercept.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/Patches.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XACTENG/XactEng.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XAPI/Xapi.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/hle/XGRAPHIC/XGraphic.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnl.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlAv.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlDbg.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlEx.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlFs.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlHal.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlIo.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlKd.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlKe.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlKi.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlLogging.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlMm.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlNt.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlOb.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlPhy.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlPs.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlRtl.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlXbox.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlXc.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/EmuKrnlXe.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/exports/KernelThunk.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/PhysicalMemory.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/PoolManager.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/memory-manager/VMManager.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/Emu.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuFile.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuFS.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/core/kernel/support/EmuNtDll.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/ADM1032Device.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/EEPROMDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/EmuNVNet.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/MCPXDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/PCIBus.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/PCIDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMBus.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMCDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/SMDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/Hub.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/OHCI.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/USBDevice.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/usb/XidGamepad.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_DEBUG.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PBUS.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PCOUNTER.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PCRTC.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PFB.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PFIFO.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PGRAPH.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PMC.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRAMDAC.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRAMIN.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRMA.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRMCIO.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRMDIO.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRMFB.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PRMVIO.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PSTRAPS.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PTIMER.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PTV.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PVIDEO.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_PVPE.cpp"
|
||||
#"${CXBXR_ROOT_DIR}/src/devices/video/EmuNV2A_USER.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_debug.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_psh.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_shaders.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/nv2a_vsh.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/qemu-thread-win32.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/video/swizzle.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/x86/EmuX86.cpp"
|
||||
"${CXBXR_ROOT_DIR}/src/devices/Xbox.cpp"
|
||||
)
|
||||
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/projects/cxbx")
|
||||
|
||||
# Issues with compile (the same with develop branch) and
|
||||
# for some reason did not put the files into virtual folder?
|
||||
# Might need to put the list in the source folder for workaround fix.
|
||||
if(${CMAKE_GENERATOR} MATCHES "Visual Studio ([^9]|[9][0-9])")
|
||||
#add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/projects/debugger")
|
||||
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/src/CxbxDebugger")
|
||||
endif()
|
||||
|
||||
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
||||
# Configure startup project
|
||||
set_property(DIRECTORY "${CMAKE_CURRENT_LIST_DIR}" PROPERTY VS_STARTUP_PROJECT cxbx)
|
||||
endif()
|
||||
|
||||
if(${CMAKE_GENERATOR} MATCHES "Visual Studio ([^9]|[9][0-9])")
|
||||
# Refuse to exclude due to install is not set to optional
|
||||
#set_target_properties(cstool
|
||||
# PROPERTIES EXCLUDE_FROM_ALL TRUE
|
||||
#)
|
||||
set_target_properties(Tests_cs_x86
|
||||
PROPERTIES EXCLUDE_FROM_ALL TRUE
|
||||
)
|
||||
|
||||
# Cxbx-Debugger project with third-party libraries
|
||||
set_target_properties(cxbxr-debugger cs_x86 Tests_cs_x86 capstone-shared cstool
|
||||
PROPERTIES FOLDER Cxbx-Reloaded/debugger
|
||||
)
|
||||
endif()
|
||||
|
||||
# Cxbx-Reloaded project with third-party libraries
|
||||
set_target_properties(cxbx subhook XbSymbolDatabase libtommath libtomcrypt
|
||||
PROPERTIES FOLDER Cxbx-Reloaded
|
||||
)
|
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
"configurations": [
|
||||
{
|
||||
"name": "x86-Release",
|
||||
"configurationType": "Release",
|
||||
"inheritEnvironments": [
|
||||
"msvc_x86"
|
||||
],
|
||||
"buildRoot": "${workspaceRoot}\\build\\${name}",
|
||||
"installRoot": "${workspaceRoot}\\bin\\Release",
|
||||
"cmakeCommandArgs": "",
|
||||
"buildCommandArgs": "/v:m",
|
||||
"ctestCommandArgs": ""
|
||||
},
|
||||
{
|
||||
"name": "x86-Debug",
|
||||
"configurationType": "Debug",
|
||||
"inheritEnvironments": [
|
||||
"msvc_x86"
|
||||
],
|
||||
"buildRoot": "${workspaceRoot}\\build\\${name}",
|
||||
"installRoot": "${workspaceRoot}\\bin\\Debug",
|
||||
"cmakeCommandArgs": "",
|
||||
"buildCommandArgs": "/v:m",
|
||||
"ctestCommandArgs": ""
|
||||
}
|
||||
]
|
||||
}
|
103
CONTRIBUTORS
103
CONTRIBUTORS
|
@ -1,19 +1,65 @@
|
|||
Developers:
|
||||
Luke Usher [SoullessSentinel]
|
||||
PatrickvL
|
||||
StrikerX3
|
||||
blueshogun96
|
||||
donwayo
|
||||
hrydgard
|
||||
jagotu
|
||||
jarupxx
|
||||
phire
|
||||
x1nixmzeng
|
||||
RadWolfie
|
||||
Luca D'Amico (Luca1991/Luca91)
|
||||
ergo720
|
||||
Contributors
|
||||
------------
|
||||
|
||||
Cxbx-Reloaded has a rich history, with lots of contributors in it's various stages of life.
|
||||
Cxbx-Reloaded was initiated by Luke Usher, as a fork of the then-dormant Cxbx, and inspired by Dxbx.
|
||||
Cxbx was initiated by Caustik. Dxbx was initiated by shadowtj.
|
||||
|
||||
The following contributors are grouped per project and listed in alphabetical order,
|
||||
based on sources like https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/graphs/contributors ,
|
||||
http://www.caustik.com/cxbx/about.htm , http://emulation.gametechwiki.com/index.php/Cxbx ,
|
||||
and https://github.com/PatrickvL/Dxbx/graphs/contributors .
|
||||
|
||||
|
||||
Cxbx-Reloaded Current Development Team:
|
||||
|
||||
ergo720
|
||||
LukeUsher (Luke Usher) [SoullessSentinel]
|
||||
NZJenkins
|
||||
PatrickvL (Patrick van Logchem)
|
||||
RadWolfie
|
||||
|
||||
|
||||
Cxbx-Reloaded All-Time Contributors:
|
||||
|
||||
aav7fl (Kyle Niewiada)
|
||||
anita999
|
||||
BenNottelling (Benjamin Aerni)
|
||||
blueshogun96
|
||||
CakeLancelot
|
||||
darrena092 (Darren Anderson)
|
||||
DiscoStarslayer (Darren Thompson)
|
||||
donwayo (Wayo)
|
||||
Ernegien (Mike Davis)
|
||||
ergo720
|
||||
faha223 (Fred Hallock)
|
||||
Fisherman166
|
||||
gandalfthewhite19890404
|
||||
gellis713
|
||||
ggKismet
|
||||
GXTX (wutno)
|
||||
hrydgard (Henrik Hydgard)
|
||||
jackchentwkh
|
||||
jagotu (JaGoTu)
|
||||
jarupxx
|
||||
JayFoxRox (Jannik Vogel)
|
||||
literalmente-game
|
||||
Luca1991 (Luca D'Amico) [Luca91]
|
||||
LukeUsher (Luke Usher) [SoullessSentinel]
|
||||
Margen67
|
||||
NZJenkins
|
||||
PatrickvL (Patrick van Logchem)
|
||||
phire (Scott Mansell)
|
||||
RadWolfie
|
||||
revel8n
|
||||
StrikerX3 (Ivan Roberto de Oliveira)
|
||||
TotalCaesar659
|
||||
Voxel9 (Voxel)
|
||||
x1nixmzeng
|
||||
|
||||
|
||||
Cxbx-Reloaded Supporters:
|
||||
|
||||
Supporters:
|
||||
Cedric Wilson
|
||||
Cisco Martinez
|
||||
Cody Dale Barton
|
||||
|
@ -33,5 +79,30 @@ Taylor Stock
|
|||
Yldri
|
||||
Yuri Kunde Schlesner
|
||||
|
||||
Special Thanks:
|
||||
|
||||
Cxbx-Reloaded Special Thanks:
|
||||
|
||||
All contributors to the original Cxbx and Dxbx projects, without which Cxbx-Reloaded would not exist.
|
||||
|
||||
|
||||
Cxbx contributors:
|
||||
|
||||
_SF_
|
||||
blueshogun96
|
||||
Caustic (Aaron Robinson)
|
||||
donwayo (Wayo)
|
||||
dstien (Daniel Stien)
|
||||
Echelon9 (Rhys Kidd)
|
||||
Kingofc
|
||||
Koitsu
|
||||
martin_sw (Martin)
|
||||
sopskrutt (Sop Skrutt)
|
||||
Zomby
|
||||
|
||||
|
||||
Dxbx contributors:
|
||||
|
||||
donwayo (Wayo)
|
||||
PatrickvL (Patrick van Logchem)
|
||||
revel8n
|
||||
shadowtj (Shadow_tj)
|
||||
|
|
61
COPYING
61
COPYING
|
@ -278,64 +278,3 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
|||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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 of the License, 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, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
||||
|
||||
|
|
112
README.md
112
README.md
|
@ -1,95 +1,105 @@
|
|||
# Cxbx-Reloaded - Original Xbox Emulator
|
||||
# Cxbx-Reloaded - Original Xbox Emulator
|
||||
[](https://img.shields.io/badge/License-GPL%20v2-blue.svg)
|
||||
[](https://ci.appveyor.com/project/SoullessSentinel/cxbx-reloaded)
|
||||
[](https://gitter.im/Cxbx-Reloaded/Lobby)
|
||||
or [Discord](https://discord.gg/26Xjx23)
|
||||
[](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/actions?query=workflow%3A%22GitHub+CI%22)
|
||||
[](https://discord.gg/26Xjx23)
|
||||
|
||||
Cxbx-Reloaded is an emulator for running Microsoft Xbox (and eventually, Chihiro) games on Microsoft Windows.
|
||||
|
||||
## System Requirements
|
||||
### Minimum
|
||||
* OS: Windows 7+ x64. 32-bit installations are not supported.
|
||||
* GPU: Anything that supports Direct3D 8 (HLE) and OpenGL 3.3 (LLE).
|
||||
* Due to poor driver support for Direct3D8 on modern cards, some users may see better results when using a wrapper, such as [D3D8to9](https://github.com/crosire/d3d8to9/)
|
||||
* OS: Windows 7+ x64. 32-bit is not supported.
|
||||
* GPU: Direct3D 9.0c with Pixel Shader Model 2.x, and Vertex Shader Model 3.0.
|
||||
|
||||
### Prerequisites
|
||||
* Visual C++ 2015 and 2017 redistributables may be required. Download them [here](https://support.microsoft.com/en-gb/help/2977003/the-latest-supported-visual-c-downloads).
|
||||
|
||||
* [32-bit (x86) Visual C++ 2019 Redistributable](https://aka.ms/vs/16/release/vc_redist.x86.exe)
|
||||
* [Npcap *(used for network emulation)*](https://nmap.org/npcap/#download)
|
||||
* Make sure to enable winpcap compatibility mode!
|
||||
|
||||
## Automated Builds
|
||||
Cxbx-Reloaded is not yet ready for general release, but the latest development builds can be downloaded using the links below:
|
||||
Cxbx-Reloaded doesn't currently have stable builds, but you can obtain pre-release builds from the Releases tab, or the links below:
|
||||
|
||||
<!-- TODO: Enable these once the first stable release happens
|
||||
### Latest Stable
|
||||
Grab these if you just want to use the emulator to play games.
|
||||
* [Latest Stable (Release Build)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Release.zip?branch=master&job=Configuration:%20Release&pr=false)
|
||||
* [Latest Stable (Debug Build)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Debug.zip?branch=master&job=Configuration:%20Debug&pr=false)
|
||||
-->
|
||||
|
||||
<!-- TODO: Remove this after v0.1 release -->
|
||||
### Upcoming Release (Alpha Status)
|
||||
Grab these builds if you wish to preview/alpha test an upcoming release
|
||||
* [Latest v0.1 Alpha Build (Release)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Release.zip?branch=v0.1&job=Configuration:%20Release&pr=false)
|
||||
* [Latest v0.1 Alpha Build (Debug)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Debug.zip?branch=v0.1&job=Configuration:%20Debug&pr=false)
|
||||
|
||||
### Development Builds
|
||||
Grab these builds if you want to test the latest and greatest features. These builds are likely to be more unstable than release builds, and are not recommended for just playing games.
|
||||
* [Latest Development Build (Release)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Release.zip?branch=develop&job=Configuration:%20Release&pr=false)
|
||||
* [Latest Development Build (Debug)](https://ci.appveyor.com/api/projects/SoullessSentinel/cxbx-reloaded/artifacts/export/Debug.zip?branch=develop&job=Configuration:%20Debug&pr=false)
|
||||
|
||||
* [Full build history](https://ci.appveyor.com/project/SoullessSentinel/cxbx-reloaded/history)
|
||||
* **[Release Builds](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/releases)**
|
||||
* **WINE users will need to use `CxbxReloaded-Release-VS2017.zip` for it to run correctly.**
|
||||
* *[Full build history](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/actions?query=workflow%3A%22GitHub+CI%22)*
|
||||
|
||||
## Compatibility
|
||||
Cxbx-Reloaded has a [compatibility list](https://github.com/Cxbx-Reloaded/game-compatibility/issues).
|
||||
Cxbx-Reloaded has a [compatibility list](https://github.com/Cxbx-Reloaded/game-compatibility#cxbx-reloaded-game-compatibility-project).
|
||||
|
||||
If you have something to report on a title, please create or update the issue for it there.
|
||||
|
||||
Please read the [Readme file](https://github.com/Cxbx-Reloaded/game-compatibility/blob/master/README.md) first!
|
||||
|
||||
## Bug Reports
|
||||
Game or software specific issues can be reported in the [compatibility list](https://github.com/Cxbx-Reloaded/game-compatibility/issues).
|
||||
Game or software specific issues can be reported in the [compatibility list](https://github.com/Cxbx-Reloaded/game-compatibility#cxbx-reloaded-game-compatibility-project).
|
||||
|
||||
For emulation issues that are not specific to any single piece of software, a bug report can be submitted at [the Cxbx-Reloaded issue tracker](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/issues).
|
||||
|
||||
Make sure bug reports contain:
|
||||
* The build tested with, error message displayed (if any)
|
||||
* Screenshots
|
||||
* Xbe dump (created via [Edit > Dump Xbe Info To > File])
|
||||
* Kernel Debug log (created when running a game with [View > Debug Output (Kernel) > File] selected).
|
||||
* The build tested with, error message displayed (if any)
|
||||
* Screenshots
|
||||
* Xbe dump (created via `Edit > Dump Xbe Info To > File`)
|
||||
* Kernel Debug log (created when running a game with `View > Debug Output (Kernel) > File` selected).
|
||||
|
||||
## Additional information
|
||||
Cxbx-Reloaded has a [wiki](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki) containing various subjects and background information.
|
||||
Chat on [Gitter](https://gitter.im/Cxbx-Reloaded/Lobby), or [Discord](https://discord.gg/26Xjx23).
|
||||
|
||||
Chat on [Discord](https://discord.gg/26Xjx23).
|
||||
|
||||
## Contributing
|
||||
We welcome contributions, large and small.
|
||||
|
||||
If you want to do some coding, be sure to read the [Developer notes](https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/wiki/Developer-notes).
|
||||
|
||||
**IMPORTANT: Pull-Requests containing code derived from XQEMU will _not_ be approved until an agreement is reached to make work mutually beneficial. this includes updates to existing XQEMU derived code. We should not/will not become a hostile fork.**
|
||||
|
||||
Please contact us before you start working on something, so we can make sure your work is going to be accepted once finished.
|
||||
|
||||
### Prerequisites
|
||||
1. [Git for Windows](https://git-scm.com/)
|
||||
2. [Visual Studio 2017](https://www.visualstudio.com/downloads/) (2015 might work, but is not officially supported)
|
||||
3. Windows 8.1 SDK (Should be included with Visual Studio)
|
||||
4. [Microsoft Child Process Debugging Power Tool](https://marketplace.visualstudio.com/items?itemName=GreggMiskelly.MicrosoftChildProcessDebuggingPowerTool)
|
||||
### Main Prerequisites
|
||||
1. [Git for Windows](https://git-scm.com)
|
||||
2. [CMake](https://cmake.org)
|
||||
* Some IDEs already have CMake support, so this is optional.
|
||||
|
||||
### Fetching the code
|
||||
Run the following command on the command line:
|
||||
`git clone --recurse-submodules https://github.com/Cxbx-Reloaded/Cxbx-Reloaded/`
|
||||
1. Run the following command in the command line:
|
||||
|
||||
Please note the `--recurse-submodules` parameter. This is required to fetch sub-modules.
|
||||
`git clone --recurse-submodules https://github.com/Cxbx-Reloaded/Cxbx-Reloaded.git`
|
||||
* Please note the `--recurse-submodules` parameter. This is required to fetch submodules.
|
||||
* If Cxbx-Reloaded was checked out without submodules, they can be updated/fetched with the following command:
|
||||
|
||||
Without this, Cxbx-Reloaded will fail to build.
|
||||
|
||||
If Cxbx-Reloaded was previously checked out without the submodules, they can be updated/fetched with the following command:
|
||||
`git submodule update --recurse-submodules`
|
||||
`git submodule update --init --recursive`
|
||||
|
||||
### Compiling
|
||||
Simply open `build/Win32/Cxbx.sln` within Visual Studio, select your configuration (Release or Debug) and hit Build.
|
||||
|
||||
Please note that Debug builds are significantly slower, but include much more detailed kernel logging, and may help diagnose a problematic title.
|
||||
#### Windows
|
||||
**NOTE:** Don't open `CMakeLists.txt` from Visual Studio, as it won't generate files in the `build` directory.
|
||||
|
||||
##### Prerequisites
|
||||
1. [Visual Studio](https://visualstudio.microsoft.com/downloads/) 2017 or later
|
||||
* C++ and C# desktop development
|
||||
* Windows Universal CRT SDK
|
||||
* C++ CMake tools for Windows
|
||||
* *Optional if CMake is installed*
|
||||
* [Microsoft Child Process Debugging Power Tool](https://marketplace.visualstudio.com/items?itemName=vsdbgplat.MicrosoftChildProcessDebuggingPowerTool)
|
||||
|
||||
##### Generate Visual Studio files
|
||||
1. If you don't have CMake installed, open `___ Native Tools Command Prompt for VS 20##`.
|
||||
2. `cd` to the Cxbx-Reloaded directory.
|
||||
3. Run these commands.
|
||||
1. `mkdir build & cd build`
|
||||
2. `cmake .. -G "Visual Studio 16 2019" -A Win32`
|
||||
* Visual Studio 2019 16.1 or later has CMake 3.14 bundled, and is required for the Visual Studio 2019 generator.
|
||||
* Use `cmake .. -G "Visual Studio 15 2017" -A Win32` for Visual Studio 2017.
|
||||
4. Open `Cxbx-Reloaded.sln` from the `build` directory.
|
||||
5. Select the Release configuration, then click Build.
|
||||
* Debug builds are **significantly slower, and only for developers**.
|
||||
|
||||
#### Linux / macOS
|
||||
Currently not supported.
|
||||
|
||||
## Support
|
||||
You can support [Luke Usher](https://github.com/LukeUsher), initiator of Cxbx-Reloaded, on [Patreon](https://www.patreon.com/LukeUsher).
|
||||
|
||||
## Special Thanks
|
||||
All contributors to the original Cxbx and Dxbx projects. Without them Cxbx-Reloaded would not exist at all.
|
||||
* All contributors to the original Cxbx and [Dxbx](https://github.com/PatrickvL/Dxbx) projects. Without them Cxbx-Reloaded would not exist at all.
|
||||
* [XQEMU](https://github.com/xqemu/xqemu) - While the majority of Cxbx-R is our own work (Kernel, HLE, etc), the NV2A LLE and NVNet implementation are primarily the work of the XQEMU developers.
|
||||
* [XboxDev](https://github.com/xboxdev) - Providing Xbox hardware research & useful tooling.
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
:: Cxbx-Reloaded build script
|
||||
|
||||
@if "%1"=="" goto show_usage
|
||||
|
||||
@set SLN="%cd%\build\win32\Cxbx.sln"
|
||||
@set VS_ENV="C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsMSBuildCmd.bat"
|
||||
|
||||
:: Setup build environment
|
||||
@if not exist %VS_ENV% goto missing_env
|
||||
|
||||
@call %VS_ENV%
|
||||
|
||||
:: Build managed projects (debugger)
|
||||
@call MSBuild.exe %SLN% /p:Platform="Any CPU" /p:Configuration=%1% /m
|
||||
@if %errorlevel% neq 0 goto failure
|
||||
|
||||
:: Build native projects (emulator, debugger dlls)
|
||||
@call MSBuild.exe %SLN% /p:Platform="Win32" /p:Configuration=%1% /m
|
||||
@if %errorlevel% neq 0 goto failure
|
||||
|
||||
@goto success
|
||||
|
||||
:missing_env
|
||||
@echo Unable to locate MSBuild environment command
|
||||
@set ERRORLEVEL=1
|
||||
@goto eof
|
||||
|
||||
:show_usage
|
||||
@echo Usage: %~0% build_config
|
||||
@set ERRORLEVEL=1
|
||||
@goto eof
|
||||
|
||||
:failure
|
||||
@echo Failed to build at least one configuration, exiting...
|
||||
@goto eof
|
||||
|
||||
:success
|
||||
@echo All builds finished successfully
|
||||
@goto eof
|
||||
|
||||
:eof
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
:: Cxbx-Reloaded gather script
|
||||
|
||||
@if "%1"=="" goto show_usage
|
||||
|
||||
@set ZIP_APP="%cd%\import\7za\7za.exe"
|
||||
@set BUILD_PATH="%cd%\build\win32\%1\"
|
||||
@set ARTIFACT_PATH="%cd%\export\%1.zip"
|
||||
|
||||
:: Add generic resources
|
||||
@call %ZIP_APP% u %ARTIFACT_PATH% COPYING README.md
|
||||
|
||||
:: Check for build resources
|
||||
@if not exist %BUILD_PATH% goto missing_build
|
||||
@pushd %BUILD_PATH%
|
||||
|
||||
:: Add Cxbx binaries
|
||||
@call %ZIP_APP% u %ARTIFACT_PATH% Cxbx.exe glew32.dll subhook.dll d3d8.dll CxbxVSBC.dll
|
||||
|
||||
:: Add debugger binaries
|
||||
@call %ZIP_APP% u %ARTIFACT_PATH% CxbxDebugger.exe capstone.dll cs_x86.dll
|
||||
|
||||
@popd
|
||||
@goto eof
|
||||
|
||||
:missing_build
|
||||
@echo Missing build directory %BUILD_PATH%
|
||||
@set ERRORLEVEL=1
|
||||
@goto eof
|
||||
|
||||
:show_usage
|
||||
@echo Usage: %~0% build_config
|
||||
@goto eof
|
||||
|
||||
:eof
|
||||
@echo Gather complete
|
||||
|
26
appveyor.yml
26
appveyor.yml
|
@ -1,26 +0,0 @@
|
|||
# Documentation is here: https://www.appveyor.com/docs/appveyor-yml/
|
||||
|
||||
init:
|
||||
- ps: Update-AppveyorBuild -Version "$env:appveyor_repo_commit"
|
||||
|
||||
image:
|
||||
# If this is modified, please also update the build script
|
||||
- Visual Studio 2017
|
||||
|
||||
configuration:
|
||||
# The builds will be run in this order
|
||||
- Release
|
||||
- Debug
|
||||
|
||||
build_script:
|
||||
- cmd: appveyor-build.bat %CONFIGURATION%
|
||||
|
||||
after_build:
|
||||
- cmd: appveyor-gather.bat %CONFIGURATION%
|
||||
|
||||
artifacts:
|
||||
- path: export/*.zip
|
||||
|
||||
install:
|
||||
# Git clone happens between init and install
|
||||
- cmd: git submodule update --init --recursive
|
|
@ -1,154 +0,0 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.27130.2026
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Cxbx", "Cxbx.vcxproj", "{E7A72D3D-5810-4078-A243-348B59726365}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF} = {EFA81330-D410-4232-9A0C-1D8B91B6FFFF}
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9} = {B8D9AFC2-B38F-4714-846D-8A2754F076C9}
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126} = {2171C0E8-4915-49B9-AC23-A484FA08C126}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "subhook", "subhook.vcxproj", "{CD2DDE93-B45E-4D11-876D-D0056C3DD407}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CxbxDebugger", "..\..\src\CxbxDebugger\CxbxDebugger.csproj", "{4A68E962-3805-4376-99D3-0AC59E9BEE69}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0} = {9131B025-5019-4DEE-84A3-86D2703A81C0}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cs_x86", "..\..\import\cs_x86\cs_x86\cs_x86.csproj", "{9131B025-5019-4DEE-84A3-86D2703A81C0}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "capstone_dll_2015", "..\..\import\cs_x86\capstone_2015\capstone_dll_2015.vcxproj", "{2171C0E8-4915-49B9-AC23-A484FA08C126}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Debugger", "Debugger", "{174CB14E-34E3-422F-9A99-DBE88FF0EFBB}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XbSymbolDatabase", "..\..\import\XbSymbolDatabase\xbSymbolDatabase.vcxproj", "{B8D9AFC2-B38F-4714-846D-8A2754F076C9}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CxbxVSBC", "CxbxVSBC.vcxproj", "{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug_Direct3D9|Any CPU = Debug_Direct3D9|Any CPU
|
||||
Debug_Direct3D9|Win32 = Debug_Direct3D9|Win32
|
||||
Debug_Direct3D9|x64 = Debug_Direct3D9|x64
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x64 = Debug|x64
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug_Direct3D9|Any CPU.ActiveCfg = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug_Direct3D9|Win32.ActiveCfg = Debug_Direct3D9|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug_Direct3D9|Win32.Build.0 = Debug_Direct3D9|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug_Direct3D9|x64.ActiveCfg = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug|Any CPU.ActiveCfg = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Release|Any CPU.ActiveCfg = Release|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Release|Win32.Build.0 = Release|Win32
|
||||
{E7A72D3D-5810-4078-A243-348B59726365}.Release|x64.ActiveCfg = Release|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug_Direct3D9|Any CPU.ActiveCfg = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug_Direct3D9|Win32.Build.0 = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug_Direct3D9|x64.ActiveCfg = Debug|x64
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug_Direct3D9|x64.Build.0 = Debug|x64
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug|Any CPU.ActiveCfg = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Debug|x64.Build.0 = Debug|x64
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Release|Any CPU.ActiveCfg = Release|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Release|Win32.Build.0 = Release|Win32
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Release|x64.ActiveCfg = Release|x64
|
||||
{CD2DDE93-B45E-4D11-876D-D0056C3DD407}.Release|x64.Build.0 = Release|x64
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug_Direct3D9|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug_Direct3D9|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug_Direct3D9|x64.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug_Direct3D9|x64.Build.0 = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug|Win32.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Release|Win32.ActiveCfg = Release|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69}.Release|x64.Build.0 = Release|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug_Direct3D9|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug_Direct3D9|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug_Direct3D9|x64.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug_Direct3D9|x64.Build.0 = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug|Win32.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Debug|x64.Build.0 = Debug|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Release|Win32.ActiveCfg = Release|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0}.Release|x64.Build.0 = Release|Any CPU
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug_Direct3D9|Any CPU.ActiveCfg = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug_Direct3D9|Win32.Build.0 = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug_Direct3D9|x64.ActiveCfg = Release|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug_Direct3D9|x64.Build.0 = Release|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug|Any CPU.ActiveCfg = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Release|Any CPU.ActiveCfg = Release|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Release|Win32.Build.0 = Release|Win32
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126}.Release|x64.ActiveCfg = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug_Direct3D9|Any CPU.ActiveCfg = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug_Direct3D9|Any CPU.Build.0 = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug_Direct3D9|Win32.Build.0 = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug_Direct3D9|x64.ActiveCfg = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug|Any CPU.ActiveCfg = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Release|Any CPU.ActiveCfg = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Release|Win32.Build.0 = Release|Win32
|
||||
{B8D9AFC2-B38F-4714-846D-8A2754F076C9}.Release|x64.ActiveCfg = Release|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|Any CPU.ActiveCfg = Release|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|Any CPU.Build.0 = Release|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|Win32.ActiveCfg = Debug|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|Win32.Build.0 = Debug|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|x64.ActiveCfg = Debug|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug_Direct3D9|x64.Build.0 = Debug|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug|Any CPU.ActiveCfg = Debug|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Debug|x64.Build.0 = Debug|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Release|Any CPU.ActiveCfg = Release|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Release|Win32.Build.0 = Release|Win32
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Release|x64.ActiveCfg = Release|x64
|
||||
{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{4A68E962-3805-4376-99D3-0AC59E9BEE69} = {174CB14E-34E3-422F-9A99-DBE88FF0EFBB}
|
||||
{9131B025-5019-4DEE-84A3-86D2703A81C0} = {174CB14E-34E3-422F-9A99-DBE88FF0EFBB}
|
||||
{2171C0E8-4915-49B9-AC23-A484FA08C126} = {174CB14E-34E3-422F-9A99-DBE88FF0EFBB}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {B5EC6A8A-FBC4-456F-B41D-F0D1E9719E25}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -1,754 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug_Direct3D9|Win32">
|
||||
<Configuration>Debug_Direct3D9</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectName>Cxbx</ProjectName>
|
||||
<ProjectGuid>{E7A72D3D-5810-4078-A243-348B59726365}</ProjectGuid>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
</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" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||
</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" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">false</LinkIncremental>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\import\DirectX8\include;$(IncludePath)</IncludePath>
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">..\..\import\DirectX9\include;$(IncludePath)</IncludePath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\..\import\DirectX8\lib;$(LibraryPath)</LibraryPath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">$(LibraryPath)</LibraryPath>
|
||||
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\import\DirectX8\include;$(IncludePath)</IncludePath>
|
||||
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\..\import\DirectX8\lib;$(LibraryPath)</LibraryPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CustomBuildAfterTargets>Build</CustomBuildAfterTargets>
|
||||
<CustomBuildBeforeTargets />
|
||||
<IntDir>$(Configuration)\$(ProjectName)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">
|
||||
<CustomBuildAfterTargets>Build</CustomBuildAfterTargets>
|
||||
<CustomBuildBeforeTargets />
|
||||
<IntDir>$(Configuration)\$(ProjectName)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<CustomBuildAfterTargets>Build</CustomBuildAfterTargets>
|
||||
<CustomBuildBeforeTargets />
|
||||
<IntDir>$(Configuration)\$(ProjectName)\</IntDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\..\..\bin\debug/Cxbx.tlb</TypeLibraryName>
|
||||
<HeaderFileName>
|
||||
</HeaderFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\src\Common;..\..\src;..\..\src\Common\Win32;%(AdditionalIncludeDirectories);..\..\import\OpenXDK\include;..\..\import\distorm\include;..\..\import\glew-2.0.0\include;..\..\import\subhook\</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>NOMINMAX;_WIN32_WINNT=0x0601;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
<AdditionalIncludeDirectories>Include\Win32\Cxbx;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>legacy_stdio_definitions.lib;d3d8.lib;dinput8.lib;dxguid.lib;odbc32.lib;odbccp32.lib;Shlwapi.lib;dxerr8.lib;ws2_32.lib;dsound.lib;winmm.lib;ddraw.lib;d3dx8.lib;dbghelp.lib;comctl32.lib;XINPUT9_1_0.LIB;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(Configuration)\;..\..\import\distorm\lib\Win32\;..\..\import\glew-2.0.0\lib\Release\Win32\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>libcmt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<BaseAddress>0x10000</BaseAddress>
|
||||
<FixedBaseAddress>true</FixedBaseAddress>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy $(SolutionDir)..\..\import\glew-2.0.0\bin\Release\Win32\glew32.dll $(TargetDir)</Command>
|
||||
</PostBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Command>
|
||||
</Command>
|
||||
</CustomBuildStep>
|
||||
<PreBuildEvent>
|
||||
<Command>CALL "$(SolutionDir)Version.bat" "$(SolutionDir)..\..\src\Version.h"</Command>
|
||||
<Message>Generate version header</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\..\..\bin\debug/Cxbx.tlb</TypeLibraryName>
|
||||
<HeaderFileName>
|
||||
</HeaderFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>..\..\src\Common;..\..\src;..\..\src\Common\Win32;%(AdditionalIncludeDirectories);..\..\import\OpenXDK\include;..\..\import\distorm\include;..\..\import\glew-2.0.0\include;..\..\import\subhook\</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>CXBX_USE_D3D9;NOMINMAX;_WIN32_WINNT=0x0601;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
<AdditionalIncludeDirectories>Include\Win32\Cxbx;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>legacy_stdio_definitions.lib;d3d8.lib;dinput8.lib;dxguid.lib;odbc32.lib;odbccp32.lib;Shlwapi.lib;dxerr8.lib;ws2_32.lib;dsound.lib;winmm.lib;ddraw.lib;d3dx8.lib;dbghelp.lib;comctl32.lib;XINPUT9_1_0.LIB;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(Configuration)\;..\..\import\distorm\lib\Win32\;..\..\import\glew-2.0.0\lib\Release\Win32\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>libcmt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<GenerateMapFile>true</GenerateMapFile>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<BaseAddress>0x10000</BaseAddress>
|
||||
<FixedBaseAddress>true</FixedBaseAddress>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy $(SolutionDir)..\..\import\glew-2.0.0\bin\Release\Win32\glew32.dll $(TargetDir)</Command>
|
||||
</PostBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Command>
|
||||
</Command>
|
||||
</CustomBuildStep>
|
||||
<PreBuildEvent>
|
||||
<Command>CALL "$(SolutionDir)Version.bat" "$(SolutionDir)..\..\src\Version.h"</Command>
|
||||
<Message>Generate version header</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Midl>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MkTypLibCompatible>true</MkTypLibCompatible>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TargetEnvironment>Win32</TargetEnvironment>
|
||||
<TypeLibraryName>.\..\..\bin\release/Cxbx.tlb</TypeLibraryName>
|
||||
<HeaderFileName>
|
||||
</HeaderFileName>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
|
||||
<AdditionalIncludeDirectories>..\..\src;..\..\src\Common;..\..\src\Common\Win32\;%(AdditionalIncludeDirectories);..\..\import\OpenXDK\include;..\..\import\distorm\include;..\..\import\glew-2.0.0\include;..\..\src\Common\Win32;..\..\import\subhook\</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>NOMINMAX;_WIN32_WINNT=0x0601;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<StringPooling>true</StringPooling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<EnableEnhancedInstructionSet>StreamingSIMDExtensions2</EnableEnhancedInstructionSet>
|
||||
<ExceptionHandling>SyncCThrow</ExceptionHandling>
|
||||
<BufferSecurityCheck>false</BufferSecurityCheck>
|
||||
<ControlFlowGuard>false</ControlFlowGuard>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
|
||||
<FloatingPointModel>Precise</FloatingPointModel>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
</ClCompile>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<Culture>0x0409</Culture>
|
||||
<AdditionalIncludeDirectories>Include\Win32\Cxbx;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>legacy_stdio_definitions.lib;d3d8.lib;dinput8.lib;dxguid.lib;odbc32.lib;odbccp32.lib;Shlwapi.lib;dxerr8.lib;ws2_32.lib;dsound.lib;winmm.lib;ddraw.lib;d3dx8.lib;dbghelp.lib;comctl32.lib;XINPUT9_1_0.LIB;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(Configuration)\;..\..\import\distorm\lib\Win32\;..\..\import\glew-2.0.0\lib\Release\Win32\;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<IgnoreSpecificDefaultLibraries>libcmt;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
<BaseAddress>0x10000</BaseAddress>
|
||||
<FixedBaseAddress>true</FixedBaseAddress>
|
||||
<LargeAddressAware>true</LargeAddressAware>
|
||||
<StackReserveSize>65536</StackReserveSize>
|
||||
<StackCommitSize>65536</StackCommitSize>
|
||||
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
|
||||
</Link>
|
||||
<Bscmake>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Bscmake>
|
||||
<PostBuildEvent>
|
||||
<Command>copy $(SolutionDir)..\..\import\glew-2.0.0\bin\Release\Win32\glew32.dll $(TargetDir)</Command>
|
||||
</PostBuildEvent>
|
||||
<CustomBuildStep>
|
||||
<Command>
|
||||
</Command>
|
||||
</CustomBuildStep>
|
||||
<PreBuildEvent>
|
||||
<Command>CALL "$(SolutionDir)Version.bat" "$(SolutionDir)..\..\src\Version.h"</Command>
|
||||
<Message>Generate version header</Message>
|
||||
</PreBuildEvent>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\Common\Win32\Threads.h" />
|
||||
<ClInclude Include="..\..\src\Common\CxbxDebugger.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBAudio.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBPortMapping.h" />
|
||||
<ClInclude Include="..\..\src\Common\XADPCM.h" />
|
||||
<ClInclude Include="..\..\src\Common\XbePrinter.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\crc32c.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8Logging.h" />
|
||||
<ClInclude Include="..\..\src\Common\EmuEEPROM.h" />
|
||||
<ClInclude Include="..\..\src\Common\Logging.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\AlignPosfix1.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\AlignPrefix1.h" />
|
||||
<ClInclude Include="..\..\src\Common\XDVDFS Tools\buffered_io.h" />
|
||||
<ClInclude Include="..\..\src\Common\XDVDFS Tools\xdvdfs.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\CxbxKrnl.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\DbgConsole.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8Types.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\Convert.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\PixelShader.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\PushBuffer.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\State.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\VertexBuffer.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\VertexShader.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDInput.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDSound.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDSoundInline.hpp" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuFile.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuFS.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlAvModes.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlKi.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlLogging.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuNtDll.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuRsa.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuSha.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuX86.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXactEng.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXapi.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXG.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXInput.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXOnline.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXTL.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\gloffscreen\glextensions.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\HLEIntercept.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\LibRc4.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\PhysicalMemory.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\PoolManager.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\ReservedMemory.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\ResourceTracker.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\VMManager.h" />
|
||||
<ClInclude Include="..\..\src\CxbxVersion.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\CxbxXbdm.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgAbout.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgAudioConfig.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgControllerConfig.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgEepromConfig.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgVideoConfig.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\Emu.h" />
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuShared.h" />
|
||||
<ClInclude Include="..\..\src\Common\Error.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\Mutex.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgXboxControllerPortMapping.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\ResCxbx.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\Wnd.h" />
|
||||
<ClInclude Include="..\..\src\Cxbx\WndMain.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBController.h" />
|
||||
<ClInclude Include="..\..\src\Common\Xbe.h" />
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBVideo.h" />
|
||||
<ClInclude Include="..\..\src\devices\ADM1032Device.h" />
|
||||
<ClInclude Include="..\..\src\devices\EEPROMDevice.h" />
|
||||
<ClInclude Include="..\..\src\devices\EmuNVNet.h" />
|
||||
<ClInclude Include="..\..\src\devices\LED.h" />
|
||||
<ClInclude Include="..\..\src\devices\MCPXDevice.h" />
|
||||
<ClInclude Include="..\..\src\devices\PCIBus.h" />
|
||||
<ClInclude Include="..\..\src\devices\PCIDevice.h" />
|
||||
<ClInclude Include="..\..\src\devices\SMBus.h" />
|
||||
<ClInclude Include="..\..\src\devices\SMCDevice.h" />
|
||||
<ClInclude Include="..\..\src\devices\SMDevice.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_debug.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_int.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_psh.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_shaders.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_shaders_common.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_vsh.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\qemu-thread.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\queue.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\swizzle.h" />
|
||||
<ClInclude Include="..\..\src\devices\video\vga.h" />
|
||||
<ClInclude Include="..\..\src\devices\Xbox.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\CONTRIBUTORS" />
|
||||
<None Include="..\..\COPYING" />
|
||||
<None Include="..\..\README.md" />
|
||||
<None Include="..\..\resource\.editorconfig" />
|
||||
<None Include="..\..\resource\Logo.bmp" />
|
||||
<None Include="..\..\resource\Splash.jpg" />
|
||||
<None Include="..\..\src\.editorconfig" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_DEBUG.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PBUS.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PCOUNTER.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PCRTC.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PFB.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PFIFO.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PGRAPH.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PMC.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRAMDAC.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRAMIN.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMA.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMCIO.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMDIO.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMFB.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMVIO.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PSTRAPS.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PTIMER.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PTV.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PVIDEO.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PVPE.cpp" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_USER.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\resource\Cxbx.rc">
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">\cxbx\git\cxbx-ds\resource;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">\cxbx\git\cxbx-ds\resource;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">\cxbx\git\cxbx-ds\resource;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\Common\Win32\InlineFunc.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\Win32\Threads.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\CxbxDebugger.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBAudio.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBPortMapping.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\XbePrinter.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\crc32c.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8Logging.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\EmuEEPROM.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\Logging.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\Win32\EmuShared.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\XDVDFS Tools\buffered_io.cpp" />
|
||||
<ClCompile Include="..\..\src\Common\XDVDFS Tools\xdvdfs.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\CxbxKrnl.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<WholeProgramOptimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</WholeProgramOptimization>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\DbgConsole.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\Emu.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\Convert.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\PixelShader.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\PushBuffer.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\State.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\VertexBuffer.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\VertexShader.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuDInput.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuDSound.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuFile.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuFS.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnl.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlAv.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlDbg.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlEx.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlFs.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlHal.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlIo.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKd.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKe.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKi.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlLogging.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlMm.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlNt.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlOb.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlPs.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlRtl.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXbox.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXc.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXe.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuNtDll.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuRsa.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuSha.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuX86.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXactEng.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXapi.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXG.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXInput.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXOnline.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\glextensions.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen_common.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen_wgl.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\HLEIntercept.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\KernelThunk.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\LibRc4.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\PhysicalMemory.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\PoolManager.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\ResourceTracker.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\VMManager.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\CxbxXbdm.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgAbout.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgAudioConfig.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgControllerConfig.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgEepromConfig.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgVideoConfig.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Error.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\Mutex.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgXboxControllerPortMapping.cpp" />
|
||||
<ClCompile Include="..\..\src\Cxbx\WinMain.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\Wnd.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\WndMain.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBController.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Xbe.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBVideo.cpp">
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug_Direct3D9|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\ADM1032Device.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\EEPROMDevice.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\EmuNVNet.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\MCPXDevice.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\PCIBus.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\PCIDevice.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\SMBus.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\SMCDevice.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\SMDevice.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_debug.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_psh.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_shaders.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_vsh.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\qemu-thread-win32.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\video\swizzle.cpp" />
|
||||
<ClCompile Include="..\..\src\devices\Xbox.cpp" />
|
||||
<ClCompile Include="..\..\src\HighPerformanceGraphicsEnabler.c" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="subhook.vcxproj">
|
||||
<Project>{cd2dde93-b45e-4d11-876d-d0056c3dd407}</Project>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\..\resource\Cxbx-R.ico" />
|
||||
<Image Include="..\..\resource\Logo-License-CC4.bmp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -1,712 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgControllerConfig.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgVideoConfig.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\WinMain.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\Wnd.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\WndMain.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\Convert.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\PixelShader.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\PushBuffer.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\State.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\VertexBuffer.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8\VertexShader.cpp">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnl.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlAv.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlDbg.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlEx.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlFs.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlHal.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlIo.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKd.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKe.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlLogging.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlMm.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlNt.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlOb.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlPs.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlRtl.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXbox.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXc.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlXe.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Error.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\Mutex.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBController.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Xbe.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBVideo.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\CxbxKrnl.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\DbgConsole.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\Emu.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuDInput.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuDSound.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuFile.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuFS.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuNtDll.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuSha.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\EmuShared.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXactEng.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXapi.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXG.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXInput.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuXOnline.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\HLEIntercept.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\KernelThunk.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\LibRc4.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Logging.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\ResourceTracker.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\XDVDFS Tools\xdvdfs.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\XDVDFS Tools\buffered_io.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\EmuEEPROM.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgAbout.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuD3D8Logging.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgAudioConfig.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBAudio.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\PhysicalMemory.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\VMManager.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\EEPROMDevice.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\PCIBus.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\PCIDevice.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\SMBus.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\SMCDevice.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\SMDevice.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\CxbxDebugger.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\Xbox.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\XbePrinter.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\Threads.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\MCPXDevice.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\crc32c.cpp">
|
||||
<Filter>Shared</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuKrnlKi.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\EmuNVNet.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_psh.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_shaders.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_vsh.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\swizzle.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\HighPerformanceGraphicsEnabler.c" />
|
||||
<ClCompile Include="..\..\src\devices\ADM1032Device.cpp">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen_wgl.cpp">
|
||||
<Filter>Hardware\Video\gloffscreen</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen_common.cpp">
|
||||
<Filter>Hardware\Video\gloffscreen</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\gloffscreen\glextensions.cpp">
|
||||
<Filter>Hardware\Video\gloffscreen</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\qemu-thread-win32.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\devices\video\nv2a_debug.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuX86.cpp">
|
||||
<Filter>Hardware\X86</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\EmuRsa.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgEepromConfig.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxKrnl\PoolManager.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\DlgXboxControllerPortMapping.cpp">
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\XBPortMapping.cpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Cxbx\CxbxXbdm.cpp">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\Common\Win32\InlineFunc.cpp">
|
||||
<Filter>Cross Platform\Win32</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgControllerConfig.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgVideoConfig.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\WndMain.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\Wnd.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\Convert.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\PixelShader.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\PushBuffer.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\State.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\VertexBuffer.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8\VertexShader.h">
|
||||
<Filter>EmuD3D8</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlLogging.h">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\Emu.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuShared.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Error.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\Mutex.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\ResCxbx.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBController.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Xbe.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBVideo.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\CxbxKrnl.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\DbgConsole.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8Types.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDInput.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDSound.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuFile.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuFS.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuNtDll.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuSha.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXactEng.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXapi.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXG.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXInput.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXOnline.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuXTL.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\HLEIntercept.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\LibRc4.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Logging.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\ResourceTracker.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\ReservedMemory.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\AlignPosfix1.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\AlignPrefix1.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\XDVDFS Tools\buffered_io.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\XDVDFS Tools\xdvdfs.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\EmuEEPROM.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxVersion.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgAbout.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuD3D8Logging.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\XADPCM.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuDSoundInline.hpp">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgAudioConfig.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBAudio.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\PhysicalMemory.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\VMManager.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\EEPROMDevice.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\PCIBus.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\PCIDevice.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\SMBus.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\SMCDevice.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\SMDevice.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\LED.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\Xbox.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\CxbxDebugger.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\XbePrinter.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\Threads.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\MCPXDevice.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\crc32c.h">
|
||||
<Filter>Shared</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlKi.h">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\EmuNVNet.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_debug.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_int.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_psh.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_shaders.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_shaders_common.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\nv2a_vsh.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\swizzle.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\vga.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\queue.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuKrnlAvModes.h">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\CxbxXbdm.h">
|
||||
<Filter>Kernel</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\gloffscreen\glextensions.h">
|
||||
<Filter>Hardware\Video\gloffscreen</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\gloffscreen\gloffscreen.h">
|
||||
<Filter>Hardware\Video\gloffscreen</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\video\qemu-thread.h">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\devices\ADM1032Device.h">
|
||||
<Filter>Hardware</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuX86.h">
|
||||
<Filter>Hardware\X86</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\EmuRsa.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgEepromConfig.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxKrnl\PoolManager.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Cxbx\DlgXboxControllerPortMapping.h">
|
||||
<Filter>GUI</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\Common\Win32\XBPortMapping.h">
|
||||
<Filter>Emulator</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="DlgXboxControllerPortMapping.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="..\..\resource\Splash.jpg">
|
||||
<Filter>GUI</Filter>
|
||||
</None>
|
||||
<None Include="..\..\resource\Logo.bmp">
|
||||
<Filter>Shared</Filter>
|
||||
</None>
|
||||
<None Include="..\..\CONTRIBUTORS" />
|
||||
<None Include="..\..\COPYING" />
|
||||
<None Include="..\..\README.md" />
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_DEBUG.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PBUS.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PCOUNTER.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PCRTC.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PFB.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PFIFO.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PGRAPH.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PMC.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRAMDAC.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRAMIN.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMA.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMCIO.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMDIO.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMFB.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PRMVIO.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PSTRAPS.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PTIMER.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PTV.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PVIDEO.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_PVPE.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\devices\video\EmuNV2A_USER.cpp">
|
||||
<Filter>Hardware\Video</Filter>
|
||||
</None>
|
||||
<None Include="..\..\src\.editorconfig">
|
||||
<Filter>Code Format\src</Filter>
|
||||
</None>
|
||||
<None Include="..\..\resource\.editorconfig">
|
||||
<Filter>Code Format\resource</Filter>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Filter Include="GUI">
|
||||
<UniqueIdentifier>{445ff8dc-8414-41ad-8681-01243121d574}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="EmuD3D8">
|
||||
<UniqueIdentifier>{4ee1fc9a-ee21-4764-b96f-1caf41881bab}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Kernel">
|
||||
<UniqueIdentifier>{0187aa1f-d227-4dd5-b9ae-a336795923c7}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Emulator">
|
||||
<UniqueIdentifier>{a5334d93-a02d-41f6-8c3b-fa6e8e3c3be0}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Shared">
|
||||
<UniqueIdentifier>{d8ef7ef5-cbb9-4dba-9cab-585519a9756b}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Hardware">
|
||||
<UniqueIdentifier>{922ab09b-aa8e-41bb-b781-58654160ee3d}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Hardware\Video">
|
||||
<UniqueIdentifier>{deba5d3e-9a1a-4099-bc91-12737a48272e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Hardware\Video\gloffscreen">
|
||||
<UniqueIdentifier>{5532aa9d-9e81-4f24-afb1-27e3ce626b6d}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Hardware\X86">
|
||||
<UniqueIdentifier>{9efb9cfc-2731-4edb-8dd0-36950b0263df}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Code Format">
|
||||
<UniqueIdentifier>{0e125cbe-fb2e-41ef-a381-6effd9fabd35}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Code Format\src">
|
||||
<UniqueIdentifier>{26a58e10-09ca-4605-86f8-552e5a9aa2e3}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Code Format\resource">
|
||||
<UniqueIdentifier>{6bbc2463-25dc-4f07-bf9e-38d6216d036a}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Cross Platform">
|
||||
<UniqueIdentifier>{a097bca1-9b9f-4f35-8e77-fdd0a01b2d8e}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Cross Platform\Win32">
|
||||
<UniqueIdentifier>{c242189e-0079-4c32-b561-2871cb561688}</UniqueIdentifier>
|
||||
</Filter>
|
||||
<Filter Include="Cross Platform\Linux">
|
||||
<UniqueIdentifier>{3d3739b8-aeee-4bf1-ac1b-8623e7288dda}</UniqueIdentifier>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\resource\Cxbx.rc">
|
||||
<Filter>Shared</Filter>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="..\..\resource\Cxbx-R.ico" />
|
||||
<Image Include="..\..\resource\Logo-License-CC4.bmp" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,12 +0,0 @@
|
|||
LIBRARY CxbxVSBC
|
||||
DESCRIPTION 'CxbxVSBC DLL module definition
|
||||
|
||||
EXPORTS
|
||||
VSBCGetState
|
||||
VSBCSetState
|
||||
VSBCOpen
|
||||
VSBCShow
|
||||
VSBCHide
|
||||
|
||||
|
||||
|
|
@ -1,169 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.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="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<VCProjectVersion>15.0</VCProjectVersion>
|
||||
<ProjectGuid>{EFA81330-D410-4232-9A0C-1D8B91B6FFFF}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>CxbxVSBC</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<LinkIncremental>true</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Full</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>WIN32;NDEBUG;CXBXVSBC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ModuleDefinitionFile>CxbxVSBC.def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>WIN32;_DEBUG;CXBXVSBC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ModuleDefinitionFile>CxbxVSBC.def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_DEBUG;CXBXVSBC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<PrecompiledHeader>Use</PrecompiledHeader>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>NDEBUG;CXBXVSBC_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ConformanceMode>true</ConformanceMode>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<ModuleDefinitionFile>Source.def</ModuleDefinitionFile>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<None Include="CxbxVSBC.def" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\CxbxVSBC.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\DlgVirtualSBCFeedback.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\dllmain.cpp" />
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\stdafx.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\CxbxVSBC.h" />
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\DlgVirtualSBCFeedback.h" />
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\stdafx.h" />
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\targetver.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -1,50 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hh;hpp;hxx;hm;inl;inc;ipp;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\CxbxVSBC.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\DlgVirtualSBCFeedback.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\dllmain.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\src\CxbxVSBC\stdafx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\CxbxVSBC.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\DlgVirtualSBCFeedback.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\stdafx.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\src\CxbxVSBC\targetver.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="CxbxVSBC.def">
|
||||
<Filter>Source Files</Filter>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -1,21 +0,0 @@
|
|||
@echo off
|
||||
|
||||
git describe --always --tags --first-parent > GIT_VERSION
|
||||
@if not exist %~1 (
|
||||
@goto update
|
||||
)
|
||||
|
||||
@if exist LAST_GIT_VERSION (
|
||||
fc GIT_VERSION LAST_GIT_VERSION > nul
|
||||
@if errorlevel 1 goto update
|
||||
@del GIT_VERSION
|
||||
@goto eof
|
||||
)
|
||||
|
||||
:update
|
||||
@for /f "delims=" %%x in (GIT_VERSION) do set GIT_VERSION=%%x
|
||||
@echo #define _GIT_VERSION "%GIT_VERSION%" > "%~1"
|
||||
echo Updated %~1 with latest git revision number
|
||||
@move /Y GIT_VERSION LAST_GIT_VERSION > nul
|
||||
|
||||
:eof
|
|
@ -1,138 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.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="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<VCProjectVersion>15.0</VCProjectVersion>
|
||||
<ProjectGuid>{CD2DDE93-B45E-4D11-876D-D0056C3DD407}</ProjectGuid>
|
||||
<RootNamespace>subhook</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="Shared">
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<IntDir>$(Configuration)\$(ProjectName)</IntDir>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<IntDir>$(Configuration)\$(ProjectName)</IntDir>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_WINDLL;SUBHOOK_IMPLEMENTATION;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
<PreprocessorDefinitions>_WINDLL;SUBHOOK_IMPLEMENTATION;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
</ClCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<WarningLevel>Level3</WarningLevel>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||
<SDLCheck>true</SDLCheck>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\import\subhook\subhook.c" />
|
||||
<ClCompile Include="..\..\import\subhook\subhook_windows.c">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\import\subhook\subhook_x86.c">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\import\subhook\subhook.h" />
|
||||
<ClInclude Include="..\..\import\subhook\subhook_private.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
</ImportGroup>
|
||||
</Project>
|
|
@ -1,36 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Resource Files">
|
||||
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\import\subhook\subhook.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\import\subhook\subhook_x86.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\import\subhook\subhook_windows.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\import\subhook\subhook.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\import\subhook\subhook_private.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -0,0 +1,110 @@
|
|||
@ECHO off
|
||||
|
||||
:: LICENSE: Public Domain
|
||||
:: MADE BY: RadWolfie (2019)
|
||||
|
||||
SETLOCAL
|
||||
|
||||
:: Check if arg is none/help
|
||||
IF "%1"=="" (
|
||||
SET x86=1
|
||||
SET cpu_arch=1
|
||||
)
|
||||
IF /I "%1"=="-h" (
|
||||
GOTO :helpInfo
|
||||
)
|
||||
IF /I "%1"=="-help" (
|
||||
GOTO :helpInfo
|
||||
)
|
||||
|
||||
:: Check first arg (CPU cpu_architecture)
|
||||
IF /I "%1"=="all" (
|
||||
SET x86=1
|
||||
SET x64=1
|
||||
SET ARM=1
|
||||
SET ARM64=1
|
||||
SET cpu_arch=1
|
||||
ECHO Generating all available projects...
|
||||
)
|
||||
IF /I "%1"=="x86" (
|
||||
SET x86=1
|
||||
SET cpu_arch=1
|
||||
)
|
||||
IF /I "%1"=="x64" (
|
||||
SET x64=1
|
||||
SET cpu_arch=1
|
||||
)
|
||||
IF /I "%1"=="ARM" (
|
||||
SET ARM=1
|
||||
SET cpu_arch=1
|
||||
)
|
||||
IF /I "%1"=="ARM64" (
|
||||
SET ARM64=1
|
||||
SET cpu_arch=1
|
||||
)
|
||||
IF NOT DEFINED cpu_arch (
|
||||
GOTO :helpInfo
|
||||
)
|
||||
|
||||
:: Check second arg (Visual Studio version)
|
||||
IF "%2"=="2019" (
|
||||
SET msvc_compiler=Visual Studio 16 2019
|
||||
)
|
||||
IF "%2"=="2017" (
|
||||
SET msvc_compiler=Visual Studio 15 2017
|
||||
)
|
||||
IF "%2"=="" (
|
||||
SET msvc_compiler=Visual Studio 15 2017
|
||||
)
|
||||
IF NOT DEFINED msvc_compiler (
|
||||
GOTO :helpInfo
|
||||
)
|
||||
|
||||
IF DEFINED x86 (
|
||||
ECHO Generating x86 project...
|
||||
mkdir build-x86 & pushd build-x86
|
||||
cmake .. -G "%msvc_compiler%" -A Win32
|
||||
popd
|
||||
)
|
||||
|
||||
IF DEFINED x64 (
|
||||
ECHO Generating x64 project...
|
||||
mkdir build-x64 & pushd build-x64
|
||||
cmake .. -G "%msvc_compiler%" -A x64
|
||||
popd
|
||||
)
|
||||
|
||||
IF DEFINED ARM (
|
||||
ECHO Generating ARM project...
|
||||
mkdir build-arm & pushd build-arm
|
||||
cmake .. -G "%msvc_compiler%" -A ARM
|
||||
popd
|
||||
)
|
||||
|
||||
IF DEFINED ARM64 (
|
||||
ECHO Generating ARM64 project...
|
||||
mkdir build-arm64 & pushd build-arm64
|
||||
cmake .. -G "%msvc_compiler%" -A ARM64
|
||||
popd
|
||||
)
|
||||
|
||||
GOTO :end
|
||||
|
||||
:helpInfo
|
||||
ECHO Available options are:
|
||||
ECHO arg1
|
||||
ECHO - all
|
||||
ECHO - x86
|
||||
ECHO - x64
|
||||
ECHO - ARM
|
||||
ECHO - ARM64
|
||||
ECHO ---
|
||||
ECHO arg2
|
||||
ECHO - 2017
|
||||
ECHO - 2019
|
||||
PAUSE
|
||||
GOTO :end
|
||||
|
||||
:end
|
||||
:: Clear local variables.
|
||||
ENDLOCAL
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,170 +0,0 @@
|
|||
conv3ds
|
||||
-------
|
||||
|
||||
conv3ds converts 3ds models produced by Autodesk 3D Studio and other
|
||||
modelling packages into X Files. By default it produces binary X files
|
||||
with no templates.
|
||||
|
||||
|
||||
How to use it
|
||||
-------------
|
||||
|
||||
At its simplest you can run it with no options and it will (endeavour) to
|
||||
produce an X file containing a hiearchy of frames. For example:
|
||||
|
||||
conv3ds file.3ds
|
||||
|
||||
will produce an X File file.x. Use Frame::Load to load the frame.
|
||||
|
||||
If the 3ds file contains key frame data then you can produce an X file
|
||||
which contains an animation set using the -A option. For example:
|
||||
|
||||
conv3ds -A file.3ds
|
||||
|
||||
Use AnimationSet::Load to load the animation.
|
||||
|
||||
If you want to make an X file containing a single mesh made from all the
|
||||
objects in the 3ds file then use the -m option.
|
||||
|
||||
conv3ds -m file.3ds
|
||||
|
||||
Use MeshBuilder::Load to load the mesh.
|
||||
|
||||
|
||||
Other useful options
|
||||
--------------------
|
||||
|
||||
* The -T option will wrap all the objects and frame hierarchies in a single
|
||||
"toplevel" frame. This enables you to load all the frames and objects in
|
||||
the 3ds file with a single call to Frame::Load, using the default options
|
||||
(ie. Load the first toplevel frame hiearchy in the X file). The frame
|
||||
containing all the other frames and meshes is called "x3ds_filename"
|
||||
(without the .3ds extension). When used with the -m option this option has
|
||||
no affect.
|
||||
|
||||
|
||||
* The -s option allows you to specify a scale factor for all the objects
|
||||
converted in the 3ds file. For example
|
||||
|
||||
conv3ds -s10 file.3ds
|
||||
|
||||
will make all the objects 10 times bigger, and
|
||||
|
||||
conv3ds -s0.1 file.3ds
|
||||
|
||||
will make all the objects 10 times smaller
|
||||
|
||||
|
||||
* The -r option reverses the winding order of the faces when the 3ds file is
|
||||
converted. If after converting the 3ds file and viewing it in D3D, the object
|
||||
appears "inside-out" try converting it with the -r option. All Lightwave
|
||||
models (see notes below) exported as 3ds files will need this option.
|
||||
|
||||
|
||||
* The -v option turns on verbose output mode. Specifiy an integer with it.
|
||||
The only useful (currently) integers are:
|
||||
-v1, print out warnings about bad objects and general information
|
||||
about what the converter is doing
|
||||
-v2, print out basic keyframe information, objects being included in the
|
||||
conversion process, and information about the objects while being saved.
|
||||
-v3, very verbose (mostly useful for debugging) information.
|
||||
|
||||
The default is -v0.
|
||||
|
||||
|
||||
* The -e option allows you to change the extension for texture map files. For
|
||||
example:
|
||||
|
||||
conv3ds -e"ppm" file.3ds
|
||||
|
||||
and file.3ds contains objects which reference the texture map file brick.gif,
|
||||
the X file will reference the texture map file brick.ppm. The converter does
|
||||
not convert the texture map file. The texture map files must also be in the
|
||||
D3DPATH when the resulting X File is loaded.
|
||||
|
||||
* The -x option forces conv3ds to produce a text X file, not a binary
|
||||
X file. Text files are larger but can be hand edited easily.
|
||||
|
||||
* The -X option forces conv3ds to include the D3DRM X File templates in
|
||||
the file. By default the templates are not included.
|
||||
|
||||
|
||||
Other options
|
||||
-------------
|
||||
|
||||
* The -t option specifies that the X File produced will not contain texture
|
||||
information.
|
||||
|
||||
* The -N option specifies that the X file produced will not contain Normal
|
||||
information. All the D3DRM Load calls will generate normals for objects
|
||||
with no normals in the X file.
|
||||
|
||||
* The -c option specifies that the X file produced should not contain
|
||||
texture coordinates. By default if you use the -m option the outputted mesh
|
||||
will contain 0,0 uv texture coordinates if the 3ds object had no texture
|
||||
coordinates.
|
||||
|
||||
* The -f option specifies that the X file produced should not contain any
|
||||
FrameTransformMatrix.
|
||||
|
||||
* The -z and -Z options allow you to adjust the alpha face color value of
|
||||
all the materials referenced by objects in the X File.
|
||||
This is best illustrated with an example:
|
||||
|
||||
conv3ds -z0.1 -Z0.2 file.3ds
|
||||
|
||||
says add 0.1 to all alpha values under 0.2. And
|
||||
|
||||
conv3ds-z"-0.2" -z1 file.3ds
|
||||
|
||||
says subtract 0.2 from the alpha values for all alphas.
|
||||
|
||||
* The -o option allows you to specify the filename for the .X File produced.
|
||||
|
||||
* The -h option tells the converter not to try to resolve any hiearchy
|
||||
information in the 3ds file (usually produced by the keyframer). Instead all
|
||||
the objects (when the converter is not used with the -m option) are outputted
|
||||
in toplevel frames.
|
||||
|
||||
|
||||
3ds file produced from lightwave objects
|
||||
----------------------------------------
|
||||
|
||||
There are a number of issues with 3ds files exported by the trans3d
|
||||
plugin for lightwave. These are best handled using the following
|
||||
options to conv3ds.
|
||||
|
||||
conv3ds -r -N -f -h -T|m trans3dfile.3ds
|
||||
|
||||
All the 3ds objects which we've come across produced by trans3d and the
|
||||
lightwave object editor need their winding order reversing (otherwise they
|
||||
appear "inside-out" when displayed) and contain no normal information.
|
||||
|
||||
|
||||
Hints and Tips
|
||||
--------------
|
||||
|
||||
Some of these are pretty obvious but are probably worth saying anyway.
|
||||
|
||||
If, after loading an object produced by conv3ds into the D3DRM viewer,
|
||||
you can't see the object then try using the -s object
|
||||
with an integer of say, 100, to increase the X file objects scale.
|
||||
|
||||
|
||||
If, after loading the object into the viewer and switching from flat
|
||||
shading into Gourard shading the object turns dark grey try converting
|
||||
with the -N option.
|
||||
|
||||
Textures can be the biggest problem. If after converting the object the
|
||||
textures don't get loaded then make sure that the object is referencing
|
||||
either .ppm or .bmp files (using the -e option), make sure the textures
|
||||
width and height is a power of 2, and make sure the textures are stored
|
||||
in one of the directories in your D3DPATH.
|
||||
|
||||
|
||||
Known bugs and problems
|
||||
-----------------------
|
||||
|
||||
Currently conv3ds can't handle dummy frames used in 3ds animations.
|
||||
It just ignores them (but will convert any child objects).
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,115 +0,0 @@
|
|||
DIRECTPLAY® 8 LOGGING UTILITY (DP8LOG.EXE)
|
||||
|
||||
Like many parts of DirectX, the debug version of DirectPlay 8 sends
|
||||
debugging messages meant to aid you in development to a debug program.
|
||||
DirectPlay is also able to send this debugging information to a region
|
||||
of shared memory. The purpose of the dp8log.exe utility is to read and
|
||||
display the contents of that region of memory. This allows you to obtain
|
||||
the debug information on machines that do not have a debugger and also
|
||||
gives you a convenient way to save the debugging information to a file
|
||||
by redirecting the output from dp8log.exe to a file.
|
||||
|
||||
To display the contents of shared memory simply run dp8log.exe from the
|
||||
command prompt. The contents of the shared memory will be output to the
|
||||
standard output device (the screen). If you want to save the debug
|
||||
output to a file, simply redirect standard output to a file. For example,
|
||||
the command:
|
||||
|
||||
dp8log > debug.txt
|
||||
|
||||
Will save the debug output in a file called debug.txt in the current
|
||||
directory.
|
||||
|
||||
Note that the shared memory region only exists while a DirectPlay 8
|
||||
application is running and has loaded one or more of the DirectPlay 8
|
||||
dlls. When all DirectPlay applications exit or unload the DirectPlay 8
|
||||
dlls, the shared memory region is deallocated. This means that you can
|
||||
only get output from dp8log.exe while one or more of the DirectPlay 8
|
||||
dlls are loaded (i.e. the application using DirectPlay 8 is running).
|
||||
|
||||
Also note that all DirectPlay 8 applications share the same area of
|
||||
shared memory. This means that the debug output will contain output
|
||||
from all processes using DirectPlay 8.
|
||||
|
||||
You can change the behavior of the DirectPlay 8 debug output by adding
|
||||
entries to win.ini in the windows directory.
|
||||
|
||||
DirectPlay 8 looks for the [DirectPlay8] section in win.ini, and it
|
||||
recognizes the following attributes:
|
||||
|
||||
debug=x
|
||||
log=x
|
||||
debug.<component>=x
|
||||
log.<component>=x
|
||||
verbose=x
|
||||
|
||||
These attributes are described below:
|
||||
|
||||
debug - determines how much information is sent to the debug log, 0 is
|
||||
the least amount (critical errors only), 9 is the most (practically
|
||||
everything that DirectPlay does). Note that setting "debug" to a high
|
||||
level takes a fair amount of CPU time and will lower the performance
|
||||
of your application.
|
||||
|
||||
DirectPlay is subdivided into a number of components. It is possible to
|
||||
control the debug level of individual components. The following
|
||||
compoenents are available:
|
||||
|
||||
core - session layer protocol (e.g. player and group management)
|
||||
addr - DirectPlay addressing (i.e. IDirectPlay8Address)
|
||||
lobby - lobby client and lobbied application
|
||||
protocol - transport protocol (i.e. retries, acks, etc.)
|
||||
voice - DirectPlay Voice
|
||||
dpnsvr - the enumeration server/redirector (dpnsvr.exe)
|
||||
wsock - winsock (IP/IPX) service provider
|
||||
modem - serial and modem service provider
|
||||
shared - shared untility functions in DirectPlay
|
||||
|
||||
The "debug" setting sets the default debug level. You can override this
|
||||
with specific component levels, e.g.
|
||||
|
||||
debug=1 ; sets the default level to 1
|
||||
debug.voice=5 ; set voice related debug level to 5
|
||||
debug.wsock=0 ; set the winsock service provider debug level to 0
|
||||
|
||||
The "log" attribute determines where the debug information is sent.
|
||||
The following values are valid:
|
||||
|
||||
log=0 ; send no debug information
|
||||
log=1 ; send debug info to debug console (i.e vc++ debug window)
|
||||
log=2 ; send debug info to shared memory
|
||||
log=3 ; send debug info to both console and shared memory
|
||||
|
||||
As with the "debug" attribute, you can specify components for the
|
||||
log attribute. For example:
|
||||
|
||||
log=1 ; default to sending debug information to the debug console
|
||||
log.voice=3 ; send voice debug information to console and memory
|
||||
log.wsock=0 ; send winsock service provider debug information to nowhere
|
||||
|
||||
The "verbose" attribute determines how much information is contained
|
||||
in each debug message. There are two verbosity levels, "0" and "1".
|
||||
"0" is the default. Example:
|
||||
|
||||
verbose=1 ; sent the verbosity level to 1
|
||||
|
||||
Experiment with the different verbosity levels and decide which one
|
||||
serves your purposes best.
|
||||
|
||||
Here is a complete example win.ini section:
|
||||
|
||||
[DirectPlay8]
|
||||
debug=1 ; set the default debug level to 1
|
||||
debug.core=5 ; set the core debug level to 5
|
||||
log=1 ; default to sending debug output to console only
|
||||
log.core=3 ; send the core debug output to both console and memory
|
||||
verbose=1 ; use verbosity level 1
|
||||
|
||||
If no [DirectPlay8] section is found in win.ini, DirectPlay defaults
|
||||
to the following settings:
|
||||
|
||||
[DirectPlay8]
|
||||
log=1
|
||||
debug=0
|
||||
|
||||
Therefore you will always see critical errors in the debug console.
|
Binary file not shown.
|
@ -1,176 +0,0 @@
|
|||
Readme for the DirectX Texture Tool
|
||||
|
||||
|
||||
Purpose and Audience
|
||||
--------------------
|
||||
The purpose of this tool is to allow DirectX SDK users to easily create texture
|
||||
maps that use the DXTn compression formats. Creating a DXTn-compressed
|
||||
texture is actually not that difficult to do: DirectDraw's Blt function can
|
||||
do the conversion for you. Advanced developers will probably want to write
|
||||
their own tools that meet their specific needs. But this tool provides useful
|
||||
basic functionality.
|
||||
|
||||
|
||||
DxTex Functionality
|
||||
-------------------
|
||||
Opens BMP and DDS files (See below for a description of the DDS file format)
|
||||
Opens BMP files as alpha channel, either explicitly or implicitly (via
|
||||
foo_a.bmp naming)
|
||||
Saves textures in DDS format
|
||||
Supports conversion to all five DXTn compression formats
|
||||
Supports generation of mip maps (using a box filter)
|
||||
Supports visualization of alpha channel as a greyscale image or via a user-
|
||||
selectable background color
|
||||
Supports easy visual comparison of image quality between formats
|
||||
|
||||
Note: DxTex does not currently support textures with surface formats that
|
||||
do not contain at least an R, G, and B texture (such as D3DFMT_G16R16 and
|
||||
D3DFMT_A8), although D3DX can load and save such textures in DDS format.
|
||||
|
||||
|
||||
User Interface
|
||||
--------------
|
||||
DxTex uses a pretty traditional user interface. Each texture map is a
|
||||
document, and several documents can be open at a time. The one thing that
|
||||
is a bit unusual about the UI is that each document can hold the texture
|
||||
in either one or two formats at once while the document is open in DxTex.
|
||||
For instance, one could import a BMP file, which would automatically create
|
||||
a 32-bit ARGB texture. One could then choose to convert the texture to
|
||||
DXT1 format. The document now remembers the image in *both* formats, and
|
||||
the user can flip between the formats by clicking in the window or by
|
||||
choosing "Original" and "New" in the View menu. This makes it easy for
|
||||
the user to observe any artifacts introduced by image compression, and to
|
||||
try several different compression formats without progressive degradation
|
||||
of the image For instance, if this technique were not used and the user
|
||||
converted an image from ARGB to DXT1, all but one bit of alpha would be lost.
|
||||
If the user then decided to convert to DXT2, there would still be only two
|
||||
alpha levels. With DxTex's system, the second conversion is done from the
|
||||
original ARGB format, and the DXT2 image will contain all 16 levels of alpha
|
||||
supported by DXT2. When the image is saved, the "original" format is
|
||||
discarded, and only the "new" format is stored.
|
||||
|
||||
There are a few consequences of this system that one must remember:
|
||||
- If no format conversion has been requested since the document was opened,
|
||||
the one format is the "original" format and that is the format in which
|
||||
the image will be written when the document is saved.
|
||||
- If format conversion has been requested since the document was opened, the
|
||||
converted format is the "new" format and that is the format in which the
|
||||
image will be written when the document is saved.
|
||||
- If a second format conversion is requested, the "new" format from the first
|
||||
conversion is replaced with the second format. The "original" format will
|
||||
be unchanged.
|
||||
- Generating of mip maps applies to both formats simultaneously.
|
||||
- If the original format has multiple mip maps, and conversion to a new format
|
||||
is requested, the new format will automatically have multiple mip maps as
|
||||
well.
|
||||
It's not as complicated as it sounds: with time, this two-format system
|
||||
becomes natural and efficient to use.
|
||||
|
||||
|
||||
DxTex Performance
|
||||
-----------------
|
||||
DxTex uses the Direct3D Reference Rasterizer to draw the textures,
|
||||
regardless of what 3D hardware is available. So with larger textures
|
||||
(greater than 256x256), the program may be somewhat slow, depending on your
|
||||
CPU speed.
|
||||
|
||||
|
||||
DDS File Format
|
||||
---------------
|
||||
DxTex's native file format is called "DDS" file format, because it
|
||||
encapsulates the information in a DirectDrawSurface. It has the following
|
||||
format:
|
||||
|
||||
DWORD dwMagic (0x20534444, or "DDS ")
|
||||
DDSURFACEDESC2 ddsd (this provides information about the surface format)
|
||||
BYTE bData1[] (this is the surface data for the main surface)
|
||||
[BYTE bData2[]...] (surface data for attached surfaces, if any, follow)
|
||||
|
||||
This format is easy to read and write, and supports features such as alpha
|
||||
and multiple mip levels, as well as DXTn compression. The "Compress" sample
|
||||
application on the DirectX SDK demonstrates how to properly import a DDS file.
|
||||
|
||||
The user should note that it is not necessary to use the DDS format in order
|
||||
to use DXTn-compressed textures, or vice-versa. But the two work well
|
||||
together.
|
||||
|
||||
|
||||
Mip Maps
|
||||
--------
|
||||
Mip mapping is a technique that improves image quality and reduces texture
|
||||
memory bandwidth by providing prefiltered versions of the texture image at
|
||||
multiple resolutions.
|
||||
|
||||
To generate mip maps in DxTex, the width and height of the source image must
|
||||
both be powers of 2. Choose "Generate Mip Maps" from the Format menu.
|
||||
Filtering is done via a simple box filter, i.e., the four nearest pixels are
|
||||
averaged to produce each destination pixel. More sophisticated filtering can
|
||||
be found in other image processing programs.
|
||||
|
||||
|
||||
Alpha
|
||||
-----
|
||||
Many texture formats include an alpha channel, which provides opacity
|
||||
information at each pixel. DxTex fully supports alpha in textures. When
|
||||
importing a BMP file, if a file exists of the same size with "_a" at the end
|
||||
(e.g., foo.bmp and foo_a.bmp), the second file will be loaded as an alpha
|
||||
channel. The blue channel of the second BMP is stored in the alpha channel.
|
||||
Once a document is open, the user can explicitly load a BMP file as the alpha
|
||||
channel via the "Open As Alpha Channel" command on the File menu.
|
||||
|
||||
To view the alpha channel directly without the RGB channels, choose "Alpha
|
||||
Channel Only" from the View menu. The alpha channel will appear as a
|
||||
greyscale image. Note that if no alpha channel has been loaded, the alpha
|
||||
channel will be 100% everywhere and the image will appear solid white when
|
||||
viewing "Alpha Channel Only". To turn off "Alpha Channel Only", just choose
|
||||
that menu item a second time.
|
||||
|
||||
In the usual view, the effect of the alpha channel is visible because the
|
||||
window has a solid background color which shows through the texture where the
|
||||
alpha channel is less than 100%. The user can change this background color
|
||||
by choosing "Change Background Color" from the View menu. This choice does
|
||||
not affect the texture itself or the data that is written when the file is
|
||||
saved.
|
||||
|
||||
The DXT2 and DXT4 formats use premultiplied alpha, which means that the
|
||||
red, green, and blue values stored in the surface are already multiplied
|
||||
by the corresponding alpha value. DirectDraw cannot blit from a surface
|
||||
containing premultiplied alpha to one containing non-premultiplied alpha,
|
||||
so some DxTex operations (Open as Alpha Channel, conversion to DXT3, and
|
||||
conversion to DXT5) are not possible on DXT2 and DXT4 formats. Supporting
|
||||
textures using these formats is difficult on Direct3D devices which do
|
||||
not support DXTn textures, because DirectDraw cannot handle blitting them
|
||||
to a traditional ARGB surface either (unless that ARGB surface uses
|
||||
premultiplied alpha as well, which is rare). So you may find it easier to
|
||||
use DXT3 rather than DXT2 and DXT5 rather than DXT4 when possible.
|
||||
|
||||
|
||||
Command-Line Options
|
||||
--------------------
|
||||
Command-line options can be used to pass input files, an output file name, and
|
||||
processing options to DxTex. If an output file name is specified, the program
|
||||
exits automatically after writing the output file, and no user interface is
|
||||
presented.
|
||||
|
||||
dxtex [infilename] [-a alphaname] [-m] [DXT1|DXT2|DXT3|DXT4|DXT5] [outfilename]
|
||||
|
||||
infilename: The name of the file to load. This can be a BMP or
|
||||
DDS file.
|
||||
|
||||
-a alphaname: If "-a" is specified, the next parameter is the name
|
||||
of a BMP file to load as the alpha channel. Note:
|
||||
if no alpha filename is specified, DxTex will still
|
||||
look for a file named infilename_a.bmp and, if it
|
||||
exists, use that as the alpha channel.
|
||||
|
||||
-m: If this option is specified, mipmaps are generated.
|
||||
|
||||
DXT1|DXT2|DXT3|DXT4|DXT5: Specifies compression format. If no format is
|
||||
specified, the image will be in ARGB-8888.
|
||||
|
||||
outfilename: Specifies the name of the destination file. If this
|
||||
is not specified, the user interface will show the
|
||||
current file and all requested operations. If an
|
||||
outfilename is specified, the app will exit after
|
||||
saving the processed file without presenting a user
|
||||
interface.
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,24 +0,0 @@
|
|||
SUPPLEMENTAL END USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE
|
||||
|
||||
IMPORTANT: READ CAREFULLY - The Microsoft Corporation ("Microsoft") operating system components which you are about to install, including any "online" or electronic documentation ("OS COMPONENTS"), are subject to the terms and conditions of the agreement under which you have validly licensed the applicable Microsoft operating system product identified below (each an "End User License Agreement" or "EULA") and the terms and conditions of this Supplemental EULA. BY INSTALLING, COPYING OR OTHERWISE USING THE OS COMPONENTS, YOU AGREE TO BE BOUND BY THE TERMS AND CONDITIONS OF THE EULA FOR THE APPLICABLE OPERATING SYSTEM PRODUCT IDENTIFIED BELOW AND THIS SUPPLEMENTAL EULA. IF YOU DO NOT AGREE TO THESE TERMS AND CONDITIONS, DO NOT INSTALL, COPY OR USE THE OS COMPONENTS.
|
||||
|
||||
NOTE: IF YOU DO NOT HAVE A VALID EULA FOR EITHER MICROSOFT WINDOWS 95, WINDOWS 98, WINDOWS ME, OR WINDOWS 2000, (each an "OS Product"), YOU ARE NOT AUTHORIZED TO INSTALL, COPY OR OTHERWISE USE THE OS COMPONENTS AND YOU HAVE NO RIGHTS UNDER THIS SUPPLEMENTAL EULA.
|
||||
|
||||
Capitalized terms used in this Supplemental EULA and not otherwise defined herein shall have the meanings assigned to them in the applicable OS Product EULA.
|
||||
|
||||
General. The OS COMPONENTS are provided to you by Microsoft to update, supplement, or replace existing functionality of the applicable OS Product. Microsoft grants you a license to use the OS COMPONENTS under the terms and conditions of the EULA for the applicable OS Product (which is hereby incorporated by reference) and the terms and conditions set forth in this Supplemental EULA, provided that you comply with all such terms and conditions. To the extent that any terms in this Supplemental EULA conflict with terms in the applicable OS Product EULA, the terms of this Supplemental EULA control solely with respect to the OS COMPONENTS.
|
||||
|
||||
Additional Rights and Limitations.
|
||||
|
||||
* If you have multiple validly licensed copies of the applicable OS Product(s), you may reproduce, install and use one copy of the OS COMPONENTS as part of such OS Product on each of your computers running validly licensed copies of such OS Product(s) provided that you use such additional copies of the OS COMPONENTS in accordance with the terms and conditions above. For each validly licensed copy of an applicable OS Product, you also may reproduce one additional copy of the OS COMPONENTS solely for archival purposes or reinstallation of the OS COMPONENTS on the same computer as the OS COMPONENTS were previously installed. Microsoft retains all right, title and interest in and to the OS COMPONENTS. All rights not expressly granted are reserved by Microsoft.
|
||||
|
||||
IF THE OS PRODUCT WAS LICENSED TO YOU BY MICROSOFT OR ANY OF ITS WHOLLY OWNED SUBSIDIARIES, THE LIMITED WARRANTY (IF ANY) INCLUDED IN THE OS PRODUCT EULA APPLIES TO THE OS COMPONENTS PROVIDED THE OS COMPONENTS HAVE BEEN LICENSED BY YOU WITHIN THE TERM OF THE LIMITED WARRANTY IN THE OS PRODUCT EULA. HOWEVER, THIS SUPPLEMENTAL EULA DOES NOT EXTEND THE TIME PERIOD FOR WHICH THE LIMITED WARRANTY IS PROVIDED.
|
||||
|
||||
IF THE OS PRODUCT WAS LICENSED TO YOU BY AN ENTITY OTHER THAN MICROSOFT OR ANY OF ITS WHOLLY OWNED SUBSIDIARIES, MICROSOFT DISCLAIMS ALL WARRANTIES WITH RESPECT TO THE OS COMPONENTS AS FOLLOWS:
|
||||
|
||||
DISCLAIMER OF WARRANTIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND ITS SUPPLIERS PROVIDE TO YOU THE OS COMPONENTS, AND ANY (IF ANY) SUPPORT SERVICES RELATED TO THE OS COMPONENTS ("SUPPORT SERVICES") AS IS AND WITH ALL FAULTS; AND MICROSOFT AND ITS SUPPLIERS HEREBY DISCLAIM WITH RESPECT TO THE OS COMPONENTS AND SUPPORT SERVICES ALL WARRANTIES AND CONDITIONS, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) WARRANTIES OR CONDITIONS OF OR RELATED TO: TITLE, NON-INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, LACK OF VIRUSES, ACCURACY OR COMPLETENESS OF RESPONSES, RESULTS, LACK OF NEGLIGENCE OR LACK OF WORKMANLIKE EFFORT, QUIET ENJOYMENT, QUIET POSSESSION, AND CORRESPONDENCE TO DESCRIPTION. THE ENTIRE RISK ARISING OUT OF USE OR PERFORMANCE OF THE OS COMPONENTS AND ANY SUPPORT SERVICES REMAINS WITH YOU.
|
||||
|
||||
EXCLUSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR: LOSS OF PROFITS, LOSS OF CONFIDENTIAL OR OTHER INFORMATION, BUSINESS INTERRUPTION, PERSONAL INJURY, LOSS OF PRIVACY, FAILURE TO MEET ANY DUTY (INCLUDING OF GOOD FAITH OR OF REASONABLE CARE), NEGLIGENCE, AND ANY OTHER PECUNIARY OR OTHER LOSS WHATSOEVER) ARISING OUT OF OR IN ANY WAY RELATED TO THE USE OF OR INABILITY TO USE THE OS COMPONENTS OR THE SUPPORT SERVICES, OR THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, OR OTHERWISE UNDER OR IN CONNECTION WITH ANY PROVISION OF THIS SUPPLEMENTAL EULA, EVEN IN THE EVENT OF THE FAULT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF CONTRACT OR BREACH OF WARRANTY OF MICROSOFT OR ANY SUPPLIER, AND EVEN IF MICROSOFT OR ANY SUPPLIER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
LIMITATION OF LIABILITY AND REMEDIES. NOTWITHSTANDING ANY DAMAGES THAT YOU MIGHT INCUR FOR ANY REASON WHATSOEVER (INCLUDING, WITHOUT LIMITATION, ALL DAMAGES REFERENCED ABOVE AND ALL DIRECT OR GENERAL DAMAGES), THE ENTIRE LIABILITY OF MICROSOFT AND ANY OF ITS SUPPLIERS UNDER ANY PROVISION OF THIS SUPPLEMENTAL EULA AND YOUR EXCLUSIVE REMEDY FOR ALL OF THE FOREGOING SHALL BE LIMITED TO THE GREATER OF THE AMOUNT ACTUALLY PAID BY YOU FOR THE OS COMPONENTS OR U.S.$5.00. THE FOREGOING LIMITATIONS, EXCLUSIONS AND DISCLAIMERS SHALL APPLY TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, EVEN IF ANY REMEDY FAILS ITS ESSENTIAL PURPOSE.
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
|
||||
Microsoft DirectX 8.0 Software Development Kit
|
||||
END-USER LICENSE AGREEMENT FOR MICROSOFT SOFTWARE
|
||||
|
||||
IMPORTANT-READ CAREFULLY: This End-User License Agreement ("EULA") is a legal agreement between you (either an individual or a single entity) and Microsoft Corporation ("Microsoft") for the Microsoft software product identified above, which includes computer software and may include associated media and printed materials, and "online" or electronic documentation ("SOFTWARE PRODUCT). The SOFTWARE PRODUCT provided to you by Microsoft. Any software provided along with the SOFTWARE PRODUCT that is associated with a separate end-user license agreement is licensed to you under the terms of that license agreement. You agree to be bound by the terms of this EULA by installing, copying, downloading, accessing or otherwise using the SOFTWARE PRODUCT. If you do not agree to the terms of this EULA, do not install or use the SOFTWARE PRODUCT.
|
||||
|
||||
SOFTWARE PRODUCT LICENSE
|
||||
|
||||
The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The SOFTWARE PRODUCT is licensed, not sold.
|
||||
|
||||
1.GRANT OF LICENSE.
|
||||
|
||||
Microsoft grants you the following rights provided that you comply with all the terms and conditions of this EULA:
|
||||
|
||||
SOFTWARE PRODUCT. You may install and use the SOFTWARE PRODUCT on up to ten (10) computers, including workstations, terminals or other digital electronic devices ("COMPUTERS"), provided that you are the only individual using the SOFTWARE PRODUCT on each COMPUTER, to design, develop, and test software application products for use with Microsoft operating system products including Windows 2000, Windows 95, Windows 98 and Windows Me and subsequent releases thereto ("Application"). If you are an entity, Microsoft grants you the right to designate one individual within your organization to have the right to use the SOFTWARE PRODUCT in the manner provided above.
|
||||
|
||||
SAMPLE CODE. You may modify the sample source code located in the SOFTWARE PRODUCT's <Release Image> root directory "<Release Image>\DXF\Samples\Multimedia"("Sample Code") to design, develop and test your Application. You may also reproduce and distribute the Sample Code in object code form along with any modifications you make to the Sample Code, provided that you comply with the Distribution Requirements described below. For purposes of this Section, "modifications" shall mean enhancements to the functionality of the Sample Code.
|
||||
|
||||
REDISTRIBUTABLE CODE. Portions of the SOFTWARE PRODUCT are designated as "Redistributable Code". If you choose to distribute the Redistributable Code, you must include the files as specified listed in the SOFTWARE PRODUCTS <Release Image> root directory "<Release Image>\DXF\doc\directxeulas\directx redist.txt". No other modifications, additions, or deletions to the Redistributable Code are permitted without written permission from Microsoft Corporation. Your rights to distribute the Redistributable Code are subject to the Distribution Requirements described below.
|
||||
|
||||
DISTRIBUTION REQUIREMENTS. You may reproduce and distribute an unlimited number of copies of the Sample Code and/or Redistributable Code, (collectively "REDISTRIBUTABLE COMPONENTS")as described above, provided that (a) you distribute the REDISTRIBUTABLE COMPONENTS only as part of, or for use in conjunction with your Application; (b) your Application adds significant and primary functionality to the REDISTRIBUTABLE COMPONENTS; (c) the REDISTRIBUTABLE COMPONENTS only operate in conjunction with Microsoft Windows operating system products including Windows 2000, Windows 95, Windows 98, Windows Me, and subsequent versions thereof, (d) you distribute your Application containing the REDISTRIBUTABLE COMPONENTS pursuant to an End-User License Agreement (which may be "break-the-seal", "click-wrap", or signed), with terms no less protective than those contained herein; (e) you do not permit further redistribution of the REDISTRIBUTABLE COMPONENTS by your end-user customers; (f) you must use the setup utility included with the REDISTRIBUTABLE COMPONENTS to install the Redistributable Code; (g) you do not use Microsoft's name, logo, or trademarks to market your Application; (h) you include all copyright and trademark notices contained in the REDISTRIBUTABLE COMPONENTS; (i) you include a valid copyright notice on your Application; and (j) you agree to indemnify, hold harmless, and defend Microsoft from any against any claims or lawsuits, including attorneys' feeds, that arise or result from the use or distribution of your Application.
|
||||
|
||||
If you distribute the Redistributable Code separately for use with your Application (such as on your web site or as part of an update to your Application), you must include an end user license agreement in the install program for the Redistributable Code in the form of <Release Image>\license\directx end user eula.txt. Contact Microsoft for the applicable royalties due and other licensing terms for all other uses and/or distribution of the REDISTRIBUTABLE COMPONENTS.
|
||||
|
||||
2. COPYRIGHT.
|
||||
|
||||
All title and intellectual property rights in and to the SOFTWARE PRODUCT (including but not limited to any images, photographs, animations, video, audio, music, text and "applets," incorporated into the SOFTWARE PRODUCT), any accompanying printed materials, and any copies of the SOFTWARE PRODUCT, are owned by Microsoft or its suppliers. All title and intellectual property rights in and to the content which may by accessed through use of the SOFTWARE PRODUCT is the property of the respective content owner and may be protected by applicable copyright or other intellectual property laws and treaties . This EULA grants you no rights to use such content. If this SOFTWARE PRODUCT contains documentation which is provided only in electronic form, you may print one copy of such electronic documentation. You may not copy the printed materials accompanying the SOFTWARE PRODUCT. All rights not expressly granted are reserved by Microsoft.
|
||||
|
||||
3. DESCRIPTION OF OTHER RIGHTS AND LIMITATIONS.
|
||||
|
||||
a. Limitations on Reverse Engineering, Decompilation and Disassembly. You may not reverse engineer, decompile, or disassemble the SOFTWARE PRODUCT, except and only to the extent that such activity is expressly permitted by applicable law notwithstanding this limitation.
|
||||
|
||||
b. Rental. You may not rent, lease or lend the SOFTWARE PRODUCT.
|
||||
|
||||
c. Support Services. Microsoft may provide you with support services related to the SOFTWARE PRODUCT ("Support Services"). Use of the Support Services is governed by the Microsoft policies and programs described in the user manual, in "on line" documentation and/or other Microsoft-provided materials. Any supplemental software code provided to you as part of the Support Services shall be considered part of the SOFTWARE PRODUCT and subject to the terms and conditions of this EULA. With respect to technical information you provide to Microsoft as part of the Support Services, Microsoft may use such information for its business purposes, including for product support and development. Microsoft will not utilize such technical information in a form that personally identifies you.
|
||||
|
||||
d. Software Transfer. The initial user of the SOFTWARE PRODUCT may make a one-time permanent transfer of this EULA and SOFTWARE PRODUCT only directly to an end-user. This transfer must include all of the SOFTWARE PRODUCT (including all component parts, the media and printed materials, any upgrades, this EULA, and, if applicable, the Certificate of Authenticity). Such transfer may not be by way of consignment or any other indirect transfer. The transferee of such one-time transfer must agree to comply with the terms of this EULA, including the obligation not to further transfer this EULA and SOFTWARE PRODUCT.
|
||||
|
||||
e. Termination. Without prejudice to any other rights, Microsoft may cancel this EULA if you do not abide with the terms and conditions of this EULA, in which case, you must cease all use or distribution and destroy all copies of the SOFTWARE PRODUCT and all of its component parts.
|
||||
|
||||
4. U.S. GOVERNMENT RESTRICTED RIGHTS.
|
||||
All SOFTWARE PRODUCT provided to the U.S. Government pursuant to solicitations issued on or after December 1, 1995 is provided with the commercial license rights and restrictions described elsewhere herein. All SOFTWARE PRODUCT provided to the U.S. Government pursuant to solicitations issued prior to December 1, 1995 is provided with "Restricted Rights" as provided for in FAR, 48 CFR 52.227-14 (JUNE 1987) or DFAR, 48 CFR 252.227-7013 (OCT 1988), as applicable. The reseller is responsible for ensuring SOFTWARE PRODUCT is marked with the "Restricted Rights Notice" or "Restricted Rights Legend", as required. All rights not expressly granted are reserved.
|
||||
|
||||
5. EXPORT RESTRICTIONS.
|
||||
You acknowledge that the SOFTWARE PRODUCT is of U.S.-origin. You agree to comply with all applicable international and national laws that apply to these products, including the U.S. Export Administration Regulations, as well as end-user, end-use and country destination restrictions issued by U.S. and other governments. For additional information see http://www.microsoft.com/exporting/.
|
||||
6. DISCLAIMER OF WARRANTIES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND ITS SUPPLIERS PROVIDE TO YOU THE SOFTWARE PRODUCT AND SUPPORT SERVICES (IF ANY) AS IS AND WITH ALL FAULTS; AND HEREBY DISCLAIM ALL OTHER WARRANTIES AND CONDITIONS, EITHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, ANY (IF ANY) WARRANTIES OR CONDITIONS OF MERCHANTABILITY, OF FITNESS FOR A PARTICULAR PURPOSE, OF LACK OF VIRUSES, OF ACCURACY OR COMPLETENESS OF RESPONSES, OF RESULTS, AND OF LACK OF NEGLIGENCE OR LACK OF WORKMANLIKE EFFORT, ALL WITH REGARD TO THE SOFTWARE PRODUCT, AND THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES. ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION, AND CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT WITH REGARD TO THE SOFTWARE PRODUCT.
|
||||
|
||||
7. EXCULSION OF INCIDENTAL, CONSEQUENTIAL AND CERTAIN OTHER DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR LOSS OF BUSINESS PROFITS OR CONFIDENTIAL OR OTHER INFORMATION, FOR BUSINESS INTERRUPTION, FOR PERSONAL INJURY, FOR LOSS OF PRIVACY, FOR FAILURE TO MEET ANY DUTY (INCLUDING OF GOOD FAITH OR OF REASONABLE CARE), FOR NEGLIGENCE, AND FOR ANY OTHER PECUNIARY OR OTHER LOSS WHATSOEVER) ARISING OUT OF OR IN ANY WAY RELATED TO THE USE OF OR INABILITY TO USE THE SOFTWARE PRODUCT, THE PROVISION OF OR FAILURE TO PROVIDE SUPPORT SERVICES, OR OTHERWISE UNDER OR IN CONNECTION WITH ANY PROVISION OF THIS EULA, EVEN IN THE EVENT OF THE FAULT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, BREACH OF CONTRACT OR BREACH OF WARRANTY OF MICROSOFT OR ANY SUPPLIER, AND EVEN IF MICROSOFT OR ANY SUPPLIER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
8. LIMITATION OF LIABILITY AND REMEDIES. NOTWITHSTANDING ANY DAMAGES THAT YOU MIGHT INCUR FOR ANY REASON WHATSOEVER (INCLUDING, WITHOUT LIMITATION, ALL DAMAGES REFERENCED ABOVE AND ALL DIRECT OR GENERAL DAMAGES), THE ENTIRE LIABILITY OF MICROSOFT AND ANY OF ITS SUPPLIERS UNDER ANY PROVISION OF THIS EULA AND YOUR EXCLUSIVE REMEDY FOR ALL OF THE FOREGOING SHALL BE LIMITED TO THE GREATER OF THE AMOUNT ACTUALLY PAID BY YOU FOR THE SOFTWARE PRODUCT OR U.S.$5.00. THE FOREGOING LIMITATIONS, EXCLUSIONS AND DISCLAIMERS DESCRIBED ABOVE SHALL APPLY TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, EVEN IF ANY REMEDY FAILS ITS ESSENTIAL PURPOSE.
|
||||
|
||||
9. APPLICABLE LAW. If you acquired this SOFTWARE PRODCUT in the United States, this EULA is governed by the laws of the State of Washington.
|
||||
|
||||
If you acquired this SOFTWARE PRODUCT in Canada, this EULA is governed by the laws of the Province of Ontario, Canada. Each of the parties hereto irrevocably attorns to the jurisdiction of the courts of the Province of Ontario and further agrees to commence any litigation which may arise hereunder in the courts located in the Judicial District of York, Province of Ontario.
|
||||
|
||||
If this product was acquired outside the United States, then local law may apply.
|
||||
10. QUESTIONS? Should you have any questions concerning this Agreement, or if you desire to contact Microsoft for any reason, please contact the Microsoft subsidiary serving your country, or write: Microsoft Sales Information Center/One Microsoft Way/Redmond, WA 98052-6399.
|
||||
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
DirectX Software Development Kit Redistributable Code
|
||||
-------------------------------------------------------------
|
||||
Redistributable Code is identified as all of the files in the following
|
||||
directory on the DirectX 8.0 SDK CD:
|
||||
|
||||
redist/directx8/
|
||||
|
||||
All files in the above directory must be included in any distribution of
|
||||
the DirectX 8.0 Redistributable Code with the exception of the Broadcast
|
||||
Driver Architecture cab files:
|
||||
|
||||
bda.cab
|
||||
bdant.cab
|
||||
|
||||
Both of which are considered optional DirectX 8.0 redistributable
|
||||
components and can be removed from your distribution of the DirectX
|
||||
8.0 redistributable components.
|
||||
|
||||
|
|
@ -1,78 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DShow.h
|
||||
//
|
||||
// Desc: DirectShow top-level include file
|
||||
//
|
||||
// Copyright (c) 2000-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
#ifndef __DSHOW_INCLUDED__
|
||||
#define __DSHOW_INCLUDED__
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Set up constants & pragmas for the compiler
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#ifdef _MSC_VER
|
||||
// disable some level-4 warnings, use #pragma warning(default:###) to re-enable
|
||||
#pragma warning(disable:4100) // warning C4100: unreferenced formal parameter
|
||||
#pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
|
||||
#pragma warning(disable:4511) // warning C4511: copy constructor could not be generated
|
||||
#pragma warning(disable:4512) // warning C4512: assignment operator could not be generated
|
||||
#pragma warning(disable:4514) // warning C4514: "unreferenced inline function has been removed"
|
||||
|
||||
#if _MSC_VER>=1100
|
||||
#define AM_NOVTABLE __declspec(novtable)
|
||||
#else
|
||||
#define AM_NOVTABLE
|
||||
#endif
|
||||
#endif // MSC_VER
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Include standard Windows files
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#include <windows.h>
|
||||
#include <windowsx.h>
|
||||
#include <olectl.h>
|
||||
#include <ddraw.h>
|
||||
#include <mmsystem.h>
|
||||
|
||||
#ifndef NUMELMS
|
||||
#define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
|
||||
#endif
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Include DirectShow include files
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#include <strmif.h> // Generated IDL header file for streams interfaces
|
||||
#include <amvideo.h> // ActiveMovie video interfaces and definitions
|
||||
#include <amaudio.h> // ActiveMovie audio interfaces and definitions
|
||||
#include <control.h> // generated from control.odl
|
||||
#include <evcode.h> // event code definitions
|
||||
#include <uuids.h> // declaration of type GUIDs and well-known clsids
|
||||
#include <errors.h> // HRESULT status and error definitions
|
||||
#include <edevdefs.h> // External device control interface defines
|
||||
#include <audevcod.h> // audio filter device error event codes
|
||||
#include <dvdevcod.h> // DVD error event codes
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Define OLE Automation constants
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
#ifndef OATRUE
|
||||
#define OATRUE (-1)
|
||||
#endif // OATRUE
|
||||
#ifndef OAFALSE
|
||||
#define OAFALSE (0)
|
||||
#endif // OAFALSE
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Define Win64 interfaces if not already defined
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// InterlockedExchangePointer
|
||||
#ifndef InterlockedExchangePointer
|
||||
#define InterlockedExchangePointer(Target, Value) \
|
||||
(PVOID)InterlockedExchange((PLONG)(Target), (LONG)(Value))
|
||||
#endif
|
||||
|
||||
|
||||
#endif // __DSHOW_INCLUDED__
|
|
@ -1,336 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMStream.idl
|
||||
//
|
||||
// Desc:
|
||||
//
|
||||
// Copyright (c) 1998-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "mmstream.idl";
|
||||
import "strmif.idl";
|
||||
|
||||
cpp_quote("#include <ddraw.h>")
|
||||
cpp_quote("#include <mmsystem.h>")
|
||||
cpp_quote("#include <mmstream.h>")
|
||||
cpp_quote("#include <ddstream.h>")
|
||||
cpp_quote("#include <austream.h>")
|
||||
|
||||
|
||||
|
||||
interface IAMMultiMediaStream;
|
||||
interface IAMMediaStream;
|
||||
interface IMediaStreamFilter;
|
||||
interface IDirectDraw;
|
||||
interface IDirectDrawSurface;
|
||||
interface IAMMediaTypeStream;
|
||||
interface IAMMediaTypeSample;
|
||||
|
||||
// Flags definitions for IAMMultiMediaStream::Initialize
|
||||
enum {
|
||||
AMMSF_NOGRAPHTHREAD = 0x00000001
|
||||
};
|
||||
|
||||
// Flags definitions for AddMediaStream and IAMMediaStream::Initialize
|
||||
enum {
|
||||
// Don't add a stream - create a default renderer instead
|
||||
// for the supplied purpose id
|
||||
AMMSF_ADDDEFAULTRENDERER = 0x00000001,
|
||||
AMMSF_CREATEPEER = 0x00000002,
|
||||
|
||||
// If no samples are created when we run or the last sample
|
||||
// is deleted then terminate this stream
|
||||
AMMSF_STOPIFNOSAMPLES = 0x00000004,
|
||||
|
||||
// If Update is not called keep going
|
||||
AMMSF_NOSTALL = 0x00000008
|
||||
};
|
||||
|
||||
|
||||
// Flag definitions for OpenFile and OpenMoniker
|
||||
enum {
|
||||
AMMSF_RENDERTYPEMASK = 0x00000003,
|
||||
AMMSF_RENDERTOEXISTING = 0x00000000,
|
||||
AMMSF_RENDERALLSTREAMS = 0x00000001,
|
||||
AMMSF_NORENDER = 0x00000002,
|
||||
|
||||
AMMSF_NOCLOCK = 0x00000004,
|
||||
AMMSF_RUN = 0x00000008
|
||||
};
|
||||
|
||||
|
||||
typedef [v1_enum] enum {
|
||||
Disabled = 0,
|
||||
ReadData = 1,
|
||||
RenderData = 2
|
||||
} OUTPUT_STATE;
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(7DB01C96-C0C3-11d0-8FF1-00C04FD9189D),
|
||||
dual,
|
||||
helpstring("IDirectShowStream Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDirectShowStream : IDispatch
|
||||
{
|
||||
[propget, id(1), helpstring("property FileName")] HRESULT FileName([out, retval] BSTR *pVal);
|
||||
[propput, id(1), helpstring("property FileName")] HRESULT FileName([in] BSTR newVal);
|
||||
[propget, id(2), helpstring("property Video")] HRESULT Video([out, retval] OUTPUT_STATE *pVal);
|
||||
[propput, id(2), helpstring("propetry Video")] HRESULT Video([in] OUTPUT_STATE newVal);
|
||||
[propget, id(3), helpstring("property Audio")] HRESULT Audio([out, retval] OUTPUT_STATE *pVal);
|
||||
[propput, id(3), helpstring("propetry Audio")] HRESULT Audio([in] OUTPUT_STATE newVal);
|
||||
};
|
||||
|
||||
|
||||
// IAMMultiMediaStream interface
|
||||
[
|
||||
object,
|
||||
uuid(BEBE595C-9A6F-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMMultiMediaStream : IMultiMediaStream
|
||||
{
|
||||
HRESULT Initialize(
|
||||
[in] STREAM_TYPE StreamType,
|
||||
[in] DWORD dwFlags,
|
||||
[in] IGraphBuilder *pFilterGraph);
|
||||
|
||||
HRESULT GetFilterGraph(
|
||||
[out] IGraphBuilder **ppGraphBuilder);
|
||||
|
||||
HRESULT GetFilter(
|
||||
[out] IMediaStreamFilter **ppFilter);
|
||||
|
||||
HRESULT AddMediaStream(
|
||||
[in] IUnknown *pStreamObject,
|
||||
[in] const MSPID *PurposeId,
|
||||
[in] DWORD dwFlags,
|
||||
[out] IMediaStream **ppNewStream);
|
||||
|
||||
HRESULT OpenFile(
|
||||
[in] LPCWSTR pszFileName,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT OpenMoniker(
|
||||
[in] IBindCtx *pCtx,
|
||||
[in] IMoniker *pMoniker,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT Render(
|
||||
[in] DWORD dwFlags);
|
||||
}
|
||||
|
||||
|
||||
// IAMMediaStream interface
|
||||
[
|
||||
object,
|
||||
uuid(BEBE595D-9A6F-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMMediaStream : IMediaStream
|
||||
{
|
||||
HRESULT Initialize(
|
||||
[in] IUnknown *pSourceObject,
|
||||
[in] DWORD dwFlags,
|
||||
[in] REFMSPID PurposeId,
|
||||
[in] const STREAM_TYPE StreamType);
|
||||
|
||||
HRESULT SetState(
|
||||
[in] FILTER_STATE State);
|
||||
|
||||
HRESULT JoinAMMultiMediaStream(
|
||||
[in] IAMMultiMediaStream *pAMMultiMediaStream);
|
||||
|
||||
HRESULT JoinFilter(
|
||||
[in] IMediaStreamFilter *pMediaStreamFilter);
|
||||
|
||||
HRESULT JoinFilterGraph(
|
||||
[in] IFilterGraph *pFilterGraph);
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
// IMediaStreamFilter interface
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(BEBE595E-9A6F-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IMediaStreamFilter : IBaseFilter
|
||||
{
|
||||
HRESULT AddMediaStream(
|
||||
[in] IAMMediaStream *pAMMediaStream);
|
||||
|
||||
HRESULT GetMediaStream(
|
||||
[in] REFMSPID idPurpose,
|
||||
[out] IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT EnumMediaStreams(
|
||||
[in] long Index,
|
||||
[out] IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT SupportSeeking(
|
||||
[in] BOOL bRenderer);
|
||||
|
||||
HRESULT ReferenceTimeToStreamTime(
|
||||
[in] [out] REFERENCE_TIME *pTime);
|
||||
|
||||
HRESULT GetCurrentStreamTime(
|
||||
[out] REFERENCE_TIME *pCurrentStreamTime);
|
||||
|
||||
HRESULT WaitUntil(
|
||||
[in] REFERENCE_TIME WaitStreamTime);
|
||||
|
||||
HRESULT Flush(
|
||||
[in] BOOL bCancelEOS);
|
||||
|
||||
HRESULT EndOfStream();
|
||||
};
|
||||
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(AB6B4AFC-F6E4-11d0-900D-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDirectDrawMediaSampleAllocator : IUnknown
|
||||
{
|
||||
HRESULT GetDirectDraw(IDirectDraw **ppDirectDraw);
|
||||
};
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(AB6B4AFE-F6E4-11d0-900D-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDirectDrawMediaSample : IUnknown
|
||||
{
|
||||
HRESULT GetSurfaceAndReleaseLock(
|
||||
[out] IDirectDrawSurface **ppDirectDrawSurface,
|
||||
[out] RECT * pRect);
|
||||
HRESULT LockMediaSamplePointer(void);
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(AB6B4AFA-F6E4-11d0-900D-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
|
||||
interface IAMMediaTypeStream : IMediaStream
|
||||
{
|
||||
HRESULT GetFormat(
|
||||
[out] AM_MEDIA_TYPE * pMediaType,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT SetFormat(
|
||||
[in] AM_MEDIA_TYPE * pMediaType,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT CreateSample(
|
||||
[in] long lSampleSize,
|
||||
[in] BYTE * pbBuffer,
|
||||
[in] DWORD dwFlags,
|
||||
[in] IUnknown *pUnkOuter,
|
||||
[out] IAMMediaTypeSample ** ppAMMediaTypeSample);
|
||||
|
||||
HRESULT GetStreamAllocatorRequirements(
|
||||
[out] ALLOCATOR_PROPERTIES *pProps);
|
||||
|
||||
HRESULT SetStreamAllocatorRequirements(
|
||||
[in] ALLOCATOR_PROPERTIES *pProps);
|
||||
};
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(AB6B4AFB-F6E4-11d0-900D-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMMediaTypeSample : IStreamSample
|
||||
{
|
||||
//
|
||||
// Unique methods for IAMMediaTypeSample
|
||||
//
|
||||
HRESULT SetPointer([in] BYTE *pBuffer, [in] long lSize);
|
||||
|
||||
//
|
||||
// Mirror of IMediaSample
|
||||
//
|
||||
HRESULT GetPointer([out] BYTE ** ppBuffer);
|
||||
long GetSize(void);
|
||||
HRESULT GetTime([out] REFERENCE_TIME * pTimeStart, [out] REFERENCE_TIME * pTimeEnd);
|
||||
HRESULT SetTime([in] REFERENCE_TIME * pTimeStart, [in] REFERENCE_TIME * pTimeEnd);
|
||||
HRESULT IsSyncPoint(void);
|
||||
HRESULT SetSyncPoint(BOOL bIsSyncPoint);
|
||||
HRESULT IsPreroll(void);
|
||||
HRESULT SetPreroll(BOOL bIsPreroll);
|
||||
long GetActualDataLength(void);
|
||||
HRESULT SetActualDataLength(long);
|
||||
HRESULT GetMediaType(AM_MEDIA_TYPE **ppMediaType);
|
||||
HRESULT SetMediaType(AM_MEDIA_TYPE *pMediaType);
|
||||
HRESULT IsDiscontinuity(void);
|
||||
HRESULT SetDiscontinuity(BOOL bDiscontinuity);
|
||||
HRESULT GetMediaTime([out] LONGLONG * pTimeStart, [out] LONGLONG * pTimeEnd);
|
||||
HRESULT SetMediaTime([in] LONGLONG * pTimeStart, [in] LONGLONG * pTimeEnd);
|
||||
};
|
||||
|
||||
|
||||
[
|
||||
uuid(4E6CDE29-C0C4-11d0-8FF1-00C04FD9189D),
|
||||
version(1.0),
|
||||
helpstring("DirectShowStream 1.0 Type Library")
|
||||
]
|
||||
|
||||
library DirectShowStreamLib
|
||||
{
|
||||
importlib("stdole32.tlb");
|
||||
importlib("stdole2.tlb");
|
||||
|
||||
[
|
||||
uuid(49c47ce5-9ba4-11d0-8212-00c04fc32c45),
|
||||
helpstring("DirectShow Multi Media Stream")
|
||||
]
|
||||
coclass AMMultiMediaStream
|
||||
{
|
||||
[default] dispinterface IDirectShowStream;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
|
||||
//
|
||||
// The MIDL compiler wants to produce a CLSID for everything defined in
|
||||
// our type library, but it also wants to generate huge proxy code,
|
||||
// so we use DEFINE_GUID for all other classes. It has another interesting
|
||||
// bug in that it defines CLSID_AMMultiMediaStream within a #ifdef __cplusplus
|
||||
// block, so we need to define it outside of that scope.
|
||||
//
|
||||
|
||||
cpp_quote("#ifndef __cplusplus")
|
||||
cpp_quote("EXTERN_C const CLSID CLSID_AMMultiMediaStream;")
|
||||
cpp_quote("#endif")
|
||||
|
||||
cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, /* 49c47ce4-9ba4-11d0-8212-00c04fc32c45 */")
|
||||
cpp_quote("0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
|
||||
cpp_quote("DEFINE_GUID(CLSID_AMAudioStream, /* 8496e040-af4c-11d0-8212-00c04fc32c45 */")
|
||||
cpp_quote("0x8496e040, 0xaf4c, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
|
||||
cpp_quote("DEFINE_GUID(CLSID_AMAudioData, /* f2468580-af8a-11d0-8212-00c04fc32c45 */")
|
||||
cpp_quote("0xf2468580, 0xaf8a, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);")
|
||||
cpp_quote("DEFINE_GUID(CLSID_AMMediaTypeStream, /* CF0F2F7C-F7BF-11d0-900D-00C04FD9189D */")
|
||||
cpp_quote("0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90, 0xd, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
|
|
@ -1,170 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMVPE.idl
|
||||
//
|
||||
// Desc:
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl"; // for IPersist (IFilter's root)
|
||||
|
||||
|
||||
/*
|
||||
* VIDOESIGNALINFO
|
||||
*/
|
||||
typedef struct _VIDEOSIGNALINFO
|
||||
{
|
||||
DWORD dwSize; // Size of the structure
|
||||
DWORD dwVREFHeight; // Specifies the number of lines of data in the vref
|
||||
BOOL bDoubleClock; // videoport should enable double clocking
|
||||
BOOL bVACT; // videoport should use an external VACT signal
|
||||
BOOL bInterlaced; // Indicates that the signal is interlaced
|
||||
BOOL bHalfline; // Device will write half lines into the frame buffer
|
||||
BOOL bInvertedPolarity; // Devoce inverts the polarity by default
|
||||
} AMVIDEOSIGNALINFO;
|
||||
|
||||
typedef struct AMVIDEOSIGNALINFO *LPAMVIDEOSIGNALINFO;
|
||||
|
||||
|
||||
interface IVPEConfig;
|
||||
interface IVPE;
|
||||
|
||||
|
||||
/*
|
||||
* DDVIDEOPORTCONNECT
|
||||
*/
|
||||
typedef struct _DDVIDEOPORTCONNECT
|
||||
{
|
||||
DWORD dwSize; // size of the DDVIDEOPORTCONNECT structure
|
||||
GUID guidTypeID; // Description of video port connection
|
||||
DWORD dwPortWidth; // Width of the video port
|
||||
DWORD dwFlags; // Connection flags
|
||||
} DDVIDEOPORTCONNECT;
|
||||
|
||||
typedef DDVIDEOPORTCONNECT *LPDDVIDEOPORTCONNECT;
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* DDPIXELFORMAT
|
||||
*/
|
||||
typedef struct _DDPIXELFORMAT
|
||||
{
|
||||
DWORD dwSize; // size of structure
|
||||
DWORD dwFlags; // pixel format flags
|
||||
DWORD dwFourCC; // (FOURCC code)
|
||||
union
|
||||
{
|
||||
DWORD dwRGBBitCount; // how many bits per pixel (BD_1,2,4,8,16,24,32)
|
||||
DWORD dwYUVBitCount; // how many bits per pixel (BD_4,8,16,24,32)
|
||||
DWORD dwZBufferBitDepth; // how many bits for z buffers (BD_8,16,24,32)
|
||||
DWORD dwAlphaBitDepth; // how many bits for alpha channels (BD_1,2,4,8)
|
||||
};
|
||||
union
|
||||
{
|
||||
DWORD dwRBitMask; // mask for red bit
|
||||
DWORD dwYBitMask; // mask for Y bits
|
||||
};
|
||||
union
|
||||
{
|
||||
DWORD dwGBitMask; // mask for green bits
|
||||
DWORD dwUBitMask; // mask for U bits
|
||||
};
|
||||
union
|
||||
{
|
||||
DWORD dwBBitMask; // mask for blue bits
|
||||
DWORD dwVBitMask; // mask for V bits
|
||||
};
|
||||
union
|
||||
{
|
||||
DWORD dwRGBAlphaBitMask; // mask for alpha channel
|
||||
DWORD dwYUVAlphaBitMask; // mask for alpha channel
|
||||
DWORD dwRGBZBitMask; // mask for Z channel
|
||||
DWORD dwYUVZBitMask; // mask for Z channel
|
||||
};
|
||||
} DDPIXELFORMAT;
|
||||
|
||||
typedef DDPIXELFORMAT * LPDDPIXELFORMAT;
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(BC29A660-30E3-11d0-9E69-00C04FD7C15B),
|
||||
pointer_default(unique)
|
||||
]
|
||||
|
||||
interface IVPEConfig : IUnknown {
|
||||
|
||||
// gets the various connection information structures (guid, portwidth)
|
||||
// in an array of structures. If the pointer to the array is NULL, first
|
||||
// parameter returns the total number of formats supported.
|
||||
HRESULT GetConnectInfo(
|
||||
[in,out] LPDWORD lpNumConnectInfo,
|
||||
[out] LPDDVIDEOPORTCONNECT lpddvpConnectInfo
|
||||
);
|
||||
|
||||
HRESULT SetConnectInfo(
|
||||
[in] DDVIDEOPORTCONNECT ddvpConnectInfo
|
||||
);
|
||||
|
||||
// gets the various formats supported by the decoder in an array
|
||||
// of structures. If the pointer to the array is NULL, first parameter
|
||||
// returns the total number of formats supported.
|
||||
HRESULT GetVideoFormats(
|
||||
[in,out] LPDWORD lpNumFormats,
|
||||
[out] LPDDPIXELFORMAT lpddpfFormats
|
||||
);
|
||||
|
||||
// retrives maximum pixels per second rate expected for a given
|
||||
// format and a given scaling factor. If decoder does not support
|
||||
// those scaling factors, then it gives the rate and the nearest
|
||||
// scaling factors.
|
||||
HRESULT GetMaxPixelRate(
|
||||
[in] DDPIXELFORMAT ddpfFormat,
|
||||
[in,out] LPDWORD lpdwZoomHeight,
|
||||
[in,out] LPDWORD lpdwZoomWidth,
|
||||
[out] LPDWORD lpdwMaxPixelsPerSecond
|
||||
);
|
||||
|
||||
// retrives various properties of the decoder for a given format
|
||||
HRESULT GetVideoSignalInfo(
|
||||
[in] DDPIXELFORMAT ddpfFormat,
|
||||
[out] LPAMVIDEOSIGNALINFO lpAMVideoSignalInfo
|
||||
);
|
||||
|
||||
// asks the decoder to ouput in this format. Return value should give
|
||||
// appropriate error code
|
||||
HRESULT SetVideoFormat(
|
||||
[in] DDPIXELFORMAT ddpfFormat
|
||||
);
|
||||
|
||||
// asks the decoder to treat even fields like odd fields and visa versa
|
||||
HRESULT SetInvertPolarity(
|
||||
);
|
||||
|
||||
// sets the scaling factors. If decoder does not support these,
|
||||
// then it sets the values to the nearest factors it can support
|
||||
HRESULT SetScalingFactors(
|
||||
[in,out] LPDWORD lpdwZoomHeight,
|
||||
[in,out] LPDWORD lpdwZoomWidth
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(BC29A661-30E3-11d0-9E69-00C04FD7C15B),
|
||||
pointer_default(unique)
|
||||
]
|
||||
|
||||
interface IVPE : IUnknown {
|
||||
HRESULT SetOverlaySurface(
|
||||
[in] LPUNKNOWN lpOverlaySurface,
|
||||
[in] INT iNumBackBuffers
|
||||
);
|
||||
|
||||
}
|
|
@ -1,106 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AuStream.idl
|
||||
//
|
||||
// Desc: Used by MIDL tool to generate austream.h
|
||||
//
|
||||
// Copyright (c) 1998-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "mmstream.idl";
|
||||
|
||||
cpp_quote("//")
|
||||
cpp_quote("// The following declarations within the 'if 0' block are dummy typedefs used to make")
|
||||
cpp_quote("// the ddstream.idl file build. The actual definitions are contained in DDRAW.H")
|
||||
cpp_quote("//")
|
||||
cpp_quote("#if 0")
|
||||
typedef struct tWAVEFORMATEX WAVEFORMATEX;
|
||||
cpp_quote ("#endif")
|
||||
|
||||
interface IAudioMediaStream;
|
||||
interface IAudioStreamSample;
|
||||
interface IMemoryData;
|
||||
interface IAudioData;
|
||||
|
||||
// IAudioMediaStream
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(f7537560-a3be-11d0-8212-00c04fc32c45),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAudioMediaStream : IMediaStream
|
||||
{
|
||||
|
||||
HRESULT GetFormat(
|
||||
[out] WAVEFORMATEX *pWaveFormatCurrent
|
||||
);
|
||||
|
||||
HRESULT SetFormat(
|
||||
[in] const WAVEFORMATEX *lpWaveFormat);
|
||||
|
||||
HRESULT CreateSample(
|
||||
[in] IAudioData *pAudioData,
|
||||
[in] DWORD dwFlags,
|
||||
[out] IAudioStreamSample **ppSample
|
||||
);
|
||||
}
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(345fee00-aba5-11d0-8212-00c04fc32c45),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAudioStreamSample : IStreamSample
|
||||
{
|
||||
HRESULT GetAudioData(
|
||||
[out] IAudioData **ppAudio
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(327fc560-af60-11d0-8212-00c04fc32c45),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IMemoryData : IUnknown
|
||||
{
|
||||
HRESULT SetBuffer(
|
||||
[in] DWORD cbSize,
|
||||
[in] BYTE *pbData,
|
||||
[in] DWORD dwFlags
|
||||
);
|
||||
|
||||
HRESULT GetInfo(
|
||||
[out] DWORD *pdwLength,
|
||||
[out] BYTE **ppbData,
|
||||
[out] DWORD *pcbActualData
|
||||
);
|
||||
HRESULT SetActual(
|
||||
[in] DWORD cbDataValid
|
||||
);
|
||||
}
|
||||
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(54c719c0-af60-11d0-8212-00c04fc32c45),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAudioData : IMemoryData
|
||||
{
|
||||
HRESULT GetFormat(
|
||||
[out] WAVEFORMATEX *pWaveFormatCurrent
|
||||
);
|
||||
|
||||
HRESULT SetFormat(
|
||||
[in] const WAVEFORMATEX *lpWaveFormat
|
||||
);
|
||||
}
|
||||
|
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
|
@ -1,909 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: Control.odl
|
||||
//
|
||||
// Desc:
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
// Neutral/English language type library for basic Quartz control interfaces
|
||||
|
||||
// the quartz type library defines the basic control interfaces
|
||||
[
|
||||
uuid(56a868b0-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("ActiveMovie control type library"),
|
||||
lcid(0x0000),
|
||||
version(1.0)
|
||||
]
|
||||
library QuartzTypeLib
|
||||
{
|
||||
importlib("STDOLE32.TLB");
|
||||
|
||||
// types are restricted to be automation-compatible
|
||||
typedef double REFTIME; // ReferenceTime
|
||||
typedef LONG_PTR OAEVENT; // should be a HANDLE
|
||||
typedef LONG_PTR OAHWND; // should be an hwnd
|
||||
|
||||
// from strmif.idl
|
||||
typedef long OAFilterState;
|
||||
|
||||
// collection interface - represents a collection of IUnknowns
|
||||
// this is used below to collect filter-info objects, registry-filters
|
||||
// pin-info objects and wrapped media type objects
|
||||
[
|
||||
uuid(56a868b9-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("Collection"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IAMCollection : IDispatch
|
||||
{
|
||||
// number of items in collection
|
||||
[propget]
|
||||
HRESULT Count(
|
||||
[out, retval] LONG* plCount);
|
||||
|
||||
// return IUnknown for contained item by index
|
||||
HRESULT Item(
|
||||
[in] long lItem,
|
||||
[out] IUnknown** ppUnk);
|
||||
|
||||
// return IUnknown for an object that implements IEnumVARIANT on
|
||||
// this collection
|
||||
[propget]
|
||||
HRESULT _NewEnum(
|
||||
[out, retval] IUnknown** ppUnk);
|
||||
}
|
||||
|
||||
|
||||
// core control providing state control
|
||||
[
|
||||
uuid(56a868b1-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IMediaControl interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IMediaControl : IDispatch
|
||||
{
|
||||
// methods
|
||||
HRESULT Run();
|
||||
HRESULT Pause();
|
||||
HRESULT Stop();
|
||||
|
||||
//returns the state. same semantics as IMediaFilter::GetState
|
||||
|
||||
HRESULT GetState(
|
||||
[in] LONG msTimeout,
|
||||
[out] OAFilterState* pfs);
|
||||
|
||||
// adds and connects filters needed to play the specified file
|
||||
// (same as IFilterGraph::RenderFile)
|
||||
HRESULT RenderFile(
|
||||
[in] BSTR strFilename);
|
||||
|
||||
// adds to the graph the source filter that can read this file,
|
||||
// and returns an IFilterInfo object for it (actually returns
|
||||
// an IDispatch for the IFilterInfo object).
|
||||
HRESULT AddSourceFilter(
|
||||
[in] BSTR strFilename,
|
||||
[out] IDispatch**ppUnk);
|
||||
|
||||
// get a collection of IFilterInfo objects representing the
|
||||
// filters in the graph (returns IDispatch for an object
|
||||
// that supports IAMCollection
|
||||
[propget]
|
||||
HRESULT FilterCollection(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
// get a collection of IRegFilter objects representing the
|
||||
// filters available in the registry
|
||||
[propget]
|
||||
HRESULT RegFilterCollection(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
HRESULT StopWhenReady();
|
||||
}
|
||||
|
||||
|
||||
// provides an event notification scheme passing events
|
||||
// asynchronously to applications. See also IMediaEventSink in
|
||||
// strmif.idl and sdk\h\evcodes.h.
|
||||
//
|
||||
// this interface behaves as if events are held on a queue. A call to
|
||||
// IMediaEventSink::Notify will place an event on this queue. Calling
|
||||
// GetEvent removes the first item off the queue and returns it. Items are
|
||||
// returned in the order they were queued (there is no priority scheme).
|
||||
// The event handle is in a signalled state iff the queue is non-empty.
|
||||
//
|
||||
// Apps that issue multiple Run calls without always picking up the
|
||||
// completion events are advised to call GetEvent or WaitForCompletion
|
||||
// (with a 0 timeout) repeatedly to remove all events from the queue
|
||||
// when in stopped or paused state before each Run method.
|
||||
//
|
||||
// Parameters to events are actually LONG, IUnknown* or BSTR. You need to
|
||||
// look at evcode.h for details of parameters to a specific event code.
|
||||
// In order to correctly free resources, always call FreeEventParams
|
||||
// after receiving an event.
|
||||
//
|
||||
|
||||
[
|
||||
uuid(56a868b6-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IMediaEvent interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IMediaEvent : IDispatch
|
||||
{
|
||||
// get back the event handle. This is manual-reset
|
||||
// (don't - it's reset by the event mechanism) and remains set
|
||||
// when events are queued, and reset when the queue is empty.
|
||||
HRESULT GetEventHandle(
|
||||
[out] OAEVENT * hEvent);
|
||||
|
||||
// remove the next event notification from the head of the queue and
|
||||
// return it. Waits up to msTimeout millisecs if there are no events.
|
||||
// if a timeout occurs without any events, this method will return
|
||||
// E_ABORT, and the value of the event code and other parameters
|
||||
// is undefined.
|
||||
//
|
||||
// If this call returns successfully the caller MUST call
|
||||
// FreeEventParams(lEventCode, lParam1, lParam2) to release
|
||||
// resources held inside the event arguments
|
||||
//
|
||||
HRESULT GetEvent(
|
||||
[out] long * lEventCode,
|
||||
[out] LONG_PTR * lParam1,
|
||||
[out] LONG_PTR * lParam2,
|
||||
[in] long msTimeout
|
||||
);
|
||||
|
||||
// Calls GetEvent repeatedly discarding events until it finds a
|
||||
// completion event (EC_COMPLETE, EC_ERRORABORT, or EC_USERABORT).
|
||||
// The completion event is removed from the queue and returned
|
||||
// in pEvCode. Note that the object is still in running mode until
|
||||
// a Pause or Stop call is made.
|
||||
// If the timeout occurs, *pEvCode will be 0 and E_ABORT will be
|
||||
// returned.
|
||||
HRESULT WaitForCompletion(
|
||||
[in] long msTimeout,
|
||||
[out] long * pEvCode);
|
||||
|
||||
// cancels any system handling of the specified event code
|
||||
// and ensures that the events are passed straight to the application
|
||||
// (via GetEvent) and not handled. A good example of this is
|
||||
// EC_REPAINT: default handling for this ensures the painting of the
|
||||
// window and does not get posted to the app.
|
||||
HRESULT CancelDefaultHandling(
|
||||
[in] long lEvCode);
|
||||
|
||||
// restore the normal system default handling that may have been
|
||||
// cancelled by CancelDefaultHandling().
|
||||
HRESULT RestoreDefaultHandling( [in] long lEvCode);
|
||||
|
||||
// Free any resources associated with the parameters to an event.
|
||||
// Event parameters may be LONGs, IUnknown* or BSTR. No action
|
||||
// is taken with LONGs. IUnknown are passed addrefed and need a
|
||||
// Release call. BSTR are allocated by the task allocator and will be
|
||||
// freed by calling the task allocator.
|
||||
HRESULT FreeEventParams(
|
||||
[in] long lEvCode,
|
||||
[in] LONG_PTR lParam1,
|
||||
[in] LONG_PTR lParam2
|
||||
);
|
||||
}
|
||||
|
||||
[
|
||||
uuid(56a868c0-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IMediaEventEx interface"),
|
||||
odl
|
||||
]
|
||||
interface IMediaEventEx : IMediaEvent
|
||||
{
|
||||
|
||||
// Register a window to send messages to when events occur
|
||||
// Parameters:
|
||||
//
|
||||
// hwnd - handle of window to notify -
|
||||
// pass NULL to stop notification
|
||||
// lMsg - Message id to pass messages with
|
||||
// lInstanceData - will come back in lParam
|
||||
//
|
||||
// The event information must still be retrived by a call
|
||||
// to GetEvent when the window message is received.
|
||||
//
|
||||
// Multiple events may be notified with one window message.
|
||||
//
|
||||
HRESULT SetNotifyWindow(
|
||||
[in] OAHWND hwnd,
|
||||
[in] long lMsg,
|
||||
[in] LONG_PTR lInstanceData
|
||||
);
|
||||
|
||||
// Turn events notification on or off
|
||||
// lNoNotify = 0x00 event notification is ON
|
||||
// lNoNotify = 0x01 event notification is OFF. The
|
||||
// handle returned by GetEventHandle will be signalled at
|
||||
// end of stream
|
||||
HRESULT SetNotifyFlags(
|
||||
[in] long lNoNotifyFlags
|
||||
);
|
||||
HRESULT GetNotifyFlags(
|
||||
[out] long *lplNoNotifyFlags
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// seek/cueing for positional media
|
||||
[
|
||||
uuid(56a868b2-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IMediaPosition interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IMediaPosition : IDispatch
|
||||
{
|
||||
// properties
|
||||
|
||||
[propget]
|
||||
HRESULT Duration(
|
||||
[out, retval] REFTIME* plength);
|
||||
|
||||
[propput]
|
||||
HRESULT CurrentPosition(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
[propget]
|
||||
HRESULT CurrentPosition(
|
||||
[out, retval] REFTIME* pllTime);
|
||||
|
||||
[propget]
|
||||
HRESULT StopTime(
|
||||
[out, retval] REFTIME* pllTime);
|
||||
[propput]
|
||||
HRESULT StopTime(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
[propget]
|
||||
HRESULT PrerollTime(
|
||||
[out, retval] REFTIME* pllTime);
|
||||
[propput]
|
||||
HRESULT PrerollTime(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
[propput]
|
||||
HRESULT Rate(
|
||||
[in] double dRate);
|
||||
[propget]
|
||||
HRESULT Rate(
|
||||
[out, retval] double * pdRate);
|
||||
|
||||
HRESULT CanSeekForward([out, retval] LONG *pCanSeekForward);
|
||||
HRESULT CanSeekBackward([out, retval] LONG *pCanSeekBackward);
|
||||
}
|
||||
|
||||
// basic audio-related functionality
|
||||
[
|
||||
uuid(56a868b3-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IBasicAudio interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IBasicAudio : IDispatch
|
||||
{
|
||||
// properties
|
||||
|
||||
[propput]
|
||||
HRESULT Volume(
|
||||
[in] long lVolume);
|
||||
[propget]
|
||||
HRESULT Volume(
|
||||
[out, retval] long * plVolume);
|
||||
|
||||
[propput]
|
||||
HRESULT Balance(
|
||||
[in] long lBalance);
|
||||
[propget]
|
||||
HRESULT Balance(
|
||||
[out, retval] long * plBalance);
|
||||
}
|
||||
|
||||
// basic window-related functionality
|
||||
[
|
||||
uuid(56a868b4-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IVideoWindow interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IVideoWindow : IDispatch
|
||||
{
|
||||
// properties
|
||||
|
||||
// set and get the window title caption
|
||||
|
||||
[propput]
|
||||
HRESULT Caption([in] BSTR strCaption);
|
||||
[propget]
|
||||
HRESULT Caption([out, retval] BSTR *strCaption);
|
||||
|
||||
// change the window styles (as per Win32)
|
||||
|
||||
[propput]
|
||||
HRESULT WindowStyle([in] long WindowStyle);
|
||||
[propget]
|
||||
HRESULT WindowStyle([out, retval] long *WindowStyle);
|
||||
|
||||
// change the extended window styles (as per Win32)
|
||||
|
||||
[propput]
|
||||
HRESULT WindowStyleEx([in] long WindowStyleEx);
|
||||
[propget]
|
||||
HRESULT WindowStyleEx([out, retval] long *WindowStyleEx);
|
||||
|
||||
[propput]
|
||||
HRESULT AutoShow([in] long AutoShow);
|
||||
[propget]
|
||||
HRESULT AutoShow([out, retval] long *AutoShow);
|
||||
|
||||
// change the window state (as per Win32)
|
||||
|
||||
[propput]
|
||||
HRESULT WindowState([in] long WindowState);
|
||||
[propget]
|
||||
HRESULT WindowState([out, retval] long *WindowState);
|
||||
|
||||
// realise the palette in the background
|
||||
|
||||
[propput]
|
||||
HRESULT BackgroundPalette([in] long BackgroundPalette);
|
||||
[propget]
|
||||
HRESULT BackgroundPalette([out, retval] long *pBackgroundPalette);
|
||||
|
||||
// affect the visibility of the window
|
||||
|
||||
[propput]
|
||||
HRESULT Visible([in] long Visible);
|
||||
[propget]
|
||||
HRESULT Visible([out, retval] long *pVisible);
|
||||
|
||||
// change the desktop position of the video window
|
||||
|
||||
[propput]
|
||||
HRESULT Left([in] long Left);
|
||||
[propget]
|
||||
HRESULT Left([out, retval] long *pLeft);
|
||||
|
||||
[propput]
|
||||
HRESULT Width([in] long Width);
|
||||
[propget]
|
||||
HRESULT Width([out, retval] long *pWidth);
|
||||
|
||||
[propput]
|
||||
HRESULT Top([in] long Top);
|
||||
[propget]
|
||||
HRESULT Top([out, retval] long *pTop);
|
||||
|
||||
[propput]
|
||||
HRESULT Height([in] long Height);
|
||||
[propget]
|
||||
HRESULT Height([out, retval] long *pHeight);
|
||||
|
||||
// change the owning window of the video
|
||||
|
||||
[propput]
|
||||
HRESULT Owner([in] OAHWND Owner);
|
||||
[propget]
|
||||
HRESULT Owner([out, retval] OAHWND *Owner);
|
||||
|
||||
// change the window to receive posted messages
|
||||
|
||||
[propput]
|
||||
HRESULT MessageDrain([in] OAHWND Drain);
|
||||
[propget]
|
||||
HRESULT MessageDrain([out, retval] OAHWND *Drain);
|
||||
|
||||
[propget]
|
||||
HRESULT BorderColor([out, retval] long *Color);
|
||||
|
||||
[propput]
|
||||
HRESULT BorderColor([in] long Color);
|
||||
|
||||
[propget]
|
||||
HRESULT FullScreenMode([out, retval] long *FullScreenMode);
|
||||
|
||||
[propput]
|
||||
HRESULT FullScreenMode([in] long FullScreenMode);
|
||||
|
||||
// methods
|
||||
|
||||
// ask the renderer to grab it's window the foreground
|
||||
// and optionally also give the window the input focus
|
||||
HRESULT SetWindowForeground([in] long Focus);
|
||||
|
||||
// owners should pass WM_PALETTECHANGED and WM_SYSCOLORCHANGE
|
||||
// messages on the filter graph so they can be distributed
|
||||
// otherwise child renderers never see these messages go by
|
||||
|
||||
HRESULT NotifyOwnerMessage([in] OAHWND hwnd,
|
||||
[in] long uMsg,
|
||||
[in] LONG_PTR wParam,
|
||||
[in] LONG_PTR lParam
|
||||
);
|
||||
|
||||
// get and set the window position on the desktop
|
||||
|
||||
HRESULT SetWindowPosition([in] long Left,
|
||||
[in] long Top,
|
||||
[in] long Width,
|
||||
[in] long Height);
|
||||
|
||||
HRESULT GetWindowPosition([out] long *pLeft,
|
||||
[out] long *pTop,
|
||||
[out] long *pWidth,
|
||||
[out] long *pHeight);
|
||||
|
||||
// get the ideal sizes for the video image playback (client) area
|
||||
|
||||
HRESULT GetMinIdealImageSize([out] long *pWidth,[out] long *pHeight);
|
||||
HRESULT GetMaxIdealImageSize([out] long *pWidth,[out] long *pHeight);
|
||||
|
||||
// get the restored window size when we're maximised or iconic
|
||||
|
||||
HRESULT GetRestorePosition([out] long *pLeft,
|
||||
[out] long *pTop,
|
||||
[out] long *pWidth,
|
||||
[out] long *pHeight);
|
||||
|
||||
// show and hide cursors useful when fullscreen
|
||||
HRESULT HideCursor([in] long HideCursor);
|
||||
HRESULT IsCursorHidden([out] long *CursorHidden);
|
||||
}
|
||||
|
||||
// basic video-related functionality
|
||||
[
|
||||
uuid(56a868b5-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IBasicVideo interface"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IBasicVideo : IDispatch
|
||||
{
|
||||
// properties
|
||||
|
||||
// Video specific (approximate) bit and frame rates
|
||||
|
||||
[propget]
|
||||
HRESULT AvgTimePerFrame([out, retval] REFTIME *pAvgTimePerFrame);
|
||||
|
||||
[propget]
|
||||
HRESULT BitRate([out, retval] long *pBitRate);
|
||||
|
||||
[propget]
|
||||
HRESULT BitErrorRate([out, retval] long *pBitErrorRate);
|
||||
|
||||
// read the native video size
|
||||
|
||||
[propget]
|
||||
HRESULT VideoWidth([out, retval] long *pVideoWidth);
|
||||
|
||||
[propget]
|
||||
HRESULT VideoHeight([out, retval] long *pVideoHeight);
|
||||
|
||||
// change the source rectangle for the video
|
||||
|
||||
[propput]
|
||||
HRESULT SourceLeft([in] long SourceLeft);
|
||||
[propget]
|
||||
HRESULT SourceLeft([out, retval] long *pSourceLeft);
|
||||
|
||||
[propput]
|
||||
HRESULT SourceWidth([in] long SourceWidth);
|
||||
[propget]
|
||||
HRESULT SourceWidth([out, retval] long *pSourceWidth);
|
||||
|
||||
[propput]
|
||||
HRESULT SourceTop([in] long SourceTop);
|
||||
[propget]
|
||||
HRESULT SourceTop([out, retval] long *pSourceTop);
|
||||
|
||||
[propput]
|
||||
HRESULT SourceHeight([in] long SourceHeight);
|
||||
[propget]
|
||||
HRESULT SourceHeight([out, retval] long *pSourceHeight);
|
||||
|
||||
// change the destination rectangle for the video
|
||||
|
||||
[propput]
|
||||
HRESULT DestinationLeft([in] long DestinationLeft);
|
||||
[propget]
|
||||
HRESULT DestinationLeft([out, retval] long *pDestinationLeft);
|
||||
|
||||
[propput]
|
||||
HRESULT DestinationWidth([in] long DestinationWidth);
|
||||
[propget]
|
||||
HRESULT DestinationWidth([out, retval] long *pDestinationWidth);
|
||||
|
||||
[propput]
|
||||
HRESULT DestinationTop([in] long DestinationTop);
|
||||
[propget]
|
||||
HRESULT DestinationTop([out, retval] long *pDestinationTop);
|
||||
|
||||
[propput]
|
||||
HRESULT DestinationHeight([in] long DestinationHeight);
|
||||
[propget]
|
||||
HRESULT DestinationHeight([out, retval] long *pDestinationHeight);
|
||||
|
||||
// methods
|
||||
|
||||
// get and set the source rectangle position
|
||||
|
||||
HRESULT SetSourcePosition([in] long Left,
|
||||
[in] long Top,
|
||||
[in] long Width,
|
||||
[in] long Height);
|
||||
|
||||
HRESULT GetSourcePosition([out] long *pLeft,
|
||||
[out] long *pTop,
|
||||
[out] long *pWidth,
|
||||
[out] long *pHeight);
|
||||
|
||||
HRESULT SetDefaultSourcePosition();
|
||||
|
||||
// get and set the destination rectangle position
|
||||
|
||||
HRESULT SetDestinationPosition([in] long Left,
|
||||
[in] long Top,
|
||||
[in] long Width,
|
||||
[in] long Height);
|
||||
|
||||
HRESULT GetDestinationPosition([out] long *pLeft,
|
||||
[out] long *pTop,
|
||||
[out] long *pWidth,
|
||||
[out] long *pHeight);
|
||||
|
||||
HRESULT SetDefaultDestinationPosition();
|
||||
|
||||
// get the native video dimensions
|
||||
|
||||
HRESULT GetVideoSize([out] long *pWidth,[out] long *pHeight);
|
||||
|
||||
// get all or some of the current video palette
|
||||
|
||||
HRESULT GetVideoPaletteEntries([in] long StartIndex,
|
||||
[in] long Entries,
|
||||
[out] long *pRetrieved,
|
||||
[out] long *pPalette);
|
||||
|
||||
HRESULT GetCurrentImage([in,out] long *pBufferSize,
|
||||
[out] long *pDIBImage);
|
||||
|
||||
// are we using a default source or destination
|
||||
|
||||
HRESULT IsUsingDefaultSource();
|
||||
HRESULT IsUsingDefaultDestination();
|
||||
}
|
||||
|
||||
// interface extension to IBasicVideo to return preferred aspect ratio
|
||||
[
|
||||
uuid(329bb360-f6ea-11d1-9038-00a0c9697298),
|
||||
helpstring("IBasicVideo2"),
|
||||
odl
|
||||
]
|
||||
interface IBasicVideo2 : IBasicVideo
|
||||
{
|
||||
// This may not match the native video dimensions because of
|
||||
// non-square pixels or whatever.
|
||||
// The video may not always be displayed in the preferred
|
||||
// aspect ratio for performance reasons
|
||||
|
||||
HRESULT GetPreferredAspectRatio([out] long *plAspectX,
|
||||
[out] long *plAspectY);
|
||||
}
|
||||
|
||||
// interface returned to a command that has been queued via IQueueCommand
|
||||
[
|
||||
uuid(56a868b8-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IDeferredCommand"),
|
||||
odl
|
||||
]
|
||||
interface IDeferredCommand : IUnknown
|
||||
{
|
||||
HRESULT Cancel();
|
||||
HRESULT Confidence(
|
||||
[out] LONG* pConfidence);
|
||||
HRESULT Postpone(
|
||||
[in] REFTIME newtime);
|
||||
// return value is S_OK if completed. phrResult is set to the
|
||||
// result of the deferred command.
|
||||
HRESULT GetHResult(
|
||||
[out] HRESULT* phrResult);
|
||||
};
|
||||
|
||||
// queue an IDispatch-based command for execution at a specified time
|
||||
[
|
||||
uuid(56a868b7-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("IQueueCommand"),
|
||||
odl
|
||||
]
|
||||
interface IQueueCommand : IUnknown
|
||||
{
|
||||
HRESULT InvokeAtStreamTime(
|
||||
[out] IDeferredCommand** pCmd,
|
||||
[in] REFTIME time, // at this streamtime
|
||||
[in] GUID* iid, // call this interface
|
||||
[in] long dispidMethod, // ..and this method
|
||||
[in] short wFlags, // method/property
|
||||
[in] long cArgs, // count of args
|
||||
[in] VARIANT* pDispParams, // actual args
|
||||
[in, out] VARIANT* pvarResult, // return value
|
||||
[out] short* puArgErr // which arg in error
|
||||
);
|
||||
|
||||
HRESULT InvokeAtPresentationTime(
|
||||
[out] IDeferredCommand** pCmd,
|
||||
[in] REFTIME time, // at this presentation time
|
||||
[in] GUID* iid, // call this interface
|
||||
[in] long dispidMethod, // ..and this method
|
||||
[in] short wFlags, // method/property
|
||||
[in] long cArgs, // count of args
|
||||
[in] VARIANT* pDispParams, // actual args
|
||||
[in, out] VARIANT* pvarResult, // return value
|
||||
[out] short* puArgErr // which arg in error
|
||||
);
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
// the filgraph object (CLSID_Filgraph)
|
||||
[
|
||||
uuid(e436ebb3-524f-11ce-9f53-0020af0ba770),
|
||||
helpstring("Filtergraph type info")
|
||||
]
|
||||
coclass FilgraphManager
|
||||
{
|
||||
[default] interface IMediaControl;
|
||||
interface IMediaEvent;
|
||||
interface IMediaPosition;
|
||||
interface IBasicAudio;
|
||||
interface IBasicVideo;
|
||||
interface IVideoWindow;
|
||||
|
||||
};
|
||||
|
||||
|
||||
// represents a filter (you can't QI for IBaseFilter from this object)
|
||||
[
|
||||
uuid(56a868ba-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("FilterInfo"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IFilterInfo : IDispatch
|
||||
{
|
||||
// find a pin given an id - returns an object supporting
|
||||
// IPinInfo
|
||||
HRESULT FindPin(
|
||||
[in] BSTR strPinID,
|
||||
[out] IDispatch** ppUnk);
|
||||
|
||||
// filter name
|
||||
[propget]
|
||||
HRESULT Name(
|
||||
[out, retval] BSTR* strName);
|
||||
|
||||
// Vendor info string
|
||||
[propget]
|
||||
HRESULT VendorInfo(
|
||||
[out, retval] BSTR* strVendorInfo);
|
||||
|
||||
// returns the actual filter object (supports IBaseFilter)
|
||||
[propget]
|
||||
HRESULT Filter(
|
||||
[out, retval] IUnknown **ppUnk);
|
||||
|
||||
// returns an IAMCollection object containing the PinInfo objects
|
||||
// for this filter
|
||||
[propget]
|
||||
HRESULT Pins(
|
||||
[out, retval] IDispatch ** ppUnk);
|
||||
|
||||
// returns -1 if true or 0 if false (OATRUE/FALSE)
|
||||
[propget]
|
||||
HRESULT IsFileSource(
|
||||
[out, retval] LONG * pbIsSource);
|
||||
|
||||
[propget]
|
||||
HRESULT Filename(
|
||||
[out, retval] BSTR* pstrFilename);
|
||||
|
||||
[propput]
|
||||
HRESULT Filename(
|
||||
[in] BSTR strFilename);
|
||||
}
|
||||
|
||||
[
|
||||
uuid(56a868bb-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("Registry Filter Info"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IRegFilterInfo : IDispatch
|
||||
{
|
||||
// get the name of this filter
|
||||
[propget]
|
||||
HRESULT Name(
|
||||
[out, retval] BSTR* strName);
|
||||
|
||||
|
||||
// make an instance of this filter, add it to the graph and
|
||||
// return an IFilterInfo for it.
|
||||
HRESULT Filter(
|
||||
[out] IDispatch** ppUnk);
|
||||
}
|
||||
|
||||
// wrapper for a media type
|
||||
[
|
||||
uuid(56a868bc-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("Media Type"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IMediaTypeInfo : IDispatch
|
||||
{
|
||||
// get the major type GUID as a string
|
||||
[propget]
|
||||
HRESULT Type(
|
||||
[out, retval] BSTR* strType);
|
||||
|
||||
// get the subtype GUID as a string
|
||||
[propget]
|
||||
HRESULT Subtype(
|
||||
[out, retval] BSTR* strType);
|
||||
}
|
||||
|
||||
[
|
||||
uuid(56a868bd-0ad4-11ce-b03a-0020af0ba770),
|
||||
helpstring("Pin Info"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IPinInfo : IDispatch
|
||||
{
|
||||
// get the pin object (IUnknown for an object that
|
||||
// supports IPin
|
||||
[propget]
|
||||
HRESULT Pin(
|
||||
[out, retval] IUnknown** ppUnk);
|
||||
|
||||
// get the PinInfo object for the pin we are connected to
|
||||
[propget]
|
||||
HRESULT ConnectedTo(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
// get the media type on this connection - returns an
|
||||
// object supporting IMediaTypeInfo
|
||||
[propget]
|
||||
HRESULT ConnectionMediaType(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
|
||||
// return the FilterInfo object for the filter this pin
|
||||
// is part of
|
||||
[propget]
|
||||
HRESULT FilterInfo(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
// get the name of this pin
|
||||
[propget]
|
||||
HRESULT Name(
|
||||
[out, retval] BSTR* ppUnk);
|
||||
|
||||
// pin direction
|
||||
[propget]
|
||||
HRESULT Direction(
|
||||
[out, retval] LONG *ppDirection);
|
||||
|
||||
// PinID - can pass to IFilterInfo::FindPin
|
||||
[propget]
|
||||
HRESULT PinID(
|
||||
[out, retval] BSTR* strPinID);
|
||||
|
||||
// collection of preferred media types (IAMCollection)
|
||||
[propget]
|
||||
HRESULT MediaTypes(
|
||||
[out, retval] IDispatch** ppUnk);
|
||||
|
||||
// Connect to the following pin, using other transform
|
||||
// filters as necessary. pPin can support either IPin or IPinInfo
|
||||
HRESULT Connect(
|
||||
[in] IUnknown* pPin);
|
||||
|
||||
// Connect directly to the following pin, not using any intermediate
|
||||
// filters
|
||||
HRESULT ConnectDirect(
|
||||
[in] IUnknown* pPin);
|
||||
|
||||
// Connect directly to the following pin, using the specified
|
||||
// media type only. pPin is an object that must support either
|
||||
// IPin or IPinInfo, and pMediaType must support IMediaTypeInfo.
|
||||
HRESULT ConnectWithType(
|
||||
[in] IUnknown * pPin,
|
||||
[in] IDispatch * pMediaType);
|
||||
|
||||
// disconnect this pin and the corresponding connected pin from
|
||||
// each other. (Calls IPin::Disconnect on both pins).
|
||||
HRESULT Disconnect(void);
|
||||
|
||||
// render this pin using any necessary transform and rendering filters
|
||||
HRESULT Render(void);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
//
|
||||
// IAMStats - statistics
|
||||
//
|
||||
// Note that the calls using an index are likely to be much faster
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
[
|
||||
uuid(bc9bcf80-dcd2-11d2-abf6-00a0c905f375),
|
||||
helpstring("Statistics"),
|
||||
odl,
|
||||
oleautomation,
|
||||
dual
|
||||
]
|
||||
interface IAMStats : IDispatch {
|
||||
// Reset all stats
|
||||
HRESULT Reset();
|
||||
|
||||
// Get number of stats collected
|
||||
[propget]
|
||||
HRESULT Count(
|
||||
[out, retval] LONG* plCount);
|
||||
|
||||
// Pull out a specific value by position
|
||||
HRESULT GetValueByIndex([in] long lIndex,
|
||||
[out] BSTR *szName,
|
||||
[out] long *lCount,
|
||||
[out] double *dLast,
|
||||
[out] double *dAverage,
|
||||
[out] double *dStdDev,
|
||||
[out] double *dMin,
|
||||
[out] double *dMax);
|
||||
|
||||
// Pull out a specific value by name
|
||||
HRESULT GetValueByName([in] BSTR szName,
|
||||
[out] long *lIndex,
|
||||
[out] long *lCount,
|
||||
[out] double *dLast,
|
||||
[out] double *dAverage,
|
||||
[out] double *dStdDev,
|
||||
[out] double *dMin,
|
||||
[out] double *dMax);
|
||||
|
||||
|
||||
// The calls below are for generators of statistics
|
||||
|
||||
// Return the index for a string - optinally create
|
||||
HRESULT GetIndex([in] BSTR szName,
|
||||
[in] long lCreate,
|
||||
[out] long *plIndex);
|
||||
|
||||
// Add a new value
|
||||
HRESULT AddValue([in] long lIndex,
|
||||
[in] double dValue);
|
||||
}
|
||||
};
|
|
@ -1,86 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DDStream.idl
|
||||
//
|
||||
// Desc: Used by MIDL tool to generate ddstream.h
|
||||
//
|
||||
// Copyright (c) 1998-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "mmstream.idl";
|
||||
|
||||
cpp_quote("//")
|
||||
cpp_quote("// The following declarations within the 'if 0' block are dummy typedefs used to make")
|
||||
cpp_quote("// the ddstream.idl file build. The actual definitions are contained in DDRAW.H")
|
||||
cpp_quote("//")
|
||||
cpp_quote("#if 0")
|
||||
typedef void * LPDDSURFACEDESC;
|
||||
typedef struct tDDSURFACEDESC DDSURFACEDESC;
|
||||
cpp_quote("#endif")
|
||||
cpp_quote("#include <ddraw.h>")
|
||||
|
||||
enum {
|
||||
DDSFF_PROGRESSIVERENDER = 0x00000001
|
||||
};
|
||||
|
||||
interface IDirectDraw;
|
||||
interface IDirectDrawSurface;
|
||||
interface IDirectDrawPalette;
|
||||
|
||||
interface IDirectDrawMediaStream;
|
||||
interface IDirectDrawStreamSample;
|
||||
|
||||
// IDirectDrawMediaStream
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(F4104FCE-9A70-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDirectDrawMediaStream : IMediaStream
|
||||
{
|
||||
HRESULT GetFormat(
|
||||
[out] DDSURFACEDESC *pDDSDCurrent,
|
||||
[out] IDirectDrawPalette **ppDirectDrawPalette,
|
||||
[out] DDSURFACEDESC *pDDSDDesired,
|
||||
[out] DWORD *pdwFlags);
|
||||
|
||||
HRESULT SetFormat(
|
||||
[in] const DDSURFACEDESC *pDDSurfaceDesc,
|
||||
[in] IDirectDrawPalette *pDirectDrawPalette);
|
||||
|
||||
HRESULT GetDirectDraw(
|
||||
[out] IDirectDraw **ppDirectDraw);
|
||||
|
||||
HRESULT SetDirectDraw(
|
||||
[in] IDirectDraw *pDirectDraw);
|
||||
|
||||
HRESULT CreateSample(
|
||||
[in] IDirectDrawSurface *pSurface,
|
||||
[in] const RECT *pRect,
|
||||
[in] DWORD dwFlags,
|
||||
[out]IDirectDrawStreamSample **ppSample);
|
||||
|
||||
HRESULT GetTimePerFrame(
|
||||
[out] STREAM_TIME *pFrameTime);
|
||||
};
|
||||
|
||||
|
||||
// IDirectDrawStreamSample
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(F4104FCF-9A70-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IDirectDrawStreamSample : IStreamSample
|
||||
{
|
||||
HRESULT GetSurface(
|
||||
[out] IDirectDrawSurface ** ppDirectDrawSurface,
|
||||
[out] RECT * pRect);
|
||||
|
||||
HRESULT SetRect(
|
||||
[in] const RECT * pRect);
|
||||
|
||||
};
|
|
@ -1,38 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DevEnum.idl
|
||||
//
|
||||
// Desc: IDL source for devenum.dll. This file will be processed by the
|
||||
// MIDL tool to produce the type library (devenum.tlb) and marshalling
|
||||
// code.
|
||||
//
|
||||
// Copyright (c) 1998-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
cpp_quote("#define CDEF_CLASS_DEFAULT 0x0001")
|
||||
cpp_quote("#define CDEF_BYPASS_CLASS_MANAGER 0x0002")
|
||||
//cpp_quote("#define CDEF_CLASS_LEGACY 0x0004")
|
||||
cpp_quote("#define CDEF_MERIT_ABOVE_DO_NOT_USE 0x0008")
|
||||
|
||||
// If any of these flags are set, then only the types specified
|
||||
// by the flags are enumerated
|
||||
cpp_quote("#define CDEF_DEVMON_CMGR_DEVICE 0x0010")
|
||||
cpp_quote("#define CDEF_DEVMON_DMO 0x0020")
|
||||
cpp_quote("#define CDEF_DEVMON_PNP_DEVICE 0x0040")
|
||||
cpp_quote("#define CDEF_DEVMON_FILTER 0x0080")
|
||||
cpp_quote("#define CDEF_DEVMON_SELECTIVE_MASK 0x00f0")
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(29840822-5B84-11D0-BD3B-00A0C911CE86),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface ICreateDevEnum : IUnknown
|
||||
{
|
||||
import "oaidl.idl";
|
||||
|
||||
HRESULT CreateClassEnumerator(
|
||||
[in] REFCLSID clsidDeviceClass,
|
||||
[out] IEnumMoniker ** ppEnumMoniker,
|
||||
[in] DWORD dwFlags);
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DMODShow.idl
|
||||
//
|
||||
// Desc: This file will be processed by the MIDL tool to
|
||||
// produce dmodshow.h and proxy-stub code.
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl";
|
||||
import "mediaobj.idl";
|
||||
|
||||
// 94297043-bd82-4dfd-b0de-8177739c6d20
|
||||
cpp_quote("DEFINE_GUID(CLSID_DMOWrapperFilter, 0x94297043,0xbd82,0x4dfd,0xb0,0xde,0x81,0x77,0x73,0x9c,0x6d,0x20);")
|
||||
|
||||
// bcd5796c-bd52-4d30-ab76-70f975b89199
|
||||
cpp_quote("DEFINE_GUID(CLSID_DMOFilterCategory,0xbcd5796c,0xbd52,0x4d30,0xab,0x76,0x70,0xf9,0x75,0xb8,0x91,0x99);")
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(52d6f586-9f0f-4824-8fc8-e32ca04930c2),
|
||||
]
|
||||
interface IDMOWrapperFilter : IUnknown
|
||||
{
|
||||
// Init is passed in the clsid (so it can call CoCreateInstance)
|
||||
// and the catgory under which the DMO lives.
|
||||
// Note that catDMO can be CLSID_NULL, in which case no special
|
||||
// category-specific processing will be invoked in the wrapper filter.
|
||||
HRESULT Init(REFCLSID clsidDMO, REFCLSID catDMO);
|
||||
}
|
||||
|
|
@ -1,59 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DShowASF.idl
|
||||
//
|
||||
// Desc:
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl";
|
||||
import "strmif.idl"; // for media type and time definitions
|
||||
import "wmsdkidl.idl";
|
||||
|
||||
cpp_quote( "EXTERN_GUID( IID_IConfigAsfWriter,0x45086030,0xF7E4,0x486a,0xB5,0x04,0x82,0x6B,0xB5,0x79,0x2A,0x3B );" )
|
||||
|
||||
interface IConfigAsfWriter;
|
||||
interface IWMProfile;
|
||||
|
||||
// Interface to control the ASF writer
|
||||
[
|
||||
object,
|
||||
uuid(45086030-F7E4-486a-B504-826BB5792A3B),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IConfigAsfWriter : IUnknown
|
||||
{
|
||||
//
|
||||
// The user is expected to enumerate profiles using the wmsdk IWMProfileManager
|
||||
// method and then pass the desired profile index to the ASF Writer filter via this
|
||||
// method. The filter will then try to configure itself for the selected profile.
|
||||
//
|
||||
// NOTE: These 2 XXXProfileId methods are now obsolete because they assume
|
||||
// version 4.0 WMSDK profiles. To configure the filter for later profile
|
||||
// versions using a profile index, use the XXXProfile methods which take
|
||||
// the IWMProfile* directly.
|
||||
//
|
||||
HRESULT ConfigureFilterUsingProfileId([in] DWORD dwProfileId);
|
||||
HRESULT GetCurrentProfileId([out] DWORD *pdwProfileId);
|
||||
|
||||
//
|
||||
// configure using a pre-defined wmsdk profile guid
|
||||
//
|
||||
HRESULT ConfigureFilterUsingProfileGuid([in] REFGUID guidProfile);
|
||||
HRESULT GetCurrentProfileGuid([out] GUID *pProfileGuid);
|
||||
|
||||
//
|
||||
// Use these methods when a custom profile setup is preferred
|
||||
//
|
||||
HRESULT ConfigureFilterUsingProfile([in] IWMProfile * pProfile);
|
||||
HRESULT GetCurrentProfile([out] IWMProfile **ppProfile);
|
||||
|
||||
//
|
||||
// allow app to control whether or not to index file
|
||||
//
|
||||
HRESULT SetIndexMode( [in] BOOL bIndexFile );
|
||||
HRESULT GetIndexMode( [out] BOOL *pbIndexFile );
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -1,318 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: DynGraph.idl
|
||||
//
|
||||
// Desc: Dynamic graph interfaces
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
interface IPinConnection;
|
||||
interface IPinFlowControl;
|
||||
interface IGraphConfig;
|
||||
interface IGraphConfigCallback;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
//
|
||||
// IPinConnection - supported by input pins
|
||||
//
|
||||
//--------------------------------------------------------------------
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(4a9a62d3-27d4-403d-91e9-89f540e55534),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IPinConnection : IUnknown {
|
||||
|
||||
// Do you accept this type chane in your current state?
|
||||
HRESULT DynamicQueryAccept([in] const AM_MEDIA_TYPE *pmt);
|
||||
|
||||
// Set event when EndOfStream receive - do NOT pass it on
|
||||
// This condition is cancelled by a flush or Stop
|
||||
HRESULT NotifyEndOfStream([in] HANDLE hNotifyEvent);
|
||||
|
||||
// Are you an 'end pin'
|
||||
HRESULT IsEndPin();
|
||||
|
||||
HRESULT DynamicDisconnect();
|
||||
};
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
//
|
||||
// IPinFlowControl - supported by output pins
|
||||
//
|
||||
//--------------------------------------------------------------------
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(c56e9858-dbf3-4f6b-8119-384af2060deb),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IPinFlowControl : IUnknown {
|
||||
// Block processing on this pin
|
||||
HRESULT Block([in] DWORD dwBlockFlags, [in] HANDLE hEvent);
|
||||
}
|
||||
|
||||
// block flags
|
||||
enum _AM_PIN_FLOW_CONTROL_BLOCK_FLAGS {
|
||||
AM_PIN_FLOW_CONTROL_BLOCK = 0x00000001, // 0 means unblock
|
||||
};
|
||||
|
||||
|
||||
// Reconnect flags
|
||||
typedef enum _AM_GRAPH_CONFIG_RECONNECT_FLAGS {
|
||||
AM_GRAPH_CONFIG_RECONNECT_DIRECTCONNECT = 0x00000001,
|
||||
AM_GRAPH_CONFIG_RECONNECT_CACHE_REMOVED_FILTERS = 0x00000002,
|
||||
AM_GRAPH_CONFIG_RECONNECT_USE_ONLY_CACHED_FILTERS = 0x00000004
|
||||
} AM_GRAPH_CONFIG_RECONNECT_FLAGS;
|
||||
|
||||
// RemoveFilterEx flags
|
||||
enum _REM_FILTER_FLAGS {
|
||||
REMFILTERF_LEAVECONNECTED = 0x00000001
|
||||
};
|
||||
|
||||
typedef enum _AM_FILTER_FLAGS {
|
||||
AM_FILTER_FLAGS_REMOVABLE = 0x00000001
|
||||
} AM_FILTER_FLAGS;
|
||||
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
//
|
||||
// IGraphConfig
|
||||
//
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(03A1EB8E-32BF-4245-8502-114D08A9CB88),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IGraphConfig : IUnknown {
|
||||
HRESULT Reconnect([in] IPin *pOutputPin,
|
||||
[in] IPin *pInputPin,
|
||||
[in] const AM_MEDIA_TYPE *pmtFirstConnection,
|
||||
[in] IBaseFilter *pUsingFilter, // can be NULL
|
||||
[in] HANDLE hAbortEvent,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT Reconfigure([in] IGraphConfigCallback *pCallback,
|
||||
[in] PVOID pvContext,
|
||||
[in] DWORD dwFlags,
|
||||
[in] HANDLE hAbortEvent);
|
||||
|
||||
|
||||
HRESULT AddFilterToCache([in] IBaseFilter *pFilter);
|
||||
HRESULT EnumCacheFilter([out] IEnumFilters **pEnum);
|
||||
HRESULT RemoveFilterFromCache([in]IBaseFilter *pFilter);
|
||||
|
||||
// Get the start time associated with the last Run() call
|
||||
// If the graph is not running returns VFW_E_WRONG_STATE
|
||||
HRESULT GetStartTime([out] REFERENCE_TIME *prtStart);
|
||||
|
||||
HRESULT PushThroughData(
|
||||
[in] IPin *pOutputPin,
|
||||
[in] IPinConnection *pConnection,
|
||||
[in] HANDLE hEventAbort);
|
||||
|
||||
HRESULT SetFilterFlags([in] IBaseFilter *pFilter, [in] DWORD dwFlags);
|
||||
HRESULT GetFilterFlags([in] IBaseFilter *pFilter, [out] DWORD *pdwFlags);
|
||||
|
||||
HRESULT RemoveFilterEx( [in] IBaseFilter *pFilter, DWORD Flags );
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
//
|
||||
// IGraphConfigCallback
|
||||
//
|
||||
//--------------------------------------------------------------------
|
||||
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(ade0fd60-d19d-11d2-abf6-00a0c905f375),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IGraphConfigCallback : IUnknown
|
||||
{
|
||||
HRESULT Reconfigure(PVOID pvContext, DWORD dwFlags);
|
||||
}
|
||||
|
||||
// Filter Chain Definition
|
||||
//
|
||||
// Filter chains have the following properties:
|
||||
//
|
||||
// - Each filter chain has one or more filters.
|
||||
//
|
||||
// - Each filter in a filter chain has at most one connected input pin and one
|
||||
// connected output pin. For example, filters A, C, D, F, G, H, I, J and K
|
||||
// (see the diagram below) can be in a filter chain because each one has at
|
||||
// most one connected input pin and one connected output pin.
|
||||
//
|
||||
// - Any filter in a chain is reachable by any other filter in the chain.
|
||||
// For example, in the filter chain F-G-H, F can reach H by following the F-
|
||||
// G connection to G and then following the G-H connection to H. Filters F
|
||||
// and J cannot be in the same filter chain because J is not reachable from
|
||||
// F. Anotherwords, there no sequence of connected filters between F and J.
|
||||
//
|
||||
// - The start filter is the only filter in the filter chain who's input
|
||||
// pin is not connected to another filter in the chain. For instance, F is
|
||||
// the start filter in F-G-H because F's input pin is connected to E and E
|
||||
// is not in the filter chain. G's input pin is connected to F and H's is
|
||||
// connected to G. Both F and G are in the filter chain.
|
||||
//
|
||||
// - The end filter is the only filter in the filter chain who's output pin
|
||||
// is not connected to another filter in the chain. For example, in the
|
||||
// filter chain J-K, K is the end filter because K's output pin is
|
||||
// connected to L. J's output pin is connected to K and K is in the J-K
|
||||
// filter chain.
|
||||
//
|
||||
//
|
||||
// --->|---| |---|--->
|
||||
// | C |--->| D |
|
||||
// |---| |---|--->|---| |---|--->|---| |---| |---| |---|
|
||||
// | A |--->| B | | E |--->| F |--->| G |--->| H |
|
||||
// |---| |---|--->|---|------------>|---| |---| |---| |---|
|
||||
// | I |--->
|
||||
// --->|---|--->
|
||||
//
|
||||
// |---| |---| |---|
|
||||
// | J |--->| K |--->| L |
|
||||
// |---| |---| |---|
|
||||
//
|
||||
// Example Filter Graph
|
||||
//
|
||||
//
|
||||
//
|
||||
// IFilterChain Methods Documentation
|
||||
//
|
||||
// HRESULT StartChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
//
|
||||
// StartChain() switches all the filters in the chain into the running state
|
||||
// If one of the filters will not switch to the running state, then all the filters
|
||||
// in the chain are stopped. This method can only be called if the filter graph is
|
||||
// running.
|
||||
//
|
||||
// Parameters:
|
||||
// - pStartFilter [in]
|
||||
// The first filter in the filter chain. Note that this can be the same
|
||||
// filter as pEndFilter .
|
||||
//
|
||||
// - pEndFilter [in]
|
||||
// The last filter in the filter chain. Note that this can be the same
|
||||
// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
|
||||
// from pStartFilter to the last downstream filter which can be in a filter chain.
|
||||
// For example, IFilterChain::StartChain( A, NULL ) would start filter A.
|
||||
// IFilterChain::StartChain( G, NULL ) would start filters G and H.
|
||||
// IFilterChain::StartChain( C, NULL ) would start filters C and D. Finally,
|
||||
// IFilterChain::StartChain( E, NULL ) would fail because E cannot be in a
|
||||
// filter chain (see the Filter Chain Definition section for more information).
|
||||
//
|
||||
// Return Value:
|
||||
// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
|
||||
// information on interpreting HRESULTs.
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// HRESULT PauseChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
//
|
||||
// PauseChain() switches all the filters in a chain to the paused state. If it cannot
|
||||
// switch one of the filtres into the paused state, all the filters in the chain are
|
||||
// stopped. This method can only be called if the filter graph is paused.
|
||||
//
|
||||
// Parameters:
|
||||
// - pStartFilter [in]
|
||||
// The first filter in the filter chain. Note that this can be the same
|
||||
// filter as pEndFilter .
|
||||
//
|
||||
// - pEndFilter [in]
|
||||
// The last filter in the filter chain. Note that this can be the same
|
||||
// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
|
||||
// from pStartFilter to the last downstream filter which can be in a filter chain.
|
||||
// For example, IFilterChain::StopChain( A, NULL ) would stop filter A.
|
||||
// IFilterChain::StopChain( G, NULL ) would stop filters G and H.
|
||||
// IFilterChain::StopChain( C, NULL ) would stop filters C and D. Finally,
|
||||
// IFilterChain::StopChain( E, NULL ) would fail because E cannot be in a filter
|
||||
// chain (see the Filter Chain Definition section for more information).
|
||||
//
|
||||
//
|
||||
// Return Value:
|
||||
// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
|
||||
// information on interpreting HRESULTs.
|
||||
//
|
||||
//
|
||||
//
|
||||
// HRESULT StopChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
//
|
||||
// StopChain() switches all the filters in chain to the stopped state.
|
||||
//
|
||||
// Parameters:
|
||||
// - pStartFilter [in]
|
||||
// The first filter in the filter chain. Note that this can be the same
|
||||
// filter as pEndFilter .
|
||||
//
|
||||
// - pEndFilter [in]
|
||||
// The last filter in the filter chain. Note that this can be the same
|
||||
// filter as pStartFilter. If pEndFilter is NULL then the filter chain extends
|
||||
// from pStartFilter to the last downstream filter which can be in a filter chain.
|
||||
// For example, IFilterChain::StopChain( A, NULL ) would stop filter A.
|
||||
// IFilterChain::StopChain( G, NULL ) would stop filters G and H.
|
||||
// IFilterChain::StopChain( C, NULL ) would stop filters C and D. Finally,
|
||||
// IFilterChain::StopChain( E, NULL ) would fail because E cannot be in a filter
|
||||
// chain (see the Filter Chain Definition section for more information).
|
||||
//
|
||||
//
|
||||
// Return Value:
|
||||
// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
|
||||
// information on interpreting HRESULTs.
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// HRESULT RemoveChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
//
|
||||
// RemoveChain() removes every filter in a chain from the filter graph.
|
||||
// The filters can be removed while the graph is running.
|
||||
//
|
||||
// Parameters:
|
||||
// - pStartFilter [in]
|
||||
// The first filter in the filter chain. Note that this can be the same
|
||||
// filter as pEndFilter .
|
||||
//
|
||||
// - pEndFilter [in]
|
||||
// The last filter in the filter chain. Note that this can be the same
|
||||
// filter as pStartFilter. If pEndFilter is NULL then the filter chain
|
||||
// extends from pStartFilter to the last downstream filter which can be in a
|
||||
// filter chain. For example, IFilterChain::RemoveChain( A, NULL ) would remove
|
||||
// filter A from the filter graph. IFilterChain::RemoveChain( G, NULL ) would
|
||||
// remove filters G and H. IFilterChain::RemoveChain( C, NULL ) would remove
|
||||
// filters C and D. Finally, IFilterChain::RemoveChain( E, NULL ) would fail
|
||||
// because E cannot be in a filter chain (see the Filter Chain Definition
|
||||
// section for more information).
|
||||
//
|
||||
//
|
||||
// Return Value:
|
||||
// An HRESULT. See the Direct Show SDK and COM SDK documentation for more
|
||||
// information on interpreting HRESULTs.
|
||||
//
|
||||
//
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(DCFBDCF6-0DC2-45f5-9AB2-7C330EA09C29),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IFilterChain : IUnknown
|
||||
{
|
||||
HRESULT StartChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
HRESULT PauseChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
HRESULT StopChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
HRESULT RemoveChain( [in] IBaseFilter *pStartFilter, [in] IBaseFilter *pEndFilter );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,144 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: IAMovie.idl
|
||||
//
|
||||
// Desc:
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(359ace10-7688-11cf-8b23-00805f6cef60),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IAMovie : IFilterGraph
|
||||
{
|
||||
// IGraphBuilder
|
||||
// Connect these two pins directly or indirectly, using transform filters
|
||||
// if necessary.
|
||||
|
||||
HRESULT Connect
|
||||
( [in] IPin * ppinOut, // the output pin
|
||||
[in] IPin * ppinIn // the input pin
|
||||
);
|
||||
|
||||
|
||||
// Connect this output pin directly or indirectly, using transform filters
|
||||
// if necessary to something that will render it.
|
||||
|
||||
HRESULT Render
|
||||
( [in] IPin * ppinOut // the output pin
|
||||
);
|
||||
|
||||
|
||||
// IMediaControl methods
|
||||
HRESULT Run();
|
||||
HRESULT Pause();
|
||||
HRESULT Stop();
|
||||
|
||||
//returns the state. same semantics as IMediaFilter::GetState
|
||||
|
||||
HRESULT GetState(
|
||||
[in] LONG msTimeout,
|
||||
[out] FILTER_STATE* pfs);
|
||||
|
||||
// adds and connects filters needed to play the specified file
|
||||
HRESULT RenderFile(
|
||||
[in] LPCWSTR strFilename);
|
||||
|
||||
// adds to the graph the source filter that can read this file,
|
||||
// and returns an IFilterInfo object for it
|
||||
HRESULT AddSourceFilter(
|
||||
[in] LPCWSTR strFilename,
|
||||
[out] IBaseFilter ** ppUnk);
|
||||
|
||||
// get back the event handle. This is manual-reset
|
||||
// (don't - it's reset by the event mechanism) and remains set
|
||||
// when events are queued, and reset when the queue is empty.
|
||||
HRESULT GetEventHandle(
|
||||
[out] HEVENT * hEvent);
|
||||
|
||||
// remove the next event notification from the head of the queue and
|
||||
// return it. Waits up to msTimeout millisecs if there are no events.
|
||||
// if a timeout occurs without any events, this method will return
|
||||
// E_ABORT, and the value of the event code and other parameters
|
||||
// is undefined.
|
||||
HRESULT GetEvent(
|
||||
[out] long * lEventCode,
|
||||
[out] long * lParam1,
|
||||
[out] long * lParam2,
|
||||
[in] long msTimeout
|
||||
);
|
||||
|
||||
// Calls GetEvent repeatedly discarding events until it finds a
|
||||
// completion event (EC_COMPLETE, EC_ERRORABORT, or EC_USERABORT).
|
||||
// The completion event is removed from the queue and returned
|
||||
// in pEvCode. Note that the object is still in running mode until
|
||||
// a Pause or Stop call is made.
|
||||
// If the timeout occurs, *pEvCode will be 0 and E_ABORT will be
|
||||
// returned.
|
||||
HRESULT WaitForCompletion(
|
||||
[in] long msTimeout,
|
||||
[out] long * pEvCode);
|
||||
|
||||
// cancels any system handling of the specified event code
|
||||
// and ensures that the events are passed straight to the application
|
||||
// (via GetEvent) and not handled. A good example of this is
|
||||
// EC_REPAINT: default handling for this ensures the painting of the
|
||||
// window and does not get posted to the app.
|
||||
HRESULT CancelDefaultHandling(
|
||||
[in] long lEvCode);
|
||||
|
||||
// restore the normal system default handling that may have been
|
||||
// cancelled by CancelDefaultHandling().
|
||||
HRESULT RestoreDefaultHandling( [in] long lEvCode);
|
||||
|
||||
// properties
|
||||
HRESULT get_Duration(
|
||||
[out] REFTIME* plength);
|
||||
|
||||
HRESULT put_CurrentPosition(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
HRESULT get_CurrentPosition(
|
||||
[out] REFTIME* pllTime);
|
||||
|
||||
HRESULT get_StopTime(
|
||||
[out] REFTIME* pllTime);
|
||||
|
||||
HRESULT put_StopTime(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
HRESULT get_PrerollTime(
|
||||
[out] REFTIME* pllTime);
|
||||
HRESULT put_PrerollTime(
|
||||
[in] REFTIME llTime);
|
||||
|
||||
HRESULT put_Rate(
|
||||
[in] double dRate);
|
||||
HRESULT get_Rate(
|
||||
[out] double * pdRate);
|
||||
|
||||
/* New methods */
|
||||
HRESULT RemoveAllFilters();
|
||||
HRESULT Play();
|
||||
HRESULT PlayFile([in] LPCWSTR strFilename);
|
||||
HRESULT EnumFiltersByInterface( [in] REFIID riid, [out] IEnumFilters ** ppEnum );
|
||||
HRESULT EnumPins( [out] IEnumPins ** ppEnum );
|
||||
HRESULT EnumPinsIn( [out] IEnumPins ** ppEnum );
|
||||
HRESULT EnumPinsOut( [out] IEnumPins ** ppEnum );
|
||||
HRESULT RenderAll();
|
||||
HRESULT RenderNewFile( [in] LPCWSTR strFilename);
|
||||
|
||||
// Free any resources associated with the parameters to an event.
|
||||
// Event parameters may be LONGs, IUnknown* or BSTR. No action
|
||||
// is taken with LONGs. IUnknown are passed addrefed and need a
|
||||
// Release call. BSTR are allocated by the task allocator and will be
|
||||
// freed by calling the task allocator.
|
||||
HRESULT FreeEventParams(
|
||||
[in] long lEvCode,
|
||||
[in] long lParam1,
|
||||
[in] long lParam2);
|
||||
}
|
||||
|
|
@ -1,411 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: MediaObj.idl
|
||||
//
|
||||
// Desc: Define the interfaces for DirectX Media Objects. This file will be
|
||||
// processed by the MIDL tool to produce mediaobj.h and proxy-stub code.
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl";
|
||||
|
||||
// DMO_MEDIA_TYPE structure
|
||||
|
||||
cpp_quote("#ifdef __strmif_h__")
|
||||
cpp_quote("typedef AM_MEDIA_TYPE DMO_MEDIA_TYPE;")
|
||||
cpp_quote("#else")
|
||||
typedef struct _DMOMediaType {
|
||||
GUID majortype;
|
||||
GUID subtype;
|
||||
BOOL bFixedSizeSamples;
|
||||
BOOL bTemporalCompression;
|
||||
ULONG lSampleSize;
|
||||
GUID formattype;
|
||||
IUnknown *pUnk;
|
||||
ULONG cbFormat;
|
||||
[size_is(cbFormat)] BYTE * pbFormat;
|
||||
} DMO_MEDIA_TYPE;
|
||||
typedef LONGLONG REFERENCE_TIME;
|
||||
cpp_quote("#endif")
|
||||
|
||||
|
||||
// Per-buffer flags that apply to input buffers
|
||||
enum _DMO_INPUT_DATA_BUFFER_FLAGS {
|
||||
DMO_INPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
|
||||
DMO_INPUT_DATA_BUFFERF_TIME = 0x00000002,
|
||||
DMO_INPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004
|
||||
};
|
||||
|
||||
// Per-buffer flags that apply to output buffers.
|
||||
enum _DMO_OUTPUT_DATA_BUFFER_FLAGS {
|
||||
DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
|
||||
DMO_OUTPUT_DATA_BUFFERF_TIME = 0x00000002,
|
||||
DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004,
|
||||
|
||||
//
|
||||
// This flag means the object could have generated more data for this
|
||||
// output stream, even with no additional input from any input stream,
|
||||
// but the output buffer did not have sufficient room.
|
||||
//
|
||||
DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x01000000
|
||||
};
|
||||
|
||||
// Flags returned by GetInputStatus()
|
||||
enum _DMO_INPUT_STATUS_FLAGS {
|
||||
//
|
||||
// ACCEPT_DATA indicates that the input stream is ready to accept
|
||||
// new data via ProcessInput().
|
||||
//
|
||||
DMO_INPUT_STATUSF_ACCEPT_DATA = 0x00000001
|
||||
};
|
||||
|
||||
// Flags returned by GetInputStreamInfo()
|
||||
enum _DMO_INPUT_STREAM_INFO_FLAGS {
|
||||
DMO_INPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
|
||||
DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
|
||||
DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
|
||||
DMO_INPUT_STREAMF_HOLDS_BUFFERS = 0x00000008
|
||||
};
|
||||
|
||||
// Flags returned by GetOutputStreamInfo()
|
||||
enum _DMO_OUTPUT_STREAM_INFO_FLAGS {
|
||||
DMO_OUTPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
|
||||
DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
|
||||
DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
|
||||
DMO_OUTPUT_STREAMF_DISCARDABLE = 0x00000008,
|
||||
DMO_OUTPUT_STREAMF_OPTIONAL = 0x00000010
|
||||
};
|
||||
|
||||
// SetType flags
|
||||
enum _DMO_SET_TYPE_FLAGS {
|
||||
DMO_SET_TYPEF_TEST_ONLY = 0x00000001,// check but don't set
|
||||
DMO_SET_TYPEF_CLEAR = 0x00000002 // unset
|
||||
};
|
||||
|
||||
// Process Output Flags
|
||||
enum _DMO_PROCESS_OUTPUT_FLAGS {
|
||||
DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER = 0x00000001 // Discard
|
||||
};
|
||||
|
||||
// Buffer wrapper interface
|
||||
[
|
||||
object,
|
||||
uuid(59eff8b9-938c-4a26-82f2-95cb84cdc837)
|
||||
]
|
||||
interface IMediaBuffer : IUnknown
|
||||
{
|
||||
HRESULT SetLength(
|
||||
DWORD cbLength
|
||||
);
|
||||
HRESULT GetMaxLength(
|
||||
[out] DWORD *pcbMaxLength
|
||||
);
|
||||
HRESULT GetBufferAndLength(
|
||||
[out] BYTE **ppBuffer, // not filled if NULL
|
||||
[out] DWORD *pcbLength // not filled if NULL
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// Output buffer info structure: one of these must be passed in for each
|
||||
// output stream with every ProcessOutput() call
|
||||
// All [out] fields should be
|
||||
// assumed undefined if ProcessOutput() failed
|
||||
//
|
||||
typedef struct _DMO_OUTPUT_DATA_BUFFER {
|
||||
|
||||
IMediaBuffer *pBuffer; // [in] can be NULL
|
||||
|
||||
// ProcessOutput() must set any appropriate flags and zero out the rest.
|
||||
DWORD dwStatus; // [out] DMO_OUTPUT_DATA_BUFFERF_XXX (INCOMPLETE, etc.)
|
||||
|
||||
//
|
||||
// Each of these is valid if the corresponding flag is set in dwStatus
|
||||
//
|
||||
REFERENCE_TIME rtTimestamp; // [out]
|
||||
REFERENCE_TIME rtTimelength; // [out]
|
||||
} DMO_OUTPUT_DATA_BUFFER, *PDMO_OUTPUT_DATA_BUFFER;
|
||||
|
||||
|
||||
// Interface supported by media objects
|
||||
[
|
||||
object,
|
||||
uuid(d8ad0f58-5494-4102-97c5-ec798e59bcf4)
|
||||
]
|
||||
interface IMediaObject : IUnknown
|
||||
{
|
||||
|
||||
//
|
||||
// Stream enumeration
|
||||
//
|
||||
HRESULT GetStreamCount(
|
||||
[out] DWORD *pcInputStreams,
|
||||
[out] DWORD *pcOutputStreams
|
||||
);
|
||||
HRESULT GetInputStreamInfo(
|
||||
DWORD dwInputStreamIndex, // 0-based
|
||||
[out] DWORD *pdwFlags // HOLDS_BUFFERS
|
||||
);
|
||||
HRESULT GetOutputStreamInfo(
|
||||
DWORD dwOutputStreamIndex, // 0-based
|
||||
[out] DWORD *pdwFlags // Media object sets to 0
|
||||
);
|
||||
|
||||
//
|
||||
// Mediatypes
|
||||
//
|
||||
//
|
||||
// GetType - iterate through media types supported by a stream.
|
||||
// Returns S_FALSE if the type index is out of range ("no more types").
|
||||
//
|
||||
HRESULT GetInputType(
|
||||
DWORD dwInputStreamIndex,
|
||||
DWORD dwTypeIndex, // 0-based
|
||||
[out] DMO_MEDIA_TYPE *pmt
|
||||
);
|
||||
HRESULT GetOutputType(
|
||||
DWORD dwOutputStreamIndex,
|
||||
DWORD dwTypeIndex, // 0-based
|
||||
[out] DMO_MEDIA_TYPE *pmt
|
||||
);
|
||||
|
||||
//
|
||||
// SetType - tell the object the type of data it will work with.
|
||||
//
|
||||
HRESULT SetInputType(
|
||||
DWORD dwInputStreamIndex,
|
||||
[in] const DMO_MEDIA_TYPE *pmt,
|
||||
DWORD dwFlags // test only
|
||||
);
|
||||
HRESULT SetOutputType(
|
||||
DWORD dwOutputStreamIndex,
|
||||
[in] const DMO_MEDIA_TYPE *pmt,
|
||||
DWORD dwFlags // test only
|
||||
);
|
||||
|
||||
//
|
||||
// GetCurrentType - get the last mediatype supplied via SetType.
|
||||
// Returns S_FALSE if SetType has not been called.
|
||||
//
|
||||
HRESULT GetInputCurrentType(
|
||||
DWORD dwInputStreamIndex,
|
||||
[out] DMO_MEDIA_TYPE *pmt
|
||||
);
|
||||
HRESULT GetOutputCurrentType(
|
||||
DWORD dwOutputStreamIndex,
|
||||
[out] DMO_MEDIA_TYPE *pmt
|
||||
);
|
||||
|
||||
//
|
||||
// SizeInfo
|
||||
//
|
||||
//
|
||||
// GetSizeInfo - Get buffer size requirementes of a stream.
|
||||
//
|
||||
// If buffer size depends on the media type used, the object should
|
||||
// base its response on the most recent media type set for this stream.
|
||||
// If no mediatype has been set, the object may return an error.
|
||||
//
|
||||
HRESULT GetInputSizeInfo(
|
||||
DWORD dwInputStreamIndex,
|
||||
[out] DWORD *pcbSize, // size of input 'quantum'
|
||||
[out] DWORD *pcbMaxLookahead, // max total bytes held
|
||||
[out] DWORD *pcbAlignment // buffer alignment requirement
|
||||
);
|
||||
HRESULT GetOutputSizeInfo(
|
||||
DWORD dwOutputStreamIndex,
|
||||
[out] DWORD *pcbSize, // size of output 'quantum'
|
||||
[out] DWORD *pcbAlignment // buffer alignment requirement
|
||||
);
|
||||
|
||||
//
|
||||
// Latency methods
|
||||
//
|
||||
HRESULT GetInputMaxLatency(
|
||||
DWORD dwInputStreamIndex,
|
||||
[out] REFERENCE_TIME *prtMaxLatency
|
||||
);
|
||||
HRESULT SetInputMaxLatency(
|
||||
DWORD dwInputStreamIndex,
|
||||
REFERENCE_TIME rtMaxLatency
|
||||
);
|
||||
|
||||
//
|
||||
// Streaming / state methods
|
||||
//
|
||||
//
|
||||
// Flush() - discard any buffered data.
|
||||
//
|
||||
HRESULT Flush();
|
||||
|
||||
//
|
||||
// Send a discontinuity to an input stream. The object will not
|
||||
// accept any more data on this input stream until the discontinuity
|
||||
// has been completely processed, which may involve multiple
|
||||
// ProcessOutput() calls.
|
||||
//
|
||||
HRESULT Discontinuity(DWORD dwInputStreamIndex);
|
||||
|
||||
//
|
||||
// If a streaming object needs to perform any time consuming
|
||||
// initialization before it can stream data, it should do it inside
|
||||
// AllocateStreamingResources() rather than during the first process
|
||||
// call.
|
||||
//
|
||||
// This method is NOT guaranteed to be called before streaming
|
||||
// starts. If it is not called, the object should perform any
|
||||
// required initialization during a process call.
|
||||
//
|
||||
HRESULT AllocateStreamingResources();
|
||||
|
||||
// Free anything allocated in AllocateStreamingResources().
|
||||
HRESULT FreeStreamingResources();
|
||||
|
||||
// GetInputStatus - the only flag defined right now is ACCEPT_DATA.
|
||||
HRESULT GetInputStatus(
|
||||
DWORD dwInputStreamIndex,
|
||||
[out] DWORD *dwFlags // ACCEPT_DATA
|
||||
);
|
||||
|
||||
//
|
||||
// Pass one new buffer to an input stream
|
||||
//
|
||||
HRESULT ProcessInput(
|
||||
DWORD dwInputStreamIndex,
|
||||
IMediaBuffer *pBuffer, // must not be NULL
|
||||
DWORD dwFlags, // DMO_INPUT_DATA_BUFFERF_XXX (syncpoint, etc.)
|
||||
REFERENCE_TIME rtTimestamp, // valid if flag set
|
||||
REFERENCE_TIME rtTimelength // valid if flag set
|
||||
);
|
||||
|
||||
//
|
||||
// ProcessOutput() - generate output for current input buffers
|
||||
//
|
||||
// Output stream specific status information is returned in the
|
||||
// dwStatus member of each buffer wrapper structure.
|
||||
//
|
||||
HRESULT ProcessOutput(
|
||||
DWORD dwFlags, // DMO_PROCESS_OUTPUT_FLAGS
|
||||
DWORD cOutputBufferCount, // # returned by GetStreamCount()
|
||||
[in,out,size_is(cOutputBufferCount)]
|
||||
DMO_OUTPUT_DATA_BUFFER *pOutputBuffers, // one per stream
|
||||
[out] DWORD *pdwStatus // TBD, must be set to 0
|
||||
);
|
||||
|
||||
// Locking - lock if bLock is TRUE, otherwise unlock
|
||||
HRESULT Lock(LONG bLock);
|
||||
};
|
||||
|
||||
|
||||
//
|
||||
// Interface returned by the DMO enumeration API
|
||||
//
|
||||
[
|
||||
object,
|
||||
uuid(2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f)
|
||||
]
|
||||
interface IEnumDMO : IUnknown {
|
||||
HRESULT Next(
|
||||
DWORD cItemsToFetch,
|
||||
[out, size_is(cItemsToFetch), length_is(*pcItemsFetched)] CLSID *pCLSID,
|
||||
[out, size_is(cItemsToFetch), length_is(*pcItemsFetched), string] WCHAR **Names,
|
||||
[out] DWORD *pcItemsFetched
|
||||
);
|
||||
HRESULT Skip(
|
||||
DWORD cItemsToSkip
|
||||
);
|
||||
HRESULT Reset(void);
|
||||
HRESULT Clone(
|
||||
[out] IEnumDMO **ppEnum
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
// Flags for IMediaObjectInPlace::Process
|
||||
enum _DMO_INPLACE_PROCESS_FLAGS {
|
||||
DMO_INPLACE_NORMAL = 0x00000000,
|
||||
DMO_INPLACE_ZERO = 0x00000001
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(651b9ad0-0fc7-4aa9-9538-d89931010741)
|
||||
]
|
||||
interface IMediaObjectInPlace : IUnknown {
|
||||
|
||||
// Proces - Given a buffer of size ulSize, put the output
|
||||
// of the DMO into the same buffer.
|
||||
HRESULT Process(
|
||||
[in] ULONG ulSize,
|
||||
[in,out,size_is(ulSize)] BYTE* pData,
|
||||
[in] REFERENCE_TIME refTimeStart,
|
||||
[in] DWORD dwFlags
|
||||
);
|
||||
|
||||
// Create a copy of the In-Place Media Object. This allows
|
||||
// for very fast initialization of a number of In-Place objects
|
||||
// in a known state.
|
||||
HRESULT Clone(
|
||||
[out] IMediaObjectInPlace **ppMediaObject
|
||||
);
|
||||
|
||||
// GetLatency - Returns a REFERENCE_TIME value
|
||||
// (1 tick = 100ns) which corresponds to the latency time
|
||||
// processing this effect will add to the graph. This assumes
|
||||
// the effect cost per buffer is a constant.
|
||||
HRESULT GetLatency(
|
||||
[out] REFERENCE_TIME *pLatencyTime
|
||||
);
|
||||
}
|
||||
|
||||
// Quality control status flags
|
||||
enum _DMO_QUALITY_STATUS_FLAGS {
|
||||
DMO_QUALITY_STATUS_ENABLED = 0x00000001
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(65abea96-cf36-453f-af8a-705e98f16260)
|
||||
]
|
||||
interface IDMOQualityControl : IUnknown {
|
||||
HRESULT SetNow(
|
||||
[in] REFERENCE_TIME rtNow
|
||||
);
|
||||
HRESULT SetStatus(
|
||||
[in] DWORD dwFlags
|
||||
);
|
||||
HRESULT GetStatus(
|
||||
[out] DWORD *pdwFlags
|
||||
);
|
||||
}
|
||||
|
||||
// Flags for IVideoOutputOptimizations
|
||||
enum _DMO_VIDEO_OUTPUT_STREAM_FLAGS {
|
||||
DMO_VOSF_NEEDS_PREVIOUS_SAMPLE = 0x00000001
|
||||
};
|
||||
|
||||
[
|
||||
object,
|
||||
uuid(be8f4f4e-5b16-4d29-b350-7f6b5d9298ac)
|
||||
]
|
||||
interface IDMOVideoOutputOptimizations : IUnknown {
|
||||
HRESULT QueryOperationModePreferences (
|
||||
ULONG ulOutputStreamIndex,
|
||||
DWORD *pdwRequestedCapabilities
|
||||
);
|
||||
HRESULT SetOperationMode (
|
||||
ULONG ulOutputStreamIndex,
|
||||
DWORD dwEnabledFeatures
|
||||
);
|
||||
HRESULT GetCurrentOperationMode (
|
||||
ULONG ulOutputStreamIndex,
|
||||
DWORD *pdwEnabledFeatures
|
||||
);
|
||||
HRESULT GetCurrentSampleRequirements (
|
||||
ULONG ulOutputStreamIndex,
|
||||
DWORD *pdwRequestedFeatures
|
||||
);
|
||||
}
|
||||
|
|
@ -1,228 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: MedParam.idl
|
||||
//
|
||||
// Desc: Definition of the IMediaParams and associated interfaces. These
|
||||
// interfaces are designed to allow communication of curve-following
|
||||
// behaviors for parameters of objects which require dynamic changes
|
||||
// to their parameters at run time. All changes are specified by
|
||||
// timestamp and curve type to ensure the parameters can be set
|
||||
// at sufficient accuracy with predictable behavior on subsequent
|
||||
// playback of the same curves.
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "oaidl.idl";
|
||||
import "ocidl.idl";
|
||||
import "strmif.idl";
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Define the semantic type to be used for each parameter. All values passed
|
||||
// into this interface are 32-bit floats, but the interface can specify that
|
||||
// the values must be integer, booleans, or enumerated types
|
||||
//------------------------------------------------------------------------------
|
||||
typedef float MP_DATA; // All data is 32-bit floats
|
||||
|
||||
typedef enum _MP_Type {
|
||||
MPT_INT, // data is signed 23 bit integer (mantissa)
|
||||
MPT_FLOAT, // data is 32bit IEEE float
|
||||
MPT_BOOL, // data is true or false (using ANSI C++ definition)
|
||||
MPT_ENUM, // data is a set (represented by consecutive integers)
|
||||
MPT_MAX,
|
||||
} MP_TYPE;
|
||||
|
||||
const MP_DATA MPBOOL_TRUE = 1.0; // Value of true
|
||||
const MP_DATA MPBOOL_FALSE = 0.0; // Value of false
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Define the types of curves which are supported
|
||||
//------------------------------------------------------------------------------
|
||||
typedef enum _MP_CURVE_TYPE {
|
||||
MP_CURVE_JUMP = 0x0001, // No interpolation, just jump to next point
|
||||
MP_CURVE_LINEAR = 0x0002, // Linear interpolation (y follows x from 0.0 to 1.0)
|
||||
MP_CURVE_SQUARE = 0x0004, // y follow x^2 from 0.0 to 1.0
|
||||
MP_CURVE_INVSQUARE = 0x0008, // y follows 1-(x^2) from 0.0 to 1.0
|
||||
MP_CURVE_SINE = 0x0010, // y follows sin(x) from -pi/2 to pi/2
|
||||
} MP_CURVE_TYPE;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Capability bits. Used by the object to specify what capabilities it has.
|
||||
//------------------------------------------------------------------------------
|
||||
typedef DWORD MP_CAPS;
|
||||
// Curve capabilities - If the cap bit is set, that type of curve is supported
|
||||
const MP_CAPS MP_CAPS_CURVE_JUMP = MP_CURVE_JUMP;
|
||||
const MP_CAPS MP_CAPS_CURVE_LINEAR = MP_CURVE_LINEAR;
|
||||
const MP_CAPS MP_CAPS_CURVE_SQUARE = MP_CURVE_SQUARE;
|
||||
const MP_CAPS MP_CAPS_CURVE_INVSQUARE = MP_CURVE_INVSQUARE;
|
||||
const MP_CAPS MP_CAPS_CURVE_SINE = MP_CURVE_SINE;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Structure used to return information about the type and limits of a parameter
|
||||
//------------------------------------------------------------------------------
|
||||
typedef struct _MP_PARAMINFO {
|
||||
MP_TYPE mpType; // One of MP_TYPE_xxx codes
|
||||
MP_CAPS mopCaps; // A collection of MP_CAPS flags
|
||||
|
||||
// Minimum and maximum values
|
||||
MP_DATA mpdMinValue; // minimum legal value
|
||||
MP_DATA mpdMaxValue; // maximum legal value
|
||||
MP_DATA mpdNeutralValue; // default or 'center' value
|
||||
|
||||
// Defualt Unit and Label text. These strings will ALWAYS be English
|
||||
// strings in the UNICODE character set. For international text
|
||||
// use the GetParamText member function
|
||||
WCHAR szUnitText[32]; // units of the parameter
|
||||
WCHAR szLabel[32]; // name of the parameter
|
||||
|
||||
} MP_PARAMINFO;
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Parameter Index types
|
||||
//------------------------------------------------------------------------------
|
||||
typedef DWORD DWORD;
|
||||
const DWORD DWORD_ALLPARAMS = -1; // Apply this operation to all params
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Defined list of timestamp types
|
||||
//------------------------------------------------------------------------------
|
||||
typedef DWORD MP_TIMEDATA; // Extra data to further define type
|
||||
|
||||
// REFERENCE_TIME (1 tick = 100 nanoseconds, MP_TIMEDATA ignored)
|
||||
cpp_quote("DEFINE_GUID(GUID_TIME_REFERENCE,")
|
||||
cpp_quote("0x93ad712b, 0xdaa0, 0x4ffe, 0xbc, 0x81, 0xb0, 0xce, 0x50, 0xf, 0xcd, 0xd9);")
|
||||
|
||||
// Music Time (MP_TIMEDATA = parts/quarter note)
|
||||
cpp_quote("DEFINE_GUID(GUID_TIME_MUSIC,")
|
||||
cpp_quote("0x574c49d, 0x5b04, 0x4b15, 0xa5, 0x42, 0xae, 0x28, 0x20, 0x30, 0x11, 0x7b);")
|
||||
|
||||
// Time is measures in samples. MP_TIMEDATA = Samples/sec)
|
||||
cpp_quote("DEFINE_GUID(GUID_TIME_SAMPLES,")
|
||||
cpp_quote("0xa8593d05, 0xc43, 0x4984, 0x9a, 0x63, 0x97, 0xaf, 0x9e, 0x2, 0xc4, 0xc0);")
|
||||
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// The value of a given parameter at a specific point in time
|
||||
//------------------------------------------------------------------------------
|
||||
typedef DWORD MP_FLAGS;
|
||||
const MP_FLAGS MPF_ENVLP_STANDARD = 0x0000; // Use all data provided
|
||||
const MP_FLAGS MPF_ENVLP_BEGIN_CURRENTVAL = 0x0001;
|
||||
// Ignore valStart value, use current value as the staring point
|
||||
const MP_FLAGS MPF_ENVLP_BEGIN_NEUTRALVAL = 0x0002;
|
||||
// Ignore valStart value, use neutral value as the staring point
|
||||
|
||||
typedef struct _MP_ENVELOPE_SEGMENT {
|
||||
REFERENCE_TIME rtStart; // Start time in current time format
|
||||
REFERENCE_TIME rtEnd; // End time in current time format
|
||||
MP_DATA valStart; // Initial Value
|
||||
MP_DATA valEnd; // Final Value
|
||||
MP_CURVE_TYPE iCurve; // One of MP_CURVE_TYPE codes
|
||||
MP_FLAGS flags; // Special cases
|
||||
} MP_ENVELOPE_SEGMENT;
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// Define flags for Punch-in timing
|
||||
//------------------------------------------------------------------------------
|
||||
const MP_FLAGS MPF_PUNCHIN_REFTIME = 0; // Use the reference time as the PI time
|
||||
const MP_FLAGS MPF_PUNCHIN_NOW = 0x0001; // Punch in at the current clock time
|
||||
const MP_FLAGS MPF_PUNCHIN_STOPPED = 0x0002; // Return change notifications during
|
||||
// author time
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// IMediaParamInfo - Interface used to determine the names, data types and
|
||||
// units of the parameters which are exposed by the object. This interface
|
||||
// is used at discovery time, and is not required during run-time since the
|
||||
// objects parameters are a fixed set and this data can be cached by the
|
||||
// calling applicaiton.
|
||||
//------------------------------------------------------------------------------
|
||||
[
|
||||
object,
|
||||
uuid(6d6cbb60-a223-44aa-842f-a2f06750be6d),
|
||||
version(1.0)
|
||||
]
|
||||
interface IMediaParamInfo : IUnknown
|
||||
{
|
||||
HRESULT GetParamCount (
|
||||
[out] DWORD * pdwParams
|
||||
);
|
||||
HRESULT GetParamInfo (
|
||||
[in] DWORD dwParamIndex,
|
||||
[out] MP_PARAMINFO * pInfo
|
||||
);
|
||||
// returns a series of null terminated strings. strings are in the
|
||||
// following order:
|
||||
// Param Label, Units Text, 1st Enum Text, 2nd Enum Text, etc...
|
||||
HRESULT GetParamText (
|
||||
[in] DWORD dwParamIndex, // which param to get text for
|
||||
[out] WCHAR **ppwchText // returns ptr to CoTaskMemAlloc'd string
|
||||
);
|
||||
|
||||
// Returns the number of diffrent time formats this object understands
|
||||
HRESULT GetNumTimeFormats (
|
||||
[out] DWORD * pdwNumTimeFormats
|
||||
);
|
||||
|
||||
// Returns the GUID for the ith supported time format
|
||||
HRESULT GetSupportedTimeFormat(
|
||||
[in] DWORD dwFormatIndex,
|
||||
[out] GUID *pguidTimeFormat
|
||||
);
|
||||
|
||||
// Returns the current time format
|
||||
HRESULT GetCurrentTimeFormat (
|
||||
[out] GUID *pguidTimeFormat,
|
||||
[out] MP_TIMEDATA *pTimeData
|
||||
);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
// IMediaParams - Interfaes used to actually set the media params and the
|
||||
// envelopes to follow
|
||||
//------------------------------------------------------------------------------
|
||||
[
|
||||
object,
|
||||
uuid(6d6cbb61-a223-44aa-842f-a2f06750be6e),
|
||||
version(1.0)
|
||||
]
|
||||
interface IMediaParams : IUnknown
|
||||
{
|
||||
// Single param Get/Set methods
|
||||
HRESULT GetParam (
|
||||
[in] DWORD dwParamIndex,
|
||||
[out] MP_DATA *pValue
|
||||
);
|
||||
HRESULT SetParam (
|
||||
[in] DWORD dwParamIndex,
|
||||
[in] MP_DATA value
|
||||
);
|
||||
|
||||
// Envelope methods (param change over time)
|
||||
HRESULT AddEnvelope (
|
||||
[in] DWORD dwParamIndex,
|
||||
[in] DWORD cSegments,
|
||||
[in] MP_ENVELOPE_SEGMENT * pEnvelopeSegments
|
||||
);
|
||||
|
||||
// Flush all of the envelope information for the given paramter between
|
||||
// the timestamps specified
|
||||
HRESULT FlushEnvelope (
|
||||
[in] DWORD dwParamIndex,
|
||||
[in] REFERENCE_TIME refTimeStart,
|
||||
[in] REFERENCE_TIME refTimeEnd
|
||||
);
|
||||
|
||||
// Change the time format being used by the object
|
||||
HRESULT SetTimeFormat (
|
||||
[in] GUID guidTimeFormat,
|
||||
[in] MP_TIMEDATA mpTimeData
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -1,190 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: MMStream.idl
|
||||
//
|
||||
// Desc: MultiMedia streaming interface IDL file. Used by MIDL tool
|
||||
// to generate mmstream.h.
|
||||
//
|
||||
// Copyright (c) 1998-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
|
||||
cpp_quote("#define MS_ERROR_CODE(x) MAKE_HRESULT(1, FACILITY_ITF, (x) + 0x400)")
|
||||
cpp_quote("#define MS_SUCCESS_CODE(x) MAKE_HRESULT(0, FACILITY_ITF, x)")
|
||||
cpp_quote("#define MS_S_PENDING MS_SUCCESS_CODE(1)")
|
||||
cpp_quote("#define MS_S_NOUPDATE MS_SUCCESS_CODE(2)")
|
||||
cpp_quote("#define MS_S_ENDOFSTREAM MS_SUCCESS_CODE(3)")
|
||||
|
||||
cpp_quote("#define MS_E_SAMPLEALLOC MS_ERROR_CODE(1)")
|
||||
cpp_quote("#define MS_E_PURPOSEID MS_ERROR_CODE(2)")
|
||||
cpp_quote("#define MS_E_NOSTREAM MS_ERROR_CODE(3)")
|
||||
cpp_quote("#define MS_E_NOSEEKING MS_ERROR_CODE(4)")
|
||||
cpp_quote("#define MS_E_INCOMPATIBLE MS_ERROR_CODE(5)")
|
||||
cpp_quote("#define MS_E_BUSY MS_ERROR_CODE(6)")
|
||||
cpp_quote("#define MS_E_NOTINIT MS_ERROR_CODE(7)")
|
||||
cpp_quote("#define MS_E_SOURCEALREADYDEFINED MS_ERROR_CODE(8)")
|
||||
cpp_quote("#define MS_E_INVALIDSTREAMTYPE MS_ERROR_CODE(9)")
|
||||
cpp_quote("#define MS_E_NOTRUNNING MS_ERROR_CODE(10)")
|
||||
|
||||
cpp_quote("// {A35FF56A-9FDA-11d0-8FDF-00C04FD9189D}")
|
||||
cpp_quote("DEFINE_GUID(MSPID_PrimaryVideo, ")
|
||||
cpp_quote("0xa35ff56a, 0x9fda, 0x11d0, 0x8f, 0xdf, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
|
||||
|
||||
cpp_quote("// {A35FF56B-9FDA-11d0-8FDF-00C04FD9189D}")
|
||||
cpp_quote("DEFINE_GUID(MSPID_PrimaryAudio,")
|
||||
cpp_quote("0xa35ff56b, 0x9fda, 0x11d0, 0x8f, 0xdf, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);")
|
||||
|
||||
cpp_quote("#if(_WIN32_WINNT < 0x0400)")
|
||||
typedef void (__stdcall * PAPCFUNC)(DWORD_PTR dwParam);
|
||||
cpp_quote("#endif")
|
||||
|
||||
typedef LONGLONG STREAM_TIME;
|
||||
|
||||
typedef GUID MSPID;
|
||||
typedef REFGUID REFMSPID;
|
||||
|
||||
typedef enum {
|
||||
STREAMTYPE_READ = 0,
|
||||
STREAMTYPE_WRITE = 1,
|
||||
STREAMTYPE_TRANSFORM= 2
|
||||
} STREAM_TYPE;
|
||||
|
||||
typedef enum {
|
||||
STREAMSTATE_STOP = 0,
|
||||
STREAMSTATE_RUN = 1
|
||||
} STREAM_STATE;
|
||||
|
||||
|
||||
typedef enum {
|
||||
COMPSTAT_NOUPDATEOK = 0x00000001,
|
||||
COMPSTAT_WAIT = 0x00000002,
|
||||
COMPSTAT_ABORT = 0x00000004
|
||||
} COMPLETION_STATUS_FLAGS;
|
||||
|
||||
// Flags for GetInformation
|
||||
enum {
|
||||
MMSSF_HASCLOCK = 0x00000001,
|
||||
MMSSF_SUPPORTSEEK = 0x00000002,
|
||||
MMSSF_ASYNCHRONOUS = 0x00000004
|
||||
};
|
||||
|
||||
// Flags for StreamSample::Update
|
||||
enum {
|
||||
SSUPDATE_ASYNC = 0x00000001,
|
||||
SSUPDATE_CONTINUOUS = 0x00000002
|
||||
};
|
||||
|
||||
interface IMultiMediaStream;
|
||||
interface IMediaStream;
|
||||
interface IStreamSample;
|
||||
|
||||
// IMultiMediaStream interface
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(B502D1BC-9A57-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IMultiMediaStream : IUnknown {
|
||||
|
||||
HRESULT GetInformation(
|
||||
[out] DWORD *pdwFlags,
|
||||
[out] STREAM_TYPE *pStreamType);
|
||||
|
||||
HRESULT GetMediaStream(
|
||||
[in] REFMSPID idPurpose,
|
||||
[out] IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT EnumMediaStreams(
|
||||
[in] long Index,
|
||||
[out] IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT GetState(
|
||||
[out] STREAM_STATE *pCurrentState);
|
||||
|
||||
HRESULT SetState(
|
||||
[in] STREAM_STATE NewState);
|
||||
|
||||
HRESULT GetTime(
|
||||
[out] STREAM_TIME *pCurrentTime);
|
||||
|
||||
HRESULT GetDuration(
|
||||
[out] STREAM_TIME *pDuration);
|
||||
|
||||
HRESULT Seek(
|
||||
[in] STREAM_TIME SeekTime);
|
||||
|
||||
HRESULT GetEndOfStreamEventHandle(
|
||||
[out] HANDLE *phEOS);
|
||||
};
|
||||
|
||||
|
||||
// IMediaStream interface
|
||||
[
|
||||
object,
|
||||
uuid(B502D1BD-9A57-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IMediaStream : IUnknown {
|
||||
|
||||
HRESULT GetMultiMediaStream(
|
||||
[out] IMultiMediaStream **ppMultiMediaStream);
|
||||
|
||||
HRESULT GetInformation(
|
||||
[out] MSPID *pPurposeId,
|
||||
[out] STREAM_TYPE *pType);
|
||||
|
||||
HRESULT SetSameFormat(
|
||||
[in] IMediaStream *pStreamThatHasDesiredFormat,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
HRESULT AllocateSample(
|
||||
[in] DWORD dwFlags,
|
||||
[out] IStreamSample **ppSample);
|
||||
|
||||
|
||||
HRESULT CreateSharedSample(
|
||||
[in] IStreamSample *pExistingSample,
|
||||
[in] DWORD dwFlags,
|
||||
[out] IStreamSample **ppNewSample);
|
||||
|
||||
HRESULT SendEndOfStream(DWORD dwFlags);
|
||||
};
|
||||
|
||||
|
||||
// IStreamSample interface
|
||||
[
|
||||
object,
|
||||
local,
|
||||
uuid(B502D1BE-9A57-11d0-8FDE-00C04FD9189D),
|
||||
pointer_default(unique)
|
||||
]
|
||||
interface IStreamSample : IUnknown {
|
||||
|
||||
HRESULT GetMediaStream(
|
||||
[in] IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT GetSampleTimes(
|
||||
[out] STREAM_TIME * pStartTime,
|
||||
[out] STREAM_TIME * pEndTime,
|
||||
[out] STREAM_TIME * pCurrentTime);
|
||||
|
||||
HRESULT SetSampleTimes(
|
||||
[in] const STREAM_TIME *pStartTime,
|
||||
[in] const STREAM_TIME *pEndTime);
|
||||
|
||||
HRESULT Update(
|
||||
[in] DWORD dwFlags,
|
||||
[in] HANDLE hEvent,
|
||||
[in] PAPCFUNC pfnAPC,
|
||||
[in] DWORD_PTR dwAPCData);
|
||||
|
||||
HRESULT CompletionStatus(
|
||||
[in] DWORD dwFlags,
|
||||
[in] DWORD dwMilliseconds);
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -1,52 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: RegBag.idl
|
||||
//
|
||||
// Desc: IDL source for RegBag.dll.
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
cpp_quote("//+-------------------------------------------------------------------------")
|
||||
cpp_quote("//")
|
||||
cpp_quote("// Microsoft Windows")
|
||||
cpp_quote("// Copyright (C) Microsoft Corporation, 1999-2001.")
|
||||
cpp_quote("//")
|
||||
cpp_quote("//--------------------------------------------------------------------------")
|
||||
cpp_quote("#pragma once")
|
||||
|
||||
#ifndef DO_NO_IMPORTS
|
||||
import "objidl.idl";
|
||||
import "oaidl.idl";
|
||||
import "ocidl.idl";
|
||||
#endif
|
||||
|
||||
//*****************************************************************************
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Custom Factory interface
|
||||
// since com doesn't support ctors or initialization parameters on std factory interface
|
||||
// we have a custom creation interface
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
//*****************************************************************************
|
||||
///////////////////////////////////////////////////////////////////////////////////////
|
||||
[object,
|
||||
hidden, restricted,
|
||||
uuid(8A674B48-1F63-11d3-B64C-00C04F79498E),
|
||||
helpstring("Create property bag backed by registry"),
|
||||
pointer_default(unique),
|
||||
local
|
||||
]
|
||||
interface ICreatePropBagOnRegKey : IUnknown {
|
||||
// NOTE: it is up to the caller to set the correct registry access based on the interface
|
||||
// and methods the caller intends to use
|
||||
// IPropertyBag2::GetPropertyInfo and CountProperties require both KEY_QUERY_VALUE and KEY_ENUMERATE_SUBKEYS
|
||||
// IPropertyBagXXX::Read requires KEY_READ
|
||||
// IPropertyBagXXX::Write requires KEY_WRITE
|
||||
// also, you must CoTaskMemFree the name string from GetPropertyInfo
|
||||
// if you write a value of VT_EMPTY or VT_NULL the property will be removed from the bag and the corresponding
|
||||
// registry info will be deleted.
|
||||
HRESULT Create([in] HKEY hkey, [in] LPCOLESTR subkey, [in] DWORD ulOptions, [in] DWORD samDesired, REFIID iid, [out] LPVOID *ppBag);
|
||||
};
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: StrmIf.idl
|
||||
//
|
||||
// Desc: ActiveMovie interface definitions.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
//
|
||||
// Temporarily disable the /W4 compiler warning C4201, which will be
|
||||
// reported by all apps which include streams.h or dshow.h, which both
|
||||
// include the strmif.h generated by this IDL file.
|
||||
//
|
||||
cpp_quote("//+-------------------------------------------------------------------------")
|
||||
cpp_quote("//")
|
||||
cpp_quote("// Copyright (C) Microsoft Corporation, 1999-2001.")
|
||||
cpp_quote("//")
|
||||
cpp_quote("//--------------------------------------------------------------------------")
|
||||
cpp_quote("// Disable /W4 compiler warning C4201: nameless struct/union")
|
||||
cpp_quote("#pragma warning(disable:4201) // Disable C4201: nameless struct/union")
|
||||
cpp_quote(" ") // Blank space
|
||||
|
||||
import "unknwn.idl";
|
||||
import "objidl.idl"; // for IPersist (IFilter's root)
|
||||
|
||||
#include "devenum.idl"
|
||||
|
||||
// Core interfaces
|
||||
#include "axcore.idl"
|
||||
|
||||
// Extended, ActiveMovie-only interfaces
|
||||
#include "axextend.idl"
|
||||
|
||||
#if (WINVER < 0x501)
|
||||
#include "IAMovie.idl"
|
||||
#endif
|
||||
|
||||
// Application interfaces for DVD
|
||||
#include "dvdif.idl"
|
||||
|
||||
// Dynamic graph stuff
|
||||
#include "dyngraph.idl"
|
||||
|
||||
// This include is only valid when building for Windows XP
|
||||
#if (WINVER >= 0x501)
|
||||
|
||||
// Video Mixing Renderer
|
||||
#include "VMRender.idl"
|
||||
|
||||
#endif
|
||||
|
||||
//
|
||||
// Restore the previous setting for C4201 compiler warning
|
||||
//
|
||||
cpp_quote("// Restore the previous setting for C4201 compiler warning")
|
||||
cpp_quote("#pragma warning(default:4201)")
|
File diff suppressed because it is too large
Load Diff
|
@ -1,172 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: VideoAcc.idl
|
||||
//
|
||||
// Desc: An interface exposed by the overlay mixer to help decode samples
|
||||
// using hardware video acceleration.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
import "unknwn.idl";
|
||||
|
||||
cpp_quote("//")
|
||||
cpp_quote("// The following declarations within the 'if 0' block are dummy typedefs used to make")
|
||||
cpp_quote("// the motncomp.idl file build. The actual definitions are contained in ddraw.h and amva.h")
|
||||
cpp_quote("//")
|
||||
cpp_quote("#if 0")
|
||||
|
||||
typedef void* LPVOID;
|
||||
typedef void* LPGUID;
|
||||
typedef void* LPDIRECTDRAWSURFACE;
|
||||
typedef void* LPDDPIXELFORMAT;
|
||||
typedef void* LPAMVAInternalMemInfo;
|
||||
typedef void AMVAUncompDataInfo;
|
||||
typedef void* LPAMVACompBufferInfo;
|
||||
typedef void AMVABUFFERINFO;
|
||||
typedef void AMVAEndFrameInfo;
|
||||
typedef void* LPAMVAUncompBufferInfo;
|
||||
typedef void AMVABeginFrameInfo;
|
||||
typedef IUnknown* IMediaSample;
|
||||
|
||||
cpp_quote("#endif")
|
||||
cpp_quote("#include <ddraw.h>")
|
||||
cpp_quote("#include <amva.h>")
|
||||
|
||||
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(256A6A21-FBAD-11d1-82BF-00A0C9696C8F),
|
||||
helpstring("IAMVideoAcceleratorNotify Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
|
||||
// IAMVideoAcceleratorNotify
|
||||
interface IAMVideoAcceleratorNotify : IUnknown
|
||||
{
|
||||
// get information necessary to allocate uncompressed data buffers
|
||||
// which is not part of the mediatype format (like how many buffers to allocate etc)
|
||||
HRESULT GetUncompSurfacesInfo([in] const GUID *pGuid, [in] [out] LPAMVAUncompBufferInfo pUncompBufferInfo);
|
||||
|
||||
// set information regarding allocated uncompressed data buffers
|
||||
HRESULT SetUncompSurfacesInfo([in] DWORD dwActualUncompSurfacesAllocated);
|
||||
|
||||
// get information necessary to create video accelerator object. It is the caller's responsibility
|
||||
// to call CoTaskMemFree() on *ppMiscData
|
||||
HRESULT GetCreateVideoAcceleratorData([in] const GUID *pGuid, [out] LPDWORD pdwSizeMiscData, [out] LPVOID *ppMiscData);
|
||||
};
|
||||
|
||||
[
|
||||
local,
|
||||
object,
|
||||
uuid(256A6A22-FBAD-11d1-82BF-00A0C9696C8F),
|
||||
helpstring("IAMVideoAccelerator Interface"),
|
||||
pointer_default(unique)
|
||||
]
|
||||
|
||||
// IAMVideoAccelerator
|
||||
interface IAMVideoAccelerator : IUnknown
|
||||
{
|
||||
// pdwNumGuidsSupported is an IN OUT paramter
|
||||
// pGuidsSupported is an IN OUT paramter
|
||||
// if pGuidsSupported is NULL, pdwNumGuidsSupported should return back with the
|
||||
// number of uncompressed pixel formats supported
|
||||
// Otherwise pGuidsSupported is an array of *pdwNumGuidsSupported structures
|
||||
HRESULT GetVideoAcceleratorGUIDs([in] [out] LPDWORD pdwNumGuidsSupported, [in] [out] LPGUID pGuidsSupported);
|
||||
|
||||
// pGuid is an IN parameter
|
||||
// pdwNumFormatsSupported is an IN OUT paramter
|
||||
// pFormatsSupported is an IN OUT paramter (caller should make sure to set the size of EACH struct)
|
||||
// if pFormatsSupported is NULL, pdwNumFormatsSupported should return back with
|
||||
// the number of uncompressed pixel formats supported
|
||||
// Otherwise pFormatsSupported is an array of *pdwNumFormatsSupported structures
|
||||
HRESULT GetUncompFormatsSupported( [in] const GUID *pGuid, [in] [out] LPDWORD pdwNumFormatsSupported,
|
||||
[in] [out] LPDDPIXELFORMAT pFormatsSupported);
|
||||
|
||||
// pGuid is an IN parameter
|
||||
// pamvaUncompDataInfo is an IN parameter
|
||||
// pamvaInternalMemInfo is an IN OUT parameter (caller should make sure to set the size of struct)
|
||||
// currently only gets info about how much scratch memory will the hal allocate for its private use
|
||||
HRESULT GetInternalMemInfo([in] const GUID *pGuid, [in] const AMVAUncompDataInfo *pamvaUncompDataInfo,
|
||||
[in] [out] LPAMVAInternalMemInfo pamvaInternalMemInfo);
|
||||
|
||||
// pGuid is an IN parameter
|
||||
// pamvaUncompDataInfo is an IN parameter
|
||||
// pdwNumTypesCompBuffers is an IN OUT paramter
|
||||
// pamvaCompBufferInfo is an IN OUT paramter (caller should make sure to set the size of EACH struct)
|
||||
// if pamvaCompBufferInfo is NULL, pdwNumTypesCompBuffers should return back with the number of types of
|
||||
// compressed buffers
|
||||
// Otherwise pamvaCompBufferInfo is an array of *pdwNumTypesCompBuffers structures
|
||||
HRESULT GetCompBufferInfo([in] const GUID *pGuid, [in] const AMVAUncompDataInfo *pamvaUncompDataInfo,
|
||||
[in] [out] LPDWORD pdwNumTypesCompBuffers, [out] LPAMVACompBufferInfo pamvaCompBufferInfo);
|
||||
|
||||
|
||||
// pdwNumTypesCompBuffers is an IN OUT paramter
|
||||
// pamvaCompBufferInfo is an IN OUT paramter (caller should make sure to set the size of EACH struct)
|
||||
// if pamvaCompBufferInfo is NULL, pdwNumTypesCompBuffers should return back with the number of types of
|
||||
// compressed buffers
|
||||
// Otherwise pamvaCompBufferInfo is an array of *pdwNumTypesCompBuffers structures
|
||||
// only valid to call this after the pins are connected
|
||||
HRESULT GetInternalCompBufferInfo([in] [out] LPDWORD pdwNumTypesCompBuffers, [out] LPAMVACompBufferInfo pamvaCompBufferInfo);
|
||||
|
||||
// begin a frame, the pMiscData is passed directly to the hal
|
||||
// only valid to call this after the pins are connected
|
||||
// Tells the ovmixer which frame is the destination
|
||||
// frame. Use indices (valid vales are [0 .. pdwNumSurfacesAllocated-1]) to specify frames
|
||||
HRESULT BeginFrame([in] const AMVABeginFrameInfo *amvaBeginFrameInfo);
|
||||
|
||||
// end a frame, the pMiscData is passed directly to the hal
|
||||
// only valid to call this after the pins are connected
|
||||
HRESULT EndFrame([in] const AMVAEndFrameInfo *pEndFrameInfo);
|
||||
|
||||
// lock and obtain access to a single buffer
|
||||
// only valid to call this after the pins are connected
|
||||
// Buffers are identified by type and index within that type
|
||||
// Specifiying read-only will allow access to busy reference
|
||||
// frames
|
||||
// Output (uncompressed) frames use a type index of 0xFFFFFFFF
|
||||
HRESULT GetBuffer(
|
||||
[in] DWORD dwTypeIndex,
|
||||
[in] DWORD dwBufferIndex,
|
||||
[in] BOOL bReadOnly,
|
||||
[out] LPVOID *ppBuffer,
|
||||
[out] LONG *lpStride);
|
||||
|
||||
// unlock a single buffer
|
||||
// Buffers are identified by type and index within that type
|
||||
// only valid to call this after the pins are connected
|
||||
HRESULT ReleaseBuffer([in] DWORD dwTypeIndex, [in] DWORD dwBufferIndex);
|
||||
|
||||
// Perform a decompression operation
|
||||
// Private data can be passed to and from a driver
|
||||
// identifiers for the corresponding members of pamvaMacroBlockInfo
|
||||
// pamvaMacroBlockInfo is an IN parameter which is array (of length dwNumBlocks) of structures
|
||||
// only valid to call this after the pins are connected
|
||||
HRESULT Execute(
|
||||
[in] DWORD dwFunction,
|
||||
[in] LPVOID lpPrivateInputData,
|
||||
[in] DWORD cbPrivateInputData,
|
||||
[in] LPVOID lpPrivateOutputDat,
|
||||
[in] DWORD cbPrivateOutputData,
|
||||
[in] DWORD dwNumBuffers,
|
||||
[in] const AMVABUFFERINFO *pamvaBufferInfo);
|
||||
|
||||
// query the decode status of a particular decompression operation
|
||||
// dwTypeIndex and dwBufferIndex define the buffer whose status is
|
||||
// being queried
|
||||
HRESULT QueryRenderStatus([in] DWORD dwTypeIndex,
|
||||
[in] DWORD dwBufferIndex,
|
||||
[in] DWORD dwFlags);
|
||||
|
||||
// display a frame. The mediasample contains the timestamps etc for the frame to be displayed
|
||||
// this call is a non-blocking call
|
||||
// only valid to call this after the pins are connected
|
||||
HRESULT DisplayFrame([in] DWORD dwFlipToIndex, [in] IMediaSample *pMediaSample);
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,19 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: ActiveCf.h
|
||||
//
|
||||
// Desc: Contains the data formats for the transfer of VfW4 filters via the
|
||||
// clipboard.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#define CFSTR_VFW_FILTERLIST "Video for Windows 4 Filters"
|
||||
|
||||
typedef struct tagVFW_FILTERLIST{
|
||||
UINT cFilters; // number of CLSIDs in aClsId
|
||||
CLSID aClsId[1]; // ClsId of each filter
|
||||
|
||||
} VFW_FILTERLIST;
|
||||
|
||||
|
|
@ -1,54 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMAudio.h
|
||||
//
|
||||
// Desc: Audio related definitions and interfaces for ActiveMovie.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#ifndef __AMAUDIO__
|
||||
#define __AMAUDIO__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
#include <mmsystem.h>
|
||||
#include <dsound.h>
|
||||
|
||||
// This is the interface the audio renderer supports to give the application
|
||||
// access to the direct sound object and the buffers it is using, to allow the
|
||||
// application to use things like the 3D features of Direct Sound for the
|
||||
// soundtrack of a movie being played with Active Movie.
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IAMDirectSound
|
||||
|
||||
DECLARE_INTERFACE_(IAMDirectSound,IUnknown)
|
||||
{
|
||||
/* IUnknown methods */
|
||||
|
||||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
|
||||
/* IAMDirectSound methods */
|
||||
|
||||
STDMETHOD(GetDirectSoundInterface)(THIS_ LPDIRECTSOUND *lplpds) PURE;
|
||||
STDMETHOD(GetPrimaryBufferInterface)(THIS_ LPDIRECTSOUNDBUFFER *lplpdsb) PURE;
|
||||
STDMETHOD(GetSecondaryBufferInterface)(THIS_ LPDIRECTSOUNDBUFFER *lplpdsb) PURE;
|
||||
STDMETHOD(ReleaseDirectSoundInterface)(THIS_ LPDIRECTSOUND lpds) PURE;
|
||||
STDMETHOD(ReleasePrimaryBufferInterface)(THIS_ LPDIRECTSOUNDBUFFER lpdsb) PURE;
|
||||
STDMETHOD(ReleaseSecondaryBufferInterface)(THIS_ LPDIRECTSOUNDBUFFER lpdsb) PURE;
|
||||
STDMETHOD(SetFocusWindow)(THIS_ HWND, BOOL) PURE ;
|
||||
STDMETHOD(GetFocusWindow)(THIS_ HWND *, BOOL*) PURE ;
|
||||
};
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif // __cplusplus
|
||||
#endif // __AMAUDIO__
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMParse.h
|
||||
//
|
||||
// Desc: Interface to the parser to get current time. This is useful for
|
||||
// multifile playback.
|
||||
//
|
||||
// Copyright (c) 1996-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#ifndef __AMPARSE__
|
||||
#define __AMPARSE__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
|
||||
DEFINE_GUID(IID_IAMParse,
|
||||
0xc47a3420, 0x005c, 0x11d2, 0x90, 0x38, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x98);
|
||||
|
||||
//
|
||||
// Parser interface - supported by MPEG-2 splitter filter
|
||||
//
|
||||
DECLARE_INTERFACE_(IAMParse, IUnknown) {
|
||||
STDMETHOD(GetParseTime) (THIS_
|
||||
REFERENCE_TIME *prtCurrent
|
||||
) PURE;
|
||||
STDMETHOD(SetParseTime) (THIS_
|
||||
REFERENCE_TIME rtCurrent
|
||||
) PURE;
|
||||
STDMETHOD(Flush) (THIS) PURE;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif // __cplusplus
|
||||
#endif // __AMPARSE__
|
File diff suppressed because it is too large
Load Diff
|
@ -1,85 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMVA.h
|
||||
//
|
||||
// Desc: DirectShowMotionComp include file.
|
||||
//
|
||||
// Copyright (c) 1997-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#ifndef __AMVA_INCLUDED__
|
||||
#define __AMVA_INCLUDED__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#define AMVA_TYPEINDEX_OUTPUTFRAME 0xFFFFFFFF
|
||||
|
||||
// Flags for QueryRenderStatus
|
||||
#define AMVA_QUERYRENDERSTATUSF_READ 0x00000001 // Query for read
|
||||
// set this bit to 0
|
||||
// if query for update
|
||||
|
||||
typedef struct _tag_AMVAUncompBufferInfo
|
||||
{
|
||||
DWORD dwMinNumSurfaces; // IN min number of surfaces to be allocated
|
||||
DWORD dwMaxNumSurfaces; // IN max number of surfaces to be allocated
|
||||
DDPIXELFORMAT ddUncompPixelFormat; // IN pixel format of surfaces to be allocated
|
||||
} AMVAUncompBufferInfo, *LPAMVAUncompBufferInfo;
|
||||
|
||||
typedef struct _tag_AMVAUncompDataInfo
|
||||
{
|
||||
DWORD dwUncompWidth; // [in] width of uncompressed data
|
||||
DWORD dwUncompHeight; // [in] height of uncompressed data
|
||||
DDPIXELFORMAT ddUncompPixelFormat; // [in] pixel-format of uncompressed data
|
||||
} AMVAUncompDataInfo, *LPAMVAUncompDataInfo;
|
||||
|
||||
typedef struct _tag_AMVAInternalMemInfo
|
||||
{
|
||||
DWORD dwScratchMemAlloc; // [out] amount of scratch memory will the hal allocate for its private use
|
||||
} AMVAInternalMemInfo, *LPAMVAInternalMemInfo;
|
||||
|
||||
|
||||
typedef struct _tag_AMVACompBufferInfo
|
||||
{
|
||||
DWORD dwNumCompBuffers; // [out] number of buffers reqd for compressed data
|
||||
DWORD dwWidthToCreate; // [out] Width of surface to create
|
||||
DWORD dwHeightToCreate; // [out] Height of surface to create
|
||||
DWORD dwBytesToAllocate; // [out] Total number of bytes used by each surface
|
||||
DDSCAPS2 ddCompCaps; // [out] caps to create surfaces to store compressed data
|
||||
DDPIXELFORMAT ddPixelFormat; // [out] fourcc to create surfaces to store compressed data
|
||||
} AMVACompBufferInfo, *LPAMVACompBufferInfo;
|
||||
|
||||
|
||||
// Note that you are NOT allowed to store any pointer in pMiscData
|
||||
typedef struct _tag_AMVABeginFrameInfo
|
||||
{
|
||||
DWORD dwDestSurfaceIndex; // IN destination buffer in which to decoding this frame
|
||||
LPVOID pInputData; // IN pointer to misc data
|
||||
DWORD dwSizeInputData; // IN size of other misc data to begin frame
|
||||
LPVOID pOutputData; // OUT pointer to data which the VGA is going to fill
|
||||
DWORD dwSizeOutputData; // IN size of data which the VGA is going to fill
|
||||
} AMVABeginFrameInfo, *LPAMVABeginFrameInfo;
|
||||
|
||||
// Note that you are NOT allowed to store any pointer in pMiscData
|
||||
typedef struct _tag_AMVAEndFrameInfo
|
||||
{
|
||||
DWORD dwSizeMiscData; // [in] size of other misc data to begin frame
|
||||
LPVOID pMiscData; // [in] pointer to misc data
|
||||
} AMVAEndFrameInfo, *LPAMVAEndFrameInfo;
|
||||
|
||||
typedef struct _tag_AMVABUFFERINFO
|
||||
{
|
||||
DWORD dwTypeIndex; // [in] Type of buffer
|
||||
DWORD dwBufferIndex; // [in] Buffer index
|
||||
DWORD dwDataOffset; // [in] offset of relevant data from the beginning of buffer
|
||||
DWORD dwDataSize; // [in] size of relevant data
|
||||
} AMVABUFFERINFO, *LPAMVABUFFERINFO;
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif // _AMVA_INCLUDED
|
|
@ -1,433 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AMVideo.h
|
||||
//
|
||||
// Desc: Video related definitions and interfaces for ActiveMovie.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#ifndef __AMVIDEO__
|
||||
#define __AMVIDEO__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
#include <ddraw.h>
|
||||
|
||||
|
||||
// This is an interface on the video renderer that provides information about
|
||||
// DirectDraw with respect to its use by the renderer. For example it allows
|
||||
// an application to get details of the surface and any hardware capabilities
|
||||
// that are available. It also allows someone to adjust the surfaces that the
|
||||
// renderer should use and furthermore even set the DirectDraw instance. We
|
||||
// allow someone to set the DirectDraw instance because DirectDraw can only
|
||||
// be opened once per process so it helps resolve conflicts. There is some
|
||||
// duplication in this interface as the hardware/emulated/FOURCCs available
|
||||
// can all be found through the IDirectDraw interface, this interface allows
|
||||
// simple access to that information without calling the DirectDraw provider
|
||||
// itself. The AMDDS prefix is ActiveMovie DirectDraw Switches abbreviated.
|
||||
|
||||
#define AMDDS_NONE 0x00 // No use for DCI/DirectDraw
|
||||
#define AMDDS_DCIPS 0x01 // Use DCI primary surface
|
||||
#define AMDDS_PS 0x02 // Use DirectDraw primary
|
||||
#define AMDDS_RGBOVR 0x04 // RGB overlay surfaces
|
||||
#define AMDDS_YUVOVR 0x08 // YUV overlay surfaces
|
||||
#define AMDDS_RGBOFF 0x10 // RGB offscreen surfaces
|
||||
#define AMDDS_YUVOFF 0x20 // YUV offscreen surfaces
|
||||
#define AMDDS_RGBFLP 0x40 // RGB flipping surfaces
|
||||
#define AMDDS_YUVFLP 0x80 // YUV flipping surfaces
|
||||
#define AMDDS_ALL 0xFF // ALL the previous flags
|
||||
#define AMDDS_DEFAULT AMDDS_ALL // Use all available surfaces
|
||||
|
||||
#define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)
|
||||
#define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)
|
||||
#define AMDDS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDirectDrawVideo
|
||||
|
||||
DECLARE_INTERFACE_(IDirectDrawVideo, IUnknown)
|
||||
{
|
||||
// IUnknown methods
|
||||
|
||||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
|
||||
// IDirectDrawVideo methods
|
||||
|
||||
STDMETHOD(GetSwitches)(THIS_ DWORD *pSwitches) PURE;
|
||||
STDMETHOD(SetSwitches)(THIS_ DWORD Switches) PURE;
|
||||
STDMETHOD(GetCaps)(THIS_ DDCAPS *pCaps) PURE;
|
||||
STDMETHOD(GetEmulatedCaps)(THIS_ DDCAPS *pCaps) PURE;
|
||||
STDMETHOD(GetSurfaceDesc)(THIS_ DDSURFACEDESC *pSurfaceDesc) PURE;
|
||||
STDMETHOD(GetFourCCCodes)(THIS_ DWORD *pCount,DWORD *pCodes) PURE;
|
||||
STDMETHOD(SetDirectDraw)(THIS_ LPDIRECTDRAW pDirectDraw) PURE;
|
||||
STDMETHOD(GetDirectDraw)(THIS_ LPDIRECTDRAW *ppDirectDraw) PURE;
|
||||
STDMETHOD(GetSurfaceType)(THIS_ DWORD *pSurfaceType) PURE;
|
||||
STDMETHOD(SetDefault)(THIS) PURE;
|
||||
STDMETHOD(UseScanLine)(THIS_ long UseScanLine) PURE;
|
||||
STDMETHOD(CanUseScanLine)(THIS_ long *UseScanLine) PURE;
|
||||
STDMETHOD(UseOverlayStretch)(THIS_ long UseOverlayStretch) PURE;
|
||||
STDMETHOD(CanUseOverlayStretch)(THIS_ long *UseOverlayStretch) PURE;
|
||||
STDMETHOD(UseWhenFullScreen)(THIS_ long UseWhenFullScreen) PURE;
|
||||
STDMETHOD(WillUseFullScreen)(THIS_ long *UseWhenFullScreen) PURE;
|
||||
};
|
||||
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IQualProp
|
||||
|
||||
DECLARE_INTERFACE_(IQualProp, IUnknown)
|
||||
{
|
||||
// IUnknown methods
|
||||
|
||||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
|
||||
// Compare these with the functions in class CGargle in gargle.h
|
||||
|
||||
STDMETHOD(get_FramesDroppedInRenderer)(THIS_ int *pcFrames) PURE; // Out
|
||||
STDMETHOD(get_FramesDrawn)(THIS_ int *pcFramesDrawn) PURE; // Out
|
||||
STDMETHOD(get_AvgFrameRate)(THIS_ int *piAvgFrameRate) PURE; // Out
|
||||
STDMETHOD(get_Jitter)(THIS_ int *iJitter) PURE; // Out
|
||||
STDMETHOD(get_AvgSyncOffset)(THIS_ int *piAvg) PURE; // Out
|
||||
STDMETHOD(get_DevSyncOffset)(THIS_ int *piDev) PURE; // Out
|
||||
};
|
||||
|
||||
|
||||
// This interface allows an application or plug in distributor to control a
|
||||
// full screen renderer. The Modex renderer supports this interface. When
|
||||
// connected a renderer should load the display modes it has available
|
||||
// The number of modes available can be obtained through CountModes. Then
|
||||
// information on each individual mode is available by calling GetModeInfo
|
||||
// and IsModeAvailable. An application may enable and disable any modes
|
||||
// by calling the SetEnabled flag with OATRUE or OAFALSE (not C/C++ TRUE
|
||||
// and FALSE values) - the current value may be queried by IsModeEnabled
|
||||
|
||||
// A more generic way of setting the modes enabled that is easier to use
|
||||
// when writing applications is the clip loss factor. This defines the
|
||||
// amount of video that can be lost when deciding which display mode to
|
||||
// use. Assuming the decoder cannot compress the video then playing an
|
||||
// MPEG file (say 352x288) into a 320x200 display will lose about 25% of
|
||||
// the image. The clip loss factor specifies the upper range permissible.
|
||||
// To allow typical MPEG video to be played in 320x200 it defaults to 25%
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IFullScreenVideo
|
||||
|
||||
DECLARE_INTERFACE_(IFullScreenVideo, IUnknown)
|
||||
{
|
||||
// IUnknown methods
|
||||
|
||||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
|
||||
// IFullScreenVideo methods
|
||||
|
||||
STDMETHOD(CountModes)(THIS_ long *pModes) PURE;
|
||||
STDMETHOD(GetModeInfo)(THIS_ long Mode,long *pWidth,long *pHeight,long *pDepth) PURE;
|
||||
STDMETHOD(GetCurrentMode)(THIS_ long *pMode) PURE;
|
||||
STDMETHOD(IsModeAvailable)(THIS_ long Mode) PURE;
|
||||
STDMETHOD(IsModeEnabled)(THIS_ long Mode) PURE;
|
||||
STDMETHOD(SetEnabled)(THIS_ long Mode,long bEnabled) PURE;
|
||||
STDMETHOD(GetClipFactor)(THIS_ long *pClipFactor) PURE;
|
||||
STDMETHOD(SetClipFactor)(THIS_ long ClipFactor) PURE;
|
||||
STDMETHOD(SetMessageDrain)(THIS_ HWND hwnd) PURE;
|
||||
STDMETHOD(GetMessageDrain)(THIS_ HWND *hwnd) PURE;
|
||||
STDMETHOD(SetMonitor)(THIS_ long Monitor) PURE;
|
||||
STDMETHOD(GetMonitor)(THIS_ long *Monitor) PURE;
|
||||
STDMETHOD(HideOnDeactivate)(THIS_ long Hide) PURE;
|
||||
STDMETHOD(IsHideOnDeactivate)(THIS) PURE;
|
||||
STDMETHOD(SetCaption)(THIS_ BSTR strCaption) PURE;
|
||||
STDMETHOD(GetCaption)(THIS_ BSTR *pstrCaption) PURE;
|
||||
STDMETHOD(SetDefault)(THIS) PURE;
|
||||
};
|
||||
|
||||
|
||||
// This adds the accelerator table capabilities in fullscreen. This is being
|
||||
// added between the original runtime release and the full SDK release. We
|
||||
// cannot just add the method to IFullScreenVideo as we don't want to force
|
||||
// applications to have to ship the ActiveMovie support DLLs - this is very
|
||||
// important to applications that plan on being downloaded over the Internet
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IFullScreenVideoEx
|
||||
|
||||
DECLARE_INTERFACE_(IFullScreenVideoEx, IFullScreenVideo)
|
||||
{
|
||||
// IUnknown methods
|
||||
|
||||
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID *ppvObj) PURE;
|
||||
STDMETHOD_(ULONG,AddRef)(THIS) PURE;
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
|
||||
// IFullScreenVideo methods
|
||||
|
||||
STDMETHOD(CountModes)(THIS_ long *pModes) PURE;
|
||||
STDMETHOD(GetModeInfo)(THIS_ long Mode,long *pWidth,long *pHeight,long *pDepth) PURE;
|
||||
STDMETHOD(GetCurrentMode)(THIS_ long *pMode) PURE;
|
||||
STDMETHOD(IsModeAvailable)(THIS_ long Mode) PURE;
|
||||
STDMETHOD(IsModeEnabled)(THIS_ long Mode) PURE;
|
||||
STDMETHOD(SetEnabled)(THIS_ long Mode,long bEnabled) PURE;
|
||||
STDMETHOD(GetClipFactor)(THIS_ long *pClipFactor) PURE;
|
||||
STDMETHOD(SetClipFactor)(THIS_ long ClipFactor) PURE;
|
||||
STDMETHOD(SetMessageDrain)(THIS_ HWND hwnd) PURE;
|
||||
STDMETHOD(GetMessageDrain)(THIS_ HWND *hwnd) PURE;
|
||||
STDMETHOD(SetMonitor)(THIS_ long Monitor) PURE;
|
||||
STDMETHOD(GetMonitor)(THIS_ long *Monitor) PURE;
|
||||
STDMETHOD(HideOnDeactivate)(THIS_ long Hide) PURE;
|
||||
STDMETHOD(IsHideOnDeactivate)(THIS) PURE;
|
||||
STDMETHOD(SetCaption)(THIS_ BSTR strCaption) PURE;
|
||||
STDMETHOD(GetCaption)(THIS_ BSTR *pstrCaption) PURE;
|
||||
STDMETHOD(SetDefault)(THIS) PURE;
|
||||
|
||||
// IFullScreenVideoEx
|
||||
|
||||
STDMETHOD(SetAcceleratorTable)(THIS_ HWND hwnd,HACCEL hAccel) PURE;
|
||||
STDMETHOD(GetAcceleratorTable)(THIS_ HWND *phwnd,HACCEL *phAccel) PURE;
|
||||
STDMETHOD(KeepPixelAspectRatio)(THIS_ long KeepAspect) PURE;
|
||||
STDMETHOD(IsKeepPixelAspectRatio)(THIS_ long *pKeepAspect) PURE;
|
||||
};
|
||||
|
||||
|
||||
// The SDK base classes contain a base video mixer class. Video mixing in a
|
||||
// software environment is tricky because we typically have multiple streams
|
||||
// each sending data at unpredictable times. To work with this we defined a
|
||||
// pin that is the lead pin, when data arrives on this pin we do a mix. As
|
||||
// an alternative we may not want to have a lead pin but output samples at
|
||||
// predefined spaces, like one every 1/15 of a second, this interfaces also
|
||||
// supports that mode of operations (there is a working video mixer sample)
|
||||
|
||||
// be nice to our friends in C
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IBaseVideoMixer
|
||||
|
||||
DECLARE_INTERFACE_(IBaseVideoMixer, IUnknown)
|
||||
{
|
||||
STDMETHOD(SetLeadPin)(THIS_ int iPin) PURE;
|
||||
STDMETHOD(GetLeadPin)(THIS_ int *piPin) PURE;
|
||||
STDMETHOD(GetInputPinCount)(THIS_ int *piPinCount) PURE;
|
||||
STDMETHOD(IsUsingClock)(THIS_ int *pbValue) PURE;
|
||||
STDMETHOD(SetUsingClock)(THIS_ int bValue) PURE;
|
||||
STDMETHOD(GetClockPeriod)(THIS_ int *pbValue) PURE;
|
||||
STDMETHOD(SetClockPeriod)(THIS_ int bValue) PURE;
|
||||
};
|
||||
|
||||
#define iPALETTE_COLORS 256 // Maximum colours in palette
|
||||
#define iEGA_COLORS 16 // Number colours in EGA palette
|
||||
#define iMASK_COLORS 3 // Maximum three components
|
||||
#define iTRUECOLOR 16 // Minimum true colour device
|
||||
#define iRED 0 // Index position for RED mask
|
||||
#define iGREEN 1 // Index position for GREEN mask
|
||||
#define iBLUE 2 // Index position for BLUE mask
|
||||
#define iPALETTE 8 // Maximum colour depth using a palette
|
||||
#define iMAXBITS 8 // Maximum bits per colour component
|
||||
|
||||
|
||||
// Used for true colour images that also have a palette
|
||||
|
||||
typedef struct tag_TRUECOLORINFO {
|
||||
DWORD dwBitMasks[iMASK_COLORS];
|
||||
RGBQUAD bmiColors[iPALETTE_COLORS];
|
||||
} TRUECOLORINFO;
|
||||
|
||||
|
||||
// The BITMAPINFOHEADER contains all the details about the video stream such
|
||||
// as the actual image dimensions and their pixel depth. A source filter may
|
||||
// also request that the sink take only a section of the video by providing a
|
||||
// clipping rectangle in rcSource. In the worst case where the sink filter
|
||||
// forgets to check this on connection it will simply render the whole thing
|
||||
// which isn't a disaster. Ideally a sink filter will check the rcSource and
|
||||
// if it doesn't support image extraction and the rectangle is not empty then
|
||||
// it will reject the connection. A filter should use SetRectEmpty to reset a
|
||||
// rectangle to all zeroes (and IsRectEmpty to later check the rectangle).
|
||||
// The rcTarget specifies the destination rectangle for the video, for most
|
||||
// source filters they will set this to all zeroes, a downstream filter may
|
||||
// request that the video be placed in a particular area of the buffers it
|
||||
// supplies in which case it will call QueryAccept with a non empty target
|
||||
|
||||
typedef struct tagVIDEOINFOHEADER {
|
||||
|
||||
RECT rcSource; // The bit we really want to use
|
||||
RECT rcTarget; // Where the video should go
|
||||
DWORD dwBitRate; // Approximate bit data rate
|
||||
DWORD dwBitErrorRate; // Bit error rate for this stream
|
||||
REFERENCE_TIME AvgTimePerFrame; // Average time per frame (100ns units)
|
||||
|
||||
BITMAPINFOHEADER bmiHeader;
|
||||
|
||||
} VIDEOINFOHEADER;
|
||||
|
||||
// make sure the pbmi is initialized before using these macros
|
||||
#define TRUECOLOR(pbmi) ((TRUECOLORINFO *)(((LPBYTE)&((pbmi)->bmiHeader)) \
|
||||
+ (pbmi)->bmiHeader.biSize))
|
||||
#define COLORS(pbmi) ((RGBQUAD *)(((LPBYTE)&((pbmi)->bmiHeader)) \
|
||||
+ (pbmi)->bmiHeader.biSize))
|
||||
#define BITMASKS(pbmi) ((DWORD *)(((LPBYTE)&((pbmi)->bmiHeader)) \
|
||||
+ (pbmi)->bmiHeader.biSize))
|
||||
|
||||
// All the image based filters use this to communicate their media types. It's
|
||||
// centred principally around the BITMAPINFO. This structure always contains a
|
||||
// BITMAPINFOHEADER followed by a number of other fields depending on what the
|
||||
// BITMAPINFOHEADER contains. If it contains details of a palettised format it
|
||||
// will be followed by one or more RGBQUADs defining the palette. If it holds
|
||||
// details of a true colour format then it may be followed by a set of three
|
||||
// DWORD bit masks that specify where the RGB data can be found in the image
|
||||
// (For more information regarding BITMAPINFOs see the Win32 documentation)
|
||||
|
||||
// The rcSource and rcTarget fields are not for use by filters supplying the
|
||||
// data. The destination (target) rectangle should be set to all zeroes. The
|
||||
// source may also be zero filled or set with the dimensions of the video. So
|
||||
// if the video is 352x288 pixels then set it to (0,0,352,288). These fields
|
||||
// are mainly used by downstream filters that want to ask the source filter
|
||||
// to place the image in a different position in an output buffer. So when
|
||||
// using for example the primary surface the video renderer may ask a filter
|
||||
// to place the video images in a destination position of (100,100,452,388)
|
||||
// on the display since that's where the window is positioned on the display
|
||||
|
||||
// !!! WARNING !!!
|
||||
// DO NOT use this structure unless you are sure that the BITMAPINFOHEADER
|
||||
// has a normal biSize == sizeof(BITMAPINFOHEADER) !
|
||||
// !!! WARNING !!!
|
||||
|
||||
typedef struct tagVIDEOINFO {
|
||||
|
||||
RECT rcSource; // The bit we really want to use
|
||||
RECT rcTarget; // Where the video should go
|
||||
DWORD dwBitRate; // Approximate bit data rate
|
||||
DWORD dwBitErrorRate; // Bit error rate for this stream
|
||||
REFERENCE_TIME AvgTimePerFrame; // Average time per frame (100ns units)
|
||||
|
||||
BITMAPINFOHEADER bmiHeader;
|
||||
|
||||
union {
|
||||
RGBQUAD bmiColors[iPALETTE_COLORS]; // Colour palette
|
||||
DWORD dwBitMasks[iMASK_COLORS]; // True colour masks
|
||||
TRUECOLORINFO TrueColorInfo; // Both of the above
|
||||
};
|
||||
|
||||
} VIDEOINFO;
|
||||
|
||||
// These macros define some standard bitmap format sizes
|
||||
|
||||
#define SIZE_EGA_PALETTE (iEGA_COLORS * sizeof(RGBQUAD))
|
||||
#define SIZE_PALETTE (iPALETTE_COLORS * sizeof(RGBQUAD))
|
||||
#define SIZE_MASKS (iMASK_COLORS * sizeof(DWORD))
|
||||
#define SIZE_PREHEADER (FIELD_OFFSET(VIDEOINFOHEADER,bmiHeader))
|
||||
#define SIZE_VIDEOHEADER (sizeof(BITMAPINFOHEADER) + SIZE_PREHEADER)
|
||||
// !!! for abnormal biSizes
|
||||
// #define SIZE_VIDEOHEADER(pbmi) ((pbmi)->bmiHeader.biSize + SIZE_PREHEADER)
|
||||
|
||||
// DIBSIZE calculates the number of bytes required by an image
|
||||
|
||||
#define WIDTHBYTES(bits) ((DWORD)(((bits)+31) & (~31)) / 8)
|
||||
#define DIBWIDTHBYTES(bi) (DWORD)WIDTHBYTES((DWORD)(bi).biWidth * (DWORD)(bi).biBitCount)
|
||||
#define _DIBSIZE(bi) (DIBWIDTHBYTES(bi) * (DWORD)(bi).biHeight)
|
||||
#define DIBSIZE(bi) ((bi).biHeight < 0 ? (-1)*(_DIBSIZE(bi)) : _DIBSIZE(bi))
|
||||
|
||||
// This compares the bit masks between two VIDEOINFOHEADERs
|
||||
|
||||
#define BIT_MASKS_MATCH(pbmi1,pbmi2) \
|
||||
(((pbmi1)->dwBitMasks[iRED] == (pbmi2)->dwBitMasks[iRED]) && \
|
||||
((pbmi1)->dwBitMasks[iGREEN] == (pbmi2)->dwBitMasks[iGREEN]) && \
|
||||
((pbmi1)->dwBitMasks[iBLUE] == (pbmi2)->dwBitMasks[iBLUE]))
|
||||
|
||||
// These zero fill different parts of the VIDEOINFOHEADER structure
|
||||
|
||||
// Only use these macros for pbmi's with a normal BITMAPINFOHEADER biSize
|
||||
#define RESET_MASKS(pbmi) (ZeroMemory((PVOID)(pbmi)->dwBitFields,SIZE_MASKS))
|
||||
#define RESET_HEADER(pbmi) (ZeroMemory((PVOID)(pbmi),SIZE_VIDEOHEADER))
|
||||
#define RESET_PALETTE(pbmi) (ZeroMemory((PVOID)(pbmi)->bmiColors,SIZE_PALETTE));
|
||||
|
||||
#if 0
|
||||
// !!! This is the right way to do it, but may break existing code
|
||||
#define RESET_MASKS(pbmi) (ZeroMemory((PVOID)(((LPBYTE)(pbmi)->bmiHeader) + \
|
||||
(pbmi)->bmiHeader.biSize,SIZE_MASKS)))
|
||||
#define RESET_HEADER(pbmi) (ZeroMemory((PVOID)(pbmi), SIZE_PREHEADER + \
|
||||
sizeof(BITMAPINFOHEADER)))
|
||||
#define RESET_PALETTE(pbmi) (ZeroMemory((PVOID)(((LPBYTE)(pbmi)->bmiHeader) + \
|
||||
(pbmi)->bmiHeader.biSize,SIZE_PALETTE))
|
||||
#endif
|
||||
|
||||
// Other (hopefully) useful bits and bobs
|
||||
|
||||
#define PALETTISED(pbmi) ((pbmi)->bmiHeader.biBitCount <= iPALETTE)
|
||||
#define PALETTE_ENTRIES(pbmi) ((DWORD) 1 << (pbmi)->bmiHeader.biBitCount)
|
||||
|
||||
// Returns the address of the BITMAPINFOHEADER from the VIDEOINFOHEADER
|
||||
#define HEADER(pVideoInfo) (&(((VIDEOINFOHEADER *) (pVideoInfo))->bmiHeader))
|
||||
|
||||
|
||||
// MPEG variant - includes a DWORD length followed by the
|
||||
// video sequence header after the video header.
|
||||
//
|
||||
// The sequence header includes the sequence header start code and the
|
||||
// quantization matrices associated with the first sequence header in the
|
||||
// stream so is a maximum of 140 bytes long.
|
||||
|
||||
typedef struct tagMPEG1VIDEOINFO {
|
||||
|
||||
VIDEOINFOHEADER hdr; // Compatible with VIDEOINFO
|
||||
DWORD dwStartTimeCode; // 25-bit Group of pictures time code
|
||||
// at start of data
|
||||
DWORD cbSequenceHeader; // Length in bytes of bSequenceHeader
|
||||
BYTE bSequenceHeader[1]; // Sequence header including
|
||||
// quantization matrices if any
|
||||
} MPEG1VIDEOINFO;
|
||||
|
||||
#define MAX_SIZE_MPEG1_SEQUENCE_INFO 140
|
||||
#define SIZE_MPEG1VIDEOINFO(pv) (FIELD_OFFSET(MPEG1VIDEOINFO, bSequenceHeader[0]) + (pv)->cbSequenceHeader)
|
||||
#define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)
|
||||
|
||||
|
||||
// Analog video variant - Use this when the format is FORMAT_AnalogVideo
|
||||
//
|
||||
// rcSource defines the portion of the active video signal to use
|
||||
// rcTarget defines the destination rectangle
|
||||
// both of the above are relative to the dwActiveWidth and dwActiveHeight fields
|
||||
// dwActiveWidth is currently set to 720 for all formats (but could change for HDTV)
|
||||
// dwActiveHeight is 483 for NTSC and 575 for PAL/SECAM (but could change for HDTV)
|
||||
|
||||
typedef struct tagAnalogVideoInfo {
|
||||
RECT rcSource; // Width max is 720, height varies w/ TransmissionStd
|
||||
RECT rcTarget; // Where the video should go
|
||||
DWORD dwActiveWidth; // Always 720 (CCIR-601 active samples per line)
|
||||
DWORD dwActiveHeight; // 483 for NTSC, 575 for PAL/SECAM
|
||||
REFERENCE_TIME AvgTimePerFrame; // Normal ActiveMovie units (100 nS)
|
||||
} ANALOGVIDEOINFO;
|
||||
|
||||
//
|
||||
// AM_KSPROPSETID_FrameStep property set definitions
|
||||
//
|
||||
typedef enum {
|
||||
// Step
|
||||
AM_PROPERTY_FRAMESTEP_STEP = 0x01,
|
||||
AM_PROPERTY_FRAMESTEP_CANCEL = 0x02,
|
||||
|
||||
// S_OK for these 2 means we can - S_FALSE if we can't
|
||||
AM_PROPERTY_FRAMESTEP_CANSTEP = 0x03,
|
||||
AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE = 0x04
|
||||
} AM_PROPERTY_FRAMESTEP;
|
||||
|
||||
typedef struct _AM_FRAMESTEP_STEP
|
||||
{
|
||||
// 1 means step 1 frame forward
|
||||
// 0 is invalid
|
||||
// n (n > 1) means skip n - 1 frames and show the nth
|
||||
DWORD dwFramesToStep;
|
||||
} AM_FRAMESTEP_STEP;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif // __cplusplus
|
||||
#endif // __AMVIDEO__
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: ATSMedia.h
|
||||
//
|
||||
// Desc: Broadcast Driver Architecture Media Definitions for ATSC
|
||||
//
|
||||
// Copyright (c) 1996-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#if !defined(_KSMEDIA_)
|
||||
#error KSMEDIA.H must be included before BDAMEDIA.H
|
||||
#endif // !defined(_KSMEDIA_)
|
||||
|
||||
#if !defined(_BDAMEDIA_)
|
||||
#error BDAMEDIA.H must be included before ATSCMEDIA.H
|
||||
#endif // !defined(_KSMEDIA_)
|
||||
|
||||
#if !defined(_ATSCMEDIA_)
|
||||
#define _ATSCMEDIA_
|
||||
|
||||
|
||||
//===========================================================================
|
||||
//
|
||||
// ATSC Network Type
|
||||
//
|
||||
//===========================================================================
|
||||
|
||||
#define STATIC_BDANETWORKTYPE_ATSC\
|
||||
0x71985f51, 0x1ca1, 0x11d3, 0x9c, 0xc8, 0x0, 0xc0, 0x4f, 0x79, 0x71, 0xe0
|
||||
DEFINE_GUIDSTRUCT("71985F51-1CA1-11d3-9CC8-00C04F7971E0", BDANETWORKTYPE_ATSC);
|
||||
#define BDANETWORKTYPE_ATSC DEFINE_GUIDNAMED(BDANETWORKTYPE_ATSC)
|
||||
|
||||
|
||||
#endif // _ATSCMEDIA_
|
|
@ -1,53 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AudEvCod.h
|
||||
//
|
||||
// Desc: List of Audio device error event codes and the expected params.
|
||||
//
|
||||
// Copyright (c) 1999-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
#ifndef __AUDEVCOD__
|
||||
#define __AUDEVCOD__
|
||||
|
||||
|
||||
#define EC_SND_DEVICE_ERROR_BASE 0x0200
|
||||
|
||||
typedef enum _tagSND_DEVICE_ERROR {
|
||||
|
||||
SNDDEV_ERROR_Open=1,
|
||||
SNDDEV_ERROR_Close=2,
|
||||
SNDDEV_ERROR_GetCaps=3,
|
||||
SNDDEV_ERROR_PrepareHeader=4,
|
||||
SNDDEV_ERROR_UnprepareHeader=5,
|
||||
SNDDEV_ERROR_Reset=6,
|
||||
SNDDEV_ERROR_Restart=7,
|
||||
SNDDEV_ERROR_GetPosition=8,
|
||||
SNDDEV_ERROR_Write=9,
|
||||
SNDDEV_ERROR_Pause=10,
|
||||
SNDDEV_ERROR_Stop=11,
|
||||
SNDDEV_ERROR_Start=12,
|
||||
SNDDEV_ERROR_AddBuffer=13,
|
||||
SNDDEV_ERROR_Query=14,
|
||||
|
||||
} SNDDEV_ERR;
|
||||
|
||||
|
||||
// Sound device error event codes
|
||||
// ==============================
|
||||
//
|
||||
// All audio device error events are always passed on to the application, and are
|
||||
// never processed by the filter graph
|
||||
|
||||
|
||||
#define EC_SNDDEV_IN_ERROR (EC_SND_DEVICE_ERROR_BASE + 0x00)
|
||||
#define EC_SNDDEV_OUT_ERROR (EC_SND_DEVICE_ERROR_BASE + 0x01)
|
||||
// Parameters: ( DWORD, DWORD)
|
||||
// lParam1 is an enum SND_DEVICE_ERROR which notifies the app how the device was
|
||||
// being accessed when the failure occurred.
|
||||
//
|
||||
// lParam2 is the error returned from the sound device call.
|
||||
//
|
||||
|
||||
#endif // __AUDEVCOD__
|
|
@ -1,715 +0,0 @@
|
|||
|
||||
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
||||
|
||||
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
||||
|
||||
|
||||
/* File created by MIDL compiler version 6.00.0347 */
|
||||
/* Compiler settings for austream.idl:
|
||||
Oicf, W1, Zp8, env=Win32 (32b run)
|
||||
protocol : dce , ms_ext, c_ext, robust
|
||||
error checks: allocation ref bounds_check enum stub_data
|
||||
VC __declspec() decoration level:
|
||||
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
||||
DECLSPEC_UUID(), MIDL_INTERFACE()
|
||||
*/
|
||||
//@@MIDL_FILE_HEADING( )
|
||||
|
||||
|
||||
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
||||
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
||||
#define __REQUIRED_RPCNDR_H_VERSION__ 475
|
||||
#endif
|
||||
|
||||
#include "rpc.h"
|
||||
#include "rpcndr.h"
|
||||
|
||||
#ifndef __RPCNDR_H_VERSION__
|
||||
#error this stub requires an updated version of <rpcndr.h>
|
||||
#endif // __RPCNDR_H_VERSION__
|
||||
|
||||
#ifndef COM_NO_WINDOWS_H
|
||||
#include "windows.h"
|
||||
#include "ole2.h"
|
||||
#endif /*COM_NO_WINDOWS_H*/
|
||||
|
||||
#ifndef __austream_h__
|
||||
#define __austream_h__
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
/* Forward Declarations */
|
||||
|
||||
#ifndef __IAudioMediaStream_FWD_DEFINED__
|
||||
#define __IAudioMediaStream_FWD_DEFINED__
|
||||
typedef interface IAudioMediaStream IAudioMediaStream;
|
||||
#endif /* __IAudioMediaStream_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IAudioStreamSample_FWD_DEFINED__
|
||||
#define __IAudioStreamSample_FWD_DEFINED__
|
||||
typedef interface IAudioStreamSample IAudioStreamSample;
|
||||
#endif /* __IAudioStreamSample_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IMemoryData_FWD_DEFINED__
|
||||
#define __IMemoryData_FWD_DEFINED__
|
||||
typedef interface IMemoryData IMemoryData;
|
||||
#endif /* __IMemoryData_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IAudioData_FWD_DEFINED__
|
||||
#define __IAudioData_FWD_DEFINED__
|
||||
typedef interface IAudioData IAudioData;
|
||||
#endif /* __IAudioData_FWD_DEFINED__ */
|
||||
|
||||
|
||||
/* header files for imported files */
|
||||
#include "unknwn.h"
|
||||
#include "mmstream.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
void * __RPC_USER MIDL_user_allocate(size_t);
|
||||
void __RPC_USER MIDL_user_free( void * );
|
||||
|
||||
/* interface __MIDL_itf_austream_0000 */
|
||||
/* [local] */
|
||||
|
||||
//
|
||||
// The following declarations within the 'if 0' block are dummy typedefs used to make
|
||||
// the ddstream.idl file build. The actual definitions are contained in DDRAW.H
|
||||
//
|
||||
#if 0
|
||||
typedef struct tWAVEFORMATEX WAVEFORMATEX;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern RPC_IF_HANDLE __MIDL_itf_austream_0000_v0_0_c_ifspec;
|
||||
extern RPC_IF_HANDLE __MIDL_itf_austream_0000_v0_0_s_ifspec;
|
||||
|
||||
#ifndef __IAudioMediaStream_INTERFACE_DEFINED__
|
||||
#define __IAudioMediaStream_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IAudioMediaStream */
|
||||
/* [unique][uuid][local][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IAudioMediaStream;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("f7537560-a3be-11d0-8212-00c04fc32c45")
|
||||
IAudioMediaStream : public IMediaStream
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE GetFormat(
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE SetFormat(
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE CreateSample(
|
||||
/* [in] */ IAudioData *pAudioData,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [out] */ IAudioStreamSample **ppSample) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IAudioMediaStreamVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IAudioMediaStream * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IAudioMediaStream * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMultiMediaStream )(
|
||||
IAudioMediaStream * This,
|
||||
/* [out] */ IMultiMediaStream **ppMultiMediaStream);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetInformation )(
|
||||
IAudioMediaStream * This,
|
||||
/* [out] */ MSPID *pPurposeId,
|
||||
/* [out] */ STREAM_TYPE *pType);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetSameFormat )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
|
||||
/* [in] */ DWORD dwFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *AllocateSample )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [out] */ IStreamSample **ppSample);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateSharedSample )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ IStreamSample *pExistingSample,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [out] */ IStreamSample **ppNewSample);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SendEndOfStream )(
|
||||
IAudioMediaStream * This,
|
||||
DWORD dwFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFormat )(
|
||||
IAudioMediaStream * This,
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetFormat )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CreateSample )(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ IAudioData *pAudioData,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [out] */ IAudioStreamSample **ppSample);
|
||||
|
||||
END_INTERFACE
|
||||
} IAudioMediaStreamVtbl;
|
||||
|
||||
interface IAudioMediaStream
|
||||
{
|
||||
CONST_VTBL struct IAudioMediaStreamVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IAudioMediaStream_QueryInterface(This,riid,ppvObject) \
|
||||
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
|
||||
|
||||
#define IAudioMediaStream_AddRef(This) \
|
||||
(This)->lpVtbl -> AddRef(This)
|
||||
|
||||
#define IAudioMediaStream_Release(This) \
|
||||
(This)->lpVtbl -> Release(This)
|
||||
|
||||
|
||||
#define IAudioMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) \
|
||||
(This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
|
||||
|
||||
#define IAudioMediaStream_GetInformation(This,pPurposeId,pType) \
|
||||
(This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
|
||||
|
||||
#define IAudioMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) \
|
||||
(This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
|
||||
|
||||
#define IAudioMediaStream_AllocateSample(This,dwFlags,ppSample) \
|
||||
(This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
|
||||
|
||||
#define IAudioMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) \
|
||||
(This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
|
||||
|
||||
#define IAudioMediaStream_SendEndOfStream(This,dwFlags) \
|
||||
(This)->lpVtbl -> SendEndOfStream(This,dwFlags)
|
||||
|
||||
|
||||
#define IAudioMediaStream_GetFormat(This,pWaveFormatCurrent) \
|
||||
(This)->lpVtbl -> GetFormat(This,pWaveFormatCurrent)
|
||||
|
||||
#define IAudioMediaStream_SetFormat(This,lpWaveFormat) \
|
||||
(This)->lpVtbl -> SetFormat(This,lpWaveFormat)
|
||||
|
||||
#define IAudioMediaStream_CreateSample(This,pAudioData,dwFlags,ppSample) \
|
||||
(This)->lpVtbl -> CreateSample(This,pAudioData,dwFlags,ppSample)
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioMediaStream_GetFormat_Proxy(
|
||||
IAudioMediaStream * This,
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioMediaStream_GetFormat_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioMediaStream_SetFormat_Proxy(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioMediaStream_SetFormat_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioMediaStream_CreateSample_Proxy(
|
||||
IAudioMediaStream * This,
|
||||
/* [in] */ IAudioData *pAudioData,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [out] */ IAudioStreamSample **ppSample);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioMediaStream_CreateSample_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
|
||||
#endif /* __IAudioMediaStream_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IAudioStreamSample_INTERFACE_DEFINED__
|
||||
#define __IAudioStreamSample_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IAudioStreamSample */
|
||||
/* [unique][uuid][local][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IAudioStreamSample;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("345fee00-aba5-11d0-8212-00c04fc32c45")
|
||||
IAudioStreamSample : public IStreamSample
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE GetAudioData(
|
||||
/* [out] */ IAudioData **ppAudio) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IAudioStreamSampleVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IAudioStreamSample * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IAudioStreamSample * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IAudioStreamSample * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
|
||||
IAudioStreamSample * This,
|
||||
/* [in] */ IMediaStream **ppMediaStream);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetSampleTimes )(
|
||||
IAudioStreamSample * This,
|
||||
/* [out] */ STREAM_TIME *pStartTime,
|
||||
/* [out] */ STREAM_TIME *pEndTime,
|
||||
/* [out] */ STREAM_TIME *pCurrentTime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetSampleTimes )(
|
||||
IAudioStreamSample * This,
|
||||
/* [in] */ const STREAM_TIME *pStartTime,
|
||||
/* [in] */ const STREAM_TIME *pEndTime);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *Update )(
|
||||
IAudioStreamSample * This,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [in] */ HANDLE hEvent,
|
||||
/* [in] */ PAPCFUNC pfnAPC,
|
||||
/* [in] */ DWORD_PTR dwAPCData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *CompletionStatus )(
|
||||
IAudioStreamSample * This,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [in] */ DWORD dwMilliseconds);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetAudioData )(
|
||||
IAudioStreamSample * This,
|
||||
/* [out] */ IAudioData **ppAudio);
|
||||
|
||||
END_INTERFACE
|
||||
} IAudioStreamSampleVtbl;
|
||||
|
||||
interface IAudioStreamSample
|
||||
{
|
||||
CONST_VTBL struct IAudioStreamSampleVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IAudioStreamSample_QueryInterface(This,riid,ppvObject) \
|
||||
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
|
||||
|
||||
#define IAudioStreamSample_AddRef(This) \
|
||||
(This)->lpVtbl -> AddRef(This)
|
||||
|
||||
#define IAudioStreamSample_Release(This) \
|
||||
(This)->lpVtbl -> Release(This)
|
||||
|
||||
|
||||
#define IAudioStreamSample_GetMediaStream(This,ppMediaStream) \
|
||||
(This)->lpVtbl -> GetMediaStream(This,ppMediaStream)
|
||||
|
||||
#define IAudioStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) \
|
||||
(This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
|
||||
|
||||
#define IAudioStreamSample_SetSampleTimes(This,pStartTime,pEndTime) \
|
||||
(This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime)
|
||||
|
||||
#define IAudioStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) \
|
||||
(This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
|
||||
|
||||
#define IAudioStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds) \
|
||||
(This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds)
|
||||
|
||||
|
||||
#define IAudioStreamSample_GetAudioData(This,ppAudio) \
|
||||
(This)->lpVtbl -> GetAudioData(This,ppAudio)
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioStreamSample_GetAudioData_Proxy(
|
||||
IAudioStreamSample * This,
|
||||
/* [out] */ IAudioData **ppAudio);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioStreamSample_GetAudioData_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
|
||||
#endif /* __IAudioStreamSample_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IMemoryData_INTERFACE_DEFINED__
|
||||
#define __IMemoryData_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IMemoryData */
|
||||
/* [unique][uuid][local][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IMemoryData;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("327fc560-af60-11d0-8212-00c04fc32c45")
|
||||
IMemoryData : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE SetBuffer(
|
||||
/* [in] */ DWORD cbSize,
|
||||
/* [in] */ BYTE *pbData,
|
||||
/* [in] */ DWORD dwFlags) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetInfo(
|
||||
/* [out] */ DWORD *pdwLength,
|
||||
/* [out] */ BYTE **ppbData,
|
||||
/* [out] */ DWORD *pcbActualData) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE SetActual(
|
||||
/* [in] */ DWORD cbDataValid) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IMemoryDataVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IMemoryData * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IMemoryData * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IMemoryData * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetBuffer )(
|
||||
IMemoryData * This,
|
||||
/* [in] */ DWORD cbSize,
|
||||
/* [in] */ BYTE *pbData,
|
||||
/* [in] */ DWORD dwFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetInfo )(
|
||||
IMemoryData * This,
|
||||
/* [out] */ DWORD *pdwLength,
|
||||
/* [out] */ BYTE **ppbData,
|
||||
/* [out] */ DWORD *pcbActualData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetActual )(
|
||||
IMemoryData * This,
|
||||
/* [in] */ DWORD cbDataValid);
|
||||
|
||||
END_INTERFACE
|
||||
} IMemoryDataVtbl;
|
||||
|
||||
interface IMemoryData
|
||||
{
|
||||
CONST_VTBL struct IMemoryDataVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IMemoryData_QueryInterface(This,riid,ppvObject) \
|
||||
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
|
||||
|
||||
#define IMemoryData_AddRef(This) \
|
||||
(This)->lpVtbl -> AddRef(This)
|
||||
|
||||
#define IMemoryData_Release(This) \
|
||||
(This)->lpVtbl -> Release(This)
|
||||
|
||||
|
||||
#define IMemoryData_SetBuffer(This,cbSize,pbData,dwFlags) \
|
||||
(This)->lpVtbl -> SetBuffer(This,cbSize,pbData,dwFlags)
|
||||
|
||||
#define IMemoryData_GetInfo(This,pdwLength,ppbData,pcbActualData) \
|
||||
(This)->lpVtbl -> GetInfo(This,pdwLength,ppbData,pcbActualData)
|
||||
|
||||
#define IMemoryData_SetActual(This,cbDataValid) \
|
||||
(This)->lpVtbl -> SetActual(This,cbDataValid)
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IMemoryData_SetBuffer_Proxy(
|
||||
IMemoryData * This,
|
||||
/* [in] */ DWORD cbSize,
|
||||
/* [in] */ BYTE *pbData,
|
||||
/* [in] */ DWORD dwFlags);
|
||||
|
||||
|
||||
void __RPC_STUB IMemoryData_SetBuffer_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IMemoryData_GetInfo_Proxy(
|
||||
IMemoryData * This,
|
||||
/* [out] */ DWORD *pdwLength,
|
||||
/* [out] */ BYTE **ppbData,
|
||||
/* [out] */ DWORD *pcbActualData);
|
||||
|
||||
|
||||
void __RPC_STUB IMemoryData_GetInfo_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IMemoryData_SetActual_Proxy(
|
||||
IMemoryData * This,
|
||||
/* [in] */ DWORD cbDataValid);
|
||||
|
||||
|
||||
void __RPC_STUB IMemoryData_SetActual_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
|
||||
#endif /* __IMemoryData_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IAudioData_INTERFACE_DEFINED__
|
||||
#define __IAudioData_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IAudioData */
|
||||
/* [unique][uuid][local][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IAudioData;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("54c719c0-af60-11d0-8212-00c04fc32c45")
|
||||
IAudioData : public IMemoryData
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE GetFormat(
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE SetFormat(
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IAudioDataVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IAudioData * This,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [iid_is][out] */ void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IAudioData * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IAudioData * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetBuffer )(
|
||||
IAudioData * This,
|
||||
/* [in] */ DWORD cbSize,
|
||||
/* [in] */ BYTE *pbData,
|
||||
/* [in] */ DWORD dwFlags);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetInfo )(
|
||||
IAudioData * This,
|
||||
/* [out] */ DWORD *pdwLength,
|
||||
/* [out] */ BYTE **ppbData,
|
||||
/* [out] */ DWORD *pcbActualData);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetActual )(
|
||||
IAudioData * This,
|
||||
/* [in] */ DWORD cbDataValid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetFormat )(
|
||||
IAudioData * This,
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *SetFormat )(
|
||||
IAudioData * This,
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat);
|
||||
|
||||
END_INTERFACE
|
||||
} IAudioDataVtbl;
|
||||
|
||||
interface IAudioData
|
||||
{
|
||||
CONST_VTBL struct IAudioDataVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IAudioData_QueryInterface(This,riid,ppvObject) \
|
||||
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
|
||||
|
||||
#define IAudioData_AddRef(This) \
|
||||
(This)->lpVtbl -> AddRef(This)
|
||||
|
||||
#define IAudioData_Release(This) \
|
||||
(This)->lpVtbl -> Release(This)
|
||||
|
||||
|
||||
#define IAudioData_SetBuffer(This,cbSize,pbData,dwFlags) \
|
||||
(This)->lpVtbl -> SetBuffer(This,cbSize,pbData,dwFlags)
|
||||
|
||||
#define IAudioData_GetInfo(This,pdwLength,ppbData,pcbActualData) \
|
||||
(This)->lpVtbl -> GetInfo(This,pdwLength,ppbData,pcbActualData)
|
||||
|
||||
#define IAudioData_SetActual(This,cbDataValid) \
|
||||
(This)->lpVtbl -> SetActual(This,cbDataValid)
|
||||
|
||||
|
||||
#define IAudioData_GetFormat(This,pWaveFormatCurrent) \
|
||||
(This)->lpVtbl -> GetFormat(This,pWaveFormatCurrent)
|
||||
|
||||
#define IAudioData_SetFormat(This,lpWaveFormat) \
|
||||
(This)->lpVtbl -> SetFormat(This,lpWaveFormat)
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioData_GetFormat_Proxy(
|
||||
IAudioData * This,
|
||||
/* [out] */ WAVEFORMATEX *pWaveFormatCurrent);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioData_GetFormat_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IAudioData_SetFormat_Proxy(
|
||||
IAudioData * This,
|
||||
/* [in] */ const WAVEFORMATEX *lpWaveFormat);
|
||||
|
||||
|
||||
void __RPC_STUB IAudioData_SetFormat_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
|
||||
#endif /* __IAudioData_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
/* Additional Prototypes for ALL interfaces */
|
||||
|
||||
/* end of Additional Prototypes */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
|
@ -1,402 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: AVIRIFF.h
|
||||
//
|
||||
// Desc: Structures and defines for the RIFF AVI file format extended to
|
||||
// handle very large/long files.
|
||||
//
|
||||
// Copyright (c) 1996-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
// Disable some compiler warnings
|
||||
#pragma warning(disable: 4097 4511 4512 4514 4705)
|
||||
|
||||
|
||||
#if !defined AVIRIFF_H
|
||||
#define AVIRIFF_H
|
||||
|
||||
#if !defined NUMELMS
|
||||
#define NUMELMS(aa) (sizeof(aa)/sizeof((aa)[0]))
|
||||
#endif
|
||||
|
||||
// all structures in this file are packed on word boundaries
|
||||
//
|
||||
#include <pshpack2.h>
|
||||
|
||||
/*
|
||||
* heres the general layout of an AVI riff file (new format)
|
||||
*
|
||||
* RIFF (3F??????) AVI <- not more than 1 GB in size
|
||||
* LIST (size) hdrl
|
||||
* avih (0038)
|
||||
* LIST (size) strl
|
||||
* strh (0038)
|
||||
* strf (????)
|
||||
* indx (3ff8) <- size may vary, should be sector sized
|
||||
* LIST (size) strl
|
||||
* strh (0038)
|
||||
* strf (????)
|
||||
* indx (3ff8) <- size may vary, should be sector sized
|
||||
* LIST (size) odml
|
||||
* dmlh (????)
|
||||
* JUNK (size) <- fill to align to sector - 12
|
||||
* LIST (7f??????) movi <- aligned on sector - 12
|
||||
* 00dc (size) <- sector aligned
|
||||
* 01wb (size) <- sector aligned
|
||||
* ix00 (size) <- sector aligned
|
||||
* idx1 (00??????) <- sector aligned
|
||||
* RIFF (7F??????) AVIX
|
||||
* JUNK (size) <- fill to align to sector -12
|
||||
* LIST (size) movi
|
||||
* 00dc (size) <- sector aligned
|
||||
* RIFF (7F??????) AVIX <- not more than 2GB in size
|
||||
* JUNK (size) <- fill to align to sector - 12
|
||||
* LIST (size) movi
|
||||
* 00dc (size) <- sector aligned
|
||||
*
|
||||
*-===================================================================*/
|
||||
|
||||
//
|
||||
// structures for manipulating RIFF headers
|
||||
//
|
||||
#define FCC(ch4) ((((DWORD)(ch4) & 0xFF) << 24) | \
|
||||
(((DWORD)(ch4) & 0xFF00) << 8) | \
|
||||
(((DWORD)(ch4) & 0xFF0000) >> 8) | \
|
||||
(((DWORD)(ch4) & 0xFF000000) >> 24))
|
||||
|
||||
typedef struct _riffchunk {
|
||||
FOURCC fcc;
|
||||
DWORD cb;
|
||||
} RIFFCHUNK, * LPRIFFCHUNK;
|
||||
typedef struct _rifflist {
|
||||
FOURCC fcc;
|
||||
DWORD cb;
|
||||
FOURCC fccListType;
|
||||
} RIFFLIST, * LPRIFFLIST;
|
||||
|
||||
#define RIFFROUND(cb) ((cb) + ((cb)&1))
|
||||
#define RIFFNEXT(pChunk) (LPRIFFCHUNK)((LPBYTE)(pChunk) \
|
||||
+ sizeof(RIFFCHUNK) \
|
||||
+ RIFFROUND(((LPRIFFCHUNK)pChunk)->cb))
|
||||
|
||||
|
||||
//
|
||||
// ==================== avi header structures ===========================
|
||||
//
|
||||
|
||||
// main header for the avi file (compatibility header)
|
||||
//
|
||||
#define ckidMAINAVIHEADER FCC('avih')
|
||||
typedef struct _avimainheader {
|
||||
FOURCC fcc; // 'avih'
|
||||
DWORD cb; // size of this structure -8
|
||||
DWORD dwMicroSecPerFrame; // frame display rate (or 0L)
|
||||
DWORD dwMaxBytesPerSec; // max. transfer rate
|
||||
DWORD dwPaddingGranularity; // pad to multiples of this size; normally 2K.
|
||||
DWORD dwFlags; // the ever-present flags
|
||||
#define AVIF_HASINDEX 0x00000010 // Index at end of file?
|
||||
#define AVIF_MUSTUSEINDEX 0x00000020
|
||||
#define AVIF_ISINTERLEAVED 0x00000100
|
||||
#define AVIF_TRUSTCKTYPE 0x00000800 // Use CKType to find key frames
|
||||
#define AVIF_WASCAPTUREFILE 0x00010000
|
||||
#define AVIF_COPYRIGHTED 0x00020000
|
||||
DWORD dwTotalFrames; // # frames in first movi list
|
||||
DWORD dwInitialFrames;
|
||||
DWORD dwStreams;
|
||||
DWORD dwSuggestedBufferSize;
|
||||
DWORD dwWidth;
|
||||
DWORD dwHeight;
|
||||
DWORD dwReserved[4];
|
||||
} AVIMAINHEADER;
|
||||
|
||||
#define ckidODML FCC('odml')
|
||||
#define ckidAVIEXTHEADER FCC('dmlh')
|
||||
typedef struct _aviextheader {
|
||||
FOURCC fcc; // 'dmlh'
|
||||
DWORD cb; // size of this structure -8
|
||||
DWORD dwGrandFrames; // total number of frames in the file
|
||||
DWORD dwFuture[61]; // to be defined later
|
||||
} AVIEXTHEADER;
|
||||
|
||||
//
|
||||
// structure of an AVI stream header riff chunk
|
||||
//
|
||||
#define ckidSTREAMLIST FCC('strl')
|
||||
|
||||
#ifndef ckidSTREAMHEADER
|
||||
#define ckidSTREAMHEADER FCC('strh')
|
||||
#endif
|
||||
typedef struct _avistreamheader {
|
||||
FOURCC fcc; // 'strh'
|
||||
DWORD cb; // size of this structure - 8
|
||||
|
||||
FOURCC fccType; // stream type codes
|
||||
|
||||
#ifndef streamtypeVIDEO
|
||||
#define streamtypeVIDEO FCC('vids')
|
||||
#define streamtypeAUDIO FCC('auds')
|
||||
#define streamtypeMIDI FCC('mids')
|
||||
#define streamtypeTEXT FCC('txts')
|
||||
#endif
|
||||
|
||||
FOURCC fccHandler;
|
||||
DWORD dwFlags;
|
||||
#define AVISF_DISABLED 0x00000001
|
||||
#define AVISF_VIDEO_PALCHANGES 0x00010000
|
||||
|
||||
WORD wPriority;
|
||||
WORD wLanguage;
|
||||
DWORD dwInitialFrames;
|
||||
DWORD dwScale;
|
||||
DWORD dwRate; // dwRate/dwScale is stream tick rate in ticks/sec
|
||||
DWORD dwStart;
|
||||
DWORD dwLength;
|
||||
DWORD dwSuggestedBufferSize;
|
||||
DWORD dwQuality;
|
||||
DWORD dwSampleSize;
|
||||
struct {
|
||||
short int left;
|
||||
short int top;
|
||||
short int right;
|
||||
short int bottom;
|
||||
} rcFrame;
|
||||
} AVISTREAMHEADER;
|
||||
|
||||
|
||||
//
|
||||
// structure of an AVI stream format chunk
|
||||
//
|
||||
#ifndef ckidSTREAMFORMAT
|
||||
#define ckidSTREAMFORMAT FCC('strf')
|
||||
#endif
|
||||
//
|
||||
// avi stream formats are different for each stream type
|
||||
//
|
||||
// BITMAPINFOHEADER for video streams
|
||||
// WAVEFORMATEX or PCMWAVEFORMAT for audio streams
|
||||
// nothing for text streams
|
||||
// nothing for midi streams
|
||||
|
||||
|
||||
#pragma warning(disable:4200)
|
||||
//
|
||||
// structure of old style AVI index
|
||||
//
|
||||
#define ckidAVIOLDINDEX FCC('idx1')
|
||||
typedef struct _avioldindex {
|
||||
FOURCC fcc; // 'idx1'
|
||||
DWORD cb; // size of this structure -8
|
||||
struct _avioldindex_entry {
|
||||
DWORD dwChunkId;
|
||||
DWORD dwFlags;
|
||||
|
||||
#ifndef AVIIF_LIST
|
||||
#define AVIIF_LIST 0x00000001
|
||||
#define AVIIF_KEYFRAME 0x00000010
|
||||
#endif
|
||||
|
||||
#define AVIIF_NO_TIME 0x00000100
|
||||
#define AVIIF_COMPRESSOR 0x0FFF0000 // unused?
|
||||
DWORD dwOffset; // offset of riff chunk header for the data
|
||||
DWORD dwSize; // size of the data (excluding riff header size)
|
||||
} aIndex[]; // size of this array
|
||||
} AVIOLDINDEX;
|
||||
|
||||
|
||||
//
|
||||
// ============ structures for timecode in an AVI file =================
|
||||
//
|
||||
|
||||
#ifndef TIMECODE_DEFINED
|
||||
#define TIMECODE_DEFINED
|
||||
|
||||
// defined
|
||||
// timecode time structure
|
||||
//
|
||||
typedef union _timecode {
|
||||
struct {
|
||||
WORD wFrameRate;
|
||||
WORD wFrameFract;
|
||||
LONG cFrames;
|
||||
};
|
||||
DWORDLONG qw;
|
||||
} TIMECODE;
|
||||
|
||||
#endif // TIMECODE_DEFINED
|
||||
|
||||
#define TIMECODE_RATE_30DROP 0 // this MUST be zero
|
||||
|
||||
// struct for all the SMPTE timecode info
|
||||
//
|
||||
typedef struct _timecodedata {
|
||||
TIMECODE time;
|
||||
DWORD dwSMPTEflags;
|
||||
DWORD dwUser;
|
||||
} TIMECODEDATA;
|
||||
|
||||
// dwSMPTEflags masks/values
|
||||
//
|
||||
#define TIMECODE_SMPTE_BINARY_GROUP 0x07
|
||||
#define TIMECODE_SMPTE_COLOR_FRAME 0x08
|
||||
|
||||
//
|
||||
// ============ structures for new style AVI indexes =================
|
||||
//
|
||||
|
||||
// index type codes
|
||||
//
|
||||
#define AVI_INDEX_OF_INDEXES 0x00
|
||||
#define AVI_INDEX_OF_CHUNKS 0x01
|
||||
#define AVI_INDEX_OF_TIMED_CHUNKS 0x02
|
||||
#define AVI_INDEX_OF_SUB_2FIELD 0x03
|
||||
#define AVI_INDEX_IS_DATA 0x80
|
||||
|
||||
// index subtype codes
|
||||
//
|
||||
#define AVI_INDEX_SUB_DEFAULT 0x00
|
||||
|
||||
// INDEX_OF_CHUNKS subtype codes
|
||||
//
|
||||
#define AVI_INDEX_SUB_2FIELD 0x01
|
||||
|
||||
// meta structure of all avi indexes
|
||||
//
|
||||
typedef struct _avimetaindex {
|
||||
FOURCC fcc;
|
||||
UINT cb;
|
||||
WORD wLongsPerEntry;
|
||||
BYTE bIndexSubType;
|
||||
BYTE bIndexType;
|
||||
DWORD nEntriesInUse;
|
||||
DWORD dwChunkId;
|
||||
DWORD dwReserved[3];
|
||||
DWORD adwIndex[];
|
||||
} AVIMETAINDEX;
|
||||
|
||||
#define STDINDEXSIZE 0x4000
|
||||
#define NUMINDEX(wLongsPerEntry) ((STDINDEXSIZE-32)/4/(wLongsPerEntry))
|
||||
#define NUMINDEXFILL(wLongsPerEntry) ((STDINDEXSIZE/4) - NUMINDEX(wLongsPerEntry))
|
||||
|
||||
// structure of a super index (INDEX_OF_INDEXES)
|
||||
//
|
||||
#define ckidAVISUPERINDEX FCC('indx')
|
||||
typedef struct _avisuperindex {
|
||||
FOURCC fcc; // 'indx'
|
||||
UINT cb; // size of this structure
|
||||
WORD wLongsPerEntry; // ==4
|
||||
BYTE bIndexSubType; // ==0 (frame index) or AVI_INDEX_SUB_2FIELD
|
||||
BYTE bIndexType; // ==AVI_INDEX_OF_INDEXES
|
||||
DWORD nEntriesInUse; // offset of next unused entry in aIndex
|
||||
DWORD dwChunkId; // chunk ID of chunks being indexed, (i.e. RGB8)
|
||||
DWORD dwReserved[3]; // must be 0
|
||||
struct _avisuperindex_entry {
|
||||
DWORDLONG qwOffset; // 64 bit offset to sub index chunk
|
||||
DWORD dwSize; // 32 bit size of sub index chunk
|
||||
DWORD dwDuration; // time span of subindex chunk (in stream ticks)
|
||||
} aIndex[NUMINDEX(4)];
|
||||
} AVISUPERINDEX;
|
||||
#define Valid_SUPERINDEX(pi) (*(DWORD *)(&((pi)->wLongsPerEntry)) == (4 | (AVI_INDEX_OF_INDEXES << 24)))
|
||||
|
||||
// struct of a standard index (AVI_INDEX_OF_CHUNKS)
|
||||
//
|
||||
typedef struct _avistdindex_entry {
|
||||
DWORD dwOffset; // 32 bit offset to data (points to data, not riff header)
|
||||
DWORD dwSize; // 31 bit size of data (does not include size of riff header), bit 31 is deltaframe bit
|
||||
} AVISTDINDEX_ENTRY;
|
||||
#define AVISTDINDEX_DELTAFRAME ( 0x80000000) // Delta frames have the high bit set
|
||||
#define AVISTDINDEX_SIZEMASK (~0x80000000)
|
||||
|
||||
typedef struct _avistdindex {
|
||||
FOURCC fcc; // 'indx' or '##ix'
|
||||
UINT cb; // size of this structure
|
||||
WORD wLongsPerEntry; // ==2
|
||||
BYTE bIndexSubType; // ==0
|
||||
BYTE bIndexType; // ==AVI_INDEX_OF_CHUNKS
|
||||
DWORD nEntriesInUse; // offset of next unused entry in aIndex
|
||||
DWORD dwChunkId; // chunk ID of chunks being indexed, (i.e. RGB8)
|
||||
DWORDLONG qwBaseOffset; // base offset that all index intries are relative to
|
||||
DWORD dwReserved_3; // must be 0
|
||||
AVISTDINDEX_ENTRY aIndex[NUMINDEX(2)];
|
||||
} AVISTDINDEX;
|
||||
|
||||
// struct of a time variant standard index (AVI_INDEX_OF_TIMED_CHUNKS)
|
||||
//
|
||||
typedef struct _avitimedindex_entry {
|
||||
DWORD dwOffset; // 32 bit offset to data (points to data, not riff header)
|
||||
DWORD dwSize; // 31 bit size of data (does not include size of riff header) (high bit is deltaframe bit)
|
||||
DWORD dwDuration; // how much time the chunk should be played (in stream ticks)
|
||||
} AVITIMEDINDEX_ENTRY;
|
||||
|
||||
typedef struct _avitimedindex {
|
||||
FOURCC fcc; // 'indx' or '##ix'
|
||||
UINT cb; // size of this structure
|
||||
WORD wLongsPerEntry; // ==3
|
||||
BYTE bIndexSubType; // ==0
|
||||
BYTE bIndexType; // ==AVI_INDEX_OF_TIMED_CHUNKS
|
||||
DWORD nEntriesInUse; // offset of next unused entry in aIndex
|
||||
DWORD dwChunkId; // chunk ID of chunks being indexed, (i.e. RGB8)
|
||||
DWORDLONG qwBaseOffset; // base offset that all index intries are relative to
|
||||
DWORD dwReserved_3; // must be 0
|
||||
AVITIMEDINDEX_ENTRY aIndex[NUMINDEX(3)];
|
||||
DWORD adwTrailingFill[NUMINDEXFILL(3)]; // to align struct to correct size
|
||||
} AVITIMEDINDEX;
|
||||
|
||||
// structure of a timecode stream
|
||||
//
|
||||
typedef struct _avitimecodeindex {
|
||||
FOURCC fcc; // 'indx' or '##ix'
|
||||
UINT cb; // size of this structure
|
||||
WORD wLongsPerEntry; // ==4
|
||||
BYTE bIndexSubType; // ==0
|
||||
BYTE bIndexType; // ==AVI_INDEX_IS_DATA
|
||||
DWORD nEntriesInUse; // offset of next unused entry in aIndex
|
||||
DWORD dwChunkId; // 'time'
|
||||
DWORD dwReserved[3]; // must be 0
|
||||
TIMECODEDATA aIndex[NUMINDEX(sizeof(TIMECODEDATA)/sizeof(LONG))];
|
||||
} AVITIMECODEINDEX;
|
||||
|
||||
// structure of a timecode discontinuity list (when wLongsPerEntry == 7)
|
||||
//
|
||||
typedef struct _avitcdlindex_entry {
|
||||
DWORD dwTick; // stream tick time that maps to this timecode value
|
||||
TIMECODE time;
|
||||
DWORD dwSMPTEflags;
|
||||
DWORD dwUser;
|
||||
TCHAR szReelId[12];
|
||||
} AVITCDLINDEX_ENTRY;
|
||||
|
||||
typedef struct _avitcdlindex {
|
||||
FOURCC fcc; // 'indx' or '##ix'
|
||||
UINT cb; // size of this structure
|
||||
WORD wLongsPerEntry; // ==7 (must be 4 or more all 'tcdl' indexes
|
||||
BYTE bIndexSubType; // ==0
|
||||
BYTE bIndexType; // ==AVI_INDEX_IS_DATA
|
||||
DWORD nEntriesInUse; // offset of next unused entry in aIndex
|
||||
DWORD dwChunkId; // 'tcdl'
|
||||
DWORD dwReserved[3]; // must be 0
|
||||
AVITCDLINDEX_ENTRY aIndex[NUMINDEX(7)];
|
||||
DWORD adwTrailingFill[NUMINDEXFILL(7)]; // to align struct to correct size
|
||||
} AVITCDLINDEX;
|
||||
|
||||
typedef struct _avifieldindex_chunk {
|
||||
FOURCC fcc; // 'ix##'
|
||||
DWORD cb; // size of this structure
|
||||
WORD wLongsPerEntry; // must be 3 (size of each entry in
|
||||
// aIndex array)
|
||||
BYTE bIndexSubType; // AVI_INDEX_2FIELD
|
||||
BYTE bIndexType; // AVI_INDEX_OF_CHUNKS
|
||||
DWORD nEntriesInUse; //
|
||||
DWORD dwChunkId; // '##dc' or '##db'
|
||||
DWORDLONG qwBaseOffset; // offsets in aIndex array are relative to this
|
||||
DWORD dwReserved3; // must be 0
|
||||
struct _avifieldindex_entry {
|
||||
DWORD dwOffset;
|
||||
DWORD dwSize; // size of all fields
|
||||
// (bit 31 set for NON-keyframes)
|
||||
DWORD dwOffsetField2; // offset to second field
|
||||
} aIndex[ ];
|
||||
} AVIFIELDINDEX, * PAVIFIELDINDEX;
|
||||
|
||||
|
||||
#include <poppack.h>
|
||||
|
||||
#endif
|
|
@ -1,342 +0,0 @@
|
|||
/*++
|
||||
|
||||
Copyright (c) 1997-1999 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
basetsd.h
|
||||
|
||||
Abstract:
|
||||
|
||||
Type definitions for the basic sized types.
|
||||
|
||||
Author:
|
||||
|
||||
Jeff Havens (jhavens) 23-Oct-1997
|
||||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef _BASETSD_H_
|
||||
#define _BASETSD_H_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef signed char INT8, *PINT8;
|
||||
typedef signed short INT16, *PINT16;
|
||||
typedef signed int INT32, *PINT32;
|
||||
typedef signed __int64 INT64, *PINT64;
|
||||
typedef unsigned char UINT8, *PUINT8;
|
||||
typedef unsigned short UINT16, *PUINT16;
|
||||
typedef unsigned int UINT32, *PUINT32;
|
||||
typedef unsigned __int64 UINT64, *PUINT64;
|
||||
|
||||
//
|
||||
// The following types are guaranteed to be signed and 32 bits wide.
|
||||
//
|
||||
|
||||
typedef signed int LONG32, *PLONG32;
|
||||
|
||||
//
|
||||
// The following types are guaranteed to be unsigned and 32 bits wide.
|
||||
//
|
||||
|
||||
typedef unsigned int ULONG32, *PULONG32;
|
||||
typedef unsigned int DWORD32, *PDWORD32;
|
||||
|
||||
#if !defined(_W64)
|
||||
#if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
|
||||
#define _W64 __w64
|
||||
#else
|
||||
#define _W64
|
||||
#endif
|
||||
#endif
|
||||
|
||||
//
|
||||
// The INT_PTR is guaranteed to be the same size as a pointer. Its
|
||||
// size with change with pointer size (32/64). It should be used
|
||||
// anywhere that a pointer is cast to an integer type. UINT_PTR is
|
||||
// the unsigned variation.
|
||||
//
|
||||
// __int3264 is intrinsic to 64b MIDL but not to old MIDL or to C compiler.
|
||||
//
|
||||
#if ( 501 < __midl )
|
||||
|
||||
typedef [public] __int3264 INT_PTR, *PINT_PTR;
|
||||
typedef [public] unsigned __int3264 UINT_PTR, *PUINT_PTR;
|
||||
|
||||
typedef [public] __int3264 LONG_PTR, *PLONG_PTR;
|
||||
typedef [public] unsigned __int3264 ULONG_PTR, *PULONG_PTR;
|
||||
|
||||
#else // midl64
|
||||
// old midl and C++ compiler
|
||||
|
||||
#if defined(_WIN64)
|
||||
typedef __int64 INT_PTR, *PINT_PTR;
|
||||
typedef unsigned __int64 UINT_PTR, *PUINT_PTR;
|
||||
|
||||
typedef __int64 LONG_PTR, *PLONG_PTR;
|
||||
typedef unsigned __int64 ULONG_PTR, *PULONG_PTR;
|
||||
|
||||
#define __int3264 __int64
|
||||
|
||||
#else
|
||||
typedef _W64 int INT_PTR, *PINT_PTR;
|
||||
typedef _W64 unsigned int UINT_PTR, *PUINT_PTR;
|
||||
|
||||
typedef _W64 long LONG_PTR, *PLONG_PTR;
|
||||
typedef _W64 unsigned long ULONG_PTR, *PULONG_PTR;
|
||||
|
||||
#define __int3264 __int32
|
||||
|
||||
#endif
|
||||
#endif // midl64
|
||||
|
||||
//
|
||||
// HALF_PTR is half the size of a pointer it intended for use with
|
||||
// within strcuture which contain a pointer and two small fields.
|
||||
// UHALF_PTR is the unsigned variation.
|
||||
//
|
||||
|
||||
#ifdef _WIN64
|
||||
|
||||
#define ADDRESS_TAG_BIT 0x40000000000UI64
|
||||
|
||||
typedef unsigned __int64 HANDLE_PTR;
|
||||
typedef unsigned int UHALF_PTR, *PUHALF_PTR;
|
||||
typedef int HALF_PTR, *PHALF_PTR;
|
||||
|
||||
#pragma warning(disable:4311) // type cast truncation
|
||||
#if _MSC_VER >= 1200
|
||||
#pragma warning(push)
|
||||
#endif
|
||||
#pragma warning(disable:4305) // type cast truncation
|
||||
|
||||
#if !defined(__midl)
|
||||
__inline
|
||||
unsigned long
|
||||
HandleToULong(
|
||||
const void *h
|
||||
)
|
||||
{
|
||||
return((unsigned long) h );
|
||||
}
|
||||
|
||||
__inline
|
||||
long
|
||||
HandleToLong(
|
||||
const void *h
|
||||
)
|
||||
{
|
||||
return((long) h );
|
||||
}
|
||||
|
||||
__inline
|
||||
void *
|
||||
ULongToHandle(
|
||||
const unsigned long h
|
||||
)
|
||||
{
|
||||
return((void *) (UINT_PTR) h );
|
||||
}
|
||||
|
||||
|
||||
__inline
|
||||
void *
|
||||
LongToHandle(
|
||||
const long h
|
||||
)
|
||||
{
|
||||
return((void *) (INT_PTR) h );
|
||||
}
|
||||
|
||||
|
||||
__inline
|
||||
unsigned long
|
||||
PtrToUlong(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((unsigned long) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
unsigned int
|
||||
PtrToUint(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((unsigned int) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
unsigned short
|
||||
PtrToUshort(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((unsigned short) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
long
|
||||
PtrToLong(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((long) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
int
|
||||
PtrToInt(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((int) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
short
|
||||
PtrToShort(
|
||||
const void *p
|
||||
)
|
||||
{
|
||||
return((short) p );
|
||||
}
|
||||
|
||||
__inline
|
||||
void *
|
||||
IntToPtr(
|
||||
const int i
|
||||
)
|
||||
// Caution: IntToPtr() sign-extends the int value.
|
||||
{
|
||||
return( (void *)(INT_PTR)i );
|
||||
}
|
||||
|
||||
__inline
|
||||
void *
|
||||
UIntToPtr(
|
||||
const unsigned int ui
|
||||
)
|
||||
// Caution: UIntToPtr() zero-extends the unsigned int value.
|
||||
{
|
||||
return( (void *)(UINT_PTR)ui );
|
||||
}
|
||||
|
||||
__inline
|
||||
void *
|
||||
LongToPtr(
|
||||
const long l
|
||||
)
|
||||
// Caution: LongToPtr() sign-extends the long value.
|
||||
{
|
||||
return( (void *)(LONG_PTR)l );
|
||||
}
|
||||
|
||||
__inline
|
||||
void *
|
||||
ULongToPtr(
|
||||
const unsigned long ul
|
||||
)
|
||||
// Caution: ULongToPtr() zero-extends the unsigned long value.
|
||||
{
|
||||
return( (void *)(ULONG_PTR)ul );
|
||||
}
|
||||
|
||||
#endif // !_midl
|
||||
#if _MSC_VER >= 1200
|
||||
#pragma warning(pop) // restore 4305
|
||||
#endif
|
||||
#pragma warning(3:4311) // bump 4311 to a level 3
|
||||
|
||||
#else // !_WIN64
|
||||
|
||||
#define ADDRESS_TAG_BIT 0x80000000UL
|
||||
|
||||
typedef unsigned short UHALF_PTR, *PUHALF_PTR;
|
||||
typedef short HALF_PTR, *PHALF_PTR;
|
||||
typedef _W64 unsigned long HANDLE_PTR;
|
||||
|
||||
#define HandleToULong( h ) ((ULONG)(ULONG_PTR)(h) )
|
||||
#define HandleToLong( h ) ((LONG)(LONG_PTR) (h) )
|
||||
#define ULongToHandle( ul ) ((HANDLE)(ULONG_PTR) (ul) )
|
||||
#define LongToHandle( h ) ((HANDLE)(LONG_PTR) (h) )
|
||||
#define PtrToUlong( p ) ((ULONG)(ULONG_PTR) (p) )
|
||||
#define PtrToLong( p ) ((LONG)(LONG_PTR) (p) )
|
||||
#define PtrToUint( p ) ((UINT)(UINT_PTR) (p) )
|
||||
#define PtrToInt( p ) ((INT)(INT_PTR) (p) )
|
||||
#define PtrToUshort( p ) ((unsigned short)(ULONG_PTR)(p) )
|
||||
#define PtrToShort( p ) ((short)(LONG_PTR)(p) )
|
||||
#define IntToPtr( i ) ((VOID *)(INT_PTR)((int)i))
|
||||
#define UIntToPtr( ui ) ((VOID *)(UINT_PTR)((unsigned int)ui))
|
||||
#define LongToPtr( l ) ((VOID *)(LONG_PTR)((long)l))
|
||||
#define ULongToPtr( ul ) ((VOID *)(ULONG_PTR)((unsigned long)ul))
|
||||
|
||||
#endif // !_WIN64
|
||||
|
||||
#define HandleToUlong(h) HandleToULong(h)
|
||||
#define UlongToHandle(ul) ULongToHandle(ul)
|
||||
#define UlongToPtr(ul) ULongToPtr(ul)
|
||||
#define UintToPtr(ui) UIntToPtr(ui)
|
||||
|
||||
#define MAXUINT_PTR (~((UINT_PTR)0))
|
||||
#define MAXINT_PTR ((INT_PTR)(MAXUINT_PTR >> 1))
|
||||
#define MININT_PTR (~MAXINT_PTR)
|
||||
|
||||
#define MAXULONG_PTR (~((ULONG_PTR)0))
|
||||
#define MAXLONG_PTR ((LONG_PTR)(MAXULONG_PTR >> 1))
|
||||
#define MINLONG_PTR (~MAXLONG_PTR)
|
||||
|
||||
#define MAXUHALF_PTR ((UHALF_PTR)~0)
|
||||
#define MAXHALF_PTR ((HALF_PTR)(MAXUHALF_PTR >> 1))
|
||||
#define MINHALF_PTR (~MAXHALF_PTR)
|
||||
|
||||
//
|
||||
// SIZE_T used for counts or ranges which need to span the range of
|
||||
// of a pointer. SSIZE_T is the signed variation.
|
||||
//
|
||||
|
||||
typedef ULONG_PTR SIZE_T, *PSIZE_T;
|
||||
typedef LONG_PTR SSIZE_T, *PSSIZE_T;
|
||||
|
||||
//
|
||||
// Add Windows flavor DWORD_PTR types
|
||||
//
|
||||
|
||||
typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR;
|
||||
|
||||
//
|
||||
// The following types are guaranteed to be signed and 64 bits wide.
|
||||
//
|
||||
|
||||
typedef __int64 LONG64, *PLONG64;
|
||||
|
||||
|
||||
//
|
||||
// The following types are guaranteed to be unsigned and 64 bits wide.
|
||||
//
|
||||
|
||||
typedef unsigned __int64 ULONG64, *PULONG64;
|
||||
typedef unsigned __int64 DWORD64, *PDWORD64;
|
||||
|
||||
//
|
||||
// Thread affinity.
|
||||
//
|
||||
|
||||
typedef ULONG_PTR KAFFINITY;
|
||||
typedef KAFFINITY *PKAFFINITY;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // _BASETSD_H_
|
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
|
@ -1,26 +0,0 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// File: COMLite.h
|
||||
//
|
||||
// Desc: This header file is to provide a migration path for users of
|
||||
// ActiveMovie betas 1 and 2.
|
||||
//
|
||||
// Copyright (c) 1992-2001, Microsoft Corporation. All rights reserved.
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#ifndef _INC_COMLITE_
|
||||
#define _INC_COMLITE_
|
||||
|
||||
#define QzInitialize CoInitialize
|
||||
#define QzUninitialize CoUninitialize
|
||||
#define QzFreeUnusedLibraries CoFreeUnusedLibraries
|
||||
|
||||
#define QzGetMalloc CoGetMalloc
|
||||
#define QzTaskMemAlloc CoTaskMemAlloc
|
||||
#define QzTaskMemRealloc CoTaskMemRealloc
|
||||
#define QzTaskMemFree CoTaskMemFree
|
||||
#define QzCreateFilterObject CoCreateInstance
|
||||
#define QzCLSIDFromString CLSIDFromString
|
||||
#define QzStringFromGUID2 StringFromGUID2
|
||||
|
||||
#endif // _INC_COMLITE_
|
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
|
@ -1,362 +0,0 @@
|
|||
/*==========================================================================;
|
||||
*
|
||||
* Copyright (C) Microsoft Corporation. All Rights Reserved.
|
||||
*
|
||||
* File: d3d8caps.h
|
||||
* Content: Direct3D capabilities include file
|
||||
*
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef _D3D8CAPS_H
|
||||
#define _D3D8CAPS_H
|
||||
|
||||
#ifndef DIRECT3D_VERSION
|
||||
#define DIRECT3D_VERSION 0x0800
|
||||
#endif //DIRECT3D_VERSION
|
||||
|
||||
// include this file content only if compiling for DX8 interfaces
|
||||
#if(DIRECT3D_VERSION >= 0x0800)
|
||||
|
||||
#pragma pack(4)
|
||||
|
||||
typedef struct _D3DCAPS8
|
||||
{
|
||||
/* Device Info */
|
||||
D3DDEVTYPE DeviceType;
|
||||
UINT AdapterOrdinal;
|
||||
|
||||
/* Caps from DX7 Draw */
|
||||
DWORD Caps;
|
||||
DWORD Caps2;
|
||||
DWORD Caps3;
|
||||
DWORD PresentationIntervals;
|
||||
|
||||
/* Cursor Caps */
|
||||
DWORD CursorCaps;
|
||||
|
||||
/* 3D Device Caps */
|
||||
DWORD DevCaps;
|
||||
|
||||
DWORD PrimitiveMiscCaps;
|
||||
DWORD RasterCaps;
|
||||
DWORD ZCmpCaps;
|
||||
DWORD SrcBlendCaps;
|
||||
DWORD DestBlendCaps;
|
||||
DWORD AlphaCmpCaps;
|
||||
DWORD ShadeCaps;
|
||||
DWORD TextureCaps;
|
||||
DWORD TextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DTexture8's
|
||||
DWORD CubeTextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DCubeTexture8's
|
||||
DWORD VolumeTextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DVolumeTexture8's
|
||||
DWORD TextureAddressCaps; // D3DPTADDRESSCAPS for IDirect3DTexture8's
|
||||
DWORD VolumeTextureAddressCaps; // D3DPTADDRESSCAPS for IDirect3DVolumeTexture8's
|
||||
|
||||
DWORD LineCaps; // D3DLINECAPS
|
||||
|
||||
DWORD MaxTextureWidth, MaxTextureHeight;
|
||||
DWORD MaxVolumeExtent;
|
||||
|
||||
DWORD MaxTextureRepeat;
|
||||
DWORD MaxTextureAspectRatio;
|
||||
DWORD MaxAnisotropy;
|
||||
float MaxVertexW;
|
||||
|
||||
float GuardBandLeft;
|
||||
float GuardBandTop;
|
||||
float GuardBandRight;
|
||||
float GuardBandBottom;
|
||||
|
||||
float ExtentsAdjust;
|
||||
DWORD StencilCaps;
|
||||
|
||||
DWORD FVFCaps;
|
||||
DWORD TextureOpCaps;
|
||||
DWORD MaxTextureBlendStages;
|
||||
DWORD MaxSimultaneousTextures;
|
||||
|
||||
DWORD VertexProcessingCaps;
|
||||
DWORD MaxActiveLights;
|
||||
DWORD MaxUserClipPlanes;
|
||||
DWORD MaxVertexBlendMatrices;
|
||||
DWORD MaxVertexBlendMatrixIndex;
|
||||
|
||||
float MaxPointSize;
|
||||
|
||||
DWORD MaxPrimitiveCount; // max number of primitives per DrawPrimitive call
|
||||
DWORD MaxVertexIndex;
|
||||
DWORD MaxStreams;
|
||||
DWORD MaxStreamStride; // max stride for SetStreamSource
|
||||
|
||||
DWORD VertexShaderVersion;
|
||||
DWORD MaxVertexShaderConst; // number of vertex shader constant registers
|
||||
|
||||
DWORD PixelShaderVersion;
|
||||
float MaxPixelShaderValue; // max value of pixel shader arithmetic component
|
||||
|
||||
} D3DCAPS8;
|
||||
|
||||
//
|
||||
// BIT DEFINES FOR D3DCAPS8 DWORD MEMBERS
|
||||
//
|
||||
|
||||
//
|
||||
// Caps
|
||||
//
|
||||
#define D3DCAPS_READ_SCANLINE 0x00020000L
|
||||
|
||||
//
|
||||
// Caps2
|
||||
//
|
||||
#define D3DCAPS2_NO2DDURING3DSCENE 0x00000002L
|
||||
#define D3DCAPS2_FULLSCREENGAMMA 0x00020000L
|
||||
#define D3DCAPS2_CANRENDERWINDOWED 0x00080000L
|
||||
#define D3DCAPS2_CANCALIBRATEGAMMA 0x00100000L
|
||||
#define D3DCAPS2_RESERVED 0x02000000L
|
||||
#define D3DCAPS2_CANMANAGERESOURCE 0x10000000L
|
||||
#define D3DCAPS2_DYNAMICTEXTURES 0x20000000L
|
||||
|
||||
//
|
||||
// Caps3
|
||||
//
|
||||
#define D3DCAPS3_RESERVED 0x8000001fL
|
||||
|
||||
// Indicates that the device can respect the ALPHABLENDENABLE render state
|
||||
// when fullscreen while using the FLIP or DISCARD swap effect.
|
||||
// COPY and COPYVSYNC swap effects work whether or not this flag is set.
|
||||
#define D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD 0x00000020L
|
||||
|
||||
//
|
||||
// PresentationIntervals
|
||||
//
|
||||
#define D3DPRESENT_INTERVAL_DEFAULT 0x00000000L
|
||||
#define D3DPRESENT_INTERVAL_ONE 0x00000001L
|
||||
#define D3DPRESENT_INTERVAL_TWO 0x00000002L
|
||||
#define D3DPRESENT_INTERVAL_THREE 0x00000004L
|
||||
#define D3DPRESENT_INTERVAL_FOUR 0x00000008L
|
||||
#define D3DPRESENT_INTERVAL_IMMEDIATE 0x80000000L
|
||||
|
||||
//
|
||||
// CursorCaps
|
||||
//
|
||||
// Driver supports HW color cursor in at least hi-res modes(height >=400)
|
||||
#define D3DCURSORCAPS_COLOR 0x00000001L
|
||||
// Driver supports HW cursor also in low-res modes(height < 400)
|
||||
#define D3DCURSORCAPS_LOWRES 0x00000002L
|
||||
|
||||
//
|
||||
// DevCaps
|
||||
//
|
||||
#define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x00000010L /* Device can use execute buffers from system memory */
|
||||
#define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x00000020L /* Device can use execute buffers from video memory */
|
||||
#define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x00000040L /* Device can use TL buffers from system memory */
|
||||
#define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x00000080L /* Device can use TL buffers from video memory */
|
||||
#define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x00000100L /* Device can texture from system memory */
|
||||
#define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x00000200L /* Device can texture from device memory */
|
||||
#define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x00000400L /* Device can draw TLVERTEX primitives */
|
||||
#define D3DDEVCAPS_CANRENDERAFTERFLIP 0x00000800L /* Device can render without waiting for flip to complete */
|
||||
#define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x00001000L /* Device can texture from nonlocal video memory */
|
||||
#define D3DDEVCAPS_DRAWPRIMITIVES2 0x00002000L /* Device can support DrawPrimitives2 */
|
||||
#define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x00004000L /* Device is texturing from separate memory pools */
|
||||
#define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x00008000L /* Device can support Extended DrawPrimitives2 i.e. DX7 compliant driver*/
|
||||
#define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x00010000L /* Device can support transformation and lighting in hardware and DRAWPRIMITIVES2EX must be also */
|
||||
#define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x00020000L /* Device supports a Tex Blt from system memory to non-local vidmem */
|
||||
#define D3DDEVCAPS_HWRASTERIZATION 0x00080000L /* Device has HW acceleration for rasterization */
|
||||
#define D3DDEVCAPS_PUREDEVICE 0x00100000L /* Device supports D3DCREATE_PUREDEVICE */
|
||||
#define D3DDEVCAPS_QUINTICRTPATCHES 0x00200000L /* Device supports quintic Beziers and BSplines */
|
||||
#define D3DDEVCAPS_RTPATCHES 0x00400000L /* Device supports Rect and Tri patches */
|
||||
#define D3DDEVCAPS_RTPATCHHANDLEZERO 0x00800000L /* Indicates that RT Patches may be drawn efficiently using handle 0 */
|
||||
#define D3DDEVCAPS_NPATCHES 0x01000000L /* Device supports N-Patches */
|
||||
|
||||
//
|
||||
// PrimitiveMiscCaps
|
||||
//
|
||||
#define D3DPMISCCAPS_MASKZ 0x00000002L
|
||||
#define D3DPMISCCAPS_LINEPATTERNREP 0x00000004L
|
||||
#define D3DPMISCCAPS_CULLNONE 0x00000010L
|
||||
#define D3DPMISCCAPS_CULLCW 0x00000020L
|
||||
#define D3DPMISCCAPS_CULLCCW 0x00000040L
|
||||
#define D3DPMISCCAPS_COLORWRITEENABLE 0x00000080L
|
||||
#define D3DPMISCCAPS_CLIPPLANESCALEDPOINTS 0x00000100L /* Device correctly clips scaled points to clip planes */
|
||||
#define D3DPMISCCAPS_CLIPTLVERTS 0x00000200L /* device will clip post-transformed vertex primitives */
|
||||
#define D3DPMISCCAPS_TSSARGTEMP 0x00000400L /* device supports D3DTA_TEMP for temporary register */
|
||||
#define D3DPMISCCAPS_BLENDOP 0x00000800L /* device supports D3DRS_BLENDOP */
|
||||
#define D3DPMISCCAPS_NULLREFERENCE 0x00001000L /* Reference Device that doesnt render */
|
||||
|
||||
//
|
||||
// LineCaps
|
||||
//
|
||||
#define D3DLINECAPS_TEXTURE 0x00000001L
|
||||
#define D3DLINECAPS_ZTEST 0x00000002L
|
||||
#define D3DLINECAPS_BLEND 0x00000004L
|
||||
#define D3DLINECAPS_ALPHACMP 0x00000008L
|
||||
#define D3DLINECAPS_FOG 0x00000010L
|
||||
|
||||
//
|
||||
// RasterCaps
|
||||
//
|
||||
#define D3DPRASTERCAPS_DITHER 0x00000001L
|
||||
#define D3DPRASTERCAPS_PAT 0x00000008L
|
||||
#define D3DPRASTERCAPS_ZTEST 0x00000010L
|
||||
#define D3DPRASTERCAPS_FOGVERTEX 0x00000080L
|
||||
#define D3DPRASTERCAPS_FOGTABLE 0x00000100L
|
||||
#define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000L
|
||||
#define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000L
|
||||
#define D3DPRASTERCAPS_ZBIAS 0x00004000L
|
||||
#define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000L
|
||||
#define D3DPRASTERCAPS_FOGRANGE 0x00010000L
|
||||
#define D3DPRASTERCAPS_ANISOTROPY 0x00020000L
|
||||
#define D3DPRASTERCAPS_WBUFFER 0x00040000L
|
||||
#define D3DPRASTERCAPS_WFOG 0x00100000L
|
||||
#define D3DPRASTERCAPS_ZFOG 0x00200000L
|
||||
#define D3DPRASTERCAPS_COLORPERSPECTIVE 0x00400000L /* Device iterates colors perspective correct */
|
||||
#define D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE 0x00800000L
|
||||
|
||||
//
|
||||
// ZCmpCaps, AlphaCmpCaps
|
||||
//
|
||||
#define D3DPCMPCAPS_NEVER 0x00000001L
|
||||
#define D3DPCMPCAPS_LESS 0x00000002L
|
||||
#define D3DPCMPCAPS_EQUAL 0x00000004L
|
||||
#define D3DPCMPCAPS_LESSEQUAL 0x00000008L
|
||||
#define D3DPCMPCAPS_GREATER 0x00000010L
|
||||
#define D3DPCMPCAPS_NOTEQUAL 0x00000020L
|
||||
#define D3DPCMPCAPS_GREATEREQUAL 0x00000040L
|
||||
#define D3DPCMPCAPS_ALWAYS 0x00000080L
|
||||
|
||||
//
|
||||
// SourceBlendCaps, DestBlendCaps
|
||||
//
|
||||
#define D3DPBLENDCAPS_ZERO 0x00000001L
|
||||
#define D3DPBLENDCAPS_ONE 0x00000002L
|
||||
#define D3DPBLENDCAPS_SRCCOLOR 0x00000004L
|
||||
#define D3DPBLENDCAPS_INVSRCCOLOR 0x00000008L
|
||||
#define D3DPBLENDCAPS_SRCALPHA 0x00000010L
|
||||
#define D3DPBLENDCAPS_INVSRCALPHA 0x00000020L
|
||||
#define D3DPBLENDCAPS_DESTALPHA 0x00000040L
|
||||
#define D3DPBLENDCAPS_INVDESTALPHA 0x00000080L
|
||||
#define D3DPBLENDCAPS_DESTCOLOR 0x00000100L
|
||||
#define D3DPBLENDCAPS_INVDESTCOLOR 0x00000200L
|
||||
#define D3DPBLENDCAPS_SRCALPHASAT 0x00000400L
|
||||
#define D3DPBLENDCAPS_BOTHSRCALPHA 0x00000800L
|
||||
#define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x00001000L
|
||||
|
||||
//
|
||||
// ShadeCaps
|
||||
//
|
||||
#define D3DPSHADECAPS_COLORGOURAUDRGB 0x00000008L
|
||||
#define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00000200L
|
||||
#define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x00004000L
|
||||
#define D3DPSHADECAPS_FOGGOURAUD 0x00080000L
|
||||
|
||||
//
|
||||
// TextureCaps
|
||||
//
|
||||
#define D3DPTEXTURECAPS_PERSPECTIVE 0x00000001L /* Perspective-correct texturing is supported */
|
||||
#define D3DPTEXTURECAPS_POW2 0x00000002L /* Power-of-2 texture dimensions are required - applies to non-Cube/Volume textures only. */
|
||||
#define D3DPTEXTURECAPS_ALPHA 0x00000004L /* Alpha in texture pixels is supported */
|
||||
#define D3DPTEXTURECAPS_SQUAREONLY 0x00000020L /* Only square textures are supported */
|
||||
#define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00000040L /* Texture indices are not scaled by the texture size prior to interpolation */
|
||||
#define D3DPTEXTURECAPS_ALPHAPALETTE 0x00000080L /* Device can draw alpha from texture palettes */
|
||||
// Device can use non-POW2 textures if:
|
||||
// 1) D3DTEXTURE_ADDRESS is set to CLAMP for this texture's stage
|
||||
// 2) D3DRS_WRAP(N) is zero for this texture's coordinates
|
||||
// 3) mip mapping is not enabled (use magnification filter only)
|
||||
#define D3DPTEXTURECAPS_NONPOW2CONDITIONAL 0x00000100L
|
||||
#define D3DPTEXTURECAPS_PROJECTED 0x00000400L /* Device can do D3DTTFF_PROJECTED */
|
||||
#define D3DPTEXTURECAPS_CUBEMAP 0x00000800L /* Device can do cubemap textures */
|
||||
#define D3DPTEXTURECAPS_VOLUMEMAP 0x00002000L /* Device can do volume textures */
|
||||
#define D3DPTEXTURECAPS_MIPMAP 0x00004000L /* Device can do mipmapped textures */
|
||||
#define D3DPTEXTURECAPS_MIPVOLUMEMAP 0x00008000L /* Device can do mipmapped volume textures */
|
||||
#define D3DPTEXTURECAPS_MIPCUBEMAP 0x00010000L /* Device can do mipmapped cube maps */
|
||||
#define D3DPTEXTURECAPS_CUBEMAP_POW2 0x00020000L /* Device requires that cubemaps be power-of-2 dimension */
|
||||
#define D3DPTEXTURECAPS_VOLUMEMAP_POW2 0x00040000L /* Device requires that volume maps be power-of-2 dimension */
|
||||
|
||||
//
|
||||
// TextureFilterCaps
|
||||
//
|
||||
#define D3DPTFILTERCAPS_MINFPOINT 0x00000100L /* Min Filter */
|
||||
#define D3DPTFILTERCAPS_MINFLINEAR 0x00000200L
|
||||
#define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400L
|
||||
#define D3DPTFILTERCAPS_MIPFPOINT 0x00010000L /* Mip Filter */
|
||||
#define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000L
|
||||
#define D3DPTFILTERCAPS_MAGFPOINT 0x01000000L /* Mag Filter */
|
||||
#define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000L
|
||||
#define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000L
|
||||
#define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000L
|
||||
#define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000L
|
||||
|
||||
//
|
||||
// TextureAddressCaps
|
||||
//
|
||||
#define D3DPTADDRESSCAPS_WRAP 0x00000001L
|
||||
#define D3DPTADDRESSCAPS_MIRROR 0x00000002L
|
||||
#define D3DPTADDRESSCAPS_CLAMP 0x00000004L
|
||||
#define D3DPTADDRESSCAPS_BORDER 0x00000008L
|
||||
#define D3DPTADDRESSCAPS_INDEPENDENTUV 0x00000010L
|
||||
#define D3DPTADDRESSCAPS_MIRRORONCE 0x00000020L
|
||||
|
||||
//
|
||||
// StencilCaps
|
||||
//
|
||||
#define D3DSTENCILCAPS_KEEP 0x00000001L
|
||||
#define D3DSTENCILCAPS_ZERO 0x00000002L
|
||||
#define D3DSTENCILCAPS_REPLACE 0x00000004L
|
||||
#define D3DSTENCILCAPS_INCRSAT 0x00000008L
|
||||
#define D3DSTENCILCAPS_DECRSAT 0x00000010L
|
||||
#define D3DSTENCILCAPS_INVERT 0x00000020L
|
||||
#define D3DSTENCILCAPS_INCR 0x00000040L
|
||||
#define D3DSTENCILCAPS_DECR 0x00000080L
|
||||
|
||||
//
|
||||
// TextureOpCaps
|
||||
//
|
||||
#define D3DTEXOPCAPS_DISABLE 0x00000001L
|
||||
#define D3DTEXOPCAPS_SELECTARG1 0x00000002L
|
||||
#define D3DTEXOPCAPS_SELECTARG2 0x00000004L
|
||||
#define D3DTEXOPCAPS_MODULATE 0x00000008L
|
||||
#define D3DTEXOPCAPS_MODULATE2X 0x00000010L
|
||||
#define D3DTEXOPCAPS_MODULATE4X 0x00000020L
|
||||
#define D3DTEXOPCAPS_ADD 0x00000040L
|
||||
#define D3DTEXOPCAPS_ADDSIGNED 0x00000080L
|
||||
#define D3DTEXOPCAPS_ADDSIGNED2X 0x00000100L
|
||||
#define D3DTEXOPCAPS_SUBTRACT 0x00000200L
|
||||
#define D3DTEXOPCAPS_ADDSMOOTH 0x00000400L
|
||||
#define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x00000800L
|
||||
#define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x00001000L
|
||||
#define D3DTEXOPCAPS_BLENDFACTORALPHA 0x00002000L
|
||||
#define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x00004000L
|
||||
#define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x00008000L
|
||||
#define D3DTEXOPCAPS_PREMODULATE 0x00010000L
|
||||
#define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x00020000L
|
||||
#define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x00040000L
|
||||
#define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x00080000L
|
||||
#define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x00100000L
|
||||
#define D3DTEXOPCAPS_BUMPENVMAP 0x00200000L
|
||||
#define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x00400000L
|
||||
#define D3DTEXOPCAPS_DOTPRODUCT3 0x00800000L
|
||||
#define D3DTEXOPCAPS_MULTIPLYADD 0x01000000L
|
||||
#define D3DTEXOPCAPS_LERP 0x02000000L
|
||||
|
||||
//
|
||||
// FVFCaps
|
||||
//
|
||||
#define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x0000ffffL /* mask for texture coordinate count field */
|
||||
#define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x00080000L /* Device prefers that vertex elements not be stripped */
|
||||
#define D3DFVFCAPS_PSIZE 0x00100000L /* Device can receive point size */
|
||||
|
||||
//
|
||||
// VertexProcessingCaps
|
||||
//
|
||||
#define D3DVTXPCAPS_TEXGEN 0x00000001L /* device can do texgen */
|
||||
#define D3DVTXPCAPS_MATERIALSOURCE7 0x00000002L /* device can do DX7-level colormaterialsource ops */
|
||||
#define D3DVTXPCAPS_DIRECTIONALLIGHTS 0x00000008L /* device can do directional lights */
|
||||
#define D3DVTXPCAPS_POSITIONALLIGHTS 0x00000010L /* device can do positional lights (includes point and spot) */
|
||||
#define D3DVTXPCAPS_LOCALVIEWER 0x00000020L /* device can do local viewer */
|
||||
#define D3DVTXPCAPS_TWEENING 0x00000040L /* device can do vertex tweening */
|
||||
#define D3DVTXPCAPS_NO_VSDT_UBYTE4 0x00000080L /* device does not support D3DVSDT_UBYTE4 */
|
||||
|
||||
#pragma pack()
|
||||
|
||||
#endif /* (DIRECT3D_VERSION >= 0x0800) */
|
||||
#endif /* _D3D8CAPS_H_ */
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -1,599 +0,0 @@
|
|||
/*==========================================================================;
|
||||
*
|
||||
* Copyright (C) Microsoft Corporation. All Rights Reserved.
|
||||
*
|
||||
* File: d3dcaps.h
|
||||
* Content: Direct3D capabilities include file
|
||||
*
|
||||
***************************************************************************/
|
||||
|
||||
#ifndef _D3DCAPS_H
|
||||
#define _D3DCAPS_H
|
||||
|
||||
/*
|
||||
* Pull in DirectDraw include file automatically:
|
||||
*/
|
||||
#include "ddraw.h"
|
||||
|
||||
#ifndef DIRECT3D_VERSION
|
||||
#define DIRECT3D_VERSION 0x0700
|
||||
#endif
|
||||
|
||||
#pragma pack(4)
|
||||
|
||||
/* Description of capabilities of transform */
|
||||
|
||||
typedef struct _D3DTRANSFORMCAPS {
|
||||
DWORD dwSize;
|
||||
DWORD dwCaps;
|
||||
} D3DTRANSFORMCAPS, *LPD3DTRANSFORMCAPS;
|
||||
|
||||
#define D3DTRANSFORMCAPS_CLIP 0x00000001L /* Will clip whilst transforming */
|
||||
|
||||
/* Description of capabilities of lighting */
|
||||
|
||||
typedef struct _D3DLIGHTINGCAPS {
|
||||
DWORD dwSize;
|
||||
DWORD dwCaps; /* Lighting caps */
|
||||
DWORD dwLightingModel; /* Lighting model - RGB or mono */
|
||||
DWORD dwNumLights; /* Number of lights that can be handled */
|
||||
} D3DLIGHTINGCAPS, *LPD3DLIGHTINGCAPS;
|
||||
|
||||
#define D3DLIGHTINGMODEL_RGB 0x00000001L
|
||||
#define D3DLIGHTINGMODEL_MONO 0x00000002L
|
||||
|
||||
#define D3DLIGHTCAPS_POINT 0x00000001L /* Point lights supported */
|
||||
#define D3DLIGHTCAPS_SPOT 0x00000002L /* Spot lights supported */
|
||||
#define D3DLIGHTCAPS_DIRECTIONAL 0x00000004L /* Directional lights supported */
|
||||
#if(DIRECT3D_VERSION < 0x700)
|
||||
#define D3DLIGHTCAPS_PARALLELPOINT 0x00000008L /* Parallel point lights supported */
|
||||
#endif
|
||||
#if(DIRECT3D_VERSION < 0x500)
|
||||
#define D3DLIGHTCAPS_GLSPOT 0x00000010L /* GL syle spot lights supported */
|
||||
#endif
|
||||
|
||||
/* Description of capabilities for each primitive type */
|
||||
|
||||
typedef struct _D3DPrimCaps {
|
||||
DWORD dwSize;
|
||||
DWORD dwMiscCaps; /* Capability flags */
|
||||
DWORD dwRasterCaps;
|
||||
DWORD dwZCmpCaps;
|
||||
DWORD dwSrcBlendCaps;
|
||||
DWORD dwDestBlendCaps;
|
||||
DWORD dwAlphaCmpCaps;
|
||||
DWORD dwShadeCaps;
|
||||
DWORD dwTextureCaps;
|
||||
DWORD dwTextureFilterCaps;
|
||||
DWORD dwTextureBlendCaps;
|
||||
DWORD dwTextureAddressCaps;
|
||||
DWORD dwStippleWidth; /* maximum width and height of */
|
||||
DWORD dwStippleHeight; /* of supported stipple (up to 32x32) */
|
||||
} D3DPRIMCAPS, *LPD3DPRIMCAPS;
|
||||
|
||||
/* D3DPRIMCAPS dwMiscCaps */
|
||||
|
||||
#define D3DPMISCCAPS_MASKPLANES 0x00000001L
|
||||
#define D3DPMISCCAPS_MASKZ 0x00000002L
|
||||
#define D3DPMISCCAPS_LINEPATTERNREP 0x00000004L
|
||||
#define D3DPMISCCAPS_CONFORMANT 0x00000008L
|
||||
#define D3DPMISCCAPS_CULLNONE 0x00000010L
|
||||
#define D3DPMISCCAPS_CULLCW 0x00000020L
|
||||
#define D3DPMISCCAPS_CULLCCW 0x00000040L
|
||||
|
||||
/* D3DPRIMCAPS dwRasterCaps */
|
||||
|
||||
#define D3DPRASTERCAPS_DITHER 0x00000001L
|
||||
#define D3DPRASTERCAPS_ROP2 0x00000002L
|
||||
#define D3DPRASTERCAPS_XOR 0x00000004L
|
||||
#define D3DPRASTERCAPS_PAT 0x00000008L
|
||||
#define D3DPRASTERCAPS_ZTEST 0x00000010L
|
||||
#define D3DPRASTERCAPS_SUBPIXEL 0x00000020L
|
||||
#define D3DPRASTERCAPS_SUBPIXELX 0x00000040L
|
||||
#define D3DPRASTERCAPS_FOGVERTEX 0x00000080L
|
||||
#define D3DPRASTERCAPS_FOGTABLE 0x00000100L
|
||||
#define D3DPRASTERCAPS_STIPPLE 0x00000200L
|
||||
#if(DIRECT3D_VERSION >= 0x0500)
|
||||
#define D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT 0x00000400L
|
||||
#define D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT 0x00000800L
|
||||
#define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000L
|
||||
#define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000L
|
||||
#define D3DPRASTERCAPS_ZBIAS 0x00004000L
|
||||
#define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000L
|
||||
#define D3DPRASTERCAPS_FOGRANGE 0x00010000L
|
||||
#define D3DPRASTERCAPS_ANISOTROPY 0x00020000L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0500 */
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
#define D3DPRASTERCAPS_WBUFFER 0x00040000L
|
||||
#define D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT 0x00080000L
|
||||
#define D3DPRASTERCAPS_WFOG 0x00100000L
|
||||
#define D3DPRASTERCAPS_ZFOG 0x00200000L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
|
||||
/* D3DPRIMCAPS dwZCmpCaps, dwAlphaCmpCaps */
|
||||
|
||||
#define D3DPCMPCAPS_NEVER 0x00000001L
|
||||
#define D3DPCMPCAPS_LESS 0x00000002L
|
||||
#define D3DPCMPCAPS_EQUAL 0x00000004L
|
||||
#define D3DPCMPCAPS_LESSEQUAL 0x00000008L
|
||||
#define D3DPCMPCAPS_GREATER 0x00000010L
|
||||
#define D3DPCMPCAPS_NOTEQUAL 0x00000020L
|
||||
#define D3DPCMPCAPS_GREATEREQUAL 0x00000040L
|
||||
#define D3DPCMPCAPS_ALWAYS 0x00000080L
|
||||
|
||||
/* D3DPRIMCAPS dwSourceBlendCaps, dwDestBlendCaps */
|
||||
|
||||
#define D3DPBLENDCAPS_ZERO 0x00000001L
|
||||
#define D3DPBLENDCAPS_ONE 0x00000002L
|
||||
#define D3DPBLENDCAPS_SRCCOLOR 0x00000004L
|
||||
#define D3DPBLENDCAPS_INVSRCCOLOR 0x00000008L
|
||||
#define D3DPBLENDCAPS_SRCALPHA 0x00000010L
|
||||
#define D3DPBLENDCAPS_INVSRCALPHA 0x00000020L
|
||||
#define D3DPBLENDCAPS_DESTALPHA 0x00000040L
|
||||
#define D3DPBLENDCAPS_INVDESTALPHA 0x00000080L
|
||||
#define D3DPBLENDCAPS_DESTCOLOR 0x00000100L
|
||||
#define D3DPBLENDCAPS_INVDESTCOLOR 0x00000200L
|
||||
#define D3DPBLENDCAPS_SRCALPHASAT 0x00000400L
|
||||
#define D3DPBLENDCAPS_BOTHSRCALPHA 0x00000800L
|
||||
#define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x00001000L
|
||||
|
||||
/* D3DPRIMCAPS dwShadeCaps */
|
||||
|
||||
#define D3DPSHADECAPS_COLORFLATMONO 0x00000001L
|
||||
#define D3DPSHADECAPS_COLORFLATRGB 0x00000002L
|
||||
#define D3DPSHADECAPS_COLORGOURAUDMONO 0x00000004L
|
||||
#define D3DPSHADECAPS_COLORGOURAUDRGB 0x00000008L
|
||||
#define D3DPSHADECAPS_COLORPHONGMONO 0x00000010L
|
||||
#define D3DPSHADECAPS_COLORPHONGRGB 0x00000020L
|
||||
|
||||
#define D3DPSHADECAPS_SPECULARFLATMONO 0x00000040L
|
||||
#define D3DPSHADECAPS_SPECULARFLATRGB 0x00000080L
|
||||
#define D3DPSHADECAPS_SPECULARGOURAUDMONO 0x00000100L
|
||||
#define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00000200L
|
||||
#define D3DPSHADECAPS_SPECULARPHONGMONO 0x00000400L
|
||||
#define D3DPSHADECAPS_SPECULARPHONGRGB 0x00000800L
|
||||
|
||||
#define D3DPSHADECAPS_ALPHAFLATBLEND 0x00001000L
|
||||
#define D3DPSHADECAPS_ALPHAFLATSTIPPLED 0x00002000L
|
||||
#define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x00004000L
|
||||
#define D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 0x00008000L
|
||||
#define D3DPSHADECAPS_ALPHAPHONGBLEND 0x00010000L
|
||||
#define D3DPSHADECAPS_ALPHAPHONGSTIPPLED 0x00020000L
|
||||
|
||||
#define D3DPSHADECAPS_FOGFLAT 0x00040000L
|
||||
#define D3DPSHADECAPS_FOGGOURAUD 0x00080000L
|
||||
#define D3DPSHADECAPS_FOGPHONG 0x00100000L
|
||||
|
||||
/* D3DPRIMCAPS dwTextureCaps */
|
||||
|
||||
/*
|
||||
* Perspective-correct texturing is supported
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_PERSPECTIVE 0x00000001L
|
||||
|
||||
/*
|
||||
* Power-of-2 texture dimensions are required
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_POW2 0x00000002L
|
||||
|
||||
/*
|
||||
* Alpha in texture pixels is supported
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_ALPHA 0x00000004L
|
||||
|
||||
/*
|
||||
* Color-keyed textures are supported
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_TRANSPARENCY 0x00000008L
|
||||
|
||||
/*
|
||||
* obsolete, see D3DPTADDRESSCAPS_BORDER
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_BORDER 0x00000010L
|
||||
|
||||
/*
|
||||
* Only square textures are supported
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_SQUAREONLY 0x00000020L
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
/*
|
||||
* Texture indices are not scaled by the texture size prior
|
||||
* to interpolation.
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00000040L
|
||||
|
||||
/*
|
||||
* Device can draw alpha from texture palettes
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_ALPHAPALETTE 0x00000080L
|
||||
|
||||
/*
|
||||
* Device can use non-POW2 textures if:
|
||||
* 1) D3DTEXTURE_ADDRESS is set to CLAMP for this texture's stage
|
||||
* 2) D3DRS_WRAP(N) is zero for this texture's coordinates
|
||||
* 3) mip mapping is not enabled (use magnification filter only)
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_NONPOW2CONDITIONAL 0x00000100L
|
||||
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
#if(DIRECT3D_VERSION >= 0x0700)
|
||||
|
||||
// 0x00000200L unused
|
||||
|
||||
/*
|
||||
* Device can divide transformed texture coordinates by the
|
||||
* COUNTth texture coordinate (can do D3DTTFF_PROJECTED)
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_PROJECTED 0x00000400L
|
||||
|
||||
/*
|
||||
* Device can do cubemap textures
|
||||
*/
|
||||
#define D3DPTEXTURECAPS_CUBEMAP 0x00000800L
|
||||
|
||||
#define D3DPTEXTURECAPS_COLORKEYBLEND 0x00001000L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0700 */
|
||||
|
||||
/* D3DPRIMCAPS dwTextureFilterCaps */
|
||||
|
||||
#define D3DPTFILTERCAPS_NEAREST 0x00000001L
|
||||
#define D3DPTFILTERCAPS_LINEAR 0x00000002L
|
||||
#define D3DPTFILTERCAPS_MIPNEAREST 0x00000004L
|
||||
#define D3DPTFILTERCAPS_MIPLINEAR 0x00000008L
|
||||
#define D3DPTFILTERCAPS_LINEARMIPNEAREST 0x00000010L
|
||||
#define D3DPTFILTERCAPS_LINEARMIPLINEAR 0x00000020L
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
/* Device3 Min Filter */
|
||||
#define D3DPTFILTERCAPS_MINFPOINT 0x00000100L
|
||||
#define D3DPTFILTERCAPS_MINFLINEAR 0x00000200L
|
||||
#define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400L
|
||||
|
||||
/* Device3 Mip Filter */
|
||||
#define D3DPTFILTERCAPS_MIPFPOINT 0x00010000L
|
||||
#define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000L
|
||||
|
||||
/* Device3 Mag Filter */
|
||||
#define D3DPTFILTERCAPS_MAGFPOINT 0x01000000L
|
||||
#define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000L
|
||||
#define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000L
|
||||
#define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000L
|
||||
#define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
|
||||
/* D3DPRIMCAPS dwTextureBlendCaps */
|
||||
|
||||
#define D3DPTBLENDCAPS_DECAL 0x00000001L
|
||||
#define D3DPTBLENDCAPS_MODULATE 0x00000002L
|
||||
#define D3DPTBLENDCAPS_DECALALPHA 0x00000004L
|
||||
#define D3DPTBLENDCAPS_MODULATEALPHA 0x00000008L
|
||||
#define D3DPTBLENDCAPS_DECALMASK 0x00000010L
|
||||
#define D3DPTBLENDCAPS_MODULATEMASK 0x00000020L
|
||||
#define D3DPTBLENDCAPS_COPY 0x00000040L
|
||||
#if(DIRECT3D_VERSION >= 0x0500)
|
||||
#define D3DPTBLENDCAPS_ADD 0x00000080L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0500 */
|
||||
|
||||
/* D3DPRIMCAPS dwTextureAddressCaps */
|
||||
#define D3DPTADDRESSCAPS_WRAP 0x00000001L
|
||||
#define D3DPTADDRESSCAPS_MIRROR 0x00000002L
|
||||
#define D3DPTADDRESSCAPS_CLAMP 0x00000004L
|
||||
#if(DIRECT3D_VERSION >= 0x0500)
|
||||
#define D3DPTADDRESSCAPS_BORDER 0x00000008L
|
||||
#define D3DPTADDRESSCAPS_INDEPENDENTUV 0x00000010L
|
||||
#endif /* DIRECT3D_VERSION >= 0x0500 */
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
|
||||
/* D3DDEVICEDESC dwStencilCaps */
|
||||
|
||||
#define D3DSTENCILCAPS_KEEP 0x00000001L
|
||||
#define D3DSTENCILCAPS_ZERO 0x00000002L
|
||||
#define D3DSTENCILCAPS_REPLACE 0x00000004L
|
||||
#define D3DSTENCILCAPS_INCRSAT 0x00000008L
|
||||
#define D3DSTENCILCAPS_DECRSAT 0x00000010L
|
||||
#define D3DSTENCILCAPS_INVERT 0x00000020L
|
||||
#define D3DSTENCILCAPS_INCR 0x00000040L
|
||||
#define D3DSTENCILCAPS_DECR 0x00000080L
|
||||
|
||||
/* D3DDEVICEDESC dwTextureOpCaps */
|
||||
|
||||
#define D3DTEXOPCAPS_DISABLE 0x00000001L
|
||||
#define D3DTEXOPCAPS_SELECTARG1 0x00000002L
|
||||
#define D3DTEXOPCAPS_SELECTARG2 0x00000004L
|
||||
#define D3DTEXOPCAPS_MODULATE 0x00000008L
|
||||
#define D3DTEXOPCAPS_MODULATE2X 0x00000010L
|
||||
#define D3DTEXOPCAPS_MODULATE4X 0x00000020L
|
||||
#define D3DTEXOPCAPS_ADD 0x00000040L
|
||||
#define D3DTEXOPCAPS_ADDSIGNED 0x00000080L
|
||||
#define D3DTEXOPCAPS_ADDSIGNED2X 0x00000100L
|
||||
#define D3DTEXOPCAPS_SUBTRACT 0x00000200L
|
||||
#define D3DTEXOPCAPS_ADDSMOOTH 0x00000400L
|
||||
#define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x00000800L
|
||||
#define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x00001000L
|
||||
#define D3DTEXOPCAPS_BLENDFACTORALPHA 0x00002000L
|
||||
#define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x00004000L
|
||||
#define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x00008000L
|
||||
#define D3DTEXOPCAPS_PREMODULATE 0x00010000L
|
||||
#define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x00020000L
|
||||
#define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x00040000L
|
||||
#define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x00080000L
|
||||
#define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x00100000L
|
||||
#define D3DTEXOPCAPS_BUMPENVMAP 0x00200000L
|
||||
#define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x00400000L
|
||||
#define D3DTEXOPCAPS_DOTPRODUCT3 0x00800000L
|
||||
|
||||
/* D3DDEVICEDESC dwFVFCaps flags */
|
||||
|
||||
#define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x0000ffffL /* mask for texture coordinate count field */
|
||||
#define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x00080000L /* Device prefers that vertex elements not be stripped */
|
||||
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
|
||||
/*
|
||||
* Description for a device.
|
||||
* This is used to describe a device that is to be created or to query
|
||||
* the current device.
|
||||
*/
|
||||
typedef struct _D3DDeviceDesc {
|
||||
DWORD dwSize; /* Size of D3DDEVICEDESC structure */
|
||||
DWORD dwFlags; /* Indicates which fields have valid data */
|
||||
D3DCOLORMODEL dcmColorModel; /* Color model of device */
|
||||
DWORD dwDevCaps; /* Capabilities of device */
|
||||
D3DTRANSFORMCAPS dtcTransformCaps; /* Capabilities of transform */
|
||||
BOOL bClipping; /* Device can do 3D clipping */
|
||||
D3DLIGHTINGCAPS dlcLightingCaps; /* Capabilities of lighting */
|
||||
D3DPRIMCAPS dpcLineCaps;
|
||||
D3DPRIMCAPS dpcTriCaps;
|
||||
DWORD dwDeviceRenderBitDepth; /* One of DDBB_8, 16, etc.. */
|
||||
DWORD dwDeviceZBufferBitDepth;/* One of DDBD_16, 32, etc.. */
|
||||
DWORD dwMaxBufferSize; /* Maximum execute buffer size */
|
||||
DWORD dwMaxVertexCount; /* Maximum vertex count */
|
||||
#if(DIRECT3D_VERSION >= 0x0500)
|
||||
// *** New fields for DX5 *** //
|
||||
|
||||
// Width and height caps are 0 for legacy HALs.
|
||||
DWORD dwMinTextureWidth, dwMinTextureHeight;
|
||||
DWORD dwMaxTextureWidth, dwMaxTextureHeight;
|
||||
DWORD dwMinStippleWidth, dwMaxStippleWidth;
|
||||
DWORD dwMinStippleHeight, dwMaxStippleHeight;
|
||||
#endif /* DIRECT3D_VERSION >= 0x0500 */
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
// New fields for DX6
|
||||
DWORD dwMaxTextureRepeat;
|
||||
DWORD dwMaxTextureAspectRatio;
|
||||
DWORD dwMaxAnisotropy;
|
||||
|
||||
// Guard band that the rasterizer can accommodate
|
||||
// Screen-space vertices inside this space but outside the viewport
|
||||
// will get clipped properly.
|
||||
D3DVALUE dvGuardBandLeft;
|
||||
D3DVALUE dvGuardBandTop;
|
||||
D3DVALUE dvGuardBandRight;
|
||||
D3DVALUE dvGuardBandBottom;
|
||||
|
||||
D3DVALUE dvExtentsAdjust;
|
||||
DWORD dwStencilCaps;
|
||||
|
||||
DWORD dwFVFCaps;
|
||||
DWORD dwTextureOpCaps;
|
||||
WORD wMaxTextureBlendStages;
|
||||
WORD wMaxSimultaneousTextures;
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
} D3DDEVICEDESC, *LPD3DDEVICEDESC;
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0700)
|
||||
typedef struct _D3DDeviceDesc7 {
|
||||
DWORD dwDevCaps; /* Capabilities of device */
|
||||
D3DPRIMCAPS dpcLineCaps;
|
||||
D3DPRIMCAPS dpcTriCaps;
|
||||
DWORD dwDeviceRenderBitDepth; /* One of DDBB_8, 16, etc.. */
|
||||
DWORD dwDeviceZBufferBitDepth;/* One of DDBD_16, 32, etc.. */
|
||||
|
||||
DWORD dwMinTextureWidth, dwMinTextureHeight;
|
||||
DWORD dwMaxTextureWidth, dwMaxTextureHeight;
|
||||
|
||||
DWORD dwMaxTextureRepeat;
|
||||
DWORD dwMaxTextureAspectRatio;
|
||||
DWORD dwMaxAnisotropy;
|
||||
|
||||
D3DVALUE dvGuardBandLeft;
|
||||
D3DVALUE dvGuardBandTop;
|
||||
D3DVALUE dvGuardBandRight;
|
||||
D3DVALUE dvGuardBandBottom;
|
||||
|
||||
D3DVALUE dvExtentsAdjust;
|
||||
DWORD dwStencilCaps;
|
||||
|
||||
DWORD dwFVFCaps;
|
||||
DWORD dwTextureOpCaps;
|
||||
WORD wMaxTextureBlendStages;
|
||||
WORD wMaxSimultaneousTextures;
|
||||
|
||||
DWORD dwMaxActiveLights;
|
||||
D3DVALUE dvMaxVertexW;
|
||||
GUID deviceGUID;
|
||||
|
||||
WORD wMaxUserClipPlanes;
|
||||
WORD wMaxVertexBlendMatrices;
|
||||
|
||||
DWORD dwVertexProcessingCaps;
|
||||
|
||||
DWORD dwReserved1;
|
||||
DWORD dwReserved2;
|
||||
DWORD dwReserved3;
|
||||
DWORD dwReserved4;
|
||||
} D3DDEVICEDESC7, *LPD3DDEVICEDESC7;
|
||||
#endif /* DIRECT3D_VERSION >= 0x0700 */
|
||||
|
||||
#define D3DDEVICEDESCSIZE (sizeof(D3DDEVICEDESC))
|
||||
#define D3DDEVICEDESC7SIZE (sizeof(D3DDEVICEDESC7))
|
||||
|
||||
typedef HRESULT (CALLBACK * LPD3DENUMDEVICESCALLBACK)(GUID FAR *lpGuid, LPSTR lpDeviceDescription, LPSTR lpDeviceName, LPD3DDEVICEDESC, LPD3DDEVICEDESC, LPVOID);
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0700)
|
||||
typedef HRESULT (CALLBACK * LPD3DENUMDEVICESCALLBACK7)(LPSTR lpDeviceDescription, LPSTR lpDeviceName, LPD3DDEVICEDESC7, LPVOID);
|
||||
#endif /* DIRECT3D_VERSION >= 0x0700 */
|
||||
|
||||
/* D3DDEVICEDESC dwFlags indicating valid fields */
|
||||
|
||||
#define D3DDD_COLORMODEL 0x00000001L /* dcmColorModel is valid */
|
||||
#define D3DDD_DEVCAPS 0x00000002L /* dwDevCaps is valid */
|
||||
#define D3DDD_TRANSFORMCAPS 0x00000004L /* dtcTransformCaps is valid */
|
||||
#define D3DDD_LIGHTINGCAPS 0x00000008L /* dlcLightingCaps is valid */
|
||||
#define D3DDD_BCLIPPING 0x00000010L /* bClipping is valid */
|
||||
#define D3DDD_LINECAPS 0x00000020L /* dpcLineCaps is valid */
|
||||
#define D3DDD_TRICAPS 0x00000040L /* dpcTriCaps is valid */
|
||||
#define D3DDD_DEVICERENDERBITDEPTH 0x00000080L /* dwDeviceRenderBitDepth is valid */
|
||||
#define D3DDD_DEVICEZBUFFERBITDEPTH 0x00000100L /* dwDeviceZBufferBitDepth is valid */
|
||||
#define D3DDD_MAXBUFFERSIZE 0x00000200L /* dwMaxBufferSize is valid */
|
||||
#define D3DDD_MAXVERTEXCOUNT 0x00000400L /* dwMaxVertexCount is valid */
|
||||
|
||||
/* D3DDEVICEDESC dwDevCaps flags */
|
||||
|
||||
#define D3DDEVCAPS_FLOATTLVERTEX 0x00000001L /* Device accepts floating point */
|
||||
/* for post-transform vertex data */
|
||||
#define D3DDEVCAPS_SORTINCREASINGZ 0x00000002L /* Device needs data sorted for increasing Z */
|
||||
#define D3DDEVCAPS_SORTDECREASINGZ 0X00000004L /* Device needs data sorted for decreasing Z */
|
||||
#define D3DDEVCAPS_SORTEXACT 0x00000008L /* Device needs data sorted exactly */
|
||||
|
||||
#define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x00000010L /* Device can use execute buffers from system memory */
|
||||
#define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x00000020L /* Device can use execute buffers from video memory */
|
||||
#define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x00000040L /* Device can use TL buffers from system memory */
|
||||
#define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x00000080L /* Device can use TL buffers from video memory */
|
||||
#define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x00000100L /* Device can texture from system memory */
|
||||
#define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x00000200L /* Device can texture from device memory */
|
||||
#if(DIRECT3D_VERSION >= 0x0500)
|
||||
#define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x00000400L /* Device can draw TLVERTEX primitives */
|
||||
#define D3DDEVCAPS_CANRENDERAFTERFLIP 0x00000800L /* Device can render without waiting for flip to complete */
|
||||
#define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x00001000L /* Device can texture from nonlocal video memory */
|
||||
#endif /* DIRECT3D_VERSION >= 0x0500 */
|
||||
#if(DIRECT3D_VERSION >= 0x0600)
|
||||
#define D3DDEVCAPS_DRAWPRIMITIVES2 0x00002000L /* Device can support DrawPrimitives2 */
|
||||
#define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x00004000L /* Device is texturing from separate memory pools */
|
||||
#define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x00008000L /* Device can support Extended DrawPrimitives2 i.e. DX7 compliant driver*/
|
||||
#endif /* DIRECT3D_VERSION >= 0x0600 */
|
||||
#if(DIRECT3D_VERSION >= 0x0700)
|
||||
#define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x00010000L /* Device can support transformation and lighting in hardware and DRAWPRIMITIVES2EX must be also */
|
||||
#define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x00020000L /* Device supports a Tex Blt from system memory to non-local vidmem */
|
||||
#define D3DDEVCAPS_HWRASTERIZATION 0x00080000L /* Device has HW acceleration for rasterization */
|
||||
|
||||
/*
|
||||
* These are the flags in the D3DDEVICEDESC7.dwVertexProcessingCaps field
|
||||
*/
|
||||
|
||||
/* device can do texgen */
|
||||
#define D3DVTXPCAPS_TEXGEN 0x00000001L
|
||||
/* device can do IDirect3DDevice7 colormaterialsource ops */
|
||||
#define D3DVTXPCAPS_MATERIALSOURCE7 0x00000002L
|
||||
/* device can do vertex fog */
|
||||
#define D3DVTXPCAPS_VERTEXFOG 0x00000004L
|
||||
/* device can do directional lights */
|
||||
#define D3DVTXPCAPS_DIRECTIONALLIGHTS 0x00000008L
|
||||
/* device can do positional lights (includes point and spot) */
|
||||
#define D3DVTXPCAPS_POSITIONALLIGHTS 0x00000010L
|
||||
/* device can do local viewer */
|
||||
#define D3DVTXPCAPS_LOCALVIEWER 0x00000020L
|
||||
|
||||
#endif /* DIRECT3D_VERSION >= 0x0700 */
|
||||
|
||||
#define D3DFDS_COLORMODEL 0x00000001L /* Match color model */
|
||||
#define D3DFDS_GUID 0x00000002L /* Match guid */
|
||||
#define D3DFDS_HARDWARE 0x00000004L /* Match hardware/software */
|
||||
#define D3DFDS_TRIANGLES 0x00000008L /* Match in triCaps */
|
||||
#define D3DFDS_LINES 0x00000010L /* Match in lineCaps */
|
||||
#define D3DFDS_MISCCAPS 0x00000020L /* Match primCaps.dwMiscCaps */
|
||||
#define D3DFDS_RASTERCAPS 0x00000040L /* Match primCaps.dwRasterCaps */
|
||||
#define D3DFDS_ZCMPCAPS 0x00000080L /* Match primCaps.dwZCmpCaps */
|
||||
#define D3DFDS_ALPHACMPCAPS 0x00000100L /* Match primCaps.dwAlphaCmpCaps */
|
||||
#define D3DFDS_SRCBLENDCAPS 0x00000200L /* Match primCaps.dwSourceBlendCaps */
|
||||
#define D3DFDS_DSTBLENDCAPS 0x00000400L /* Match primCaps.dwDestBlendCaps */
|
||||
#define D3DFDS_SHADECAPS 0x00000800L /* Match primCaps.dwShadeCaps */
|
||||
#define D3DFDS_TEXTURECAPS 0x00001000L /* Match primCaps.dwTextureCaps */
|
||||
#define D3DFDS_TEXTUREFILTERCAPS 0x00002000L /* Match primCaps.dwTextureFilterCaps */
|
||||
#define D3DFDS_TEXTUREBLENDCAPS 0x00004000L /* Match primCaps.dwTextureBlendCaps */
|
||||
#define D3DFDS_TEXTUREADDRESSCAPS 0x00008000L /* Match primCaps.dwTextureBlendCaps */
|
||||
|
||||
/*
|
||||
* FindDevice arguments
|
||||
*/
|
||||
typedef struct _D3DFINDDEVICESEARCH {
|
||||
DWORD dwSize;
|
||||
DWORD dwFlags;
|
||||
BOOL bHardware;
|
||||
D3DCOLORMODEL dcmColorModel;
|
||||
GUID guid;
|
||||
DWORD dwCaps;
|
||||
D3DPRIMCAPS dpcPrimCaps;
|
||||
} D3DFINDDEVICESEARCH, *LPD3DFINDDEVICESEARCH;
|
||||
|
||||
typedef struct _D3DFINDDEVICERESULT {
|
||||
DWORD dwSize;
|
||||
GUID guid; /* guid which matched */
|
||||
D3DDEVICEDESC ddHwDesc; /* hardware D3DDEVICEDESC */
|
||||
D3DDEVICEDESC ddSwDesc; /* software D3DDEVICEDESC */
|
||||
} D3DFINDDEVICERESULT, *LPD3DFINDDEVICERESULT;
|
||||
|
||||
/*
|
||||
* Description of execute buffer.
|
||||
*/
|
||||
typedef struct _D3DExecuteBufferDesc {
|
||||
DWORD dwSize; /* size of this structure */
|
||||
DWORD dwFlags; /* flags indicating which fields are valid */
|
||||
DWORD dwCaps; /* capabilities of execute buffer */
|
||||
DWORD dwBufferSize; /* size of execute buffer data */
|
||||
LPVOID lpData; /* pointer to actual data */
|
||||
} D3DEXECUTEBUFFERDESC, *LPD3DEXECUTEBUFFERDESC;
|
||||
|
||||
/* D3DEXECUTEBUFFER dwFlags indicating valid fields */
|
||||
|
||||
#define D3DDEB_BUFSIZE 0x00000001l /* buffer size valid */
|
||||
#define D3DDEB_CAPS 0x00000002l /* caps valid */
|
||||
#define D3DDEB_LPDATA 0x00000004l /* lpData valid */
|
||||
|
||||
/* D3DEXECUTEBUFFER dwCaps */
|
||||
|
||||
#define D3DDEBCAPS_SYSTEMMEMORY 0x00000001l /* buffer in system memory */
|
||||
#define D3DDEBCAPS_VIDEOMEMORY 0x00000002l /* buffer in device memory */
|
||||
#define D3DDEBCAPS_MEM (D3DDEBCAPS_SYSTEMMEMORY|D3DDEBCAPS_VIDEOMEMORY)
|
||||
|
||||
#if(DIRECT3D_VERSION < 0x0800)
|
||||
|
||||
#if(DIRECT3D_VERSION >= 0x0700)
|
||||
typedef struct _D3DDEVINFO_TEXTUREMANAGER {
|
||||
BOOL bThrashing; /* indicates if thrashing */
|
||||
DWORD dwApproxBytesDownloaded; /* Approximate number of bytes downloaded by texture manager */
|
||||
DWORD dwNumEvicts; /* number of textures evicted */
|
||||
DWORD dwNumVidCreates; /* number of textures created in video memory */
|
||||
DWORD dwNumTexturesUsed; /* number of textures used */
|
||||
DWORD dwNumUsedTexInVid; /* number of used textures present in video memory */
|
||||
DWORD dwWorkingSet; /* number of textures in video memory */
|
||||
DWORD dwWorkingSetBytes; /* number of bytes in video memory */
|
||||
DWORD dwTotalManaged; /* total number of managed textures */
|
||||
DWORD dwTotalBytes; /* total number of bytes of managed textures */
|
||||
DWORD dwLastPri; /* priority of last texture evicted */
|
||||
} D3DDEVINFO_TEXTUREMANAGER, *LPD3DDEVINFO_TEXTUREMANAGER;
|
||||
|
||||
typedef struct _D3DDEVINFO_TEXTURING {
|
||||
DWORD dwNumLoads; /* counts Load() API calls */
|
||||
DWORD dwApproxBytesLoaded; /* Approximate number bytes loaded via Load() */
|
||||
DWORD dwNumPreLoads; /* counts PreLoad() API calls */
|
||||
DWORD dwNumSet; /* counts SetTexture() API calls */
|
||||
DWORD dwNumCreates; /* counts texture creates */
|
||||
DWORD dwNumDestroys; /* counts texture destroys */
|
||||
DWORD dwNumSetPriorities; /* counts SetPriority() API calls */
|
||||
DWORD dwNumSetLODs; /* counts SetLOD() API calls */
|
||||
DWORD dwNumLocks; /* counts number of texture locks */
|
||||
DWORD dwNumGetDCs; /* counts number of GetDCs to textures */
|
||||
} D3DDEVINFO_TEXTURING, *LPD3DDEVINFO_TEXTURING;
|
||||
#endif /* DIRECT3D_VERSION >= 0x0700 */
|
||||
|
||||
#endif //(DIRECT3D_VERSION < 0x0800)
|
||||
|
||||
#pragma pack()
|
||||
|
||||
|
||||
#endif /* _D3DCAPS_H_ */
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue