mirror of
https://github.com/airwindows/airwindows.git
synced 2026-05-15 14:16:00 -06:00
Donut
This commit is contained in:
parent
198d0ac4f9
commit
36106b0088
221 changed files with 46887 additions and 6636 deletions
|
|
@ -29,7 +29,7 @@ Dynamics: Dynamics2, Pressure6, BeziComp, Pop3, Pop2, Pressure5, StoneFireComp,
|
|||
|
||||
Effects: TakeCare, RingModulator, Dubly3, Dubly2, GalacticVibe, CloudCoat, Disintegrate, Fracture2, Dubly, Pafnuty2, PitchNasty, Trianglizer, ShortBuss, GuitarConditioner, Aura, TremoSquare, Tremolo, GlitchShifter, Gringer, Exciter, Energy2, Energy, Facet, Fracture, PowerSag2, PowerSag, Preponderant, Nikola
|
||||
|
||||
Filter: SmoothEQ3, PearEQ, FatEQ, SmoothEQ2, BezEQ2, SmoothEQ, Parametric, Silken, Stonefire, AngleEQ, AngleFilter, Isolator3, BezEQ, Baxandall2, Pear2, Capacitor2, Distance3, Pear, ResEQ2, SubTight, CStrip2, Weight, Isolator2, Kalman, PrimeFIR, Holt2, Holt, ToneSlant, AverMatrix, Average, MackEQ, Hull2, Baxandall, Hull, EQ, Capacitor, Isolator, TapeFat, ResEQ, Lowpass2, Highpass2, Distance, Distance2, Lowpass, Highpass
|
||||
Filter: SmoothEQ3, PearEQ, FatEQ, SmoothEQ2, BezEQ2, SmoothEQ, Parametric, Donut, Silken, Stonefire, AngleEQ, AngleFilter, Isolator3, BezEQ, Baxandall2, Pear2, Capacitor2, Distance3, Pear, ResEQ2, SubTight, CStrip2, Weight, Isolator2, Kalman, PrimeFIR, Holt2, Holt, ToneSlant, AverMatrix, Average, MackEQ, Hull2, Baxandall, Hull, EQ, Capacitor, Isolator, TapeFat, ResEQ, Lowpass2, Highpass2, Distance, Distance2, Lowpass, Highpass
|
||||
|
||||
Lo-Fi: DeBez, HipCrush, Flutter2, DeRez3, Pockey2, CrunchyGrooveWear, GrooveWear, Pockey, Flutter, DeRez2, BitGlitter, DeRez, TapeBias, ChromeOxide, Cojones, Vibrato, Bite, Deckwrecka, DustBunny
|
||||
|
||||
|
|
@ -2118,6 +2118,24 @@ And there’s nothing else like it… and it’s yours. Enjoy :)
|
|||
|
||||
Note: there is a more sophisticated version of this behavior in Airwindows Dark. The difference is, Dither Me Timbers only looks for a tiny micro-environment, within three samples. Dark extrapolates outward to work out which option will best make the WHOLE sound darker, not just a tiny three-sample area.
|
||||
|
||||
############ Donut is in memory of Dilla.
|
||||
|
||||
The main reason for this plugin is, one of my livestream people has wanted it for a long time. I'm hoping this brings him joy?
|
||||
|
||||
Thing is, I've made a plugin in the SPIRIT of what I hear in Dilla, not a clone of a particular effect he may or may not have used on various things. And so, I believe this can be set up to do numerous things you've heard Dilla do… but also, I took pains to help it do other stuff I heard, and it kinda went on from there.
|
||||
|
||||
This is basically an envelope follower. It's like my newest compressor plugin (as in, not out by itself yet but the one that's in ConsoleH and ConsoleX2), but instead of modulating volume, it modulates a lowpass filter. Except it's not just 'a lowpass filter', it's me trying out a very popular version of those filters known as a state variable filter, and doing some experiments with it which I don't know how common they are, but I loved the sound I got when I did them. The filter will come out by itself too, it's called Dattorro after the guy who wrote it into a textbook, and it's going to do interesting things like help me make a formant filter, later.
|
||||
|
||||
But the way it works NOW is, you've got the compressor (a Bezier-filter compressor, so it doesn't have attack speed artifacts) with an attack speed that basically has it act like the original BeziComp, and then a release speed that lets you slow it right down. If you want to hear where it's at, you can turn the resonance up until it's basically just a wavering note.
|
||||
|
||||
Then, there's a filter cutoff, a resonance control, and two more sliders just below those which modulate them according to the envelope, and that's it.
|
||||
|
||||
If you put the filter in the middle, you can see that the modulator is at zero when in the center. So you can subtract the envelope, OR add it. Same with the resonance. My hope is that this can get you some neat effects, perhaps using Dilla-esque techniques like splitting the tracks and applying this real aggressively to only certain parts. In no way is it a 'push butan for dilla FX', my hope is that it's flexible enough to do a wide range of things with. Remember, if you use a very slow attack and fast release it's more of a BeziComp response, very wiggly.
|
||||
|
||||
Part of what I found was that Dilla, I think, liked to run stuff into his Moog to process. Donut can do some of that: sweep it low and give it the right amount of resonance and it ought to resynthesize bass real well. It should handle automation nicely: state variable filters are better at that than, for instance, biquads. This is not the steepest of filters, but I set it up to have tone while reshaping things.
|
||||
|
||||
I hope you like Donut! I have many things to put out but I can put out Dattorro too, if you like. That one comes with debugged versions of the original SVF code (which didn't work perfectly right out of the box, but has more options than I use here)
|
||||
|
||||
############ Doublelay is StereoDoubler with independent delays and feedback.
|
||||
|
||||
This one was a request: I have a weakness for doing plugins for folks who worked on records I grew up listening to on vinyl. So often we recognize only the rock stars, but the guys behind the desks do so much to help the magic happen. And this plugin is there to bring the magic. It was a GREAT suggestion.
|
||||
|
|
|
|||
|
|
@ -172,6 +172,7 @@ add_airwindows_plugin(Distance)
|
|||
add_airwindows_plugin(Distance2)
|
||||
add_airwindows_plugin(Distance3)
|
||||
add_airwindows_plugin(Distortion)
|
||||
add_airwindows_plugin(Donut)
|
||||
add_airwindows_plugin(Doublelay)
|
||||
add_airwindows_plugin(DoublePaul)
|
||||
add_airwindows_plugin(Ditherbox)
|
||||
|
|
@ -481,6 +482,7 @@ add_airwindows_plugin(VoiceTrick)
|
|||
add_airwindows_plugin(Weight)
|
||||
add_airwindows_plugin(Wider)
|
||||
add_airwindows_plugin(Wolfbot)
|
||||
add_airwindows_plugin(WoodenBox)
|
||||
add_airwindows_plugin(X2Buss)
|
||||
add_airwindows_plugin(XBandpass)
|
||||
add_airwindows_plugin(XHighpass)
|
||||
|
|
|
|||
175
plugins/LinuxVST/src/Donut/Donut.cpp
Executable file
175
plugins/LinuxVST/src/Donut/Donut.cpp
Executable file
|
|
@ -0,0 +1,175 @@
|
|||
/* ========================================
|
||||
* Donut - Donut.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __Donut_H
|
||||
#include "Donut.h"
|
||||
#endif
|
||||
|
||||
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new Donut(audioMaster);}
|
||||
|
||||
Donut::Donut(audioMasterCallback audioMaster) :
|
||||
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
|
||||
{
|
||||
A = 0.5;
|
||||
B = 0.5;
|
||||
C = 1.0;
|
||||
D = 0.5;
|
||||
E = 0.0;
|
||||
F = 0.5;
|
||||
G = 1.0;
|
||||
|
||||
for (int x = 0; x < bez_total; x++) {bezCompL[x] = 0.0; bezCompR[x] = 0.0;}
|
||||
bezCompL[bez_cycle] = 1.0; bezCompR[bez_cycle] = 1.0; bezMinL = 0.0; bezMinR = 0.0;
|
||||
lowL = bandL = lowR = bandR = 0.0;
|
||||
freqA = freqB = 0.5;
|
||||
resoA = resoB = 0.5;
|
||||
outA = outB = 1.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
|
||||
}
|
||||
|
||||
Donut::~Donut() {}
|
||||
VstInt32 Donut::getVendorVersion () {return 1000;}
|
||||
void Donut::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
|
||||
void Donut::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 Donut::getChunk (void** data, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
|
||||
chunkData[0] = A;
|
||||
chunkData[1] = B;
|
||||
chunkData[2] = C;
|
||||
chunkData[3] = D;
|
||||
chunkData[4] = E;
|
||||
chunkData[5] = F;
|
||||
chunkData[6] = G;
|
||||
/* 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 Donut::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]);
|
||||
E = pinParameter(chunkData[4]);
|
||||
F = pinParameter(chunkData[5]);
|
||||
G = pinParameter(chunkData[6]);
|
||||
/* 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 Donut::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;
|
||||
case kParamE: E = value; break;
|
||||
case kParamF: F = value; break;
|
||||
case kParamG: G = value; break;
|
||||
default: throw; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
float Donut::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;
|
||||
case kParamE: return E; break;
|
||||
case kParamF: return F; break;
|
||||
case kParamG: return G; 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 Donut::getParameterName(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "Attack", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "Release", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "BaseFrq", kVstMaxParamStrLen); break;
|
||||
case kParamD: vst_strncpy (text, "MoveFrq", kVstMaxParamStrLen); break;
|
||||
case kParamE: vst_strncpy (text, "BaseRes", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "MoveRes", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "Output", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this is our labels for displaying in the VST host
|
||||
}
|
||||
|
||||
void Donut::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;
|
||||
case kParamE: float2string (E, text, kVstMaxParamStrLen); break;
|
||||
case kParamF: float2string (F, text, kVstMaxParamStrLen); break;
|
||||
case kParamG: float2string (G, text, kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this displays the values and handles 'popups' where it's discrete choices
|
||||
}
|
||||
|
||||
void Donut::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;
|
||||
case kParamE: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamF: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
case kParamG: vst_strncpy (text, "", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
VstInt32 Donut::canDo(char *text)
|
||||
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
|
||||
|
||||
bool Donut::getEffectName(char* name) {
|
||||
vst_strncpy(name, "Donut", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
VstPlugCategory Donut::getPlugCategory() {return kPlugCategEffect;}
|
||||
|
||||
bool Donut::getProductString(char* text) {
|
||||
vst_strncpy (text, "airwindows Donut", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
bool Donut::getVendorString(char* text) {
|
||||
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
|
||||
}
|
||||
91
plugins/LinuxVST/src/Donut/Donut.h
Executable file
91
plugins/LinuxVST/src/Donut/Donut.h
Executable file
|
|
@ -0,0 +1,91 @@
|
|||
/* ========================================
|
||||
* Donut - Donut.h
|
||||
* Created 8/12/11 by SPIAdmin
|
||||
* Copyright (c) Airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __Donut_H
|
||||
#define __Donut_H
|
||||
|
||||
#ifndef __audioeffect__
|
||||
#include "audioeffectx.h"
|
||||
#endif
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
enum {
|
||||
kParamA =0,
|
||||
kParamB =1,
|
||||
kParamC =2,
|
||||
kParamD =3,
|
||||
kParamE =4,
|
||||
kParamF =5,
|
||||
kParamG =6,
|
||||
kNumParameters = 7
|
||||
}; //
|
||||
|
||||
const int kNumPrograms = 0;
|
||||
const int kNumInputs = 2;
|
||||
const int kNumOutputs = 2;
|
||||
const unsigned long kUniqueId = 'donu'; //Change this to what the AU identity is!
|
||||
|
||||
class Donut :
|
||||
public AudioEffectX
|
||||
{
|
||||
public:
|
||||
Donut(audioMasterCallback audioMaster);
|
||||
~Donut();
|
||||
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;
|
||||
|
||||
float A;
|
||||
float B;
|
||||
float C;
|
||||
float D;
|
||||
float E;
|
||||
float F;
|
||||
float G;
|
||||
|
||||
enum {
|
||||
bez_A,
|
||||
bez_B,
|
||||
bez_C,
|
||||
bez_Ctrl,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bezCompL[bez_total];
|
||||
double bezCompR[bez_total];
|
||||
double bezMinL, bezMinR;
|
||||
double lowL, lowR;
|
||||
double bandL, bandR;
|
||||
double freqA, freqB;
|
||||
double resoA, resoB;
|
||||
double outA, outB;
|
||||
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
//default stuff
|
||||
};
|
||||
|
||||
#endif
|
||||
194
plugins/LinuxVST/src/Donut/DonutProc.cpp
Executable file
194
plugins/LinuxVST/src/Donut/DonutProc.cpp
Executable file
|
|
@ -0,0 +1,194 @@
|
|||
/* ========================================
|
||||
* Donut - Donut.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __Donut_H
|
||||
#include "Donut.h"
|
||||
#endif
|
||||
|
||||
void Donut::processReplacing(float **inputs, float **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
float* in1 = inputs[0];
|
||||
float* in2 = inputs[1];
|
||||
float* out1 = outputs[0];
|
||||
float* out2 = outputs[1];
|
||||
|
||||
VstInt32 inFramesToProcess = sampleFrames; //vst doesn't give us this as a separate variable so we'll make it
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= getSampleRate();
|
||||
|
||||
double bezRez = pow(1.0-A, 6.0) / overallscale;
|
||||
double sloRez = pow(1.0-B, 6.0) / overallscale;
|
||||
bezRez = fmin(fmax(bezRez,0.00001),1.0);
|
||||
sloRez = fmin(fmax(sloRez,0.00001),1.0);
|
||||
freqA = freqB; resoA = resoB; outA = outB;
|
||||
freqB = pow(C,overallscale+1.0)*1.225;
|
||||
double movFreq = (D*2.0)-1.0;
|
||||
resoB = pow(1.0-E,2.0);
|
||||
if (resoB < 0.001) resoB = 0.001; // q of 0.0 is just a tone
|
||||
double movReso = (F*-2.0)+1.0;
|
||||
outB = G/sqrt(resoB);
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
const double temp = (double)sampleFrames/inFramesToProcess;
|
||||
const double freq = (freqA*temp)+(freqB*(1.0-temp));
|
||||
const double reso = (resoA*temp)+(resoB*(1.0-temp));
|
||||
const double out = (outA*temp)+(outB*(1.0-temp)); //dezippering
|
||||
|
||||
double ctrl = fabs(inputSampleL);
|
||||
bezMinL = fmax(bezMinL-sloRez,ctrl);
|
||||
bezCompL[bez_cycle] += bezRez;
|
||||
bezCompL[bez_Ctrl] += (bezMinL * bezRez);
|
||||
if (bezCompL[bez_cycle] > 1.0) {
|
||||
bezCompL[bez_cycle] -= 1.0;
|
||||
bezCompL[bez_C] = bezCompL[bez_B];
|
||||
bezCompL[bez_B] = bezCompL[bez_A];
|
||||
bezCompL[bez_A] = bezCompL[bez_Ctrl];
|
||||
bezCompL[bez_Ctrl] = 0.0;
|
||||
}
|
||||
double CB = (bezCompL[bez_C]*(1.0-bezCompL[bez_cycle]))+(bezCompL[bez_B]*bezCompL[bez_cycle]);
|
||||
double BA = (bezCompL[bez_B]*(1.0-bezCompL[bez_cycle]))+(bezCompL[bez_A]*bezCompL[bez_cycle]);
|
||||
double CBA = (bezCompL[bez_B]+(CB*(1.0-bezCompL[bez_cycle]))+(BA*bezCompL[bez_cycle]))*0.5;
|
||||
double mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
double mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
lowL += mFreq*bandL; bandL += mFreq*((mReso*inputSampleL)-lowL-(mReso*bandL));
|
||||
inputSampleL = (lowL-sin(bandL*0.5))*out; //airwin-donut
|
||||
|
||||
ctrl = fabs(inputSampleR);
|
||||
bezMinR = fmax(bezMinR-sloRez,ctrl);
|
||||
bezCompR[bez_cycle] += bezRez;
|
||||
bezCompR[bez_Ctrl] += (bezMinR * bezRez);
|
||||
if (bezCompR[bez_cycle] > 1.0) {
|
||||
bezCompR[bez_cycle] -= 1.0;
|
||||
bezCompR[bez_C] = bezCompR[bez_B];
|
||||
bezCompR[bez_B] = bezCompR[bez_A];
|
||||
bezCompR[bez_A] = bezCompR[bez_Ctrl];
|
||||
bezCompR[bez_Ctrl] = 0.0;
|
||||
}
|
||||
CB = (bezCompR[bez_C]*(1.0-bezCompR[bez_cycle]))+(bezCompR[bez_B]*bezCompR[bez_cycle]);
|
||||
BA = (bezCompR[bez_B]*(1.0-bezCompR[bez_cycle]))+(bezCompR[bez_A]*bezCompR[bez_cycle]);
|
||||
CBA = (bezCompR[bez_B]+(CB*(1.0-bezCompR[bez_cycle]))+(BA*bezCompR[bez_cycle]))*0.5;
|
||||
mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
lowR += mFreq*bandR; bandR += mFreq*((mReso*inputSampleR)-lowR-(mReso*bandR));
|
||||
inputSampleR = (lowR-sin(bandR*0.5))*out; //airwin-donut
|
||||
|
||||
//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 Donut::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sampleFrames)
|
||||
{
|
||||
double* in1 = inputs[0];
|
||||
double* in2 = inputs[1];
|
||||
double* out1 = outputs[0];
|
||||
double* out2 = outputs[1];
|
||||
|
||||
VstInt32 inFramesToProcess = sampleFrames; //vst doesn't give us this as a separate variable so we'll make it
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= getSampleRate();
|
||||
|
||||
double bezRez = pow(1.0-A, 6.0) / overallscale;
|
||||
double sloRez = pow(1.0-B, 6.0) / overallscale;
|
||||
bezRez = fmin(fmax(bezRez,0.00001),1.0);
|
||||
sloRez = fmin(fmax(sloRez,0.00001),1.0);
|
||||
freqA = freqB; resoA = resoB; outA = outB;
|
||||
freqB = pow(C,overallscale+1.0)*1.225;
|
||||
double movFreq = (D*2.0)-1.0;
|
||||
resoB = pow(1.0-E,2.0);
|
||||
if (resoB < 0.001) resoB = 0.001; // q of 0.0 is just a tone
|
||||
double movReso = (F*-2.0)+1.0;
|
||||
outB = G/sqrt(resoB);
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
|
||||
const double temp = (double)sampleFrames/inFramesToProcess;
|
||||
const double freq = (freqA*temp)+(freqB*(1.0-temp));
|
||||
const double reso = (resoA*temp)+(resoB*(1.0-temp));
|
||||
const double out = (outA*temp)+(outB*(1.0-temp)); //dezippering
|
||||
|
||||
double ctrl = fabs(inputSampleL);
|
||||
bezMinL = fmax(bezMinL-sloRez,ctrl);
|
||||
bezCompL[bez_cycle] += bezRez;
|
||||
bezCompL[bez_Ctrl] += (bezMinL * bezRez);
|
||||
if (bezCompL[bez_cycle] > 1.0) {
|
||||
bezCompL[bez_cycle] -= 1.0;
|
||||
bezCompL[bez_C] = bezCompL[bez_B];
|
||||
bezCompL[bez_B] = bezCompL[bez_A];
|
||||
bezCompL[bez_A] = bezCompL[bez_Ctrl];
|
||||
bezCompL[bez_Ctrl] = 0.0;
|
||||
}
|
||||
double CB = (bezCompL[bez_C]*(1.0-bezCompL[bez_cycle]))+(bezCompL[bez_B]*bezCompL[bez_cycle]);
|
||||
double BA = (bezCompL[bez_B]*(1.0-bezCompL[bez_cycle]))+(bezCompL[bez_A]*bezCompL[bez_cycle]);
|
||||
double CBA = (bezCompL[bez_B]+(CB*(1.0-bezCompL[bez_cycle]))+(BA*bezCompL[bez_cycle]))*0.5;
|
||||
double mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
double mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
lowL += mFreq*bandL; bandL += mFreq*((mReso*inputSampleL)-lowL-(mReso*bandL));
|
||||
inputSampleL = (lowL-sin(bandL*0.5))*out; //airwin-donut
|
||||
|
||||
ctrl = fabs(inputSampleR);
|
||||
bezMinR = fmax(bezMinR-sloRez,ctrl);
|
||||
bezCompR[bez_cycle] += bezRez;
|
||||
bezCompR[bez_Ctrl] += (bezMinR * bezRez);
|
||||
if (bezCompR[bez_cycle] > 1.0) {
|
||||
bezCompR[bez_cycle] -= 1.0;
|
||||
bezCompR[bez_C] = bezCompR[bez_B];
|
||||
bezCompR[bez_B] = bezCompR[bez_A];
|
||||
bezCompR[bez_A] = bezCompR[bez_Ctrl];
|
||||
bezCompR[bez_Ctrl] = 0.0;
|
||||
}
|
||||
CB = (bezCompR[bez_C]*(1.0-bezCompR[bez_cycle]))+(bezCompR[bez_B]*bezCompR[bez_cycle]);
|
||||
BA = (bezCompR[bez_B]*(1.0-bezCompR[bez_cycle]))+(bezCompR[bez_A]*bezCompR[bez_cycle]);
|
||||
CBA = (bezCompR[bez_B]+(CB*(1.0-bezCompR[bez_cycle]))+(BA*bezCompR[bez_cycle]))*0.5;
|
||||
mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
lowR += mFreq*bandR; bandR += mFreq*((mReso*inputSampleR)-lowR-(mReso*bandR));
|
||||
inputSampleR = (lowR-sin(bandR*0.5))*out; //airwin-donut
|
||||
|
||||
//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++;
|
||||
}
|
||||
}
|
||||
180
plugins/LinuxVST/src/WoodenBox/WoodenBox.cpp
Executable file
180
plugins/LinuxVST/src/WoodenBox/WoodenBox.cpp
Executable file
|
|
@ -0,0 +1,180 @@
|
|||
/* ========================================
|
||||
* WoodenBox - WoodenBox.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __WoodenBox_H
|
||||
#include "WoodenBox.h"
|
||||
#endif
|
||||
|
||||
AudioEffect* createEffectInstance(audioMasterCallback audioMaster) {return new WoodenBox(audioMaster);}
|
||||
|
||||
WoodenBox::WoodenBox(audioMasterCallback audioMaster) :
|
||||
AudioEffectX(audioMaster, kNumPrograms, kNumParameters)
|
||||
{
|
||||
A = 0.5;
|
||||
B = 0.5;
|
||||
C = 0.5;
|
||||
|
||||
c4AL = c4BL = c4CL = c4DL = c4EL = c4FL = c4GL = c4HL = 1;
|
||||
c4IL = c4JL = c4KL = c4LL = c4ML = c4NL = c4OL = c4PL = 1;
|
||||
c4AR = c4BR = c4CR = c4DR = c4ER = c4FR = c4GR = c4HR = 1;
|
||||
c4IR = c4JR = c4KR = c4LR = c4MR = c4NR = c4OR = c4PR = 1;
|
||||
for(int x = 0; x < d4A+2; x++) {b4AL[x] = 0.0; b4AR[x] = 0.0;}
|
||||
for(int x = 0; x < d4B+2; x++) {b4BL[x] = 0.0; b4BR[x] = 0.0;}
|
||||
for(int x = 0; x < d4C+2; x++) {b4CL[x] = 0.0; b4CR[x] = 0.0;}
|
||||
for(int x = 0; x < d4D+2; x++) {b4DL[x] = 0.0; b4DR[x] = 0.0;}
|
||||
for(int x = 0; x < d4E+2; x++) {b4EL[x] = 0.0; b4ER[x] = 0.0;}
|
||||
for(int x = 0; x < d4F+2; x++) {b4FL[x] = 0.0; b4FR[x] = 0.0;}
|
||||
for(int x = 0; x < d4G+2; x++) {b4GL[x] = 0.0; b4GR[x] = 0.0;}
|
||||
for(int x = 0; x < d4H+2; x++) {b4HL[x] = 0.0; b4HR[x] = 0.0;}
|
||||
for(int x = 0; x < d4I+2; x++) {b4IL[x] = 0.0; b4IR[x] = 0.0;}
|
||||
for(int x = 0; x < d4J+2; x++) {b4JL[x] = 0.0; b4JR[x] = 0.0;}
|
||||
for(int x = 0; x < d4K+2; x++) {b4KL[x] = 0.0; b4KR[x] = 0.0;}
|
||||
for(int x = 0; x < d4L+2; x++) {b4LL[x] = 0.0; b4LR[x] = 0.0;}
|
||||
for(int x = 0; x < d4M+2; x++) {b4ML[x] = 0.0; b4MR[x] = 0.0;}
|
||||
for(int x = 0; x < d4N+2; x++) {b4NL[x] = 0.0; b4NR[x] = 0.0;}
|
||||
for(int x = 0; x < d4O+2; x++) {b4OL[x] = 0.0; b4OR[x] = 0.0;}
|
||||
for(int x = 0; x < d4P+2; x++) {b4PL[x] = 0.0; b4PR[x] = 0.0;}
|
||||
g4AL = g4BL = g4CL = g4DL = 0.0;
|
||||
g4DR = g4HR = g4LR = g4PR = 0.0;
|
||||
|
||||
for (int x = 0; x < bez_total; x++) bez[x] = 0.0;
|
||||
bez[bez_cycle] = 1.0;
|
||||
|
||||
shortA = 173;
|
||||
shortB = 82;
|
||||
shortC = 240;
|
||||
shortD = 191;
|
||||
shortE = 196;
|
||||
shortF = 257;
|
||||
shortG = 203;
|
||||
shortH = 252;
|
||||
shortI = 207;
|
||||
shortJ = 203;
|
||||
shortK = 250;
|
||||
shortL = 220;
|
||||
shortM = 261;
|
||||
shortN = 235;
|
||||
shortO = 161;
|
||||
shortP = 161;
|
||||
prevclearcoat = -1;
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
WoodenBox::~WoodenBox() {}
|
||||
VstInt32 WoodenBox::getVendorVersion () {return 1000;}
|
||||
void WoodenBox::setProgramName(char *name) {vst_strncpy (_programName, name, kVstMaxProgNameLen);}
|
||||
void WoodenBox::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 WoodenBox::getChunk (void** data, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)calloc(kNumParameters, sizeof(float));
|
||||
chunkData[0] = A;
|
||||
chunkData[1] = B;
|
||||
chunkData[2] = C;
|
||||
/* 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 WoodenBox::setChunk (void* data, VstInt32 byteSize, bool isPreset)
|
||||
{
|
||||
float *chunkData = (float *)data;
|
||||
A = pinParameter(chunkData[0]);
|
||||
B = pinParameter(chunkData[1]);
|
||||
C = pinParameter(chunkData[2]);
|
||||
/* 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 WoodenBox::setParameter(VstInt32 index, float value) {
|
||||
switch (index) {
|
||||
case kParamA: A = value; break;
|
||||
case kParamB: B = value; break;
|
||||
case kParamC: C = value; break;
|
||||
default: throw; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
float WoodenBox::getParameter(VstInt32 index) {
|
||||
switch (index) {
|
||||
case kParamA: return A; break;
|
||||
case kParamB: return B; break;
|
||||
case kParamC: return C; 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 WoodenBox::getParameterName(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: vst_strncpy (text, "Select", kVstMaxParamStrLen); break;
|
||||
case kParamB: vst_strncpy (text, "Reso", kVstMaxParamStrLen); break;
|
||||
case kParamC: vst_strncpy (text, "Depth", kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this is our labels for displaying in the VST host
|
||||
}
|
||||
|
||||
void WoodenBox::getParameterDisplay(VstInt32 index, char *text) {
|
||||
switch (index) {
|
||||
case kParamA: int2string ((int)(A*16.999), text, kVstMaxParamStrLen); break;
|
||||
case kParamB: float2string (B, text, kVstMaxParamStrLen); break;
|
||||
case kParamC: float2string (C, text, kVstMaxParamStrLen); break;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
} //this displays the values and handles 'popups' where it's discrete choices
|
||||
}
|
||||
|
||||
void WoodenBox::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;
|
||||
default: break; // unknown parameter, shouldn't happen!
|
||||
}
|
||||
}
|
||||
|
||||
VstInt32 WoodenBox::canDo(char *text)
|
||||
{ return (_canDo.find(text) == _canDo.end()) ? -1: 1; } // 1 = yes, -1 = no, 0 = don't know
|
||||
|
||||
bool WoodenBox::getEffectName(char* name) {
|
||||
vst_strncpy(name, "WoodenBox", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
VstPlugCategory WoodenBox::getPlugCategory() {return kPlugCategEffect;}
|
||||
|
||||
bool WoodenBox::getProductString(char* text) {
|
||||
vst_strncpy (text, "airwindows WoodenBox", kVstMaxProductStrLen); return true;
|
||||
}
|
||||
|
||||
bool WoodenBox::getVendorString(char* text) {
|
||||
vst_strncpy (text, "airwindows", kVstMaxVendorStrLen); return true;
|
||||
}
|
||||
155
plugins/LinuxVST/src/WoodenBox/WoodenBox.h
Executable file
155
plugins/LinuxVST/src/WoodenBox/WoodenBox.h
Executable file
|
|
@ -0,0 +1,155 @@
|
|||
/* ========================================
|
||||
* WoodenBox - WoodenBox.h
|
||||
* Created 8/12/11 by SPIAdmin
|
||||
* Copyright (c) Airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __WoodenBox_H
|
||||
#define __WoodenBox_H
|
||||
|
||||
#ifndef __audioeffect__
|
||||
#include "audioeffectx.h"
|
||||
#endif
|
||||
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <math.h>
|
||||
|
||||
enum {
|
||||
kParamA =0,
|
||||
kParamB =1,
|
||||
kParamC =2,
|
||||
kNumParameters = 3
|
||||
}; //
|
||||
|
||||
const int d4A = 173;
|
||||
const int d4B = 82;
|
||||
const int d4C = 240;
|
||||
const int d4D = 191;
|
||||
const int d4E = 196;
|
||||
const int d4F = 257;
|
||||
const int d4G = 203;
|
||||
const int d4H = 252;
|
||||
const int d4I = 207;
|
||||
const int d4J = 203;
|
||||
const int d4K = 250;
|
||||
const int d4L = 220;
|
||||
const int d4M = 261;
|
||||
const int d4N = 235;
|
||||
const int d4O = 161;
|
||||
const int d4P = 161;
|
||||
|
||||
const int kNumPrograms = 0;
|
||||
const int kNumInputs = 2;
|
||||
const int kNumOutputs = 2;
|
||||
const unsigned long kUniqueId = 'wdbx'; //Change this to what the AU identity is!
|
||||
|
||||
class WoodenBox :
|
||||
public AudioEffectX
|
||||
{
|
||||
public:
|
||||
WoodenBox(audioMasterCallback audioMaster);
|
||||
~WoodenBox();
|
||||
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;
|
||||
|
||||
float A;
|
||||
float B;
|
||||
float C;
|
||||
|
||||
int c4AL,c4BL,c4CL,c4DL,c4EL,c4FL,c4GL,c4HL;
|
||||
int c4IL,c4JL,c4KL,c4LL,c4ML,c4NL,c4OL,c4PL;
|
||||
int c4AR,c4BR,c4CR,c4DR,c4ER,c4FR,c4GR,c4HR;
|
||||
int c4IR,c4JR,c4KR,c4LR,c4MR,c4NR,c4OR,c4PR;
|
||||
//base stereo reverb
|
||||
double b4AL[d4A+5];
|
||||
double b4BL[d4B+5];
|
||||
double b4CL[d4C+5];
|
||||
double b4DL[d4D+5];
|
||||
double b4EL[d4E+5];
|
||||
double b4FL[d4F+5];
|
||||
double b4GL[d4G+5];
|
||||
double b4HL[d4H+5];
|
||||
double b4IL[d4I+5];
|
||||
double b4JL[d4J+5];
|
||||
double b4KL[d4K+5];
|
||||
double b4LL[d4L+5];
|
||||
double b4ML[d4M+5];
|
||||
double b4NL[d4N+5];
|
||||
double b4OL[d4O+5];
|
||||
double b4PL[d4P+5];
|
||||
double b4AR[d4A+5];
|
||||
double b4BR[d4B+5];
|
||||
double b4CR[d4C+5];
|
||||
double b4DR[d4D+5];
|
||||
double b4ER[d4E+5];
|
||||
double b4FR[d4F+5];
|
||||
double b4GR[d4G+5];
|
||||
double b4HR[d4H+5];
|
||||
double b4IR[d4I+5];
|
||||
double b4JR[d4J+5];
|
||||
double b4KR[d4K+5];
|
||||
double b4LR[d4L+5];
|
||||
double b4MR[d4M+5];
|
||||
double b4NR[d4N+5];
|
||||
double b4OR[d4O+5];
|
||||
double b4PR[d4P+5];
|
||||
double g4AL,g4BL,g4CL,g4DL,g4DR,g4HR,g4LR,g4PR;
|
||||
//changed letter is the dual mono, with rearranged grid
|
||||
|
||||
enum {
|
||||
bez_AL,
|
||||
bez_AR,
|
||||
bez_BL,
|
||||
bez_BR,
|
||||
bez_CL,
|
||||
bez_CR,
|
||||
bez_SampL,
|
||||
bez_SampR,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bez[bez_total];
|
||||
|
||||
int shortA;
|
||||
int shortB;
|
||||
int shortC;
|
||||
int shortD;
|
||||
int shortE;
|
||||
int shortF;
|
||||
int shortG;
|
||||
int shortH;
|
||||
int shortI;
|
||||
int shortJ;
|
||||
int shortK;
|
||||
int shortL;
|
||||
int shortM;
|
||||
int shortN;
|
||||
int shortO;
|
||||
int shortP;
|
||||
|
||||
int prevclearcoat;
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
//default stuff
|
||||
};
|
||||
|
||||
#endif
|
||||
596
plugins/LinuxVST/src/WoodenBox/WoodenBoxProc.cpp
Executable file
596
plugins/LinuxVST/src/WoodenBox/WoodenBoxProc.cpp
Executable file
|
|
@ -0,0 +1,596 @@
|
|||
/* ========================================
|
||||
* WoodenBox - WoodenBox.h
|
||||
* Copyright (c) airwindows, Airwindows uses the MIT license
|
||||
* ======================================== */
|
||||
|
||||
#ifndef __WoodenBox_H
|
||||
#include "WoodenBox.h"
|
||||
#endif
|
||||
|
||||
void WoodenBox::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();
|
||||
|
||||
int clearcoat = (int)(A*16.999);
|
||||
if (clearcoat != prevclearcoat) {
|
||||
for(int count = 0; count < d4A+2; count++) {b4AL[count] = 0.0; b4AR[count] = 0.0;}
|
||||
for(int count = 0; count < d4B+2; count++) {b4BL[count] = 0.0; b4BR[count] = 0.0;}
|
||||
for(int count = 0; count < d4C+2; count++) {b4CL[count] = 0.0; b4CR[count] = 0.0;}
|
||||
for(int count = 0; count < d4D+2; count++) {b4DL[count] = 0.0; b4DR[count] = 0.0;}
|
||||
for(int count = 0; count < d4E+2; count++) {b4EL[count] = 0.0; b4ER[count] = 0.0;}
|
||||
for(int count = 0; count < d4F+2; count++) {b4FL[count] = 0.0; b4FR[count] = 0.0;}
|
||||
for(int count = 0; count < d4G+2; count++) {b4GL[count] = 0.0; b4GR[count] = 0.0;}
|
||||
for(int count = 0; count < d4H+2; count++) {b4HL[count] = 0.0; b4HR[count] = 0.0;}
|
||||
for(int count = 0; count < d4I+2; count++) {b4IL[count] = 0.0; b4IR[count] = 0.0;}
|
||||
for(int count = 0; count < d4J+2; count++) {b4JL[count] = 0.0; b4JR[count] = 0.0;}
|
||||
for(int count = 0; count < d4K+2; count++) {b4KL[count] = 0.0; b4KR[count] = 0.0;}
|
||||
for(int count = 0; count < d4L+2; count++) {b4LL[count] = 0.0; b4LR[count] = 0.0;}
|
||||
for(int count = 0; count < d4M+2; count++) {b4ML[count] = 0.0; b4MR[count] = 0.0;}
|
||||
for(int count = 0; count < d4N+2; count++) {b4NL[count] = 0.0; b4NR[count] = 0.0;}
|
||||
for(int count = 0; count < d4O+2; count++) {b4OL[count] = 0.0; b4OR[count] = 0.0;}
|
||||
for(int count = 0; count < d4P+2; count++) {b4PL[count] = 0.0; b4PR[count] = 0.0;}
|
||||
c4AL = 1;
|
||||
c4BL = 1;
|
||||
c4CL = 1;
|
||||
c4DL = 1;
|
||||
c4EL = 1;
|
||||
c4FL = 1;
|
||||
c4GL = 1;
|
||||
c4HL = 1;
|
||||
c4IL = 1;
|
||||
c4JL = 1;
|
||||
c4KL = 1;
|
||||
c4LL = 1;
|
||||
c4ML = 1;
|
||||
c4NL = 1;
|
||||
c4OL = 1;
|
||||
c4PL = 1;
|
||||
|
||||
c4AR = 1;
|
||||
c4BR = 1;
|
||||
c4CR = 1;
|
||||
c4DR = 1;
|
||||
c4ER = 1;
|
||||
c4FR = 1;
|
||||
c4GR = 1;
|
||||
c4HR = 1;
|
||||
c4IR = 1;
|
||||
c4JR = 1;
|
||||
c4KR = 1;
|
||||
c4LR = 1;
|
||||
c4MR = 1;
|
||||
c4NR = 1;
|
||||
c4OR = 1;
|
||||
c4PR = 1;
|
||||
switch (clearcoat)
|
||||
{
|
||||
case 0:
|
||||
shortA = 17; shortB = 10; shortC = 23; shortD = 3; shortE = 8; shortF = 7; shortG = 41; shortH = 6; shortI = 3; shortJ = 6; shortK = 59; shortL = 61; shortM = 4; shortN = 71; shortO = 5; shortP = 4; break; //0 to 4 ms, 0 seat room
|
||||
case 1:
|
||||
shortA = 12; shortB = 19; shortC = 89; shortD = 25; shortE = 92; shortF = 8; shortG = 41; shortH = 11; shortI = 80; shortJ = 27; shortK = 6; shortL = 4; shortM = 3; shortN = 21; shortO = 7; shortP = 63; break; //0 to 7 ms, 1 seat room
|
||||
case 2:
|
||||
shortA = 35; shortB = 19; shortC = 5; shortD = 7; shortE = 15; shortF = 7; shortG = 41; shortH = 191; shortI = 177; shortJ = 3; shortK = 6; shortL = 22; shortM = 23; shortN = 118; shortO = 4; shortP = 79; break; //0 to 11 ms, 4 seat room
|
||||
case 3:
|
||||
shortA = 17; shortB = 19; shortC = 105; shortD = 135; shortE = 31; shortF = 86; shortG = 41; shortH = 16; shortI = 3; shortJ = 16; shortK = 6; shortL = 151; shortM = 147; shortN = 26; shortO = 3; shortP = 10; break; //0 to 11 ms, 4 seat room
|
||||
case 4:
|
||||
shortA = 134; shortB = 13; shortC = 26; shortD = 10; shortE = 34; shortF = 24; shortG = 4; shortH = 60; shortI = 88; shortJ = 9; shortK = 155; shortL = 11; shortM = 3; shortN = 18; shortO = 9; shortP = 161; break; //0 to 11 ms, 4 seat room
|
||||
case 5:
|
||||
shortA = 17; shortB = 82; shortC = 23; shortD = 29; shortE = 133; shortF = 3; shortG = 41; shortH = 27; shortI = 10; shortJ = 177; shortK = 6; shortL = 37; shortM = 14; shortN = 145; shortO = 4; shortP = 9; break; //0 to 12 ms, 4 seat room
|
||||
case 6:
|
||||
shortA = 31; shortB = 19; shortC = 3; shortD = 29; shortE = 196; shortF = 11; shortG = 10; shortH = 65; shortI = 21; shortJ = 3; shortK = 148; shortL = 4; shortM = 26; shortN = 7; shortO = 161; shortP = 155; break; //0 to 12 ms, 4 seat room
|
||||
case 7:
|
||||
shortA = 17; shortB = 8; shortC = 3; shortD = 37; shortE = 3; shortF = 19; shortG = 41; shortH = 15; shortI = 7; shortJ = 197; shortK = 178; shortL = 22; shortM = 26; shortN = 97; shortO = 16; shortP = 156; break; //0 to 12 ms, 5 seat room
|
||||
case 8:
|
||||
shortA = 17; shortB = 3; shortC = 8; shortD = 29; shortE = 39; shortF = 156; shortG = 7; shortH = 43; shortI = 101; shortJ = 8; shortK = 15; shortL = 169; shortM = 67; shortN = 39; shortO = 154; shortP = 4; break; //0 to 13 ms, 5 seat room
|
||||
case 9:
|
||||
shortA = 18; shortB = 19; shortC = 23; shortD = 5; shortE = 176; shortF = 3; shortG = 41; shortH = 147; shortI = 7; shortJ = 148; shortK = 5; shortL = 15; shortM = 10; shortN = 30; shortO = 119; shortP = 19; break; //0 to 13 ms, 5 seat room
|
||||
case 10:
|
||||
shortA = 173; shortB = 19; shortC = 23; shortD = 27; shortE = 8; shortF = 37; shortG = 7; shortH = 202; shortI = 8; shortJ = 13; shortK = 3; shortL = 174; shortM = 67; shortN = 21; shortO = 73; shortP = 14; break; //0 to 14 ms, 6 seat room
|
||||
case 11:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 25; shortE = 19; shortF = 145; shortG = 9; shortH = 43; shortI = 47; shortJ = 203; shortK = 18; shortL = 180; shortM = 226; shortN = 3; shortO = 73; shortP = 12; break; //0 to 15 ms, 7 seat room
|
||||
case 12:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 3; shortE = 3; shortF = 20; shortG = 203; shortH = 99; shortI = 207; shortJ = 15; shortK = 10; shortL = 61; shortM = 20; shortN = 174; shortO = 33; shortP = 77; break; //0 to 15 ms, 7 seat room
|
||||
case 13:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 29; shortE = 3; shortF = 210; shortG = 183; shortH = 43; shortI = 13; shortJ = 12; shortK = 26; shortL = 220; shortM = 67; shortN = 235; shortO = 11; shortP = 23; break; //0 to 15 ms, 8 seat room
|
||||
case 14:
|
||||
shortA = 17; shortB = 3; shortC = 21; shortD = 191; shortE = 31; shortF = 10; shortG = 41; shortH = 218; shortI = 15; shortJ = 6; shortK = 111; shortL = 29; shortM = 129; shortN = 206; shortO = 4; shortP = 7; break; //0 to 16 ms, 8 seat room
|
||||
case 15:
|
||||
shortA = 17; shortB = 25; shortC = 240; shortD = 29; shortE = 4; shortF = 18; shortG = 41; shortH = 43; shortI = 29; shortJ = 28; shortK = 250; shortL = 12; shortM = 261; shortN = 9; shortO = 5; shortP = 79; break; //0 to 18 ms, 10 seat room
|
||||
case 16:
|
||||
default:
|
||||
shortA = 5; shortB = 3; shortC = 23; shortD = 29; shortE = 3; shortF = 257; shortG = 199; shortH = 252; shortI = 132; shortJ = 18; shortK = 11; shortL = 6; shortM = 30; shortN = 27; shortO = 7; shortP = 8; break; //0 to 19 ms, 11 seat room
|
||||
}
|
||||
prevclearcoat = clearcoat;
|
||||
}
|
||||
double reg4n = (1.0-pow(1.0-B,2.0))*0.0336;
|
||||
double derez = 1.0;
|
||||
derez = fmin(fmax(derez/overallscale,0.0001),1.0);
|
||||
int bezFraction = (int)(1.0/derez);
|
||||
double bezTrim = (double)bezFraction/(bezFraction+1.0);
|
||||
derez = 1.0 / bezFraction;
|
||||
bezTrim = 1.0-(derez*bezTrim);
|
||||
//the revision more accurately connects the bezier curves
|
||||
double wet = 1.0-pow(1.0-C,2.0);
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
double drySampleL = inputSampleL;
|
||||
double drySampleR = inputSampleR;
|
||||
|
||||
bez[bez_cycle] += derez;
|
||||
bez[bez_SampL] += (inputSampleR*derez);
|
||||
bez[bez_SampR] += (inputSampleL*derez); //stereo got reversed somewhere?
|
||||
if (bez[bez_cycle] > 1.0) { //hit the end point and we do a reverb sample
|
||||
bez[bez_cycle] = 0.0;
|
||||
//left verbs
|
||||
double dualmonoSampleL = bez[bez_SampL];
|
||||
b4AL[c4AL] = dualmonoSampleL + (g4AL * reg4n);
|
||||
b4BL[c4BL] = dualmonoSampleL + (g4BL * reg4n);
|
||||
b4CL[c4CL] = dualmonoSampleL + (g4CL * reg4n);
|
||||
b4DL[c4DL] = dualmonoSampleL + (g4DL * reg4n);
|
||||
|
||||
c4AL++; if (c4AL < 0 || c4AL > shortA) c4AL = 0;
|
||||
c4BL++; if (c4BL < 0 || c4BL > shortB) c4BL = 0;
|
||||
c4CL++; if (c4CL < 0 || c4CL > shortC) c4CL = 0;
|
||||
c4DL++; if (c4DL < 0 || c4DL > shortD) c4DL = 0;
|
||||
|
||||
double hA = b4AL[c4AL-((c4AL > shortA)?shortA+1:0)];
|
||||
double hB = b4BL[c4BL-((c4BL > shortB)?shortB+1:0)];
|
||||
double hC = b4CL[c4CL-((c4CL > shortC)?shortC+1:0)];
|
||||
double hD = b4DL[c4DL-((c4DL > shortD)?shortD+1:0)];
|
||||
b4EL[c4EL] = hA - (hB + hC + hD);
|
||||
b4FL[c4FL] = hB - (hA + hC + hD);
|
||||
b4GL[c4GL] = hC - (hA + hB + hD);
|
||||
b4HL[c4HL] = hD - (hA + hB + hC);
|
||||
|
||||
c4EL++; if (c4EL < 0 || c4EL > shortE) c4EL = 0;
|
||||
c4FL++; if (c4FL < 0 || c4FL > shortF) c4FL = 0;
|
||||
c4GL++; if (c4GL < 0 || c4GL > shortG) c4GL = 0;
|
||||
c4HL++; if (c4HL < 0 || c4HL > shortH) c4HL = 0;
|
||||
|
||||
hA = b4EL[c4EL-((c4EL > shortE)?shortE+1:0)];
|
||||
hB = b4FL[c4FL-((c4FL > shortF)?shortF+1:0)];
|
||||
hC = b4GL[c4GL-((c4GL > shortG)?shortG+1:0)];
|
||||
hD = b4HL[c4HL-((c4HL > shortH)?shortH+1:0)];
|
||||
b4IL[c4IL] = hA - (hB + hC + hD);
|
||||
b4JL[c4JL] = hB - (hA + hC + hD);
|
||||
b4KL[c4KL] = hC - (hA + hB + hD);
|
||||
b4LL[c4LL] = hD - (hA + hB + hC);
|
||||
|
||||
c4IL++; if (c4IL < 0 || c4IL > shortI) c4IL = 0;
|
||||
c4JL++; if (c4JL < 0 || c4JL > shortJ) c4JL = 0;
|
||||
c4KL++; if (c4KL < 0 || c4KL > shortK) c4KL = 0;
|
||||
c4LL++; if (c4LL < 0 || c4LL > shortL) c4LL = 0;
|
||||
|
||||
hA = b4IL[c4IL-((c4IL > shortI)?shortI+1:0)];
|
||||
hB = b4JL[c4JL-((c4JL > shortJ)?shortJ+1:0)];
|
||||
hC = b4KL[c4KL-((c4KL > shortK)?shortK+1:0)];
|
||||
hD = b4LL[c4LL-((c4LL > shortL)?shortL+1:0)];
|
||||
b4ML[c4ML] = hA - (hB + hC + hD);
|
||||
b4NL[c4NL] = hB - (hA + hC + hD);
|
||||
b4OL[c4OL] = hC - (hA + hB + hD);
|
||||
b4PL[c4PL] = hD - (hA + hB + hC);
|
||||
|
||||
c4ML++; if (c4ML < 0 || c4ML > shortM) c4ML = 0;
|
||||
c4NL++; if (c4NL < 0 || c4NL > shortN) c4NL = 0;
|
||||
c4OL++; if (c4OL < 0 || c4OL > shortO) c4OL = 0;
|
||||
c4PL++; if (c4PL < 0 || c4PL > shortP) c4PL = 0;
|
||||
|
||||
hA = b4ML[c4ML-((c4ML > shortM)?shortM+1:0)];
|
||||
hB = b4NL[c4NL-((c4NL > shortN)?shortN+1:0)];
|
||||
hC = b4OL[c4OL-((c4OL > shortO)?shortO+1:0)];
|
||||
hD = b4PL[c4PL-((c4PL > shortP)?shortP+1:0)];
|
||||
g4AL = hA - (hB + hC + hD);
|
||||
g4BL = hB - (hA + hC + hD);
|
||||
g4CL = hC - (hA + hB + hD);
|
||||
g4DL = hD - (hA + hB + hC);
|
||||
dualmonoSampleL = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
//right verbs
|
||||
double dualmonoSampleR = bez[bez_SampR];
|
||||
b4DR[c4DR] = dualmonoSampleR + (g4DR * reg4n);
|
||||
b4HR[c4HR] = dualmonoSampleR + (g4HR * reg4n);
|
||||
b4LR[c4LR] = dualmonoSampleR + (g4LR * reg4n);
|
||||
b4PR[c4PR] = dualmonoSampleR + (g4PR * reg4n);
|
||||
|
||||
c4DR++; if (c4DR < 0 || c4DR > shortD) c4DR = 0;
|
||||
c4HR++; if (c4HR < 0 || c4HR > shortH) c4HR = 0;
|
||||
c4LR++; if (c4LR < 0 || c4LR > shortL) c4LR = 0;
|
||||
c4PR++; if (c4PR < 0 || c4PR > shortP) c4PR = 0;
|
||||
|
||||
hA = b4DR[c4DR-((c4DR > shortD)?shortD+1:0)];
|
||||
hB = b4HR[c4HR-((c4HR > shortH)?shortH+1:0)];
|
||||
hC = b4LR[c4LR-((c4LR > shortL)?shortL+1:0)];
|
||||
hD = b4PR[c4PR-((c4PR > shortP)?shortP+1:0)];
|
||||
b4CR[c4CR] = hA - (hB + hC + hD);
|
||||
b4GR[c4GR] = hB - (hA + hC + hD);
|
||||
b4KR[c4KR] = hC - (hA + hB + hD);
|
||||
b4OR[c4OR] = hD - (hA + hB + hC);
|
||||
|
||||
c4CR++; if (c4CR < 0 || c4CR > shortC) c4CR = 0;
|
||||
c4GR++; if (c4GR < 0 || c4GR > shortG) c4GR = 0;
|
||||
c4KR++; if (c4KR < 0 || c4KR > shortK) c4KR = 0;
|
||||
c4OR++; if (c4OR < 0 || c4OR > shortO) c4OR = 0;
|
||||
|
||||
hA = b4CR[c4CR-((c4CR > shortC)?shortC+1:0)];
|
||||
hB = b4GR[c4GR-((c4GR > shortG)?shortG+1:0)];
|
||||
hC = b4KR[c4KR-((c4KR > shortK)?shortK+1:0)];
|
||||
hD = b4OR[c4OR-((c4OR > shortO)?shortO+1:0)];
|
||||
b4BR[c4BR] = hA - (hB + hC + hD);
|
||||
b4FR[c4FR] = hB - (hA + hC + hD);
|
||||
b4JR[c4JR] = hC - (hA + hB + hD);
|
||||
b4NR[c4NR] = hD - (hA + hB + hC);
|
||||
|
||||
c4BR++; if (c4BR < 0 || c4BR > shortB) c4BR = 0;
|
||||
c4FR++; if (c4FR < 0 || c4FR > shortF) c4FR = 0;
|
||||
c4JR++; if (c4JR < 0 || c4JR > shortJ) c4JR = 0;
|
||||
c4NR++; if (c4NR < 0 || c4NR > shortN) c4NR = 0;
|
||||
|
||||
hA = b4BR[c4BR-((c4BR > shortB)?shortB+1:0)];
|
||||
hB = b4FR[c4FR-((c4FR > shortF)?shortF+1:0)];
|
||||
hC = b4JR[c4JR-((c4JR > shortJ)?shortJ+1:0)];
|
||||
hD = b4NR[c4NR-((c4NR > shortN)?shortN+1:0)];
|
||||
b4AR[c4AR] = hA - (hB + hC + hD);
|
||||
b4ER[c4ER] = hB - (hA + hC + hD);
|
||||
b4IR[c4IR] = hC - (hA + hB + hD);
|
||||
b4MR[c4MR] = hD - (hA + hB + hC);
|
||||
|
||||
c4AR++; if (c4AR < 0 || c4AR > shortA) c4AR = 0;
|
||||
c4ER++; if (c4ER < 0 || c4ER > shortE) c4ER = 0;
|
||||
c4IR++; if (c4IR < 0 || c4IR > shortI) c4IR = 0;
|
||||
c4MR++; if (c4MR < 0 || c4MR > shortM) c4MR = 0;
|
||||
|
||||
hA = b4AR[c4AR-((c4AR > shortA)?shortA+1:0)];
|
||||
hB = b4ER[c4ER-((c4ER > shortE)?shortE+1:0)];
|
||||
hC = b4IR[c4IR-((c4IR > shortI)?shortI+1:0)];
|
||||
hD = b4MR[c4MR-((c4MR > shortM)?shortM+1:0)];
|
||||
g4DR = hA - (hB + hC + hD);
|
||||
g4HR = hB - (hA + hC + hD);
|
||||
g4LR = hC - (hA + hB + hD);
|
||||
g4PR = hD - (hA + hB + hC);
|
||||
dualmonoSampleR = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
bez[bez_CL] = bez[bez_BL];
|
||||
bez[bez_BL] = bez[bez_AL];
|
||||
bez[bez_AL] = dualmonoSampleR;
|
||||
bez[bez_SampL] = 0.0;
|
||||
|
||||
bez[bez_CR] = bez[bez_BR];
|
||||
bez[bez_BR] = bez[bez_AR];
|
||||
bez[bez_AR] = dualmonoSampleL;
|
||||
bez[bez_SampR] = 0.0;
|
||||
}
|
||||
double X = bez[bez_cycle]*bezTrim;
|
||||
double CBL = (bez[bez_CL]*(1.0-X))+(bez[bez_BL]*X);
|
||||
double CBR = (bez[bez_CR]*(1.0-X))+(bez[bez_BR]*X);
|
||||
double BAL = (bez[bez_BL]*(1.0-X))+(bez[bez_AL]*X);
|
||||
double BAR = (bez[bez_BR]*(1.0-X))+(bez[bez_AR]*X);
|
||||
inputSampleL = (bez[bez_BL]+(CBL*(1.0-X))+(BAL*X))*0.125;
|
||||
inputSampleR = (bez[bez_BR]+(CBR*(1.0-X))+(BAR*X))*0.125;
|
||||
|
||||
inputSampleL = (inputSampleL * wet)+(drySampleL * (1.0-wet));
|
||||
inputSampleR = (inputSampleR * wet)+(drySampleR * (1.0-wet));
|
||||
|
||||
//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 WoodenBox::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();
|
||||
|
||||
int clearcoat = (int)(A*16.999);
|
||||
if (clearcoat != prevclearcoat) {
|
||||
for(int count = 0; count < d4A+2; count++) {b4AL[count] = 0.0; b4AR[count] = 0.0;}
|
||||
for(int count = 0; count < d4B+2; count++) {b4BL[count] = 0.0; b4BR[count] = 0.0;}
|
||||
for(int count = 0; count < d4C+2; count++) {b4CL[count] = 0.0; b4CR[count] = 0.0;}
|
||||
for(int count = 0; count < d4D+2; count++) {b4DL[count] = 0.0; b4DR[count] = 0.0;}
|
||||
for(int count = 0; count < d4E+2; count++) {b4EL[count] = 0.0; b4ER[count] = 0.0;}
|
||||
for(int count = 0; count < d4F+2; count++) {b4FL[count] = 0.0; b4FR[count] = 0.0;}
|
||||
for(int count = 0; count < d4G+2; count++) {b4GL[count] = 0.0; b4GR[count] = 0.0;}
|
||||
for(int count = 0; count < d4H+2; count++) {b4HL[count] = 0.0; b4HR[count] = 0.0;}
|
||||
for(int count = 0; count < d4I+2; count++) {b4IL[count] = 0.0; b4IR[count] = 0.0;}
|
||||
for(int count = 0; count < d4J+2; count++) {b4JL[count] = 0.0; b4JR[count] = 0.0;}
|
||||
for(int count = 0; count < d4K+2; count++) {b4KL[count] = 0.0; b4KR[count] = 0.0;}
|
||||
for(int count = 0; count < d4L+2; count++) {b4LL[count] = 0.0; b4LR[count] = 0.0;}
|
||||
for(int count = 0; count < d4M+2; count++) {b4ML[count] = 0.0; b4MR[count] = 0.0;}
|
||||
for(int count = 0; count < d4N+2; count++) {b4NL[count] = 0.0; b4NR[count] = 0.0;}
|
||||
for(int count = 0; count < d4O+2; count++) {b4OL[count] = 0.0; b4OR[count] = 0.0;}
|
||||
for(int count = 0; count < d4P+2; count++) {b4PL[count] = 0.0; b4PR[count] = 0.0;}
|
||||
c4AL = 1;
|
||||
c4BL = 1;
|
||||
c4CL = 1;
|
||||
c4DL = 1;
|
||||
c4EL = 1;
|
||||
c4FL = 1;
|
||||
c4GL = 1;
|
||||
c4HL = 1;
|
||||
c4IL = 1;
|
||||
c4JL = 1;
|
||||
c4KL = 1;
|
||||
c4LL = 1;
|
||||
c4ML = 1;
|
||||
c4NL = 1;
|
||||
c4OL = 1;
|
||||
c4PL = 1;
|
||||
|
||||
c4AR = 1;
|
||||
c4BR = 1;
|
||||
c4CR = 1;
|
||||
c4DR = 1;
|
||||
c4ER = 1;
|
||||
c4FR = 1;
|
||||
c4GR = 1;
|
||||
c4HR = 1;
|
||||
c4IR = 1;
|
||||
c4JR = 1;
|
||||
c4KR = 1;
|
||||
c4LR = 1;
|
||||
c4MR = 1;
|
||||
c4NR = 1;
|
||||
c4OR = 1;
|
||||
c4PR = 1;
|
||||
switch (clearcoat)
|
||||
{
|
||||
case 0:
|
||||
shortA = 17; shortB = 10; shortC = 23; shortD = 3; shortE = 8; shortF = 7; shortG = 41; shortH = 6; shortI = 3; shortJ = 6; shortK = 59; shortL = 61; shortM = 4; shortN = 71; shortO = 5; shortP = 4; break; //0 to 4 ms, 0 seat room
|
||||
case 1:
|
||||
shortA = 12; shortB = 19; shortC = 89; shortD = 25; shortE = 92; shortF = 8; shortG = 41; shortH = 11; shortI = 80; shortJ = 27; shortK = 6; shortL = 4; shortM = 3; shortN = 21; shortO = 7; shortP = 63; break; //0 to 7 ms, 1 seat room
|
||||
case 2:
|
||||
shortA = 35; shortB = 19; shortC = 5; shortD = 7; shortE = 15; shortF = 7; shortG = 41; shortH = 191; shortI = 177; shortJ = 3; shortK = 6; shortL = 22; shortM = 23; shortN = 118; shortO = 4; shortP = 79; break; //0 to 11 ms, 4 seat room
|
||||
case 3:
|
||||
shortA = 17; shortB = 19; shortC = 105; shortD = 135; shortE = 31; shortF = 86; shortG = 41; shortH = 16; shortI = 3; shortJ = 16; shortK = 6; shortL = 151; shortM = 147; shortN = 26; shortO = 3; shortP = 10; break; //0 to 11 ms, 4 seat room
|
||||
case 4:
|
||||
shortA = 134; shortB = 13; shortC = 26; shortD = 10; shortE = 34; shortF = 24; shortG = 4; shortH = 60; shortI = 88; shortJ = 9; shortK = 155; shortL = 11; shortM = 3; shortN = 18; shortO = 9; shortP = 161; break; //0 to 11 ms, 4 seat room
|
||||
case 5:
|
||||
shortA = 17; shortB = 82; shortC = 23; shortD = 29; shortE = 133; shortF = 3; shortG = 41; shortH = 27; shortI = 10; shortJ = 177; shortK = 6; shortL = 37; shortM = 14; shortN = 145; shortO = 4; shortP = 9; break; //0 to 12 ms, 4 seat room
|
||||
case 6:
|
||||
shortA = 31; shortB = 19; shortC = 3; shortD = 29; shortE = 196; shortF = 11; shortG = 10; shortH = 65; shortI = 21; shortJ = 3; shortK = 148; shortL = 4; shortM = 26; shortN = 7; shortO = 161; shortP = 155; break; //0 to 12 ms, 4 seat room
|
||||
case 7:
|
||||
shortA = 17; shortB = 8; shortC = 3; shortD = 37; shortE = 3; shortF = 19; shortG = 41; shortH = 15; shortI = 7; shortJ = 197; shortK = 178; shortL = 22; shortM = 26; shortN = 97; shortO = 16; shortP = 156; break; //0 to 12 ms, 5 seat room
|
||||
case 8:
|
||||
shortA = 17; shortB = 3; shortC = 8; shortD = 29; shortE = 39; shortF = 156; shortG = 7; shortH = 43; shortI = 101; shortJ = 8; shortK = 15; shortL = 169; shortM = 67; shortN = 39; shortO = 154; shortP = 4; break; //0 to 13 ms, 5 seat room
|
||||
case 9:
|
||||
shortA = 18; shortB = 19; shortC = 23; shortD = 5; shortE = 176; shortF = 3; shortG = 41; shortH = 147; shortI = 7; shortJ = 148; shortK = 5; shortL = 15; shortM = 10; shortN = 30; shortO = 119; shortP = 19; break; //0 to 13 ms, 5 seat room
|
||||
case 10:
|
||||
shortA = 173; shortB = 19; shortC = 23; shortD = 27; shortE = 8; shortF = 37; shortG = 7; shortH = 202; shortI = 8; shortJ = 13; shortK = 3; shortL = 174; shortM = 67; shortN = 21; shortO = 73; shortP = 14; break; //0 to 14 ms, 6 seat room
|
||||
case 11:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 25; shortE = 19; shortF = 145; shortG = 9; shortH = 43; shortI = 47; shortJ = 203; shortK = 18; shortL = 180; shortM = 226; shortN = 3; shortO = 73; shortP = 12; break; //0 to 15 ms, 7 seat room
|
||||
case 12:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 3; shortE = 3; shortF = 20; shortG = 203; shortH = 99; shortI = 207; shortJ = 15; shortK = 10; shortL = 61; shortM = 20; shortN = 174; shortO = 33; shortP = 77; break; //0 to 15 ms, 7 seat room
|
||||
case 13:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 29; shortE = 3; shortF = 210; shortG = 183; shortH = 43; shortI = 13; shortJ = 12; shortK = 26; shortL = 220; shortM = 67; shortN = 235; shortO = 11; shortP = 23; break; //0 to 15 ms, 8 seat room
|
||||
case 14:
|
||||
shortA = 17; shortB = 3; shortC = 21; shortD = 191; shortE = 31; shortF = 10; shortG = 41; shortH = 218; shortI = 15; shortJ = 6; shortK = 111; shortL = 29; shortM = 129; shortN = 206; shortO = 4; shortP = 7; break; //0 to 16 ms, 8 seat room
|
||||
case 15:
|
||||
shortA = 17; shortB = 25; shortC = 240; shortD = 29; shortE = 4; shortF = 18; shortG = 41; shortH = 43; shortI = 29; shortJ = 28; shortK = 250; shortL = 12; shortM = 261; shortN = 9; shortO = 5; shortP = 79; break; //0 to 18 ms, 10 seat room
|
||||
case 16:
|
||||
default:
|
||||
shortA = 5; shortB = 3; shortC = 23; shortD = 29; shortE = 3; shortF = 257; shortG = 199; shortH = 252; shortI = 132; shortJ = 18; shortK = 11; shortL = 6; shortM = 30; shortN = 27; shortO = 7; shortP = 8; break; //0 to 19 ms, 11 seat room
|
||||
}
|
||||
prevclearcoat = clearcoat;
|
||||
}
|
||||
double reg4n = (1.0-pow(1.0-B,2.0))*0.0336;
|
||||
double derez = 1.0;
|
||||
derez = fmin(fmax(derez/overallscale,0.0001),1.0);
|
||||
int bezFraction = (int)(1.0/derez);
|
||||
double bezTrim = (double)bezFraction/(bezFraction+1.0);
|
||||
derez = 1.0 / bezFraction;
|
||||
bezTrim = 1.0-(derez*bezTrim);
|
||||
//the revision more accurately connects the bezier curves
|
||||
double wet = 1.0-pow(1.0-C,2.0);
|
||||
|
||||
while (--sampleFrames >= 0)
|
||||
{
|
||||
double inputSampleL = *in1;
|
||||
double inputSampleR = *in2;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
double drySampleL = inputSampleL;
|
||||
double drySampleR = inputSampleR;
|
||||
|
||||
bez[bez_cycle] += derez;
|
||||
bez[bez_SampL] += (inputSampleR*derez);
|
||||
bez[bez_SampR] += (inputSampleL*derez); //stereo got reversed somewhere?
|
||||
if (bez[bez_cycle] > 1.0) { //hit the end point and we do a reverb sample
|
||||
bez[bez_cycle] = 0.0;
|
||||
//left verbs
|
||||
double dualmonoSampleL = bez[bez_SampL];
|
||||
b4AL[c4AL] = dualmonoSampleL + (g4AL * reg4n);
|
||||
b4BL[c4BL] = dualmonoSampleL + (g4BL * reg4n);
|
||||
b4CL[c4CL] = dualmonoSampleL + (g4CL * reg4n);
|
||||
b4DL[c4DL] = dualmonoSampleL + (g4DL * reg4n);
|
||||
|
||||
c4AL++; if (c4AL < 0 || c4AL > shortA) c4AL = 0;
|
||||
c4BL++; if (c4BL < 0 || c4BL > shortB) c4BL = 0;
|
||||
c4CL++; if (c4CL < 0 || c4CL > shortC) c4CL = 0;
|
||||
c4DL++; if (c4DL < 0 || c4DL > shortD) c4DL = 0;
|
||||
|
||||
double hA = b4AL[c4AL-((c4AL > shortA)?shortA+1:0)];
|
||||
double hB = b4BL[c4BL-((c4BL > shortB)?shortB+1:0)];
|
||||
double hC = b4CL[c4CL-((c4CL > shortC)?shortC+1:0)];
|
||||
double hD = b4DL[c4DL-((c4DL > shortD)?shortD+1:0)];
|
||||
b4EL[c4EL] = hA - (hB + hC + hD);
|
||||
b4FL[c4FL] = hB - (hA + hC + hD);
|
||||
b4GL[c4GL] = hC - (hA + hB + hD);
|
||||
b4HL[c4HL] = hD - (hA + hB + hC);
|
||||
|
||||
c4EL++; if (c4EL < 0 || c4EL > shortE) c4EL = 0;
|
||||
c4FL++; if (c4FL < 0 || c4FL > shortF) c4FL = 0;
|
||||
c4GL++; if (c4GL < 0 || c4GL > shortG) c4GL = 0;
|
||||
c4HL++; if (c4HL < 0 || c4HL > shortH) c4HL = 0;
|
||||
|
||||
hA = b4EL[c4EL-((c4EL > shortE)?shortE+1:0)];
|
||||
hB = b4FL[c4FL-((c4FL > shortF)?shortF+1:0)];
|
||||
hC = b4GL[c4GL-((c4GL > shortG)?shortG+1:0)];
|
||||
hD = b4HL[c4HL-((c4HL > shortH)?shortH+1:0)];
|
||||
b4IL[c4IL] = hA - (hB + hC + hD);
|
||||
b4JL[c4JL] = hB - (hA + hC + hD);
|
||||
b4KL[c4KL] = hC - (hA + hB + hD);
|
||||
b4LL[c4LL] = hD - (hA + hB + hC);
|
||||
|
||||
c4IL++; if (c4IL < 0 || c4IL > shortI) c4IL = 0;
|
||||
c4JL++; if (c4JL < 0 || c4JL > shortJ) c4JL = 0;
|
||||
c4KL++; if (c4KL < 0 || c4KL > shortK) c4KL = 0;
|
||||
c4LL++; if (c4LL < 0 || c4LL > shortL) c4LL = 0;
|
||||
|
||||
hA = b4IL[c4IL-((c4IL > shortI)?shortI+1:0)];
|
||||
hB = b4JL[c4JL-((c4JL > shortJ)?shortJ+1:0)];
|
||||
hC = b4KL[c4KL-((c4KL > shortK)?shortK+1:0)];
|
||||
hD = b4LL[c4LL-((c4LL > shortL)?shortL+1:0)];
|
||||
b4ML[c4ML] = hA - (hB + hC + hD);
|
||||
b4NL[c4NL] = hB - (hA + hC + hD);
|
||||
b4OL[c4OL] = hC - (hA + hB + hD);
|
||||
b4PL[c4PL] = hD - (hA + hB + hC);
|
||||
|
||||
c4ML++; if (c4ML < 0 || c4ML > shortM) c4ML = 0;
|
||||
c4NL++; if (c4NL < 0 || c4NL > shortN) c4NL = 0;
|
||||
c4OL++; if (c4OL < 0 || c4OL > shortO) c4OL = 0;
|
||||
c4PL++; if (c4PL < 0 || c4PL > shortP) c4PL = 0;
|
||||
|
||||
hA = b4ML[c4ML-((c4ML > shortM)?shortM+1:0)];
|
||||
hB = b4NL[c4NL-((c4NL > shortN)?shortN+1:0)];
|
||||
hC = b4OL[c4OL-((c4OL > shortO)?shortO+1:0)];
|
||||
hD = b4PL[c4PL-((c4PL > shortP)?shortP+1:0)];
|
||||
g4AL = hA - (hB + hC + hD);
|
||||
g4BL = hB - (hA + hC + hD);
|
||||
g4CL = hC - (hA + hB + hD);
|
||||
g4DL = hD - (hA + hB + hC);
|
||||
dualmonoSampleL = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
//right verbs
|
||||
double dualmonoSampleR = bez[bez_SampR];
|
||||
b4DR[c4DR] = dualmonoSampleR + (g4DR * reg4n);
|
||||
b4HR[c4HR] = dualmonoSampleR + (g4HR * reg4n);
|
||||
b4LR[c4LR] = dualmonoSampleR + (g4LR * reg4n);
|
||||
b4PR[c4PR] = dualmonoSampleR + (g4PR * reg4n);
|
||||
|
||||
c4DR++; if (c4DR < 0 || c4DR > shortD) c4DR = 0;
|
||||
c4HR++; if (c4HR < 0 || c4HR > shortH) c4HR = 0;
|
||||
c4LR++; if (c4LR < 0 || c4LR > shortL) c4LR = 0;
|
||||
c4PR++; if (c4PR < 0 || c4PR > shortP) c4PR = 0;
|
||||
|
||||
hA = b4DR[c4DR-((c4DR > shortD)?shortD+1:0)];
|
||||
hB = b4HR[c4HR-((c4HR > shortH)?shortH+1:0)];
|
||||
hC = b4LR[c4LR-((c4LR > shortL)?shortL+1:0)];
|
||||
hD = b4PR[c4PR-((c4PR > shortP)?shortP+1:0)];
|
||||
b4CR[c4CR] = hA - (hB + hC + hD);
|
||||
b4GR[c4GR] = hB - (hA + hC + hD);
|
||||
b4KR[c4KR] = hC - (hA + hB + hD);
|
||||
b4OR[c4OR] = hD - (hA + hB + hC);
|
||||
|
||||
c4CR++; if (c4CR < 0 || c4CR > shortC) c4CR = 0;
|
||||
c4GR++; if (c4GR < 0 || c4GR > shortG) c4GR = 0;
|
||||
c4KR++; if (c4KR < 0 || c4KR > shortK) c4KR = 0;
|
||||
c4OR++; if (c4OR < 0 || c4OR > shortO) c4OR = 0;
|
||||
|
||||
hA = b4CR[c4CR-((c4CR > shortC)?shortC+1:0)];
|
||||
hB = b4GR[c4GR-((c4GR > shortG)?shortG+1:0)];
|
||||
hC = b4KR[c4KR-((c4KR > shortK)?shortK+1:0)];
|
||||
hD = b4OR[c4OR-((c4OR > shortO)?shortO+1:0)];
|
||||
b4BR[c4BR] = hA - (hB + hC + hD);
|
||||
b4FR[c4FR] = hB - (hA + hC + hD);
|
||||
b4JR[c4JR] = hC - (hA + hB + hD);
|
||||
b4NR[c4NR] = hD - (hA + hB + hC);
|
||||
|
||||
c4BR++; if (c4BR < 0 || c4BR > shortB) c4BR = 0;
|
||||
c4FR++; if (c4FR < 0 || c4FR > shortF) c4FR = 0;
|
||||
c4JR++; if (c4JR < 0 || c4JR > shortJ) c4JR = 0;
|
||||
c4NR++; if (c4NR < 0 || c4NR > shortN) c4NR = 0;
|
||||
|
||||
hA = b4BR[c4BR-((c4BR > shortB)?shortB+1:0)];
|
||||
hB = b4FR[c4FR-((c4FR > shortF)?shortF+1:0)];
|
||||
hC = b4JR[c4JR-((c4JR > shortJ)?shortJ+1:0)];
|
||||
hD = b4NR[c4NR-((c4NR > shortN)?shortN+1:0)];
|
||||
b4AR[c4AR] = hA - (hB + hC + hD);
|
||||
b4ER[c4ER] = hB - (hA + hC + hD);
|
||||
b4IR[c4IR] = hC - (hA + hB + hD);
|
||||
b4MR[c4MR] = hD - (hA + hB + hC);
|
||||
|
||||
c4AR++; if (c4AR < 0 || c4AR > shortA) c4AR = 0;
|
||||
c4ER++; if (c4ER < 0 || c4ER > shortE) c4ER = 0;
|
||||
c4IR++; if (c4IR < 0 || c4IR > shortI) c4IR = 0;
|
||||
c4MR++; if (c4MR < 0 || c4MR > shortM) c4MR = 0;
|
||||
|
||||
hA = b4AR[c4AR-((c4AR > shortA)?shortA+1:0)];
|
||||
hB = b4ER[c4ER-((c4ER > shortE)?shortE+1:0)];
|
||||
hC = b4IR[c4IR-((c4IR > shortI)?shortI+1:0)];
|
||||
hD = b4MR[c4MR-((c4MR > shortM)?shortM+1:0)];
|
||||
g4DR = hA - (hB + hC + hD);
|
||||
g4HR = hB - (hA + hC + hD);
|
||||
g4LR = hC - (hA + hB + hD);
|
||||
g4PR = hD - (hA + hB + hC);
|
||||
dualmonoSampleR = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
bez[bez_CL] = bez[bez_BL];
|
||||
bez[bez_BL] = bez[bez_AL];
|
||||
bez[bez_AL] = dualmonoSampleR;
|
||||
bez[bez_SampL] = 0.0;
|
||||
|
||||
bez[bez_CR] = bez[bez_BR];
|
||||
bez[bez_BR] = bez[bez_AR];
|
||||
bez[bez_AR] = dualmonoSampleL;
|
||||
bez[bez_SampR] = 0.0;
|
||||
}
|
||||
double X = bez[bez_cycle]*bezTrim;
|
||||
double CBL = (bez[bez_CL]*(1.0-X))+(bez[bez_BL]*X);
|
||||
double CBR = (bez[bez_CR]*(1.0-X))+(bez[bez_BR]*X);
|
||||
double BAL = (bez[bez_BL]*(1.0-X))+(bez[bez_AL]*X);
|
||||
double BAR = (bez[bez_BR]*(1.0-X))+(bez[bez_AR]*X);
|
||||
inputSampleL = (bez[bez_BL]+(CBL*(1.0-X))+(BAL*X))*0.125;
|
||||
inputSampleR = (bez[bez_BR]+(CBR*(1.0-X))+(BAR*X))*0.125;
|
||||
|
||||
inputSampleL = (inputSampleL * wet)+(drySampleL * (1.0-wet));
|
||||
inputSampleR = (inputSampleR * wet)+(drySampleR * (1.0-wet));
|
||||
|
||||
//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++;
|
||||
}
|
||||
}
|
||||
287
plugins/MacAU/Donut/Donut.cpp
Executable file
287
plugins/MacAU/Donut/Donut.cpp
Executable file
|
|
@ -0,0 +1,287 @@
|
|||
/*
|
||||
* File: Donut.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
Donut.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "Donut.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(Donut)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::Donut
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Donut::Donut(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
SetParameter(kParam_D, kDefaultValue_ParamD );
|
||||
SetParameter(kParam_E, kDefaultValue_ParamE );
|
||||
SetParameter(kParam_F, kDefaultValue_ParamF );
|
||||
SetParameter(kParam_G, kDefaultValue_ParamG );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
case kParam_D:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterDName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamD;
|
||||
break;
|
||||
case kParam_E:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterEName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamE;
|
||||
break;
|
||||
case kParam_F:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterFName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamF;
|
||||
break;
|
||||
case kParam_G:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterGName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamG;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// Donut::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____DonutEffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::DonutKernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void Donut::DonutKernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < bez_total; x++) bezComp[x] = 0.0;
|
||||
bezComp[bez_cycle] = 1.0; bezMin = 0.0;
|
||||
low = band = 0.0;
|
||||
freqA = freqB = 0.5;
|
||||
resoA = resoB = 0.5;
|
||||
outA = outB = 1.0;
|
||||
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::DonutKernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void Donut::DonutKernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= GetSampleRate();
|
||||
|
||||
double bezRez = pow(1.0-GetParameter( kParam_A ), 6.0) / overallscale;
|
||||
double sloRez = pow(1.0-GetParameter( kParam_B ), 6.0) / overallscale;
|
||||
bezRez = fmin(fmax(bezRez,0.00001),1.0);
|
||||
sloRez = fmin(fmax(sloRez,0.00001),1.0);
|
||||
freqA = freqB; resoA = resoB; outA = outB;
|
||||
freqB = pow(GetParameter( kParam_C ),overallscale+1.0)*1.225;
|
||||
double movFreq = (GetParameter( kParam_D )*2.0)-1.0;
|
||||
resoB = pow(1.0-GetParameter( kParam_E ),2.0);
|
||||
if (resoB < 0.001) resoB = 0.001; // q of 0.0 is just a tone
|
||||
double movReso = (GetParameter( kParam_F )*-2.0)+1.0;
|
||||
outB = GetParameter( kParam_G )/sqrt(resoB);
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSample = *sourceP;
|
||||
if (fabs(inputSample)<1.18e-23) inputSample = fpd * 1.18e-17;
|
||||
|
||||
const double temp = (double)nSampleFrames/inFramesToProcess;
|
||||
const double freq = (freqA*temp)+(freqB*(1.0-temp));
|
||||
const double reso = (resoA*temp)+(resoB*(1.0-temp));
|
||||
const double out = (outA*temp)+(outB*(1.0-temp)); //dezippering
|
||||
|
||||
double ctrl = fabs(inputSample);
|
||||
bezMin = fmax(bezMin-sloRez,ctrl);
|
||||
bezComp[bez_cycle] += bezRez;
|
||||
bezComp[bez_Ctrl] += (bezMin * bezRez);
|
||||
|
||||
if (bezComp[bez_cycle] > 1.0) {
|
||||
bezComp[bez_cycle] -= 1.0;
|
||||
bezComp[bez_C] = bezComp[bez_B];
|
||||
bezComp[bez_B] = bezComp[bez_A];
|
||||
bezComp[bez_A] = bezComp[bez_Ctrl];
|
||||
bezComp[bez_Ctrl] = 0.0;
|
||||
}
|
||||
const double CB = (bezComp[bez_C]*(1.0-bezComp[bez_cycle]))+(bezComp[bez_B]*bezComp[bez_cycle]);
|
||||
const double BA = (bezComp[bez_B]*(1.0-bezComp[bez_cycle]))+(bezComp[bez_A]*bezComp[bez_cycle]);
|
||||
const double CBA = (bezComp[bez_B]+(CB*(1.0-bezComp[bez_cycle]))+(BA*bezComp[bez_cycle]))*0.5;
|
||||
const double mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
const double mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
low += mFreq*band; band += mFreq*((mReso*inputSample)-low-(mReso*band));
|
||||
inputSample = (low-sin(band*0.5))*out; //airwin-donut
|
||||
|
||||
//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;
|
||||
}
|
||||
}
|
||||
|
||||
1
plugins/MacAU/Donut/Donut.exp
Executable file
1
plugins/MacAU/Donut/Donut.exp
Executable file
|
|
@ -0,0 +1 @@
|
|||
_DonutEntry
|
||||
168
plugins/MacAU/Donut/Donut.h
Executable file
168
plugins/MacAU/Donut/Donut.h
Executable file
|
|
@ -0,0 +1,168 @@
|
|||
/*
|
||||
* File: Donut.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "DonutVersion.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __Donut_h__
|
||||
#define __Donut_h__
|
||||
|
||||
|
||||
#pragma mark ____Donut Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 1.0;
|
||||
static const float kDefaultValue_ParamD = 0.5;
|
||||
static const float kDefaultValue_ParamE = 0.0;
|
||||
static const float kDefaultValue_ParamF = 0.5;
|
||||
static const float kDefaultValue_ParamG = 1.0;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("Attack");
|
||||
static CFStringRef kParameterBName = CFSTR("Release");
|
||||
static CFStringRef kParameterCName = CFSTR("BaseFrq");
|
||||
static CFStringRef kParameterDName = CFSTR("MoveFrq");
|
||||
static CFStringRef kParameterEName = CFSTR("BaseRes");
|
||||
static CFStringRef kParameterFName = CFSTR("MoveRes");
|
||||
static CFStringRef kParameterGName = CFSTR("Output");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
kParam_D =3,
|
||||
kParam_E =4,
|
||||
kParam_F =5,
|
||||
kParam_G =6,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=7
|
||||
};
|
||||
|
||||
#pragma mark ____Donut
|
||||
class Donut : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
Donut(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~Donut () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new DonutKernel(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 kDonutVersion; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class DonutKernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
DonutKernel(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:
|
||||
enum {
|
||||
bez_A,
|
||||
bez_B,
|
||||
bez_C,
|
||||
bez_Ctrl,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bezComp[bez_total];
|
||||
double bezMin;
|
||||
double low;
|
||||
double band;
|
||||
double freqA, freqB;
|
||||
double resoA, resoB;
|
||||
double outA, outB;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacAU/Donut/Donut.r
Executable file
61
plugins/MacAU/Donut/Donut.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: Donut.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "DonutVersion.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_Donut 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Donut~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_Donut
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE Donut_COMP_SUBTYPE
|
||||
#define COMP_MANUF Donut_COMP_MANF
|
||||
|
||||
#define VERSION kDonutVersion
|
||||
#define NAME "Airwindows: Donut"
|
||||
#define DESCRIPTION "Donut AU"
|
||||
#define ENTRY_POINT "DonutEntry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
142
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.pbxuser
Executable file
142
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,142 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* Donut */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
292,
|
||||
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 = 794866633;
|
||||
PBXWorkspaceStateSaveDate = 794866633;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8B4253512F60B1AC00D5A4B3 /* PlistBookmark */ = 8B4253512F60B1AC00D5A4B3 /* PlistBookmark */;
|
||||
8BD057212F60B96B00C3663C /* PBXTextBookmark */ = 8BD057212F60B96B00C3663C /* PBXTextBookmark */;
|
||||
8BD057222F60B96B00C3663C /* PBXBookmark */ = 8BD057222F60B96B00C3663C /* PBXBookmark */;
|
||||
8BD057232F60B96B00C3663C /* PBXTextBookmark */ = 8BD057232F60B96B00C3663C /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8B4253512F60B1AC00D5A4B3 /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/Donut/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BA05A660720730100365D66 /* Donut.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 5382}}";
|
||||
sepNavSelRange = "{11429, 1176}";
|
||||
sepNavVisRange = "{11253, 1698}";
|
||||
sepNavWindowFrame = "{{330, 53}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1098}}";
|
||||
sepNavSelRange = "{2759, 0}";
|
||||
sepNavVisRange = "{2664, 269}";
|
||||
sepNavWindowFrame = "{{38, 41}, {840, 811}}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* Donut.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3024}}";
|
||||
sepNavSelRange = "{5651, 299}";
|
||||
sepNavVisRange = "{2627, 1002}";
|
||||
sepNavWindowFrame = "{{754, 67}, {840, 811}}";
|
||||
};
|
||||
};
|
||||
8BD057212F60B96B00C3663C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* Donut.h */;
|
||||
name = "Donut.h: 154";
|
||||
rLen = 0;
|
||||
rLoc = 5835;
|
||||
rType = 0;
|
||||
vrLen = 234;
|
||||
vrLoc = 5670;
|
||||
};
|
||||
8BD057222F60B96B00C3663C /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* DonutVersion.h */;
|
||||
};
|
||||
8BD057232F60B96B00C3663C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* DonutVersion.h */;
|
||||
name = "DonutVersion.h: 51";
|
||||
rLen = 0;
|
||||
rLoc = 2759;
|
||||
rType = 0;
|
||||
vrLen = 269;
|
||||
vrLoc = 2664;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1507
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.perspectivev3
Executable file
1507
plugins/MacAU/Donut/Donut.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
490
plugins/MacAU/Donut/Donut.xcodeproj/project.pbxproj
Executable file
490
plugins/MacAU/Donut/Donut.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,490 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */; };
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126C089847F5002C6BFC /* CAVectorUnit.h */; };
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */; };
|
||||
8B4119B70749654200361ABE /* Donut.r in Rez */ = {isa = PBXBuildFile; fileRef = 8BA05A680720730100365D66 /* Donut.r */; };
|
||||
8BA05A6B0720730100365D66 /* Donut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* Donut.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* DonutVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* DonutVersion.h */; };
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A7F072073D200365D66 /* AUBase.cpp */; };
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A80072073D200365D66 /* AUBase.h */; };
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A81072073D200365D66 /* AUDispatch.cpp */; };
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A82072073D200365D66 /* AUDispatch.h */; };
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A83072073D200365D66 /* AUInputElement.cpp */; };
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A84072073D200365D66 /* AUInputElement.h */; };
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A85072073D200365D66 /* AUOutputElement.cpp */; };
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A86072073D200365D66 /* AUOutputElement.h */; };
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A88072073D200365D66 /* AUScopeElement.cpp */; };
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A89072073D200365D66 /* AUScopeElement.h */; };
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A8A072073D200365D66 /* ComponentBase.cpp */; };
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A8B072073D200365D66 /* ComponentBase.h */; };
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A9A072073D200365D66 /* AUEffectBase.cpp */; };
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A9B072073D200365D66 /* AUEffectBase.h */; };
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA7072073D200365D66 /* AUBuffer.cpp */; };
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AA8072073D200365D66 /* AUBuffer.h */; };
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */; };
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */; };
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */; };
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAC072073D200365D66 /* AUSilentTimeout.h */; };
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */; };
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */; };
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */; };
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE10720742100365D66 /* CAMutex.cpp */; };
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE20720742100365D66 /* CAMutex.h */; };
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */; };
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE40720742100365D66 /* CAStreamBasicDescription.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 */; };
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05B050720754400365D66 /* CAAUParameter.cpp */; };
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05B060720754400365D66 /* CAAUParameter.h */; };
|
||||
8BC6025C073B072D006C4272 /* Donut.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* Donut.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */; };
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* Donut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Donut.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* Donut.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = Donut.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* Donut.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = Donut.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DonutVersion.h; sourceTree = "<group>"; };
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A80072073D200365D66 /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A87072073D200365D66 /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDebugDispatcher.cpp; sourceTree = "<group>"; };
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDebugDispatcher.h; sourceTree = "<group>"; };
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.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>"; };
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8BC6025B073B072D006C4272 /* Donut.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Donut.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* Donut.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Donut.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AUBaseHelper.cpp; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.cpp; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AUBaseHelper.h; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.h; sourceTree = SYSTEM_DEVELOPER_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 /* Donut */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = Donut;
|
||||
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 = (
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */,
|
||||
8BA05A7D072073D200365D66 /* AUPublic */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* Donut.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* Donut.h */,
|
||||
8BA05A660720730100365D66 /* Donut.cpp */,
|
||||
8BA05A670720730100365D66 /* Donut.exp */,
|
||||
8BA05A680720730100365D66 /* Donut.r */,
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A7D072073D200365D66 /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7E072073D200365D66 /* AUBase */,
|
||||
8BA05A99072073D200365D66 /* OtherBases */,
|
||||
8BA05AA6072073D200365D66 /* Utility */,
|
||||
);
|
||||
name = AUPublic;
|
||||
path = Extras/CoreAudio/AudioUnits/AUPublic;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
8BA05A7E072073D200365D66 /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */,
|
||||
8BA05A80072073D200365D66 /* AUBase.h */,
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */,
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */,
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */,
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */,
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */,
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */,
|
||||
8BA05A87072073D200365D66 /* AUResources.r */,
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */,
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */,
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */,
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A99072073D200365D66 /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */,
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AA6072073D200365D66 /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */,
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */,
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */,
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */,
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */,
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */,
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */,
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */,
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */,
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */,
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */,
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */,
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */,
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */,
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */,
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */,
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */,
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */,
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */,
|
||||
);
|
||||
name = PublicUtility;
|
||||
path = Extras/CoreAudio/PublicUtility;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6E0720730100365D66 /* DonutVersion.h in Headers */,
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */,
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */,
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */,
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */,
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */,
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */,
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */,
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */,
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */,
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */,
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */,
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */,
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */,
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */,
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */,
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* Donut.h in Headers */,
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */,
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */,
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "Donut" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Donut;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = Donut;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* Donut.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "Donut" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* Donut */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXRezBuildPhase section */
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */ = {
|
||||
isa = PBXRezBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B4119B70749654200361ABE /* Donut.r in Rez */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXRezBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6B0720730100365D66 /* Donut.cpp in Sources */,
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */,
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */,
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */,
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */,
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */,
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */,
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */,
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */,
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */,
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */,
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */,
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */,
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C167EFE841241C02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXPORTED_SYMBOLS_FILE = Donut.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = Donut;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
ppc,
|
||||
i386,
|
||||
x86_64,
|
||||
);
|
||||
EXPORTED_SYMBOLS_FILE = Donut.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||
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 = 10.4;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = Donut;
|
||||
SDKROOT = macosx10.5;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = all;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "Donut" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "Donut" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
58
plugins/MacAU/Donut/DonutVersion.h
Executable file
58
plugins/MacAU/Donut/DonutVersion.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: DonutVersion.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 __DonutVersion_h__
|
||||
#define __DonutVersion_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kDonutVersion 0xFFFFFFFF
|
||||
#else
|
||||
#define kDonutVersion 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define Donut_COMP_MANF 'Dthr'
|
||||
#define Donut_COMP_SUBTYPE 'donu'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
BIN
plugins/MacAU/Donut/English.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacAU/Donut/English.lproj/InfoPlist.strings
Executable file
Binary file not shown.
28
plugins/MacAU/Donut/Info.plist
Executable file
28
plugins/MacAU/Donut/Info.plist
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
<?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>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</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>
|
||||
16
plugins/MacAU/Donut/version.plist
Executable file
16
plugins/MacAU/Donut/version.plist
Executable 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>
|
||||
BIN
plugins/MacAU/WoodenBox/English.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacAU/WoodenBox/English.lproj/InfoPlist.strings
Executable file
Binary file not shown.
28
plugins/MacAU/WoodenBox/Info.plist
Executable file
28
plugins/MacAU/WoodenBox/Info.plist
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
<?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>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>BNDL</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>Dthr</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
5
plugins/MacAU/WoodenBox/StarterAU_Prefix.pch
Executable file
5
plugins/MacAU/WoodenBox/StarterAU_Prefix.pch
Executable file
|
|
@ -0,0 +1,5 @@
|
|||
//
|
||||
// Prefix header for all source files of the '«PROJECTNAMEASIDENTIFIER»' target in the '«PROJECTNAMEASIDENTIFIER»' project.
|
||||
//
|
||||
|
||||
#include <CoreServices/CoreServices.h>
|
||||
541
plugins/MacAU/WoodenBox/WoodenBox.cpp
Executable file
541
plugins/MacAU/WoodenBox/WoodenBox.cpp
Executable file
|
|
@ -0,0 +1,541 @@
|
|||
/*
|
||||
* File: WoodenBox.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
WoodenBox.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "WoodenBox.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(WoodenBox)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::WoodenBox
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
WoodenBox::WoodenBox(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Indexed;
|
||||
outParameterInfo.minValue = 0;
|
||||
outParameterInfo.maxValue = 16;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// state that plugin supports only stereo-in/stereo-out processing
|
||||
UInt32 WoodenBox::SupportedNumChannels(const AUChannelInfo ** outInfo)
|
||||
{
|
||||
if (outInfo != NULL)
|
||||
{
|
||||
static AUChannelInfo info;
|
||||
info.inChannels = 2;
|
||||
info.outChannels = 2;
|
||||
*outInfo = &info;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// WoodenBox::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____WoodenBoxEffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::WoodenBoxKernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::Reset(AudioUnitScope inScope, AudioUnitElement inElement)
|
||||
{
|
||||
c4AL = c4BL = c4CL = c4DL = c4EL = c4FL = c4GL = c4HL = 1;
|
||||
c4IL = c4JL = c4KL = c4LL = c4ML = c4NL = c4OL = c4PL = 1;
|
||||
c4AR = c4BR = c4CR = c4DR = c4ER = c4FR = c4GR = c4HR = 1;
|
||||
c4IR = c4JR = c4KR = c4LR = c4MR = c4NR = c4OR = c4PR = 1;
|
||||
for(int x = 0; x < d4A+2; x++) {b4AL[x] = 0.0; b4AR[x] = 0.0;}
|
||||
for(int x = 0; x < d4B+2; x++) {b4BL[x] = 0.0; b4BR[x] = 0.0;}
|
||||
for(int x = 0; x < d4C+2; x++) {b4CL[x] = 0.0; b4CR[x] = 0.0;}
|
||||
for(int x = 0; x < d4D+2; x++) {b4DL[x] = 0.0; b4DR[x] = 0.0;}
|
||||
for(int x = 0; x < d4E+2; x++) {b4EL[x] = 0.0; b4ER[x] = 0.0;}
|
||||
for(int x = 0; x < d4F+2; x++) {b4FL[x] = 0.0; b4FR[x] = 0.0;}
|
||||
for(int x = 0; x < d4G+2; x++) {b4GL[x] = 0.0; b4GR[x] = 0.0;}
|
||||
for(int x = 0; x < d4H+2; x++) {b4HL[x] = 0.0; b4HR[x] = 0.0;}
|
||||
for(int x = 0; x < d4I+2; x++) {b4IL[x] = 0.0; b4IR[x] = 0.0;}
|
||||
for(int x = 0; x < d4J+2; x++) {b4JL[x] = 0.0; b4JR[x] = 0.0;}
|
||||
for(int x = 0; x < d4K+2; x++) {b4KL[x] = 0.0; b4KR[x] = 0.0;}
|
||||
for(int x = 0; x < d4L+2; x++) {b4LL[x] = 0.0; b4LR[x] = 0.0;}
|
||||
for(int x = 0; x < d4M+2; x++) {b4ML[x] = 0.0; b4MR[x] = 0.0;}
|
||||
for(int x = 0; x < d4N+2; x++) {b4NL[x] = 0.0; b4NR[x] = 0.0;}
|
||||
for(int x = 0; x < d4O+2; x++) {b4OL[x] = 0.0; b4OR[x] = 0.0;}
|
||||
for(int x = 0; x < d4P+2; x++) {b4PL[x] = 0.0; b4PR[x] = 0.0;}
|
||||
g4AL = g4BL = g4CL = g4DL = 0.0;
|
||||
g4DR = g4HR = g4LR = g4PR = 0.0;
|
||||
|
||||
for (int x = 0; x < bez_total; x++) bez[x] = 0.0;
|
||||
bez[bez_cycle] = 1.0;
|
||||
|
||||
shortA = 173;
|
||||
shortB = 82;
|
||||
shortC = 240;
|
||||
shortD = 191;
|
||||
shortE = 196;
|
||||
shortF = 257;
|
||||
shortG = 203;
|
||||
shortH = 252;
|
||||
shortI = 207;
|
||||
shortJ = 203;
|
||||
shortK = 250;
|
||||
shortL = 220;
|
||||
shortM = 261;
|
||||
shortN = 235;
|
||||
shortO = 161;
|
||||
shortP = 161;
|
||||
prevclearcoat = -1;
|
||||
|
||||
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
|
||||
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
|
||||
return noErr;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::ProcessBufferLists
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
OSStatus WoodenBox::ProcessBufferLists(AudioUnitRenderActionFlags & ioActionFlags,
|
||||
const AudioBufferList & inBuffer,
|
||||
AudioBufferList & outBuffer,
|
||||
UInt32 inFramesToProcess)
|
||||
{
|
||||
Float32 * inputL = (Float32*)(inBuffer.mBuffers[0].mData);
|
||||
Float32 * inputR = (Float32*)(inBuffer.mBuffers[1].mData);
|
||||
Float32 * outputL = (Float32*)(outBuffer.mBuffers[0].mData);
|
||||
Float32 * outputR = (Float32*)(outBuffer.mBuffers[1].mData);
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= GetSampleRate();
|
||||
|
||||
int clearcoat = GetParameter( kParam_A );
|
||||
if (clearcoat != prevclearcoat) {
|
||||
for(int count = 0; count < d4A+2; count++) {b4AL[count] = 0.0; b4AR[count] = 0.0;}
|
||||
for(int count = 0; count < d4B+2; count++) {b4BL[count] = 0.0; b4BR[count] = 0.0;}
|
||||
for(int count = 0; count < d4C+2; count++) {b4CL[count] = 0.0; b4CR[count] = 0.0;}
|
||||
for(int count = 0; count < d4D+2; count++) {b4DL[count] = 0.0; b4DR[count] = 0.0;}
|
||||
for(int count = 0; count < d4E+2; count++) {b4EL[count] = 0.0; b4ER[count] = 0.0;}
|
||||
for(int count = 0; count < d4F+2; count++) {b4FL[count] = 0.0; b4FR[count] = 0.0;}
|
||||
for(int count = 0; count < d4G+2; count++) {b4GL[count] = 0.0; b4GR[count] = 0.0;}
|
||||
for(int count = 0; count < d4H+2; count++) {b4HL[count] = 0.0; b4HR[count] = 0.0;}
|
||||
for(int count = 0; count < d4I+2; count++) {b4IL[count] = 0.0; b4IR[count] = 0.0;}
|
||||
for(int count = 0; count < d4J+2; count++) {b4JL[count] = 0.0; b4JR[count] = 0.0;}
|
||||
for(int count = 0; count < d4K+2; count++) {b4KL[count] = 0.0; b4KR[count] = 0.0;}
|
||||
for(int count = 0; count < d4L+2; count++) {b4LL[count] = 0.0; b4LR[count] = 0.0;}
|
||||
for(int count = 0; count < d4M+2; count++) {b4ML[count] = 0.0; b4MR[count] = 0.0;}
|
||||
for(int count = 0; count < d4N+2; count++) {b4NL[count] = 0.0; b4NR[count] = 0.0;}
|
||||
for(int count = 0; count < d4O+2; count++) {b4OL[count] = 0.0; b4OR[count] = 0.0;}
|
||||
for(int count = 0; count < d4P+2; count++) {b4PL[count] = 0.0; b4PR[count] = 0.0;}
|
||||
c4AL = 1;
|
||||
c4BL = 1;
|
||||
c4CL = 1;
|
||||
c4DL = 1;
|
||||
c4EL = 1;
|
||||
c4FL = 1;
|
||||
c4GL = 1;
|
||||
c4HL = 1;
|
||||
c4IL = 1;
|
||||
c4JL = 1;
|
||||
c4KL = 1;
|
||||
c4LL = 1;
|
||||
c4ML = 1;
|
||||
c4NL = 1;
|
||||
c4OL = 1;
|
||||
c4PL = 1;
|
||||
|
||||
c4AR = 1;
|
||||
c4BR = 1;
|
||||
c4CR = 1;
|
||||
c4DR = 1;
|
||||
c4ER = 1;
|
||||
c4FR = 1;
|
||||
c4GR = 1;
|
||||
c4HR = 1;
|
||||
c4IR = 1;
|
||||
c4JR = 1;
|
||||
c4KR = 1;
|
||||
c4LR = 1;
|
||||
c4MR = 1;
|
||||
c4NR = 1;
|
||||
c4OR = 1;
|
||||
c4PR = 1;
|
||||
switch (clearcoat)
|
||||
{
|
||||
case 0:
|
||||
shortA = 17; shortB = 10; shortC = 23; shortD = 3; shortE = 8; shortF = 7; shortG = 41; shortH = 6; shortI = 3; shortJ = 6; shortK = 59; shortL = 61; shortM = 4; shortN = 71; shortO = 5; shortP = 4; break; //0 to 4 ms, 0 seat room
|
||||
case 1:
|
||||
shortA = 12; shortB = 19; shortC = 89; shortD = 25; shortE = 92; shortF = 8; shortG = 41; shortH = 11; shortI = 80; shortJ = 27; shortK = 6; shortL = 4; shortM = 3; shortN = 21; shortO = 7; shortP = 63; break; //0 to 7 ms, 1 seat room
|
||||
case 2:
|
||||
shortA = 35; shortB = 19; shortC = 5; shortD = 7; shortE = 15; shortF = 7; shortG = 41; shortH = 191; shortI = 177; shortJ = 3; shortK = 6; shortL = 22; shortM = 23; shortN = 118; shortO = 4; shortP = 79; break; //0 to 11 ms, 4 seat room
|
||||
case 3:
|
||||
shortA = 17; shortB = 19; shortC = 105; shortD = 135; shortE = 31; shortF = 86; shortG = 41; shortH = 16; shortI = 3; shortJ = 16; shortK = 6; shortL = 151; shortM = 147; shortN = 26; shortO = 3; shortP = 10; break; //0 to 11 ms, 4 seat room
|
||||
case 4:
|
||||
shortA = 134; shortB = 13; shortC = 26; shortD = 10; shortE = 34; shortF = 24; shortG = 4; shortH = 60; shortI = 88; shortJ = 9; shortK = 155; shortL = 11; shortM = 3; shortN = 18; shortO = 9; shortP = 161; break; //0 to 11 ms, 4 seat room
|
||||
case 5:
|
||||
shortA = 17; shortB = 82; shortC = 23; shortD = 29; shortE = 133; shortF = 3; shortG = 41; shortH = 27; shortI = 10; shortJ = 177; shortK = 6; shortL = 37; shortM = 14; shortN = 145; shortO = 4; shortP = 9; break; //0 to 12 ms, 4 seat room
|
||||
case 6:
|
||||
shortA = 31; shortB = 19; shortC = 3; shortD = 29; shortE = 196; shortF = 11; shortG = 10; shortH = 65; shortI = 21; shortJ = 3; shortK = 148; shortL = 4; shortM = 26; shortN = 7; shortO = 161; shortP = 155; break; //0 to 12 ms, 4 seat room
|
||||
case 7:
|
||||
shortA = 17; shortB = 8; shortC = 3; shortD = 37; shortE = 3; shortF = 19; shortG = 41; shortH = 15; shortI = 7; shortJ = 197; shortK = 178; shortL = 22; shortM = 26; shortN = 97; shortO = 16; shortP = 156; break; //0 to 12 ms, 5 seat room
|
||||
case 8:
|
||||
shortA = 17; shortB = 3; shortC = 8; shortD = 29; shortE = 39; shortF = 156; shortG = 7; shortH = 43; shortI = 101; shortJ = 8; shortK = 15; shortL = 169; shortM = 67; shortN = 39; shortO = 154; shortP = 4; break; //0 to 13 ms, 5 seat room
|
||||
case 9:
|
||||
shortA = 18; shortB = 19; shortC = 23; shortD = 5; shortE = 176; shortF = 3; shortG = 41; shortH = 147; shortI = 7; shortJ = 148; shortK = 5; shortL = 15; shortM = 10; shortN = 30; shortO = 119; shortP = 19; break; //0 to 13 ms, 5 seat room
|
||||
case 10:
|
||||
shortA = 173; shortB = 19; shortC = 23; shortD = 27; shortE = 8; shortF = 37; shortG = 7; shortH = 202; shortI = 8; shortJ = 13; shortK = 3; shortL = 174; shortM = 67; shortN = 21; shortO = 73; shortP = 14; break; //0 to 14 ms, 6 seat room
|
||||
case 11:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 25; shortE = 19; shortF = 145; shortG = 9; shortH = 43; shortI = 47; shortJ = 203; shortK = 18; shortL = 180; shortM = 226; shortN = 3; shortO = 73; shortP = 12; break; //0 to 15 ms, 7 seat room
|
||||
case 12:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 3; shortE = 3; shortF = 20; shortG = 203; shortH = 99; shortI = 207; shortJ = 15; shortK = 10; shortL = 61; shortM = 20; shortN = 174; shortO = 33; shortP = 77; break; //0 to 15 ms, 7 seat room
|
||||
case 13:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 29; shortE = 3; shortF = 210; shortG = 183; shortH = 43; shortI = 13; shortJ = 12; shortK = 26; shortL = 220; shortM = 67; shortN = 235; shortO = 11; shortP = 23; break; //0 to 15 ms, 8 seat room
|
||||
case 14:
|
||||
shortA = 17; shortB = 3; shortC = 21; shortD = 191; shortE = 31; shortF = 10; shortG = 41; shortH = 218; shortI = 15; shortJ = 6; shortK = 111; shortL = 29; shortM = 129; shortN = 206; shortO = 4; shortP = 7; break; //0 to 16 ms, 8 seat room
|
||||
case 15:
|
||||
shortA = 17; shortB = 25; shortC = 240; shortD = 29; shortE = 4; shortF = 18; shortG = 41; shortH = 43; shortI = 29; shortJ = 28; shortK = 250; shortL = 12; shortM = 261; shortN = 9; shortO = 5; shortP = 79; break; //0 to 18 ms, 10 seat room
|
||||
case 16:
|
||||
default:
|
||||
shortA = 5; shortB = 3; shortC = 23; shortD = 29; shortE = 3; shortF = 257; shortG = 199; shortH = 252; shortI = 132; shortJ = 18; shortK = 11; shortL = 6; shortM = 30; shortN = 27; shortO = 7; shortP = 8; break; //0 to 19 ms, 11 seat room
|
||||
}
|
||||
prevclearcoat = clearcoat;
|
||||
}
|
||||
double reg4n = (1.0-pow(1.0-GetParameter( kParam_B ),2.0))*0.0336;
|
||||
double derez = 1.0;
|
||||
derez = fmin(fmax(derez/overallscale,0.0001),1.0);
|
||||
int bezFraction = (int)(1.0/derez);
|
||||
double bezTrim = (double)bezFraction/(bezFraction+1.0);
|
||||
derez = 1.0 / bezFraction;
|
||||
bezTrim = 1.0-(derez*bezTrim);
|
||||
//the revision more accurately connects the bezier curves
|
||||
double wet = 1.0-pow(1.0-GetParameter( kParam_C ),2.0);
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *inputL;
|
||||
double inputSampleR = *inputR;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
double drySampleL = inputSampleL;
|
||||
double drySampleR = inputSampleR;
|
||||
|
||||
bez[bez_cycle] += derez;
|
||||
bez[bez_SampL] += (inputSampleR*derez);
|
||||
bez[bez_SampR] += (inputSampleL*derez); //stereo got reversed somewhere?
|
||||
if (bez[bez_cycle] > 1.0) { //hit the end point and we do a reverb sample
|
||||
bez[bez_cycle] = 0.0;
|
||||
//left verbs
|
||||
double dualmonoSampleL = bez[bez_SampL];
|
||||
b4AL[c4AL] = dualmonoSampleL + (g4AL * reg4n);
|
||||
b4BL[c4BL] = dualmonoSampleL + (g4BL * reg4n);
|
||||
b4CL[c4CL] = dualmonoSampleL + (g4CL * reg4n);
|
||||
b4DL[c4DL] = dualmonoSampleL + (g4DL * reg4n);
|
||||
|
||||
c4AL++; if (c4AL < 0 || c4AL > shortA) c4AL = 0;
|
||||
c4BL++; if (c4BL < 0 || c4BL > shortB) c4BL = 0;
|
||||
c4CL++; if (c4CL < 0 || c4CL > shortC) c4CL = 0;
|
||||
c4DL++; if (c4DL < 0 || c4DL > shortD) c4DL = 0;
|
||||
|
||||
double hA = b4AL[c4AL-((c4AL > shortA)?shortA+1:0)];
|
||||
double hB = b4BL[c4BL-((c4BL > shortB)?shortB+1:0)];
|
||||
double hC = b4CL[c4CL-((c4CL > shortC)?shortC+1:0)];
|
||||
double hD = b4DL[c4DL-((c4DL > shortD)?shortD+1:0)];
|
||||
b4EL[c4EL] = hA - (hB + hC + hD);
|
||||
b4FL[c4FL] = hB - (hA + hC + hD);
|
||||
b4GL[c4GL] = hC - (hA + hB + hD);
|
||||
b4HL[c4HL] = hD - (hA + hB + hC);
|
||||
|
||||
c4EL++; if (c4EL < 0 || c4EL > shortE) c4EL = 0;
|
||||
c4FL++; if (c4FL < 0 || c4FL > shortF) c4FL = 0;
|
||||
c4GL++; if (c4GL < 0 || c4GL > shortG) c4GL = 0;
|
||||
c4HL++; if (c4HL < 0 || c4HL > shortH) c4HL = 0;
|
||||
|
||||
hA = b4EL[c4EL-((c4EL > shortE)?shortE+1:0)];
|
||||
hB = b4FL[c4FL-((c4FL > shortF)?shortF+1:0)];
|
||||
hC = b4GL[c4GL-((c4GL > shortG)?shortG+1:0)];
|
||||
hD = b4HL[c4HL-((c4HL > shortH)?shortH+1:0)];
|
||||
b4IL[c4IL] = hA - (hB + hC + hD);
|
||||
b4JL[c4JL] = hB - (hA + hC + hD);
|
||||
b4KL[c4KL] = hC - (hA + hB + hD);
|
||||
b4LL[c4LL] = hD - (hA + hB + hC);
|
||||
|
||||
c4IL++; if (c4IL < 0 || c4IL > shortI) c4IL = 0;
|
||||
c4JL++; if (c4JL < 0 || c4JL > shortJ) c4JL = 0;
|
||||
c4KL++; if (c4KL < 0 || c4KL > shortK) c4KL = 0;
|
||||
c4LL++; if (c4LL < 0 || c4LL > shortL) c4LL = 0;
|
||||
|
||||
hA = b4IL[c4IL-((c4IL > shortI)?shortI+1:0)];
|
||||
hB = b4JL[c4JL-((c4JL > shortJ)?shortJ+1:0)];
|
||||
hC = b4KL[c4KL-((c4KL > shortK)?shortK+1:0)];
|
||||
hD = b4LL[c4LL-((c4LL > shortL)?shortL+1:0)];
|
||||
b4ML[c4ML] = hA - (hB + hC + hD);
|
||||
b4NL[c4NL] = hB - (hA + hC + hD);
|
||||
b4OL[c4OL] = hC - (hA + hB + hD);
|
||||
b4PL[c4PL] = hD - (hA + hB + hC);
|
||||
|
||||
c4ML++; if (c4ML < 0 || c4ML > shortM) c4ML = 0;
|
||||
c4NL++; if (c4NL < 0 || c4NL > shortN) c4NL = 0;
|
||||
c4OL++; if (c4OL < 0 || c4OL > shortO) c4OL = 0;
|
||||
c4PL++; if (c4PL < 0 || c4PL > shortP) c4PL = 0;
|
||||
|
||||
hA = b4ML[c4ML-((c4ML > shortM)?shortM+1:0)];
|
||||
hB = b4NL[c4NL-((c4NL > shortN)?shortN+1:0)];
|
||||
hC = b4OL[c4OL-((c4OL > shortO)?shortO+1:0)];
|
||||
hD = b4PL[c4PL-((c4PL > shortP)?shortP+1:0)];
|
||||
g4AL = hA - (hB + hC + hD);
|
||||
g4BL = hB - (hA + hC + hD);
|
||||
g4CL = hC - (hA + hB + hD);
|
||||
g4DL = hD - (hA + hB + hC);
|
||||
dualmonoSampleL = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
//right verbs
|
||||
double dualmonoSampleR = bez[bez_SampR];
|
||||
b4DR[c4DR] = dualmonoSampleR + (g4DR * reg4n);
|
||||
b4HR[c4HR] = dualmonoSampleR + (g4HR * reg4n);
|
||||
b4LR[c4LR] = dualmonoSampleR + (g4LR * reg4n);
|
||||
b4PR[c4PR] = dualmonoSampleR + (g4PR * reg4n);
|
||||
|
||||
c4DR++; if (c4DR < 0 || c4DR > shortD) c4DR = 0;
|
||||
c4HR++; if (c4HR < 0 || c4HR > shortH) c4HR = 0;
|
||||
c4LR++; if (c4LR < 0 || c4LR > shortL) c4LR = 0;
|
||||
c4PR++; if (c4PR < 0 || c4PR > shortP) c4PR = 0;
|
||||
|
||||
hA = b4DR[c4DR-((c4DR > shortD)?shortD+1:0)];
|
||||
hB = b4HR[c4HR-((c4HR > shortH)?shortH+1:0)];
|
||||
hC = b4LR[c4LR-((c4LR > shortL)?shortL+1:0)];
|
||||
hD = b4PR[c4PR-((c4PR > shortP)?shortP+1:0)];
|
||||
b4CR[c4CR] = hA - (hB + hC + hD);
|
||||
b4GR[c4GR] = hB - (hA + hC + hD);
|
||||
b4KR[c4KR] = hC - (hA + hB + hD);
|
||||
b4OR[c4OR] = hD - (hA + hB + hC);
|
||||
|
||||
c4CR++; if (c4CR < 0 || c4CR > shortC) c4CR = 0;
|
||||
c4GR++; if (c4GR < 0 || c4GR > shortG) c4GR = 0;
|
||||
c4KR++; if (c4KR < 0 || c4KR > shortK) c4KR = 0;
|
||||
c4OR++; if (c4OR < 0 || c4OR > shortO) c4OR = 0;
|
||||
|
||||
hA = b4CR[c4CR-((c4CR > shortC)?shortC+1:0)];
|
||||
hB = b4GR[c4GR-((c4GR > shortG)?shortG+1:0)];
|
||||
hC = b4KR[c4KR-((c4KR > shortK)?shortK+1:0)];
|
||||
hD = b4OR[c4OR-((c4OR > shortO)?shortO+1:0)];
|
||||
b4BR[c4BR] = hA - (hB + hC + hD);
|
||||
b4FR[c4FR] = hB - (hA + hC + hD);
|
||||
b4JR[c4JR] = hC - (hA + hB + hD);
|
||||
b4NR[c4NR] = hD - (hA + hB + hC);
|
||||
|
||||
c4BR++; if (c4BR < 0 || c4BR > shortB) c4BR = 0;
|
||||
c4FR++; if (c4FR < 0 || c4FR > shortF) c4FR = 0;
|
||||
c4JR++; if (c4JR < 0 || c4JR > shortJ) c4JR = 0;
|
||||
c4NR++; if (c4NR < 0 || c4NR > shortN) c4NR = 0;
|
||||
|
||||
hA = b4BR[c4BR-((c4BR > shortB)?shortB+1:0)];
|
||||
hB = b4FR[c4FR-((c4FR > shortF)?shortF+1:0)];
|
||||
hC = b4JR[c4JR-((c4JR > shortJ)?shortJ+1:0)];
|
||||
hD = b4NR[c4NR-((c4NR > shortN)?shortN+1:0)];
|
||||
b4AR[c4AR] = hA - (hB + hC + hD);
|
||||
b4ER[c4ER] = hB - (hA + hC + hD);
|
||||
b4IR[c4IR] = hC - (hA + hB + hD);
|
||||
b4MR[c4MR] = hD - (hA + hB + hC);
|
||||
|
||||
c4AR++; if (c4AR < 0 || c4AR > shortA) c4AR = 0;
|
||||
c4ER++; if (c4ER < 0 || c4ER > shortE) c4ER = 0;
|
||||
c4IR++; if (c4IR < 0 || c4IR > shortI) c4IR = 0;
|
||||
c4MR++; if (c4MR < 0 || c4MR > shortM) c4MR = 0;
|
||||
|
||||
hA = b4AR[c4AR-((c4AR > shortA)?shortA+1:0)];
|
||||
hB = b4ER[c4ER-((c4ER > shortE)?shortE+1:0)];
|
||||
hC = b4IR[c4IR-((c4IR > shortI)?shortI+1:0)];
|
||||
hD = b4MR[c4MR-((c4MR > shortM)?shortM+1:0)];
|
||||
g4DR = hA - (hB + hC + hD);
|
||||
g4HR = hB - (hA + hC + hD);
|
||||
g4LR = hC - (hA + hB + hD);
|
||||
g4PR = hD - (hA + hB + hC);
|
||||
dualmonoSampleR = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
bez[bez_CL] = bez[bez_BL];
|
||||
bez[bez_BL] = bez[bez_AL];
|
||||
bez[bez_AL] = dualmonoSampleR;
|
||||
bez[bez_SampL] = 0.0;
|
||||
|
||||
bez[bez_CR] = bez[bez_BR];
|
||||
bez[bez_BR] = bez[bez_AR];
|
||||
bez[bez_AR] = dualmonoSampleL;
|
||||
bez[bez_SampR] = 0.0;
|
||||
}
|
||||
double X = bez[bez_cycle]*bezTrim;
|
||||
double CBL = (bez[bez_CL]*(1.0-X))+(bez[bez_BL]*X);
|
||||
double CBR = (bez[bez_CR]*(1.0-X))+(bez[bez_BR]*X);
|
||||
double BAL = (bez[bez_BL]*(1.0-X))+(bez[bez_AL]*X);
|
||||
double BAR = (bez[bez_BR]*(1.0-X))+(bez[bez_AR]*X);
|
||||
inputSampleL = (bez[bez_BL]+(CBL*(1.0-X))+(BAL*X))*0.125;
|
||||
inputSampleR = (bez[bez_BR]+(CBR*(1.0-X))+(BAR*X))*0.125;
|
||||
|
||||
inputSampleL = (inputSampleL * wet)+(drySampleL * (1.0-wet));
|
||||
inputSampleR = (inputSampleR * wet)+(drySampleR * (1.0-wet));
|
||||
|
||||
//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
|
||||
|
||||
*outputL = inputSampleL;
|
||||
*outputR = inputSampleR;
|
||||
//direct stereo out
|
||||
|
||||
inputL += 1;
|
||||
inputR += 1;
|
||||
outputL += 1;
|
||||
outputR += 1;
|
||||
}
|
||||
return noErr;
|
||||
}
|
||||
|
||||
1
plugins/MacAU/WoodenBox/WoodenBox.exp
Executable file
1
plugins/MacAU/WoodenBox/WoodenBox.exp
Executable file
|
|
@ -0,0 +1 @@
|
|||
_WoodenBoxEntry
|
||||
213
plugins/MacAU/WoodenBox/WoodenBox.h
Executable file
213
plugins/MacAU/WoodenBox/WoodenBox.h
Executable file
|
|
@ -0,0 +1,213 @@
|
|||
/*
|
||||
* File: WoodenBox.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "WoodenBoxVersion.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __WoodenBox_h__
|
||||
#define __WoodenBox_h__
|
||||
|
||||
|
||||
#pragma mark ____WoodenBox Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("Select");
|
||||
static CFStringRef kParameterBName = CFSTR("Reso");
|
||||
static CFStringRef kParameterCName = CFSTR("Depth");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=3
|
||||
};
|
||||
|
||||
const int d4A = 173;
|
||||
const int d4B = 82;
|
||||
const int d4C = 240;
|
||||
const int d4D = 191;
|
||||
const int d4E = 196;
|
||||
const int d4F = 257;
|
||||
const int d4G = 203;
|
||||
const int d4H = 252;
|
||||
const int d4I = 207;
|
||||
const int d4J = 203;
|
||||
const int d4K = 250;
|
||||
const int d4L = 220;
|
||||
const int d4M = 261;
|
||||
const int d4N = 235;
|
||||
const int d4O = 161;
|
||||
const int d4P = 161;
|
||||
|
||||
#pragma mark ____WoodenBox
|
||||
class WoodenBox : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
WoodenBox(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~WoodenBox () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual ComponentResult Reset(AudioUnitScope inScope, AudioUnitElement inElement);
|
||||
|
||||
virtual OSStatus ProcessBufferLists(AudioUnitRenderActionFlags & ioActionFlags,
|
||||
const AudioBufferList & inBuffer, AudioBufferList & outBuffer,
|
||||
UInt32 inFramesToProcess);
|
||||
virtual UInt32 SupportedNumChannels(const AUChannelInfo ** outInfo);
|
||||
|
||||
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 kWoodenBoxVersion; }
|
||||
|
||||
private:
|
||||
int c4AL,c4BL,c4CL,c4DL,c4EL,c4FL,c4GL,c4HL;
|
||||
int c4IL,c4JL,c4KL,c4LL,c4ML,c4NL,c4OL,c4PL;
|
||||
int c4AR,c4BR,c4CR,c4DR,c4ER,c4FR,c4GR,c4HR;
|
||||
int c4IR,c4JR,c4KR,c4LR,c4MR,c4NR,c4OR,c4PR;
|
||||
//base stereo reverb
|
||||
double b4AL[d4A+5];
|
||||
double b4BL[d4B+5];
|
||||
double b4CL[d4C+5];
|
||||
double b4DL[d4D+5];
|
||||
double b4EL[d4E+5];
|
||||
double b4FL[d4F+5];
|
||||
double b4GL[d4G+5];
|
||||
double b4HL[d4H+5];
|
||||
double b4IL[d4I+5];
|
||||
double b4JL[d4J+5];
|
||||
double b4KL[d4K+5];
|
||||
double b4LL[d4L+5];
|
||||
double b4ML[d4M+5];
|
||||
double b4NL[d4N+5];
|
||||
double b4OL[d4O+5];
|
||||
double b4PL[d4P+5];
|
||||
double b4AR[d4A+5];
|
||||
double b4BR[d4B+5];
|
||||
double b4CR[d4C+5];
|
||||
double b4DR[d4D+5];
|
||||
double b4ER[d4E+5];
|
||||
double b4FR[d4F+5];
|
||||
double b4GR[d4G+5];
|
||||
double b4HR[d4H+5];
|
||||
double b4IR[d4I+5];
|
||||
double b4JR[d4J+5];
|
||||
double b4KR[d4K+5];
|
||||
double b4LR[d4L+5];
|
||||
double b4MR[d4M+5];
|
||||
double b4NR[d4N+5];
|
||||
double b4OR[d4O+5];
|
||||
double b4PR[d4P+5];
|
||||
double g4AL,g4BL,g4CL,g4DL,g4DR,g4HR,g4LR,g4PR;
|
||||
//changed letter is the dual mono, with rearranged grid
|
||||
|
||||
enum {
|
||||
bez_AL,
|
||||
bez_AR,
|
||||
bez_BL,
|
||||
bez_BR,
|
||||
bez_CL,
|
||||
bez_CR,
|
||||
bez_SampL,
|
||||
bez_SampR,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bez[bez_total];
|
||||
|
||||
int shortA;
|
||||
int shortB;
|
||||
int shortC;
|
||||
int shortD;
|
||||
int shortE;
|
||||
int shortF;
|
||||
int shortG;
|
||||
int shortH;
|
||||
int shortI;
|
||||
int shortJ;
|
||||
int shortK;
|
||||
int shortL;
|
||||
int shortM;
|
||||
int shortN;
|
||||
int shortO;
|
||||
int shortP;
|
||||
|
||||
int prevclearcoat;
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacAU/WoodenBox/WoodenBox.r
Executable file
61
plugins/MacAU/WoodenBox/WoodenBox.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: WoodenBox.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "WoodenBoxVersion.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_WoodenBox 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WoodenBox~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_WoodenBox
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE WoodenBox_COMP_SUBTYPE
|
||||
#define COMP_MANUF WoodenBox_COMP_MANF
|
||||
|
||||
#define VERSION kWoodenBoxVersion
|
||||
#define NAME "Airwindows: WoodenBox"
|
||||
#define DESCRIPTION "WoodenBox AU"
|
||||
#define ENTRY_POINT "WoodenBoxEntry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1359
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.mode1v3
Executable file
1359
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
131
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.pbxuser
Executable file
131
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,131 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* WoodenBox */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* 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,
|
||||
188,
|
||||
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 = 795084379;
|
||||
PBXWorkspaceStateSaveDate = 795084379;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8B4952D52F6411A6007604D0 /* PBXTextBookmark */ = 8B4952D52F6411A6007604D0 /* PBXTextBookmark */;
|
||||
8B4952D62F6411A6007604D0 /* PBXTextBookmark */ = 8B4952D62F6411A6007604D0 /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8B4952D52F6411A6007604D0 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */;
|
||||
name = "WoodenBox.cpp: 371";
|
||||
rLen = 0;
|
||||
rLoc = 18305;
|
||||
rType = 0;
|
||||
vrLen = 264;
|
||||
vrLoc = 18163;
|
||||
};
|
||||
8B4952D62F6411A6007604D0 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */;
|
||||
name = "WoodenBox.cpp: 369";
|
||||
rLen = 0;
|
||||
rLoc = 18305;
|
||||
rType = 0;
|
||||
vrLen = 0;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8BA05A660720730100365D66 /* WoodenBox.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {2361, 9684}}";
|
||||
sepNavSelRange = "{18305, 0}";
|
||||
sepNavVisRange = "{0, 0}";
|
||||
sepNavWindowFrame = "{{574, 122}, {1045, 710}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1062}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{967, 2002}";
|
||||
sepNavWindowFrame = "{{15, 48}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {516, 23430}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 1336}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* WoodenBox.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3780}}";
|
||||
sepNavSelRange = "{5304, 1440}";
|
||||
sepNavVisRange = "{2725, 841}";
|
||||
sepNavWindowFrame = "{{732, 53}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1483
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.perspectivev3
Executable file
1483
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
490
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/project.pbxproj
Executable file
490
plugins/MacAU/WoodenBox/WoodenBox.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,490 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */; };
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126C089847F5002C6BFC /* CAVectorUnit.h */; };
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */; };
|
||||
8B4119B70749654200361ABE /* WoodenBox.r in Rez */ = {isa = PBXBuildFile; fileRef = 8BA05A680720730100365D66 /* WoodenBox.r */; };
|
||||
8BA05A6B0720730100365D66 /* WoodenBox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* WoodenBoxVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* WoodenBoxVersion.h */; };
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A7F072073D200365D66 /* AUBase.cpp */; };
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A80072073D200365D66 /* AUBase.h */; };
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A81072073D200365D66 /* AUDispatch.cpp */; };
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A82072073D200365D66 /* AUDispatch.h */; };
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A83072073D200365D66 /* AUInputElement.cpp */; };
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A84072073D200365D66 /* AUInputElement.h */; };
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A85072073D200365D66 /* AUOutputElement.cpp */; };
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A86072073D200365D66 /* AUOutputElement.h */; };
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A88072073D200365D66 /* AUScopeElement.cpp */; };
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A89072073D200365D66 /* AUScopeElement.h */; };
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A8A072073D200365D66 /* ComponentBase.cpp */; };
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A8B072073D200365D66 /* ComponentBase.h */; };
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A9A072073D200365D66 /* AUEffectBase.cpp */; };
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A9B072073D200365D66 /* AUEffectBase.h */; };
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA7072073D200365D66 /* AUBuffer.cpp */; };
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AA8072073D200365D66 /* AUBuffer.h */; };
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */; };
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */; };
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */; };
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAC072073D200365D66 /* AUSilentTimeout.h */; };
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */; };
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */; };
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */; };
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE10720742100365D66 /* CAMutex.cpp */; };
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE20720742100365D66 /* CAMutex.h */; };
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */; };
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05AE40720742100365D66 /* CAStreamBasicDescription.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 */; };
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05B050720754400365D66 /* CAAUParameter.cpp */; };
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05B060720754400365D66 /* CAAUParameter.h */; };
|
||||
8BC6025C073B072D006C4272 /* WoodenBox.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* WoodenBox.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */; };
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B5C7FBF076FB2C200A15F61 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = "<absolute>"; };
|
||||
8BA05A660720730100365D66 /* WoodenBox.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = WoodenBox.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* WoodenBox.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = WoodenBox.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* WoodenBox.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = WoodenBox.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WoodenBoxVersion.h; sourceTree = "<group>"; };
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A80072073D200365D66 /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8BA05A87072073D200365D66 /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = AUDebugDispatcher.cpp; sourceTree = "<group>"; };
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUDebugDispatcher.h; sourceTree = "<group>"; };
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.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>"; };
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8BC6025B073B072D006C4272 /* WoodenBox.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WoodenBox.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* WoodenBox.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WoodenBox.component; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AUBaseHelper.cpp; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.cpp; sourceTree = SYSTEM_DEVELOPER_DIR; };
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AUBaseHelper.h; path = Extras/CoreAudio/AudioUnits/AUPublic/Utility/AUBaseHelper.h; sourceTree = SYSTEM_DEVELOPER_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 /* WoodenBox */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = WoodenBox;
|
||||
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 = (
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */,
|
||||
8BA05A7D072073D200365D66 /* AUPublic */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* WoodenBox.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* WoodenBox.h */,
|
||||
8BA05A660720730100365D66 /* WoodenBox.cpp */,
|
||||
8BA05A670720730100365D66 /* WoodenBox.exp */,
|
||||
8BA05A680720730100365D66 /* WoodenBox.r */,
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A7D072073D200365D66 /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7E072073D200365D66 /* AUBase */,
|
||||
8BA05A99072073D200365D66 /* OtherBases */,
|
||||
8BA05AA6072073D200365D66 /* Utility */,
|
||||
);
|
||||
name = AUPublic;
|
||||
path = Extras/CoreAudio/AudioUnits/AUPublic;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
8BA05A7E072073D200365D66 /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */,
|
||||
8BA05A80072073D200365D66 /* AUBase.h */,
|
||||
8BA05A81072073D200365D66 /* AUDispatch.cpp */,
|
||||
8BA05A82072073D200365D66 /* AUDispatch.h */,
|
||||
8BA05A83072073D200365D66 /* AUInputElement.cpp */,
|
||||
8BA05A84072073D200365D66 /* AUInputElement.h */,
|
||||
8BA05A85072073D200365D66 /* AUOutputElement.cpp */,
|
||||
8BA05A86072073D200365D66 /* AUOutputElement.h */,
|
||||
8BA05A87072073D200365D66 /* AUResources.r */,
|
||||
8BA05A88072073D200365D66 /* AUScopeElement.cpp */,
|
||||
8BA05A89072073D200365D66 /* AUScopeElement.h */,
|
||||
8BA05A8A072073D200365D66 /* ComponentBase.cpp */,
|
||||
8BA05A8B072073D200365D66 /* ComponentBase.h */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A99072073D200365D66 /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05A9A072073D200365D66 /* AUEffectBase.cpp */,
|
||||
8BA05A9B072073D200365D66 /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AA6072073D200365D66 /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F7C347EE0ECE5AF8008ADFB6 /* AUBaseHelper.cpp */,
|
||||
F7C347EF0ECE5AF8008ADFB6 /* AUBaseHelper.h */,
|
||||
8BA05AA7072073D200365D66 /* AUBuffer.cpp */,
|
||||
8BA05AA8072073D200365D66 /* AUBuffer.h */,
|
||||
8BA05AA9072073D200365D66 /* AUDebugDispatcher.cpp */,
|
||||
8BA05AAA072073D200365D66 /* AUDebugDispatcher.h */,
|
||||
8BA05AAB072073D200365D66 /* AUInputFormatConverter.h */,
|
||||
8BA05AAC072073D200365D66 /* AUSilentTimeout.h */,
|
||||
8BA05AAD072073D200365D66 /* AUTimestampGenerator.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05AEB0720742700365D66 /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BA05B050720754400365D66 /* CAAUParameter.cpp */,
|
||||
8BA05B060720754400365D66 /* CAAUParameter.h */,
|
||||
8BA05ADF0720742100365D66 /* CAAudioChannelLayout.cpp */,
|
||||
8BA05AE00720742100365D66 /* CAAudioChannelLayout.h */,
|
||||
8BA05AE10720742100365D66 /* CAMutex.cpp */,
|
||||
8BA05AE20720742100365D66 /* CAMutex.h */,
|
||||
8BA05AE30720742100365D66 /* CAStreamBasicDescription.cpp */,
|
||||
8BA05AE40720742100365D66 /* CAStreamBasicDescription.h */,
|
||||
3EEA126D089847F5002C6BFC /* CAVectorUnitTypes.h */,
|
||||
3EEA126B089847F5002C6BFC /* CAVectorUnit.cpp */,
|
||||
3EEA126C089847F5002C6BFC /* CAVectorUnit.h */,
|
||||
);
|
||||
name = PublicUtility;
|
||||
path = Extras/CoreAudio/PublicUtility;
|
||||
sourceTree = SYSTEM_DEVELOPER_DIR;
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6E0720730100365D66 /* WoodenBoxVersion.h in Headers */,
|
||||
8BA05AAF072073D300365D66 /* AUBase.h in Headers */,
|
||||
8BA05AB1072073D300365D66 /* AUDispatch.h in Headers */,
|
||||
8BA05AB3072073D300365D66 /* AUInputElement.h in Headers */,
|
||||
8BA05AB5072073D300365D66 /* AUOutputElement.h in Headers */,
|
||||
8BA05AB8072073D300365D66 /* AUScopeElement.h in Headers */,
|
||||
8BA05ABA072073D300365D66 /* ComponentBase.h in Headers */,
|
||||
8BA05AC7072073D300365D66 /* AUEffectBase.h in Headers */,
|
||||
8BA05AD3072073D300365D66 /* AUBuffer.h in Headers */,
|
||||
8BA05AD5072073D300365D66 /* AUDebugDispatcher.h in Headers */,
|
||||
8BA05AD6072073D300365D66 /* AUInputFormatConverter.h in Headers */,
|
||||
8BA05AD7072073D300365D66 /* AUSilentTimeout.h in Headers */,
|
||||
8BA05AD8072073D300365D66 /* AUTimestampGenerator.h in Headers */,
|
||||
8BA05AE60720742100365D66 /* CAAudioChannelLayout.h in Headers */,
|
||||
8BA05AE80720742100365D66 /* CAMutex.h in Headers */,
|
||||
8BA05AEA0720742100365D66 /* CAStreamBasicDescription.h in Headers */,
|
||||
8BA05B080720754400365D66 /* CAAUParameter.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* WoodenBox.h in Headers */,
|
||||
3EEA126F089847F5002C6BFC /* CAVectorUnit.h in Headers */,
|
||||
3EEA1270089847F5002C6BFC /* CAVectorUnitTypes.h in Headers */,
|
||||
F7C347F10ECE5AF8008ADFB6 /* AUBaseHelper.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "WoodenBox" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = WoodenBox;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = WoodenBox;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* WoodenBox.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "WoodenBox" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = English;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
English,
|
||||
Japanese,
|
||||
French,
|
||||
German,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* WoodenBox */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */,
|
||||
);
|
||||
};
|
||||
/* End PBXProject section */
|
||||
|
||||
/* Begin PBXResourcesBuildPhase section */
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */ = {
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXResourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXRezBuildPhase section */
|
||||
8D01CCCF0486CAD60068D4B7 /* Rez */ = {
|
||||
isa = PBXRezBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B4119B70749654200361ABE /* WoodenBox.r in Rez */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXRezBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6B0720730100365D66 /* WoodenBox.cpp in Sources */,
|
||||
8BA05AAE072073D300365D66 /* AUBase.cpp in Sources */,
|
||||
8BA05AB0072073D300365D66 /* AUDispatch.cpp in Sources */,
|
||||
8BA05AB2072073D300365D66 /* AUInputElement.cpp in Sources */,
|
||||
8BA05AB4072073D300365D66 /* AUOutputElement.cpp in Sources */,
|
||||
8BA05AB7072073D300365D66 /* AUScopeElement.cpp in Sources */,
|
||||
8BA05AB9072073D300365D66 /* ComponentBase.cpp in Sources */,
|
||||
8BA05AC6072073D300365D66 /* AUEffectBase.cpp in Sources */,
|
||||
8BA05AD2072073D300365D66 /* AUBuffer.cpp in Sources */,
|
||||
8BA05AD4072073D300365D66 /* AUDebugDispatcher.cpp in Sources */,
|
||||
8BA05AE50720742100365D66 /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8BA05AE70720742100365D66 /* CAMutex.cpp in Sources */,
|
||||
8BA05AE90720742100365D66 /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8BA05B070720754400365D66 /* CAAUParameter.cpp in Sources */,
|
||||
3EEA126E089847F5002C6BFC /* CAVectorUnit.cpp in Sources */,
|
||||
F7C347F00ECE5AF8008ADFB6 /* AUBaseHelper.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
089C167EFE841241C02AAC07 /* English */,
|
||||
);
|
||||
name = InfoPlist.strings;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
3E4BA244089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
EXPORTED_SYMBOLS_FILE = WoodenBox.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GENERATE_PKGINFO_FILE = YES;
|
||||
INFOPLIST_FILE = Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Library/Audio/Plug-Ins/Components/";
|
||||
LIBRARY_STYLE = Bundle;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d ppc64_$ppc64 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = WoodenBox;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA245089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = (
|
||||
ppc,
|
||||
i386,
|
||||
x86_64,
|
||||
);
|
||||
EXPORTED_SYMBOLS_FILE = WoodenBox.exp;
|
||||
GCC_ENABLE_FIX_AND_CONTINUE = NO;
|
||||
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 = 10.4;
|
||||
OTHER_LDFLAGS = "-bundle";
|
||||
OTHER_REZFLAGS = "-d ppc_$ppc -d i386_$i386 -d x86_64_$x86_64 -I /System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Versions/A/Headers -I \"$(DEVELOPER_DIR)/Examples/CoreAudio/AudioUnits/AUPublic/AUBase\"";
|
||||
PRODUCT_NAME = WoodenBox;
|
||||
SDKROOT = macosx10.5;
|
||||
STRIP_INSTALLED_PRODUCT = YES;
|
||||
STRIP_STYLE = all;
|
||||
WRAPPER_EXTENSION = component;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
3E4BA248089833B7007656EC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
3E4BA249089833B7007656EC /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
GCC_C_LANGUAGE_STANDARD = c99;
|
||||
SDKROOT = macosx10.6;
|
||||
WARNING_CFLAGS = (
|
||||
"-Wmost",
|
||||
"-Wno-four-char-constants",
|
||||
"-Wno-unknown-pragmas",
|
||||
);
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
|
||||
/* Begin XCConfigurationList section */
|
||||
3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "WoodenBox" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "WoodenBox" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
58
plugins/MacAU/WoodenBox/WoodenBoxVersion.h
Executable file
58
plugins/MacAU/WoodenBox/WoodenBoxVersion.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: WoodenBoxVersion.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 __WoodenBoxVersion_h__
|
||||
#define __WoodenBoxVersion_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kWoodenBoxVersion 0xFFFFFFFF
|
||||
#else
|
||||
#define kWoodenBoxVersion 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define WoodenBox_COMP_MANF 'Dthr'
|
||||
#define WoodenBox_COMP_SUBTYPE 'wdbx'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
16
plugins/MacAU/WoodenBox/version.plist
Executable file
16
plugins/MacAU/WoodenBox/version.plist
Executable 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>
|
||||
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(ClipOnly3)
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, ClipOnly3)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
_ClipOnly3Entry
|
||||
_ClipOnly3Factory
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
7
plugins/MacSignedAU/ClipOnly3/ClipOnly3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/ClipOnly3/ClipOnly3.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -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>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
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 = "ClipOnly3.component"
|
||||
BlueprintName = "ClipOnly3"
|
||||
ReferencedContainer = "container:ClipOnly3.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 = "ClipOnly3.component"
|
||||
BlueprintName = "ClipOnly3"
|
||||
ReferencedContainer = "container:ClipOnly3.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -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>ClipOnly3.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>
|
||||
|
|
@ -2,6 +2,25 @@
|
|||
<!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>clo3</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
|
@ -9,11 +28,11 @@
|
|||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<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>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(Dattorro)
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, Dattorro)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
_DattorroEntry
|
||||
_DattorroFactory
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
7
plugins/MacSignedAU/Dattorro/Dattorro.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/Dattorro/Dattorro.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -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>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
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 = "Dattorro.component"
|
||||
BlueprintName = "Dattorro"
|
||||
ReferencedContainer = "container:Dattorro.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 = "Dattorro.component"
|
||||
BlueprintName = "Dattorro"
|
||||
ReferencedContainer = "container:Dattorro.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -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>Dattorro.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>
|
||||
|
|
@ -2,6 +2,25 @@
|
|||
<!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>datt</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
|
@ -9,11 +28,11 @@
|
|||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<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>
|
||||
|
|
|
|||
287
plugins/MacSignedAU/Donut/Donut.cpp
Executable file
287
plugins/MacSignedAU/Donut/Donut.cpp
Executable file
|
|
@ -0,0 +1,287 @@
|
|||
/*
|
||||
* File: Donut.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
Donut.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "Donut.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, Donut)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::Donut
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
Donut::Donut(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
SetParameter(kParam_D, kDefaultValue_ParamD );
|
||||
SetParameter(kParam_E, kDefaultValue_ParamE );
|
||||
SetParameter(kParam_F, kDefaultValue_ParamF );
|
||||
SetParameter(kParam_G, kDefaultValue_ParamG );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
case kParam_D:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterDName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamD;
|
||||
break;
|
||||
case kParam_E:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterEName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamE;
|
||||
break;
|
||||
case kParam_F:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterFName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamF;
|
||||
break;
|
||||
case kParam_G:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterGName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamG;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// Donut::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult Donut::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____DonutEffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::DonutKernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void Donut::DonutKernel::Reset()
|
||||
{
|
||||
for (int x = 0; x < bez_total; x++) bezComp[x] = 0.0;
|
||||
bezComp[bez_cycle] = 1.0; bezMin = 0.0;
|
||||
low = band = 0.0;
|
||||
freqA = freqB = 0.5;
|
||||
resoA = resoB = 0.5;
|
||||
outA = outB = 1.0;
|
||||
|
||||
fpd = 1.0; while (fpd < 16386) fpd = rand()*UINT32_MAX;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// Donut::DonutKernel::Process
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
void Donut::DonutKernel::Process( const Float32 *inSourceP,
|
||||
Float32 *inDestP,
|
||||
UInt32 inFramesToProcess,
|
||||
UInt32 inNumChannels,
|
||||
bool &ioSilence )
|
||||
{
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
const Float32 *sourceP = inSourceP;
|
||||
Float32 *destP = inDestP;
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= GetSampleRate();
|
||||
|
||||
double bezRez = pow(1.0-GetParameter( kParam_A ), 6.0) / overallscale;
|
||||
double sloRez = pow(1.0-GetParameter( kParam_B ), 6.0) / overallscale;
|
||||
bezRez = fmin(fmax(bezRez,0.00001),1.0);
|
||||
sloRez = fmin(fmax(sloRez,0.00001),1.0);
|
||||
freqA = freqB; resoA = resoB; outA = outB;
|
||||
freqB = pow(GetParameter( kParam_C ),overallscale+1.0)*1.225;
|
||||
double movFreq = (GetParameter( kParam_D )*2.0)-1.0;
|
||||
resoB = pow(1.0-GetParameter( kParam_E ),2.0);
|
||||
if (resoB < 0.001) resoB = 0.001; // q of 0.0 is just a tone
|
||||
double movReso = (GetParameter( kParam_F )*-2.0)+1.0;
|
||||
outB = GetParameter( kParam_G )/sqrt(resoB);
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSample = *sourceP;
|
||||
if (fabs(inputSample)<1.18e-23) inputSample = fpd * 1.18e-17;
|
||||
|
||||
const double temp = (double)nSampleFrames/inFramesToProcess;
|
||||
const double freq = (freqA*temp)+(freqB*(1.0-temp));
|
||||
const double reso = (resoA*temp)+(resoB*(1.0-temp));
|
||||
const double out = (outA*temp)+(outB*(1.0-temp)); //dezippering
|
||||
|
||||
double ctrl = fabs(inputSample);
|
||||
bezMin = fmax(bezMin-sloRez,ctrl);
|
||||
bezComp[bez_cycle] += bezRez;
|
||||
bezComp[bez_Ctrl] += (bezMin * bezRez);
|
||||
|
||||
if (bezComp[bez_cycle] > 1.0) {
|
||||
bezComp[bez_cycle] -= 1.0;
|
||||
bezComp[bez_C] = bezComp[bez_B];
|
||||
bezComp[bez_B] = bezComp[bez_A];
|
||||
bezComp[bez_A] = bezComp[bez_Ctrl];
|
||||
bezComp[bez_Ctrl] = 0.0;
|
||||
}
|
||||
const double CB = (bezComp[bez_C]*(1.0-bezComp[bez_cycle]))+(bezComp[bez_B]*bezComp[bez_cycle]);
|
||||
const double BA = (bezComp[bez_B]*(1.0-bezComp[bez_cycle]))+(bezComp[bez_A]*bezComp[bez_cycle]);
|
||||
const double CBA = (bezComp[bez_B]+(CB*(1.0-bezComp[bez_cycle]))+(BA*bezComp[bez_cycle]))*0.5;
|
||||
const double mFreq = fmin(fmax(freq+(CBA*movFreq),0.004/overallscale),1.225);
|
||||
const double mReso = fmin(fmax(reso+(CBA*movReso),0.001),1.0);
|
||||
low += mFreq*band; band += mFreq*((mReso*inputSample)-low-(mReso*band));
|
||||
inputSample = (low-sin(band*0.5))*out; //airwin-donut
|
||||
|
||||
//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;
|
||||
}
|
||||
}
|
||||
|
||||
2
plugins/MacSignedAU/Donut/Donut.exp
Executable file
2
plugins/MacSignedAU/Donut/Donut.exp
Executable file
|
|
@ -0,0 +1,2 @@
|
|||
_DonutEntry
|
||||
_DonutFactory
|
||||
168
plugins/MacSignedAU/Donut/Donut.h
Executable file
168
plugins/MacSignedAU/Donut/Donut.h
Executable file
|
|
@ -0,0 +1,168 @@
|
|||
/*
|
||||
* File: Donut.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "DonutVersion.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __Donut_h__
|
||||
#define __Donut_h__
|
||||
|
||||
|
||||
#pragma mark ____Donut Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 0.5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 1.0;
|
||||
static const float kDefaultValue_ParamD = 0.5;
|
||||
static const float kDefaultValue_ParamE = 0.0;
|
||||
static const float kDefaultValue_ParamF = 0.5;
|
||||
static const float kDefaultValue_ParamG = 1.0;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("Attack");
|
||||
static CFStringRef kParameterBName = CFSTR("Release");
|
||||
static CFStringRef kParameterCName = CFSTR("BaseFrq");
|
||||
static CFStringRef kParameterDName = CFSTR("MoveFrq");
|
||||
static CFStringRef kParameterEName = CFSTR("BaseRes");
|
||||
static CFStringRef kParameterFName = CFSTR("MoveRes");
|
||||
static CFStringRef kParameterGName = CFSTR("Output");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
kParam_D =3,
|
||||
kParam_E =4,
|
||||
kParam_F =5,
|
||||
kParam_G =6,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=7
|
||||
};
|
||||
|
||||
#pragma mark ____Donut
|
||||
class Donut : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
Donut(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~Donut () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual AUKernelBase * NewKernel() { return new DonutKernel(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 kDonutVersion; }
|
||||
|
||||
|
||||
|
||||
protected:
|
||||
class DonutKernel : public AUKernelBase // most of the real work happens here
|
||||
{
|
||||
public:
|
||||
DonutKernel(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:
|
||||
enum {
|
||||
bez_A,
|
||||
bez_B,
|
||||
bez_C,
|
||||
bez_Ctrl,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bezComp[bez_total];
|
||||
double bezMin;
|
||||
double low;
|
||||
double band;
|
||||
double freqA, freqB;
|
||||
double resoA, resoB;
|
||||
double outA, outB;
|
||||
|
||||
uint32_t fpd;
|
||||
};
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacSignedAU/Donut/Donut.r
Executable file
61
plugins/MacSignedAU/Donut/Donut.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: Donut.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "DonutVersion.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_Donut 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Donut~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_Donut
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE Donut_COMP_SUBTYPE
|
||||
#define COMP_MANUF Donut_COMP_MANF
|
||||
|
||||
#define VERSION kDonutVersion
|
||||
#define NAME "Airwindows: Donut"
|
||||
#define DESCRIPTION "Donut AU"
|
||||
#define ENTRY_POINT "DonutEntry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1358
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.mode1v3
Executable file
1358
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
142
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.pbxuser
Executable file
142
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,142 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* Donut */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* Code sense */;
|
||||
perUserDictionary = {
|
||||
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
|
||||
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
|
||||
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
|
||||
PBXFileTableDataSourceColumnWidthsKey = (
|
||||
20,
|
||||
292,
|
||||
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 = 794866633;
|
||||
PBXWorkspaceStateSaveDate = 794866633;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8B4253512F60B1AC00D5A4B3 /* PlistBookmark */ = 8B4253512F60B1AC00D5A4B3 /* PlistBookmark */;
|
||||
8BD057212F60B96B00C3663C /* PBXTextBookmark */ = 8BD057212F60B96B00C3663C /* PBXTextBookmark */;
|
||||
8BD057222F60B96B00C3663C /* PBXBookmark */ = 8BD057222F60B96B00C3663C /* PBXBookmark */;
|
||||
8BD057232F60B96B00C3663C /* PBXTextBookmark */ = 8BD057232F60B96B00C3663C /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8B4253512F60B1AC00D5A4B3 /* PlistBookmark */ = {
|
||||
isa = PlistBookmark;
|
||||
fRef = 8D01CCD10486CAD60068D4B7 /* Info.plist */;
|
||||
fallbackIsa = PBXBookmark;
|
||||
isK = 0;
|
||||
kPath = (
|
||||
CFBundleName,
|
||||
);
|
||||
name = /Users/christopherjohnson/Desktop/Donut/Info.plist;
|
||||
rLen = 0;
|
||||
rLoc = 9223372036854775808;
|
||||
};
|
||||
8BA05A660720730100365D66 /* Donut.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {992, 5382}}";
|
||||
sepNavSelRange = "{11429, 1176}";
|
||||
sepNavVisRange = "{11253, 1698}";
|
||||
sepNavWindowFrame = "{{330, 53}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1098}}";
|
||||
sepNavSelRange = "{2759, 0}";
|
||||
sepNavVisRange = "{2664, 269}";
|
||||
sepNavWindowFrame = "{{38, 41}, {840, 811}}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* Donut.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3024}}";
|
||||
sepNavSelRange = "{5651, 299}";
|
||||
sepNavVisRange = "{2627, 1002}";
|
||||
sepNavWindowFrame = "{{754, 67}, {840, 811}}";
|
||||
};
|
||||
};
|
||||
8BD057212F60B96B00C3663C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BC6025B073B072D006C4272 /* Donut.h */;
|
||||
name = "Donut.h: 154";
|
||||
rLen = 0;
|
||||
rLoc = 5835;
|
||||
rType = 0;
|
||||
vrLen = 234;
|
||||
vrLoc = 5670;
|
||||
};
|
||||
8BD057222F60B96B00C3663C /* PBXBookmark */ = {
|
||||
isa = PBXBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* DonutVersion.h */;
|
||||
};
|
||||
8BD057232F60B96B00C3663C /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A690720730100365D66 /* DonutVersion.h */;
|
||||
name = "DonutVersion.h: 51";
|
||||
rLen = 0;
|
||||
rLoc = 2759;
|
||||
rType = 0;
|
||||
vrLen = 269;
|
||||
vrLoc = 2664;
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1507
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.perspectivev3
Executable file
1507
plugins/MacSignedAU/Donut/Donut.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
965
plugins/MacSignedAU/Donut/Donut.xcodeproj/project.pbxproj
Executable file
965
plugins/MacSignedAU/Donut/Donut.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,965 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8B3F20922F62D84400A50762 /* CAExtAudioFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F200A2F62D84400A50762 /* CAExtAudioFile.h */; };
|
||||
8B3F20932F62D84400A50762 /* CACFMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F200B2F62D84400A50762 /* CACFMachPort.h */; };
|
||||
8B3F20942F62D84400A50762 /* CABool.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F200C2F62D84400A50762 /* CABool.h */; };
|
||||
8B3F20952F62D84400A50762 /* CAComponent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F200D2F62D84400A50762 /* CAComponent.cpp */; };
|
||||
8B3F20962F62D84400A50762 /* CADebugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F200E2F62D84400A50762 /* CADebugger.h */; };
|
||||
8B3F20972F62D84400A50762 /* CACFNumber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F200F2F62D84400A50762 /* CACFNumber.cpp */; };
|
||||
8B3F20982F62D84400A50762 /* CAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20102F62D84400A50762 /* CAGuard.h */; };
|
||||
8B3F20992F62D84400A50762 /* CAAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20112F62D84400A50762 /* CAAtomic.h */; };
|
||||
8B3F209A2F62D84400A50762 /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20122F62D84400A50762 /* CAStreamBasicDescription.h */; };
|
||||
8B3F209B2F62D84400A50762 /* CACFObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20132F62D84400A50762 /* CACFObject.h */; };
|
||||
8B3F209C2F62D84400A50762 /* CAStreamRangedDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20142F62D84400A50762 /* CAStreamRangedDescription.h */; };
|
||||
8B3F209D2F62D84400A50762 /* CATokenMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20152F62D84400A50762 /* CATokenMap.h */; };
|
||||
8B3F209E2F62D84400A50762 /* CAComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20162F62D84400A50762 /* CAComponent.h */; };
|
||||
8B3F209F2F62D84400A50762 /* CAAudioBufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20172F62D84400A50762 /* CAAudioBufferList.h */; };
|
||||
8B3F20A02F62D84400A50762 /* CAAudioUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20182F62D84400A50762 /* CAAudioUnit.h */; };
|
||||
8B3F20A12F62D84400A50762 /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20192F62D84400A50762 /* CAAUParameter.h */; };
|
||||
8B3F20A22F62D84400A50762 /* CAException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F201A2F62D84400A50762 /* CAException.h */; };
|
||||
8B3F20A32F62D84400A50762 /* CAAUProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F201B2F62D84400A50762 /* CAAUProcessor.cpp */; };
|
||||
8B3F20A42F62D84400A50762 /* CAAUProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F201C2F62D84400A50762 /* CAAUProcessor.h */; };
|
||||
8B3F20A52F62D84400A50762 /* CAProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F201D2F62D84400A50762 /* CAProcess.h */; };
|
||||
8B3F20A62F62D84400A50762 /* CACFDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F201E2F62D84400A50762 /* CACFDictionary.h */; };
|
||||
8B3F20A72F62D84400A50762 /* CAPThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F201F2F62D84400A50762 /* CAPThread.h */; };
|
||||
8B3F20A82F62D84400A50762 /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20202F62D84400A50762 /* CAAUParameter.cpp */; };
|
||||
8B3F20A92F62D84400A50762 /* CAAudioTimeStamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20212F62D84400A50762 /* CAAudioTimeStamp.h */; };
|
||||
8B3F20AA2F62D84400A50762 /* CAFilePathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20222F62D84400A50762 /* CAFilePathUtils.cpp */; };
|
||||
8B3F20AB2F62D84400A50762 /* CAAudioValueRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20232F62D84400A50762 /* CAAudioValueRange.h */; };
|
||||
8B3F20AC2F62D84400A50762 /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20242F62D84400A50762 /* CAVectorUnitTypes.h */; };
|
||||
8B3F20AD2F62D84400A50762 /* CAAudioChannelLayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20252F62D84400A50762 /* CAAudioChannelLayoutObject.cpp */; };
|
||||
8B3F20AE2F62D84400A50762 /* CAGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20262F62D84400A50762 /* CAGuard.cpp */; };
|
||||
8B3F20AF2F62D84400A50762 /* CACFNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20272F62D84400A50762 /* CACFNumber.h */; };
|
||||
8B3F20B02F62D84400A50762 /* CACFDistributedNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20282F62D84400A50762 /* CACFDistributedNotification.cpp */; };
|
||||
8B3F20B12F62D84400A50762 /* CACFString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20292F62D84400A50762 /* CACFString.h */; };
|
||||
8B3F20B22F62D84400A50762 /* CAAUMIDIMapManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F202A2F62D84400A50762 /* CAAUMIDIMapManager.cpp */; };
|
||||
8B3F20B32F62D84400A50762 /* CAComponentDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F202B2F62D84400A50762 /* CAComponentDescription.cpp */; };
|
||||
8B3F20B42F62D84400A50762 /* CAHostTimeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F202C2F62D84400A50762 /* CAHostTimeBase.h */; };
|
||||
8B3F20B52F62D84400A50762 /* CADebugMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F202D2F62D84400A50762 /* CADebugMacros.cpp */; };
|
||||
8B3F20B62F62D84400A50762 /* CAAudioFileFormats.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F202E2F62D84400A50762 /* CAAudioFileFormats.h */; };
|
||||
8B3F20B72F62D84400A50762 /* CAAUMIDIMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F202F2F62D84400A50762 /* CAAUMIDIMapManager.h */; };
|
||||
8B3F20B82F62D84400A50762 /* CACFDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20302F62D84400A50762 /* CACFDictionary.cpp */; };
|
||||
8B3F20B92F62D84400A50762 /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20312F62D84400A50762 /* CAMutex.h */; };
|
||||
8B3F20BA2F62D84400A50762 /* CACFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20322F62D84400A50762 /* CACFString.cpp */; };
|
||||
8B3F20BB2F62D84400A50762 /* CASettingsStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20332F62D84400A50762 /* CASettingsStorage.h */; };
|
||||
8B3F20BC2F62D84400A50762 /* CADebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20342F62D84400A50762 /* CADebugPrintf.h */; };
|
||||
8B3F20BD2F62D84400A50762 /* CAXException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20352F62D84400A50762 /* CAXException.cpp */; };
|
||||
8B3F20BE2F62D84400A50762 /* CAAUMIDIMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20362F62D84400A50762 /* CAAUMIDIMap.h */; };
|
||||
8B3F20BF2F62D84400A50762 /* AUParamInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20372F62D84400A50762 /* AUParamInfo.h */; };
|
||||
8B3F20C02F62D84400A50762 /* CABitOperations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20382F62D84400A50762 /* CABitOperations.h */; };
|
||||
8B3F20C12F62D84400A50762 /* CACFPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20392F62D84400A50762 /* CACFPreferences.cpp */; };
|
||||
8B3F20C22F62D84400A50762 /* CABundleLocker.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F203A2F62D84400A50762 /* CABundleLocker.h */; };
|
||||
8B3F20C32F62D84400A50762 /* CAPropertyAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F203B2F62D84400A50762 /* CAPropertyAddress.h */; };
|
||||
8B3F20C42F62D84400A50762 /* CAXException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F203C2F62D84400A50762 /* CAXException.h */; };
|
||||
8B3F20C52F62D84400A50762 /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F203D2F62D84400A50762 /* CAAudioChannelLayout.cpp */; };
|
||||
8B3F20C62F62D84400A50762 /* CAThreadSafeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F203E2F62D84400A50762 /* CAThreadSafeList.h */; };
|
||||
8B3F20C72F62D84400A50762 /* CAAudioUnitOutputCapturer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F203F2F62D84400A50762 /* CAAudioUnitOutputCapturer.h */; };
|
||||
8B3F20C82F62D84400A50762 /* AUParamInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20402F62D84400A50762 /* AUParamInfo.cpp */; };
|
||||
8B3F20C92F62D84400A50762 /* CASharedLibrary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20412F62D84400A50762 /* CASharedLibrary.cpp */; };
|
||||
8B3F20CA2F62D84400A50762 /* CAAUMIDIMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20422F62D84400A50762 /* CAAUMIDIMap.cpp */; };
|
||||
8B3F20CB2F62D84400A50762 /* CALogMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20432F62D84400A50762 /* CALogMacros.h */; };
|
||||
8B3F20CC2F62D84400A50762 /* CACFMessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20442F62D84400A50762 /* CACFMessagePort.cpp */; };
|
||||
8B3F20CD2F62D84400A50762 /* CARingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20452F62D84400A50762 /* CARingBuffer.h */; };
|
||||
8B3F20CE2F62D84400A50762 /* AUOutputBL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20462F62D84400A50762 /* AUOutputBL.cpp */; };
|
||||
8B3F20CF2F62D84400A50762 /* CABufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20472F62D84400A50762 /* CABufferList.h */; };
|
||||
8B3F20D02F62D84400A50762 /* CASharedLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20482F62D84400A50762 /* CASharedLibrary.h */; };
|
||||
8B3F20D12F62D84400A50762 /* CACFData.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20492F62D84400A50762 /* CACFData.h */; };
|
||||
8B3F20D22F62D84400A50762 /* CAStreamRangedDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F204A2F62D84400A50762 /* CAStreamRangedDescription.cpp */; };
|
||||
8B3F20D32F62D84400A50762 /* CAPThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F204B2F62D84400A50762 /* CAPThread.cpp */; };
|
||||
8B3F20D42F62D84400A50762 /* CAAutoDisposer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F204C2F62D84400A50762 /* CAAutoDisposer.h */; };
|
||||
8B3F20D52F62D84400A50762 /* CACFPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F204D2F62D84400A50762 /* CACFPreferences.h */; };
|
||||
8B3F20D62F62D84400A50762 /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F204E2F62D84400A50762 /* CAVectorUnit.cpp */; };
|
||||
8B3F20D72F62D84400A50762 /* CAComponentDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F204F2F62D84400A50762 /* CAComponentDescription.h */; };
|
||||
8B3F20D82F62D84400A50762 /* CADebugMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20502F62D84400A50762 /* CADebugMacros.h */; };
|
||||
8B3F20D92F62D84400A50762 /* AUOutputBL.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20512F62D84400A50762 /* AUOutputBL.h */; };
|
||||
8B3F20DA2F62D84400A50762 /* CADebugPrintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20522F62D84400A50762 /* CADebugPrintf.cpp */; };
|
||||
8B3F20DB2F62D84400A50762 /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20532F62D84400A50762 /* CARingBuffer.cpp */; };
|
||||
8B3F20DC2F62D84400A50762 /* CACFPlugIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20542F62D84400A50762 /* CACFPlugIn.h */; };
|
||||
8B3F20DD2F62D84400A50762 /* CASettingsStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20552F62D84400A50762 /* CASettingsStorage.cpp */; };
|
||||
8B3F20DE2F62D84400A50762 /* CAMixMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20562F62D84400A50762 /* CAMixMap.h */; };
|
||||
8B3F20DF2F62D84400A50762 /* CACFDistributedNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20572F62D84400A50762 /* CACFDistributedNotification.h */; };
|
||||
8B3F20E02F62D84400A50762 /* CAFilePathUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20582F62D84400A50762 /* CAFilePathUtils.h */; };
|
||||
8B3F20E12F62D84400A50762 /* CATink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20592F62D84400A50762 /* CATink.h */; };
|
||||
8B3F20E22F62D84400A50762 /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F205A2F62D84400A50762 /* CAStreamBasicDescription.cpp */; };
|
||||
8B3F20E32F62D84400A50762 /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F205B2F62D84400A50762 /* CAAudioChannelLayout.h */; };
|
||||
8B3F20E42F62D84400A50762 /* CAProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F205C2F62D84400A50762 /* CAProcess.cpp */; };
|
||||
8B3F20E52F62D84400A50762 /* CAHostTimeBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F205D2F62D84400A50762 /* CAHostTimeBase.cpp */; };
|
||||
8B3F20E62F62D84400A50762 /* CAPersistence.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F205E2F62D84400A50762 /* CAPersistence.cpp */; };
|
||||
8B3F20E72F62D84400A50762 /* CAAudioBufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F205F2F62D84400A50762 /* CAAudioBufferList.cpp */; };
|
||||
8B3F20E82F62D84400A50762 /* CAAudioTimeStamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20602F62D84400A50762 /* CAAudioTimeStamp.cpp */; };
|
||||
8B3F20E92F62D84400A50762 /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20612F62D84400A50762 /* CAVectorUnit.h */; };
|
||||
8B3F20EA2F62D84400A50762 /* CAByteOrder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20622F62D84400A50762 /* CAByteOrder.h */; };
|
||||
8B3F20EB2F62D84400A50762 /* CACFArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20632F62D84400A50762 /* CACFArray.h */; };
|
||||
8B3F20EC2F62D84400A50762 /* CAAtomicStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20642F62D84400A50762 /* CAAtomicStack.h */; };
|
||||
8B3F20ED2F62D84400A50762 /* CAReferenceCounted.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20652F62D84400A50762 /* CAReferenceCounted.h */; };
|
||||
8B3F20EE2F62D84400A50762 /* CACFMachPort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20662F62D84400A50762 /* CACFMachPort.cpp */; };
|
||||
8B3F20EF2F62D84400A50762 /* CABufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20672F62D84400A50762 /* CABufferList.cpp */; };
|
||||
8B3F20F02F62D84400A50762 /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20682F62D84400A50762 /* CAMutex.cpp */; };
|
||||
8B3F20F12F62D84400A50762 /* CADebugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20692F62D84400A50762 /* CADebugger.cpp */; };
|
||||
8B3F20F22F62D84400A50762 /* CABundleLocker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F206A2F62D84400A50762 /* CABundleLocker.cpp */; };
|
||||
8B3F20F32F62D84400A50762 /* CAAudioFileFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F206B2F62D84400A50762 /* CAAudioFileFormats.cpp */; };
|
||||
8B3F20F42F62D84400A50762 /* CAMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F206C2F62D84400A50762 /* CAMath.h */; };
|
||||
8B3F20F52F62D84400A50762 /* CACFArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F206D2F62D84400A50762 /* CACFArray.cpp */; };
|
||||
8B3F20F62F62D84400A50762 /* CACFMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F206E2F62D84400A50762 /* CACFMessagePort.h */; };
|
||||
8B3F20F72F62D84400A50762 /* CAAudioValueRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F206F2F62D84400A50762 /* CAAudioValueRange.cpp */; };
|
||||
8B3F20F82F62D84400A50762 /* CAAudioUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20702F62D84400A50762 /* CAAudioUnit.cpp */; };
|
||||
8B3F20F92F62D84400A50762 /* AUViewLocalizedStringKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20742F62D84400A50762 /* AUViewLocalizedStringKeys.h */; };
|
||||
8B3F20FA2F62D84400A50762 /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20762F62D84400A50762 /* ComponentBase.cpp */; };
|
||||
8B3F20FB2F62D84400A50762 /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20772F62D84400A50762 /* AUScopeElement.cpp */; };
|
||||
8B3F20FC2F62D84400A50762 /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20782F62D84400A50762 /* ComponentBase.h */; };
|
||||
8B3F20FD2F62D84400A50762 /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20792F62D84400A50762 /* AUBase.cpp */; };
|
||||
8B3F20FE2F62D84400A50762 /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F207A2F62D84400A50762 /* AUInputElement.h */; };
|
||||
8B3F20FF2F62D84400A50762 /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F207B2F62D84400A50762 /* AUBase.h */; };
|
||||
8B3F21002F62D84400A50762 /* AUPlugInDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F207C2F62D84400A50762 /* AUPlugInDispatch.h */; };
|
||||
8B3F21012F62D84400A50762 /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F207D2F62D84400A50762 /* AUDispatch.h */; };
|
||||
8B3F21022F62D84400A50762 /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F207E2F62D84400A50762 /* AUOutputElement.cpp */; };
|
||||
8B3F21042F62D84400A50762 /* AUPlugInDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20802F62D84400A50762 /* AUPlugInDispatch.cpp */; };
|
||||
8B3F21052F62D84400A50762 /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20812F62D84400A50762 /* AUOutputElement.h */; };
|
||||
8B3F21062F62D84400A50762 /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20822F62D84400A50762 /* AUDispatch.cpp */; };
|
||||
8B3F21072F62D84400A50762 /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20832F62D84400A50762 /* AUScopeElement.h */; };
|
||||
8B3F21082F62D84400A50762 /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20842F62D84400A50762 /* AUInputElement.cpp */; };
|
||||
8B3F21092F62D84400A50762 /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F20862F62D84400A50762 /* AUEffectBase.cpp */; };
|
||||
8B3F210A2F62D84400A50762 /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20872F62D84400A50762 /* AUEffectBase.h */; };
|
||||
8B3F210B2F62D84400A50762 /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20892F62D84400A50762 /* AUTimestampGenerator.h */; };
|
||||
8B3F210C2F62D84400A50762 /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F208A2F62D84400A50762 /* AUBaseHelper.cpp */; };
|
||||
8B3F210D2F62D84400A50762 /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F208B2F62D84400A50762 /* AUSilentTimeout.h */; };
|
||||
8B3F210E2F62D84400A50762 /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F208C2F62D84400A50762 /* AUInputFormatConverter.h */; };
|
||||
8B3F210F2F62D84400A50762 /* AUTimestampGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F208D2F62D84400A50762 /* AUTimestampGenerator.cpp */; };
|
||||
8B3F21102F62D84400A50762 /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B3F208E2F62D84400A50762 /* AUBuffer.cpp */; };
|
||||
8B3F21112F62D84400A50762 /* AUMIDIDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F208F2F62D84400A50762 /* AUMIDIDefs.h */; };
|
||||
8B3F21122F62D84400A50762 /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20902F62D84400A50762 /* AUBuffer.h */; };
|
||||
8B3F21132F62D84400A50762 /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B3F20912F62D84400A50762 /* AUBaseHelper.h */; };
|
||||
8BA05A6B0720730100365D66 /* Donut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* Donut.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* DonutVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* DonutVersion.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 /* Donut.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* Donut.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
8B3F200A2F62D84400A50762 /* CAExtAudioFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAExtAudioFile.h; sourceTree = "<group>"; };
|
||||
8B3F200B2F62D84400A50762 /* CACFMachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMachPort.h; sourceTree = "<group>"; };
|
||||
8B3F200C2F62D84400A50762 /* CABool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABool.h; sourceTree = "<group>"; };
|
||||
8B3F200D2F62D84400A50762 /* CAComponent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponent.cpp; sourceTree = "<group>"; };
|
||||
8B3F200E2F62D84400A50762 /* CADebugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugger.h; sourceTree = "<group>"; };
|
||||
8B3F200F2F62D84400A50762 /* CACFNumber.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFNumber.cpp; sourceTree = "<group>"; };
|
||||
8B3F20102F62D84400A50762 /* CAGuard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAGuard.h; sourceTree = "<group>"; };
|
||||
8B3F20112F62D84400A50762 /* CAAtomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomic.h; sourceTree = "<group>"; };
|
||||
8B3F20122F62D84400A50762 /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8B3F20132F62D84400A50762 /* CACFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFObject.h; sourceTree = "<group>"; };
|
||||
8B3F20142F62D84400A50762 /* CAStreamRangedDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamRangedDescription.h; sourceTree = "<group>"; };
|
||||
8B3F20152F62D84400A50762 /* CATokenMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATokenMap.h; sourceTree = "<group>"; };
|
||||
8B3F20162F62D84400A50762 /* CAComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponent.h; sourceTree = "<group>"; };
|
||||
8B3F20172F62D84400A50762 /* CAAudioBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioBufferList.h; sourceTree = "<group>"; };
|
||||
8B3F20182F62D84400A50762 /* CAAudioUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnit.h; sourceTree = "<group>"; };
|
||||
8B3F20192F62D84400A50762 /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8B3F201A2F62D84400A50762 /* CAException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAException.h; sourceTree = "<group>"; };
|
||||
8B3F201B2F62D84400A50762 /* CAAUProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUProcessor.cpp; sourceTree = "<group>"; };
|
||||
8B3F201C2F62D84400A50762 /* CAAUProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUProcessor.h; sourceTree = "<group>"; };
|
||||
8B3F201D2F62D84400A50762 /* CAProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAProcess.h; sourceTree = "<group>"; };
|
||||
8B3F201E2F62D84400A50762 /* CACFDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDictionary.h; sourceTree = "<group>"; };
|
||||
8B3F201F2F62D84400A50762 /* CAPThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPThread.h; sourceTree = "<group>"; };
|
||||
8B3F20202F62D84400A50762 /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8B3F20212F62D84400A50762 /* CAAudioTimeStamp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioTimeStamp.h; sourceTree = "<group>"; };
|
||||
8B3F20222F62D84400A50762 /* CAFilePathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAFilePathUtils.cpp; sourceTree = "<group>"; };
|
||||
8B3F20232F62D84400A50762 /* CAAudioValueRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioValueRange.h; sourceTree = "<group>"; };
|
||||
8B3F20242F62D84400A50762 /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B3F20252F62D84400A50762 /* CAAudioChannelLayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayoutObject.cpp; sourceTree = "<group>"; };
|
||||
8B3F20262F62D84400A50762 /* CAGuard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAGuard.cpp; sourceTree = "<group>"; };
|
||||
8B3F20272F62D84400A50762 /* CACFNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFNumber.h; sourceTree = "<group>"; };
|
||||
8B3F20282F62D84400A50762 /* CACFDistributedNotification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDistributedNotification.cpp; sourceTree = "<group>"; };
|
||||
8B3F20292F62D84400A50762 /* CACFString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFString.h; sourceTree = "<group>"; };
|
||||
8B3F202A2F62D84400A50762 /* CAAUMIDIMapManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMapManager.cpp; sourceTree = "<group>"; };
|
||||
8B3F202B2F62D84400A50762 /* CAComponentDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponentDescription.cpp; sourceTree = "<group>"; };
|
||||
8B3F202C2F62D84400A50762 /* CAHostTimeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAHostTimeBase.h; sourceTree = "<group>"; };
|
||||
8B3F202D2F62D84400A50762 /* CADebugMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugMacros.cpp; sourceTree = "<group>"; };
|
||||
8B3F202E2F62D84400A50762 /* CAAudioFileFormats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioFileFormats.h; sourceTree = "<group>"; };
|
||||
8B3F202F2F62D84400A50762 /* CAAUMIDIMapManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMapManager.h; sourceTree = "<group>"; };
|
||||
8B3F20302F62D84400A50762 /* CACFDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDictionary.cpp; sourceTree = "<group>"; };
|
||||
8B3F20312F62D84400A50762 /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8B3F20322F62D84400A50762 /* CACFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFString.cpp; sourceTree = "<group>"; };
|
||||
8B3F20332F62D84400A50762 /* CASettingsStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASettingsStorage.h; sourceTree = "<group>"; };
|
||||
8B3F20342F62D84400A50762 /* CADebugPrintf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugPrintf.h; sourceTree = "<group>"; };
|
||||
8B3F20352F62D84400A50762 /* CAXException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAXException.cpp; sourceTree = "<group>"; };
|
||||
8B3F20362F62D84400A50762 /* CAAUMIDIMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMap.h; sourceTree = "<group>"; };
|
||||
8B3F20372F62D84400A50762 /* AUParamInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUParamInfo.h; sourceTree = "<group>"; };
|
||||
8B3F20382F62D84400A50762 /* CABitOperations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABitOperations.h; sourceTree = "<group>"; };
|
||||
8B3F20392F62D84400A50762 /* CACFPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFPreferences.cpp; sourceTree = "<group>"; };
|
||||
8B3F203A2F62D84400A50762 /* CABundleLocker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABundleLocker.h; sourceTree = "<group>"; };
|
||||
8B3F203B2F62D84400A50762 /* CAPropertyAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPropertyAddress.h; sourceTree = "<group>"; };
|
||||
8B3F203C2F62D84400A50762 /* CAXException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAXException.h; sourceTree = "<group>"; };
|
||||
8B3F203D2F62D84400A50762 /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8B3F203E2F62D84400A50762 /* CAThreadSafeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAThreadSafeList.h; sourceTree = "<group>"; };
|
||||
8B3F203F2F62D84400A50762 /* CAAudioUnitOutputCapturer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnitOutputCapturer.h; sourceTree = "<group>"; };
|
||||
8B3F20402F62D84400A50762 /* AUParamInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUParamInfo.cpp; sourceTree = "<group>"; };
|
||||
8B3F20412F62D84400A50762 /* CASharedLibrary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASharedLibrary.cpp; sourceTree = "<group>"; };
|
||||
8B3F20422F62D84400A50762 /* CAAUMIDIMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMap.cpp; sourceTree = "<group>"; };
|
||||
8B3F20432F62D84400A50762 /* CALogMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CALogMacros.h; sourceTree = "<group>"; };
|
||||
8B3F20442F62D84400A50762 /* CACFMessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMessagePort.cpp; sourceTree = "<group>"; };
|
||||
8B3F20452F62D84400A50762 /* CARingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CARingBuffer.h; sourceTree = "<group>"; };
|
||||
8B3F20462F62D84400A50762 /* AUOutputBL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputBL.cpp; sourceTree = "<group>"; };
|
||||
8B3F20472F62D84400A50762 /* CABufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABufferList.h; sourceTree = "<group>"; };
|
||||
8B3F20482F62D84400A50762 /* CASharedLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASharedLibrary.h; sourceTree = "<group>"; };
|
||||
8B3F20492F62D84400A50762 /* CACFData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFData.h; sourceTree = "<group>"; };
|
||||
8B3F204A2F62D84400A50762 /* CAStreamRangedDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamRangedDescription.cpp; sourceTree = "<group>"; };
|
||||
8B3F204B2F62D84400A50762 /* CAPThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPThread.cpp; sourceTree = "<group>"; };
|
||||
8B3F204C2F62D84400A50762 /* CAAutoDisposer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAutoDisposer.h; sourceTree = "<group>"; };
|
||||
8B3F204D2F62D84400A50762 /* CACFPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPreferences.h; sourceTree = "<group>"; };
|
||||
8B3F204E2F62D84400A50762 /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
8B3F204F2F62D84400A50762 /* CAComponentDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponentDescription.h; sourceTree = "<group>"; };
|
||||
8B3F20502F62D84400A50762 /* CADebugMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugMacros.h; sourceTree = "<group>"; };
|
||||
8B3F20512F62D84400A50762 /* AUOutputBL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputBL.h; sourceTree = "<group>"; };
|
||||
8B3F20522F62D84400A50762 /* CADebugPrintf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugPrintf.cpp; sourceTree = "<group>"; };
|
||||
8B3F20532F62D84400A50762 /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B3F20542F62D84400A50762 /* CACFPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPlugIn.h; sourceTree = "<group>"; };
|
||||
8B3F20552F62D84400A50762 /* CASettingsStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASettingsStorage.cpp; sourceTree = "<group>"; };
|
||||
8B3F20562F62D84400A50762 /* CAMixMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMixMap.h; sourceTree = "<group>"; };
|
||||
8B3F20572F62D84400A50762 /* CACFDistributedNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDistributedNotification.h; sourceTree = "<group>"; };
|
||||
8B3F20582F62D84400A50762 /* CAFilePathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAFilePathUtils.h; sourceTree = "<group>"; };
|
||||
8B3F20592F62D84400A50762 /* CATink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATink.h; sourceTree = "<group>"; };
|
||||
8B3F205A2F62D84400A50762 /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8B3F205B2F62D84400A50762 /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8B3F205C2F62D84400A50762 /* CAProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAProcess.cpp; sourceTree = "<group>"; };
|
||||
8B3F205D2F62D84400A50762 /* CAHostTimeBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAHostTimeBase.cpp; sourceTree = "<group>"; };
|
||||
8B3F205E2F62D84400A50762 /* CAPersistence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPersistence.cpp; sourceTree = "<group>"; };
|
||||
8B3F205F2F62D84400A50762 /* CAAudioBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioBufferList.cpp; sourceTree = "<group>"; };
|
||||
8B3F20602F62D84400A50762 /* CAAudioTimeStamp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioTimeStamp.cpp; sourceTree = "<group>"; };
|
||||
8B3F20612F62D84400A50762 /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
8B3F20622F62D84400A50762 /* CAByteOrder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAByteOrder.h; sourceTree = "<group>"; };
|
||||
8B3F20632F62D84400A50762 /* CACFArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFArray.h; sourceTree = "<group>"; };
|
||||
8B3F20642F62D84400A50762 /* CAAtomicStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomicStack.h; sourceTree = "<group>"; };
|
||||
8B3F20652F62D84400A50762 /* CAReferenceCounted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAReferenceCounted.h; sourceTree = "<group>"; };
|
||||
8B3F20662F62D84400A50762 /* CACFMachPort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMachPort.cpp; sourceTree = "<group>"; };
|
||||
8B3F20672F62D84400A50762 /* CABufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABufferList.cpp; sourceTree = "<group>"; };
|
||||
8B3F20682F62D84400A50762 /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8B3F20692F62D84400A50762 /* CADebugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugger.cpp; sourceTree = "<group>"; };
|
||||
8B3F206A2F62D84400A50762 /* CABundleLocker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABundleLocker.cpp; sourceTree = "<group>"; };
|
||||
8B3F206B2F62D84400A50762 /* CAAudioFileFormats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioFileFormats.cpp; sourceTree = "<group>"; };
|
||||
8B3F206C2F62D84400A50762 /* CAMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMath.h; sourceTree = "<group>"; };
|
||||
8B3F206D2F62D84400A50762 /* CACFArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFArray.cpp; sourceTree = "<group>"; };
|
||||
8B3F206E2F62D84400A50762 /* CACFMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMessagePort.h; sourceTree = "<group>"; };
|
||||
8B3F206F2F62D84400A50762 /* CAAudioValueRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioValueRange.cpp; sourceTree = "<group>"; };
|
||||
8B3F20702F62D84400A50762 /* CAAudioUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioUnit.cpp; sourceTree = "<group>"; };
|
||||
8B3F20742F62D84400A50762 /* AUViewLocalizedStringKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUViewLocalizedStringKeys.h; sourceTree = "<group>"; };
|
||||
8B3F20762F62D84400A50762 /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8B3F20772F62D84400A50762 /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8B3F20782F62D84400A50762 /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8B3F20792F62D84400A50762 /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8B3F207A2F62D84400A50762 /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8B3F207B2F62D84400A50762 /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8B3F207C2F62D84400A50762 /* AUPlugInDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUPlugInDispatch.h; sourceTree = "<group>"; };
|
||||
8B3F207D2F62D84400A50762 /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8B3F207E2F62D84400A50762 /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8B3F207F2F62D84400A50762 /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8B3F20802F62D84400A50762 /* AUPlugInDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUPlugInDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B3F20812F62D84400A50762 /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8B3F20822F62D84400A50762 /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B3F20832F62D84400A50762 /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8B3F20842F62D84400A50762 /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8B3F20862F62D84400A50762 /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8B3F20872F62D84400A50762 /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8B3F20892F62D84400A50762 /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8B3F208A2F62D84400A50762 /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBaseHelper.cpp; sourceTree = "<group>"; };
|
||||
8B3F208B2F62D84400A50762 /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8B3F208C2F62D84400A50762 /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8B3F208D2F62D84400A50762 /* AUTimestampGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUTimestampGenerator.cpp; sourceTree = "<group>"; };
|
||||
8B3F208E2F62D84400A50762 /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B3F208F2F62D84400A50762 /* AUMIDIDefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUMIDIDefs.h; sourceTree = "<group>"; };
|
||||
8B3F20902F62D84400A50762 /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8B3F20912F62D84400A50762 /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBaseHelper.h; sourceTree = "<group>"; };
|
||||
8B3F21142F62D91800A50762 /* 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 /* Donut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = Donut.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* Donut.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = Donut.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* Donut.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = Donut.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = DonutVersion.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 /* Donut.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Donut.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* Donut.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Donut.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 /* Donut */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = Donut;
|
||||
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 = (
|
||||
8B3F20082F62D84400A50762 /* CA_SDK */,
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* Donut.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20082F62D84400A50762 /* CA_SDK */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20092F62D84400A50762 /* PublicUtility */,
|
||||
8B3F20712F62D84400A50762 /* AudioUnits */,
|
||||
);
|
||||
name = CA_SDK;
|
||||
path = ../../../../CA_SDK;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20092F62D84400A50762 /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F200A2F62D84400A50762 /* CAExtAudioFile.h */,
|
||||
8B3F200B2F62D84400A50762 /* CACFMachPort.h */,
|
||||
8B3F200C2F62D84400A50762 /* CABool.h */,
|
||||
8B3F200D2F62D84400A50762 /* CAComponent.cpp */,
|
||||
8B3F200E2F62D84400A50762 /* CADebugger.h */,
|
||||
8B3F200F2F62D84400A50762 /* CACFNumber.cpp */,
|
||||
8B3F20102F62D84400A50762 /* CAGuard.h */,
|
||||
8B3F20112F62D84400A50762 /* CAAtomic.h */,
|
||||
8B3F20122F62D84400A50762 /* CAStreamBasicDescription.h */,
|
||||
8B3F20132F62D84400A50762 /* CACFObject.h */,
|
||||
8B3F20142F62D84400A50762 /* CAStreamRangedDescription.h */,
|
||||
8B3F20152F62D84400A50762 /* CATokenMap.h */,
|
||||
8B3F20162F62D84400A50762 /* CAComponent.h */,
|
||||
8B3F20172F62D84400A50762 /* CAAudioBufferList.h */,
|
||||
8B3F20182F62D84400A50762 /* CAAudioUnit.h */,
|
||||
8B3F20192F62D84400A50762 /* CAAUParameter.h */,
|
||||
8B3F201A2F62D84400A50762 /* CAException.h */,
|
||||
8B3F201B2F62D84400A50762 /* CAAUProcessor.cpp */,
|
||||
8B3F201C2F62D84400A50762 /* CAAUProcessor.h */,
|
||||
8B3F201D2F62D84400A50762 /* CAProcess.h */,
|
||||
8B3F201E2F62D84400A50762 /* CACFDictionary.h */,
|
||||
8B3F201F2F62D84400A50762 /* CAPThread.h */,
|
||||
8B3F20202F62D84400A50762 /* CAAUParameter.cpp */,
|
||||
8B3F20212F62D84400A50762 /* CAAudioTimeStamp.h */,
|
||||
8B3F20222F62D84400A50762 /* CAFilePathUtils.cpp */,
|
||||
8B3F20232F62D84400A50762 /* CAAudioValueRange.h */,
|
||||
8B3F20242F62D84400A50762 /* CAVectorUnitTypes.h */,
|
||||
8B3F20252F62D84400A50762 /* CAAudioChannelLayoutObject.cpp */,
|
||||
8B3F20262F62D84400A50762 /* CAGuard.cpp */,
|
||||
8B3F20272F62D84400A50762 /* CACFNumber.h */,
|
||||
8B3F20282F62D84400A50762 /* CACFDistributedNotification.cpp */,
|
||||
8B3F20292F62D84400A50762 /* CACFString.h */,
|
||||
8B3F202A2F62D84400A50762 /* CAAUMIDIMapManager.cpp */,
|
||||
8B3F202B2F62D84400A50762 /* CAComponentDescription.cpp */,
|
||||
8B3F202C2F62D84400A50762 /* CAHostTimeBase.h */,
|
||||
8B3F202D2F62D84400A50762 /* CADebugMacros.cpp */,
|
||||
8B3F202E2F62D84400A50762 /* CAAudioFileFormats.h */,
|
||||
8B3F202F2F62D84400A50762 /* CAAUMIDIMapManager.h */,
|
||||
8B3F20302F62D84400A50762 /* CACFDictionary.cpp */,
|
||||
8B3F20312F62D84400A50762 /* CAMutex.h */,
|
||||
8B3F20322F62D84400A50762 /* CACFString.cpp */,
|
||||
8B3F20332F62D84400A50762 /* CASettingsStorage.h */,
|
||||
8B3F20342F62D84400A50762 /* CADebugPrintf.h */,
|
||||
8B3F20352F62D84400A50762 /* CAXException.cpp */,
|
||||
8B3F20362F62D84400A50762 /* CAAUMIDIMap.h */,
|
||||
8B3F20372F62D84400A50762 /* AUParamInfo.h */,
|
||||
8B3F20382F62D84400A50762 /* CABitOperations.h */,
|
||||
8B3F20392F62D84400A50762 /* CACFPreferences.cpp */,
|
||||
8B3F203A2F62D84400A50762 /* CABundleLocker.h */,
|
||||
8B3F203B2F62D84400A50762 /* CAPropertyAddress.h */,
|
||||
8B3F203C2F62D84400A50762 /* CAXException.h */,
|
||||
8B3F203D2F62D84400A50762 /* CAAudioChannelLayout.cpp */,
|
||||
8B3F203E2F62D84400A50762 /* CAThreadSafeList.h */,
|
||||
8B3F203F2F62D84400A50762 /* CAAudioUnitOutputCapturer.h */,
|
||||
8B3F20402F62D84400A50762 /* AUParamInfo.cpp */,
|
||||
8B3F20412F62D84400A50762 /* CASharedLibrary.cpp */,
|
||||
8B3F20422F62D84400A50762 /* CAAUMIDIMap.cpp */,
|
||||
8B3F20432F62D84400A50762 /* CALogMacros.h */,
|
||||
8B3F20442F62D84400A50762 /* CACFMessagePort.cpp */,
|
||||
8B3F20452F62D84400A50762 /* CARingBuffer.h */,
|
||||
8B3F20462F62D84400A50762 /* AUOutputBL.cpp */,
|
||||
8B3F20472F62D84400A50762 /* CABufferList.h */,
|
||||
8B3F20482F62D84400A50762 /* CASharedLibrary.h */,
|
||||
8B3F20492F62D84400A50762 /* CACFData.h */,
|
||||
8B3F204A2F62D84400A50762 /* CAStreamRangedDescription.cpp */,
|
||||
8B3F204B2F62D84400A50762 /* CAPThread.cpp */,
|
||||
8B3F204C2F62D84400A50762 /* CAAutoDisposer.h */,
|
||||
8B3F204D2F62D84400A50762 /* CACFPreferences.h */,
|
||||
8B3F204E2F62D84400A50762 /* CAVectorUnit.cpp */,
|
||||
8B3F204F2F62D84400A50762 /* CAComponentDescription.h */,
|
||||
8B3F20502F62D84400A50762 /* CADebugMacros.h */,
|
||||
8B3F20512F62D84400A50762 /* AUOutputBL.h */,
|
||||
8B3F20522F62D84400A50762 /* CADebugPrintf.cpp */,
|
||||
8B3F20532F62D84400A50762 /* CARingBuffer.cpp */,
|
||||
8B3F20542F62D84400A50762 /* CACFPlugIn.h */,
|
||||
8B3F20552F62D84400A50762 /* CASettingsStorage.cpp */,
|
||||
8B3F20562F62D84400A50762 /* CAMixMap.h */,
|
||||
8B3F20572F62D84400A50762 /* CACFDistributedNotification.h */,
|
||||
8B3F20582F62D84400A50762 /* CAFilePathUtils.h */,
|
||||
8B3F20592F62D84400A50762 /* CATink.h */,
|
||||
8B3F205A2F62D84400A50762 /* CAStreamBasicDescription.cpp */,
|
||||
8B3F205B2F62D84400A50762 /* CAAudioChannelLayout.h */,
|
||||
8B3F205C2F62D84400A50762 /* CAProcess.cpp */,
|
||||
8B3F205D2F62D84400A50762 /* CAHostTimeBase.cpp */,
|
||||
8B3F205E2F62D84400A50762 /* CAPersistence.cpp */,
|
||||
8B3F205F2F62D84400A50762 /* CAAudioBufferList.cpp */,
|
||||
8B3F20602F62D84400A50762 /* CAAudioTimeStamp.cpp */,
|
||||
8B3F20612F62D84400A50762 /* CAVectorUnit.h */,
|
||||
8B3F20622F62D84400A50762 /* CAByteOrder.h */,
|
||||
8B3F20632F62D84400A50762 /* CACFArray.h */,
|
||||
8B3F20642F62D84400A50762 /* CAAtomicStack.h */,
|
||||
8B3F20652F62D84400A50762 /* CAReferenceCounted.h */,
|
||||
8B3F20662F62D84400A50762 /* CACFMachPort.cpp */,
|
||||
8B3F20672F62D84400A50762 /* CABufferList.cpp */,
|
||||
8B3F20682F62D84400A50762 /* CAMutex.cpp */,
|
||||
8B3F20692F62D84400A50762 /* CADebugger.cpp */,
|
||||
8B3F206A2F62D84400A50762 /* CABundleLocker.cpp */,
|
||||
8B3F206B2F62D84400A50762 /* CAAudioFileFormats.cpp */,
|
||||
8B3F206C2F62D84400A50762 /* CAMath.h */,
|
||||
8B3F206D2F62D84400A50762 /* CACFArray.cpp */,
|
||||
8B3F206E2F62D84400A50762 /* CACFMessagePort.h */,
|
||||
8B3F206F2F62D84400A50762 /* CAAudioValueRange.cpp */,
|
||||
8B3F20702F62D84400A50762 /* CAAudioUnit.cpp */,
|
||||
);
|
||||
path = PublicUtility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20712F62D84400A50762 /* AudioUnits */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20722F62D84400A50762 /* AUPublic */,
|
||||
);
|
||||
path = AudioUnits;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20722F62D84400A50762 /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20732F62D84400A50762 /* AUViewBase */,
|
||||
8B3F20752F62D84400A50762 /* AUBase */,
|
||||
8B3F20852F62D84400A50762 /* OtherBases */,
|
||||
8B3F20882F62D84400A50762 /* Utility */,
|
||||
);
|
||||
path = AUPublic;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20732F62D84400A50762 /* AUViewBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20742F62D84400A50762 /* AUViewLocalizedStringKeys.h */,
|
||||
);
|
||||
path = AUViewBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20752F62D84400A50762 /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20762F62D84400A50762 /* ComponentBase.cpp */,
|
||||
8B3F20772F62D84400A50762 /* AUScopeElement.cpp */,
|
||||
8B3F20782F62D84400A50762 /* ComponentBase.h */,
|
||||
8B3F20792F62D84400A50762 /* AUBase.cpp */,
|
||||
8B3F207A2F62D84400A50762 /* AUInputElement.h */,
|
||||
8B3F207B2F62D84400A50762 /* AUBase.h */,
|
||||
8B3F207C2F62D84400A50762 /* AUPlugInDispatch.h */,
|
||||
8B3F207D2F62D84400A50762 /* AUDispatch.h */,
|
||||
8B3F207E2F62D84400A50762 /* AUOutputElement.cpp */,
|
||||
8B3F207F2F62D84400A50762 /* AUResources.r */,
|
||||
8B3F20802F62D84400A50762 /* AUPlugInDispatch.cpp */,
|
||||
8B3F20812F62D84400A50762 /* AUOutputElement.h */,
|
||||
8B3F20822F62D84400A50762 /* AUDispatch.cpp */,
|
||||
8B3F20832F62D84400A50762 /* AUScopeElement.h */,
|
||||
8B3F20842F62D84400A50762 /* AUInputElement.cpp */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20852F62D84400A50762 /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20862F62D84400A50762 /* AUEffectBase.cpp */,
|
||||
8B3F20872F62D84400A50762 /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B3F20882F62D84400A50762 /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B3F20892F62D84400A50762 /* AUTimestampGenerator.h */,
|
||||
8B3F208A2F62D84400A50762 /* AUBaseHelper.cpp */,
|
||||
8B3F208B2F62D84400A50762 /* AUSilentTimeout.h */,
|
||||
8B3F208C2F62D84400A50762 /* AUInputFormatConverter.h */,
|
||||
8B3F208D2F62D84400A50762 /* AUTimestampGenerator.cpp */,
|
||||
8B3F208E2F62D84400A50762 /* AUBuffer.cpp */,
|
||||
8B3F208F2F62D84400A50762 /* AUMIDIDefs.h */,
|
||||
8B3F20902F62D84400A50762 /* AUBuffer.h */,
|
||||
8B3F20912F62D84400A50762 /* AUBaseHelper.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* Donut.h */,
|
||||
8BA05A660720730100365D66 /* Donut.cpp */,
|
||||
8BA05A670720730100365D66 /* Donut.exp */,
|
||||
8BA05A680720730100365D66 /* Donut.r */,
|
||||
8BA05A690720730100365D66 /* DonutVersion.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8BA05A6E0720730100365D66 /* DonutVersion.h in Headers */,
|
||||
8B3F20D42F62D84400A50762 /* CAAutoDisposer.h in Headers */,
|
||||
8B3F20F62F62D84400A50762 /* CACFMessagePort.h in Headers */,
|
||||
8B3F20CB2F62D84400A50762 /* CALogMacros.h in Headers */,
|
||||
8B3F20B12F62D84400A50762 /* CACFString.h in Headers */,
|
||||
8B3F20BF2F62D84400A50762 /* AUParamInfo.h in Headers */,
|
||||
8B3F20BB2F62D84400A50762 /* CASettingsStorage.h in Headers */,
|
||||
8B3F20CD2F62D84400A50762 /* CARingBuffer.h in Headers */,
|
||||
8B3F20AF2F62D84400A50762 /* CACFNumber.h in Headers */,
|
||||
8B3F20A62F62D84400A50762 /* CACFDictionary.h in Headers */,
|
||||
8B3F20A12F62D84400A50762 /* CAAUParameter.h in Headers */,
|
||||
8B3F20D82F62D84400A50762 /* CADebugMacros.h in Headers */,
|
||||
8B3F20932F62D84400A50762 /* CACFMachPort.h in Headers */,
|
||||
8B3F20ED2F62D84400A50762 /* CAReferenceCounted.h in Headers */,
|
||||
8B3F20E92F62D84400A50762 /* CAVectorUnit.h in Headers */,
|
||||
8B3F210D2F62D84400A50762 /* AUSilentTimeout.h in Headers */,
|
||||
8B3F209A2F62D84400A50762 /* CAStreamBasicDescription.h in Headers */,
|
||||
8B3F209C2F62D84400A50762 /* CAStreamRangedDescription.h in Headers */,
|
||||
8B3F20DC2F62D84400A50762 /* CACFPlugIn.h in Headers */,
|
||||
8B3F20F42F62D84400A50762 /* CAMath.h in Headers */,
|
||||
8B3F20B72F62D84400A50762 /* CAAUMIDIMapManager.h in Headers */,
|
||||
8B3F20E32F62D84400A50762 /* CAAudioChannelLayout.h in Headers */,
|
||||
8B3F209D2F62D84400A50762 /* CATokenMap.h in Headers */,
|
||||
8B3F20B92F62D84400A50762 /* CAMutex.h in Headers */,
|
||||
8B3F20C42F62D84400A50762 /* CAXException.h in Headers */,
|
||||
8B3F21002F62D84400A50762 /* AUPlugInDispatch.h in Headers */,
|
||||
8B3F20DE2F62D84400A50762 /* CAMixMap.h in Headers */,
|
||||
8B3F210E2F62D84400A50762 /* AUInputFormatConverter.h in Headers */,
|
||||
8B3F209F2F62D84400A50762 /* CAAudioBufferList.h in Headers */,
|
||||
8B3F20AB2F62D84400A50762 /* CAAudioValueRange.h in Headers */,
|
||||
8B3F21072F62D84400A50762 /* AUScopeElement.h in Headers */,
|
||||
8B3F20AC2F62D84400A50762 /* CAVectorUnitTypes.h in Headers */,
|
||||
8B3F20C02F62D84400A50762 /* CABitOperations.h in Headers */,
|
||||
8B3F20FF2F62D84400A50762 /* AUBase.h in Headers */,
|
||||
8B3F20A42F62D84400A50762 /* CAAUProcessor.h in Headers */,
|
||||
8B3F20982F62D84400A50762 /* CAGuard.h in Headers */,
|
||||
8B3F20FC2F62D84400A50762 /* ComponentBase.h in Headers */,
|
||||
8B3F20C72F62D84400A50762 /* CAAudioUnitOutputCapturer.h in Headers */,
|
||||
8B3F20D72F62D84400A50762 /* CAComponentDescription.h in Headers */,
|
||||
8B3F20DF2F62D84400A50762 /* CACFDistributedNotification.h in Headers */,
|
||||
8B3F209B2F62D84400A50762 /* CACFObject.h in Headers */,
|
||||
8B3F20BC2F62D84400A50762 /* CADebugPrintf.h in Headers */,
|
||||
8B3F20EB2F62D84400A50762 /* CACFArray.h in Headers */,
|
||||
8B3F20E02F62D84400A50762 /* CAFilePathUtils.h in Headers */,
|
||||
8B3F20D12F62D84400A50762 /* CACFData.h in Headers */,
|
||||
8B3F210B2F62D84400A50762 /* AUTimestampGenerator.h in Headers */,
|
||||
8B3F20D52F62D84400A50762 /* CACFPreferences.h in Headers */,
|
||||
8B3F20992F62D84400A50762 /* CAAtomic.h in Headers */,
|
||||
8B3F20E12F62D84400A50762 /* CATink.h in Headers */,
|
||||
8B3F20F92F62D84400A50762 /* AUViewLocalizedStringKeys.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* Donut.h in Headers */,
|
||||
8B3F20B42F62D84400A50762 /* CAHostTimeBase.h in Headers */,
|
||||
8B3F209E2F62D84400A50762 /* CAComponent.h in Headers */,
|
||||
8B3F20C22F62D84400A50762 /* CABundleLocker.h in Headers */,
|
||||
8B3F20922F62D84400A50762 /* CAExtAudioFile.h in Headers */,
|
||||
8B3F20962F62D84400A50762 /* CADebugger.h in Headers */,
|
||||
8B3F20BE2F62D84400A50762 /* CAAUMIDIMap.h in Headers */,
|
||||
8B3F20A92F62D84400A50762 /* CAAudioTimeStamp.h in Headers */,
|
||||
8B3F210A2F62D84400A50762 /* AUEffectBase.h in Headers */,
|
||||
8B3F20A52F62D84400A50762 /* CAProcess.h in Headers */,
|
||||
8B3F20EA2F62D84400A50762 /* CAByteOrder.h in Headers */,
|
||||
8B3F20D02F62D84400A50762 /* CASharedLibrary.h in Headers */,
|
||||
8B3F21052F62D84400A50762 /* AUOutputElement.h in Headers */,
|
||||
8B3F21122F62D84400A50762 /* AUBuffer.h in Headers */,
|
||||
8B3F20C32F62D84400A50762 /* CAPropertyAddress.h in Headers */,
|
||||
8B3F20942F62D84400A50762 /* CABool.h in Headers */,
|
||||
8B3F21132F62D84400A50762 /* AUBaseHelper.h in Headers */,
|
||||
8B3F20C62F62D84400A50762 /* CAThreadSafeList.h in Headers */,
|
||||
8B3F20B62F62D84400A50762 /* CAAudioFileFormats.h in Headers */,
|
||||
8B3F21012F62D84400A50762 /* AUDispatch.h in Headers */,
|
||||
8B3F20FE2F62D84400A50762 /* AUInputElement.h in Headers */,
|
||||
8B3F20A72F62D84400A50762 /* CAPThread.h in Headers */,
|
||||
8B3F20A22F62D84400A50762 /* CAException.h in Headers */,
|
||||
8B3F20D92F62D84400A50762 /* AUOutputBL.h in Headers */,
|
||||
8B3F21112F62D84400A50762 /* AUMIDIDefs.h in Headers */,
|
||||
8B3F20CF2F62D84400A50762 /* CABufferList.h in Headers */,
|
||||
8B3F20A02F62D84400A50762 /* CAAudioUnit.h in Headers */,
|
||||
8B3F20EC2F62D84400A50762 /* CAAtomicStack.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "Donut" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = Donut;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = Donut;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* Donut.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "Donut" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
en,
|
||||
de,
|
||||
fr,
|
||||
Base,
|
||||
ja,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* Donut */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* Donut */,
|
||||
);
|
||||
};
|
||||
/* 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 = (
|
||||
8B3F20BD2F62D84400A50762 /* CAXException.cpp in Sources */,
|
||||
8BA05A6B0720730100365D66 /* Donut.cpp in Sources */,
|
||||
8B3F21082F62D84400A50762 /* AUInputElement.cpp in Sources */,
|
||||
8B3F20FA2F62D84400A50762 /* ComponentBase.cpp in Sources */,
|
||||
8B3F20DB2F62D84400A50762 /* CARingBuffer.cpp in Sources */,
|
||||
8B3F21062F62D84400A50762 /* AUDispatch.cpp in Sources */,
|
||||
8B3F20E62F62D84400A50762 /* CAPersistence.cpp in Sources */,
|
||||
8B3F20E82F62D84400A50762 /* CAAudioTimeStamp.cpp in Sources */,
|
||||
8B3F21092F62D84400A50762 /* AUEffectBase.cpp in Sources */,
|
||||
8B3F21042F62D84400A50762 /* AUPlugInDispatch.cpp in Sources */,
|
||||
8B3F20A82F62D84400A50762 /* CAAUParameter.cpp in Sources */,
|
||||
8B3F20EF2F62D84400A50762 /* CABufferList.cpp in Sources */,
|
||||
8B3F20AA2F62D84400A50762 /* CAFilePathUtils.cpp in Sources */,
|
||||
8B3F20DA2F62D84400A50762 /* CADebugPrintf.cpp in Sources */,
|
||||
8B3F20B52F62D84400A50762 /* CADebugMacros.cpp in Sources */,
|
||||
8B3F20F02F62D84400A50762 /* CAMutex.cpp in Sources */,
|
||||
8B3F21102F62D84400A50762 /* AUBuffer.cpp in Sources */,
|
||||
8B3F20B22F62D84400A50762 /* CAAUMIDIMapManager.cpp in Sources */,
|
||||
8B3F20952F62D84400A50762 /* CAComponent.cpp in Sources */,
|
||||
8B3F21022F62D84400A50762 /* AUOutputElement.cpp in Sources */,
|
||||
8B3F20B32F62D84400A50762 /* CAComponentDescription.cpp in Sources */,
|
||||
8B3F20E22F62D84400A50762 /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8B3F210F2F62D84400A50762 /* AUTimestampGenerator.cpp in Sources */,
|
||||
8B3F20E72F62D84400A50762 /* CAAudioBufferList.cpp in Sources */,
|
||||
8B3F20B82F62D84400A50762 /* CACFDictionary.cpp in Sources */,
|
||||
8B3F20C12F62D84400A50762 /* CACFPreferences.cpp in Sources */,
|
||||
8B3F20F82F62D84400A50762 /* CAAudioUnit.cpp in Sources */,
|
||||
8B3F20CA2F62D84400A50762 /* CAAUMIDIMap.cpp in Sources */,
|
||||
8B3F20A32F62D84400A50762 /* CAAUProcessor.cpp in Sources */,
|
||||
8B3F20C92F62D84400A50762 /* CASharedLibrary.cpp in Sources */,
|
||||
8B3F20F12F62D84400A50762 /* CADebugger.cpp in Sources */,
|
||||
8B3F20FD2F62D84400A50762 /* AUBase.cpp in Sources */,
|
||||
8B3F20CE2F62D84400A50762 /* AUOutputBL.cpp in Sources */,
|
||||
8B3F20D32F62D84400A50762 /* CAPThread.cpp in Sources */,
|
||||
8B3F210C2F62D84400A50762 /* AUBaseHelper.cpp in Sources */,
|
||||
8B3F20BA2F62D84400A50762 /* CACFString.cpp in Sources */,
|
||||
8B3F20C52F62D84400A50762 /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8B3F20DD2F62D84400A50762 /* CASettingsStorage.cpp in Sources */,
|
||||
8B3F20F72F62D84400A50762 /* CAAudioValueRange.cpp in Sources */,
|
||||
8B3F20F22F62D84400A50762 /* CABundleLocker.cpp in Sources */,
|
||||
8B3F20CC2F62D84400A50762 /* CACFMessagePort.cpp in Sources */,
|
||||
8B3F20FB2F62D84400A50762 /* AUScopeElement.cpp in Sources */,
|
||||
8B3F20E42F62D84400A50762 /* CAProcess.cpp in Sources */,
|
||||
8B3F20D62F62D84400A50762 /* CAVectorUnit.cpp in Sources */,
|
||||
8B3F20AD2F62D84400A50762 /* CAAudioChannelLayoutObject.cpp in Sources */,
|
||||
8B3F20F32F62D84400A50762 /* CAAudioFileFormats.cpp in Sources */,
|
||||
8B3F20D22F62D84400A50762 /* CAStreamRangedDescription.cpp in Sources */,
|
||||
8B3F20EE2F62D84400A50762 /* CACFMachPort.cpp in Sources */,
|
||||
8B3F20F52F62D84400A50762 /* CACFArray.cpp in Sources */,
|
||||
8B3F20AE2F62D84400A50762 /* CAGuard.cpp in Sources */,
|
||||
8B3F20972F62D84400A50762 /* CACFNumber.cpp in Sources */,
|
||||
8B3F20C82F62D84400A50762 /* AUParamInfo.cpp in Sources */,
|
||||
8B3F20B02F62D84400A50762 /* CACFDistributedNotification.cpp in Sources */,
|
||||
8B3F20E52F62D84400A50762 /* CAHostTimeBase.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
8B3F21142F62D91800A50762 /* 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 = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = Donut.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 = Donut;
|
||||
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 = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = Donut.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 = Donut;
|
||||
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;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
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;
|
||||
DEAD_CODE_STRIPPING = 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 "Donut" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "Donut" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
7
plugins/MacSignedAU/Donut/Donut.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/Donut/Donut.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -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>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
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 = "Donut.component"
|
||||
BlueprintName = "Donut"
|
||||
ReferencedContainer = "container:Donut.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 = "Donut.component"
|
||||
BlueprintName = "Donut"
|
||||
ReferencedContainer = "container:Donut.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -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>Donut.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>
|
||||
58
plugins/MacSignedAU/Donut/DonutVersion.h
Executable file
58
plugins/MacSignedAU/Donut/DonutVersion.h
Executable file
|
|
@ -0,0 +1,58 @@
|
|||
/*
|
||||
* File: DonutVersion.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/10/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 __DonutVersion_h__
|
||||
#define __DonutVersion_h__
|
||||
|
||||
|
||||
#ifdef DEBUG
|
||||
#define kDonutVersion 0xFFFFFFFF
|
||||
#else
|
||||
#define kDonutVersion 0x00010000
|
||||
#endif
|
||||
|
||||
//~~~~~~~~~~~~~~ Change!!! ~~~~~~~~~~~~~~~~~~~~~//
|
||||
#define Donut_COMP_MANF 'Dthr'
|
||||
#define Donut_COMP_SUBTYPE 'donu'
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~//
|
||||
|
||||
#endif
|
||||
|
||||
47
plugins/MacSignedAU/Donut/Info.plist
Executable file
47
plugins/MacSignedAU/Donut/Info.plist
Executable 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>donu</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>
|
||||
BIN
plugins/MacSignedAU/Donut/en.lproj/InfoPlist.strings
Executable file
BIN
plugins/MacSignedAU/Donut/en.lproj/InfoPlist.strings
Executable file
Binary file not shown.
16
plugins/MacSignedAU/Donut/version.plist
Executable file
16
plugins/MacSignedAU/Donut/version.plist
Executable 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>
|
||||
|
|
@ -2,6 +2,25 @@
|
|||
<!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>tot9</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
|
@ -9,11 +28,11 @@
|
|||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<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>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(ToTape9)
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, ToTape9)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
_ToTape9Entry
|
||||
_ToTape9Factory
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
7
plugins/MacSignedAU/ToTape9/ToTape9.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
7
plugins/MacSignedAU/ToTape9/ToTape9.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -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>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
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 = "ToTape9.component"
|
||||
BlueprintName = "ToTape9"
|
||||
ReferencedContainer = "container:ToTape9.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 = "ToTape9.component"
|
||||
BlueprintName = "ToTape9"
|
||||
ReferencedContainer = "container:ToTape9.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -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>ToTape9.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>
|
||||
|
|
@ -2,6 +2,25 @@
|
|||
<!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>tt9m</string>
|
||||
<key>type</key>
|
||||
<string>aufx</string>
|
||||
<key>version</key>
|
||||
<integer>65536</integer>
|
||||
</dict>
|
||||
</array>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
|
|
@ -9,11 +28,11 @@
|
|||
<key>CFBundleIconFile</key>
|
||||
<string></string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.airwindows.audiounit.${PRODUCT_NAME:identifier}</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PROJECTNAMEASIDENTIFIER}</string>
|
||||
<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>
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@
|
|||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
COMPONENT_ENTRY(ToTape9Mono)
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, ToTape9Mono)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
|
|
|||
|
|
@ -1 +1,2 @@
|
|||
_ToTape9MonoEntry
|
||||
_ToTape9MonoFactory
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Workspace
|
||||
version = "1.0">
|
||||
<FileRef
|
||||
location = "self:">
|
||||
</FileRef>
|
||||
</Workspace>
|
||||
|
|
@ -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>
|
||||
Binary file not shown.
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1420"
|
||||
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 = "ToTape9Mono.component"
|
||||
BlueprintName = "ToTape9Mono"
|
||||
ReferencedContainer = "container:ToTape9Mono.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 = "ToTape9Mono.component"
|
||||
BlueprintName = "ToTape9Mono"
|
||||
ReferencedContainer = "container:ToTape9Mono.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
|
|
@ -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>ToTape9Mono.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>
|
||||
47
plugins/MacSignedAU/WoodenBox/Info.plist
Executable file
47
plugins/MacSignedAU/WoodenBox/Info.plist
Executable 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>wdbx</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>Dthr</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
5
plugins/MacSignedAU/WoodenBox/StarterAU_Prefix.pch
Executable file
5
plugins/MacSignedAU/WoodenBox/StarterAU_Prefix.pch
Executable file
|
|
@ -0,0 +1,5 @@
|
|||
//
|
||||
// Prefix header for all source files of the '«PROJECTNAMEASIDENTIFIER»' target in the '«PROJECTNAMEASIDENTIFIER»' project.
|
||||
//
|
||||
|
||||
#include <CoreServices/CoreServices.h>
|
||||
541
plugins/MacSignedAU/WoodenBox/WoodenBox.cpp
Executable file
541
plugins/MacSignedAU/WoodenBox/WoodenBox.cpp
Executable file
|
|
@ -0,0 +1,541 @@
|
|||
/*
|
||||
* File: WoodenBox.cpp
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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.
|
||||
*
|
||||
*/
|
||||
/*=============================================================================
|
||||
WoodenBox.cpp
|
||||
|
||||
=============================================================================*/
|
||||
#include "WoodenBox.h"
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
AUDIOCOMPONENT_ENTRY(AUBaseFactory, WoodenBox)
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::WoodenBox
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
WoodenBox::WoodenBox(AudioUnit component)
|
||||
: AUEffectBase(component)
|
||||
{
|
||||
CreateElements();
|
||||
Globals()->UseIndexedParameters(kNumberOfParameters);
|
||||
SetParameter(kParam_A, kDefaultValue_ParamA );
|
||||
SetParameter(kParam_B, kDefaultValue_ParamB );
|
||||
SetParameter(kParam_C, kDefaultValue_ParamC );
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
mDebugDispatcher = new AUDebugDispatcher (this);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetParameterValueStrings
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetParameterValueStrings(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
CFArrayRef * outStrings)
|
||||
{
|
||||
|
||||
return kAudioUnitErr_InvalidProperty;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetParameterInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetParameterInfo(AudioUnitScope inScope,
|
||||
AudioUnitParameterID inParameterID,
|
||||
AudioUnitParameterInfo &outParameterInfo )
|
||||
{
|
||||
ComponentResult result = noErr;
|
||||
|
||||
outParameterInfo.flags = kAudioUnitParameterFlag_IsWritable
|
||||
| kAudioUnitParameterFlag_IsReadable;
|
||||
|
||||
if (inScope == kAudioUnitScope_Global) {
|
||||
switch(inParameterID)
|
||||
{
|
||||
case kParam_A:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterAName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Indexed;
|
||||
outParameterInfo.minValue = 0;
|
||||
outParameterInfo.maxValue = 16;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamA;
|
||||
break;
|
||||
case kParam_B:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterBName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamB;
|
||||
break;
|
||||
case kParam_C:
|
||||
AUBase::FillInParameterName (outParameterInfo, kParameterCName, false);
|
||||
outParameterInfo.unit = kAudioUnitParameterUnit_Generic;
|
||||
outParameterInfo.minValue = 0.0;
|
||||
outParameterInfo.maxValue = 1.0;
|
||||
outParameterInfo.defaultValue = kDefaultValue_ParamC;
|
||||
break;
|
||||
default:
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
result = kAudioUnitErr_InvalidParameter;
|
||||
}
|
||||
|
||||
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetPropertyInfo
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetPropertyInfo (AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
UInt32 & outDataSize,
|
||||
Boolean & outWritable)
|
||||
{
|
||||
return AUEffectBase::GetPropertyInfo (inID, inScope, inElement, outDataSize, outWritable);
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// state that plugin supports only stereo-in/stereo-out processing
|
||||
UInt32 WoodenBox::SupportedNumChannels(const AUChannelInfo ** outInfo)
|
||||
{
|
||||
if (outInfo != NULL)
|
||||
{
|
||||
static AUChannelInfo info;
|
||||
info.inChannels = 2;
|
||||
info.outChannels = 2;
|
||||
*outInfo = &info;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::GetProperty
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::GetProperty( AudioUnitPropertyID inID,
|
||||
AudioUnitScope inScope,
|
||||
AudioUnitElement inElement,
|
||||
void * outData )
|
||||
{
|
||||
return AUEffectBase::GetProperty (inID, inScope, inElement, outData);
|
||||
}
|
||||
|
||||
// WoodenBox::Initialize
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::Initialize()
|
||||
{
|
||||
ComponentResult result = AUEffectBase::Initialize();
|
||||
if (result == noErr)
|
||||
Reset(kAudioUnitScope_Global, 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
#pragma mark ____WoodenBoxEffectKernel
|
||||
|
||||
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::WoodenBoxKernel::Reset()
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
ComponentResult WoodenBox::Reset(AudioUnitScope inScope, AudioUnitElement inElement)
|
||||
{
|
||||
c4AL = c4BL = c4CL = c4DL = c4EL = c4FL = c4GL = c4HL = 1;
|
||||
c4IL = c4JL = c4KL = c4LL = c4ML = c4NL = c4OL = c4PL = 1;
|
||||
c4AR = c4BR = c4CR = c4DR = c4ER = c4FR = c4GR = c4HR = 1;
|
||||
c4IR = c4JR = c4KR = c4LR = c4MR = c4NR = c4OR = c4PR = 1;
|
||||
for(int x = 0; x < d4A+2; x++) {b4AL[x] = 0.0; b4AR[x] = 0.0;}
|
||||
for(int x = 0; x < d4B+2; x++) {b4BL[x] = 0.0; b4BR[x] = 0.0;}
|
||||
for(int x = 0; x < d4C+2; x++) {b4CL[x] = 0.0; b4CR[x] = 0.0;}
|
||||
for(int x = 0; x < d4D+2; x++) {b4DL[x] = 0.0; b4DR[x] = 0.0;}
|
||||
for(int x = 0; x < d4E+2; x++) {b4EL[x] = 0.0; b4ER[x] = 0.0;}
|
||||
for(int x = 0; x < d4F+2; x++) {b4FL[x] = 0.0; b4FR[x] = 0.0;}
|
||||
for(int x = 0; x < d4G+2; x++) {b4GL[x] = 0.0; b4GR[x] = 0.0;}
|
||||
for(int x = 0; x < d4H+2; x++) {b4HL[x] = 0.0; b4HR[x] = 0.0;}
|
||||
for(int x = 0; x < d4I+2; x++) {b4IL[x] = 0.0; b4IR[x] = 0.0;}
|
||||
for(int x = 0; x < d4J+2; x++) {b4JL[x] = 0.0; b4JR[x] = 0.0;}
|
||||
for(int x = 0; x < d4K+2; x++) {b4KL[x] = 0.0; b4KR[x] = 0.0;}
|
||||
for(int x = 0; x < d4L+2; x++) {b4LL[x] = 0.0; b4LR[x] = 0.0;}
|
||||
for(int x = 0; x < d4M+2; x++) {b4ML[x] = 0.0; b4MR[x] = 0.0;}
|
||||
for(int x = 0; x < d4N+2; x++) {b4NL[x] = 0.0; b4NR[x] = 0.0;}
|
||||
for(int x = 0; x < d4O+2; x++) {b4OL[x] = 0.0; b4OR[x] = 0.0;}
|
||||
for(int x = 0; x < d4P+2; x++) {b4PL[x] = 0.0; b4PR[x] = 0.0;}
|
||||
g4AL = g4BL = g4CL = g4DL = 0.0;
|
||||
g4DR = g4HR = g4LR = g4PR = 0.0;
|
||||
|
||||
for (int x = 0; x < bez_total; x++) bez[x] = 0.0;
|
||||
bez[bez_cycle] = 1.0;
|
||||
|
||||
shortA = 173;
|
||||
shortB = 82;
|
||||
shortC = 240;
|
||||
shortD = 191;
|
||||
shortE = 196;
|
||||
shortF = 257;
|
||||
shortG = 203;
|
||||
shortH = 252;
|
||||
shortI = 207;
|
||||
shortJ = 203;
|
||||
shortK = 250;
|
||||
shortL = 220;
|
||||
shortM = 261;
|
||||
shortN = 235;
|
||||
shortO = 161;
|
||||
shortP = 161;
|
||||
prevclearcoat = -1;
|
||||
|
||||
fpdL = 1.0; while (fpdL < 16386) fpdL = rand()*UINT32_MAX;
|
||||
fpdR = 1.0; while (fpdR < 16386) fpdR = rand()*UINT32_MAX;
|
||||
return noErr;
|
||||
}
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
// WoodenBox::ProcessBufferLists
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
OSStatus WoodenBox::ProcessBufferLists(AudioUnitRenderActionFlags & ioActionFlags,
|
||||
const AudioBufferList & inBuffer,
|
||||
AudioBufferList & outBuffer,
|
||||
UInt32 inFramesToProcess)
|
||||
{
|
||||
Float32 * inputL = (Float32*)(inBuffer.mBuffers[0].mData);
|
||||
Float32 * inputR = (Float32*)(inBuffer.mBuffers[1].mData);
|
||||
Float32 * outputL = (Float32*)(outBuffer.mBuffers[0].mData);
|
||||
Float32 * outputR = (Float32*)(outBuffer.mBuffers[1].mData);
|
||||
UInt32 nSampleFrames = inFramesToProcess;
|
||||
double overallscale = 1.0;
|
||||
overallscale /= 44100.0;
|
||||
overallscale *= GetSampleRate();
|
||||
|
||||
int clearcoat = GetParameter( kParam_A );
|
||||
if (clearcoat != prevclearcoat) {
|
||||
for(int count = 0; count < d4A+2; count++) {b4AL[count] = 0.0; b4AR[count] = 0.0;}
|
||||
for(int count = 0; count < d4B+2; count++) {b4BL[count] = 0.0; b4BR[count] = 0.0;}
|
||||
for(int count = 0; count < d4C+2; count++) {b4CL[count] = 0.0; b4CR[count] = 0.0;}
|
||||
for(int count = 0; count < d4D+2; count++) {b4DL[count] = 0.0; b4DR[count] = 0.0;}
|
||||
for(int count = 0; count < d4E+2; count++) {b4EL[count] = 0.0; b4ER[count] = 0.0;}
|
||||
for(int count = 0; count < d4F+2; count++) {b4FL[count] = 0.0; b4FR[count] = 0.0;}
|
||||
for(int count = 0; count < d4G+2; count++) {b4GL[count] = 0.0; b4GR[count] = 0.0;}
|
||||
for(int count = 0; count < d4H+2; count++) {b4HL[count] = 0.0; b4HR[count] = 0.0;}
|
||||
for(int count = 0; count < d4I+2; count++) {b4IL[count] = 0.0; b4IR[count] = 0.0;}
|
||||
for(int count = 0; count < d4J+2; count++) {b4JL[count] = 0.0; b4JR[count] = 0.0;}
|
||||
for(int count = 0; count < d4K+2; count++) {b4KL[count] = 0.0; b4KR[count] = 0.0;}
|
||||
for(int count = 0; count < d4L+2; count++) {b4LL[count] = 0.0; b4LR[count] = 0.0;}
|
||||
for(int count = 0; count < d4M+2; count++) {b4ML[count] = 0.0; b4MR[count] = 0.0;}
|
||||
for(int count = 0; count < d4N+2; count++) {b4NL[count] = 0.0; b4NR[count] = 0.0;}
|
||||
for(int count = 0; count < d4O+2; count++) {b4OL[count] = 0.0; b4OR[count] = 0.0;}
|
||||
for(int count = 0; count < d4P+2; count++) {b4PL[count] = 0.0; b4PR[count] = 0.0;}
|
||||
c4AL = 1;
|
||||
c4BL = 1;
|
||||
c4CL = 1;
|
||||
c4DL = 1;
|
||||
c4EL = 1;
|
||||
c4FL = 1;
|
||||
c4GL = 1;
|
||||
c4HL = 1;
|
||||
c4IL = 1;
|
||||
c4JL = 1;
|
||||
c4KL = 1;
|
||||
c4LL = 1;
|
||||
c4ML = 1;
|
||||
c4NL = 1;
|
||||
c4OL = 1;
|
||||
c4PL = 1;
|
||||
|
||||
c4AR = 1;
|
||||
c4BR = 1;
|
||||
c4CR = 1;
|
||||
c4DR = 1;
|
||||
c4ER = 1;
|
||||
c4FR = 1;
|
||||
c4GR = 1;
|
||||
c4HR = 1;
|
||||
c4IR = 1;
|
||||
c4JR = 1;
|
||||
c4KR = 1;
|
||||
c4LR = 1;
|
||||
c4MR = 1;
|
||||
c4NR = 1;
|
||||
c4OR = 1;
|
||||
c4PR = 1;
|
||||
switch (clearcoat)
|
||||
{
|
||||
case 0:
|
||||
shortA = 17; shortB = 10; shortC = 23; shortD = 3; shortE = 8; shortF = 7; shortG = 41; shortH = 6; shortI = 3; shortJ = 6; shortK = 59; shortL = 61; shortM = 4; shortN = 71; shortO = 5; shortP = 4; break; //0 to 4 ms, 0 seat room
|
||||
case 1:
|
||||
shortA = 12; shortB = 19; shortC = 89; shortD = 25; shortE = 92; shortF = 8; shortG = 41; shortH = 11; shortI = 80; shortJ = 27; shortK = 6; shortL = 4; shortM = 3; shortN = 21; shortO = 7; shortP = 63; break; //0 to 7 ms, 1 seat room
|
||||
case 2:
|
||||
shortA = 35; shortB = 19; shortC = 5; shortD = 7; shortE = 15; shortF = 7; shortG = 41; shortH = 191; shortI = 177; shortJ = 3; shortK = 6; shortL = 22; shortM = 23; shortN = 118; shortO = 4; shortP = 79; break; //0 to 11 ms, 4 seat room
|
||||
case 3:
|
||||
shortA = 17; shortB = 19; shortC = 105; shortD = 135; shortE = 31; shortF = 86; shortG = 41; shortH = 16; shortI = 3; shortJ = 16; shortK = 6; shortL = 151; shortM = 147; shortN = 26; shortO = 3; shortP = 10; break; //0 to 11 ms, 4 seat room
|
||||
case 4:
|
||||
shortA = 134; shortB = 13; shortC = 26; shortD = 10; shortE = 34; shortF = 24; shortG = 4; shortH = 60; shortI = 88; shortJ = 9; shortK = 155; shortL = 11; shortM = 3; shortN = 18; shortO = 9; shortP = 161; break; //0 to 11 ms, 4 seat room
|
||||
case 5:
|
||||
shortA = 17; shortB = 82; shortC = 23; shortD = 29; shortE = 133; shortF = 3; shortG = 41; shortH = 27; shortI = 10; shortJ = 177; shortK = 6; shortL = 37; shortM = 14; shortN = 145; shortO = 4; shortP = 9; break; //0 to 12 ms, 4 seat room
|
||||
case 6:
|
||||
shortA = 31; shortB = 19; shortC = 3; shortD = 29; shortE = 196; shortF = 11; shortG = 10; shortH = 65; shortI = 21; shortJ = 3; shortK = 148; shortL = 4; shortM = 26; shortN = 7; shortO = 161; shortP = 155; break; //0 to 12 ms, 4 seat room
|
||||
case 7:
|
||||
shortA = 17; shortB = 8; shortC = 3; shortD = 37; shortE = 3; shortF = 19; shortG = 41; shortH = 15; shortI = 7; shortJ = 197; shortK = 178; shortL = 22; shortM = 26; shortN = 97; shortO = 16; shortP = 156; break; //0 to 12 ms, 5 seat room
|
||||
case 8:
|
||||
shortA = 17; shortB = 3; shortC = 8; shortD = 29; shortE = 39; shortF = 156; shortG = 7; shortH = 43; shortI = 101; shortJ = 8; shortK = 15; shortL = 169; shortM = 67; shortN = 39; shortO = 154; shortP = 4; break; //0 to 13 ms, 5 seat room
|
||||
case 9:
|
||||
shortA = 18; shortB = 19; shortC = 23; shortD = 5; shortE = 176; shortF = 3; shortG = 41; shortH = 147; shortI = 7; shortJ = 148; shortK = 5; shortL = 15; shortM = 10; shortN = 30; shortO = 119; shortP = 19; break; //0 to 13 ms, 5 seat room
|
||||
case 10:
|
||||
shortA = 173; shortB = 19; shortC = 23; shortD = 27; shortE = 8; shortF = 37; shortG = 7; shortH = 202; shortI = 8; shortJ = 13; shortK = 3; shortL = 174; shortM = 67; shortN = 21; shortO = 73; shortP = 14; break; //0 to 14 ms, 6 seat room
|
||||
case 11:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 25; shortE = 19; shortF = 145; shortG = 9; shortH = 43; shortI = 47; shortJ = 203; shortK = 18; shortL = 180; shortM = 226; shortN = 3; shortO = 73; shortP = 12; break; //0 to 15 ms, 7 seat room
|
||||
case 12:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 3; shortE = 3; shortF = 20; shortG = 203; shortH = 99; shortI = 207; shortJ = 15; shortK = 10; shortL = 61; shortM = 20; shortN = 174; shortO = 33; shortP = 77; break; //0 to 15 ms, 7 seat room
|
||||
case 13:
|
||||
shortA = 17; shortB = 19; shortC = 23; shortD = 29; shortE = 3; shortF = 210; shortG = 183; shortH = 43; shortI = 13; shortJ = 12; shortK = 26; shortL = 220; shortM = 67; shortN = 235; shortO = 11; shortP = 23; break; //0 to 15 ms, 8 seat room
|
||||
case 14:
|
||||
shortA = 17; shortB = 3; shortC = 21; shortD = 191; shortE = 31; shortF = 10; shortG = 41; shortH = 218; shortI = 15; shortJ = 6; shortK = 111; shortL = 29; shortM = 129; shortN = 206; shortO = 4; shortP = 7; break; //0 to 16 ms, 8 seat room
|
||||
case 15:
|
||||
shortA = 17; shortB = 25; shortC = 240; shortD = 29; shortE = 4; shortF = 18; shortG = 41; shortH = 43; shortI = 29; shortJ = 28; shortK = 250; shortL = 12; shortM = 261; shortN = 9; shortO = 5; shortP = 79; break; //0 to 18 ms, 10 seat room
|
||||
case 16:
|
||||
default:
|
||||
shortA = 5; shortB = 3; shortC = 23; shortD = 29; shortE = 3; shortF = 257; shortG = 199; shortH = 252; shortI = 132; shortJ = 18; shortK = 11; shortL = 6; shortM = 30; shortN = 27; shortO = 7; shortP = 8; break; //0 to 19 ms, 11 seat room
|
||||
}
|
||||
prevclearcoat = clearcoat;
|
||||
}
|
||||
double reg4n = (1.0-pow(1.0-GetParameter( kParam_B ),2.0))*0.0336;
|
||||
double derez = 1.0;
|
||||
derez = fmin(fmax(derez/overallscale,0.0001),1.0);
|
||||
int bezFraction = (int)(1.0/derez);
|
||||
double bezTrim = (double)bezFraction/(bezFraction+1.0);
|
||||
derez = 1.0 / bezFraction;
|
||||
bezTrim = 1.0-(derez*bezTrim);
|
||||
//the revision more accurately connects the bezier curves
|
||||
double wet = 1.0-pow(1.0-GetParameter( kParam_C ),2.0);
|
||||
|
||||
while (nSampleFrames-- > 0) {
|
||||
double inputSampleL = *inputL;
|
||||
double inputSampleR = *inputR;
|
||||
if (fabs(inputSampleL)<1.18e-23) inputSampleL = fpdL * 1.18e-17;
|
||||
if (fabs(inputSampleR)<1.18e-23) inputSampleR = fpdR * 1.18e-17;
|
||||
double drySampleL = inputSampleL;
|
||||
double drySampleR = inputSampleR;
|
||||
|
||||
bez[bez_cycle] += derez;
|
||||
bez[bez_SampL] += (inputSampleR*derez);
|
||||
bez[bez_SampR] += (inputSampleL*derez); //stereo got reversed somewhere?
|
||||
if (bez[bez_cycle] > 1.0) { //hit the end point and we do a reverb sample
|
||||
bez[bez_cycle] = 0.0;
|
||||
//left verbs
|
||||
double dualmonoSampleL = bez[bez_SampL];
|
||||
b4AL[c4AL] = dualmonoSampleL + (g4AL * reg4n);
|
||||
b4BL[c4BL] = dualmonoSampleL + (g4BL * reg4n);
|
||||
b4CL[c4CL] = dualmonoSampleL + (g4CL * reg4n);
|
||||
b4DL[c4DL] = dualmonoSampleL + (g4DL * reg4n);
|
||||
|
||||
c4AL++; if (c4AL < 0 || c4AL > shortA) c4AL = 0;
|
||||
c4BL++; if (c4BL < 0 || c4BL > shortB) c4BL = 0;
|
||||
c4CL++; if (c4CL < 0 || c4CL > shortC) c4CL = 0;
|
||||
c4DL++; if (c4DL < 0 || c4DL > shortD) c4DL = 0;
|
||||
|
||||
double hA = b4AL[c4AL-((c4AL > shortA)?shortA+1:0)];
|
||||
double hB = b4BL[c4BL-((c4BL > shortB)?shortB+1:0)];
|
||||
double hC = b4CL[c4CL-((c4CL > shortC)?shortC+1:0)];
|
||||
double hD = b4DL[c4DL-((c4DL > shortD)?shortD+1:0)];
|
||||
b4EL[c4EL] = hA - (hB + hC + hD);
|
||||
b4FL[c4FL] = hB - (hA + hC + hD);
|
||||
b4GL[c4GL] = hC - (hA + hB + hD);
|
||||
b4HL[c4HL] = hD - (hA + hB + hC);
|
||||
|
||||
c4EL++; if (c4EL < 0 || c4EL > shortE) c4EL = 0;
|
||||
c4FL++; if (c4FL < 0 || c4FL > shortF) c4FL = 0;
|
||||
c4GL++; if (c4GL < 0 || c4GL > shortG) c4GL = 0;
|
||||
c4HL++; if (c4HL < 0 || c4HL > shortH) c4HL = 0;
|
||||
|
||||
hA = b4EL[c4EL-((c4EL > shortE)?shortE+1:0)];
|
||||
hB = b4FL[c4FL-((c4FL > shortF)?shortF+1:0)];
|
||||
hC = b4GL[c4GL-((c4GL > shortG)?shortG+1:0)];
|
||||
hD = b4HL[c4HL-((c4HL > shortH)?shortH+1:0)];
|
||||
b4IL[c4IL] = hA - (hB + hC + hD);
|
||||
b4JL[c4JL] = hB - (hA + hC + hD);
|
||||
b4KL[c4KL] = hC - (hA + hB + hD);
|
||||
b4LL[c4LL] = hD - (hA + hB + hC);
|
||||
|
||||
c4IL++; if (c4IL < 0 || c4IL > shortI) c4IL = 0;
|
||||
c4JL++; if (c4JL < 0 || c4JL > shortJ) c4JL = 0;
|
||||
c4KL++; if (c4KL < 0 || c4KL > shortK) c4KL = 0;
|
||||
c4LL++; if (c4LL < 0 || c4LL > shortL) c4LL = 0;
|
||||
|
||||
hA = b4IL[c4IL-((c4IL > shortI)?shortI+1:0)];
|
||||
hB = b4JL[c4JL-((c4JL > shortJ)?shortJ+1:0)];
|
||||
hC = b4KL[c4KL-((c4KL > shortK)?shortK+1:0)];
|
||||
hD = b4LL[c4LL-((c4LL > shortL)?shortL+1:0)];
|
||||
b4ML[c4ML] = hA - (hB + hC + hD);
|
||||
b4NL[c4NL] = hB - (hA + hC + hD);
|
||||
b4OL[c4OL] = hC - (hA + hB + hD);
|
||||
b4PL[c4PL] = hD - (hA + hB + hC);
|
||||
|
||||
c4ML++; if (c4ML < 0 || c4ML > shortM) c4ML = 0;
|
||||
c4NL++; if (c4NL < 0 || c4NL > shortN) c4NL = 0;
|
||||
c4OL++; if (c4OL < 0 || c4OL > shortO) c4OL = 0;
|
||||
c4PL++; if (c4PL < 0 || c4PL > shortP) c4PL = 0;
|
||||
|
||||
hA = b4ML[c4ML-((c4ML > shortM)?shortM+1:0)];
|
||||
hB = b4NL[c4NL-((c4NL > shortN)?shortN+1:0)];
|
||||
hC = b4OL[c4OL-((c4OL > shortO)?shortO+1:0)];
|
||||
hD = b4PL[c4PL-((c4PL > shortP)?shortP+1:0)];
|
||||
g4AL = hA - (hB + hC + hD);
|
||||
g4BL = hB - (hA + hC + hD);
|
||||
g4CL = hC - (hA + hB + hD);
|
||||
g4DL = hD - (hA + hB + hC);
|
||||
dualmonoSampleL = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
//right verbs
|
||||
double dualmonoSampleR = bez[bez_SampR];
|
||||
b4DR[c4DR] = dualmonoSampleR + (g4DR * reg4n);
|
||||
b4HR[c4HR] = dualmonoSampleR + (g4HR * reg4n);
|
||||
b4LR[c4LR] = dualmonoSampleR + (g4LR * reg4n);
|
||||
b4PR[c4PR] = dualmonoSampleR + (g4PR * reg4n);
|
||||
|
||||
c4DR++; if (c4DR < 0 || c4DR > shortD) c4DR = 0;
|
||||
c4HR++; if (c4HR < 0 || c4HR > shortH) c4HR = 0;
|
||||
c4LR++; if (c4LR < 0 || c4LR > shortL) c4LR = 0;
|
||||
c4PR++; if (c4PR < 0 || c4PR > shortP) c4PR = 0;
|
||||
|
||||
hA = b4DR[c4DR-((c4DR > shortD)?shortD+1:0)];
|
||||
hB = b4HR[c4HR-((c4HR > shortH)?shortH+1:0)];
|
||||
hC = b4LR[c4LR-((c4LR > shortL)?shortL+1:0)];
|
||||
hD = b4PR[c4PR-((c4PR > shortP)?shortP+1:0)];
|
||||
b4CR[c4CR] = hA - (hB + hC + hD);
|
||||
b4GR[c4GR] = hB - (hA + hC + hD);
|
||||
b4KR[c4KR] = hC - (hA + hB + hD);
|
||||
b4OR[c4OR] = hD - (hA + hB + hC);
|
||||
|
||||
c4CR++; if (c4CR < 0 || c4CR > shortC) c4CR = 0;
|
||||
c4GR++; if (c4GR < 0 || c4GR > shortG) c4GR = 0;
|
||||
c4KR++; if (c4KR < 0 || c4KR > shortK) c4KR = 0;
|
||||
c4OR++; if (c4OR < 0 || c4OR > shortO) c4OR = 0;
|
||||
|
||||
hA = b4CR[c4CR-((c4CR > shortC)?shortC+1:0)];
|
||||
hB = b4GR[c4GR-((c4GR > shortG)?shortG+1:0)];
|
||||
hC = b4KR[c4KR-((c4KR > shortK)?shortK+1:0)];
|
||||
hD = b4OR[c4OR-((c4OR > shortO)?shortO+1:0)];
|
||||
b4BR[c4BR] = hA - (hB + hC + hD);
|
||||
b4FR[c4FR] = hB - (hA + hC + hD);
|
||||
b4JR[c4JR] = hC - (hA + hB + hD);
|
||||
b4NR[c4NR] = hD - (hA + hB + hC);
|
||||
|
||||
c4BR++; if (c4BR < 0 || c4BR > shortB) c4BR = 0;
|
||||
c4FR++; if (c4FR < 0 || c4FR > shortF) c4FR = 0;
|
||||
c4JR++; if (c4JR < 0 || c4JR > shortJ) c4JR = 0;
|
||||
c4NR++; if (c4NR < 0 || c4NR > shortN) c4NR = 0;
|
||||
|
||||
hA = b4BR[c4BR-((c4BR > shortB)?shortB+1:0)];
|
||||
hB = b4FR[c4FR-((c4FR > shortF)?shortF+1:0)];
|
||||
hC = b4JR[c4JR-((c4JR > shortJ)?shortJ+1:0)];
|
||||
hD = b4NR[c4NR-((c4NR > shortN)?shortN+1:0)];
|
||||
b4AR[c4AR] = hA - (hB + hC + hD);
|
||||
b4ER[c4ER] = hB - (hA + hC + hD);
|
||||
b4IR[c4IR] = hC - (hA + hB + hD);
|
||||
b4MR[c4MR] = hD - (hA + hB + hC);
|
||||
|
||||
c4AR++; if (c4AR < 0 || c4AR > shortA) c4AR = 0;
|
||||
c4ER++; if (c4ER < 0 || c4ER > shortE) c4ER = 0;
|
||||
c4IR++; if (c4IR < 0 || c4IR > shortI) c4IR = 0;
|
||||
c4MR++; if (c4MR < 0 || c4MR > shortM) c4MR = 0;
|
||||
|
||||
hA = b4AR[c4AR-((c4AR > shortA)?shortA+1:0)];
|
||||
hB = b4ER[c4ER-((c4ER > shortE)?shortE+1:0)];
|
||||
hC = b4IR[c4IR-((c4IR > shortI)?shortI+1:0)];
|
||||
hD = b4MR[c4MR-((c4MR > shortM)?shortM+1:0)];
|
||||
g4DR = hA - (hB + hC + hD);
|
||||
g4HR = hB - (hA + hC + hD);
|
||||
g4LR = hC - (hA + hB + hD);
|
||||
g4PR = hD - (hA + hB + hC);
|
||||
dualmonoSampleR = (hA + hB + hC + hD)*0.125;
|
||||
|
||||
bez[bez_CL] = bez[bez_BL];
|
||||
bez[bez_BL] = bez[bez_AL];
|
||||
bez[bez_AL] = dualmonoSampleR;
|
||||
bez[bez_SampL] = 0.0;
|
||||
|
||||
bez[bez_CR] = bez[bez_BR];
|
||||
bez[bez_BR] = bez[bez_AR];
|
||||
bez[bez_AR] = dualmonoSampleL;
|
||||
bez[bez_SampR] = 0.0;
|
||||
}
|
||||
double X = bez[bez_cycle]*bezTrim;
|
||||
double CBL = (bez[bez_CL]*(1.0-X))+(bez[bez_BL]*X);
|
||||
double CBR = (bez[bez_CR]*(1.0-X))+(bez[bez_BR]*X);
|
||||
double BAL = (bez[bez_BL]*(1.0-X))+(bez[bez_AL]*X);
|
||||
double BAR = (bez[bez_BR]*(1.0-X))+(bez[bez_AR]*X);
|
||||
inputSampleL = (bez[bez_BL]+(CBL*(1.0-X))+(BAL*X))*0.125;
|
||||
inputSampleR = (bez[bez_BR]+(CBR*(1.0-X))+(BAR*X))*0.125;
|
||||
|
||||
inputSampleL = (inputSampleL * wet)+(drySampleL * (1.0-wet));
|
||||
inputSampleR = (inputSampleR * wet)+(drySampleR * (1.0-wet));
|
||||
|
||||
//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
|
||||
|
||||
*outputL = inputSampleL;
|
||||
*outputR = inputSampleR;
|
||||
//direct stereo out
|
||||
|
||||
inputL += 1;
|
||||
inputR += 1;
|
||||
outputL += 1;
|
||||
outputR += 1;
|
||||
}
|
||||
return noErr;
|
||||
}
|
||||
|
||||
2
plugins/MacSignedAU/WoodenBox/WoodenBox.exp
Executable file
2
plugins/MacSignedAU/WoodenBox/WoodenBox.exp
Executable file
|
|
@ -0,0 +1,2 @@
|
|||
_WoodenBoxEntry
|
||||
_WoodenBoxFactory
|
||||
213
plugins/MacSignedAU/WoodenBox/WoodenBox.h
Executable file
213
plugins/MacSignedAU/WoodenBox/WoodenBox.h
Executable file
|
|
@ -0,0 +1,213 @@
|
|||
/*
|
||||
* File: WoodenBox.h
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "WoodenBoxVersion.h"
|
||||
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
#include "AUDebugDispatcher.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef __WoodenBox_h__
|
||||
#define __WoodenBox_h__
|
||||
|
||||
|
||||
#pragma mark ____WoodenBox Parameters
|
||||
|
||||
// parameters
|
||||
static const float kDefaultValue_ParamA = 5;
|
||||
static const float kDefaultValue_ParamB = 0.5;
|
||||
static const float kDefaultValue_ParamC = 0.5;
|
||||
|
||||
static CFStringRef kParameterAName = CFSTR("Select");
|
||||
static CFStringRef kParameterBName = CFSTR("Reso");
|
||||
static CFStringRef kParameterCName = CFSTR("Depth");
|
||||
|
||||
enum {
|
||||
kParam_A =0,
|
||||
kParam_B =1,
|
||||
kParam_C =2,
|
||||
//Add your parameters here...
|
||||
kNumberOfParameters=3
|
||||
};
|
||||
|
||||
const int d4A = 173;
|
||||
const int d4B = 82;
|
||||
const int d4C = 240;
|
||||
const int d4D = 191;
|
||||
const int d4E = 196;
|
||||
const int d4F = 257;
|
||||
const int d4G = 203;
|
||||
const int d4H = 252;
|
||||
const int d4I = 207;
|
||||
const int d4J = 203;
|
||||
const int d4K = 250;
|
||||
const int d4L = 220;
|
||||
const int d4M = 261;
|
||||
const int d4N = 235;
|
||||
const int d4O = 161;
|
||||
const int d4P = 161;
|
||||
|
||||
#pragma mark ____WoodenBox
|
||||
class WoodenBox : public AUEffectBase
|
||||
{
|
||||
public:
|
||||
WoodenBox(AudioUnit component);
|
||||
#if AU_DEBUG_DISPATCHER
|
||||
virtual ~WoodenBox () { delete mDebugDispatcher; }
|
||||
#endif
|
||||
|
||||
virtual ComponentResult Reset(AudioUnitScope inScope, AudioUnitElement inElement);
|
||||
|
||||
virtual OSStatus ProcessBufferLists(AudioUnitRenderActionFlags & ioActionFlags,
|
||||
const AudioBufferList & inBuffer, AudioBufferList & outBuffer,
|
||||
UInt32 inFramesToProcess);
|
||||
virtual UInt32 SupportedNumChannels(const AUChannelInfo ** outInfo);
|
||||
|
||||
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 kWoodenBoxVersion; }
|
||||
|
||||
private:
|
||||
int c4AL,c4BL,c4CL,c4DL,c4EL,c4FL,c4GL,c4HL;
|
||||
int c4IL,c4JL,c4KL,c4LL,c4ML,c4NL,c4OL,c4PL;
|
||||
int c4AR,c4BR,c4CR,c4DR,c4ER,c4FR,c4GR,c4HR;
|
||||
int c4IR,c4JR,c4KR,c4LR,c4MR,c4NR,c4OR,c4PR;
|
||||
//base stereo reverb
|
||||
double b4AL[d4A+5];
|
||||
double b4BL[d4B+5];
|
||||
double b4CL[d4C+5];
|
||||
double b4DL[d4D+5];
|
||||
double b4EL[d4E+5];
|
||||
double b4FL[d4F+5];
|
||||
double b4GL[d4G+5];
|
||||
double b4HL[d4H+5];
|
||||
double b4IL[d4I+5];
|
||||
double b4JL[d4J+5];
|
||||
double b4KL[d4K+5];
|
||||
double b4LL[d4L+5];
|
||||
double b4ML[d4M+5];
|
||||
double b4NL[d4N+5];
|
||||
double b4OL[d4O+5];
|
||||
double b4PL[d4P+5];
|
||||
double b4AR[d4A+5];
|
||||
double b4BR[d4B+5];
|
||||
double b4CR[d4C+5];
|
||||
double b4DR[d4D+5];
|
||||
double b4ER[d4E+5];
|
||||
double b4FR[d4F+5];
|
||||
double b4GR[d4G+5];
|
||||
double b4HR[d4H+5];
|
||||
double b4IR[d4I+5];
|
||||
double b4JR[d4J+5];
|
||||
double b4KR[d4K+5];
|
||||
double b4LR[d4L+5];
|
||||
double b4MR[d4M+5];
|
||||
double b4NR[d4N+5];
|
||||
double b4OR[d4O+5];
|
||||
double b4PR[d4P+5];
|
||||
double g4AL,g4BL,g4CL,g4DL,g4DR,g4HR,g4LR,g4PR;
|
||||
//changed letter is the dual mono, with rearranged grid
|
||||
|
||||
enum {
|
||||
bez_AL,
|
||||
bez_AR,
|
||||
bez_BL,
|
||||
bez_BR,
|
||||
bez_CL,
|
||||
bez_CR,
|
||||
bez_SampL,
|
||||
bez_SampR,
|
||||
bez_cycle,
|
||||
bez_total
|
||||
}; //the new undersampling. bez signifies the bezier curve reconstruction
|
||||
double bez[bez_total];
|
||||
|
||||
int shortA;
|
||||
int shortB;
|
||||
int shortC;
|
||||
int shortD;
|
||||
int shortE;
|
||||
int shortF;
|
||||
int shortG;
|
||||
int shortH;
|
||||
int shortI;
|
||||
int shortJ;
|
||||
int shortK;
|
||||
int shortL;
|
||||
int shortM;
|
||||
int shortN;
|
||||
int shortO;
|
||||
int shortP;
|
||||
|
||||
int prevclearcoat;
|
||||
uint32_t fpdL;
|
||||
uint32_t fpdR;
|
||||
};
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
|
||||
#endif
|
||||
61
plugins/MacSignedAU/WoodenBox/WoodenBox.r
Executable file
61
plugins/MacSignedAU/WoodenBox/WoodenBox.r
Executable file
|
|
@ -0,0 +1,61 @@
|
|||
/*
|
||||
* File: WoodenBox.r
|
||||
*
|
||||
* Version: 1.0
|
||||
*
|
||||
* Created: 3/12/26
|
||||
*
|
||||
* Copyright: Copyright © 2026 Airwindows, Airwindows uses the MIT license
|
||||
*
|
||||
* 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 "WoodenBoxVersion.h"
|
||||
|
||||
// Note that resource IDs must be spaced 2 apart for the 'STR ' name and description
|
||||
#define kAudioUnitResID_WoodenBox 1000
|
||||
|
||||
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ WoodenBox~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
#define RES_ID kAudioUnitResID_WoodenBox
|
||||
#define COMP_TYPE kAudioUnitType_Effect
|
||||
#define COMP_SUBTYPE WoodenBox_COMP_SUBTYPE
|
||||
#define COMP_MANUF WoodenBox_COMP_MANF
|
||||
|
||||
#define VERSION kWoodenBoxVersion
|
||||
#define NAME "Airwindows: WoodenBox"
|
||||
#define DESCRIPTION "WoodenBox AU"
|
||||
#define ENTRY_POINT "WoodenBoxEntry"
|
||||
|
||||
#include "AUResources.r"
|
||||
1359
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.mode1v3
Executable file
1359
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.mode1v3
Executable file
File diff suppressed because it is too large
Load diff
131
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.pbxuser
Executable file
131
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.pbxuser
Executable file
|
|
@ -0,0 +1,131 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
activeBuildConfigurationName = Release;
|
||||
activeTarget = 8D01CCC60486CAD60068D4B7 /* WoodenBox */;
|
||||
codeSenseManager = 8BD3CCB9148830B20062E48C /* 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,
|
||||
188,
|
||||
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 = 795084379;
|
||||
PBXWorkspaceStateSaveDate = 795084379;
|
||||
};
|
||||
perUserProjectItems = {
|
||||
8B4952D52F6411A6007604D0 /* PBXTextBookmark */ = 8B4952D52F6411A6007604D0 /* PBXTextBookmark */;
|
||||
8B4952D62F6411A6007604D0 /* PBXTextBookmark */ = 8B4952D62F6411A6007604D0 /* PBXTextBookmark */;
|
||||
};
|
||||
sourceControlManager = 8BD3CCB8148830B20062E48C /* Source Control */;
|
||||
userBuildSettings = {
|
||||
};
|
||||
};
|
||||
8B4952D52F6411A6007604D0 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */;
|
||||
name = "WoodenBox.cpp: 371";
|
||||
rLen = 0;
|
||||
rLoc = 18305;
|
||||
rType = 0;
|
||||
vrLen = 264;
|
||||
vrLoc = 18163;
|
||||
};
|
||||
8B4952D62F6411A6007604D0 /* PBXTextBookmark */ = {
|
||||
isa = PBXTextBookmark;
|
||||
fRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */;
|
||||
name = "WoodenBox.cpp: 369";
|
||||
rLen = 0;
|
||||
rLoc = 18305;
|
||||
rType = 0;
|
||||
vrLen = 0;
|
||||
vrLoc = 0;
|
||||
};
|
||||
8BA05A660720730100365D66 /* WoodenBox.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {2361, 9684}}";
|
||||
sepNavSelRange = "{18305, 0}";
|
||||
sepNavVisRange = "{0, 0}";
|
||||
sepNavWindowFrame = "{{574, 122}, {1045, 710}}";
|
||||
};
|
||||
};
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1056, 1062}}";
|
||||
sepNavSelRange = "{2906, 0}";
|
||||
sepNavVisRange = "{967, 2002}";
|
||||
sepNavWindowFrame = "{{15, 48}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BA05A7F072073D200365D66 /* AUBase.cpp */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {516, 23430}}";
|
||||
sepNavSelRange = "{0, 0}";
|
||||
sepNavVisRange = "{0, 1336}";
|
||||
};
|
||||
};
|
||||
8BC6025B073B072D006C4272 /* WoodenBox.h */ = {
|
||||
uiCtxt = {
|
||||
sepNavIntBoundsRect = "{{0, 0}, {1146, 3780}}";
|
||||
sepNavSelRange = "{5304, 1440}";
|
||||
sepNavVisRange = "{2725, 841}";
|
||||
sepNavWindowFrame = "{{732, 53}, {1039, 825}}";
|
||||
};
|
||||
};
|
||||
8BD3CCB8148830B20062E48C /* Source Control */ = {
|
||||
isa = PBXSourceControlManager;
|
||||
fallbackIsa = XCSourceControlManager;
|
||||
isSCMEnabled = 0;
|
||||
scmConfiguration = {
|
||||
repositoryNamesForRoots = {
|
||||
"" = "";
|
||||
};
|
||||
};
|
||||
};
|
||||
8BD3CCB9148830B20062E48C /* Code sense */ = {
|
||||
isa = PBXCodeSenseManager;
|
||||
indexTemplatePath = "";
|
||||
};
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */ = {
|
||||
activeExec = 0;
|
||||
};
|
||||
}
|
||||
1483
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.perspectivev3
Executable file
1483
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/christopherjohnson.perspectivev3
Executable file
File diff suppressed because it is too large
Load diff
965
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/project.pbxproj
Executable file
965
plugins/MacSignedAU/WoodenBox/WoodenBox.xcodeproj/project.pbxproj
Executable file
|
|
@ -0,0 +1,965 @@
|
|||
// !$*UTF8*$!
|
||||
{
|
||||
archiveVersion = 1;
|
||||
classes = {
|
||||
};
|
||||
objectVersion = 45;
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
8B5617912F646B87003C0E0B /* CAExtAudioFile.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617092F646B87003C0E0B /* CAExtAudioFile.h */; };
|
||||
8B5617922F646B87003C0E0B /* CACFMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56170A2F646B87003C0E0B /* CACFMachPort.h */; };
|
||||
8B5617932F646B87003C0E0B /* CABool.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56170B2F646B87003C0E0B /* CABool.h */; };
|
||||
8B5617942F646B87003C0E0B /* CAComponent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56170C2F646B87003C0E0B /* CAComponent.cpp */; };
|
||||
8B5617952F646B87003C0E0B /* CADebugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56170D2F646B87003C0E0B /* CADebugger.h */; };
|
||||
8B5617962F646B87003C0E0B /* CACFNumber.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56170E2F646B87003C0E0B /* CACFNumber.cpp */; };
|
||||
8B5617972F646B87003C0E0B /* CAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56170F2F646B87003C0E0B /* CAGuard.h */; };
|
||||
8B5617982F646B87003C0E0B /* CAAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617102F646B87003C0E0B /* CAAtomic.h */; };
|
||||
8B5617992F646B87003C0E0B /* CAStreamBasicDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617112F646B87003C0E0B /* CAStreamBasicDescription.h */; };
|
||||
8B56179A2F646B87003C0E0B /* CACFObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617122F646B87003C0E0B /* CACFObject.h */; };
|
||||
8B56179B2F646B87003C0E0B /* CAStreamRangedDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617132F646B87003C0E0B /* CAStreamRangedDescription.h */; };
|
||||
8B56179C2F646B87003C0E0B /* CATokenMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617142F646B87003C0E0B /* CATokenMap.h */; };
|
||||
8B56179D2F646B87003C0E0B /* CAComponent.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617152F646B87003C0E0B /* CAComponent.h */; };
|
||||
8B56179E2F646B87003C0E0B /* CAAudioBufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617162F646B87003C0E0B /* CAAudioBufferList.h */; };
|
||||
8B56179F2F646B87003C0E0B /* CAAudioUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617172F646B87003C0E0B /* CAAudioUnit.h */; };
|
||||
8B5617A02F646B87003C0E0B /* CAAUParameter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617182F646B87003C0E0B /* CAAUParameter.h */; };
|
||||
8B5617A12F646B87003C0E0B /* CAException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617192F646B87003C0E0B /* CAException.h */; };
|
||||
8B5617A22F646B87003C0E0B /* CAAUProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56171A2F646B87003C0E0B /* CAAUProcessor.cpp */; };
|
||||
8B5617A32F646B87003C0E0B /* CAAUProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56171B2F646B87003C0E0B /* CAAUProcessor.h */; };
|
||||
8B5617A42F646B87003C0E0B /* CAProcess.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56171C2F646B87003C0E0B /* CAProcess.h */; };
|
||||
8B5617A52F646B87003C0E0B /* CACFDictionary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56171D2F646B87003C0E0B /* CACFDictionary.h */; };
|
||||
8B5617A62F646B87003C0E0B /* CAPThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56171E2F646B87003C0E0B /* CAPThread.h */; };
|
||||
8B5617A72F646B87003C0E0B /* CAAUParameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56171F2F646B87003C0E0B /* CAAUParameter.cpp */; };
|
||||
8B5617A82F646B87003C0E0B /* CAAudioTimeStamp.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617202F646B87003C0E0B /* CAAudioTimeStamp.h */; };
|
||||
8B5617A92F646B87003C0E0B /* CAFilePathUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617212F646B87003C0E0B /* CAFilePathUtils.cpp */; };
|
||||
8B5617AA2F646B87003C0E0B /* CAAudioValueRange.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617222F646B87003C0E0B /* CAAudioValueRange.h */; };
|
||||
8B5617AB2F646B87003C0E0B /* CAVectorUnitTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617232F646B87003C0E0B /* CAVectorUnitTypes.h */; };
|
||||
8B5617AC2F646B87003C0E0B /* CAAudioChannelLayoutObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617242F646B87003C0E0B /* CAAudioChannelLayoutObject.cpp */; };
|
||||
8B5617AD2F646B87003C0E0B /* CAGuard.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617252F646B87003C0E0B /* CAGuard.cpp */; };
|
||||
8B5617AE2F646B87003C0E0B /* CACFNumber.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617262F646B87003C0E0B /* CACFNumber.h */; };
|
||||
8B5617AF2F646B87003C0E0B /* CACFDistributedNotification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617272F646B87003C0E0B /* CACFDistributedNotification.cpp */; };
|
||||
8B5617B02F646B87003C0E0B /* CACFString.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617282F646B87003C0E0B /* CACFString.h */; };
|
||||
8B5617B12F646B87003C0E0B /* CAAUMIDIMapManager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617292F646B87003C0E0B /* CAAUMIDIMapManager.cpp */; };
|
||||
8B5617B22F646B87003C0E0B /* CAComponentDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56172A2F646B87003C0E0B /* CAComponentDescription.cpp */; };
|
||||
8B5617B32F646B87003C0E0B /* CAHostTimeBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56172B2F646B87003C0E0B /* CAHostTimeBase.h */; };
|
||||
8B5617B42F646B87003C0E0B /* CADebugMacros.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56172C2F646B87003C0E0B /* CADebugMacros.cpp */; };
|
||||
8B5617B52F646B87003C0E0B /* CAAudioFileFormats.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56172D2F646B87003C0E0B /* CAAudioFileFormats.h */; };
|
||||
8B5617B62F646B87003C0E0B /* CAAUMIDIMapManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56172E2F646B87003C0E0B /* CAAUMIDIMapManager.h */; };
|
||||
8B5617B72F646B87003C0E0B /* CACFDictionary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56172F2F646B87003C0E0B /* CACFDictionary.cpp */; };
|
||||
8B5617B82F646B87003C0E0B /* CAMutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617302F646B87003C0E0B /* CAMutex.h */; };
|
||||
8B5617B92F646B87003C0E0B /* CACFString.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617312F646B87003C0E0B /* CACFString.cpp */; };
|
||||
8B5617BA2F646B87003C0E0B /* CASettingsStorage.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617322F646B87003C0E0B /* CASettingsStorage.h */; };
|
||||
8B5617BB2F646B87003C0E0B /* CADebugPrintf.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617332F646B87003C0E0B /* CADebugPrintf.h */; };
|
||||
8B5617BC2F646B87003C0E0B /* CAXException.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617342F646B87003C0E0B /* CAXException.cpp */; };
|
||||
8B5617BD2F646B87003C0E0B /* CAAUMIDIMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617352F646B87003C0E0B /* CAAUMIDIMap.h */; };
|
||||
8B5617BE2F646B87003C0E0B /* AUParamInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617362F646B87003C0E0B /* AUParamInfo.h */; };
|
||||
8B5617BF2F646B87003C0E0B /* CABitOperations.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617372F646B87003C0E0B /* CABitOperations.h */; };
|
||||
8B5617C02F646B87003C0E0B /* CACFPreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617382F646B87003C0E0B /* CACFPreferences.cpp */; };
|
||||
8B5617C12F646B87003C0E0B /* CABundleLocker.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617392F646B87003C0E0B /* CABundleLocker.h */; };
|
||||
8B5617C22F646B87003C0E0B /* CAPropertyAddress.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56173A2F646B87003C0E0B /* CAPropertyAddress.h */; };
|
||||
8B5617C32F646B87003C0E0B /* CAXException.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56173B2F646B87003C0E0B /* CAXException.h */; };
|
||||
8B5617C42F646B87003C0E0B /* CAAudioChannelLayout.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56173C2F646B87003C0E0B /* CAAudioChannelLayout.cpp */; };
|
||||
8B5617C52F646B87003C0E0B /* CAThreadSafeList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56173D2F646B87003C0E0B /* CAThreadSafeList.h */; };
|
||||
8B5617C62F646B87003C0E0B /* CAAudioUnitOutputCapturer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56173E2F646B87003C0E0B /* CAAudioUnitOutputCapturer.h */; };
|
||||
8B5617C72F646B87003C0E0B /* AUParamInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56173F2F646B87003C0E0B /* AUParamInfo.cpp */; };
|
||||
8B5617C82F646B87003C0E0B /* CASharedLibrary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617402F646B87003C0E0B /* CASharedLibrary.cpp */; };
|
||||
8B5617C92F646B87003C0E0B /* CAAUMIDIMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617412F646B87003C0E0B /* CAAUMIDIMap.cpp */; };
|
||||
8B5617CA2F646B87003C0E0B /* CALogMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617422F646B87003C0E0B /* CALogMacros.h */; };
|
||||
8B5617CB2F646B87003C0E0B /* CACFMessagePort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617432F646B87003C0E0B /* CACFMessagePort.cpp */; };
|
||||
8B5617CC2F646B87003C0E0B /* CARingBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617442F646B87003C0E0B /* CARingBuffer.h */; };
|
||||
8B5617CD2F646B87003C0E0B /* AUOutputBL.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617452F646B87003C0E0B /* AUOutputBL.cpp */; };
|
||||
8B5617CE2F646B87003C0E0B /* CABufferList.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617462F646B87003C0E0B /* CABufferList.h */; };
|
||||
8B5617CF2F646B87003C0E0B /* CASharedLibrary.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617472F646B87003C0E0B /* CASharedLibrary.h */; };
|
||||
8B5617D02F646B87003C0E0B /* CACFData.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617482F646B87003C0E0B /* CACFData.h */; };
|
||||
8B5617D12F646B87003C0E0B /* CAStreamRangedDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617492F646B87003C0E0B /* CAStreamRangedDescription.cpp */; };
|
||||
8B5617D22F646B87003C0E0B /* CAPThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56174A2F646B87003C0E0B /* CAPThread.cpp */; };
|
||||
8B5617D32F646B87003C0E0B /* CAAutoDisposer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56174B2F646B87003C0E0B /* CAAutoDisposer.h */; };
|
||||
8B5617D42F646B87003C0E0B /* CACFPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56174C2F646B87003C0E0B /* CACFPreferences.h */; };
|
||||
8B5617D52F646B87003C0E0B /* CAVectorUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56174D2F646B87003C0E0B /* CAVectorUnit.cpp */; };
|
||||
8B5617D62F646B87003C0E0B /* CAComponentDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56174E2F646B87003C0E0B /* CAComponentDescription.h */; };
|
||||
8B5617D72F646B87003C0E0B /* CADebugMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56174F2F646B87003C0E0B /* CADebugMacros.h */; };
|
||||
8B5617D82F646B87003C0E0B /* AUOutputBL.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617502F646B87003C0E0B /* AUOutputBL.h */; };
|
||||
8B5617D92F646B87003C0E0B /* CADebugPrintf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617512F646B87003C0E0B /* CADebugPrintf.cpp */; };
|
||||
8B5617DA2F646B87003C0E0B /* CARingBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617522F646B87003C0E0B /* CARingBuffer.cpp */; };
|
||||
8B5617DB2F646B87003C0E0B /* CACFPlugIn.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617532F646B87003C0E0B /* CACFPlugIn.h */; };
|
||||
8B5617DC2F646B87003C0E0B /* CASettingsStorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617542F646B87003C0E0B /* CASettingsStorage.cpp */; };
|
||||
8B5617DD2F646B87003C0E0B /* CAMixMap.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617552F646B87003C0E0B /* CAMixMap.h */; };
|
||||
8B5617DE2F646B87003C0E0B /* CACFDistributedNotification.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617562F646B87003C0E0B /* CACFDistributedNotification.h */; };
|
||||
8B5617DF2F646B87003C0E0B /* CAFilePathUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617572F646B87003C0E0B /* CAFilePathUtils.h */; };
|
||||
8B5617E02F646B87003C0E0B /* CATink.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617582F646B87003C0E0B /* CATink.h */; };
|
||||
8B5617E12F646B87003C0E0B /* CAStreamBasicDescription.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617592F646B87003C0E0B /* CAStreamBasicDescription.cpp */; };
|
||||
8B5617E22F646B87003C0E0B /* CAAudioChannelLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56175A2F646B87003C0E0B /* CAAudioChannelLayout.h */; };
|
||||
8B5617E32F646B87003C0E0B /* CAProcess.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56175B2F646B87003C0E0B /* CAProcess.cpp */; };
|
||||
8B5617E42F646B87003C0E0B /* CAHostTimeBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56175C2F646B87003C0E0B /* CAHostTimeBase.cpp */; };
|
||||
8B5617E52F646B87003C0E0B /* CAPersistence.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56175D2F646B87003C0E0B /* CAPersistence.cpp */; };
|
||||
8B5617E62F646B87003C0E0B /* CAAudioBufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56175E2F646B87003C0E0B /* CAAudioBufferList.cpp */; };
|
||||
8B5617E72F646B87003C0E0B /* CAAudioTimeStamp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56175F2F646B87003C0E0B /* CAAudioTimeStamp.cpp */; };
|
||||
8B5617E82F646B87003C0E0B /* CAVectorUnit.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617602F646B87003C0E0B /* CAVectorUnit.h */; };
|
||||
8B5617E92F646B87003C0E0B /* CAByteOrder.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617612F646B87003C0E0B /* CAByteOrder.h */; };
|
||||
8B5617EA2F646B87003C0E0B /* CACFArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617622F646B87003C0E0B /* CACFArray.h */; };
|
||||
8B5617EB2F646B87003C0E0B /* CAAtomicStack.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617632F646B87003C0E0B /* CAAtomicStack.h */; };
|
||||
8B5617EC2F646B87003C0E0B /* CAReferenceCounted.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617642F646B87003C0E0B /* CAReferenceCounted.h */; };
|
||||
8B5617ED2F646B87003C0E0B /* CACFMachPort.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617652F646B87003C0E0B /* CACFMachPort.cpp */; };
|
||||
8B5617EE2F646B87003C0E0B /* CABufferList.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617662F646B87003C0E0B /* CABufferList.cpp */; };
|
||||
8B5617EF2F646B87003C0E0B /* CAMutex.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617672F646B87003C0E0B /* CAMutex.cpp */; };
|
||||
8B5617F02F646B87003C0E0B /* CADebugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617682F646B87003C0E0B /* CADebugger.cpp */; };
|
||||
8B5617F12F646B87003C0E0B /* CABundleLocker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617692F646B87003C0E0B /* CABundleLocker.cpp */; };
|
||||
8B5617F22F646B87003C0E0B /* CAAudioFileFormats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56176A2F646B87003C0E0B /* CAAudioFileFormats.cpp */; };
|
||||
8B5617F32F646B87003C0E0B /* CAMath.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56176B2F646B87003C0E0B /* CAMath.h */; };
|
||||
8B5617F42F646B87003C0E0B /* CACFArray.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56176C2F646B87003C0E0B /* CACFArray.cpp */; };
|
||||
8B5617F52F646B87003C0E0B /* CACFMessagePort.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56176D2F646B87003C0E0B /* CACFMessagePort.h */; };
|
||||
8B5617F62F646B87003C0E0B /* CAAudioValueRange.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56176E2F646B87003C0E0B /* CAAudioValueRange.cpp */; };
|
||||
8B5617F72F646B87003C0E0B /* CAAudioUnit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56176F2F646B87003C0E0B /* CAAudioUnit.cpp */; };
|
||||
8B5617F82F646B87003C0E0B /* AUViewLocalizedStringKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617732F646B87003C0E0B /* AUViewLocalizedStringKeys.h */; };
|
||||
8B5617F92F646B87003C0E0B /* ComponentBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617752F646B87003C0E0B /* ComponentBase.cpp */; };
|
||||
8B5617FA2F646B87003C0E0B /* AUScopeElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617762F646B87003C0E0B /* AUScopeElement.cpp */; };
|
||||
8B5617FB2F646B87003C0E0B /* ComponentBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617772F646B87003C0E0B /* ComponentBase.h */; };
|
||||
8B5617FC2F646B87003C0E0B /* AUBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617782F646B87003C0E0B /* AUBase.cpp */; };
|
||||
8B5617FD2F646B87003C0E0B /* AUInputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617792F646B87003C0E0B /* AUInputElement.h */; };
|
||||
8B5617FE2F646B87003C0E0B /* AUBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56177A2F646B87003C0E0B /* AUBase.h */; };
|
||||
8B5617FF2F646B88003C0E0B /* AUPlugInDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56177B2F646B87003C0E0B /* AUPlugInDispatch.h */; };
|
||||
8B5618002F646B88003C0E0B /* AUDispatch.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56177C2F646B87003C0E0B /* AUDispatch.h */; };
|
||||
8B5618012F646B88003C0E0B /* AUOutputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56177D2F646B87003C0E0B /* AUOutputElement.cpp */; };
|
||||
8B5618032F646B88003C0E0B /* AUPlugInDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56177F2F646B87003C0E0B /* AUPlugInDispatch.cpp */; };
|
||||
8B5618042F646B88003C0E0B /* AUOutputElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617802F646B87003C0E0B /* AUOutputElement.h */; };
|
||||
8B5618052F646B88003C0E0B /* AUDispatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617812F646B87003C0E0B /* AUDispatch.cpp */; };
|
||||
8B5618062F646B88003C0E0B /* AUScopeElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617822F646B87003C0E0B /* AUScopeElement.h */; };
|
||||
8B5618072F646B88003C0E0B /* AUInputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617832F646B87003C0E0B /* AUInputElement.cpp */; };
|
||||
8B5618082F646B88003C0E0B /* AUEffectBase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617852F646B87003C0E0B /* AUEffectBase.cpp */; };
|
||||
8B5618092F646B88003C0E0B /* AUEffectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617862F646B87003C0E0B /* AUEffectBase.h */; };
|
||||
8B56180A2F646B88003C0E0B /* AUTimestampGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617882F646B87003C0E0B /* AUTimestampGenerator.h */; };
|
||||
8B56180B2F646B88003C0E0B /* AUBaseHelper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B5617892F646B87003C0E0B /* AUBaseHelper.cpp */; };
|
||||
8B56180C2F646B88003C0E0B /* AUSilentTimeout.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56178A2F646B87003C0E0B /* AUSilentTimeout.h */; };
|
||||
8B56180D2F646B88003C0E0B /* AUInputFormatConverter.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56178B2F646B87003C0E0B /* AUInputFormatConverter.h */; };
|
||||
8B56180E2F646B88003C0E0B /* AUTimestampGenerator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56178C2F646B87003C0E0B /* AUTimestampGenerator.cpp */; };
|
||||
8B56180F2F646B88003C0E0B /* AUBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8B56178D2F646B87003C0E0B /* AUBuffer.cpp */; };
|
||||
8B5618102F646B88003C0E0B /* AUMIDIDefs.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56178E2F646B87003C0E0B /* AUMIDIDefs.h */; };
|
||||
8B5618112F646B88003C0E0B /* AUBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B56178F2F646B87003C0E0B /* AUBuffer.h */; };
|
||||
8B5618122F646B88003C0E0B /* AUBaseHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 8B5617902F646B87003C0E0B /* AUBaseHelper.h */; };
|
||||
8BA05A6B0720730100365D66 /* WoodenBox.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8BA05A660720730100365D66 /* WoodenBox.cpp */; };
|
||||
8BA05A6E0720730100365D66 /* WoodenBoxVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BA05A690720730100365D66 /* WoodenBoxVersion.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 /* WoodenBox.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BC6025B073B072D006C4272 /* WoodenBox.h */; };
|
||||
8D01CCCA0486CAD60068D4B7 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
8B5617092F646B87003C0E0B /* CAExtAudioFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAExtAudioFile.h; sourceTree = "<group>"; };
|
||||
8B56170A2F646B87003C0E0B /* CACFMachPort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMachPort.h; sourceTree = "<group>"; };
|
||||
8B56170B2F646B87003C0E0B /* CABool.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABool.h; sourceTree = "<group>"; };
|
||||
8B56170C2F646B87003C0E0B /* CAComponent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponent.cpp; sourceTree = "<group>"; };
|
||||
8B56170D2F646B87003C0E0B /* CADebugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugger.h; sourceTree = "<group>"; };
|
||||
8B56170E2F646B87003C0E0B /* CACFNumber.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFNumber.cpp; sourceTree = "<group>"; };
|
||||
8B56170F2F646B87003C0E0B /* CAGuard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAGuard.h; sourceTree = "<group>"; };
|
||||
8B5617102F646B87003C0E0B /* CAAtomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomic.h; sourceTree = "<group>"; };
|
||||
8B5617112F646B87003C0E0B /* CAStreamBasicDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamBasicDescription.h; sourceTree = "<group>"; };
|
||||
8B5617122F646B87003C0E0B /* CACFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFObject.h; sourceTree = "<group>"; };
|
||||
8B5617132F646B87003C0E0B /* CAStreamRangedDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAStreamRangedDescription.h; sourceTree = "<group>"; };
|
||||
8B5617142F646B87003C0E0B /* CATokenMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATokenMap.h; sourceTree = "<group>"; };
|
||||
8B5617152F646B87003C0E0B /* CAComponent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponent.h; sourceTree = "<group>"; };
|
||||
8B5617162F646B87003C0E0B /* CAAudioBufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioBufferList.h; sourceTree = "<group>"; };
|
||||
8B5617172F646B87003C0E0B /* CAAudioUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnit.h; sourceTree = "<group>"; };
|
||||
8B5617182F646B87003C0E0B /* CAAUParameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUParameter.h; sourceTree = "<group>"; };
|
||||
8B5617192F646B87003C0E0B /* CAException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAException.h; sourceTree = "<group>"; };
|
||||
8B56171A2F646B87003C0E0B /* CAAUProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUProcessor.cpp; sourceTree = "<group>"; };
|
||||
8B56171B2F646B87003C0E0B /* CAAUProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUProcessor.h; sourceTree = "<group>"; };
|
||||
8B56171C2F646B87003C0E0B /* CAProcess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAProcess.h; sourceTree = "<group>"; };
|
||||
8B56171D2F646B87003C0E0B /* CACFDictionary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDictionary.h; sourceTree = "<group>"; };
|
||||
8B56171E2F646B87003C0E0B /* CAPThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPThread.h; sourceTree = "<group>"; };
|
||||
8B56171F2F646B87003C0E0B /* CAAUParameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUParameter.cpp; sourceTree = "<group>"; };
|
||||
8B5617202F646B87003C0E0B /* CAAudioTimeStamp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioTimeStamp.h; sourceTree = "<group>"; };
|
||||
8B5617212F646B87003C0E0B /* CAFilePathUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAFilePathUtils.cpp; sourceTree = "<group>"; };
|
||||
8B5617222F646B87003C0E0B /* CAAudioValueRange.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioValueRange.h; sourceTree = "<group>"; };
|
||||
8B5617232F646B87003C0E0B /* CAVectorUnitTypes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnitTypes.h; sourceTree = "<group>"; };
|
||||
8B5617242F646B87003C0E0B /* CAAudioChannelLayoutObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayoutObject.cpp; sourceTree = "<group>"; };
|
||||
8B5617252F646B87003C0E0B /* CAGuard.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAGuard.cpp; sourceTree = "<group>"; };
|
||||
8B5617262F646B87003C0E0B /* CACFNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFNumber.h; sourceTree = "<group>"; };
|
||||
8B5617272F646B87003C0E0B /* CACFDistributedNotification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDistributedNotification.cpp; sourceTree = "<group>"; };
|
||||
8B5617282F646B87003C0E0B /* CACFString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFString.h; sourceTree = "<group>"; };
|
||||
8B5617292F646B87003C0E0B /* CAAUMIDIMapManager.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMapManager.cpp; sourceTree = "<group>"; };
|
||||
8B56172A2F646B87003C0E0B /* CAComponentDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAComponentDescription.cpp; sourceTree = "<group>"; };
|
||||
8B56172B2F646B87003C0E0B /* CAHostTimeBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAHostTimeBase.h; sourceTree = "<group>"; };
|
||||
8B56172C2F646B87003C0E0B /* CADebugMacros.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugMacros.cpp; sourceTree = "<group>"; };
|
||||
8B56172D2F646B87003C0E0B /* CAAudioFileFormats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioFileFormats.h; sourceTree = "<group>"; };
|
||||
8B56172E2F646B87003C0E0B /* CAAUMIDIMapManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMapManager.h; sourceTree = "<group>"; };
|
||||
8B56172F2F646B87003C0E0B /* CACFDictionary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFDictionary.cpp; sourceTree = "<group>"; };
|
||||
8B5617302F646B87003C0E0B /* CAMutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMutex.h; sourceTree = "<group>"; };
|
||||
8B5617312F646B87003C0E0B /* CACFString.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFString.cpp; sourceTree = "<group>"; };
|
||||
8B5617322F646B87003C0E0B /* CASettingsStorage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASettingsStorage.h; sourceTree = "<group>"; };
|
||||
8B5617332F646B87003C0E0B /* CADebugPrintf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugPrintf.h; sourceTree = "<group>"; };
|
||||
8B5617342F646B87003C0E0B /* CAXException.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAXException.cpp; sourceTree = "<group>"; };
|
||||
8B5617352F646B87003C0E0B /* CAAUMIDIMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAUMIDIMap.h; sourceTree = "<group>"; };
|
||||
8B5617362F646B87003C0E0B /* AUParamInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUParamInfo.h; sourceTree = "<group>"; };
|
||||
8B5617372F646B87003C0E0B /* CABitOperations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABitOperations.h; sourceTree = "<group>"; };
|
||||
8B5617382F646B87003C0E0B /* CACFPreferences.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFPreferences.cpp; sourceTree = "<group>"; };
|
||||
8B5617392F646B87003C0E0B /* CABundleLocker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABundleLocker.h; sourceTree = "<group>"; };
|
||||
8B56173A2F646B87003C0E0B /* CAPropertyAddress.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAPropertyAddress.h; sourceTree = "<group>"; };
|
||||
8B56173B2F646B87003C0E0B /* CAXException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAXException.h; sourceTree = "<group>"; };
|
||||
8B56173C2F646B87003C0E0B /* CAAudioChannelLayout.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioChannelLayout.cpp; sourceTree = "<group>"; };
|
||||
8B56173D2F646B87003C0E0B /* CAThreadSafeList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAThreadSafeList.h; sourceTree = "<group>"; };
|
||||
8B56173E2F646B87003C0E0B /* CAAudioUnitOutputCapturer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioUnitOutputCapturer.h; sourceTree = "<group>"; };
|
||||
8B56173F2F646B87003C0E0B /* AUParamInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUParamInfo.cpp; sourceTree = "<group>"; };
|
||||
8B5617402F646B87003C0E0B /* CASharedLibrary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASharedLibrary.cpp; sourceTree = "<group>"; };
|
||||
8B5617412F646B87003C0E0B /* CAAUMIDIMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAUMIDIMap.cpp; sourceTree = "<group>"; };
|
||||
8B5617422F646B87003C0E0B /* CALogMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CALogMacros.h; sourceTree = "<group>"; };
|
||||
8B5617432F646B87003C0E0B /* CACFMessagePort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMessagePort.cpp; sourceTree = "<group>"; };
|
||||
8B5617442F646B87003C0E0B /* CARingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CARingBuffer.h; sourceTree = "<group>"; };
|
||||
8B5617452F646B87003C0E0B /* AUOutputBL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputBL.cpp; sourceTree = "<group>"; };
|
||||
8B5617462F646B87003C0E0B /* CABufferList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CABufferList.h; sourceTree = "<group>"; };
|
||||
8B5617472F646B87003C0E0B /* CASharedLibrary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CASharedLibrary.h; sourceTree = "<group>"; };
|
||||
8B5617482F646B87003C0E0B /* CACFData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFData.h; sourceTree = "<group>"; };
|
||||
8B5617492F646B87003C0E0B /* CAStreamRangedDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamRangedDescription.cpp; sourceTree = "<group>"; };
|
||||
8B56174A2F646B87003C0E0B /* CAPThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPThread.cpp; sourceTree = "<group>"; };
|
||||
8B56174B2F646B87003C0E0B /* CAAutoDisposer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAutoDisposer.h; sourceTree = "<group>"; };
|
||||
8B56174C2F646B87003C0E0B /* CACFPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPreferences.h; sourceTree = "<group>"; };
|
||||
8B56174D2F646B87003C0E0B /* CAVectorUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAVectorUnit.cpp; sourceTree = "<group>"; };
|
||||
8B56174E2F646B87003C0E0B /* CAComponentDescription.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAComponentDescription.h; sourceTree = "<group>"; };
|
||||
8B56174F2F646B87003C0E0B /* CADebugMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CADebugMacros.h; sourceTree = "<group>"; };
|
||||
8B5617502F646B87003C0E0B /* AUOutputBL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputBL.h; sourceTree = "<group>"; };
|
||||
8B5617512F646B87003C0E0B /* CADebugPrintf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugPrintf.cpp; sourceTree = "<group>"; };
|
||||
8B5617522F646B87003C0E0B /* CARingBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CARingBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B5617532F646B87003C0E0B /* CACFPlugIn.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFPlugIn.h; sourceTree = "<group>"; };
|
||||
8B5617542F646B87003C0E0B /* CASettingsStorage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CASettingsStorage.cpp; sourceTree = "<group>"; };
|
||||
8B5617552F646B87003C0E0B /* CAMixMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMixMap.h; sourceTree = "<group>"; };
|
||||
8B5617562F646B87003C0E0B /* CACFDistributedNotification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFDistributedNotification.h; sourceTree = "<group>"; };
|
||||
8B5617572F646B87003C0E0B /* CAFilePathUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAFilePathUtils.h; sourceTree = "<group>"; };
|
||||
8B5617582F646B87003C0E0B /* CATink.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CATink.h; sourceTree = "<group>"; };
|
||||
8B5617592F646B87003C0E0B /* CAStreamBasicDescription.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAStreamBasicDescription.cpp; sourceTree = "<group>"; };
|
||||
8B56175A2F646B87003C0E0B /* CAAudioChannelLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAudioChannelLayout.h; sourceTree = "<group>"; };
|
||||
8B56175B2F646B87003C0E0B /* CAProcess.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAProcess.cpp; sourceTree = "<group>"; };
|
||||
8B56175C2F646B87003C0E0B /* CAHostTimeBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAHostTimeBase.cpp; sourceTree = "<group>"; };
|
||||
8B56175D2F646B87003C0E0B /* CAPersistence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAPersistence.cpp; sourceTree = "<group>"; };
|
||||
8B56175E2F646B87003C0E0B /* CAAudioBufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioBufferList.cpp; sourceTree = "<group>"; };
|
||||
8B56175F2F646B87003C0E0B /* CAAudioTimeStamp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioTimeStamp.cpp; sourceTree = "<group>"; };
|
||||
8B5617602F646B87003C0E0B /* CAVectorUnit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAVectorUnit.h; sourceTree = "<group>"; };
|
||||
8B5617612F646B87003C0E0B /* CAByteOrder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAByteOrder.h; sourceTree = "<group>"; };
|
||||
8B5617622F646B87003C0E0B /* CACFArray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFArray.h; sourceTree = "<group>"; };
|
||||
8B5617632F646B87003C0E0B /* CAAtomicStack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAAtomicStack.h; sourceTree = "<group>"; };
|
||||
8B5617642F646B87003C0E0B /* CAReferenceCounted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAReferenceCounted.h; sourceTree = "<group>"; };
|
||||
8B5617652F646B87003C0E0B /* CACFMachPort.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFMachPort.cpp; sourceTree = "<group>"; };
|
||||
8B5617662F646B87003C0E0B /* CABufferList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABufferList.cpp; sourceTree = "<group>"; };
|
||||
8B5617672F646B87003C0E0B /* CAMutex.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAMutex.cpp; sourceTree = "<group>"; };
|
||||
8B5617682F646B87003C0E0B /* CADebugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CADebugger.cpp; sourceTree = "<group>"; };
|
||||
8B5617692F646B87003C0E0B /* CABundleLocker.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CABundleLocker.cpp; sourceTree = "<group>"; };
|
||||
8B56176A2F646B87003C0E0B /* CAAudioFileFormats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioFileFormats.cpp; sourceTree = "<group>"; };
|
||||
8B56176B2F646B87003C0E0B /* CAMath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAMath.h; sourceTree = "<group>"; };
|
||||
8B56176C2F646B87003C0E0B /* CACFArray.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CACFArray.cpp; sourceTree = "<group>"; };
|
||||
8B56176D2F646B87003C0E0B /* CACFMessagePort.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CACFMessagePort.h; sourceTree = "<group>"; };
|
||||
8B56176E2F646B87003C0E0B /* CAAudioValueRange.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioValueRange.cpp; sourceTree = "<group>"; };
|
||||
8B56176F2F646B87003C0E0B /* CAAudioUnit.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CAAudioUnit.cpp; sourceTree = "<group>"; };
|
||||
8B5617732F646B87003C0E0B /* AUViewLocalizedStringKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUViewLocalizedStringKeys.h; sourceTree = "<group>"; };
|
||||
8B5617752F646B87003C0E0B /* ComponentBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ComponentBase.cpp; sourceTree = "<group>"; };
|
||||
8B5617762F646B87003C0E0B /* AUScopeElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUScopeElement.cpp; sourceTree = "<group>"; };
|
||||
8B5617772F646B87003C0E0B /* ComponentBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComponentBase.h; sourceTree = "<group>"; };
|
||||
8B5617782F646B87003C0E0B /* AUBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBase.cpp; sourceTree = "<group>"; };
|
||||
8B5617792F646B87003C0E0B /* AUInputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputElement.h; sourceTree = "<group>"; };
|
||||
8B56177A2F646B87003C0E0B /* AUBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBase.h; sourceTree = "<group>"; };
|
||||
8B56177B2F646B87003C0E0B /* AUPlugInDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUPlugInDispatch.h; sourceTree = "<group>"; };
|
||||
8B56177C2F646B87003C0E0B /* AUDispatch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUDispatch.h; sourceTree = "<group>"; };
|
||||
8B56177D2F646B87003C0E0B /* AUOutputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUOutputElement.cpp; sourceTree = "<group>"; };
|
||||
8B56177E2F646B87003C0E0B /* AUResources.r */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.rez; path = AUResources.r; sourceTree = "<group>"; };
|
||||
8B56177F2F646B87003C0E0B /* AUPlugInDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUPlugInDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B5617802F646B87003C0E0B /* AUOutputElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUOutputElement.h; sourceTree = "<group>"; };
|
||||
8B5617812F646B87003C0E0B /* AUDispatch.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUDispatch.cpp; sourceTree = "<group>"; };
|
||||
8B5617822F646B87003C0E0B /* AUScopeElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUScopeElement.h; sourceTree = "<group>"; };
|
||||
8B5617832F646B87003C0E0B /* AUInputElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUInputElement.cpp; sourceTree = "<group>"; };
|
||||
8B5617852F646B87003C0E0B /* AUEffectBase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUEffectBase.cpp; sourceTree = "<group>"; };
|
||||
8B5617862F646B87003C0E0B /* AUEffectBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUEffectBase.h; sourceTree = "<group>"; };
|
||||
8B5617882F646B87003C0E0B /* AUTimestampGenerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUTimestampGenerator.h; sourceTree = "<group>"; };
|
||||
8B5617892F646B87003C0E0B /* AUBaseHelper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBaseHelper.cpp; sourceTree = "<group>"; };
|
||||
8B56178A2F646B87003C0E0B /* AUSilentTimeout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUSilentTimeout.h; sourceTree = "<group>"; };
|
||||
8B56178B2F646B87003C0E0B /* AUInputFormatConverter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUInputFormatConverter.h; sourceTree = "<group>"; };
|
||||
8B56178C2F646B87003C0E0B /* AUTimestampGenerator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUTimestampGenerator.cpp; sourceTree = "<group>"; };
|
||||
8B56178D2F646B87003C0E0B /* AUBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AUBuffer.cpp; sourceTree = "<group>"; };
|
||||
8B56178E2F646B87003C0E0B /* AUMIDIDefs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUMIDIDefs.h; sourceTree = "<group>"; };
|
||||
8B56178F2F646B87003C0E0B /* AUBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBuffer.h; sourceTree = "<group>"; };
|
||||
8B5617902F646B87003C0E0B /* AUBaseHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AUBaseHelper.h; sourceTree = "<group>"; };
|
||||
8B5618132F646D71003C0E0B /* 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 /* WoodenBox.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = WoodenBox.cpp; sourceTree = "<group>"; };
|
||||
8BA05A670720730100365D66 /* WoodenBox.exp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.exports; path = WoodenBox.exp; sourceTree = "<group>"; };
|
||||
8BA05A680720730100365D66 /* WoodenBox.r */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.rez; path = WoodenBox.r; sourceTree = "<group>"; };
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WoodenBoxVersion.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 /* WoodenBox.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WoodenBox.h; sourceTree = "<group>"; };
|
||||
8D01CCD10486CAD60068D4B7 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
|
||||
8D01CCD20486CAD60068D4B7 /* WoodenBox.component */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WoodenBox.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 /* WoodenBox */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
08FB77ADFE841716C02AAC07 /* Source */,
|
||||
089C167CFE841241C02AAC07 /* Resources */,
|
||||
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */,
|
||||
);
|
||||
name = WoodenBox;
|
||||
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 = (
|
||||
8B5617072F646B87003C0E0B /* CA_SDK */,
|
||||
8BA05A56072072A900365D66 /* AU Source */,
|
||||
);
|
||||
name = Source;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
19C28FB4FE9D528D11CA2CBB /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8D01CCD20486CAD60068D4B7 /* WoodenBox.component */,
|
||||
);
|
||||
name = Products;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617072F646B87003C0E0B /* CA_SDK */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617082F646B87003C0E0B /* PublicUtility */,
|
||||
8B5617702F646B87003C0E0B /* AudioUnits */,
|
||||
);
|
||||
name = CA_SDK;
|
||||
path = ../../../../CA_SDK;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617082F646B87003C0E0B /* PublicUtility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617092F646B87003C0E0B /* CAExtAudioFile.h */,
|
||||
8B56170A2F646B87003C0E0B /* CACFMachPort.h */,
|
||||
8B56170B2F646B87003C0E0B /* CABool.h */,
|
||||
8B56170C2F646B87003C0E0B /* CAComponent.cpp */,
|
||||
8B56170D2F646B87003C0E0B /* CADebugger.h */,
|
||||
8B56170E2F646B87003C0E0B /* CACFNumber.cpp */,
|
||||
8B56170F2F646B87003C0E0B /* CAGuard.h */,
|
||||
8B5617102F646B87003C0E0B /* CAAtomic.h */,
|
||||
8B5617112F646B87003C0E0B /* CAStreamBasicDescription.h */,
|
||||
8B5617122F646B87003C0E0B /* CACFObject.h */,
|
||||
8B5617132F646B87003C0E0B /* CAStreamRangedDescription.h */,
|
||||
8B5617142F646B87003C0E0B /* CATokenMap.h */,
|
||||
8B5617152F646B87003C0E0B /* CAComponent.h */,
|
||||
8B5617162F646B87003C0E0B /* CAAudioBufferList.h */,
|
||||
8B5617172F646B87003C0E0B /* CAAudioUnit.h */,
|
||||
8B5617182F646B87003C0E0B /* CAAUParameter.h */,
|
||||
8B5617192F646B87003C0E0B /* CAException.h */,
|
||||
8B56171A2F646B87003C0E0B /* CAAUProcessor.cpp */,
|
||||
8B56171B2F646B87003C0E0B /* CAAUProcessor.h */,
|
||||
8B56171C2F646B87003C0E0B /* CAProcess.h */,
|
||||
8B56171D2F646B87003C0E0B /* CACFDictionary.h */,
|
||||
8B56171E2F646B87003C0E0B /* CAPThread.h */,
|
||||
8B56171F2F646B87003C0E0B /* CAAUParameter.cpp */,
|
||||
8B5617202F646B87003C0E0B /* CAAudioTimeStamp.h */,
|
||||
8B5617212F646B87003C0E0B /* CAFilePathUtils.cpp */,
|
||||
8B5617222F646B87003C0E0B /* CAAudioValueRange.h */,
|
||||
8B5617232F646B87003C0E0B /* CAVectorUnitTypes.h */,
|
||||
8B5617242F646B87003C0E0B /* CAAudioChannelLayoutObject.cpp */,
|
||||
8B5617252F646B87003C0E0B /* CAGuard.cpp */,
|
||||
8B5617262F646B87003C0E0B /* CACFNumber.h */,
|
||||
8B5617272F646B87003C0E0B /* CACFDistributedNotification.cpp */,
|
||||
8B5617282F646B87003C0E0B /* CACFString.h */,
|
||||
8B5617292F646B87003C0E0B /* CAAUMIDIMapManager.cpp */,
|
||||
8B56172A2F646B87003C0E0B /* CAComponentDescription.cpp */,
|
||||
8B56172B2F646B87003C0E0B /* CAHostTimeBase.h */,
|
||||
8B56172C2F646B87003C0E0B /* CADebugMacros.cpp */,
|
||||
8B56172D2F646B87003C0E0B /* CAAudioFileFormats.h */,
|
||||
8B56172E2F646B87003C0E0B /* CAAUMIDIMapManager.h */,
|
||||
8B56172F2F646B87003C0E0B /* CACFDictionary.cpp */,
|
||||
8B5617302F646B87003C0E0B /* CAMutex.h */,
|
||||
8B5617312F646B87003C0E0B /* CACFString.cpp */,
|
||||
8B5617322F646B87003C0E0B /* CASettingsStorage.h */,
|
||||
8B5617332F646B87003C0E0B /* CADebugPrintf.h */,
|
||||
8B5617342F646B87003C0E0B /* CAXException.cpp */,
|
||||
8B5617352F646B87003C0E0B /* CAAUMIDIMap.h */,
|
||||
8B5617362F646B87003C0E0B /* AUParamInfo.h */,
|
||||
8B5617372F646B87003C0E0B /* CABitOperations.h */,
|
||||
8B5617382F646B87003C0E0B /* CACFPreferences.cpp */,
|
||||
8B5617392F646B87003C0E0B /* CABundleLocker.h */,
|
||||
8B56173A2F646B87003C0E0B /* CAPropertyAddress.h */,
|
||||
8B56173B2F646B87003C0E0B /* CAXException.h */,
|
||||
8B56173C2F646B87003C0E0B /* CAAudioChannelLayout.cpp */,
|
||||
8B56173D2F646B87003C0E0B /* CAThreadSafeList.h */,
|
||||
8B56173E2F646B87003C0E0B /* CAAudioUnitOutputCapturer.h */,
|
||||
8B56173F2F646B87003C0E0B /* AUParamInfo.cpp */,
|
||||
8B5617402F646B87003C0E0B /* CASharedLibrary.cpp */,
|
||||
8B5617412F646B87003C0E0B /* CAAUMIDIMap.cpp */,
|
||||
8B5617422F646B87003C0E0B /* CALogMacros.h */,
|
||||
8B5617432F646B87003C0E0B /* CACFMessagePort.cpp */,
|
||||
8B5617442F646B87003C0E0B /* CARingBuffer.h */,
|
||||
8B5617452F646B87003C0E0B /* AUOutputBL.cpp */,
|
||||
8B5617462F646B87003C0E0B /* CABufferList.h */,
|
||||
8B5617472F646B87003C0E0B /* CASharedLibrary.h */,
|
||||
8B5617482F646B87003C0E0B /* CACFData.h */,
|
||||
8B5617492F646B87003C0E0B /* CAStreamRangedDescription.cpp */,
|
||||
8B56174A2F646B87003C0E0B /* CAPThread.cpp */,
|
||||
8B56174B2F646B87003C0E0B /* CAAutoDisposer.h */,
|
||||
8B56174C2F646B87003C0E0B /* CACFPreferences.h */,
|
||||
8B56174D2F646B87003C0E0B /* CAVectorUnit.cpp */,
|
||||
8B56174E2F646B87003C0E0B /* CAComponentDescription.h */,
|
||||
8B56174F2F646B87003C0E0B /* CADebugMacros.h */,
|
||||
8B5617502F646B87003C0E0B /* AUOutputBL.h */,
|
||||
8B5617512F646B87003C0E0B /* CADebugPrintf.cpp */,
|
||||
8B5617522F646B87003C0E0B /* CARingBuffer.cpp */,
|
||||
8B5617532F646B87003C0E0B /* CACFPlugIn.h */,
|
||||
8B5617542F646B87003C0E0B /* CASettingsStorage.cpp */,
|
||||
8B5617552F646B87003C0E0B /* CAMixMap.h */,
|
||||
8B5617562F646B87003C0E0B /* CACFDistributedNotification.h */,
|
||||
8B5617572F646B87003C0E0B /* CAFilePathUtils.h */,
|
||||
8B5617582F646B87003C0E0B /* CATink.h */,
|
||||
8B5617592F646B87003C0E0B /* CAStreamBasicDescription.cpp */,
|
||||
8B56175A2F646B87003C0E0B /* CAAudioChannelLayout.h */,
|
||||
8B56175B2F646B87003C0E0B /* CAProcess.cpp */,
|
||||
8B56175C2F646B87003C0E0B /* CAHostTimeBase.cpp */,
|
||||
8B56175D2F646B87003C0E0B /* CAPersistence.cpp */,
|
||||
8B56175E2F646B87003C0E0B /* CAAudioBufferList.cpp */,
|
||||
8B56175F2F646B87003C0E0B /* CAAudioTimeStamp.cpp */,
|
||||
8B5617602F646B87003C0E0B /* CAVectorUnit.h */,
|
||||
8B5617612F646B87003C0E0B /* CAByteOrder.h */,
|
||||
8B5617622F646B87003C0E0B /* CACFArray.h */,
|
||||
8B5617632F646B87003C0E0B /* CAAtomicStack.h */,
|
||||
8B5617642F646B87003C0E0B /* CAReferenceCounted.h */,
|
||||
8B5617652F646B87003C0E0B /* CACFMachPort.cpp */,
|
||||
8B5617662F646B87003C0E0B /* CABufferList.cpp */,
|
||||
8B5617672F646B87003C0E0B /* CAMutex.cpp */,
|
||||
8B5617682F646B87003C0E0B /* CADebugger.cpp */,
|
||||
8B5617692F646B87003C0E0B /* CABundleLocker.cpp */,
|
||||
8B56176A2F646B87003C0E0B /* CAAudioFileFormats.cpp */,
|
||||
8B56176B2F646B87003C0E0B /* CAMath.h */,
|
||||
8B56176C2F646B87003C0E0B /* CACFArray.cpp */,
|
||||
8B56176D2F646B87003C0E0B /* CACFMessagePort.h */,
|
||||
8B56176E2F646B87003C0E0B /* CAAudioValueRange.cpp */,
|
||||
8B56176F2F646B87003C0E0B /* CAAudioUnit.cpp */,
|
||||
);
|
||||
path = PublicUtility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617702F646B87003C0E0B /* AudioUnits */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617712F646B87003C0E0B /* AUPublic */,
|
||||
);
|
||||
path = AudioUnits;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617712F646B87003C0E0B /* AUPublic */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617722F646B87003C0E0B /* AUViewBase */,
|
||||
8B5617742F646B87003C0E0B /* AUBase */,
|
||||
8B5617842F646B87003C0E0B /* OtherBases */,
|
||||
8B5617872F646B87003C0E0B /* Utility */,
|
||||
);
|
||||
path = AUPublic;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617722F646B87003C0E0B /* AUViewBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617732F646B87003C0E0B /* AUViewLocalizedStringKeys.h */,
|
||||
);
|
||||
path = AUViewBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617742F646B87003C0E0B /* AUBase */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617752F646B87003C0E0B /* ComponentBase.cpp */,
|
||||
8B5617762F646B87003C0E0B /* AUScopeElement.cpp */,
|
||||
8B5617772F646B87003C0E0B /* ComponentBase.h */,
|
||||
8B5617782F646B87003C0E0B /* AUBase.cpp */,
|
||||
8B5617792F646B87003C0E0B /* AUInputElement.h */,
|
||||
8B56177A2F646B87003C0E0B /* AUBase.h */,
|
||||
8B56177B2F646B87003C0E0B /* AUPlugInDispatch.h */,
|
||||
8B56177C2F646B87003C0E0B /* AUDispatch.h */,
|
||||
8B56177D2F646B87003C0E0B /* AUOutputElement.cpp */,
|
||||
8B56177E2F646B87003C0E0B /* AUResources.r */,
|
||||
8B56177F2F646B87003C0E0B /* AUPlugInDispatch.cpp */,
|
||||
8B5617802F646B87003C0E0B /* AUOutputElement.h */,
|
||||
8B5617812F646B87003C0E0B /* AUDispatch.cpp */,
|
||||
8B5617822F646B87003C0E0B /* AUScopeElement.h */,
|
||||
8B5617832F646B87003C0E0B /* AUInputElement.cpp */,
|
||||
);
|
||||
path = AUBase;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617842F646B87003C0E0B /* OtherBases */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617852F646B87003C0E0B /* AUEffectBase.cpp */,
|
||||
8B5617862F646B87003C0E0B /* AUEffectBase.h */,
|
||||
);
|
||||
path = OtherBases;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8B5617872F646B87003C0E0B /* Utility */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8B5617882F646B87003C0E0B /* AUTimestampGenerator.h */,
|
||||
8B5617892F646B87003C0E0B /* AUBaseHelper.cpp */,
|
||||
8B56178A2F646B87003C0E0B /* AUSilentTimeout.h */,
|
||||
8B56178B2F646B87003C0E0B /* AUInputFormatConverter.h */,
|
||||
8B56178C2F646B87003C0E0B /* AUTimestampGenerator.cpp */,
|
||||
8B56178D2F646B87003C0E0B /* AUBuffer.cpp */,
|
||||
8B56178E2F646B87003C0E0B /* AUMIDIDefs.h */,
|
||||
8B56178F2F646B87003C0E0B /* AUBuffer.h */,
|
||||
8B5617902F646B87003C0E0B /* AUBaseHelper.h */,
|
||||
);
|
||||
path = Utility;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
8BA05A56072072A900365D66 /* AU Source */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8BC6025B073B072D006C4272 /* WoodenBox.h */,
|
||||
8BA05A660720730100365D66 /* WoodenBox.cpp */,
|
||||
8BA05A670720730100365D66 /* WoodenBox.exp */,
|
||||
8BA05A680720730100365D66 /* WoodenBox.r */,
|
||||
8BA05A690720730100365D66 /* WoodenBoxVersion.h */,
|
||||
);
|
||||
name = "AU Source";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXHeadersBuildPhase section */
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */ = {
|
||||
isa = PBXHeadersBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
8B5617C12F646B87003C0E0B /* CABundleLocker.h in Headers */,
|
||||
8B5617E22F646B87003C0E0B /* CAAudioChannelLayout.h in Headers */,
|
||||
8B5617D82F646B87003C0E0B /* AUOutputBL.h in Headers */,
|
||||
8B5617B32F646B87003C0E0B /* CAHostTimeBase.h in Headers */,
|
||||
8B5617FB2F646B87003C0E0B /* ComponentBase.h in Headers */,
|
||||
8B5617EB2F646B87003C0E0B /* CAAtomicStack.h in Headers */,
|
||||
8B5617A82F646B87003C0E0B /* CAAudioTimeStamp.h in Headers */,
|
||||
8B5617C52F646B87003C0E0B /* CAThreadSafeList.h in Headers */,
|
||||
8B5617A02F646B87003C0E0B /* CAAUParameter.h in Headers */,
|
||||
8B5618122F646B88003C0E0B /* AUBaseHelper.h in Headers */,
|
||||
8B56180A2F646B88003C0E0B /* AUTimestampGenerator.h in Headers */,
|
||||
8B5617BB2F646B87003C0E0B /* CADebugPrintf.h in Headers */,
|
||||
8B5617F52F646B87003C0E0B /* CACFMessagePort.h in Headers */,
|
||||
8B5617A32F646B87003C0E0B /* CAAUProcessor.h in Headers */,
|
||||
8B56179F2F646B87003C0E0B /* CAAudioUnit.h in Headers */,
|
||||
8B5617F82F646B87003C0E0B /* AUViewLocalizedStringKeys.h in Headers */,
|
||||
8B5617DE2F646B87003C0E0B /* CACFDistributedNotification.h in Headers */,
|
||||
8B56179D2F646B87003C0E0B /* CAComponent.h in Headers */,
|
||||
8B5617AB2F646B87003C0E0B /* CAVectorUnitTypes.h in Headers */,
|
||||
8BA05A6E0720730100365D66 /* WoodenBoxVersion.h in Headers */,
|
||||
8B5617DF2F646B87003C0E0B /* CAFilePathUtils.h in Headers */,
|
||||
8B5617A12F646B87003C0E0B /* CAException.h in Headers */,
|
||||
8B5617982F646B87003C0E0B /* CAAtomic.h in Headers */,
|
||||
8B5617972F646B87003C0E0B /* CAGuard.h in Headers */,
|
||||
8B5617FD2F646B87003C0E0B /* AUInputElement.h in Headers */,
|
||||
8B5617D42F646B87003C0E0B /* CACFPreferences.h in Headers */,
|
||||
8B5617E92F646B87003C0E0B /* CAByteOrder.h in Headers */,
|
||||
8B5617CC2F646B87003C0E0B /* CARingBuffer.h in Headers */,
|
||||
8B5617932F646B87003C0E0B /* CABool.h in Headers */,
|
||||
8B5617B82F646B87003C0E0B /* CAMutex.h in Headers */,
|
||||
8B5617FE2F646B87003C0E0B /* AUBase.h in Headers */,
|
||||
8BC6025C073B072D006C4272 /* WoodenBox.h in Headers */,
|
||||
8B5617B02F646B87003C0E0B /* CACFString.h in Headers */,
|
||||
8B5617CF2F646B87003C0E0B /* CASharedLibrary.h in Headers */,
|
||||
8B56179C2F646B87003C0E0B /* CATokenMap.h in Headers */,
|
||||
8B5617912F646B87003C0E0B /* CAExtAudioFile.h in Headers */,
|
||||
8B5617A62F646B87003C0E0B /* CAPThread.h in Headers */,
|
||||
8B5617C22F646B87003C0E0B /* CAPropertyAddress.h in Headers */,
|
||||
8B5617EC2F646B87003C0E0B /* CAReferenceCounted.h in Headers */,
|
||||
8B5618112F646B88003C0E0B /* AUBuffer.h in Headers */,
|
||||
8B5617F32F646B87003C0E0B /* CAMath.h in Headers */,
|
||||
8B5617D32F646B87003C0E0B /* CAAutoDisposer.h in Headers */,
|
||||
8B56179A2F646B87003C0E0B /* CACFObject.h in Headers */,
|
||||
8B5617BA2F646B87003C0E0B /* CASettingsStorage.h in Headers */,
|
||||
8B5617C32F646B87003C0E0B /* CAXException.h in Headers */,
|
||||
8B5617E02F646B87003C0E0B /* CATink.h in Headers */,
|
||||
8B56180D2F646B88003C0E0B /* AUInputFormatConverter.h in Headers */,
|
||||
8B5617E82F646B87003C0E0B /* CAVectorUnit.h in Headers */,
|
||||
8B5617A42F646B87003C0E0B /* CAProcess.h in Headers */,
|
||||
8B5617AA2F646B87003C0E0B /* CAAudioValueRange.h in Headers */,
|
||||
8B5617BF2F646B87003C0E0B /* CABitOperations.h in Headers */,
|
||||
8B5617B52F646B87003C0E0B /* CAAudioFileFormats.h in Headers */,
|
||||
8B5617AE2F646B87003C0E0B /* CACFNumber.h in Headers */,
|
||||
8B5617C62F646B87003C0E0B /* CAAudioUnitOutputCapturer.h in Headers */,
|
||||
8B5617D72F646B87003C0E0B /* CADebugMacros.h in Headers */,
|
||||
8B5618102F646B88003C0E0B /* AUMIDIDefs.h in Headers */,
|
||||
8B5617D02F646B87003C0E0B /* CACFData.h in Headers */,
|
||||
8B5617992F646B87003C0E0B /* CAStreamBasicDescription.h in Headers */,
|
||||
8B5617FF2F646B88003C0E0B /* AUPlugInDispatch.h in Headers */,
|
||||
8B56179B2F646B87003C0E0B /* CAStreamRangedDescription.h in Headers */,
|
||||
8B5617DB2F646B87003C0E0B /* CACFPlugIn.h in Headers */,
|
||||
8B56179E2F646B87003C0E0B /* CAAudioBufferList.h in Headers */,
|
||||
8B5617B62F646B87003C0E0B /* CAAUMIDIMapManager.h in Headers */,
|
||||
8B5618092F646B88003C0E0B /* AUEffectBase.h in Headers */,
|
||||
8B5617A52F646B87003C0E0B /* CACFDictionary.h in Headers */,
|
||||
8B5618062F646B88003C0E0B /* AUScopeElement.h in Headers */,
|
||||
8B5617D62F646B87003C0E0B /* CAComponentDescription.h in Headers */,
|
||||
8B56180C2F646B88003C0E0B /* AUSilentTimeout.h in Headers */,
|
||||
8B5617CE2F646B87003C0E0B /* CABufferList.h in Headers */,
|
||||
8B5618002F646B88003C0E0B /* AUDispatch.h in Headers */,
|
||||
8B5618042F646B88003C0E0B /* AUOutputElement.h in Headers */,
|
||||
8B5617CA2F646B87003C0E0B /* CALogMacros.h in Headers */,
|
||||
8B5617BE2F646B87003C0E0B /* AUParamInfo.h in Headers */,
|
||||
8B5617DD2F646B87003C0E0B /* CAMixMap.h in Headers */,
|
||||
8B5617EA2F646B87003C0E0B /* CACFArray.h in Headers */,
|
||||
8B5617922F646B87003C0E0B /* CACFMachPort.h in Headers */,
|
||||
8B5617BD2F646B87003C0E0B /* CAAUMIDIMap.h in Headers */,
|
||||
8B5617952F646B87003C0E0B /* CADebugger.h in Headers */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXHeadersBuildPhase section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */ = {
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 3E4BA243089833B7007656EC /* Build configuration list for PBXNativeTarget "WoodenBox" */;
|
||||
buildPhases = (
|
||||
8D01CCC70486CAD60068D4B7 /* Headers */,
|
||||
8D01CCC90486CAD60068D4B7 /* Resources */,
|
||||
8D01CCCB0486CAD60068D4B7 /* Sources */,
|
||||
8D01CCCD0486CAD60068D4B7 /* Frameworks */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
dependencies = (
|
||||
);
|
||||
name = WoodenBox;
|
||||
productInstallPath = "$(HOME)/Library/Bundles";
|
||||
productName = WoodenBox;
|
||||
productReference = 8D01CCD20486CAD60068D4B7 /* WoodenBox.component */;
|
||||
productType = "com.apple.product-type.bundle";
|
||||
};
|
||||
/* End PBXNativeTarget section */
|
||||
|
||||
/* Begin PBXProject section */
|
||||
089C1669FE841209C02AAC07 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1420;
|
||||
};
|
||||
buildConfigurationList = 3E4BA247089833B7007656EC /* Build configuration list for PBXProject "WoodenBox" */;
|
||||
compatibilityVersion = "Xcode 3.1";
|
||||
developmentRegion = en;
|
||||
hasScannedForEncodings = 1;
|
||||
knownRegions = (
|
||||
ja,
|
||||
en,
|
||||
de,
|
||||
Base,
|
||||
fr,
|
||||
);
|
||||
mainGroup = 089C166AFE841209C02AAC07 /* WoodenBox */;
|
||||
projectDirPath = "";
|
||||
projectRoot = "";
|
||||
targets = (
|
||||
8D01CCC60486CAD60068D4B7 /* WoodenBox */,
|
||||
);
|
||||
};
|
||||
/* 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 = (
|
||||
8B5617CD2F646B87003C0E0B /* AUOutputBL.cpp in Sources */,
|
||||
8B5617F22F646B87003C0E0B /* CAAudioFileFormats.cpp in Sources */,
|
||||
8B5617E42F646B87003C0E0B /* CAHostTimeBase.cpp in Sources */,
|
||||
8B5617BC2F646B87003C0E0B /* CAXException.cpp in Sources */,
|
||||
8B5617E62F646B87003C0E0B /* CAAudioBufferList.cpp in Sources */,
|
||||
8B5617A92F646B87003C0E0B /* CAFilePathUtils.cpp in Sources */,
|
||||
8B5617A72F646B87003C0E0B /* CAAUParameter.cpp in Sources */,
|
||||
8B5617C92F646B87003C0E0B /* CAAUMIDIMap.cpp in Sources */,
|
||||
8B5617F62F646B87003C0E0B /* CAAudioValueRange.cpp in Sources */,
|
||||
8B5618052F646B88003C0E0B /* AUDispatch.cpp in Sources */,
|
||||
8B5617C02F646B87003C0E0B /* CACFPreferences.cpp in Sources */,
|
||||
8B5618032F646B88003C0E0B /* AUPlugInDispatch.cpp in Sources */,
|
||||
8B5617A22F646B87003C0E0B /* CAAUProcessor.cpp in Sources */,
|
||||
8B5617B72F646B87003C0E0B /* CACFDictionary.cpp in Sources */,
|
||||
8B56180B2F646B88003C0E0B /* AUBaseHelper.cpp in Sources */,
|
||||
8B5617F02F646B87003C0E0B /* CADebugger.cpp in Sources */,
|
||||
8B5617C42F646B87003C0E0B /* CAAudioChannelLayout.cpp in Sources */,
|
||||
8B5617C72F646B87003C0E0B /* AUParamInfo.cpp in Sources */,
|
||||
8B5617E52F646B87003C0E0B /* CAPersistence.cpp in Sources */,
|
||||
8B5617D92F646B87003C0E0B /* CADebugPrintf.cpp in Sources */,
|
||||
8B56180E2F646B88003C0E0B /* AUTimestampGenerator.cpp in Sources */,
|
||||
8B5617E12F646B87003C0E0B /* CAStreamBasicDescription.cpp in Sources */,
|
||||
8B5617B12F646B87003C0E0B /* CAAUMIDIMapManager.cpp in Sources */,
|
||||
8B5617DC2F646B87003C0E0B /* CASettingsStorage.cpp in Sources */,
|
||||
8B5618012F646B88003C0E0B /* AUOutputElement.cpp in Sources */,
|
||||
8B5617AD2F646B87003C0E0B /* CAGuard.cpp in Sources */,
|
||||
8BA05A6B0720730100365D66 /* WoodenBox.cpp in Sources */,
|
||||
8B5617EF2F646B87003C0E0B /* CAMutex.cpp in Sources */,
|
||||
8B5618082F646B88003C0E0B /* AUEffectBase.cpp in Sources */,
|
||||
8B5617ED2F646B87003C0E0B /* CACFMachPort.cpp in Sources */,
|
||||
8B5617FC2F646B87003C0E0B /* AUBase.cpp in Sources */,
|
||||
8B5617C82F646B87003C0E0B /* CASharedLibrary.cpp in Sources */,
|
||||
8B5617AF2F646B87003C0E0B /* CACFDistributedNotification.cpp in Sources */,
|
||||
8B5617B22F646B87003C0E0B /* CAComponentDescription.cpp in Sources */,
|
||||
8B5617B92F646B87003C0E0B /* CACFString.cpp in Sources */,
|
||||
8B5617F92F646B87003C0E0B /* ComponentBase.cpp in Sources */,
|
||||
8B5617DA2F646B87003C0E0B /* CARingBuffer.cpp in Sources */,
|
||||
8B5617FA2F646B87003C0E0B /* AUScopeElement.cpp in Sources */,
|
||||
8B5617F72F646B87003C0E0B /* CAAudioUnit.cpp in Sources */,
|
||||
8B5617F42F646B87003C0E0B /* CACFArray.cpp in Sources */,
|
||||
8B5617F12F646B87003C0E0B /* CABundleLocker.cpp in Sources */,
|
||||
8B5617E32F646B87003C0E0B /* CAProcess.cpp in Sources */,
|
||||
8B5617D12F646B87003C0E0B /* CAStreamRangedDescription.cpp in Sources */,
|
||||
8B5617D22F646B87003C0E0B /* CAPThread.cpp in Sources */,
|
||||
8B5617942F646B87003C0E0B /* CAComponent.cpp in Sources */,
|
||||
8B5617AC2F646B87003C0E0B /* CAAudioChannelLayoutObject.cpp in Sources */,
|
||||
8B5617E72F646B87003C0E0B /* CAAudioTimeStamp.cpp in Sources */,
|
||||
8B5617EE2F646B87003C0E0B /* CABufferList.cpp in Sources */,
|
||||
8B5617CB2F646B87003C0E0B /* CACFMessagePort.cpp in Sources */,
|
||||
8B5617D52F646B87003C0E0B /* CAVectorUnit.cpp in Sources */,
|
||||
8B5618072F646B88003C0E0B /* AUInputElement.cpp in Sources */,
|
||||
8B56180F2F646B88003C0E0B /* AUBuffer.cpp in Sources */,
|
||||
8B5617B42F646B87003C0E0B /* CADebugMacros.cpp in Sources */,
|
||||
8B5617962F646B87003C0E0B /* CACFNumber.cpp in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXSourcesBuildPhase section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
8B5618132F646D71003C0E0B /* 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 = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = WoodenBox.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 = WoodenBox;
|
||||
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 = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Developer ID Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = "";
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 9BMAKYA76W;
|
||||
EXPORTED_SYMBOLS_FILE = WoodenBox.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 = WoodenBox;
|
||||
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;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
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;
|
||||
DEAD_CODE_STRIPPING = 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 "WoodenBox" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA244089833B7007656EC /* Debug */,
|
||||
3E4BA245089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
3E4BA247089833B7007656EC /* Build configuration list for PBXProject "WoodenBox" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
3E4BA248089833B7007656EC /* Debug */,
|
||||
3E4BA249089833B7007656EC /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Debug;
|
||||
};
|
||||
/* End XCConfigurationList section */
|
||||
};
|
||||
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue