Signed ZBandpass

This commit is contained in:
Christopher Johnson 2021-08-17 20:42:45 -04:00
parent 7723c1cab3
commit df6249fa1d
36 changed files with 9178 additions and 0 deletions

View file

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>AudioComponents</key>
<array>
<dict>
<key>description</key>
<string>${PRODUCT_NAME:identifier} AU</string>
<key>factoryFunction</key>
<string>${PRODUCT_NAME:identifier}Factory</string>
<key>manufacturer</key>
<string>Dthr</string>
<key>name</key>
<string>Airwindows: ${PRODUCT_NAME:identifier}</string>
<key>subtype</key>
<string>zbap</string>
<key>type</key>
<string>aufx</string>
<key>version</key>
<integer>65536</integer>
</dict>
</array>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PROJECTNAMEASIDENTIFIER}</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>DthX</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
</plist>

View file

@ -0,0 +1,330 @@
/*
* File: ZBandpass.cpp
*
* Version: 1.0
*
* Created: 4/27/21
*
* Copyright: Copyright © 2021 Airwindows, All Rights Reserved
*
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
* consideration of your agreement to the following terms, and your use, installation, modification
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
* not agree with these terms, please do not use, install, modify or redistribute this Apple
* software.
*
* In consideration of your agreement to abide by the following terms, and subject to these terms,
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
* redistribute the Apple Software in its entirety and without modifications, you must retain this
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
* endorse or promote products derived from the Apple Software without specific prior written
* permission from Apple. Except as expressly stated in this notice, no other rights or
* licenses, express or implied, are granted by Apple herein, including but not limited to any
* patent rights that may be infringed by your derivative works or by other works in which the
* Apple Software may be incorporated.
*
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
* OR IN COMBINATION WITH YOUR PRODUCTS.
*
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
/*=============================================================================
ZBandpass.cpp
=============================================================================*/
#include "ZBandpass.h"
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
AUDIOCOMPONENT_ENTRY(AUBaseFactory, ZBandpass)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::ZBandpass
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ZBandpass::ZBandpass(AudioUnit component)
: AUEffectBase(component)
{
CreateElements();
Globals()->UseIndexedParameters(kNumberOfParameters);
SetParameter(kParam_One, kDefaultValue_ParamOne );
SetParameter(kParam_Two, kDefaultValue_ParamTwo );
SetParameter(kParam_Three, kDefaultValue_ParamThree );
SetParameter(kParam_Four, kDefaultValue_ParamFour );
#if AU_DEBUG_DISPATCHER
mDebugDispatcher = new AUDebugDispatcher (this);
#endif
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::GetParameterValueStrings
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ComponentResult ZBandpass::GetParameterValueStrings(AudioUnitScope inScope,
AudioUnitParameterID inParameterID,
CFArrayRef * outStrings)
{
return kAudioUnitErr_InvalidProperty;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::GetParameterInfo
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ComponentResult ZBandpass::GetParameterInfo(AudioUnitScope inScope,
AudioUnitParameterID inParameterID,
AudioUnitParameterInfo &outParameterInfo )
{
ComponentResult result = noErr;
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
| kAudioUnitParameterFlag_IsReadable;
if (inScope == kAudioUnitScope_Global) {
switch(inParameterID)
{
case kParam_One:
AUBase::FillInParameterName (outParameterInfo, kParameterOneName, false);
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
outParameterInfo.minValue = 0.0;
outParameterInfo.maxValue = 1.0;
outParameterInfo.defaultValue = kDefaultValue_ParamOne;
break;
case kParam_Two:
AUBase::FillInParameterName (outParameterInfo, kParameterTwoName, false);
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
outParameterInfo.minValue = 0.0;
outParameterInfo.maxValue = 1.0;
outParameterInfo.defaultValue = kDefaultValue_ParamTwo;
break;
case kParam_Three:
AUBase::FillInParameterName (outParameterInfo, kParameterThreeName, false);
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
outParameterInfo.minValue = 0.0;
outParameterInfo.maxValue = 1.0;
outParameterInfo.defaultValue = kDefaultValue_ParamThree;
break;
case kParam_Four:
AUBase::FillInParameterName (outParameterInfo, kParameterFourName, false);
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
outParameterInfo.minValue = 0.0;
outParameterInfo.maxValue = 1.0;
outParameterInfo.defaultValue = kDefaultValue_ParamFour;
break;
default:
result = kAudioUnitErr_InvalidParameter;
break;
}
} else {
result = kAudioUnitErr_InvalidParameter;
}
return result;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::GetPropertyInfo
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ComponentResult ZBandpass::GetPropertyInfo (AudioUnitPropertyID inID,
AudioUnitScope inScope,
AudioUnitElement inElement,
UInt32 & outDataSize,
Boolean & outWritable)
{
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::GetProperty
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ComponentResult ZBandpass::GetProperty( AudioUnitPropertyID inID,
AudioUnitScope inScope,
AudioUnitElement inElement,
void * outData )
{
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
}
// ZBandpass::Initialize
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ComponentResult ZBandpass::Initialize()
{
ComponentResult result = AUEffectBase::Initialize();
if (result == noErr)
Reset(kAudioUnitScope_Global, 0);
return result;
}
#pragma mark ____ZBandpassEffectKernel
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::ZBandpassKernel::Reset()
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void ZBandpass::ZBandpassKernel::Reset()
{
for (int x = 0; x < 11; x++) {biquadA[x] = 0.0; biquadB[x] = 0.0; biquadC[x] = 0.0; biquadD[x] = 0.0; biquadE[x] = 0.0; biquadF[x] = 0.0;}
iirSampleA = 0.0;
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// ZBandpass::ZBandpassKernel::Process
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
void ZBandpass::ZBandpassKernel::Process( const Float32 *inSourceP,
Float32 *inDestP,
UInt32 inFramesToProcess,
UInt32 inNumChannels,
bool &ioSilence )
{
UInt32 nSampleFrames = inFramesToProcess;
const Float32 *sourceP = inSourceP;
Float32 *destP = inDestP;
long double overallscale = 1.0;
overallscale /= 44100.0;
overallscale *= GetSampleRate();
biquadA[0] = ((pow(GetParameter( kParam_Two ),4)*14300.0)/GetSampleRate())+0.00079;
double clipFactor = 1.0 - ((1.0 - GetParameter( kParam_Two ))*0.304);
biquadA[1] = 0.314;
double K = tan(M_PI * biquadA[0]);
double norm = 1.0 / (1.0 + K / biquadA[1] + K * K);
biquadA[2] = K / biquadA[1] * norm;
biquadA[3] = 0.0; //bandpass can simplify the biquad kernel: leave out this multiply
biquadA[4] = -biquadA[2];
biquadA[5] = 2.0 * (K * K - 1.0) * norm;
biquadA[6] = (1.0 - K / biquadA[1] + K * K) * norm;
for (int x = 0; x < 7; x++) {biquadD[x] = biquadC[x] = biquadB[x] = biquadA[x];}
//opamp stuff
double inTrim = GetParameter( kParam_One )*10.0;
inTrim *= inTrim; inTrim *= inTrim;
double outPad = GetParameter( kParam_Three );
double iirAmountA = 0.00069/overallscale;
biquadF[0] = biquadE[0] = 15500.0 / GetSampleRate();
biquadF[1] = biquadE[1] = 0.935;
K = tan(M_PI * biquadE[0]); //lowpass
norm = 1.0 / (1.0 + K / biquadE[1] + K * K);
biquadE[2] = K * K * norm;
biquadE[3] = 2.0 * biquadE[2];
biquadE[4] = biquadE[2];
biquadE[5] = 2.0 * (K * K - 1.0) * norm;
biquadE[6] = (1.0 - K / biquadE[1] + K * K) * norm;
for (int x = 0; x < 7; x++) biquadF[x] = biquadE[x];
//end opamp stuff
double trim = 0.1+(3.712*biquadA[0]);
double wet = pow(GetParameter( kParam_Four ),2);
double aWet = 1.0;
double bWet = 1.0;
double cWet = 1.0;
double dWet = wet*4.0;
//four-stage wet/dry control using progressive stages that bypass when not engaged
if (dWet < 1.0) {aWet = dWet; bWet = 0.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 2.0) {bWet = dWet - 1.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 3.0) {cWet = dWet - 2.0; dWet = 0.0;}
else {dWet -= 3.0;}
//this is one way to make a little set of dry/wet stages that are successively added to the
//output as the control is turned up. Each one independently goes from 0-1 and stays at 1
//beyond that point: this is a way to progressively add a 'black box' sound processing
//which lets you fall through to simpler processing at lower settings.
long double outSample = 0.0;
while (nSampleFrames-- > 0) {
long double inputSample = *sourceP;
if (fabs(inputSample)<1.18e-37) inputSample = fpd * 1.18e-37;
double drySample = inputSample;
long double overallDrySample = drySample;
if (inTrim != 1.0) inputSample *= inTrim;
if (inputSample > 1.0) inputSample = 1.0; if (inputSample < -1.0) inputSample = -1.0;
inputSample *= trim;
outSample = biquadA[2]*inputSample+biquadA[3]*biquadA[7]+biquadA[4]*biquadA[8]-biquadA[5]*biquadA[9]-biquadA[6]*biquadA[10];
biquadA[8] = biquadA[7]; biquadA[7] = inputSample; biquadA[10] = biquadA[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
drySample = inputSample = biquadA[9] = outSample; //DF1
if (bWet > 0.0) {
inputSample /= clipFactor;
outSample = biquadB[2]*inputSample+biquadB[3]*biquadB[7]+biquadB[4]*biquadB[8]-biquadB[5]*biquadB[9]-biquadB[6]*biquadB[10];
biquadB[8] = biquadB[7]; biquadB[7] = inputSample; biquadB[10] = biquadB[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadB[9] = outSample; //DF1
drySample = inputSample = (outSample * bWet) + (drySample * (1.0-bWet));
}
if (cWet > 0.0) {
inputSample /= clipFactor;
outSample = biquadC[2]*inputSample+biquadC[3]*biquadC[7]+biquadC[4]*biquadC[8]-biquadC[5]*biquadC[9]-biquadC[6]*biquadC[10];
biquadC[8] = biquadC[7]; biquadC[7] = inputSample; biquadC[10] = biquadC[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadC[9] = outSample; //DF1
drySample = inputSample = (outSample * cWet) + (drySample * (1.0-cWet));
}
if (dWet > 0.0) {
inputSample /= clipFactor;
outSample = biquadD[2]*inputSample+biquadD[3]*biquadD[7]+biquadD[4]*biquadD[8]-biquadD[5]*biquadD[9]-biquadD[6]*biquadD[10];
biquadD[8] = biquadD[7]; biquadD[7] = inputSample; biquadD[10] = biquadD[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadD[9] = outSample; //DF1
drySample = inputSample = (outSample * dWet) + (drySample * (1.0-dWet));
}
inputSample /= clipFactor;
//opamp stage
if (fabs(iirSampleA)<1.18e-37) iirSampleA = 0.0;
iirSampleA = (iirSampleA * (1.0 - iirAmountA)) + (inputSample * iirAmountA);
inputSample -= iirSampleA;
outSample = biquadE[2]*inputSample+biquadE[3]*biquadE[7]+biquadE[4]*biquadE[8]-biquadE[5]*biquadE[9]-biquadE[6]*biquadE[10];
biquadE[8] = biquadE[7]; biquadE[7] = inputSample; inputSample = outSample; biquadE[10] = biquadE[9]; biquadE[9] = inputSample; //DF1
if (inputSample > 1.0) inputSample = 1.0; if (inputSample < -1.0) inputSample = -1.0;
inputSample -= (inputSample*inputSample*inputSample*inputSample*inputSample*0.1768);
outSample = biquadF[2]*inputSample+biquadF[3]*biquadF[7]+biquadF[4]*biquadF[8]-biquadF[5]*biquadF[9]-biquadF[6]*biquadF[10];
biquadF[8] = biquadF[7]; biquadF[7] = inputSample; inputSample = outSample; biquadF[10] = biquadF[9]; biquadF[9] = inputSample; //DF1
if (outPad != 1.0) inputSample *= outPad;
//end opamp stage
if (aWet !=1.0) {
inputSample = (inputSample * aWet) + (overallDrySample * (1.0-aWet));
}
//begin 32 bit floating point dither
int expon; frexpf((float)inputSample, &expon);
fpd ^= fpd << 13; fpd ^= fpd >> 17; fpd ^= fpd << 5;
inputSample += ((double(fpd)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
//end 32 bit floating point dither
*destP = inputSample;
sourceP += inNumChannels; destP += inNumChannels;
}
}

View file

@ -0,0 +1,2 @@
_ZBandpassEntry
_ZBandpassFactory

View file

@ -0,0 +1,152 @@
/*
* File: ZBandpass.h
*
* Version: 1.0
*
* Created: 4/27/21
*
* Copyright: Copyright © 2021 Airwindows, All Rights Reserved
*
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
* consideration of your agreement to the following terms, and your use, installation, modification
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
* not agree with these terms, please do not use, install, modify or redistribute this Apple
* software.
*
* In consideration of your agreement to abide by the following terms, and subject to these terms,
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
* redistribute the Apple Software in its entirety and without modifications, you must retain this
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
* endorse or promote products derived from the Apple Software without specific prior written
* permission from Apple. Except as expressly stated in this notice, no other rights or
* licenses, express or implied, are granted by Apple herein, including but not limited to any
* patent rights that may be infringed by your derivative works or by other works in which the
* Apple Software may be incorporated.
*
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
* OR IN COMBINATION WITH YOUR PRODUCTS.
*
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#include "AUEffectBase.h"
#include "ZBandpassVersion.h"
#if AU_DEBUG_DISPATCHER
#include "AUDebugDispatcher.h"
#endif
#ifndef __ZBandpass_h__
#define __ZBandpass_h__
#pragma mark ____ZBandpass Parameters
// parameters
static const float kDefaultValue_ParamOne = 0.16;
static const float kDefaultValue_ParamTwo = 0.5;
static const float kDefaultValue_ParamThree = 1.0;
static const float kDefaultValue_ParamFour = 0.5;
static CFStringRef kParameterOneName = CFSTR("Input");
static CFStringRef kParameterTwoName = CFSTR("Freq");
static CFStringRef kParameterThreeName = CFSTR("Output");
static CFStringRef kParameterFourName = CFSTR("Poles");
//Alter the name if desired, but using the plugin name is a start
enum {
kParam_One =0,
kParam_Two =1,
kParam_Three =2,
kParam_Four =3,
//Add your parameters here...
kNumberOfParameters=4
};
#pragma mark ____ZBandpass
class ZBandpass : public AUEffectBase
{
public:
ZBandpass(AudioUnit component);
#if AU_DEBUG_DISPATCHER
virtual ~ZBandpass () { delete mDebugDispatcher; }
#endif
virtual AUKernelBase * NewKernel() { return new ZBandpassKernel(this); }
virtual ComponentResult GetParameterValueStrings(AudioUnitScope inScope,
AudioUnitParameterID inParameterID,
CFArrayRef * outStrings);
virtual ComponentResult GetParameterInfo(AudioUnitScope inScope,
AudioUnitParameterID inParameterID,
AudioUnitParameterInfo &outParameterInfo);
virtual ComponentResult GetPropertyInfo(AudioUnitPropertyID inID,
AudioUnitScope inScope,
AudioUnitElement inElement,
UInt32 & outDataSize,
Boolean & outWritable );
virtual ComponentResult GetProperty(AudioUnitPropertyID inID,
AudioUnitScope inScope,
AudioUnitElement inElement,
void * outData);
virtual ComponentResult Initialize();
virtual bool SupportsTail () { return true; }
virtual Float64 GetTailTime() {return (1.0/GetSampleRate())*0.0;} //in SECONDS! gsr * a number = in samples
virtual Float64 GetLatency() {return (1.0/GetSampleRate())*0.0;} // in SECONDS! gsr * a number = in samples
/*! @method Version */
virtual ComponentResult Version() { return kZBandpassVersion; }
protected:
class ZBandpassKernel : public AUKernelBase // most of the real work happens here
{
public:
ZBandpassKernel(AUEffectBase *inAudioUnit )
: AUKernelBase(inAudioUnit)
{
}
// *Required* overides for the process method for this effect
// processes one channel of interleaved samples
virtual void Process( const Float32 *inSourceP,
Float32 *inDestP,
UInt32 inFramesToProcess,
UInt32 inNumChannels,
bool &ioSilence);
virtual void Reset();
private:
long double biquadA[11];
long double biquadB[11];
long double biquadC[11];
long double biquadD[11];
long double biquadE[11];
long double biquadF[11];
long double iirSampleA;
uint32_t fpd;
};
};
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#endif

View file

@ -0,0 +1,61 @@
/*
* File: ZBandpass.r
*
* Version: 1.0
*
* Created: 4/27/21
*
* Copyright: Copyright © 2021 Airwindows, All Rights Reserved
*
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
* consideration of your agreement to the following terms, and your use, installation, modification
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
* not agree with these terms, please do not use, install, modify or redistribute this Apple
* software.
*
* In consideration of your agreement to abide by the following terms, and subject to these terms,
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
* redistribute the Apple Software in its entirety and without modifications, you must retain this
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
* endorse or promote products derived from the Apple Software without specific prior written
* permission from Apple. Except as expressly stated in this notice, no other rights or
* licenses, express or implied, are granted by Apple herein, including but not limited to any
* patent rights that may be infringed by your derivative works or by other works in which the
* Apple Software may be incorporated.
*
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
* OR IN COMBINATION WITH YOUR PRODUCTS.
*
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#include <AudioUnit/AudioUnit.r>
#include "ZBandpassVersion.h"
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
#define kAudioUnitResID_ZBandpass 1000
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ZBandpass~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#define RES_ID kAudioUnitResID_ZBandpass
#define COMP_TYPE kAudioUnitType_Effect
#define COMP_SUBTYPE ZBandpass_COMP_SUBTYPE
#define COMP_MANUF ZBandpass_COMP_MANF
#define VERSION kZBandpassVersion
#define NAME "Airwindows: ZBandpass"
#define DESCRIPTION "ZBandpass AU"
#define ENTRY_POINT "ZBandpassEntry"
#include "AUResources.r"

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,137 @@
// !$*UTF8*$!
{
089C1669FE841209C02AAC07 /* Project object */ = {
activeBuildConfigurationName = Release;
activeTarget = 8D01CCC60486CAD60068D4B7 /* ZBandpass */;
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
perUserDictionary = {
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
230,
20,
48,
43,
43,
20,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
PBXFileDataSource_Target_ColumnID,
);
};
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
252,
60,
20,
48,
43,
43,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXTargetDataSource_PrimaryAttribute,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 650854830;
PBXWorkspaceStateSaveDate = 650854830;
};
perUserProjectItems = {
8B363D0226CB4405008AF808 /* PlistBookmark */ = 8B363D0226CB4405008AF808 /* PlistBookmark */;
8B363D0326CB4405008AF808 /* PBXTextBookmark */ = 8B363D0326CB4405008AF808 /* PBXTextBookmark */;
8B363D0426CB4405008AF808 /* PBXTextBookmark */ = 8B363D0426CB4405008AF808 /* PBXTextBookmark */;
};
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
userBuildSettings = {
};
};
8B363D0226CB4405008AF808 /* PlistBookmark */ = {
isa = PlistBookmark;
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
fallbackIsa = PBXBookmark;
isK = 0;
kPath = (
CFBundleName,
);
name = /Users/christopherjohnson/Desktop/airwindows/plugins/MacAU/ZBandpass/Info.plist;
rLen = 0;
rLoc = 9223372036854775807;
};
8B363D0326CB4405008AF808 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 8BA05A660720730100365D66 /* ZBandpass.cpp */;
name = "ZBandpass.cpp: 130";
rLen = 0;
rLoc = 6397;
rType = 0;
vrLen = 159;
vrLoc = 13546;
};
8B363D0426CB4405008AF808 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 8BA05A660720730100365D66 /* ZBandpass.cpp */;
name = "ZBandpass.cpp: 130";
rLen = 0;
rLoc = 6397;
rType = 0;
vrLen = 159;
vrLoc = 13546;
};
8BA05A660720730100365D66 /* ZBandpass.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1344, 6120}}";
sepNavSelRange = "{6397, 0}";
sepNavVisRange = "{13546, 159}";
sepNavWindowFrame = "{{8, 42}, {1038, 836}}";
};
};
8BA05A690720730100365D66 /* ZBandpassVersion.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1193, 1062}}";
sepNavSelRange = "{2894, 0}";
sepNavVisRange = "{850, 2107}";
sepNavWindowFrame = "{{15, 43}, {1240, 830}}";
};
};
8BC6025B073B072D006C4272 /* ZBandpass.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1146, 2736}}";
sepNavSelRange = "{3436, 0}";
sepNavVisRange = "{4880, 871}";
sepNavWindowFrame = "{{381, 57}, {1059, 821}}";
};
};
8BD3CCB8148830B20062E48C /* Source Control */ = {
isa = PBXSourceControlManager;
fallbackIsa = XCSourceControlManager;
isSCMEnabled = 0;
scmConfiguration = {
repositoryNamesForRoots = {
"" = "";
};
};
};
8BD3CCB9148830B20062E48C /* Code sense */ = {
isa = PBXCodeSenseManager;
indexTemplatePath = "";
};
8D01CCC60486CAD60068D4B7 /* ZBandpass */ = {
activeExec = 0;
};
}

View file

@ -0,0 +1,957 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 45;
objects = {
/* Begin PBXBuildFile section */
8B362BFB26CC87C30054CBCF /* CAExtAudioFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7326CC87C30054CBCF /* CAExtAudioFile.h */; };
8B362BFC26CC87C30054CBCF /* CACFMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7426CC87C30054CBCF /* CACFMachPort.h */; };
8B362BFD26CC87C30054CBCF /* CABool.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7526CC87C30054CBCF /* CABool.h */; };
8B362BFE26CC87C30054CBCF /* CAComponent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B7626CC87C30054CBCF /* CAComponent.cpp */; };
8B362BFF26CC87C30054CBCF /* CADebugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7726CC87C30054CBCF /* CADebugger.h */; };
8B362C0026CC87C30054CBCF /* CACFNumber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B7826CC87C30054CBCF /* CACFNumber.cpp */; };
8B362C0126CC87C30054CBCF /* CAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7926CC87C30054CBCF /* CAGuard.h */; };
8B362C0226CC87C30054CBCF /* CAAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7A26CC87C30054CBCF /* CAAtomic.h */; };
8B362C0326CC87C30054CBCF /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7B26CC87C30054CBCF /* CAStreamBasicDescription.h */; };
8B362C0426CC87C30054CBCF /* CACFObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7C26CC87C30054CBCF /* CACFObject.h */; };
8B362C0526CC87C30054CBCF /* CAStreamRangedDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7D26CC87C30054CBCF /* CAStreamRangedDescription.h */; };
8B362C0626CC87C30054CBCF /* CATokenMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7E26CC87C30054CBCF /* CATokenMap.h */; };
8B362C0726CC87C30054CBCF /* CAComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B7F26CC87C30054CBCF /* CAComponent.h */; };
8B362C0826CC87C30054CBCF /* CAAudioBufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8026CC87C30054CBCF /* CAAudioBufferList.h */; };
8B362C0926CC87C30054CBCF /* CAAudioUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8126CC87C30054CBCF /* CAAudioUnit.h */; };
8B362C0A26CC87C30054CBCF /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8226CC87C30054CBCF /* CAAUParameter.h */; };
8B362C0B26CC87C30054CBCF /* CAException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8326CC87C30054CBCF /* CAException.h */; };
8B362C0C26CC87C30054CBCF /* CAAUProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B8426CC87C30054CBCF /* CAAUProcessor.cpp */; };
8B362C0D26CC87C30054CBCF /* CAAUProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8526CC87C30054CBCF /* CAAUProcessor.h */; };
8B362C0E26CC87C30054CBCF /* CAProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8626CC87C30054CBCF /* CAProcess.h */; };
8B362C0F26CC87C30054CBCF /* CACFDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8726CC87C30054CBCF /* CACFDictionary.h */; };
8B362C1026CC87C30054CBCF /* CAPThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8826CC87C30054CBCF /* CAPThread.h */; };
8B362C1126CC87C30054CBCF /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B8926CC87C30054CBCF /* CAAUParameter.cpp */; };
8B362C1226CC87C30054CBCF /* CAAudioTimeStamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8A26CC87C30054CBCF /* CAAudioTimeStamp.h */; };
8B362C1326CC87C30054CBCF /* CAFilePathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B8B26CC87C30054CBCF /* CAFilePathUtils.cpp */; };
8B362C1426CC87C30054CBCF /* CAAudioValueRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8C26CC87C30054CBCF /* CAAudioValueRange.h */; };
8B362C1526CC87C30054CBCF /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B8D26CC87C30054CBCF /* CAVectorUnitTypes.h */; };
8B362C1626CC87C30054CBCF /* CAAudioChannelLayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B8E26CC87C30054CBCF /* CAAudioChannelLayoutObject.cpp */; };
8B362C1726CC87C30054CBCF /* CAGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B8F26CC87C30054CBCF /* CAGuard.cpp */; };
8B362C1826CC87C30054CBCF /* CACFNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9026CC87C30054CBCF /* CACFNumber.h */; };
8B362C1926CC87C30054CBCF /* CACFDistributedNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9126CC87C30054CBCF /* CACFDistributedNotification.cpp */; };
8B362C1A26CC87C30054CBCF /* CACFString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9226CC87C30054CBCF /* CACFString.h */; };
8B362C1B26CC87C30054CBCF /* CAAUMIDIMapManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9326CC87C30054CBCF /* CAAUMIDIMapManager.cpp */; };
8B362C1C26CC87C30054CBCF /* CAComponentDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9426CC87C30054CBCF /* CAComponentDescription.cpp */; };
8B362C1D26CC87C30054CBCF /* CAHostTimeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9526CC87C30054CBCF /* CAHostTimeBase.h */; };
8B362C1E26CC87C30054CBCF /* CADebugMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9626CC87C30054CBCF /* CADebugMacros.cpp */; };
8B362C1F26CC87C30054CBCF /* CAAudioFileFormats.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9726CC87C30054CBCF /* CAAudioFileFormats.h */; };
8B362C2026CC87C30054CBCF /* CAAUMIDIMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9826CC87C30054CBCF /* CAAUMIDIMapManager.h */; };
8B362C2126CC87C30054CBCF /* CACFDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9926CC87C30054CBCF /* CACFDictionary.cpp */; };
8B362C2226CC87C30054CBCF /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9A26CC87C30054CBCF /* CAMutex.h */; };
8B362C2326CC87C30054CBCF /* CACFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9B26CC87C30054CBCF /* CACFString.cpp */; };
8B362C2426CC87C30054CBCF /* CASettingsStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9C26CC87C30054CBCF /* CASettingsStorage.h */; };
8B362C2526CC87C30054CBCF /* CADebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9D26CC87C30054CBCF /* CADebugPrintf.h */; };
8B362C2626CC87C30054CBCF /* CAXException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362B9E26CC87C30054CBCF /* CAXException.cpp */; };
8B362C2726CC87C30054CBCF /* CAAUMIDIMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362B9F26CC87C30054CBCF /* CAAUMIDIMap.h */; };
8B362C2826CC87C30054CBCF /* AUParamInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA026CC87C30054CBCF /* AUParamInfo.h */; };
8B362C2926CC87C30054CBCF /* CABitOperations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA126CC87C30054CBCF /* CABitOperations.h */; };
8B362C2A26CC87C30054CBCF /* CACFPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BA226CC87C30054CBCF /* CACFPreferences.cpp */; };
8B362C2B26CC87C30054CBCF /* CABundleLocker.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA326CC87C30054CBCF /* CABundleLocker.h */; };
8B362C2C26CC87C30054CBCF /* CAPropertyAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA426CC87C30054CBCF /* CAPropertyAddress.h */; };
8B362C2D26CC87C30054CBCF /* CAXException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA526CC87C30054CBCF /* CAXException.h */; };
8B362C2E26CC87C30054CBCF /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BA626CC87C30054CBCF /* CAAudioChannelLayout.cpp */; };
8B362C2F26CC87C30054CBCF /* CAThreadSafeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA726CC87C30054CBCF /* CAThreadSafeList.h */; };
8B362C3026CC87C30054CBCF /* CAAudioUnitOutputCapturer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BA826CC87C30054CBCF /* CAAudioUnitOutputCapturer.h */; };
8B362C3126CC87C30054CBCF /* AUParamInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BA926CC87C30054CBCF /* AUParamInfo.cpp */; };
8B362C3226CC87C30054CBCF /* CASharedLibrary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BAA26CC87C30054CBCF /* CASharedLibrary.cpp */; };
8B362C3326CC87C30054CBCF /* CAAUMIDIMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BAB26CC87C30054CBCF /* CAAUMIDIMap.cpp */; };
8B362C3426CC87C30054CBCF /* CALogMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BAC26CC87C30054CBCF /* CALogMacros.h */; };
8B362C3526CC87C30054CBCF /* CACFMessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BAD26CC87C30054CBCF /* CACFMessagePort.cpp */; };
8B362C3626CC87C30054CBCF /* CARingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BAE26CC87C30054CBCF /* CARingBuffer.h */; };
8B362C3726CC87C30054CBCF /* AUOutputBL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BAF26CC87C30054CBCF /* AUOutputBL.cpp */; };
8B362C3826CC87C30054CBCF /* CABufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB026CC87C30054CBCF /* CABufferList.h */; };
8B362C3926CC87C30054CBCF /* CASharedLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB126CC87C30054CBCF /* CASharedLibrary.h */; };
8B362C3A26CC87C30054CBCF /* CACFData.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB226CC87C30054CBCF /* CACFData.h */; };
8B362C3B26CC87C30054CBCF /* CAStreamRangedDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BB326CC87C30054CBCF /* CAStreamRangedDescription.cpp */; };
8B362C3C26CC87C30054CBCF /* CAPThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BB426CC87C30054CBCF /* CAPThread.cpp */; };
8B362C3D26CC87C30054CBCF /* CAAutoDisposer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB526CC87C30054CBCF /* CAAutoDisposer.h */; };
8B362C3E26CC87C30054CBCF /* CACFPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB626CC87C30054CBCF /* CACFPreferences.h */; };
8B362C3F26CC87C30054CBCF /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BB726CC87C30054CBCF /* CAVectorUnit.cpp */; };
8B362C4026CC87C30054CBCF /* CAComponentDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB826CC87C30054CBCF /* CAComponentDescription.h */; };
8B362C4126CC87C30054CBCF /* CADebugMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BB926CC87C30054CBCF /* CADebugMacros.h */; };
8B362C4226CC87C30054CBCF /* AUOutputBL.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BBA26CC87C30054CBCF /* AUOutputBL.h */; };
8B362C4326CC87C30054CBCF /* CADebugPrintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BBB26CC87C30054CBCF /* CADebugPrintf.cpp */; };
8B362C4426CC87C30054CBCF /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BBC26CC87C30054CBCF /* CARingBuffer.cpp */; };
8B362C4526CC87C30054CBCF /* CACFPlugIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BBD26CC87C30054CBCF /* CACFPlugIn.h */; };
8B362C4626CC87C30054CBCF /* CASettingsStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BBE26CC87C30054CBCF /* CASettingsStorage.cpp */; };
8B362C4726CC87C30054CBCF /* CAMixMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BBF26CC87C30054CBCF /* CAMixMap.h */; };
8B362C4826CC87C30054CBCF /* CACFDistributedNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BC026CC87C30054CBCF /* CACFDistributedNotification.h */; };
8B362C4926CC87C30054CBCF /* CAFilePathUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BC126CC87C30054CBCF /* CAFilePathUtils.h */; };
8B362C4A26CC87C30054CBCF /* CATink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BC226CC87C30054CBCF /* CATink.h */; };
8B362C4B26CC87C30054CBCF /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC326CC87C30054CBCF /* CAStreamBasicDescription.cpp */; };
8B362C4C26CC87C30054CBCF /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BC426CC87C30054CBCF /* CAAudioChannelLayout.h */; };
8B362C4D26CC87C30054CBCF /* CAProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC526CC87C30054CBCF /* CAProcess.cpp */; };
8B362C4E26CC87C30054CBCF /* CAHostTimeBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC626CC87C30054CBCF /* CAHostTimeBase.cpp */; };
8B362C4F26CC87C30054CBCF /* CAPersistence.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC726CC87C30054CBCF /* CAPersistence.cpp */; };
8B362C5026CC87C30054CBCF /* CAAudioBufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC826CC87C30054CBCF /* CAAudioBufferList.cpp */; };
8B362C5126CC87C30054CBCF /* CAAudioTimeStamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BC926CC87C30054CBCF /* CAAudioTimeStamp.cpp */; };
8B362C5226CC87C30054CBCF /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BCA26CC87C30054CBCF /* CAVectorUnit.h */; };
8B362C5326CC87C30054CBCF /* CAByteOrder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BCB26CC87C30054CBCF /* CAByteOrder.h */; };
8B362C5426CC87C30054CBCF /* CACFArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BCC26CC87C30054CBCF /* CACFArray.h */; };
8B362C5526CC87C30054CBCF /* CAAtomicStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BCD26CC87C30054CBCF /* CAAtomicStack.h */; };
8B362C5626CC87C30054CBCF /* CAReferenceCounted.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BCE26CC87C30054CBCF /* CAReferenceCounted.h */; };
8B362C5726CC87C30054CBCF /* CACFMachPort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BCF26CC87C30054CBCF /* CACFMachPort.cpp */; };
8B362C5826CC87C30054CBCF /* CABufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD026CC87C30054CBCF /* CABufferList.cpp */; };
8B362C5926CC87C30054CBCF /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD126CC87C30054CBCF /* CAMutex.cpp */; };
8B362C5A26CC87C30054CBCF /* CADebugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD226CC87C30054CBCF /* CADebugger.cpp */; };
8B362C5B26CC87C30054CBCF /* CABundleLocker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD326CC87C30054CBCF /* CABundleLocker.cpp */; };
8B362C5C26CC87C30054CBCF /* CAAudioFileFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD426CC87C30054CBCF /* CAAudioFileFormats.cpp */; };
8B362C5D26CC87C30054CBCF /* CAMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BD526CC87C30054CBCF /* CAMath.h */; };
8B362C5E26CC87C30054CBCF /* CACFArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD626CC87C30054CBCF /* CACFArray.cpp */; };
8B362C5F26CC87C30054CBCF /* CACFMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BD726CC87C30054CBCF /* CACFMessagePort.h */; };
8B362C6026CC87C30054CBCF /* CAAudioValueRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD826CC87C30054CBCF /* CAAudioValueRange.cpp */; };
8B362C6126CC87C30054CBCF /* CAAudioUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BD926CC87C30054CBCF /* CAAudioUnit.cpp */; };
8B362C6226CC87C30054CBCF /* AUViewLocalizedStringKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BDD26CC87C30054CBCF /* AUViewLocalizedStringKeys.h */; };
8B362C6326CC87C30054CBCF /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BDF26CC87C30054CBCF /* ComponentBase.cpp */; };
8B362C6426CC87C30054CBCF /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BE026CC87C30054CBCF /* AUScopeElement.cpp */; };
8B362C6526CC87C30054CBCF /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BE126CC87C30054CBCF /* ComponentBase.h */; };
8B362C6626CC87C30054CBCF /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BE226CC87C30054CBCF /* AUBase.cpp */; };
8B362C6726CC87C30054CBCF /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BE326CC87C30054CBCF /* AUInputElement.h */; };
8B362C6826CC87C30054CBCF /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BE426CC87C30054CBCF /* AUBase.h */; };
8B362C6926CC87C30054CBCF /* AUPlugInDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BE526CC87C30054CBCF /* AUPlugInDispatch.h */; };
8B362C6A26CC87C30054CBCF /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BE626CC87C30054CBCF /* AUDispatch.h */; };
8B362C6B26CC87C30054CBCF /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BE726CC87C30054CBCF /* AUOutputElement.cpp */; };
8B362C6D26CC87C30054CBCF /* AUPlugInDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BE926CC87C30054CBCF /* AUPlugInDispatch.cpp */; };
8B362C6E26CC87C30054CBCF /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BEA26CC87C30054CBCF /* AUOutputElement.h */; };
8B362C6F26CC87C30054CBCF /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BEB26CC87C30054CBCF /* AUDispatch.cpp */; };
8B362C7026CC87C30054CBCF /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BEC26CC87C30054CBCF /* AUScopeElement.h */; };
8B362C7126CC87C30054CBCF /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BED26CC87C30054CBCF /* AUInputElement.cpp */; };
8B362C7226CC87C30054CBCF /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BEF26CC87C30054CBCF /* AUEffectBase.cpp */; };
8B362C7326CC87C30054CBCF /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF026CC87C30054CBCF /* AUEffectBase.h */; };
8B362C7426CC87C30054CBCF /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF226CC87C30054CBCF /* AUTimestampGenerator.h */; };
8B362C7526CC87C30054CBCF /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BF326CC87C30054CBCF /* AUBaseHelper.cpp */; };
8B362C7626CC87C30054CBCF /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF426CC87C30054CBCF /* AUSilentTimeout.h */; };
8B362C7726CC87C30054CBCF /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF526CC87C30054CBCF /* AUInputFormatConverter.h */; };
8B362C7826CC87C30054CBCF /* AUTimestampGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BF626CC87C30054CBCF /* AUTimestampGenerator.cpp */; };
8B362C7926CC87C30054CBCF /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362BF726CC87C30054CBCF /* AUBuffer.cpp */; };
8B362C7A26CC87C30054CBCF /* AUMIDIDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF826CC87C30054CBCF /* AUMIDIDefs.h */; };
8B362C7B26CC87C30054CBCF /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BF926CC87C30054CBCF /* AUBuffer.h */; };
8B362C7C26CC87C30054CBCF /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362BFA26CC87C30054CBCF /* AUBaseHelper.h */; };
8BA05A6B0720730100365D66 /* ZBandpass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* ZBandpass.cpp */; };
8BA05A6E0720730100365D66 /* ZBandpassVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* ZBandpassVersion.h */; };
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AF9072074E100365D66 /* AudioToolbox.framework */; };
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05AFA072074E100365D66 /* AudioUnit.framework */; };
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8BA05B01072074F900365D66 /* CoreServices.framework */; };
8BC6025C073B072D006C4272 /* ZBandpass.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* ZBandpass.h */; };
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
8B362B7326CC87C30054CBCF /* CAExtAudioFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAExtAudioFile.h; sourceTree = "<group>"; };
8B362B7426CC87C30054CBCF /* CACFMachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMachPort.h; sourceTree = "<group>"; };
8B362B7526CC87C30054CBCF /* CABool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABool.h; sourceTree = "<group>"; };
8B362B7626CC87C30054CBCF /* CAComponent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponent.cpp; sourceTree = "<group>"; };
8B362B7726CC87C30054CBCF /* CADebugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugger.h; sourceTree = "<group>"; };
8B362B7826CC87C30054CBCF /* CACFNumber.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFNumber.cpp; sourceTree = "<group>"; };
8B362B7926CC87C30054CBCF /* CAGuard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAGuard.h; sourceTree = "<group>"; };
8B362B7A26CC87C30054CBCF /* CAAtomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomic.h; sourceTree = "<group>"; };
8B362B7B26CC87C30054CBCF /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
8B362B7C26CC87C30054CBCF /* CACFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFObject.h; sourceTree = "<group>"; };
8B362B7D26CC87C30054CBCF /* CAStreamRangedDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamRangedDescription.h; sourceTree = "<group>"; };
8B362B7E26CC87C30054CBCF /* CATokenMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATokenMap.h; sourceTree = "<group>"; };
8B362B7F26CC87C30054CBCF /* CAComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponent.h; sourceTree = "<group>"; };
8B362B8026CC87C30054CBCF /* CAAudioBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioBufferList.h; sourceTree = "<group>"; };
8B362B8126CC87C30054CBCF /* CAAudioUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnit.h; sourceTree = "<group>"; };
8B362B8226CC87C30054CBCF /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
8B362B8326CC87C30054CBCF /* CAException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAException.h; sourceTree = "<group>"; };
8B362B8426CC87C30054CBCF /* CAAUProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUProcessor.cpp; sourceTree = "<group>"; };
8B362B8526CC87C30054CBCF /* CAAUProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUProcessor.h; sourceTree = "<group>"; };
8B362B8626CC87C30054CBCF /* CAProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAProcess.h; sourceTree = "<group>"; };
8B362B8726CC87C30054CBCF /* CACFDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDictionary.h; sourceTree = "<group>"; };
8B362B8826CC87C30054CBCF /* CAPThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPThread.h; sourceTree = "<group>"; };
8B362B8926CC87C30054CBCF /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
8B362B8A26CC87C30054CBCF /* CAAudioTimeStamp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioTimeStamp.h; sourceTree = "<group>"; };
8B362B8B26CC87C30054CBCF /* CAFilePathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAFilePathUtils.cpp; sourceTree = "<group>"; };
8B362B8C26CC87C30054CBCF /* CAAudioValueRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioValueRange.h; sourceTree = "<group>"; };
8B362B8D26CC87C30054CBCF /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
8B362B8E26CC87C30054CBCF /* CAAudioChannelLayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayoutObject.cpp; sourceTree = "<group>"; };
8B362B8F26CC87C30054CBCF /* CAGuard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAGuard.cpp; sourceTree = "<group>"; };
8B362B9026CC87C30054CBCF /* CACFNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFNumber.h; sourceTree = "<group>"; };
8B362B9126CC87C30054CBCF /* CACFDistributedNotification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDistributedNotification.cpp; sourceTree = "<group>"; };
8B362B9226CC87C30054CBCF /* CACFString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFString.h; sourceTree = "<group>"; };
8B362B9326CC87C30054CBCF /* CAAUMIDIMapManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMapManager.cpp; sourceTree = "<group>"; };
8B362B9426CC87C30054CBCF /* CAComponentDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponentDescription.cpp; sourceTree = "<group>"; };
8B362B9526CC87C30054CBCF /* CAHostTimeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAHostTimeBase.h; sourceTree = "<group>"; };
8B362B9626CC87C30054CBCF /* CADebugMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugMacros.cpp; sourceTree = "<group>"; };
8B362B9726CC87C30054CBCF /* CAAudioFileFormats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioFileFormats.h; sourceTree = "<group>"; };
8B362B9826CC87C30054CBCF /* CAAUMIDIMapManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMapManager.h; sourceTree = "<group>"; };
8B362B9926CC87C30054CBCF /* CACFDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDictionary.cpp; sourceTree = "<group>"; };
8B362B9A26CC87C30054CBCF /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
8B362B9B26CC87C30054CBCF /* CACFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFString.cpp; sourceTree = "<group>"; };
8B362B9C26CC87C30054CBCF /* CASettingsStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASettingsStorage.h; sourceTree = "<group>"; };
8B362B9D26CC87C30054CBCF /* CADebugPrintf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugPrintf.h; sourceTree = "<group>"; };
8B362B9E26CC87C30054CBCF /* CAXException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAXException.cpp; sourceTree = "<group>"; };
8B362B9F26CC87C30054CBCF /* CAAUMIDIMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMap.h; sourceTree = "<group>"; };
8B362BA026CC87C30054CBCF /* AUParamInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUParamInfo.h; sourceTree = "<group>"; };
8B362BA126CC87C30054CBCF /* CABitOperations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABitOperations.h; sourceTree = "<group>"; };
8B362BA226CC87C30054CBCF /* CACFPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFPreferences.cpp; sourceTree = "<group>"; };
8B362BA326CC87C30054CBCF /* CABundleLocker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABundleLocker.h; sourceTree = "<group>"; };
8B362BA426CC87C30054CBCF /* CAPropertyAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPropertyAddress.h; sourceTree = "<group>"; };
8B362BA526CC87C30054CBCF /* CAXException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAXException.h; sourceTree = "<group>"; };
8B362BA626CC87C30054CBCF /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
8B362BA726CC87C30054CBCF /* CAThreadSafeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAThreadSafeList.h; sourceTree = "<group>"; };
8B362BA826CC87C30054CBCF /* CAAudioUnitOutputCapturer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnitOutputCapturer.h; sourceTree = "<group>"; };
8B362BA926CC87C30054CBCF /* AUParamInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUParamInfo.cpp; sourceTree = "<group>"; };
8B362BAA26CC87C30054CBCF /* CASharedLibrary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASharedLibrary.cpp; sourceTree = "<group>"; };
8B362BAB26CC87C30054CBCF /* CAAUMIDIMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMap.cpp; sourceTree = "<group>"; };
8B362BAC26CC87C30054CBCF /* CALogMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CALogMacros.h; sourceTree = "<group>"; };
8B362BAD26CC87C30054CBCF /* CACFMessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMessagePort.cpp; sourceTree = "<group>"; };
8B362BAE26CC87C30054CBCF /* CARingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CARingBuffer.h; sourceTree = "<group>"; };
8B362BAF26CC87C30054CBCF /* AUOutputBL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputBL.cpp; sourceTree = "<group>"; };
8B362BB026CC87C30054CBCF /* CABufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABufferList.h; sourceTree = "<group>"; };
8B362BB126CC87C30054CBCF /* CASharedLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASharedLibrary.h; sourceTree = "<group>"; };
8B362BB226CC87C30054CBCF /* CACFData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFData.h; sourceTree = "<group>"; };
8B362BB326CC87C30054CBCF /* CAStreamRangedDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamRangedDescription.cpp; sourceTree = "<group>"; };
8B362BB426CC87C30054CBCF /* CAPThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPThread.cpp; sourceTree = "<group>"; };
8B362BB526CC87C30054CBCF /* CAAutoDisposer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAutoDisposer.h; sourceTree = "<group>"; };
8B362BB626CC87C30054CBCF /* CACFPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPreferences.h; sourceTree = "<group>"; };
8B362BB726CC87C30054CBCF /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
8B362BB826CC87C30054CBCF /* CAComponentDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponentDescription.h; sourceTree = "<group>"; };
8B362BB926CC87C30054CBCF /* CADebugMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugMacros.h; sourceTree = "<group>"; };
8B362BBA26CC87C30054CBCF /* AUOutputBL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputBL.h; sourceTree = "<group>"; };
8B362BBB26CC87C30054CBCF /* CADebugPrintf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugPrintf.cpp; sourceTree = "<group>"; };
8B362BBC26CC87C30054CBCF /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; };
8B362BBD26CC87C30054CBCF /* CACFPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPlugIn.h; sourceTree = "<group>"; };
8B362BBE26CC87C30054CBCF /* CASettingsStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASettingsStorage.cpp; sourceTree = "<group>"; };
8B362BBF26CC87C30054CBCF /* CAMixMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMixMap.h; sourceTree = "<group>"; };
8B362BC026CC87C30054CBCF /* CACFDistributedNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDistributedNotification.h; sourceTree = "<group>"; };
8B362BC126CC87C30054CBCF /* CAFilePathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAFilePathUtils.h; sourceTree = "<group>"; };
8B362BC226CC87C30054CBCF /* CATink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATink.h; sourceTree = "<group>"; };
8B362BC326CC87C30054CBCF /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
8B362BC426CC87C30054CBCF /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
8B362BC526CC87C30054CBCF /* CAProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAProcess.cpp; sourceTree = "<group>"; };
8B362BC626CC87C30054CBCF /* CAHostTimeBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAHostTimeBase.cpp; sourceTree = "<group>"; };
8B362BC726CC87C30054CBCF /* CAPersistence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPersistence.cpp; sourceTree = "<group>"; };
8B362BC826CC87C30054CBCF /* CAAudioBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioBufferList.cpp; sourceTree = "<group>"; };
8B362BC926CC87C30054CBCF /* CAAudioTimeStamp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioTimeStamp.cpp; sourceTree = "<group>"; };
8B362BCA26CC87C30054CBCF /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
8B362BCB26CC87C30054CBCF /* CAByteOrder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAByteOrder.h; sourceTree = "<group>"; };
8B362BCC26CC87C30054CBCF /* CACFArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFArray.h; sourceTree = "<group>"; };
8B362BCD26CC87C30054CBCF /* CAAtomicStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomicStack.h; sourceTree = "<group>"; };
8B362BCE26CC87C30054CBCF /* CAReferenceCounted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAReferenceCounted.h; sourceTree = "<group>"; };
8B362BCF26CC87C30054CBCF /* CACFMachPort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMachPort.cpp; sourceTree = "<group>"; };
8B362BD026CC87C30054CBCF /* CABufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABufferList.cpp; sourceTree = "<group>"; };
8B362BD126CC87C30054CBCF /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
8B362BD226CC87C30054CBCF /* CADebugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugger.cpp; sourceTree = "<group>"; };
8B362BD326CC87C30054CBCF /* CABundleLocker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABundleLocker.cpp; sourceTree = "<group>"; };
8B362BD426CC87C30054CBCF /* CAAudioFileFormats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioFileFormats.cpp; sourceTree = "<group>"; };
8B362BD526CC87C30054CBCF /* CAMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMath.h; sourceTree = "<group>"; };
8B362BD626CC87C30054CBCF /* CACFArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFArray.cpp; sourceTree = "<group>"; };
8B362BD726CC87C30054CBCF /* CACFMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMessagePort.h; sourceTree = "<group>"; };
8B362BD826CC87C30054CBCF /* CAAudioValueRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioValueRange.cpp; sourceTree = "<group>"; };
8B362BD926CC87C30054CBCF /* CAAudioUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioUnit.cpp; sourceTree = "<group>"; };
8B362BDD26CC87C30054CBCF /* AUViewLocalizedStringKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUViewLocalizedStringKeys.h; sourceTree = "<group>"; };
8B362BDF26CC87C30054CBCF /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
8B362BE026CC87C30054CBCF /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
8B362BE126CC87C30054CBCF /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
8B362BE226CC87C30054CBCF /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
8B362BE326CC87C30054CBCF /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
8B362BE426CC87C30054CBCF /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
8B362BE526CC87C30054CBCF /* AUPlugInDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUPlugInDispatch.h; sourceTree = "<group>"; };
8B362BE626CC87C30054CBCF /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
8B362BE726CC87C30054CBCF /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
8B362BE826CC87C30054CBCF /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
8B362BE926CC87C30054CBCF /* AUPlugInDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUPlugInDispatch.cpp; sourceTree = "<group>"; };
8B362BEA26CC87C30054CBCF /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
8B362BEB26CC87C30054CBCF /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
8B362BEC26CC87C30054CBCF /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
8B362BED26CC87C30054CBCF /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
8B362BEF26CC87C30054CBCF /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
8B362BF026CC87C30054CBCF /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
8B362BF226CC87C30054CBCF /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
8B362BF326CC87C30054CBCF /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBaseHelper.cpp; sourceTree = "<group>"; };
8B362BF426CC87C30054CBCF /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
8B362BF526CC87C30054CBCF /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
8B362BF626CC87C30054CBCF /* AUTimestampGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUTimestampGenerator.cpp; sourceTree = "<group>"; };
8B362BF726CC87C30054CBCF /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
8B362BF826CC87C30054CBCF /* AUMIDIDefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUMIDIDefs.h; sourceTree = "<group>"; };
8B362BF926CC87C30054CBCF /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
8B362BFA26CC87C30054CBCF /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBaseHelper.h; sourceTree = "<group>"; };
8B362C7F26CC88C80054CBCF /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
8BA05A660720730100365D66 /* ZBandpass.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ZBandpass.cpp; sourceTree = "<group>"; };
8BA05A670720730100365D66 /* ZBandpass.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = ZBandpass.exp; sourceTree = "<group>"; };
8BA05A680720730100365D66 /* ZBandpass.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = ZBandpass.r; sourceTree = "<group>"; };
8BA05A690720730100365D66 /* ZBandpassVersion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ZBandpassVersion.h; sourceTree = "<group>"; };
8BA05AF9072074E100365D66 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = "<absolute>"; };
8BA05AFA072074E100365D66 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
8BA05B01072074F900365D66 /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = "<absolute>"; };
8BC6025B073B072D006C4272 /* ZBandpass.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ZBandpass.h; sourceTree = "<group>"; };
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D01CCD20486CAD60068D4B7 /* ZBandpass.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ZBandpass.component; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8D01CCCD0486CAD60068D4B7 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8BA05AFC072074E100365D66 /* AudioToolbox.framework in Frameworks */,
8BA05AFD072074E100365D66 /* AudioUnit.framework in Frameworks */,
8BA05B02072074F900365D66 /* CoreServices.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
089C166AFE841209C02AAC07 /* ZBandpass */ = {
isa = PBXGroup;
children = (
08FB77ADFE841716C02AAC07 /* Source */,
089C167CFE841241C02AAC07 /* Resources */,
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
19C28FB4FE9D528D11CA2CBB /* Products */,
);
name = ZBandpass;
sourceTree = "<group>";
};
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */,
8BA05B01072074F900365D66 /* CoreServices.framework */,
8BA05AF9072074E100365D66 /* AudioToolbox.framework */,
8BA05AFA072074E100365D66 /* AudioUnit.framework */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C167CFE841241C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8D01CCD10486CAD60068D4B7 /* Info.plist */,
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
08FB77ADFE841716C02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
8B362B7126CC87C30054CBCF /* CA_SDK */,
8BA05A56072072A900365D66 /* AU Source */,
);
name = Source;
sourceTree = "<group>";
};
19C28FB4FE9D528D11CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
8D01CCD20486CAD60068D4B7 /* ZBandpass.component */,
);
name = Products;
sourceTree = "<group>";
};
8B362B7126CC87C30054CBCF /* CA_SDK */ = {
isa = PBXGroup;
children = (
8B362B7226CC87C30054CBCF /* PublicUtility */,
8B362BDA26CC87C30054CBCF /* AudioUnits */,
);
name = CA_SDK;
path = ../../../../CA_SDK;
sourceTree = "<group>";
};
8B362B7226CC87C30054CBCF /* PublicUtility */ = {
isa = PBXGroup;
children = (
8B362B7326CC87C30054CBCF /* CAExtAudioFile.h */,
8B362B7426CC87C30054CBCF /* CACFMachPort.h */,
8B362B7526CC87C30054CBCF /* CABool.h */,
8B362B7626CC87C30054CBCF /* CAComponent.cpp */,
8B362B7726CC87C30054CBCF /* CADebugger.h */,
8B362B7826CC87C30054CBCF /* CACFNumber.cpp */,
8B362B7926CC87C30054CBCF /* CAGuard.h */,
8B362B7A26CC87C30054CBCF /* CAAtomic.h */,
8B362B7B26CC87C30054CBCF /* CAStreamBasicDescription.h */,
8B362B7C26CC87C30054CBCF /* CACFObject.h */,
8B362B7D26CC87C30054CBCF /* CAStreamRangedDescription.h */,
8B362B7E26CC87C30054CBCF /* CATokenMap.h */,
8B362B7F26CC87C30054CBCF /* CAComponent.h */,
8B362B8026CC87C30054CBCF /* CAAudioBufferList.h */,
8B362B8126CC87C30054CBCF /* CAAudioUnit.h */,
8B362B8226CC87C30054CBCF /* CAAUParameter.h */,
8B362B8326CC87C30054CBCF /* CAException.h */,
8B362B8426CC87C30054CBCF /* CAAUProcessor.cpp */,
8B362B8526CC87C30054CBCF /* CAAUProcessor.h */,
8B362B8626CC87C30054CBCF /* CAProcess.h */,
8B362B8726CC87C30054CBCF /* CACFDictionary.h */,
8B362B8826CC87C30054CBCF /* CAPThread.h */,
8B362B8926CC87C30054CBCF /* CAAUParameter.cpp */,
8B362B8A26CC87C30054CBCF /* CAAudioTimeStamp.h */,
8B362B8B26CC87C30054CBCF /* CAFilePathUtils.cpp */,
8B362B8C26CC87C30054CBCF /* CAAudioValueRange.h */,
8B362B8D26CC87C30054CBCF /* CAVectorUnitTypes.h */,
8B362B8E26CC87C30054CBCF /* CAAudioChannelLayoutObject.cpp */,
8B362B8F26CC87C30054CBCF /* CAGuard.cpp */,
8B362B9026CC87C30054CBCF /* CACFNumber.h */,
8B362B9126CC87C30054CBCF /* CACFDistributedNotification.cpp */,
8B362B9226CC87C30054CBCF /* CACFString.h */,
8B362B9326CC87C30054CBCF /* CAAUMIDIMapManager.cpp */,
8B362B9426CC87C30054CBCF /* CAComponentDescription.cpp */,
8B362B9526CC87C30054CBCF /* CAHostTimeBase.h */,
8B362B9626CC87C30054CBCF /* CADebugMacros.cpp */,
8B362B9726CC87C30054CBCF /* CAAudioFileFormats.h */,
8B362B9826CC87C30054CBCF /* CAAUMIDIMapManager.h */,
8B362B9926CC87C30054CBCF /* CACFDictionary.cpp */,
8B362B9A26CC87C30054CBCF /* CAMutex.h */,
8B362B9B26CC87C30054CBCF /* CACFString.cpp */,
8B362B9C26CC87C30054CBCF /* CASettingsStorage.h */,
8B362B9D26CC87C30054CBCF /* CADebugPrintf.h */,
8B362B9E26CC87C30054CBCF /* CAXException.cpp */,
8B362B9F26CC87C30054CBCF /* CAAUMIDIMap.h */,
8B362BA026CC87C30054CBCF /* AUParamInfo.h */,
8B362BA126CC87C30054CBCF /* CABitOperations.h */,
8B362BA226CC87C30054CBCF /* CACFPreferences.cpp */,
8B362BA326CC87C30054CBCF /* CABundleLocker.h */,
8B362BA426CC87C30054CBCF /* CAPropertyAddress.h */,
8B362BA526CC87C30054CBCF /* CAXException.h */,
8B362BA626CC87C30054CBCF /* CAAudioChannelLayout.cpp */,
8B362BA726CC87C30054CBCF /* CAThreadSafeList.h */,
8B362BA826CC87C30054CBCF /* CAAudioUnitOutputCapturer.h */,
8B362BA926CC87C30054CBCF /* AUParamInfo.cpp */,
8B362BAA26CC87C30054CBCF /* CASharedLibrary.cpp */,
8B362BAB26CC87C30054CBCF /* CAAUMIDIMap.cpp */,
8B362BAC26CC87C30054CBCF /* CALogMacros.h */,
8B362BAD26CC87C30054CBCF /* CACFMessagePort.cpp */,
8B362BAE26CC87C30054CBCF /* CARingBuffer.h */,
8B362BAF26CC87C30054CBCF /* AUOutputBL.cpp */,
8B362BB026CC87C30054CBCF /* CABufferList.h */,
8B362BB126CC87C30054CBCF /* CASharedLibrary.h */,
8B362BB226CC87C30054CBCF /* CACFData.h */,
8B362BB326CC87C30054CBCF /* CAStreamRangedDescription.cpp */,
8B362BB426CC87C30054CBCF /* CAPThread.cpp */,
8B362BB526CC87C30054CBCF /* CAAutoDisposer.h */,
8B362BB626CC87C30054CBCF /* CACFPreferences.h */,
8B362BB726CC87C30054CBCF /* CAVectorUnit.cpp */,
8B362BB826CC87C30054CBCF /* CAComponentDescription.h */,
8B362BB926CC87C30054CBCF /* CADebugMacros.h */,
8B362BBA26CC87C30054CBCF /* AUOutputBL.h */,
8B362BBB26CC87C30054CBCF /* CADebugPrintf.cpp */,
8B362BBC26CC87C30054CBCF /* CARingBuffer.cpp */,
8B362BBD26CC87C30054CBCF /* CACFPlugIn.h */,
8B362BBE26CC87C30054CBCF /* CASettingsStorage.cpp */,
8B362BBF26CC87C30054CBCF /* CAMixMap.h */,
8B362BC026CC87C30054CBCF /* CACFDistributedNotification.h */,
8B362BC126CC87C30054CBCF /* CAFilePathUtils.h */,
8B362BC226CC87C30054CBCF /* CATink.h */,
8B362BC326CC87C30054CBCF /* CAStreamBasicDescription.cpp */,
8B362BC426CC87C30054CBCF /* CAAudioChannelLayout.h */,
8B362BC526CC87C30054CBCF /* CAProcess.cpp */,
8B362BC626CC87C30054CBCF /* CAHostTimeBase.cpp */,
8B362BC726CC87C30054CBCF /* CAPersistence.cpp */,
8B362BC826CC87C30054CBCF /* CAAudioBufferList.cpp */,
8B362BC926CC87C30054CBCF /* CAAudioTimeStamp.cpp */,
8B362BCA26CC87C30054CBCF /* CAVectorUnit.h */,
8B362BCB26CC87C30054CBCF /* CAByteOrder.h */,
8B362BCC26CC87C30054CBCF /* CACFArray.h */,
8B362BCD26CC87C30054CBCF /* CAAtomicStack.h */,
8B362BCE26CC87C30054CBCF /* CAReferenceCounted.h */,
8B362BCF26CC87C30054CBCF /* CACFMachPort.cpp */,
8B362BD026CC87C30054CBCF /* CABufferList.cpp */,
8B362BD126CC87C30054CBCF /* CAMutex.cpp */,
8B362BD226CC87C30054CBCF /* CADebugger.cpp */,
8B362BD326CC87C30054CBCF /* CABundleLocker.cpp */,
8B362BD426CC87C30054CBCF /* CAAudioFileFormats.cpp */,
8B362BD526CC87C30054CBCF /* CAMath.h */,
8B362BD626CC87C30054CBCF /* CACFArray.cpp */,
8B362BD726CC87C30054CBCF /* CACFMessagePort.h */,
8B362BD826CC87C30054CBCF /* CAAudioValueRange.cpp */,
8B362BD926CC87C30054CBCF /* CAAudioUnit.cpp */,
);
path = PublicUtility;
sourceTree = "<group>";
};
8B362BDA26CC87C30054CBCF /* AudioUnits */ = {
isa = PBXGroup;
children = (
8B362BDB26CC87C30054CBCF /* AUPublic */,
);
path = AudioUnits;
sourceTree = "<group>";
};
8B362BDB26CC87C30054CBCF /* AUPublic */ = {
isa = PBXGroup;
children = (
8B362BDC26CC87C30054CBCF /* AUViewBase */,
8B362BDE26CC87C30054CBCF /* AUBase */,
8B362BEE26CC87C30054CBCF /* OtherBases */,
8B362BF126CC87C30054CBCF /* Utility */,
);
path = AUPublic;
sourceTree = "<group>";
};
8B362BDC26CC87C30054CBCF /* AUViewBase */ = {
isa = PBXGroup;
children = (
8B362BDD26CC87C30054CBCF /* AUViewLocalizedStringKeys.h */,
);
path = AUViewBase;
sourceTree = "<group>";
};
8B362BDE26CC87C30054CBCF /* AUBase */ = {
isa = PBXGroup;
children = (
8B362BDF26CC87C30054CBCF /* ComponentBase.cpp */,
8B362BE026CC87C30054CBCF /* AUScopeElement.cpp */,
8B362BE126CC87C30054CBCF /* ComponentBase.h */,
8B362BE226CC87C30054CBCF /* AUBase.cpp */,
8B362BE326CC87C30054CBCF /* AUInputElement.h */,
8B362BE426CC87C30054CBCF /* AUBase.h */,
8B362BE526CC87C30054CBCF /* AUPlugInDispatch.h */,
8B362BE626CC87C30054CBCF /* AUDispatch.h */,
8B362BE726CC87C30054CBCF /* AUOutputElement.cpp */,
8B362BE826CC87C30054CBCF /* AUResources.r */,
8B362BE926CC87C30054CBCF /* AUPlugInDispatch.cpp */,
8B362BEA26CC87C30054CBCF /* AUOutputElement.h */,
8B362BEB26CC87C30054CBCF /* AUDispatch.cpp */,
8B362BEC26CC87C30054CBCF /* AUScopeElement.h */,
8B362BED26CC87C30054CBCF /* AUInputElement.cpp */,
);
path = AUBase;
sourceTree = "<group>";
};
8B362BEE26CC87C30054CBCF /* OtherBases */ = {
isa = PBXGroup;
children = (
8B362BEF26CC87C30054CBCF /* AUEffectBase.cpp */,
8B362BF026CC87C30054CBCF /* AUEffectBase.h */,
);
path = OtherBases;
sourceTree = "<group>";
};
8B362BF126CC87C30054CBCF /* Utility */ = {
isa = PBXGroup;
children = (
8B362BF226CC87C30054CBCF /* AUTimestampGenerator.h */,
8B362BF326CC87C30054CBCF /* AUBaseHelper.cpp */,
8B362BF426CC87C30054CBCF /* AUSilentTimeout.h */,
8B362BF526CC87C30054CBCF /* AUInputFormatConverter.h */,
8B362BF626CC87C30054CBCF /* AUTimestampGenerator.cpp */,
8B362BF726CC87C30054CBCF /* AUBuffer.cpp */,
8B362BF826CC87C30054CBCF /* AUMIDIDefs.h */,
8B362BF926CC87C30054CBCF /* AUBuffer.h */,
8B362BFA26CC87C30054CBCF /* AUBaseHelper.h */,
);
path = Utility;
sourceTree = "<group>";
};
8BA05A56072072A900365D66 /* AU Source */ = {
isa = PBXGroup;
children = (
8BC6025B073B072D006C4272 /* ZBandpass.h */,
8BA05A660720730100365D66 /* ZBandpass.cpp */,
8BA05A670720730100365D66 /* ZBandpass.exp */,
8BA05A680720730100365D66 /* ZBandpass.r */,
8BA05A690720730100365D66 /* ZBandpassVersion.h */,
);
name = "AU Source";
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8D01CCC70486CAD60068D4B7 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
8B362C2B26CC87C30054CBCF /* CABundleLocker.h in Headers */,
8B362C4C26CC87C30054CBCF /* CAAudioChannelLayout.h in Headers */,
8B362C4226CC87C30054CBCF /* AUOutputBL.h in Headers */,
8B362C1D26CC87C30054CBCF /* CAHostTimeBase.h in Headers */,
8B362C6526CC87C30054CBCF /* ComponentBase.h in Headers */,
8B362C5526CC87C30054CBCF /* CAAtomicStack.h in Headers */,
8B362C1226CC87C30054CBCF /* CAAudioTimeStamp.h in Headers */,
8B362C2F26CC87C30054CBCF /* CAThreadSafeList.h in Headers */,
8B362C0A26CC87C30054CBCF /* CAAUParameter.h in Headers */,
8B362C7C26CC87C30054CBCF /* AUBaseHelper.h in Headers */,
8B362C7426CC87C30054CBCF /* AUTimestampGenerator.h in Headers */,
8B362C2526CC87C30054CBCF /* CADebugPrintf.h in Headers */,
8B362C5F26CC87C30054CBCF /* CACFMessagePort.h in Headers */,
8B362C0D26CC87C30054CBCF /* CAAUProcessor.h in Headers */,
8B362C0926CC87C30054CBCF /* CAAudioUnit.h in Headers */,
8B362C6226CC87C30054CBCF /* AUViewLocalizedStringKeys.h in Headers */,
8B362C4826CC87C30054CBCF /* CACFDistributedNotification.h in Headers */,
8B362C0726CC87C30054CBCF /* CAComponent.h in Headers */,
8B362C1526CC87C30054CBCF /* CAVectorUnitTypes.h in Headers */,
8BA05A6E0720730100365D66 /* ZBandpassVersion.h in Headers */,
8B362C4926CC87C30054CBCF /* CAFilePathUtils.h in Headers */,
8B362C0B26CC87C30054CBCF /* CAException.h in Headers */,
8B362C0226CC87C30054CBCF /* CAAtomic.h in Headers */,
8B362C0126CC87C30054CBCF /* CAGuard.h in Headers */,
8B362C6726CC87C30054CBCF /* AUInputElement.h in Headers */,
8B362C3E26CC87C30054CBCF /* CACFPreferences.h in Headers */,
8B362C5326CC87C30054CBCF /* CAByteOrder.h in Headers */,
8B362C3626CC87C30054CBCF /* CARingBuffer.h in Headers */,
8B362BFD26CC87C30054CBCF /* CABool.h in Headers */,
8B362C2226CC87C30054CBCF /* CAMutex.h in Headers */,
8B362C6826CC87C30054CBCF /* AUBase.h in Headers */,
8BC6025C073B072D006C4272 /* ZBandpass.h in Headers */,
8B362C1A26CC87C30054CBCF /* CACFString.h in Headers */,
8B362C3926CC87C30054CBCF /* CASharedLibrary.h in Headers */,
8B362C0626CC87C30054CBCF /* CATokenMap.h in Headers */,
8B362BFB26CC87C30054CBCF /* CAExtAudioFile.h in Headers */,
8B362C1026CC87C30054CBCF /* CAPThread.h in Headers */,
8B362C2C26CC87C30054CBCF /* CAPropertyAddress.h in Headers */,
8B362C5626CC87C30054CBCF /* CAReferenceCounted.h in Headers */,
8B362C7B26CC87C30054CBCF /* AUBuffer.h in Headers */,
8B362C5D26CC87C30054CBCF /* CAMath.h in Headers */,
8B362C3D26CC87C30054CBCF /* CAAutoDisposer.h in Headers */,
8B362C0426CC87C30054CBCF /* CACFObject.h in Headers */,
8B362C2426CC87C30054CBCF /* CASettingsStorage.h in Headers */,
8B362C2D26CC87C30054CBCF /* CAXException.h in Headers */,
8B362C4A26CC87C30054CBCF /* CATink.h in Headers */,
8B362C7726CC87C30054CBCF /* AUInputFormatConverter.h in Headers */,
8B362C5226CC87C30054CBCF /* CAVectorUnit.h in Headers */,
8B362C0E26CC87C30054CBCF /* CAProcess.h in Headers */,
8B362C1426CC87C30054CBCF /* CAAudioValueRange.h in Headers */,
8B362C2926CC87C30054CBCF /* CABitOperations.h in Headers */,
8B362C1F26CC87C30054CBCF /* CAAudioFileFormats.h in Headers */,
8B362C1826CC87C30054CBCF /* CACFNumber.h in Headers */,
8B362C3026CC87C30054CBCF /* CAAudioUnitOutputCapturer.h in Headers */,
8B362C4126CC87C30054CBCF /* CADebugMacros.h in Headers */,
8B362C7A26CC87C30054CBCF /* AUMIDIDefs.h in Headers */,
8B362C3A26CC87C30054CBCF /* CACFData.h in Headers */,
8B362C0326CC87C30054CBCF /* CAStreamBasicDescription.h in Headers */,
8B362C6926CC87C30054CBCF /* AUPlugInDispatch.h in Headers */,
8B362C0526CC87C30054CBCF /* CAStreamRangedDescription.h in Headers */,
8B362C4526CC87C30054CBCF /* CACFPlugIn.h in Headers */,
8B362C0826CC87C30054CBCF /* CAAudioBufferList.h in Headers */,
8B362C2026CC87C30054CBCF /* CAAUMIDIMapManager.h in Headers */,
8B362C7326CC87C30054CBCF /* AUEffectBase.h in Headers */,
8B362C0F26CC87C30054CBCF /* CACFDictionary.h in Headers */,
8B362C7026CC87C30054CBCF /* AUScopeElement.h in Headers */,
8B362C4026CC87C30054CBCF /* CAComponentDescription.h in Headers */,
8B362C7626CC87C30054CBCF /* AUSilentTimeout.h in Headers */,
8B362C3826CC87C30054CBCF /* CABufferList.h in Headers */,
8B362C6A26CC87C30054CBCF /* AUDispatch.h in Headers */,
8B362C6E26CC87C30054CBCF /* AUOutputElement.h in Headers */,
8B362C3426CC87C30054CBCF /* CALogMacros.h in Headers */,
8B362C2826CC87C30054CBCF /* AUParamInfo.h in Headers */,
8B362C4726CC87C30054CBCF /* CAMixMap.h in Headers */,
8B362C5426CC87C30054CBCF /* CACFArray.h in Headers */,
8B362BFC26CC87C30054CBCF /* CACFMachPort.h in Headers */,
8B362C2726CC87C30054CBCF /* CAAUMIDIMap.h in Headers */,
8B362BFF26CC87C30054CBCF /* CADebugger.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8D01CCC60486CAD60068D4B7 /* ZBandpass */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "ZBandpass" */;
buildPhases = (
8D01CCC70486CAD60068D4B7 /* Headers */,
8D01CCC90486CAD60068D4B7 /* Resources */,
8D01CCCB0486CAD60068D4B7 /* Sources */,
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = ZBandpass;
productInstallPath = "$(HOME)/Library/Bundles";
productName = ZBandpass;
productReference = 8D01CCD20486CAD60068D4B7 /* ZBandpass.component */;
productType = "com.apple.product-type.bundle";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
089C1669FE841209C02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1240;
};
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "ZBandpass" */;
compatibilityVersion = "Xcode 3.1";
developmentRegion = en;
hasScannedForEncodings = 1;
knownRegions = (
fr,
ja,
en,
de,
Base,
);
mainGroup = 089C166AFE841209C02AAC07 /* ZBandpass */;
projectDirPath = "";
projectRoot = "";
targets = (
8D01CCC60486CAD60068D4B7 /* ZBandpass */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
8D01CCC90486CAD60068D4B7 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8B362C3726CC87C30054CBCF /* AUOutputBL.cpp in Sources */,
8B362C5C26CC87C30054CBCF /* CAAudioFileFormats.cpp in Sources */,
8B362C4E26CC87C30054CBCF /* CAHostTimeBase.cpp in Sources */,
8B362C2626CC87C30054CBCF /* CAXException.cpp in Sources */,
8B362C5026CC87C30054CBCF /* CAAudioBufferList.cpp in Sources */,
8B362C1326CC87C30054CBCF /* CAFilePathUtils.cpp in Sources */,
8B362C1126CC87C30054CBCF /* CAAUParameter.cpp in Sources */,
8B362C3326CC87C30054CBCF /* CAAUMIDIMap.cpp in Sources */,
8B362C6026CC87C30054CBCF /* CAAudioValueRange.cpp in Sources */,
8B362C6F26CC87C30054CBCF /* AUDispatch.cpp in Sources */,
8B362C2A26CC87C30054CBCF /* CACFPreferences.cpp in Sources */,
8B362C6D26CC87C30054CBCF /* AUPlugInDispatch.cpp in Sources */,
8B362C0C26CC87C30054CBCF /* CAAUProcessor.cpp in Sources */,
8B362C2126CC87C30054CBCF /* CACFDictionary.cpp in Sources */,
8B362C7526CC87C30054CBCF /* AUBaseHelper.cpp in Sources */,
8B362C5A26CC87C30054CBCF /* CADebugger.cpp in Sources */,
8B362C2E26CC87C30054CBCF /* CAAudioChannelLayout.cpp in Sources */,
8B362C3126CC87C30054CBCF /* AUParamInfo.cpp in Sources */,
8B362C4F26CC87C30054CBCF /* CAPersistence.cpp in Sources */,
8B362C4326CC87C30054CBCF /* CADebugPrintf.cpp in Sources */,
8B362C7826CC87C30054CBCF /* AUTimestampGenerator.cpp in Sources */,
8B362C4B26CC87C30054CBCF /* CAStreamBasicDescription.cpp in Sources */,
8B362C1B26CC87C30054CBCF /* CAAUMIDIMapManager.cpp in Sources */,
8B362C4626CC87C30054CBCF /* CASettingsStorage.cpp in Sources */,
8B362C6B26CC87C30054CBCF /* AUOutputElement.cpp in Sources */,
8B362C1726CC87C30054CBCF /* CAGuard.cpp in Sources */,
8BA05A6B0720730100365D66 /* ZBandpass.cpp in Sources */,
8B362C5926CC87C30054CBCF /* CAMutex.cpp in Sources */,
8B362C7226CC87C30054CBCF /* AUEffectBase.cpp in Sources */,
8B362C5726CC87C30054CBCF /* CACFMachPort.cpp in Sources */,
8B362C6626CC87C30054CBCF /* AUBase.cpp in Sources */,
8B362C3226CC87C30054CBCF /* CASharedLibrary.cpp in Sources */,
8B362C1926CC87C30054CBCF /* CACFDistributedNotification.cpp in Sources */,
8B362C1C26CC87C30054CBCF /* CAComponentDescription.cpp in Sources */,
8B362C2326CC87C30054CBCF /* CACFString.cpp in Sources */,
8B362C6326CC87C30054CBCF /* ComponentBase.cpp in Sources */,
8B362C4426CC87C30054CBCF /* CARingBuffer.cpp in Sources */,
8B362C6426CC87C30054CBCF /* AUScopeElement.cpp in Sources */,
8B362C6126CC87C30054CBCF /* CAAudioUnit.cpp in Sources */,
8B362C5E26CC87C30054CBCF /* CACFArray.cpp in Sources */,
8B362C5B26CC87C30054CBCF /* CABundleLocker.cpp in Sources */,
8B362C4D26CC87C30054CBCF /* CAProcess.cpp in Sources */,
8B362C3B26CC87C30054CBCF /* CAStreamRangedDescription.cpp in Sources */,
8B362C3C26CC87C30054CBCF /* CAPThread.cpp in Sources */,
8B362BFE26CC87C30054CBCF /* CAComponent.cpp in Sources */,
8B362C1626CC87C30054CBCF /* CAAudioChannelLayoutObject.cpp in Sources */,
8B362C5126CC87C30054CBCF /* CAAudioTimeStamp.cpp in Sources */,
8B362C5826CC87C30054CBCF /* CABufferList.cpp in Sources */,
8B362C3526CC87C30054CBCF /* CACFMessagePort.cpp in Sources */,
8B362C3F26CC87C30054CBCF /* CAVectorUnit.cpp in Sources */,
8B362C7126CC87C30054CBCF /* AUInputElement.cpp in Sources */,
8B362C7926CC87C30054CBCF /* AUBuffer.cpp in Sources */,
8B362C1E26CC87C30054CBCF /* CADebugMacros.cpp in Sources */,
8B362C0026CC87C30054CBCF /* CACFNumber.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
8B362C7F26CC88C80054CBCF /* en */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
3E4BA244089833B7007656EC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
DEVELOPMENT_TEAM = 9BMAKYA76W;
EXPORTED_SYMBOLS_FILE = ZBandpass.exp;
GCC_OPTIMIZATION_LEVEL = 0;
GENERATE_PKGINFO_FILE = YES;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
LIBRARY_STYLE = Bundle;
MACOSX_DEPLOYMENT_TARGET = 11.1;
OTHER_LDFLAGS = "-bundle";
OTHER_REZFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
PRODUCT_NAME = ZBandpass;
PROVISIONING_PROFILE_SPECIFIER = "";
SDKROOT = macosx;
STRIP_STYLE = debugging;
WRAPPER_EXTENSION = component;
};
name = Debug;
};
3E4BA245089833B7007656EC /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
DEVELOPMENT_TEAM = 9BMAKYA76W;
EXPORTED_SYMBOLS_FILE = ZBandpass.exp;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GENERATE_PKGINFO_FILE = YES;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
LIBRARY_STYLE = Bundle;
MACOSX_DEPLOYMENT_TARGET = 11.1;
OTHER_LDFLAGS = "-bundle";
OTHER_REZFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = "com.airwindows.audiounit.${PRODUCT_NAME:identifier}";
PRODUCT_NAME = ZBandpass;
PROVISIONING_PROFILE_SPECIFIER = "";
SDKROOT = macosx;
STRIP_INSTALLED_PRODUCT = YES;
STRIP_STYLE = debugging;
WRAPPER_EXTENSION = component;
};
name = Release;
};
3E4BA248089833B7007656EC /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
MACOSX_DEPLOYMENT_TARGET = 11.1;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
WARNING_CFLAGS = (
"-Wmost",
"-Wno-four-char-constants",
"-Wno-unknown-pragmas",
);
};
name = Debug;
};
3E4BA249089833B7007656EC /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/CA_SDK/**";
MACOSX_DEPLOYMENT_TARGET = 11.1;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
WARNING_CFLAGS = (
"-Wmost",
"-Wno-four-char-constants",
"-Wno-unknown-pragmas",
);
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "ZBandpass" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3E4BA244089833B7007656EC /* Debug */,
3E4BA245089833B7007656EC /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "ZBandpass" */ = {
isa = XCConfigurationList;
buildConfigurations = (
3E4BA248089833B7007656EC /* Debug */,
3E4BA249089833B7007656EC /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
/* End XCConfigurationList section */
};
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
}

