111 lines
4.9 KiB
XML
111 lines
4.9 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
// Copyright (c) 2010-2014 SharpDX - Alexandre Mutel
|
|
//
|
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
// of this software and associated documentation files (the "Software"), to deal
|
|
// in the Software without restriction, including without limitation the rights
|
|
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
// copies of the Software, and to permit persons to whom the Software is
|
|
// furnished to do so, subject to the following conditions:
|
|
//
|
|
// The above copyright notice and this permission notice shall be included in
|
|
// all copies or substantial portions of the Software.
|
|
//
|
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
// THE SOFTWARE.
|
|
-->
|
|
<config id="sharpdx-x3daudio" xmlns="urn:SharpGen.Config">
|
|
<depends>sharpdx</depends>
|
|
|
|
<namespace>SharpDX.X3DAudio</namespace>
|
|
<assembly>SharpDX.XAudio2</assembly>
|
|
|
|
<include file="x3daudio.h" attach="true" output="X3DAudio"/>
|
|
|
|
<extension>
|
|
<context>sharpdx-x3daudio-ext</context>
|
|
<context>x3daudio</context>
|
|
|
|
<define struct="SharpDX.X3DAudio.X3DAudioHandle" sizeof="20" />
|
|
|
|
<create-cpp enum="X3DAudioCalculateFlags" macro="X3DAUDIO_CALCULATE_.*" />
|
|
|
|
<create class="X3DAudio" visibility="public"/>
|
|
<context-clear />
|
|
</extension>
|
|
|
|
<bindings>
|
|
<!-- Primitive bindings -->
|
|
<bind from="X3DAUDIOHANDLE" to="SharpDX.X3DAudio.X3DAudioHandle" />
|
|
<bind from="X3DAUDIO_VECTOR" to="SharpDX.Mathematics.Interop.RawVector3"/>
|
|
</bindings>
|
|
|
|
<mapping>
|
|
<context>sharpdx-x3daudio-ext</context>
|
|
<context>x3daudio</context>
|
|
<map enum="X3DAUDIO(.*)" name-tmp="$1" />
|
|
<map struct="X3DAUDIO(.*)" name-tmp="$1" />
|
|
|
|
<!-- Remove functions as they are declared manually -->
|
|
<remove function="X3DAudio.*"/>
|
|
<!--<ifdef name="DIRECTX11_1">
|
|
<map function="X3DAudio.*" dll='"#(XAUDIO2_DLL_A)"' group="SharpDX.X3DAudio.X3DAudio" visibility="private" />
|
|
</ifdef>
|
|
<ifndef name="DIRECTX11_1">
|
|
<map function="X3DAudio.*" dll='"X3DAudio1_7.dll"' group="SharpDX.X3DAudio.X3DAudio" visibility="private" />
|
|
</ifndef>-->
|
|
|
|
<!--
|
|
// *****************************************************************
|
|
// X3DAudio Enumerations
|
|
// *****************************************************************
|
|
-->
|
|
<map enum="X3DAudioCalculateFlags" name="CalculateFlags" flags="true"/>
|
|
<map enum-item="X3DAUDIO_CALCULATE_(.*)" name-tmp="$1" />
|
|
<map enum-item="X3DAUDIO_CALCULATE_ZEROCENTER" name="ZeroCenter"/>
|
|
|
|
<!--
|
|
// *****************************************************************
|
|
// X3DAudio Structures
|
|
// *****************************************************************
|
|
-->
|
|
<!-- Set all fields with pointer to internal -->
|
|
<map field="X3DAUDIO_.*::p([A-Z].*)" name-tmp="$1Pointer" visibility="internal"/>
|
|
|
|
<map struct="X3DAUDIO_DISTANCE_CURVE" visibility="internal"/>
|
|
<map struct="X3DAUDIO_DISTANCE_CURVE_POINT" name="CurvePoint"/>
|
|
<map field="X3DAUDIO_DISTANCE_CURVE_POINT::DSPSetting" name="DspSetting"/>
|
|
|
|
<map struct="X3DAUDIO_CONE" native="true" struct-to-class="true" marshalto="true"/>
|
|
<map field="X3DAUDIO_CONE::InnerLPF" name="InnerLpf"/>
|
|
<map field="X3DAUDIO_CONE::OuterLPF" name="OuterLpf"/>
|
|
<map struct="X3DAUDIO_EMITTER" native="true" struct-to-class="true" marshal="true"/>
|
|
<map struct="X3DAUDIO_LISTENER" native="true" struct-to-class="true" marshal="true"/>
|
|
|
|
<map struct="X3DAUDIO_DSP_SETTINGS" native="true" struct-to-class="true" marshal="true"/>
|
|
<map field="X3DAUDIO_DSP_SETTINGS::SrcChannelCount" name="SourceChannelCount" visibility="public readonly"/>
|
|
<map field="X3DAUDIO_DSP_SETTINGS::DstChannelCount" name="DestinationChannelCount" visibility="public readonly"/>
|
|
|
|
<map field=".*::LFE(.*)" name="Lfe$1"/>
|
|
<map field=".*::LPF(.*)" name="Lpf$1"/>
|
|
|
|
<!--
|
|
// *****************************************************************
|
|
// X3DAudio Functions
|
|
// *****************************************************************
|
|
-->
|
|
<map param="X3DAudioInitialize::Instance" attribute="out" type="X3DAUDIOHANDLE"/>
|
|
<map param="X3DAudioInitialize::SpeakerChannelMask" type="SPEAKER_FLAGS"/>
|
|
<map param="X3DAudioCalculate::Instance" attribute="in" type="X3DAUDIOHANDLE"/>
|
|
<map param="X3DAudioCalculate::Flags" type="X3DAudioCalculateFlags"/>
|
|
<map param="X3DAudioCalculate::pDSPSettings" type="void" attribute="in"/>
|
|
|
|
<context-clear />
|
|
</mapping>
|
|
</config> |