View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:">
</FileRef>
</Workspace>

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>

View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1240"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
BuildableName = "ZBandpass.component"
BlueprintName = "ZBandpass"
ReferencedContainer = "container:ZBandpass.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
BuildableName = "ZBandpass.component"
BlueprintName = "ZBandpass"
ReferencedContainer = "container:ZBandpass.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>ZBandpass.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>0</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>
<dict>
<key>8D01CCC60486CAD60068D4B7</key>
<dict>
<key>primary</key>
<true/>
</dict>
</dict>
</dict>
</plist>

View file

@ -0,0 +1,58 @@
/*
* File: ZBandpassVersion.h
*
* Version: 1.0
*
* Created: 4/27/21
*
* Copyright: Copyright © 2021 Airwindows, All Rights Reserved
*
* Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple Computer, Inc. ("Apple") in
* consideration of your agreement to the following terms, and your use, installation, modification
* or redistribution of this Apple software constitutes acceptance of these terms. If you do
* not agree with these terms, please do not use, install, modify or redistribute this Apple
* software.
*
* In consideration of your agreement to abide by the following terms, and subject to these terms,
* Apple grants you a personal, non-exclusive license, under Apple's copyrights in this
* original Apple software (the "Apple Software"), to use, reproduce, modify and redistribute the
* Apple Software, with or without modifications, in source and/or binary forms; provided that if you
* redistribute the Apple Software in its entirety and without modifications, you must retain this
* notice and the following text and disclaimers in all such redistributions of the Apple Software.
* Neither the name, trademarks, service marks or logos of Apple Computer, Inc. may be used to
* endorse or promote products derived from the Apple Software without specific prior written
* permission from Apple. Except as expressly stated in this notice, no other rights or
* licenses, express or implied, are granted by Apple herein, including but not limited to any
* patent rights that may be infringed by your derivative works or by other works in which the
* Apple Software may be incorporated.
*
* The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO WARRANTIES, EXPRESS OR
* IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY
* AND FITNESS FOR A PARTICULAR PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE
* OR IN COMBINATION WITH YOUR PRODUCTS.
*
* IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ARISING IN ANY WAY OUT OF THE USE,
* REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER
* UNDER THEORY OF CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN
* IF APPLE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#ifndef __ZBandpassVersion_h__
#define __ZBandpassVersion_h__
#ifdef DEBUG
#define kZBandpassVersion 0xFFFFFFFF
#else
#define kZBandpassVersion 0x00010000
#endif
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
#define ZBandpass_COMP_MANF 'Dthr'
#define ZBandpass_COMP_SUBTYPE 'zbap'
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
#endif

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>BuildVersion</key>
<string>3</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>ProjectName</key>
<string>${EXECUTABLE_NAME}</string>
<key>SourceVersion</key>
<string>590000</string>
</dict>
</plist>

View file

@ -0,0 +1,131 @@
// !$*UTF8*$!
{
089C1669FE841209C02AAC07 /* Project object */ = {
activeBuildConfigurationName = Release;
activeTarget = 8D01CCC60486CAD60068D4B7 /* ZBandpass */;
codeSenseManager = 8B02375F1D42B1C400E1E8C8 /* Code sense */;
perUserDictionary = {
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
364,
20,
48,
43,
43,
20,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
PBXFileDataSource_Target_ColumnID,
);
};
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
324,
60,
20,
48,
43,
43,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXTargetDataSource_PrimaryAttribute,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 650854023;
PBXWorkspaceStateSaveDate = 650854023;
};
perUserProjectItems = {
8B363D1126CB445D008AF808 /* XCBuildMessageTextBookmark */ = 8B363D1126CB445D008AF808 /* XCBuildMessageTextBookmark */;
8B363D1226CB445D008AF808 /* PBXTextBookmark */ = 8B363D1226CB445D008AF808 /* PBXTextBookmark */;
};
sourceControlManager = 8B02375E1D42B1C400E1E8C8 /* Source Control */;
userBuildSettings = {
};
};
2407DEB6089929BA00EB68BF /* ZBandpass.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {948, 2628}}";
sepNavSelRange = "{5023, 0}";
sepNavVisRange = "{4060, 1604}";
sepNavWindowFrame = "{{12, 47}, {895, 831}}";
};
};
245463B80991757100464AD3 /* ZBandpass.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1110, 1404}}";
sepNavSelRange = "{2531, 0}";
sepNavVisRange = "{940, 1812}";
sepNavWindowFrame = "{{20, 47}, {895, 831}}";
};
};
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1074, 27360}}";
sepNavSelRange = "{10616, 0}";
sepNavVisRange = "{10459, 280}";
sepNavWindowFrame = "{{15, 42}, {895, 831}}";
};
};
24D8286F09A914000093AEF8 /* ZBandpassProc.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1407, 7866}}";
sepNavSelRange = "{17995, 0}";
sepNavVisRange = "{10598, 1774}";
sepNavWindowFrame = "{{459, 47}, {895, 831}}";
};
};
8B02375E1D42B1C400E1E8C8 /* Source Control */ = {
isa = PBXSourceControlManager;
fallbackIsa = XCSourceControlManager;
isSCMEnabled = 0;
scmConfiguration = {
repositoryNamesForRoots = {
"" = "";
};
};
};
8B02375F1D42B1C400E1E8C8 /* Code sense */ = {
isa = PBXCodeSenseManager;
indexTemplatePath = "";
};
8B363D1126CB445D008AF808 /* XCBuildMessageTextBookmark */ = {
isa = PBXTextBookmark;
comments = "Deprecated conversion from string constant to 'char*'";
fRef = 24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */;
fallbackIsa = XCBuildMessageTextBookmark;
rLen = 1;
rLoc = 306;
rType = 1;
};
8B363D1226CB445D008AF808 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */;
name = "audioeffectx.cpp: 307";
rLen = 0;
rLoc = 10616;
rType = 0;
vrLen = 277;
vrLoc = 10459;
};
8D01CCC60486CAD60068D4B7 /* ZBandpass */ = {
activeExec = 0;
};
}

View file

@ -0,0 +1,454 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 45;
objects = {
/* Begin PBXBuildFile section */
2407DEB9089929BA00EB68BF /* ZBandpass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2407DEB6089929BA00EB68BF /* ZBandpass.cpp */; };
245463B90991757100464AD3 /* ZBandpass.h in Headers */ = {isa = PBXBuildFile; fileRef = 245463B80991757100464AD3 /* ZBandpass.h */; };
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */ = {isa = PBXBuildFile; fileRef = 24CFB70307E7A0220081BD57 /* PkgInfo */; };
24D8287009A914000093AEF8 /* ZBandpassProc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 24D8286F09A914000093AEF8 /* ZBandpassProc.cpp */; };
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */ = {isa = PBXBuildFile; fileRef = 24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */; };
8B362C9426CC89290054CBCF /* vstfxstore.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C8826CC89290054CBCF /* vstfxstore.h */; };
8B362C9526CC89290054CBCF /* aeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C8926CC89290054CBCF /* aeffect.h */; };
8B362C9626CC89290054CBCF /* aeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C8A26CC89290054CBCF /* aeffectx.h */; };
8B362C9726CC89290054CBCF /* audioeffectx.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C8E26CC89290054CBCF /* audioeffectx.h */; };
8B362C9826CC89290054CBCF /* audioeffect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362C8F26CC89290054CBCF /* audioeffect.cpp */; };
8B362C9926CC89290054CBCF /* audioeffectx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362C9026CC89290054CBCF /* audioeffectx.cpp */; };
8B362C9A26CC89290054CBCF /* aeffeditor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C9126CC89290054CBCF /* aeffeditor.h */; };
8B362C9B26CC89290054CBCF /* vstplugmain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B362C9226CC89290054CBCF /* vstplugmain.cpp */; };
8B362C9C26CC89290054CBCF /* audioeffect.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B362C9326CC89290054CBCF /* audioeffect.h */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
2407DE920899296600EB68BF /* ZBandpass.vst */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ZBandpass.vst; sourceTree = BUILT_PRODUCTS_DIR; };
2407DEB6089929BA00EB68BF /* ZBandpass.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = ZBandpass.cpp; path = source/ZBandpass.cpp; sourceTree = "<group>"; };
245463B80991757100464AD3 /* ZBandpass.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ZBandpass.h; path = source/ZBandpass.h; sourceTree = "<group>"; };
24CFB70307E7A0220081BD57 /* PkgInfo */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = PkgInfo; path = mac/PkgInfo; sourceTree = "<group>"; };
24D8286F09A914000093AEF8 /* ZBandpassProc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ZBandpassProc.cpp; path = source/ZBandpassProc.cpp; sourceTree = "<group>"; };
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = xcode_vst_prefix.h; path = mac/xcode_vst_prefix.h; sourceTree = SOURCE_ROOT; };
8B362C8826CC89290054CBCF /* vstfxstore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = vstfxstore.h; sourceTree = "<group>"; };
8B362C8926CC89290054CBCF /* aeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffect.h; sourceTree = "<group>"; };
8B362C8A26CC89290054CBCF /* aeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffectx.h; sourceTree = "<group>"; };
8B362C8E26CC89290054CBCF /* audioeffectx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffectx.h; sourceTree = "<group>"; };
8B362C8F26CC89290054CBCF /* audioeffect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffect.cpp; sourceTree = "<group>"; };
8B362C9026CC89290054CBCF /* audioeffectx.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = audioeffectx.cpp; sourceTree = "<group>"; };
8B362C9126CC89290054CBCF /* aeffeditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aeffeditor.h; sourceTree = "<group>"; };
8B362C9226CC89290054CBCF /* vstplugmain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vstplugmain.cpp; sourceTree = "<group>"; };
8B362C9326CC89290054CBCF /* audioeffect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audioeffect.h; sourceTree = "<group>"; };
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = mac/Info.plist; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
089C166AFE841209C02AAC07 /* FM-Chopper */ = {
isa = PBXGroup;
children = (
19C28FB4FE9D528D11CA2CBB /* Products */,
089C167CFE841241C02AAC07 /* Resources */,
08FB77ADFE841716C02AAC07 /* Source */,
);
name = "FM-Chopper";
sourceTree = "<group>";
};
089C167CFE841241C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */,
24CFB70307E7A0220081BD57 /* PkgInfo */,
8D01CCD10486CAD60068D4B7 /* Info.plist */,
);
name = Resources;
sourceTree = "<group>";
};
08FB77ADFE841716C02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
8B362C8526CC89290054CBCF /* vstsdk2.4 */,
2407DEB6089929BA00EB68BF /* ZBandpass.cpp */,
24D8286F09A914000093AEF8 /* ZBandpassProc.cpp */,
245463B80991757100464AD3 /* ZBandpass.h */,
);
name = Source;
sourceTree = "<group>";
};
19C28FB4FE9D528D11CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
2407DE920899296600EB68BF /* ZBandpass.vst */,
);
name = Products;
sourceTree = "<group>";
};
8B362C8526CC89290054CBCF /* vstsdk2.4 */ = {
isa = PBXGroup;
children = (
8B362C8626CC89290054CBCF /* pluginterfaces */,
8B362C8B26CC89290054CBCF /* public.sdk */,
);
name = vstsdk2.4;
path = ../../../../vstsdk2.4;
sourceTree = "<group>";
};
8B362C8626CC89290054CBCF /* pluginterfaces */ = {
isa = PBXGroup;
children = (
8B362C8726CC89290054CBCF /* vst2.x */,
);
path = pluginterfaces;
sourceTree = "<group>";
};
8B362C8726CC89290054CBCF /* vst2.x */ = {
isa = PBXGroup;
children = (
8B362C8826CC89290054CBCF /* vstfxstore.h */,
8B362C8926CC89290054CBCF /* aeffect.h */,
8B362C8A26CC89290054CBCF /* aeffectx.h */,
);
path = vst2.x;
sourceTree = "<group>";
};
8B362C8B26CC89290054CBCF /* public.sdk */ = {
isa = PBXGroup;
children = (
8B362C8C26CC89290054CBCF /* source */,
);
path = public.sdk;
sourceTree = "<group>";
};
8B362C8C26CC89290054CBCF /* source */ = {
isa = PBXGroup;
children = (
8B362C8D26CC89290054CBCF /* vst2.x */,
);
path = source;
sourceTree = "<group>";
};
8B362C8D26CC89290054CBCF /* vst2.x */ = {
isa = PBXGroup;
children = (
8B362C8E26CC89290054CBCF /* audioeffectx.h */,
8B362C8F26CC89290054CBCF /* audioeffect.cpp */,
8B362C9026CC89290054CBCF /* audioeffectx.cpp */,
8B362C9126CC89290054CBCF /* aeffeditor.h */,
8B362C9226CC89290054CBCF /* vstplugmain.cpp */,
8B362C9326CC89290054CBCF /* audioeffect.h */,
);
path = vst2.x;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8D01CCC70486CAD60068D4B7 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
8B362C9A26CC89290054CBCF /* aeffeditor.h in Headers */,
245463B90991757100464AD3 /* ZBandpass.h in Headers */,
8B362C9C26CC89290054CBCF /* audioeffect.h in Headers */,
8B362C9526CC89290054CBCF /* aeffect.h in Headers */,
24D8287F09A9164A0093AEF8 /* xcode_vst_prefix.h in Headers */,
8B362C9726CC89290054CBCF /* audioeffectx.h in Headers */,
8B362C9426CC89290054CBCF /* vstfxstore.h in Headers */,
8B362C9626CC89290054CBCF /* aeffectx.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8D01CCC60486CAD60068D4B7 /* ZBandpass */ = {
isa = PBXNativeTarget;
buildConfigurationList = 24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "ZBandpass" */;
buildPhases = (
8D01CCC70486CAD60068D4B7 /* Headers */,
8D01CCC90486CAD60068D4B7 /* Resources */,
8D01CCCB0486CAD60068D4B7 /* Sources */,
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */,
);
buildRules = (
);
dependencies = (
);
name = ZBandpass;
productInstallPath = "$(HOME)/Library/Bundles";
productName = "FM-Chopper";
productReference = 2407DE920899296600EB68BF /* ZBandpass.vst */;
productType = "com.apple.product-type.bundle";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
089C1669FE841209C02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1240;
};
buildConfigurationList = 24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "ZBandpass" */;
compatibilityVersion = "Xcode 2.4";
developmentRegion = en;
hasScannedForEncodings = 1;
knownRegions = (
Base,
ja,
de,
en,
fr,
);
mainGroup = 089C166AFE841209C02AAC07 /* FM-Chopper */;
projectDirPath = "";
projectRoot = "";
targets = (
8D01CCC60486CAD60068D4B7 /* ZBandpass */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
8D01CCC90486CAD60068D4B7 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
24CFB70407E7A0220081BD57 /* PkgInfo in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
24CFB70807E7A07C0081BD57 /* Copy PkgInfo */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Copy PkgInfo";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/bash;
shellScript = "cp mac/PkgInfo \"$BUILT_PRODUCTS_DIR/$PRODUCT_NAME.vst/Contents/\"";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8B362C9926CC89290054CBCF /* audioeffectx.cpp in Sources */,
2407DEB9089929BA00EB68BF /* ZBandpass.cpp in Sources */,
8B362C9826CC89290054CBCF /* audioeffect.cpp in Sources */,
8B362C9B26CC89290054CBCF /* vstplugmain.cpp in Sources */,
24D8287009A914000093AEF8 /* ZBandpassProc.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
24BEAAEE08919AE700E695F9 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = 9BMAKYA76W;
FRAMEWORK_SEARCH_PATHS = "";
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_TRIGRAPHS = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
GCC_MODEL_TUNING = "";
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "";
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = NO;
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
INFOPLIST_FILE = ./mac/Info.plist;
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
LIBRARY_SEARCH_PATHS = "";
MACOSX_DEPLOYMENT_TARGET = 11.1;
OTHER_CFLAGS = "";
OTHER_LDFLAGS = "";
OTHER_REZFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.ZBandpass;
PRODUCT_NAME = ZBandpass;
PROVISIONING_PROFILE_SPECIFIER = "";
SDKROOT = macosx;
SECTORDER_FLAGS = "";
STRIP_STYLE = debugging;
WARNING_CFLAGS = (
"-Wmost",
"-Wno-four-char-constants",
"-Wno-unknown-pragmas",
);
WRAPPER_EXTENSION = vst;
};
name = Debug;
};
24BEAAEF08919AE700E695F9 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ENABLE_OBJC_WEAK = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 9BMAKYA76W;
FRAMEWORK_SEARCH_PATHS = "";
GCC_C_LANGUAGE_STANDARD = c99;
GCC_ENABLE_TRIGRAPHS = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_OPTIMIZATION_LEVEL = s;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "";
GCC_WARN_ABOUT_MISSING_PROTOTYPES = NO;
GCC_WARN_FOUR_CHARACTER_CONSTANTS = NO;
GCC_WARN_UNKNOWN_PRAGMAS = NO;
HEADER_SEARCH_PATHS = "/Users/christopherjohnson/Desktop/vstsdk2.4/**";
INFOPLIST_FILE = ./mac/Info.plist;
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/VST";
LIBRARY_SEARCH_PATHS = "";
MACOSX_DEPLOYMENT_TARGET = 11.1;
OTHER_CFLAGS = "";
OTHER_LDFLAGS = "";
OTHER_REZFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = com.airwindows.ZBandpass;
PRODUCT_NAME = ZBandpass;
PROVISIONING_PROFILE_SPECIFIER = "";
SDKROOT = macosx;
SECTORDER_FLAGS = "";
SKIP_INSTALL = NO;
STRIP_INSTALLED_PRODUCT = YES;
STRIP_STYLE = debugging;
WARNING_CFLAGS = (
"-Wmost",
"-Wno-four-char-constants",
"-Wno-unknown-pragmas",
);
WRAPPER_EXTENSION = vst;
};
name = Release;
};
24BEAAF208919AE700E695F9 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_MODEL_TUNING = G5;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "";
INFOPLIST_PREPROCESS = NO;
MACOSX_DEPLOYMENT_TARGET = 11.1;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Debug;
};
24BEAAF308919AE700E695F9 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD)";
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = c99;
GCC_MODEL_TUNING = G4;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = s;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "";
INFOPLIST_PREPROCESS = NO;
MACOSX_DEPLOYMENT_TARGET = 11.1;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
24BEAAED08919AE700E695F9 /* Build configuration list for PBXNativeTarget "ZBandpass" */ = {
isa = XCConfigurationList;
buildConfigurations = (
24BEAAEE08919AE700E695F9 /* Debug */,
24BEAAEF08919AE700E695F9 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
24BEAAF108919AE700E695F9 /* Build configuration list for PBXProject "ZBandpass" */ = {
isa = XCConfigurationList;
buildConfigurations = (
24BEAAF208919AE700E695F9 /* Debug */,
24BEAAF308919AE700E695F9 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
/* End XCConfigurationList section */
};
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
}

View file

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:Sample.xcodeproj">
</FileRef>
</Workspace>

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,143 @@
// !$*UTF8*$!
{
089C1669FE841209C02AAC07 /* Project object */ = {
activeBuildConfigurationName = Release;
activeTarget = 8D01CCC60486CAD60068D4B7 /* Gain */;
codeSenseManager = 91857D95148EF55400AAA11B /* Code sense */;
perUserDictionary = {
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
829,
20,
48,
43,
43,
20,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
PBXFileDataSource_Target_ColumnID,
);
};
PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
789,
60,
20,
48,
43,
43,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXTargetDataSource_PrimaryAttribute,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 345089498;
PBXWorkspaceStateSaveDate = 345089498;
};
perUserProjectItems = {
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = 911C2A9D1491A5F600A430AF /* PBXTextBookmark */;
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = 915DCCBB1491A5B8008574E6 /* PBXTextBookmark */;
};
sourceControlManager = 91857D94148EF55400AAA11B /* Source Control */;
userBuildSettings = {
};
};
2407DEB6089929BA00EB68BF /* Gain.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {992, 1768}}";
sepNavSelRange = "{247, 0}";
sepNavVisRange = "{0, 1657}";
};
};
245463B80991757100464AD3 /* Gain.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {992, 975}}";
sepNavSelRange = "{1552, 0}";
sepNavVisRange = "{796, 1857}";
sepNavWindowFrame = "{{15, 465}, {750, 558}}";
};
};
24A2FF9A0F90D1DD003BB5A7 /* adelaymain.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {992, 488}}";
sepNavSelRange = "{0, 0}";
sepNavVisRange = "{0, 798}";
};
};
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {859, 19825}}";
sepNavSelRange = "{10641, 0}";
sepNavVisRange = "{10076, 1095}";
};
};
24D8286F09A914000093AEF8 /* GainProc.cpp */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {992, 482}}";
sepNavSelRange = "{239, 0}";
sepNavVisRange = "{0, 950}";
};
};
24D8287E09A9164A0093AEF8 /* xcode_vst_prefix.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {992, 493}}";
sepNavSelRange = "{249, 0}";
sepNavVisRange = "{0, 249}";
};
};
8D01CCC60486CAD60068D4B7 /* Gain */ = {
activeExec = 0;
};
911C2A9D1491A5F600A430AF /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
name = "Gain.cpp: 10";
rLen = 0;
rLoc = 247;
rType = 0;
vrLen = 1657;
vrLoc = 0;
};
915DCCBB1491A5B8008574E6 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 2407DEB6089929BA00EB68BF /* Gain.cpp */;
name = "Gain.cpp: 10";
rLen = 0;
rLoc = 247;
rType = 0;
vrLen = 1625;
vrLoc = 0;
};
91857D94148EF55400AAA11B /* Source Control */ = {
isa = PBXSourceControlManager;
fallbackIsa = XCSourceControlManager;
isSCMEnabled = 0;
scmConfiguration = {
repositoryNamesForRoots = {
"" = "";
};
};
};
91857D95148EF55400AAA11B /* Code sense */ = {
isa = PBXCodeSenseManager;
indexTemplatePath = "";
};
}

View file

@ -0,0 +1,67 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1240"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
BuildableName = "Gain.vst"
BlueprintName = "ZBandpass"
ReferencedContainer = "container:ZBandpass.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
</Testables>
</TestAction>
<LaunchAction
buildConfiguration = "Release"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
BuildableName = "Gain.vst"
BlueprintName = "ZBandpass"
ReferencedContainer = "container:ZBandpass.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>ZBandpass.xcscheme_^#shared#^_</key>
<dict>
<key>orderHint</key>
<integer>1</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>
<dict>
<key>8D01CCC60486CAD60068D4B7</key>
<dict>
<key>primary</key>
<true/>
</dict>
</dict>
</dict>
</plist>

View file

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>«PROJECTNAME».xcscheme</key>
<dict>
<key>orderHint</key>
<integer>0</integer>
</dict>
</dict>
<key>SuppressBuildableAutocreation</key>
<dict>
<key>8D01CCC60486CAD60068D4B7</key>
<dict>
<key>primary</key>
<true/>
</dict>
</dict>
</dict>
</plist>

View file

@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D01CCC60486CAD60068D4B7"
BuildableName = "&#171;PROJECTNAME&#187;.vst"
BlueprintName = "&#171;PROJECTNAME&#187;"
ReferencedContainer = "container:Sample.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Debug">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>ZBandpass</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleSignature</key>
<string>Dthr</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
</plist>

View file

@ -0,0 +1 @@
BNDL????

View file

@ -0,0 +1,17 @@
#define MAC 1
#define MACX 1
#define USE_NAMESPACE 0
#define TARGET_API_MAC_CARBON 1
#define USENAVSERVICES 1
#define __CF_USE_FRAMEWORK_INCLUDES__
#if __MWERKS__
#define __NOEXTENSIONS__
#endif
#define QUARTZ 1
#include <AvailabilityMacros.h>

View file

@ -0,0 +1,148 @@
/* ========================================
* ZBandpass - ZBandpass.h
* Copyright (c) 2016 airwindows, All rights reserved
* ======================================== */
#ifndef __ZBandpass_H
#include "ZBandpass.h"
#endif
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new ZBandpass(audioMaster);}
ZBandpass::ZBandpass(audioMasterCallback audioMaster) :
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
{
A = 0.16;
B = 0.5;
C = 1.0;
D = 0.5;
for (int x = 0; x < 15; x++) {biquadA[x] = 0.0; biquadB[x] = 0.0; biquadC[x] = 0.0; biquadD[x] = 0.0; biquadE[x] = 0.0; biquadF[x] = 0.0;}
iirSampleAL = 0.0;
iirSampleAR = 0.0;
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
//this is reset: values being initialized only once. Startup values, whatever they are.
_canDo.insert("plugAsChannelInsert"); // plug-in can be used as a channel insert effect.
_canDo.insert("plugAsSend"); // plug-in can be used as a send effect.
_canDo.insert("x2in2out");
setNumInputs(kNumInputs);
setNumOutputs(kNumOutputs);
setUniqueID(kUniqueId);
canProcessReplacing(); // supports output replacing
canDoubleReplacing(); // supports double precision processing
programsAreChunks(true);
vst_strncpy (_programName, "Default", kVstMaxProgNameLen); // default program name
}
ZBandpass::~ZBandpass() {}
VstInt32 ZBandpass::getVendorVersion () {return 1000;}
void ZBandpass::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
void ZBandpass::getProgramName(char *name) {vst_strncpy (name, _programName, kVstMaxProgNameLen);}
//airwindows likes to ignore this stuff. Make your own programs, and make a different plugin rather than
//trying to do versioning and preventing people from using older versions. Maybe they like the old one!
static float pinParameter(float data)
{
if (data < 0.0f) return 0.0f;
if (data > 1.0f) return 1.0f;
return data;
}
VstInt32 ZBandpass::getChunk (void** data, bool isPreset)
{
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
chunkData[0] = A;
chunkData[1] = B;
chunkData[2] = C;
chunkData[3] = D;
/* Note: The way this is set up, it will break if you manage to save settings on an Intel
machine and load them on a PPC Mac. However, it's fine if you stick to the machine you
started with. */
*data = chunkData;
return kNumParameters * sizeof(float);
}
VstInt32 ZBandpass::setChunk (void* data, VstInt32 byteSize, bool isPreset)
{
float *chunkData = (float *)data;
A = pinParameter(chunkData[0]);
B = pinParameter(chunkData[1]);
C = pinParameter(chunkData[2]);
D = pinParameter(chunkData[3]);
/* We're ignoring byteSize as we found it to be a filthy liar */
/* calculate any other fields you need here - you could copy in
code from setParameter() here. */
return 0;
}
void ZBandpass::setParameter(VstInt32 index, float value) {
switch (index) {
case kParamA: A = value; break;
case kParamB: B = value; break;
case kParamC: C = value; break;
case kParamD: D = value; break;
default: throw; // unknown parameter, shouldn't happen!
}
}
float ZBandpass::getParameter(VstInt32 index) {
switch (index) {
case kParamA: return A; break;
case kParamB: return B; break;
case kParamC: return C; break;
case kParamD: return D; break;
default: break; // unknown parameter, shouldn't happen!
} return 0.0; //we only need to update the relevant name, this is simple to manage
}
void ZBandpass::getParameterName(VstInt32 index, char *text) {
switch (index) {
case kParamA: vst_strncpy (text, "Input", kVstMaxParamStrLen); break;
case kParamB: vst_strncpy (text, "Freq", kVstMaxParamStrLen); break;
case kParamC: vst_strncpy (text, "Output", kVstMaxParamStrLen); break;
case kParamD: vst_strncpy (text, "Poles", kVstMaxParamStrLen); break;
default: break; // unknown parameter, shouldn't happen!
} //this is our labels for displaying in the VST host
}
void ZBandpass::getParameterDisplay(VstInt32 index, char *text) {
switch (index) {
case kParamA: float2string (A, text, kVstMaxParamStrLen); break;
case kParamB: float2string (B, text, kVstMaxParamStrLen); break;
case kParamC: float2string (C, text, kVstMaxParamStrLen); break;
case kParamD: float2string (D, text, kVstMaxParamStrLen); break;
default: break; // unknown parameter, shouldn't happen!
} //this displays the values and handles 'popups' where it's discrete choices
}
void ZBandpass::getParameterLabel(VstInt32 index, char *text) {
switch (index) {
case kParamA: vst_strncpy (text, "", kVstMaxParamStrLen); break;
case kParamB: vst_strncpy (text, "", kVstMaxParamStrLen); break;
case kParamC: vst_strncpy (text, "", kVstMaxParamStrLen); break;
case kParamD: vst_strncpy (text, "", kVstMaxParamStrLen); break;
default: break; // unknown parameter, shouldn't happen!
}
}
VstInt32 ZBandpass::canDo(char *text)
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
bool ZBandpass::getEffectName(char* name) {
vst_strncpy(name, "ZBandpass", kVstMaxProductStrLen); return true;
}
VstPlugCategory ZBandpass::getPlugCategory() {return kPlugCategEffect;}
bool ZBandpass::getProductString(char* text) {
vst_strncpy (text, "airwindows ZBandpass", kVstMaxProductStrLen); return true;
}
bool ZBandpass::getVendorString(char* text) {
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
}

View file

@ -0,0 +1,77 @@
/* ========================================
* ZBandpass - ZBandpass.h
* Created 8/12/11 by SPIAdmin
* Copyright (c) 2011 __MyCompanyName__, All rights reserved
* ======================================== */
#ifndef __ZBandpass_H
#define __ZBandpass_H
#ifndef __audioeffect__
#include "audioeffectx.h"
#endif
#include <set>
#include <string>
#include <math.h>
enum {
kParamA = 0,
kParamB = 1,
kParamC = 2,
kParamD = 3,
kNumParameters = 4
}; //
const int kNumPrograms = 0;
const int kNumInputs = 2;
const int kNumOutputs = 2;
const unsigned long kUniqueId = 'zbap'; //Change this to what the AU identity is!
class ZBandpass :
public AudioEffectX
{
public:
ZBandpass(audioMasterCallback audioMaster);
~ZBandpass();
virtual bool getEffectName(char* name); // The plug-in name
virtual VstPlugCategory getPlugCategory(); // The general category for the plug-in
virtual bool getProductString(char* text); // This is a unique plug-in string provided by Steinberg
virtual bool getVendorString(char* text); // Vendor info
virtual VstInt32 getVendorVersion(); // Version number
virtual void processReplacing (float** inputs, float** outputs, VstInt32 sampleFrames);
virtual void processDoubleReplacing (double** inputs, double** outputs, VstInt32 sampleFrames);
virtual void getProgramName(char *name); // read the name from the host
virtual void setProgramName(char *name); // changes the name of the preset displayed in the host
virtual VstInt32 getChunk (void** data, bool isPreset);
virtual VstInt32 setChunk (void* data, VstInt32 byteSize, bool isPreset);
virtual float getParameter(VstInt32 index); // get the parameter value at the specified index
virtual void setParameter(VstInt32 index, float value); // set the parameter at index to value
virtual void getParameterLabel(VstInt32 index, char *text); // label for the parameter (eg dB)
virtual void getParameterName(VstInt32 index, char *text); // name of the parameter
virtual void getParameterDisplay(VstInt32 index, char *text); // text description of the current value
virtual VstInt32 canDo(char *text);
private:
char _programName[kVstMaxProgNameLen + 1];
std::set< std::string > _canDo;
long double biquadA[15];
long double biquadB[15];
long double biquadC[15];
long double biquadD[15];
long double biquadE[15];
long double biquadF[15];
long double iirSampleAL;
long double iirSampleAR;
uint32_t fpdL;
uint32_t fpdR;
//default stuff
float A;
float B;
float C;
float D;
};
#endif

View file

@ -0,0 +1,390 @@
/* ========================================
* ZBandpass - ZBandpass.h
* Copyright (c) 2016 airwindows, All rights reserved
* ======================================== */
#ifndef __ZBandpass_H
#include "ZBandpass.h"
#endif
void ZBandpass::processReplacing(float **inputs, float **outputs, VstInt32 sampleFrames)
{
float* in1 = inputs[0];
float* in2 = inputs[1];
float* out1 = outputs[0];
float* out2 = outputs[1];
double overallscale = 1.0;
overallscale /= 44100.0;
overallscale *= getSampleRate();
biquadA[0] = ((pow(B,4)*14300.0)/getSampleRate())+0.00079;
double clipFactor = 1.0 - ((1.0 - B)*0.304);
biquadA[1] = 0.314;
double K = tan(M_PI * biquadA[0]);
double norm = 1.0 / (1.0 + K / biquadA[1] + K * K);
biquadA[2] = K / biquadA[1] * norm;
biquadA[3] = 0.0; //bandpass can simplify the biquad kernel: leave out this multiply
biquadA[4] = -biquadA[2];
biquadA[5] = 2.0 * (K * K - 1.0) * norm;
biquadA[6] = (1.0 - K / biquadA[1] + K * K) * norm;
for (int x = 0; x < 7; x++) biquadD[x] = biquadC[x] = biquadB[x] = biquadA[x];
//opamp stuff
double inTrim = A*10.0;
inTrim *= inTrim; inTrim *= inTrim;
double outPad = C;
double iirAmountA = 0.00069/overallscale;
biquadF[0] = biquadE[0] = 15500.0 / getSampleRate();
biquadF[1] = biquadE[1] = 0.935;
K = tan(M_PI * biquadE[0]); //lowpass
norm = 1.0 / (1.0 + K / biquadE[1] + K * K);
biquadE[2] = K * K * norm;
biquadE[3] = 2.0 * biquadE[2];
biquadE[4] = biquadE[2];
biquadE[5] = 2.0 * (K * K - 1.0) * norm;
biquadE[6] = (1.0 - K / biquadE[1] + K * K) * norm;
for (int x = 0; x < 7; x++) biquadF[x] = biquadE[x];
//end opamp stuff
double trim = 0.1+(3.712*biquadA[0]);
double wet = pow(D,2);
double aWet = 1.0;
double bWet = 1.0;
double cWet = 1.0;
double dWet = wet*4.0;
//four-stage wet/dry control using progressive stages that bypass when not engaged
if (dWet < 1.0) {aWet = dWet; bWet = 0.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 2.0) {bWet = dWet - 1.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 3.0) {cWet = dWet - 2.0; dWet = 0.0;}
else {dWet -= 3.0;}
//this is one way to make a little set of dry/wet stages that are successively added to the
//output as the control is turned up. Each one independently goes from 0-1 and stays at 1
//beyond that point: this is a way to progressively add a 'black box' sound processing
//which lets you fall through to simpler processing at lower settings.
long double outSample = 0.0;
while (--sampleFrames >= 0)
{
long double inputSampleL = *in1;
long double inputSampleR = *in2;
if (fabs(inputSampleL)<1.18e-37) inputSampleL = fpdL * 1.18e-37;
if (fabs(inputSampleR)<1.18e-37) inputSampleR = fpdR * 1.18e-37;
long double drySampleL = inputSampleL;
long double drySampleR = inputSampleR;
long double overallDrySampleL = drySampleL;
long double overallDrySampleR = drySampleR;
if (inTrim != 1.0) {inputSampleL *= inTrim; inputSampleR *= inTrim;}
if (inputSampleL > 1.0) inputSampleL = 1.0; if (inputSampleL < -1.0) inputSampleL = -1.0;
if (inputSampleR > 1.0) inputSampleR = 1.0; if (inputSampleR < -1.0) inputSampleR = -1.0;
inputSampleL *= trim; inputSampleR *= trim;
outSample = biquadA[2]*inputSampleL+biquadA[3]*biquadA[7]+biquadA[4]*biquadA[8]-biquadA[5]*biquadA[9]-biquadA[6]*biquadA[10];
biquadA[8] = biquadA[7]; biquadA[7] = inputSampleL; biquadA[10] = biquadA[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
drySampleL = inputSampleL = biquadA[9] = outSample; //DF1
outSample = biquadA[2]*inputSampleR+biquadA[3]*biquadA[11]+biquadA[4]*biquadA[12]-biquadA[5]*biquadA[13]-biquadA[6]*biquadA[14];
biquadA[12] = biquadA[11]; biquadA[11] = inputSampleR; biquadA[14] = biquadA[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
drySampleR = inputSampleR = biquadA[13] = outSample; //DF1
if (bWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadB[2]*inputSampleL+biquadB[3]*biquadB[7]+biquadB[4]*biquadB[8]-biquadB[5]*biquadB[9]-biquadB[6]*biquadB[10];
biquadB[8] = biquadB[7]; biquadB[7] = inputSampleL; biquadB[10] = biquadB[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadB[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * bWet) + (drySampleL * (1.0-bWet));
inputSampleR /= clipFactor;
outSample = biquadB[2]*inputSampleR+biquadB[3]*biquadB[11]+biquadB[4]*biquadB[12]-biquadB[5]*biquadB[13]-biquadB[6]*biquadB[14];
biquadB[12] = biquadB[11]; biquadB[11] = inputSampleR; biquadB[14] = biquadB[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadB[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * bWet) + (drySampleR * (1.0-bWet));
}
if (cWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadC[2]*inputSampleL+biquadC[3]*biquadC[7]+biquadC[4]*biquadC[8]-biquadC[5]*biquadC[9]-biquadC[6]*biquadC[10];
biquadC[8] = biquadC[7]; biquadC[7] = inputSampleL; biquadC[10] = biquadC[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadC[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * cWet) + (drySampleL * (1.0-cWet));
inputSampleR /= clipFactor;
outSample = biquadC[2]*inputSampleR+biquadC[3]*biquadC[11]+biquadC[4]*biquadC[12]-biquadC[5]*biquadC[13]-biquadC[6]*biquadC[14];
biquadC[12] = biquadC[11]; biquadC[11] = inputSampleR; biquadC[14] = biquadC[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadC[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * cWet) + (drySampleR * (1.0-cWet));
}
if (dWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadD[2]*inputSampleL+biquadD[3]*biquadD[7]+biquadD[4]*biquadD[8]-biquadD[5]*biquadD[9]-biquadD[6]*biquadD[10];
biquadD[8] = biquadD[7]; biquadD[7] = inputSampleL; biquadD[10] = biquadD[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadD[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * dWet) + (drySampleL * (1.0-dWet));
inputSampleR /= clipFactor;
outSample = biquadD[2]*inputSampleR+biquadD[3]*biquadD[11]+biquadD[4]*biquadD[12]-biquadD[5]*biquadD[13]-biquadD[6]*biquadD[14];
biquadD[12] = biquadD[11]; biquadD[11] = inputSampleR; biquadD[14] = biquadD[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadD[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * dWet) + (drySampleR * (1.0-dWet));
}
inputSampleL /= clipFactor; inputSampleR /= clipFactor;
//opamp stage
if (fabs(iirSampleAL)<1.18e-37) iirSampleAL = 0.0;
iirSampleAL = (iirSampleAL * (1.0 - iirAmountA)) + (inputSampleL * iirAmountA);
inputSampleL -= iirSampleAL;
if (fabs(iirSampleAR)<1.18e-37) iirSampleAR = 0.0;
iirSampleAR = (iirSampleAR * (1.0 - iirAmountA)) + (inputSampleR * iirAmountA);
inputSampleR -= iirSampleAR;
outSample = biquadE[2]*inputSampleL+biquadE[3]*biquadE[7]+biquadE[4]*biquadE[8]-biquadE[5]*biquadE[9]-biquadE[6]*biquadE[10];
biquadE[8] = biquadE[7]; biquadE[7] = inputSampleL; inputSampleL = outSample; biquadE[10] = biquadE[9]; biquadE[9] = inputSampleL; //DF1 left
outSample = biquadE[2]*inputSampleR+biquadE[3]*biquadE[11]+biquadE[4]*biquadE[12]-biquadE[5]*biquadE[13]-biquadE[6]*biquadE[14];
biquadE[12] = biquadE[11]; biquadE[11] = inputSampleR; inputSampleR = outSample; biquadE[14] = biquadE[13]; biquadE[13] = inputSampleR; //DF1 right
if (inputSampleL > 1.0) inputSampleL = 1.0; if (inputSampleL < -1.0) inputSampleL = -1.0;
inputSampleL -= (inputSampleL*inputSampleL*inputSampleL*inputSampleL*inputSampleL*0.1768);
if (inputSampleR > 1.0) inputSampleR = 1.0; if (inputSampleR < -1.0) inputSampleR = -1.0;
inputSampleR -= (inputSampleR*inputSampleR*inputSampleR*inputSampleR*inputSampleR*0.1768);
outSample = biquadF[2]*inputSampleL+biquadF[3]*biquadF[7]+biquadF[4]*biquadF[8]-biquadF[5]*biquadF[9]-biquadF[6]*biquadF[10];
biquadF[8] = biquadF[7]; biquadF[7] = inputSampleL; inputSampleL = outSample; biquadF[10] = biquadF[9]; biquadF[9] = inputSampleL; //DF1 left
outSample = biquadF[2]*inputSampleR+biquadF[3]*biquadF[11]+biquadF[4]*biquadF[12]-biquadF[5]*biquadF[13]-biquadF[6]*biquadF[14];
biquadF[12] = biquadF[11]; biquadF[11] = inputSampleR; inputSampleR = outSample; biquadF[14] = biquadF[13]; biquadF[13] = inputSampleR; //DF1 right
if (outPad != 1.0) {inputSampleL *= outPad; inputSampleR *= outPad;}
//end opamp stage
if (aWet !=1.0) {
inputSampleL = (inputSampleL * aWet) + (overallDrySampleL * (1.0-aWet));
inputSampleR = (inputSampleR * aWet) + (overallDrySampleR * (1.0-aWet));
}
//begin 32 bit stereo floating point dither
int expon; frexpf((float)inputSampleL, &expon);
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
frexpf((float)inputSampleR, &expon);
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 5.5e-36l * pow(2,expon+62));
//end 32 bit stereo floating point dither
*out1 = inputSampleL;
*out2 = inputSampleR;
in1++;
in2++;
out1++;
out2++;
}
}
void ZBandpass::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sampleFrames)
{
double* in1 = inputs[0];
double* in2 = inputs[1];
double* out1 = outputs[0];
double* out2 = outputs[1];
double overallscale = 1.0;
overallscale /= 44100.0;
overallscale *= getSampleRate();
biquadA[0] = ((pow(B,4)*14300.0)/getSampleRate())+0.00079;
double clipFactor = 1.0 - ((1.0 - B)*0.304);
biquadA[1] = 0.314;
double K = tan(M_PI * biquadA[0]);
double norm = 1.0 / (1.0 + K / biquadA[1] + K * K);
biquadA[2] = K / biquadA[1] * norm;
biquadA[3] = 0.0; //bandpass can simplify the biquad kernel: leave out this multiply
biquadA[4] = -biquadA[2];
biquadA[5] = 2.0 * (K * K - 1.0) * norm;
biquadA[6] = (1.0 - K / biquadA[1] + K * K) * norm;
for (int x = 0; x < 7; x++) biquadD[x] = biquadC[x] = biquadB[x] = biquadA[x];
//opamp stuff
double inTrim = A*10.0;
inTrim *= inTrim; inTrim *= inTrim;
double outPad = C;
double iirAmountA = 0.00069/overallscale;
biquadF[0] = biquadE[0] = 15500.0 / getSampleRate();
biquadF[1] = biquadE[1] = 0.935;
K = tan(M_PI * biquadE[0]); //lowpass
norm = 1.0 / (1.0 + K / biquadE[1] + K * K);
biquadE[2] = K * K * norm;
biquadE[3] = 2.0 * biquadE[2];
biquadE[4] = biquadE[2];
biquadE[5] = 2.0 * (K * K - 1.0) * norm;
biquadE[6] = (1.0 - K / biquadE[1] + K * K) * norm;
for (int x = 0; x < 7; x++) biquadF[x] = biquadE[x];
//end opamp stuff
double trim = 0.1+(3.712*biquadA[0]);
double wet = pow(D,2);
double aWet = 1.0;
double bWet = 1.0;
double cWet = 1.0;
double dWet = wet*4.0;
//four-stage wet/dry control using progressive stages that bypass when not engaged
if (dWet < 1.0) {aWet = dWet; bWet = 0.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 2.0) {bWet = dWet - 1.0; cWet = 0.0; dWet = 0.0;}
else if (dWet < 3.0) {cWet = dWet - 2.0; dWet = 0.0;}
else {dWet -= 3.0;}
//this is one way to make a little set of dry/wet stages that are successively added to the
//output as the control is turned up. Each one independently goes from 0-1 and stays at 1
//beyond that point: this is a way to progressively add a 'black box' sound processing
//which lets you fall through to simpler processing at lower settings.
long double outSample = 0.0;
while (--sampleFrames >= 0)
{
long double inputSampleL = *in1;
long double inputSampleR = *in2;
if (fabs(inputSampleL)<1.18e-43) inputSampleL = fpdL * 1.18e-43;
if (fabs(inputSampleR)<1.18e-43) inputSampleR = fpdR * 1.18e-43;
long double drySampleL = inputSampleL;
long double drySampleR = inputSampleR;
long double overallDrySampleL = drySampleL;
long double overallDrySampleR = drySampleR;
if (inTrim != 1.0) {inputSampleL *= inTrim; inputSampleR *= inTrim;}
if (inputSampleL > 1.0) inputSampleL = 1.0; if (inputSampleL < -1.0) inputSampleL = -1.0;
if (inputSampleR > 1.0) inputSampleR = 1.0; if (inputSampleR < -1.0) inputSampleR = -1.0;
inputSampleL *= trim; inputSampleR *= trim;
outSample = biquadA[2]*inputSampleL+biquadA[3]*biquadA[7]+biquadA[4]*biquadA[8]-biquadA[5]*biquadA[9]-biquadA[6]*biquadA[10];
biquadA[8] = biquadA[7]; biquadA[7] = inputSampleL; biquadA[10] = biquadA[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
drySampleL = inputSampleL = biquadA[9] = outSample; //DF1
outSample = biquadA[2]*inputSampleR+biquadA[3]*biquadA[11]+biquadA[4]*biquadA[12]-biquadA[5]*biquadA[13]-biquadA[6]*biquadA[14];
biquadA[12] = biquadA[11]; biquadA[11] = inputSampleR; biquadA[14] = biquadA[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
drySampleR = inputSampleR = biquadA[13] = outSample; //DF1
if (bWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadB[2]*inputSampleL+biquadB[3]*biquadB[7]+biquadB[4]*biquadB[8]-biquadB[5]*biquadB[9]-biquadB[6]*biquadB[10];
biquadB[8] = biquadB[7]; biquadB[7] = inputSampleL; biquadB[10] = biquadB[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadB[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * bWet) + (drySampleL * (1.0-bWet));
inputSampleR /= clipFactor;
outSample = biquadB[2]*inputSampleR+biquadB[3]*biquadB[11]+biquadB[4]*biquadB[12]-biquadB[5]*biquadB[13]-biquadB[6]*biquadB[14];
biquadB[12] = biquadB[11]; biquadB[11] = inputSampleR; biquadB[14] = biquadB[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadB[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * bWet) + (drySampleR * (1.0-bWet));
}
if (cWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadC[2]*inputSampleL+biquadC[3]*biquadC[7]+biquadC[4]*biquadC[8]-biquadC[5]*biquadC[9]-biquadC[6]*biquadC[10];
biquadC[8] = biquadC[7]; biquadC[7] = inputSampleL; biquadC[10] = biquadC[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadC[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * cWet) + (drySampleL * (1.0-cWet));
inputSampleR /= clipFactor;
outSample = biquadC[2]*inputSampleR+biquadC[3]*biquadC[11]+biquadC[4]*biquadC[12]-biquadC[5]*biquadC[13]-biquadC[6]*biquadC[14];
biquadC[12] = biquadC[11]; biquadC[11] = inputSampleR; biquadC[14] = biquadC[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadC[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * cWet) + (drySampleR * (1.0-cWet));
}
if (dWet > 0.0) {
inputSampleL /= clipFactor;
outSample = biquadD[2]*inputSampleL+biquadD[3]*biquadD[7]+biquadD[4]*biquadD[8]-biquadD[5]*biquadD[9]-biquadD[6]*biquadD[10];
biquadD[8] = biquadD[7]; biquadD[7] = inputSampleL; biquadD[10] = biquadD[9];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadD[9] = outSample; //DF1
drySampleL = inputSampleL = (outSample * dWet) + (drySampleL * (1.0-dWet));
inputSampleR /= clipFactor;
outSample = biquadD[2]*inputSampleR+biquadD[3]*biquadD[11]+biquadD[4]*biquadD[12]-biquadD[5]*biquadD[13]-biquadD[6]*biquadD[14];
biquadD[12] = biquadD[11]; biquadD[11] = inputSampleR; biquadD[14] = biquadD[13];
if (outSample > 1.0) outSample = 1.0;
if (outSample < -1.0) outSample = -1.0;
biquadD[13] = outSample; //DF1
drySampleR = inputSampleR = (outSample * dWet) + (drySampleR * (1.0-dWet));
}
inputSampleL /= clipFactor; inputSampleR /= clipFactor;
//opamp stage
if (fabs(iirSampleAL)<1.18e-37) iirSampleAL = 0.0;
iirSampleAL = (iirSampleAL * (1.0 - iirAmountA)) + (inputSampleL * iirAmountA);
inputSampleL -= iirSampleAL;
if (fabs(iirSampleAR)<1.18e-37) iirSampleAR = 0.0;
iirSampleAR = (iirSampleAR * (1.0 - iirAmountA)) + (inputSampleR * iirAmountA);
inputSampleR -= iirSampleAR;
outSample = biquadE[2]*inputSampleL+biquadE[3]*biquadE[7]+biquadE[4]*biquadE[8]-biquadE[5]*biquadE[9]-biquadE[6]*biquadE[10];
biquadE[8] = biquadE[7]; biquadE[7] = inputSampleL; inputSampleL = outSample; biquadE[10] = biquadE[9]; biquadE[9] = inputSampleL; //DF1 left
outSample = biquadE[2]*inputSampleR+biquadE[3]*biquadE[11]+biquadE[4]*biquadE[12]-biquadE[5]*biquadE[13]-biquadE[6]*biquadE[14];
biquadE[12] = biquadE[11]; biquadE[11] = inputSampleR; inputSampleR = outSample; biquadE[14] = biquadE[13]; biquadE[13] = inputSampleR; //DF1 right
if (inputSampleL > 1.0) inputSampleL = 1.0; if (inputSampleL < -1.0) inputSampleL = -1.0;
inputSampleL -= (inputSampleL*inputSampleL*inputSampleL*inputSampleL*inputSampleL*0.1768);
if (inputSampleR > 1.0) inputSampleR = 1.0; if (inputSampleR < -1.0) inputSampleR = -1.0;
inputSampleR -= (inputSampleR*inputSampleR*inputSampleR*inputSampleR*inputSampleR*0.1768);
outSample = biquadF[2]*inputSampleL+biquadF[3]*biquadF[7]+biquadF[4]*biquadF[8]-biquadF[5]*biquadF[9]-biquadF[6]*biquadF[10];
biquadF[8] = biquadF[7]; biquadF[7] = inputSampleL; inputSampleL = outSample; biquadF[10] = biquadF[9]; biquadF[9] = inputSampleL; //DF1 left
outSample = biquadF[2]*inputSampleR+biquadF[3]*biquadF[11]+biquadF[4]*biquadF[12]-biquadF[5]*biquadF[13]-biquadF[6]*biquadF[14];
biquadF[12] = biquadF[11]; biquadF[11] = inputSampleR; inputSampleR = outSample; biquadF[14] = biquadF[13]; biquadF[13] = inputSampleR; //DF1 right
if (outPad != 1.0) {inputSampleL *= outPad; inputSampleR *= outPad;}
//end opamp stage
if (aWet !=1.0) {
inputSampleL = (inputSampleL * aWet) + (overallDrySampleL * (1.0-aWet));
inputSampleR = (inputSampleR * aWet) + (overallDrySampleR * (1.0-aWet));
}
//begin 64 bit stereo floating point dither
int expon; frexp((double)inputSampleL, &expon);
fpdL ^= fpdL << 13; fpdL ^= fpdL >> 17; fpdL ^= fpdL << 5;
inputSampleL += ((double(fpdL)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
frexp((double)inputSampleR, &expon);
fpdR ^= fpdR << 13; fpdR ^= fpdR >> 17; fpdR ^= fpdR << 5;
inputSampleR += ((double(fpdR)-uint32_t(0x7fffffff)) * 1.1e-44l * pow(2,expon+62));
//end 64 bit stereo floating point dither
*out1 = inputSampleL;
*out2 = inputSampleR;
in1++;
in2++;
out1++;
out2++;
}
}