Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
No results found
Show changes
Showing
with 3205 additions and 0 deletions
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
0BA41BAD1EE6E0ED00B74667 /* trainingData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */; };
0BA41BAE1EE6E10A00B74667 /* jsoncpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */; };
0BE2E7371EE56F4F00722712 /* rapidGVF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BE2E7351EE56F4F00722712 /* rapidGVF.cpp */; };
0BE2E7381EE56F5800722712 /* GVF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BE2E72F1EE56E6D00722712 /* GVF.cpp */; };
311BA2A61EDC6A8900244DAC /* test_rapidXMM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EE21ED8480D00E9FAFA /* test_rapidXMM.cpp */; };
311BA2FE1EDC6FD000244DAC /* xmmKMeans.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2C61EDC6EC100244DAC /* xmmKMeans.cpp */; };
311BA2FF1EDC6FD000244DAC /* xmmKMeansParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2C81EDC6EC100244DAC /* xmmKMeansParameters.cpp */; };
311BA3001EDC6FD000244DAC /* xmmHierarchicalHmm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2CD1EDC6ECE00244DAC /* xmmHierarchicalHmm.cpp */; };
311BA3011EDC6FD000244DAC /* xmmHmmParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2CF1EDC6ECE00244DAC /* xmmHmmParameters.cpp */; };
311BA3021EDC6FD000244DAC /* xmmHmmSingleClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2D21EDC6ECE00244DAC /* xmmHmmSingleClass.cpp */; };
311BA3031EDC6FD000244DAC /* xmmGmm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2D71EDC6EDB00244DAC /* xmmGmm.cpp */; };
311BA3041EDC6FD000244DAC /* xmmGmmParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2D91EDC6EDB00244DAC /* xmmGmmParameters.cpp */; };
311BA3051EDC6FD000244DAC /* xmmGmmSingleClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2DB1EDC6EDB00244DAC /* xmmGmmSingleClass.cpp */; };
311BA3061EDC6FD000244DAC /* xmmPhrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2E01EDC6EEA00244DAC /* xmmPhrase.cpp */; };
311BA3071EDC6FD000244DAC /* xmmTrainingSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2E21EDC6EEA00244DAC /* xmmTrainingSet.cpp */; };
311BA3081EDC6FD000244DAC /* xmmModelSharedParameters.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2EA1EDC6EF800244DAC /* xmmModelSharedParameters.cpp */; };
311BA3091EDC6FD000244DAC /* xmmModelSingleClass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2EC1EDC6EF800244DAC /* xmmModelSingleClass.cpp */; };
311BA30A1EDC6FD000244DAC /* xmmGaussianDistribution.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2F01EDC6F0400244DAC /* xmmGaussianDistribution.cpp */; };
311BA30B1EDC6FD000244DAC /* xmmAttribute.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2F31EDC6F0F00244DAC /* xmmAttribute.cpp */; };
311BA30C1EDC6FD000244DAC /* xmmJson.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2F71EDC6F0F00244DAC /* xmmJson.cpp */; };
311BA30D1EDC709900244DAC /* jsoncpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */; };
311BA30F1EDC711E00244DAC /* trainingData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */; };
311BA3101EDC746F00244DAC /* test_rapidPiPo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EE11ED8480D00E9FAFA /* test_rapidPiPo.cpp */; };
311BA3111EDC747A00244DAC /* rapidPiPoHost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 311BA2AC1EDC6AED00244DAC /* rapidPiPoHost.cpp */; };
311BA31A1EDC7ADE00244DAC /* fft.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A0E1ED8450C00E9FAFA /* fft.cpp */; };
311BA31B1EDC7ADE00244DAC /* maxiBark.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A121ED8450C00E9FAFA /* maxiBark.cpp */; };
311BA31C1EDC7ADE00244DAC /* maxiFFT.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A141ED8450C00E9FAFA /* maxiFFT.cpp */; };
311BA31D1EDC7ADE00244DAC /* maxiMFCC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A191ED8450C00E9FAFA /* maxiMFCC.cpp */; };
311BA31E1EDC7ADE00244DAC /* maximilian.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A1F1ED8450C00E9FAFA /* maximilian.cpp */; };
311BA3211EDC7B2400244DAC /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 311BA3201EDC7B2400244DAC /* Accelerate.framework */; };
311BA3251EDCE80B00244DAC /* jsoncpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */; };
312C61BD1FE95A680085E283 /* trainingData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */; };
312C61CD1FE95A680085E283 /* jsoncpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */; };
312C61D41FE95A8F0085E283 /* test_trainingData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 312C61B71FE958CB0085E283 /* test_trainingData.cpp */; };
319C94A11FC5BFA80055BE40 /* PiPoHost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93FD1FC49BAA0055BE40 /* PiPoHost.cpp */; };
319C94A21FC5C0C10055BE40 /* PiPoCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C947C1FC49D490055BE40 /* PiPoCollection.cpp */; };
319C94A31FC5C0DE0055BE40 /* BayesianFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93ED1FC49B5C0055BE40 /* BayesianFilter.cpp */; };
319C94A41FC5C0DE0055BE40 /* filter_utilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93EF1FC49B5C0055BE40 /* filter_utilities.cpp */; };
319C94A51FC5C1200055BE40 /* finitedifferences.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94761FC49D120055BE40 /* finitedifferences.c */; };
319C94A61FC5C1200055BE40 /* rta_bands.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94281FC49CC10055BE40 /* rta_bands.c */; };
319C94A71FC5C1200055BE40 /* rta_biquad.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C942A1FC49CC10055BE40 /* rta_biquad.c */; };
319C94A81FC5C1200055BE40 /* rta_correlation.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C942C1FC49CC10055BE40 /* rta_correlation.c */; };
319C94A91FC5C1200055BE40 /* rta_cubic.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C942E1FC49CC10055BE40 /* rta_cubic.c */; };
319C94AA1FC5C1200055BE40 /* rta_dct.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94301FC49CC10055BE40 /* rta_dct.c */; };
319C94AB1FC5C1200055BE40 /* rta_delta.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94321FC49CC10055BE40 /* rta_delta.c */; };
319C94AC1FC5C1200055BE40 /* rta_fft.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94341FC49CC10055BE40 /* rta_fft.c */; };
319C94AD1FC5C1200055BE40 /* rta_lifter.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94371FC49CC10055BE40 /* rta_lifter.c */; };
319C94AE1FC5C1200055BE40 /* rta_lpc.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94391FC49CC10055BE40 /* rta_lpc.c */; };
319C94AF1FC5C1200055BE40 /* rta_mel.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C943B1FC49CC10055BE40 /* rta_mel.c */; };
319C94B11FC5C1200055BE40 /* rta_preemphasis.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C943F1FC49CC10055BE40 /* rta_preemphasis.c */; };
319C94B21FC5C1200055BE40 /* rta_psy.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94411FC49CC10055BE40 /* rta_psy.c */; };
319C94B41FC5C1200055BE40 /* rta_window.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94451FC49CC10055BE40 /* rta_window.c */; };
319C94B51FC5C1200055BE40 /* rta_yin.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94471FC49CC10055BE40 /* rta_yin.c */; };
319C94B61FC5C1200055BE40 /* rta_mean_variance.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C941B1FC49CAA0055BE40 /* rta_mean_variance.c */; };
319C94B71FC5C1200055BE40 /* rta_moments.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C941D1FC49CAA0055BE40 /* rta_moments.c */; };
319C94B81FC5C1200055BE40 /* rta_selection.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C941F1FC49CAA0055BE40 /* rta_selection.c */; };
319C94B91FC5C1200055BE40 /* rta_svd.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94211FC49CAA0055BE40 /* rta_svd.c */; };
319C94BA1FC5C1200055BE40 /* rta_bpf.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C940A1FC49C990055BE40 /* rta_bpf.c */; };
319C94BB1FC5C1200055BE40 /* rta_int.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C940E1FC49C990055BE40 /* rta_int.c */; };
319C94BC1FC5C1200055BE40 /* rta_util.c in Sources */ = {isa = PBXBuildFile; fileRef = 319C94141FC49C990055BE40 /* rta_util.c */; };
31A8F1971F4ECF3300CA8CEC /* rapidXMM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31A8F1941F4ECD1200CA8CEC /* rapidXMM.cpp */; };
BE0AC6251FD17669008056E6 /* BayesianFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93ED1FC49B5C0055BE40 /* BayesianFilter.cpp */; };
BE0AC6261FD1766D008056E6 /* filter_utilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93EF1FC49B5C0055BE40 /* filter_utilities.cpp */; };
BE0AC6271FD1768D008056E6 /* BayesianFilter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93ED1FC49B5C0055BE40 /* BayesianFilter.cpp */; };
BE0AC6281FD17690008056E6 /* filter_utilities.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 319C93EF1FC49B5C0055BE40 /* filter_utilities.cpp */; };
BE5733061F505ECC0063F4D1 /* machineLearning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EBE1ED8459300E9FAFA /* machineLearning.cpp */; };
BE5733071F505F190063F4D1 /* rapidGVF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BE2E7351EE56F4F00722712 /* rapidGVF.cpp */; };
BE5733081F505F310063F4D1 /* GVF.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0BE2E72F1EE56E6D00722712 /* GVF.cpp */; };
BE5733091F505F7F0063F4D1 /* seriesClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE9286531EF01A23006847CF /* seriesClassification.cpp */; };
BE57330A1F505F870063F4D1 /* regression.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF91ED8450E00E9FAFA /* regression.cpp */; };
BE57330B1F505F920063F4D1 /* dtw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE9286571EF01C45006847CF /* dtw.cpp */; };
BE57330C1F505F9B0063F4D1 /* neuralNetwork.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF71ED8450E00E9FAFA /* neuralNetwork.cpp */; };
BE57330D1F505FAA0063F4D1 /* classification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DEA1ED8450E00E9FAFA /* classification.cpp */; };
BE57330E1F505FAD0063F4D1 /* modelSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF51ED8450E00E9FAFA /* modelSet.cpp */; };
BE57330F1F505FBD0063F4D1 /* knnClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF31ED8450E00E9FAFA /* knnClassification.cpp */; };
BE5733101F505FC80063F4D1 /* svmClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE92864E1EF017E2006847CF /* svmClassification.cpp */; };
BE5733111F505FDC0063F4D1 /* libsvm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5F0F1EDD74BC00E9FAFA /* libsvm.cpp */; };
BE9286491EF015AE006847CF /* test_signalProcessing.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EE31ED8480D00E9FAFA /* test_signalProcessing.cpp */; };
BE92864C1EF015E7006847CF /* rapidStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE92864A1EF015E7006847CF /* rapidStream.cpp */; };
BE92864D1EF01622006847CF /* rapidStream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE92864A1EF015E7006847CF /* rapidStream.cpp */; };
BE9286511EF01801006847CF /* svmClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE92864E1EF017E2006847CF /* svmClassification.cpp */; };
BE9286521EF01823006847CF /* libsvm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5F0F1EDD74BC00E9FAFA /* libsvm.cpp */; };
BE9286561EF01A2D006847CF /* seriesClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE9286531EF01A23006847CF /* seriesClassification.cpp */; };
BE92865A1EF01C4A006847CF /* dtw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE9286571EF01C45006847CF /* dtw.cpp */; };
BEA7B70F1EDD7B350003E84B /* machineLearning.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EBE1ED8459300E9FAFA /* machineLearning.cpp */; };
BEA7B7101EDD7B390003E84B /* trainingData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */; };
BEA7B7121EDD7B660003E84B /* classification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DEA1ED8450E00E9FAFA /* classification.cpp */; };
BEA7B7131EDD7B690003E84B /* knnClassification.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF31ED8450E00E9FAFA /* knnClassification.cpp */; };
BEA7B7141EDD7B6B0003E84B /* modelSet.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF51ED8450E00E9FAFA /* modelSet.cpp */; };
BEA7B7151EDD7B6E0003E84B /* neuralNetwork.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF71ED8450E00E9FAFA /* neuralNetwork.cpp */; };
BEA7B7161EDD7B700003E84B /* regression.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5DF91ED8450E00E9FAFA /* regression.cpp */; };
BEA7B7171EDD7B7E0003E84B /* jsoncpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */; };
BEA7B7181EDD7C0E0003E84B /* test_RapidLib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EDF1ED8480D00E9FAFA /* test_RapidLib.cpp */; };
BEA7B71B1EDD96090003E84B /* maxiFFT.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A141ED8450C00E9FAFA /* maxiFFT.cpp */; };
BEA7B71C1EDD960F0003E84B /* maxiMFCC.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A191ED8450C00E9FAFA /* maxiMFCC.cpp */; };
BEA7B71D1EDD96140003E84B /* fft.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A0E1ED8450C00E9FAFA /* fft.cpp */; };
BEA7B71E1EDD963E0003E84B /* maximilian.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5A1F1ED8450C00E9FAFA /* maximilian.cpp */; };
BEA7B7201EDD96AC0003E84B /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 311BA3201EDC7B2400244DAC /* Accelerate.framework */; };
BEA7B7211EDD97130003E84B /* test_gvf.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE2C5EDE1ED8480D00E9FAFA /* test_gvf.cpp */; };
BEF47B1B1F7A74E5005B0C35 /* searchWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B191F7A74E5005B0C35 /* searchWindow.cpp */; };
BEF47B1E1F7A74EE005B0C35 /* fastDTW.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B1C1F7A74EE005B0C35 /* fastDTW.cpp */; };
BEF47B211F7A74FC005B0C35 /* warpPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B1F1F7A74FC005B0C35 /* warpPath.cpp */; };
BEF47B221F7A8685005B0C35 /* fastDTW.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B1C1F7A74EE005B0C35 /* fastDTW.cpp */; };
BEF47B231F7A868B005B0C35 /* warpPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B1F1F7A74FC005B0C35 /* warpPath.cpp */; };
BEF47B241F7A8693005B0C35 /* searchWindow.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BEF47B191F7A74E5005B0C35 /* searchWindow.cpp */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
0BFFEF191E56082700EF19A5 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
0BFFEF241E56083C00EF19A5 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
0BFFEF2F1E56085C00EF19A5 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
0BFFEF3D1E5608C000EF19A5 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
312C61CF1FE95A680085E283 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 1;
};
31D7B7281E6B048100917757 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 12;
dstPath = "";
dstSubfolderSpec = 16;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
0BE2E72F1EE56E6D00722712 /* GVF.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = GVF.cpp; sourceTree = "<group>"; };
0BE2E7301EE56E6D00722712 /* GVF.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GVF.h; sourceTree = "<group>"; };
0BE2E7311EE56E6D00722712 /* GVFGesture.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GVFGesture.h; sourceTree = "<group>"; };
0BE2E7321EE56E6D00722712 /* GVFUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GVFUtils.h; sourceTree = "<group>"; };
0BE2E7331EE56E6D00722712 /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
0BE2E7351EE56F4F00722712 /* rapidGVF.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rapidGVF.cpp; sourceTree = "<group>"; };
0BE2E7361EE56F4F00722712 /* rapidGVF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rapidGVF.h; sourceTree = "<group>"; };
0BFFEF1B1E56082700EF19A5 /* test_GVF */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_GVF; sourceTree = BUILT_PRODUCTS_DIR; };
0BFFEF261E56083C00EF19A5 /* test_RapidLib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_RapidLib; sourceTree = BUILT_PRODUCTS_DIR; };
0BFFEF311E56085C00EF19A5 /* test_rapidXMM */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_rapidXMM; sourceTree = BUILT_PRODUCTS_DIR; };
0BFFEF3F1E5608C000EF19A5 /* test_signalProcessing */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_signalProcessing; sourceTree = BUILT_PRODUCTS_DIR; };
311BA2AC1EDC6AED00244DAC /* rapidPiPoHost.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = rapidPiPoHost.cpp; path = rapidPiPoTools/rapidPiPoHost.cpp; sourceTree = "<group>"; };
311BA2AD1EDC6AED00244DAC /* rapidPiPoHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rapidPiPoHost.h; path = rapidPiPoTools/rapidPiPoHost.h; sourceTree = "<group>"; };
311BA2BC1EDC6DB900244DAC /* rapidPiPoTools.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rapidPiPoTools.h; path = rapidPiPoTools/rapidPiPoTools.h; sourceTree = "<group>"; };
311BA2C61EDC6EC100244DAC /* xmmKMeans.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmKMeans.cpp; path = xmm/src/models/kmeans/xmmKMeans.cpp; sourceTree = "<group>"; };
311BA2C71EDC6EC100244DAC /* xmmKMeans.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmKMeans.hpp; path = xmm/src/models/kmeans/xmmKMeans.hpp; sourceTree = "<group>"; };
311BA2C81EDC6EC100244DAC /* xmmKMeansParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmKMeansParameters.cpp; path = xmm/src/models/kmeans/xmmKMeansParameters.cpp; sourceTree = "<group>"; };
311BA2C91EDC6EC100244DAC /* xmmKMeansParameters.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmKMeansParameters.hpp; path = xmm/src/models/kmeans/xmmKMeansParameters.hpp; sourceTree = "<group>"; };
311BA2CA1EDC6EC100244DAC /* xmmKMeansResults.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmKMeansResults.hpp; path = xmm/src/models/kmeans/xmmKMeansResults.hpp; sourceTree = "<group>"; };
311BA2CD1EDC6ECE00244DAC /* xmmHierarchicalHmm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmHierarchicalHmm.cpp; path = xmm/src/models/hmm/xmmHierarchicalHmm.cpp; sourceTree = "<group>"; };
311BA2CE1EDC6ECE00244DAC /* xmmHierarchicalHmm.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmHierarchicalHmm.hpp; path = xmm/src/models/hmm/xmmHierarchicalHmm.hpp; sourceTree = "<group>"; };
311BA2CF1EDC6ECE00244DAC /* xmmHmmParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmHmmParameters.cpp; path = xmm/src/models/hmm/xmmHmmParameters.cpp; sourceTree = "<group>"; };
311BA2D01EDC6ECE00244DAC /* xmmHmmParameters.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmHmmParameters.hpp; path = xmm/src/models/hmm/xmmHmmParameters.hpp; sourceTree = "<group>"; };
311BA2D11EDC6ECE00244DAC /* xmmHmmResults.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmHmmResults.hpp; path = xmm/src/models/hmm/xmmHmmResults.hpp; sourceTree = "<group>"; };
311BA2D21EDC6ECE00244DAC /* xmmHmmSingleClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmHmmSingleClass.cpp; path = xmm/src/models/hmm/xmmHmmSingleClass.cpp; sourceTree = "<group>"; };
311BA2D31EDC6ECE00244DAC /* xmmHmmSingleClass.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmHmmSingleClass.hpp; path = xmm/src/models/hmm/xmmHmmSingleClass.hpp; sourceTree = "<group>"; };
311BA2D71EDC6EDB00244DAC /* xmmGmm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmGmm.cpp; path = xmm/src/models/gmm/xmmGmm.cpp; sourceTree = "<group>"; };
311BA2D81EDC6EDB00244DAC /* xmmGmm.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmGmm.hpp; path = xmm/src/models/gmm/xmmGmm.hpp; sourceTree = "<group>"; };
311BA2D91EDC6EDB00244DAC /* xmmGmmParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmGmmParameters.cpp; path = xmm/src/models/gmm/xmmGmmParameters.cpp; sourceTree = "<group>"; };
311BA2DA1EDC6EDB00244DAC /* xmmGmmParameters.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmGmmParameters.hpp; path = xmm/src/models/gmm/xmmGmmParameters.hpp; sourceTree = "<group>"; };
311BA2DB1EDC6EDB00244DAC /* xmmGmmSingleClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmGmmSingleClass.cpp; path = xmm/src/models/gmm/xmmGmmSingleClass.cpp; sourceTree = "<group>"; };
311BA2DC1EDC6EDB00244DAC /* xmmGmmSingleClass.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmGmmSingleClass.hpp; path = xmm/src/models/gmm/xmmGmmSingleClass.hpp; sourceTree = "<group>"; };
311BA2E01EDC6EEA00244DAC /* xmmPhrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmPhrase.cpp; path = xmm/src/core/trainingset/xmmPhrase.cpp; sourceTree = "<group>"; };
311BA2E11EDC6EEA00244DAC /* xmmPhrase.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmPhrase.hpp; path = xmm/src/core/trainingset/xmmPhrase.hpp; sourceTree = "<group>"; };
311BA2E21EDC6EEA00244DAC /* xmmTrainingSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmTrainingSet.cpp; path = xmm/src/core/trainingset/xmmTrainingSet.cpp; sourceTree = "<group>"; };
311BA2E31EDC6EEA00244DAC /* xmmTrainingSet.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmTrainingSet.hpp; path = xmm/src/core/trainingset/xmmTrainingSet.hpp; sourceTree = "<group>"; };
311BA2E61EDC6EF800244DAC /* xmmModel.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModel.hpp; path = xmm/src/core/model/xmmModel.hpp; sourceTree = "<group>"; };
311BA2E71EDC6EF800244DAC /* xmmModelConfiguration.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModelConfiguration.hpp; path = xmm/src/core/model/xmmModelConfiguration.hpp; sourceTree = "<group>"; };
311BA2E81EDC6EF800244DAC /* xmmModelParameters.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModelParameters.hpp; path = xmm/src/core/model/xmmModelParameters.hpp; sourceTree = "<group>"; };
311BA2E91EDC6EF800244DAC /* xmmModelResults.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModelResults.hpp; path = xmm/src/core/model/xmmModelResults.hpp; sourceTree = "<group>"; };
311BA2EA1EDC6EF800244DAC /* xmmModelSharedParameters.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmModelSharedParameters.cpp; path = xmm/src/core/model/xmmModelSharedParameters.cpp; sourceTree = "<group>"; };
311BA2EB1EDC6EF800244DAC /* xmmModelSharedParameters.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModelSharedParameters.hpp; path = xmm/src/core/model/xmmModelSharedParameters.hpp; sourceTree = "<group>"; };
311BA2EC1EDC6EF800244DAC /* xmmModelSingleClass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmModelSingleClass.cpp; path = xmm/src/core/model/xmmModelSingleClass.cpp; sourceTree = "<group>"; };
311BA2ED1EDC6EF800244DAC /* xmmModelSingleClass.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmModelSingleClass.hpp; path = xmm/src/core/model/xmmModelSingleClass.hpp; sourceTree = "<group>"; };
311BA2F01EDC6F0400244DAC /* xmmGaussianDistribution.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmGaussianDistribution.cpp; path = xmm/src/core/distributions/xmmGaussianDistribution.cpp; sourceTree = "<group>"; };
311BA2F11EDC6F0400244DAC /* xmmGaussianDistribution.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmGaussianDistribution.hpp; path = xmm/src/core/distributions/xmmGaussianDistribution.hpp; sourceTree = "<group>"; };
311BA2F31EDC6F0F00244DAC /* xmmAttribute.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmAttribute.cpp; path = xmm/src/core/common/xmmAttribute.cpp; sourceTree = "<group>"; };
311BA2F41EDC6F0F00244DAC /* xmmAttribute.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmAttribute.hpp; path = xmm/src/core/common/xmmAttribute.hpp; sourceTree = "<group>"; };
311BA2F51EDC6F0F00244DAC /* xmmCircularbuffer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmCircularbuffer.hpp; path = xmm/src/core/common/xmmCircularbuffer.hpp; sourceTree = "<group>"; };
311BA2F61EDC6F0F00244DAC /* xmmEvents.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmEvents.hpp; path = xmm/src/core/common/xmmEvents.hpp; sourceTree = "<group>"; };
311BA2F71EDC6F0F00244DAC /* xmmJson.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xmmJson.cpp; path = xmm/src/core/common/xmmJson.cpp; sourceTree = "<group>"; };
311BA2F81EDC6F0F00244DAC /* xmmJson.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmJson.hpp; path = xmm/src/core/common/xmmJson.hpp; sourceTree = "<group>"; };
311BA2F91EDC6F0F00244DAC /* xmmMatrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = xmmMatrix.hpp; path = xmm/src/core/common/xmmMatrix.hpp; sourceTree = "<group>"; };
311BA2FC1EDC6F1900244DAC /* xmm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = xmm.h; path = xmm/src/xmm.h; sourceTree = "<group>"; };
311BA3201EDC7B2400244DAC /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = System/Library/Frameworks/Accelerate.framework; sourceTree = SDKROOT; };
311BA3231EDC7BA400244DAC /* DnB-loop-175BPM.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = "DnB-loop-175BPM.wav"; path = "data/DnB-loop-175BPM.wav"; sourceTree = "<group>"; };
312C61B71FE958CB0085E283 /* test_trainingData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_trainingData.cpp; sourceTree = "<group>"; };
312C61D31FE95A680085E283 /* test_trainingData */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_trainingData; sourceTree = BUILT_PRODUCTS_DIR; };
318E7A361FD748D900FEEB7E /* pipo.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = pipo.json; path = data/pipo.json; sourceTree = "<group>"; };
319C93ED1FC49B5C0055BE40 /* BayesianFilter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = BayesianFilter.cpp; path = pipo/modules/bayesfilter/src/BayesianFilter.cpp; sourceTree = "<group>"; };
319C93EE1FC49B5C0055BE40 /* BayesianFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BayesianFilter.h; path = pipo/modules/bayesfilter/src/BayesianFilter.h; sourceTree = "<group>"; };
319C93EF1FC49B5C0055BE40 /* filter_utilities.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = filter_utilities.cpp; path = pipo/modules/bayesfilter/src/filter_utilities.cpp; sourceTree = "<group>"; };
319C93F01FC49B5C0055BE40 /* filter_utilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = filter_utilities.h; path = pipo/modules/bayesfilter/src/filter_utilities.h; sourceTree = "<group>"; };
319C93F31FC49B8F0055BE40 /* mimo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mimo.h; path = pipo/sdk/src/mimo.h; sourceTree = "<group>"; };
319C93F41FC49B8F0055BE40 /* PiPo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPo.h; path = pipo/sdk/src/PiPo.h; sourceTree = "<group>"; };
319C93F51FC49B8F0055BE40 /* PiPoParallel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoParallel.h; path = pipo/sdk/src/PiPoParallel.h; sourceTree = "<group>"; };
319C93F61FC49B8F0055BE40 /* PiPoSequence.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoSequence.h; path = pipo/sdk/src/PiPoSequence.h; sourceTree = "<group>"; };
319C93F71FC49B8F0055BE40 /* RingBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = RingBuffer.h; path = pipo/sdk/src/RingBuffer.h; sourceTree = "<group>"; };
319C93F91FC49BAA0055BE40 /* mimo_host.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mimo_host.h; path = pipo/sdk/src/host/mimo_host.h; sourceTree = "<group>"; };
319C93FA1FC49BAA0055BE40 /* PiPoChain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoChain.h; path = pipo/sdk/src/host/PiPoChain.h; sourceTree = "<group>"; };
319C93FB1FC49BAA0055BE40 /* PiPoCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoCollection.h; path = pipo/sdk/src/host/PiPoCollection.h; sourceTree = "<group>"; };
319C93FC1FC49BAA0055BE40 /* PiPoGraph.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoGraph.h; path = pipo/sdk/src/host/PiPoGraph.h; sourceTree = "<group>"; };
319C93FD1FC49BAA0055BE40 /* PiPoHost.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PiPoHost.cpp; path = pipo/sdk/src/host/PiPoHost.cpp; sourceTree = "<group>"; };
319C93FE1FC49BAA0055BE40 /* PiPoHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoHost.h; path = pipo/sdk/src/host/PiPoHost.h; sourceTree = "<group>"; };
319C93FF1FC49BAA0055BE40 /* PiPoModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoModule.h; path = pipo/sdk/src/host/PiPoModule.h; sourceTree = "<group>"; };
319C94001FC49BAA0055BE40 /* PiPoModuleClass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoModuleClass.h; path = pipo/sdk/src/host/PiPoModuleClass.h; sourceTree = "<group>"; };
319C94011FC49BAA0055BE40 /* PiPoOp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoOp.h; path = pipo/sdk/src/host/PiPoOp.h; sourceTree = "<group>"; };
319C94041FC49C5D0055BE40 /* rta.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta.h; path = pipo/modules/rta/src/rta.h; sourceTree = "<group>"; };
319C940A1FC49C990055BE40 /* rta_bpf.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_bpf.c; path = pipo/modules/rta/src/util/rta_bpf.c; sourceTree = "<group>"; };
319C940B1FC49C990055BE40 /* rta_bpf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_bpf.h; path = pipo/modules/rta/src/util/rta_bpf.h; sourceTree = "<group>"; };
319C940C1FC49C990055BE40 /* rta_complex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_complex.h; path = pipo/modules/rta/src/util/rta_complex.h; sourceTree = "<group>"; };
319C940D1FC49C990055BE40 /* rta_float.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_float.h; path = pipo/modules/rta/src/util/rta_float.h; sourceTree = "<group>"; };
319C940E1FC49C990055BE40 /* rta_int.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_int.c; path = pipo/modules/rta/src/util/rta_int.c; sourceTree = "<group>"; };
319C940F1FC49C990055BE40 /* rta_int.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_int.h; path = pipo/modules/rta/src/util/rta_int.h; sourceTree = "<group>"; };
319C94101FC49C990055BE40 /* rta_math.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_math.h; path = pipo/modules/rta/src/util/rta_math.h; sourceTree = "<group>"; };
319C94111FC49C990055BE40 /* rta_stdio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_stdio.h; path = pipo/modules/rta/src/util/rta_stdio.h; sourceTree = "<group>"; };
319C94121FC49C990055BE40 /* rta_stdlib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_stdlib.h; path = pipo/modules/rta/src/util/rta_stdlib.h; sourceTree = "<group>"; };
319C94131FC49C990055BE40 /* rta_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_types.h; path = pipo/modules/rta/src/util/rta_types.h; sourceTree = "<group>"; };
319C94141FC49C990055BE40 /* rta_util.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_util.c; path = pipo/modules/rta/src/util/rta_util.c; sourceTree = "<group>"; };
319C94151FC49C990055BE40 /* rta_util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_util.h; path = pipo/modules/rta/src/util/rta_util.h; sourceTree = "<group>"; };
319C941B1FC49CAA0055BE40 /* rta_mean_variance.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_mean_variance.c; path = pipo/modules/rta/src/statistics/rta_mean_variance.c; sourceTree = "<group>"; };
319C941C1FC49CAA0055BE40 /* rta_mean_variance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_mean_variance.h; path = pipo/modules/rta/src/statistics/rta_mean_variance.h; sourceTree = "<group>"; };
319C941D1FC49CAA0055BE40 /* rta_moments.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_moments.c; path = pipo/modules/rta/src/statistics/rta_moments.c; sourceTree = "<group>"; };
319C941E1FC49CAA0055BE40 /* rta_moments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_moments.h; path = pipo/modules/rta/src/statistics/rta_moments.h; sourceTree = "<group>"; };
319C941F1FC49CAA0055BE40 /* rta_selection.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_selection.c; path = pipo/modules/rta/src/statistics/rta_selection.c; sourceTree = "<group>"; };
319C94201FC49CAA0055BE40 /* rta_selection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_selection.h; path = pipo/modules/rta/src/statistics/rta_selection.h; sourceTree = "<group>"; };
319C94211FC49CAA0055BE40 /* rta_svd.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_svd.c; path = pipo/modules/rta/src/statistics/rta_svd.c; sourceTree = "<group>"; };
319C94221FC49CAA0055BE40 /* rta_svd.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_svd.h; path = pipo/modules/rta/src/statistics/rta_svd.h; sourceTree = "<group>"; };
319C94281FC49CC10055BE40 /* rta_bands.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_bands.c; path = pipo/modules/rta/src/signal/rta_bands.c; sourceTree = "<group>"; };
319C94291FC49CC10055BE40 /* rta_bands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_bands.h; path = pipo/modules/rta/src/signal/rta_bands.h; sourceTree = "<group>"; };
319C942A1FC49CC10055BE40 /* rta_biquad.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_biquad.c; path = pipo/modules/rta/src/signal/rta_biquad.c; sourceTree = "<group>"; };
319C942B1FC49CC10055BE40 /* rta_biquad.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_biquad.h; path = pipo/modules/rta/src/signal/rta_biquad.h; sourceTree = "<group>"; };
319C942C1FC49CC10055BE40 /* rta_correlation.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_correlation.c; path = pipo/modules/rta/src/signal/rta_correlation.c; sourceTree = "<group>"; };
319C942D1FC49CC10055BE40 /* rta_correlation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_correlation.h; path = pipo/modules/rta/src/signal/rta_correlation.h; sourceTree = "<group>"; };
319C942E1FC49CC10055BE40 /* rta_cubic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_cubic.c; path = pipo/modules/rta/src/signal/rta_cubic.c; sourceTree = "<group>"; };
319C942F1FC49CC10055BE40 /* rta_cubic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_cubic.h; path = pipo/modules/rta/src/signal/rta_cubic.h; sourceTree = "<group>"; };
319C94301FC49CC10055BE40 /* rta_dct.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_dct.c; path = pipo/modules/rta/src/signal/rta_dct.c; sourceTree = "<group>"; };
319C94311FC49CC10055BE40 /* rta_dct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_dct.h; path = pipo/modules/rta/src/signal/rta_dct.h; sourceTree = "<group>"; };
319C94321FC49CC10055BE40 /* rta_delta.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_delta.c; path = pipo/modules/rta/src/signal/rta_delta.c; sourceTree = "<group>"; };
319C94331FC49CC10055BE40 /* rta_delta.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_delta.h; path = pipo/modules/rta/src/signal/rta_delta.h; sourceTree = "<group>"; };
319C94341FC49CC10055BE40 /* rta_fft.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_fft.c; path = pipo/modules/rta/src/signal/rta_fft.c; sourceTree = "<group>"; };
319C94351FC49CC10055BE40 /* rta_fft.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_fft.h; path = pipo/modules/rta/src/signal/rta_fft.h; sourceTree = "<group>"; };
319C94361FC49CC10055BE40 /* rta_filter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_filter.h; path = pipo/modules/rta/src/signal/rta_filter.h; sourceTree = "<group>"; };
319C94371FC49CC10055BE40 /* rta_lifter.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_lifter.c; path = pipo/modules/rta/src/signal/rta_lifter.c; sourceTree = "<group>"; };
319C94381FC49CC10055BE40 /* rta_lifter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_lifter.h; path = pipo/modules/rta/src/signal/rta_lifter.h; sourceTree = "<group>"; };
319C94391FC49CC10055BE40 /* rta_lpc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_lpc.c; path = pipo/modules/rta/src/signal/rta_lpc.c; sourceTree = "<group>"; };
319C943A1FC49CC10055BE40 /* rta_lpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_lpc.h; path = pipo/modules/rta/src/signal/rta_lpc.h; sourceTree = "<group>"; };
319C943B1FC49CC10055BE40 /* rta_mel.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_mel.c; path = pipo/modules/rta/src/signal/rta_mel.c; sourceTree = "<group>"; };
319C943C1FC49CC10055BE40 /* rta_mel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_mel.h; path = pipo/modules/rta/src/signal/rta_mel.h; sourceTree = "<group>"; };
319C943D1FC49CC10055BE40 /* rta_onepole.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_onepole.c; path = pipo/modules/rta/src/signal/rta_onepole.c; sourceTree = "<group>"; };
319C943E1FC49CC10055BE40 /* rta_onepole.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_onepole.h; path = pipo/modules/rta/src/signal/rta_onepole.h; sourceTree = "<group>"; };
319C943F1FC49CC10055BE40 /* rta_preemphasis.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_preemphasis.c; path = pipo/modules/rta/src/signal/rta_preemphasis.c; sourceTree = "<group>"; };
319C94401FC49CC10055BE40 /* rta_preemphasis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_preemphasis.h; path = pipo/modules/rta/src/signal/rta_preemphasis.h; sourceTree = "<group>"; };
319C94411FC49CC10055BE40 /* rta_psy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_psy.c; path = pipo/modules/rta/src/signal/rta_psy.c; sourceTree = "<group>"; };
319C94421FC49CC10055BE40 /* rta_psy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_psy.h; path = pipo/modules/rta/src/signal/rta_psy.h; sourceTree = "<group>"; };
319C94431FC49CC10055BE40 /* rta_resample.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_resample.c; path = pipo/modules/rta/src/signal/rta_resample.c; sourceTree = "<group>"; };
319C94441FC49CC10055BE40 /* rta_resample.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_resample.h; path = pipo/modules/rta/src/signal/rta_resample.h; sourceTree = "<group>"; };
319C94451FC49CC10055BE40 /* rta_window.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_window.c; path = pipo/modules/rta/src/signal/rta_window.c; sourceTree = "<group>"; };
319C94461FC49CC10055BE40 /* rta_window.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_window.h; path = pipo/modules/rta/src/signal/rta_window.h; sourceTree = "<group>"; };
319C94471FC49CC10055BE40 /* rta_yin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_yin.c; path = pipo/modules/rta/src/signal/rta_yin.c; sourceTree = "<group>"; };
319C94481FC49CC10055BE40 /* rta_yin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_yin.h; path = pipo/modules/rta/src/signal/rta_yin.h; sourceTree = "<group>"; };
319C945B1FC49CD10055BE40 /* rta_kdtree.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_kdtree.c; path = pipo/modules/rta/src/recognition/rta_kdtree.c; sourceTree = "<group>"; };
319C945C1FC49CD10055BE40 /* rta_kdtree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_kdtree.h; path = pipo/modules/rta/src/recognition/rta_kdtree.h; sourceTree = "<group>"; };
319C945D1FC49CD10055BE40 /* rta_kdtreebuild.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_kdtreebuild.c; path = pipo/modules/rta/src/recognition/rta_kdtreebuild.c; sourceTree = "<group>"; };
319C945E1FC49CD10055BE40 /* rta_kdtreeintern.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_kdtreeintern.h; path = pipo/modules/rta/src/recognition/rta_kdtreeintern.h; sourceTree = "<group>"; };
319C945F1FC49CD10055BE40 /* rta_kdtreesearch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_kdtreesearch.c; path = pipo/modules/rta/src/recognition/rta_kdtreesearch.c; sourceTree = "<group>"; };
319C94601FC49CD10055BE40 /* rta_mahalanobis.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = rta_mahalanobis.c; path = pipo/modules/rta/src/recognition/rta_mahalanobis.c; sourceTree = "<group>"; };
319C94611FC49CD10055BE40 /* rta_mahalanobis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_mahalanobis.h; path = pipo/modules/rta/src/recognition/rta_mahalanobis.h; sourceTree = "<group>"; };
319C94741FC49CF90055BE40 /* rta_configuration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rta_configuration.h; path = pipo/modules/rta/bindings/lib/rta_configuration.h; sourceTree = "<group>"; };
319C94761FC49D120055BE40 /* finitedifferences.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = finitedifferences.c; path = pipo/modules/finitedifferences/finitedifferences.c; sourceTree = "<group>"; };
319C94771FC49D120055BE40 /* finitedifferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = finitedifferences.h; path = pipo/modules/finitedifferences/finitedifferences.h; sourceTree = "<group>"; };
319C947A1FC49D260055BE40 /* mimo_stats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mimo_stats.h; path = pipo/modules/mimo/mimo_stats.h; sourceTree = "<group>"; };
319C947C1FC49D490055BE40 /* PiPoCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PiPoCollection.cpp; path = pipo/modules/collection/PiPoCollection.cpp; sourceTree = "<group>"; };
319C947E1FC49D690055BE40 /* PiPoBands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoBands.h; path = pipo/modules/PiPoBands.h; sourceTree = "<group>"; };
319C947F1FC49D690055BE40 /* PiPoBasic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoBasic.h; path = pipo/modules/PiPoBasic.h; sourceTree = "<group>"; };
319C94801FC49D690055BE40 /* PiPoBayesFilter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoBayesFilter.h; path = pipo/modules/PiPoBayesFilter.h; sourceTree = "<group>"; };
319C94811FC49D690055BE40 /* PiPoBiquad.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoBiquad.h; path = pipo/modules/PiPoBiquad.h; sourceTree = "<group>"; };
319C94821FC49D690055BE40 /* PiPoBranch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoBranch.h; path = pipo/modules/PiPoBranch.h; sourceTree = "<group>"; };
319C94831FC49D690055BE40 /* PiPoChop.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoChop.h; path = pipo/modules/PiPoChop.h; sourceTree = "<group>"; };
319C94841FC49D690055BE40 /* PiPoConst.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoConst.h; path = pipo/modules/PiPoConst.h; sourceTree = "<group>"; };
319C94851FC49D690055BE40 /* PiPoDct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoDct.h; path = pipo/modules/PiPoDct.h; sourceTree = "<group>"; };
319C94861FC49D690055BE40 /* PiPoDelta.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoDelta.h; path = pipo/modules/PiPoDelta.h; sourceTree = "<group>"; };
319C94871FC49D690055BE40 /* PiPoDescr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoDescr.h; path = pipo/modules/PiPoDescr.h; sourceTree = "<group>"; };
319C94881FC49D690055BE40 /* PiPoFft.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoFft.h; path = pipo/modules/PiPoFft.h; sourceTree = "<group>"; };
319C94891FC49D690055BE40 /* PiPoFiniteDif.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoFiniteDif.h; path = pipo/modules/PiPoFiniteDif.h; sourceTree = "<group>"; };
319C948A1FC49D690055BE40 /* PiPoGate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoGate.h; path = pipo/modules/PiPoGate.h; sourceTree = "<group>"; };
319C948B1FC49D690055BE40 /* PiPoIdentity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoIdentity.h; path = pipo/modules/PiPoIdentity.h; sourceTree = "<group>"; };
319C948C1FC49D690055BE40 /* PiPoIdesc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoIdesc.h; path = pipo/modules/PiPoIdesc.h; sourceTree = "<group>"; };
319C948D1FC49D690055BE40 /* PiPoLpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoLpc.h; path = pipo/modules/PiPoLpc.h; sourceTree = "<group>"; };
319C948E1FC49D690055BE40 /* PiPoMaximChroma.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMaximChroma.h; path = pipo/modules/PiPoMaximChroma.h; sourceTree = "<group>"; };
319C948F1FC49D690055BE40 /* PiPoMeanStddev.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMeanStddev.h; path = pipo/modules/PiPoMeanStddev.h; sourceTree = "<group>"; };
319C94901FC49D690055BE40 /* PiPoMedian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMedian.h; path = pipo/modules/PiPoMedian.h; sourceTree = "<group>"; };
319C94911FC49D690055BE40 /* PiPoMel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMel.h; path = pipo/modules/PiPoMel.h; sourceTree = "<group>"; };
319C94921FC49D690055BE40 /* PiPoMfcc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMfcc.h; path = pipo/modules/PiPoMfcc.h; sourceTree = "<group>"; };
319C94931FC49D690055BE40 /* PiPoMinMax.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMinMax.h; path = pipo/modules/PiPoMinMax.h; sourceTree = "<group>"; };
319C94941FC49D690055BE40 /* PiPoMoments.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMoments.h; path = pipo/modules/PiPoMoments.h; sourceTree = "<group>"; };
319C94951FC49D690055BE40 /* PiPoMvavrg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoMvavrg.h; path = pipo/modules/PiPoMvavrg.h; sourceTree = "<group>"; };
319C94961FC49D690055BE40 /* PiPoOnseg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoOnseg.h; path = pipo/modules/PiPoOnseg.h; sourceTree = "<group>"; };
319C94971FC49D690055BE40 /* PiPoPeaks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoPeaks.h; path = pipo/modules/PiPoPeaks.h; sourceTree = "<group>"; };
319C94981FC49D690055BE40 /* PiPoPsy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoPsy.h; path = pipo/modules/PiPoPsy.h; sourceTree = "<group>"; };
319C94991FC49D690055BE40 /* PiPoRms.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoRms.h; path = pipo/modules/PiPoRms.h; sourceTree = "<group>"; };
319C949A1FC49D690055BE40 /* PiPoScale.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoScale.h; path = pipo/modules/PiPoScale.h; sourceTree = "<group>"; };
319C949B1FC49D690055BE40 /* PiPoSelect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoSelect.h; path = pipo/modules/PiPoSelect.h; sourceTree = "<group>"; };
319C949C1FC49D690055BE40 /* PiPoSlice.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoSlice.h; path = pipo/modules/PiPoSlice.h; sourceTree = "<group>"; };
319C949D1FC49D690055BE40 /* PiPoSum.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoSum.h; path = pipo/modules/PiPoSum.h; sourceTree = "<group>"; };
319C949E1FC49D690055BE40 /* PiPoWavelet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoWavelet.h; path = pipo/modules/PiPoWavelet.h; sourceTree = "<group>"; };
319C949F1FC49D690055BE40 /* PiPoYin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PiPoYin.h; path = pipo/modules/PiPoYin.h; sourceTree = "<group>"; };
319C94A01FC49D690055BE40 /* TempMod.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TempMod.h; path = pipo/modules/TempMod.h; sourceTree = "<group>"; };
31A8F1941F4ECD1200CA8CEC /* rapidXMM.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = rapidXMM.cpp; path = rapidXMM/rapidXMM.cpp; sourceTree = "<group>"; };
31A8F1951F4ECD1200CA8CEC /* rapidXMM.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rapidXMM.h; path = rapidXMM/rapidXMM.h; sourceTree = "<group>"; };
31D7B72C1E6B048100917757 /* test_rapidPiPo */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = test_rapidPiPo; sourceTree = BUILT_PRODUCTS_DIR; };
BE2C5A0A1ED8450C00E9FAFA /* .gitignore */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = .gitignore; sourceTree = "<group>"; };
BE2C5A0B1ED8450C00E9FAFA /* beat2.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = beat2.wav; sourceTree = "<group>"; };
BE2C5A0C1ED8450C00E9FAFA /* blip.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = blip.wav; sourceTree = "<group>"; };
BE2C5A0E1ED8450C00E9FAFA /* fft.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fft.cpp; sourceTree = "<group>"; };
BE2C5A0F1ED8450C00E9FAFA /* fft.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fft.h; sourceTree = "<group>"; };
BE2C5A101ED8450C00E9FAFA /* maxiAtoms.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maxiAtoms.cpp; sourceTree = "<group>"; };
BE2C5A111ED8450C00E9FAFA /* maxiAtoms.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxiAtoms.h; sourceTree = "<group>"; };
BE2C5A121ED8450C00E9FAFA /* maxiBark.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maxiBark.cpp; sourceTree = "<group>"; };
BE2C5A131ED8450C00E9FAFA /* maxiBark.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxiBark.h; sourceTree = "<group>"; };
BE2C5A141ED8450C00E9FAFA /* maxiFFT.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maxiFFT.cpp; sourceTree = "<group>"; };
BE2C5A151ED8450C00E9FAFA /* maxiFFT.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxiFFT.h; sourceTree = "<group>"; };
BE2C5A161ED8450C00E9FAFA /* maxiGrains.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maxiGrains.cpp; sourceTree = "<group>"; };
BE2C5A171ED8450C00E9FAFA /* maxiGrains.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxiGrains.h; sourceTree = "<group>"; };
BE2C5A181ED8450C00E9FAFA /* maxim.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxim.h; sourceTree = "<group>"; };
BE2C5A191ED8450C00E9FAFA /* maxiMFCC.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maxiMFCC.cpp; sourceTree = "<group>"; };
BE2C5A1A1ED8450C00E9FAFA /* maxiMFCC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maxiMFCC.h; sourceTree = "<group>"; };
BE2C5A1D1ED8450C00E9FAFA /* sineTable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sineTable.h; sourceTree = "<group>"; };
BE2C5A1E1ED8450C00E9FAFA /* main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = "<group>"; };
BE2C5A1F1ED8450C00E9FAFA /* maximilian.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = maximilian.cpp; sourceTree = "<group>"; };
BE2C5A201ED8450C00E9FAFA /* maximilian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = maximilian.h; sourceTree = "<group>"; };
BE2C5BB41ED8450D00E9FAFA /* player.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = player.cpp; sourceTree = "<group>"; };
BE2C5BB51ED8450D00E9FAFA /* player.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = player.h; sourceTree = "<group>"; };
BE2C5BB61ED8450D00E9FAFA /* portaudio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = portaudio.h; sourceTree = "<group>"; };
BE2C5BB71ED8450D00E9FAFA /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
BE2C5BB81ED8450D00E9FAFA /* RtAudio.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RtAudio.cpp; sourceTree = "<group>"; };
BE2C5BB91ED8450D00E9FAFA /* RtAudio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RtAudio.h; sourceTree = "<group>"; };
BE2C5BBA1ED8450D00E9FAFA /* RtError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RtError.h; sourceTree = "<group>"; };
BE2C5BBB1ED8450D00E9FAFA /* snare.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = snare.wav; sourceTree = "<group>"; };
BE2C5BBC1ED8450D00E9FAFA /* stb_vorbis.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = stb_vorbis.c; sourceTree = "<group>"; };
BE2C5BBD1ED8450D00E9FAFA /* stb_vorbis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stb_vorbis.h; sourceTree = "<group>"; };
BE2C5DE91ED8450E00E9FAFA /* baseModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = baseModel.h; sourceTree = "<group>"; };
BE2C5DEA1ED8450E00E9FAFA /* classification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = classification.cpp; sourceTree = "<group>"; };
BE2C5DEB1ED8450E00E9FAFA /* classification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = classification.h; sourceTree = "<group>"; };
BE2C5DF31ED8450E00E9FAFA /* knnClassification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = knnClassification.cpp; sourceTree = "<group>"; };
BE2C5DF41ED8450E00E9FAFA /* knnClassification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = knnClassification.h; sourceTree = "<group>"; };
BE2C5DF51ED8450E00E9FAFA /* modelSet.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = modelSet.cpp; sourceTree = "<group>"; };
BE2C5DF61ED8450E00E9FAFA /* modelSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = modelSet.h; sourceTree = "<group>"; };
BE2C5DF71ED8450E00E9FAFA /* neuralNetwork.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = neuralNetwork.cpp; sourceTree = "<group>"; };
BE2C5DF81ED8450E00E9FAFA /* neuralNetwork.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = neuralNetwork.h; sourceTree = "<group>"; };
BE2C5DF91ED8450E00E9FAFA /* regression.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = regression.cpp; sourceTree = "<group>"; };
BE2C5DFA1ED8450E00E9FAFA /* regression.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = regression.h; sourceTree = "<group>"; };
BE2C5DFB1ED8450E00E9FAFA /* trainingExample.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = trainingExample.h; sourceTree = "<group>"; };
BE2C5E061ED8450E00E9FAFA /* json-forwards.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "json-forwards.h"; sourceTree = "<group>"; };
BE2C5E071ED8450E00E9FAFA /* json.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = json.h; sourceTree = "<group>"; };
BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jsoncpp.cpp; sourceTree = "<group>"; };
BE2C5EBC1ED8459300E9FAFA /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
BE2C5EBE1ED8459300E9FAFA /* machineLearning.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = machineLearning.cpp; sourceTree = "<group>"; };
BE2C5EBF1ED8459300E9FAFA /* machineLearning.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = machineLearning.h; sourceTree = "<group>"; };
BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = trainingData.cpp; sourceTree = "<group>"; };
BE2C5EC11ED8459300E9FAFA /* trainingData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = trainingData.h; sourceTree = "<group>"; };
BE2C5EC21ED8459300E9FAFA /* rapidmix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rapidmix.h; sourceTree = "<group>"; };
BE2C5EC71ED8459300E9FAFA /* signalProcessing.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = signalProcessing.h; sourceTree = "<group>"; };
BE2C5EDA1ED8471F00E9FAFA /* catch.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = catch.hpp; sourceTree = "<group>"; };
BE2C5EDB1ED8471F00E9FAFA /* LICENSE_1_0.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE_1_0.txt; sourceTree = "<group>"; };
BE2C5EDE1ED8480D00E9FAFA /* test_gvf.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_gvf.cpp; sourceTree = "<group>"; };
BE2C5EDF1ED8480D00E9FAFA /* test_RapidLib.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_RapidLib.cpp; sourceTree = "<group>"; };
BE2C5EE01ED8480D00E9FAFA /* test_rapidmix-api.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = "test_rapidmix-api.cpp"; sourceTree = "<group>"; };
BE2C5EE11ED8480D00E9FAFA /* test_rapidPiPo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_rapidPiPo.cpp; sourceTree = "<group>"; };
BE2C5EE21ED8480D00E9FAFA /* test_rapidXMM.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_rapidXMM.cpp; sourceTree = "<group>"; };
BE2C5EE31ED8480D00E9FAFA /* test_signalProcessing.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = test_signalProcessing.cpp; sourceTree = "<group>"; };
BE2C5F0F1EDD74BC00E9FAFA /* libsvm.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = libsvm.cpp; sourceTree = "<group>"; };
BE2C5F101EDD74BC00E9FAFA /* libsvm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libsvm.h; sourceTree = "<group>"; };
BE2C5F111EDD74BC00E9FAFA /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
BE92864A1EF015E7006847CF /* rapidStream.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rapidStream.cpp; sourceTree = "<group>"; };
BE92864B1EF015E7006847CF /* rapidStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rapidStream.h; sourceTree = "<group>"; };
BE92864E1EF017E2006847CF /* svmClassification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = svmClassification.cpp; sourceTree = "<group>"; };
BE92864F1EF017E2006847CF /* svmClassification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = svmClassification.h; sourceTree = "<group>"; };
BE9286531EF01A23006847CF /* seriesClassification.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = seriesClassification.cpp; sourceTree = "<group>"; };
BE9286541EF01A23006847CF /* seriesClassification.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = seriesClassification.h; sourceTree = "<group>"; };
BE9286571EF01C45006847CF /* dtw.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = dtw.cpp; sourceTree = "<group>"; };
BE9286581EF01C45006847CF /* dtw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dtw.h; sourceTree = "<group>"; };
BEF47B191F7A74E5005B0C35 /* searchWindow.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = searchWindow.cpp; sourceTree = "<group>"; };
BEF47B1A1F7A74E5005B0C35 /* searchWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = searchWindow.h; sourceTree = "<group>"; };
BEF47B1C1F7A74EE005B0C35 /* fastDTW.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fastDTW.cpp; sourceTree = "<group>"; };
BEF47B1D1F7A74EE005B0C35 /* fastDTW.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fastDTW.h; sourceTree = "<group>"; };
BEF47B1F1F7A74FC005B0C35 /* warpPath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = warpPath.cpp; sourceTree = "<group>"; };
BEF47B201F7A74FC005B0C35 /* warpPath.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = warpPath.h; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
0BFFEF181E56082700EF19A5 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF231E56083C00EF19A5 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF2E1E56085C00EF19A5 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF3C1E5608C000EF19A5 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
BEA7B7201EDD96AC0003E84B /* Accelerate.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
312C61CE1FE95A680085E283 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
31D7B7271E6B048100917757 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
311BA3211EDC7B2400244DAC /* Accelerate.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
0BE2E72E1EE56E6D00722712 /* GVF */ = {
isa = PBXGroup;
children = (
0BE2E72F1EE56E6D00722712 /* GVF.cpp */,
0BE2E7301EE56E6D00722712 /* GVF.h */,
0BE2E7311EE56E6D00722712 /* GVFGesture.h */,
0BE2E7321EE56E6D00722712 /* GVFUtils.h */,
0BE2E7331EE56E6D00722712 /* LICENSE */,
);
path = GVF;
sourceTree = "<group>";
};
0BE2E7341EE56F4F00722712 /* rapidGVF */ = {
isa = PBXGroup;
children = (
0BE2E7351EE56F4F00722712 /* rapidGVF.cpp */,
0BE2E7361EE56F4F00722712 /* rapidGVF.h */,
);
path = rapidGVF;
sourceTree = "<group>";
};
311BA2A51EDC698D00244DAC /* xmm */ = {
isa = PBXGroup;
children = (
311BA2FC1EDC6F1900244DAC /* xmm.h */,
311BA2BE1EDC6E7100244DAC /* models */,
311BA2BD1EDC6E6700244DAC /* core */,
);
name = xmm;
sourceTree = "<group>";
};
311BA2A81EDC6ACC00244DAC /* rapidPiPoTools */ = {
isa = PBXGroup;
children = (
311BA2BC1EDC6DB900244DAC /* rapidPiPoTools.h */,
311BA2AC1EDC6AED00244DAC /* rapidPiPoHost.cpp */,
311BA2AD1EDC6AED00244DAC /* rapidPiPoHost.h */,
);
name = rapidPiPoTools;
sourceTree = "<group>";
};
311BA2BD1EDC6E6700244DAC /* core */ = {
isa = PBXGroup;
children = (
311BA2C21EDC6E9C00244DAC /* trainingset */,
311BA2C11EDC6E9700244DAC /* model */,
311BA2C01EDC6E8F00244DAC /* distributions */,
311BA2BF1EDC6E8B00244DAC /* common */,
);
name = core;
sourceTree = "<group>";
};
311BA2BE1EDC6E7100244DAC /* models */ = {
isa = PBXGroup;
children = (
311BA2C51EDC6EB100244DAC /* kmeans */,
311BA2C41EDC6EAC00244DAC /* hmm */,
311BA2C31EDC6EA300244DAC /* gmm */,
);
name = models;
sourceTree = "<group>";
};
311BA2BF1EDC6E8B00244DAC /* common */ = {
isa = PBXGroup;
children = (
311BA2F31EDC6F0F00244DAC /* xmmAttribute.cpp */,
311BA2F41EDC6F0F00244DAC /* xmmAttribute.hpp */,
311BA2F51EDC6F0F00244DAC /* xmmCircularbuffer.hpp */,
311BA2F61EDC6F0F00244DAC /* xmmEvents.hpp */,
311BA2F71EDC6F0F00244DAC /* xmmJson.cpp */,
311BA2F81EDC6F0F00244DAC /* xmmJson.hpp */,
311BA2F91EDC6F0F00244DAC /* xmmMatrix.hpp */,
);
name = common;
sourceTree = "<group>";
};
311BA2C01EDC6E8F00244DAC /* distributions */ = {
isa = PBXGroup;
children = (
311BA2F01EDC6F0400244DAC /* xmmGaussianDistribution.cpp */,
311BA2F11EDC6F0400244DAC /* xmmGaussianDistribution.hpp */,
);
name = distributions;
sourceTree = "<group>";
};
311BA2C11EDC6E9700244DAC /* model */ = {
isa = PBXGroup;
children = (
311BA2E61EDC6EF800244DAC /* xmmModel.hpp */,
311BA2E71EDC6EF800244DAC /* xmmModelConfiguration.hpp */,
311BA2E81EDC6EF800244DAC /* xmmModelParameters.hpp */,
311BA2E91EDC6EF800244DAC /* xmmModelResults.hpp */,
311BA2EA1EDC6EF800244DAC /* xmmModelSharedParameters.cpp */,
311BA2EB1EDC6EF800244DAC /* xmmModelSharedParameters.hpp */,
311BA2EC1EDC6EF800244DAC /* xmmModelSingleClass.cpp */,
311BA2ED1EDC6EF800244DAC /* xmmModelSingleClass.hpp */,
);
name = model;
sourceTree = "<group>";
};
311BA2C21EDC6E9C00244DAC /* trainingset */ = {
isa = PBXGroup;
children = (
311BA2E01EDC6EEA00244DAC /* xmmPhrase.cpp */,
311BA2E11EDC6EEA00244DAC /* xmmPhrase.hpp */,
311BA2E21EDC6EEA00244DAC /* xmmTrainingSet.cpp */,
311BA2E31EDC6EEA00244DAC /* xmmTrainingSet.hpp */,
);
name = trainingset;
sourceTree = "<group>";
};
311BA2C31EDC6EA300244DAC /* gmm */ = {
isa = PBXGroup;
children = (
311BA2D71EDC6EDB00244DAC /* xmmGmm.cpp */,
311BA2D81EDC6EDB00244DAC /* xmmGmm.hpp */,
311BA2D91EDC6EDB00244DAC /* xmmGmmParameters.cpp */,
311BA2DA1EDC6EDB00244DAC /* xmmGmmParameters.hpp */,
311BA2DB1EDC6EDB00244DAC /* xmmGmmSingleClass.cpp */,
311BA2DC1EDC6EDB00244DAC /* xmmGmmSingleClass.hpp */,
);
name = gmm;
sourceTree = "<group>";
};
311BA2C41EDC6EAC00244DAC /* hmm */ = {
isa = PBXGroup;
children = (
311BA2CD1EDC6ECE00244DAC /* xmmHierarchicalHmm.cpp */,
311BA2CE1EDC6ECE00244DAC /* xmmHierarchicalHmm.hpp */,
311BA2CF1EDC6ECE00244DAC /* xmmHmmParameters.cpp */,
311BA2D01EDC6ECE00244DAC /* xmmHmmParameters.hpp */,
311BA2D11EDC6ECE00244DAC /* xmmHmmResults.hpp */,
311BA2D21EDC6ECE00244DAC /* xmmHmmSingleClass.cpp */,
311BA2D31EDC6ECE00244DAC /* xmmHmmSingleClass.hpp */,
);
name = hmm;
sourceTree = "<group>";
};
311BA2C51EDC6EB100244DAC /* kmeans */ = {
isa = PBXGroup;
children = (
311BA2C61EDC6EC100244DAC /* xmmKMeans.cpp */,
311BA2C71EDC6EC100244DAC /* xmmKMeans.hpp */,
311BA2C81EDC6EC100244DAC /* xmmKMeansParameters.cpp */,
311BA2C91EDC6EC100244DAC /* xmmKMeansParameters.hpp */,
311BA2CA1EDC6EC100244DAC /* xmmKMeansResults.hpp */,
);
name = kmeans;
sourceTree = "<group>";
};
311BA31F1EDC7B2400244DAC /* Frameworks */ = {
isa = PBXGroup;
children = (
311BA3201EDC7B2400244DAC /* Accelerate.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
311BA3221EDC7B9A00244DAC /* data */ = {
isa = PBXGroup;
children = (
318E7A361FD748D900FEEB7E /* pipo.json */,
311BA3231EDC7BA400244DAC /* DnB-loop-175BPM.wav */,
);
name = data;
sourceTree = "<group>";
};
319C93E91FC49B270055BE40 /* pipo */ = {
isa = PBXGroup;
children = (
319C93EB1FC49B350055BE40 /* modules */,
319C93EA1FC49B300055BE40 /* sdk */,
);
name = pipo;
sourceTree = "<group>";
};
319C93EA1FC49B300055BE40 /* sdk */ = {
isa = PBXGroup;
children = (
319C93F81FC49B960055BE40 /* host */,
319C93F31FC49B8F0055BE40 /* mimo.h */,
319C93F41FC49B8F0055BE40 /* PiPo.h */,
319C93F51FC49B8F0055BE40 /* PiPoParallel.h */,
319C93F61FC49B8F0055BE40 /* PiPoSequence.h */,
319C93F71FC49B8F0055BE40 /* RingBuffer.h */,
);
name = sdk;
sourceTree = "<group>";
};
319C93EB1FC49B350055BE40 /* modules */ = {
isa = PBXGroup;
children = (
319C93EC1FC49B4E0055BE40 /* bayesfilter */,
319C947B1FC49D380055BE40 /* collection */,
319C94751FC49D020055BE40 /* finitedifferences */,
319C94791FC49D170055BE40 /* mimo */,
319C94031FC49C430055BE40 /* rta */,
319C947E1FC49D690055BE40 /* PiPoBands.h */,
319C947F1FC49D690055BE40 /* PiPoBasic.h */,
319C94801FC49D690055BE40 /* PiPoBayesFilter.h */,
319C94811FC49D690055BE40 /* PiPoBiquad.h */,
319C94821FC49D690055BE40 /* PiPoBranch.h */,
319C94831FC49D690055BE40 /* PiPoChop.h */,
319C94841FC49D690055BE40 /* PiPoConst.h */,
319C94851FC49D690055BE40 /* PiPoDct.h */,
319C94861FC49D690055BE40 /* PiPoDelta.h */,
319C94871FC49D690055BE40 /* PiPoDescr.h */,
319C94881FC49D690055BE40 /* PiPoFft.h */,
319C94891FC49D690055BE40 /* PiPoFiniteDif.h */,
319C948A1FC49D690055BE40 /* PiPoGate.h */,
319C948B1FC49D690055BE40 /* PiPoIdentity.h */,
319C948C1FC49D690055BE40 /* PiPoIdesc.h */,
319C948D1FC49D690055BE40 /* PiPoLpc.h */,
319C948E1FC49D690055BE40 /* PiPoMaximChroma.h */,
319C948F1FC49D690055BE40 /* PiPoMeanStddev.h */,
319C94901FC49D690055BE40 /* PiPoMedian.h */,
319C94911FC49D690055BE40 /* PiPoMel.h */,
319C94921FC49D690055BE40 /* PiPoMfcc.h */,
319C94931FC49D690055BE40 /* PiPoMinMax.h */,
319C94941FC49D690055BE40 /* PiPoMoments.h */,
319C94951FC49D690055BE40 /* PiPoMvavrg.h */,
319C94961FC49D690055BE40 /* PiPoOnseg.h */,
319C94971FC49D690055BE40 /* PiPoPeaks.h */,
319C94981FC49D690055BE40 /* PiPoPsy.h */,
319C94991FC49D690055BE40 /* PiPoRms.h */,
319C949A1FC49D690055BE40 /* PiPoScale.h */,
319C949B1FC49D690055BE40 /* PiPoSelect.h */,
319C949C1FC49D690055BE40 /* PiPoSlice.h */,
319C949D1FC49D690055BE40 /* PiPoSum.h */,
319C949E1FC49D690055BE40 /* PiPoWavelet.h */,
319C949F1FC49D690055BE40 /* PiPoYin.h */,
319C94A01FC49D690055BE40 /* TempMod.h */,
);
name = modules;
sourceTree = "<group>";
};
319C93EC1FC49B4E0055BE40 /* bayesfilter */ = {
isa = PBXGroup;
children = (
319C93ED1FC49B5C0055BE40 /* BayesianFilter.cpp */,
319C93EE1FC49B5C0055BE40 /* BayesianFilter.h */,
319C93EF1FC49B5C0055BE40 /* filter_utilities.cpp */,
319C93F01FC49B5C0055BE40 /* filter_utilities.h */,
);
name = bayesfilter;
sourceTree = "<group>";
};
319C93F81FC49B960055BE40 /* host */ = {
isa = PBXGroup;
children = (
319C93F91FC49BAA0055BE40 /* mimo_host.h */,
319C93FA1FC49BAA0055BE40 /* PiPoChain.h */,
319C93FB1FC49BAA0055BE40 /* PiPoCollection.h */,
319C93FC1FC49BAA0055BE40 /* PiPoGraph.h */,
319C93FD1FC49BAA0055BE40 /* PiPoHost.cpp */,
319C93FE1FC49BAA0055BE40 /* PiPoHost.h */,
319C93FF1FC49BAA0055BE40 /* PiPoModule.h */,
319C94001FC49BAA0055BE40 /* PiPoModuleClass.h */,
319C94011FC49BAA0055BE40 /* PiPoOp.h */,
);
name = host;
sourceTree = "<group>";
};
319C94031FC49C430055BE40 /* rta */ = {
isa = PBXGroup;
children = (
319C94041FC49C5D0055BE40 /* rta.h */,
319C94741FC49CF90055BE40 /* rta_configuration.h */,
319C94091FC49C840055BE40 /* physical-models */,
319C94081FC49C790055BE40 /* recognition */,
319C94071FC49C6C0055BE40 /* signal */,
319C94061FC49C640055BE40 /* statistics */,
319C94051FC49C5F0055BE40 /* util */,
);
name = rta;
sourceTree = "<group>";
};
319C94051FC49C5F0055BE40 /* util */ = {
isa = PBXGroup;
children = (
319C940A1FC49C990055BE40 /* rta_bpf.c */,
319C940B1FC49C990055BE40 /* rta_bpf.h */,
319C940C1FC49C990055BE40 /* rta_complex.h */,
319C940D1FC49C990055BE40 /* rta_float.h */,
319C940E1FC49C990055BE40 /* rta_int.c */,
319C940F1FC49C990055BE40 /* rta_int.h */,
319C94101FC49C990055BE40 /* rta_math.h */,
319C94111FC49C990055BE40 /* rta_stdio.h */,
319C94121FC49C990055BE40 /* rta_stdlib.h */,
319C94131FC49C990055BE40 /* rta_types.h */,
319C94141FC49C990055BE40 /* rta_util.c */,
319C94151FC49C990055BE40 /* rta_util.h */,
);
name = util;
sourceTree = "<group>";
};
319C94061FC49C640055BE40 /* statistics */ = {
isa = PBXGroup;
children = (
319C941B1FC49CAA0055BE40 /* rta_mean_variance.c */,
319C941C1FC49CAA0055BE40 /* rta_mean_variance.h */,
319C941D1FC49CAA0055BE40 /* rta_moments.c */,
319C941E1FC49CAA0055BE40 /* rta_moments.h */,
319C941F1FC49CAA0055BE40 /* rta_selection.c */,
319C94201FC49CAA0055BE40 /* rta_selection.h */,
319C94211FC49CAA0055BE40 /* rta_svd.c */,
319C94221FC49CAA0055BE40 /* rta_svd.h */,
);
name = statistics;
sourceTree = "<group>";
};
319C94071FC49C6C0055BE40 /* signal */ = {
isa = PBXGroup;
children = (
319C94281FC49CC10055BE40 /* rta_bands.c */,
319C94291FC49CC10055BE40 /* rta_bands.h */,
319C942A1FC49CC10055BE40 /* rta_biquad.c */,
319C942B1FC49CC10055BE40 /* rta_biquad.h */,
319C942C1FC49CC10055BE40 /* rta_correlation.c */,
319C942D1FC49CC10055BE40 /* rta_correlation.h */,
319C942E1FC49CC10055BE40 /* rta_cubic.c */,
319C942F1FC49CC10055BE40 /* rta_cubic.h */,
319C94301FC49CC10055BE40 /* rta_dct.c */,
319C94311FC49CC10055BE40 /* rta_dct.h */,
319C94321FC49CC10055BE40 /* rta_delta.c */,
319C94331FC49CC10055BE40 /* rta_delta.h */,
319C94341FC49CC10055BE40 /* rta_fft.c */,
319C94351FC49CC10055BE40 /* rta_fft.h */,
319C94361FC49CC10055BE40 /* rta_filter.h */,
319C94371FC49CC10055BE40 /* rta_lifter.c */,
319C94381FC49CC10055BE40 /* rta_lifter.h */,
319C94391FC49CC10055BE40 /* rta_lpc.c */,
319C943A1FC49CC10055BE40 /* rta_lpc.h */,
319C943B1FC49CC10055BE40 /* rta_mel.c */,
319C943C1FC49CC10055BE40 /* rta_mel.h */,
319C943D1FC49CC10055BE40 /* rta_onepole.c */,
319C943E1FC49CC10055BE40 /* rta_onepole.h */,
319C943F1FC49CC10055BE40 /* rta_preemphasis.c */,
319C94401FC49CC10055BE40 /* rta_preemphasis.h */,
319C94411FC49CC10055BE40 /* rta_psy.c */,
319C94421FC49CC10055BE40 /* rta_psy.h */,
319C94431FC49CC10055BE40 /* rta_resample.c */,
319C94441FC49CC10055BE40 /* rta_resample.h */,
319C94451FC49CC10055BE40 /* rta_window.c */,
319C94461FC49CC10055BE40 /* rta_window.h */,
319C94471FC49CC10055BE40 /* rta_yin.c */,
319C94481FC49CC10055BE40 /* rta_yin.h */,
);
name = signal;
sourceTree = "<group>";
};
319C94081FC49C790055BE40 /* recognition */ = {
isa = PBXGroup;
children = (
319C945B1FC49CD10055BE40 /* rta_kdtree.c */,
319C945C1FC49CD10055BE40 /* rta_kdtree.h */,
319C945D1FC49CD10055BE40 /* rta_kdtreebuild.c */,
319C945E1FC49CD10055BE40 /* rta_kdtreeintern.h */,
319C945F1FC49CD10055BE40 /* rta_kdtreesearch.c */,
319C94601FC49CD10055BE40 /* rta_mahalanobis.c */,
319C94611FC49CD10055BE40 /* rta_mahalanobis.h */,
);
name = recognition;
sourceTree = "<group>";
};
319C94091FC49C840055BE40 /* physical-models */ = {
isa = PBXGroup;
children = (
);
name = "physical-models";
sourceTree = "<group>";
};
319C94751FC49D020055BE40 /* finitedifferences */ = {
isa = PBXGroup;
children = (
319C94761FC49D120055BE40 /* finitedifferences.c */,
319C94771FC49D120055BE40 /* finitedifferences.h */,
);
name = finitedifferences;
sourceTree = "<group>";
};
319C94791FC49D170055BE40 /* mimo */ = {
isa = PBXGroup;
children = (
319C947A1FC49D260055BE40 /* mimo_stats.h */,
);
name = mimo;
sourceTree = "<group>";
};
319C947B1FC49D380055BE40 /* collection */ = {
isa = PBXGroup;
children = (
319C947C1FC49D490055BE40 /* PiPoCollection.cpp */,
);
name = collection;
sourceTree = "<group>";
};
31A8F1931F4ECD0500CA8CEC /* rapidXMM */ = {
isa = PBXGroup;
children = (
31A8F1941F4ECD1200CA8CEC /* rapidXMM.cpp */,
31A8F1951F4ECD1200CA8CEC /* rapidXMM.h */,
);
name = rapidXMM;
sourceTree = "<group>";
};
BE2C5A081ED8450C00E9FAFA /* dependencies */ = {
isa = PBXGroup;
children = (
319C93E91FC49B270055BE40 /* pipo */,
0BE2E72E1EE56E6D00722712 /* GVF */,
311BA2A51EDC698D00244DAC /* xmm */,
BE2C5A091ED8450C00E9FAFA /* Maximilian */,
BE2C5BBE1ED8450D00E9FAFA /* RapidLib */,
BE2C5E041ED8450E00E9FAFA /* third_party */,
);
name = dependencies;
path = ../dependencies;
sourceTree = "<group>";
};
BE2C5A091ED8450C00E9FAFA /* Maximilian */ = {
isa = PBXGroup;
children = (
BE2C5A0A1ED8450C00E9FAFA /* .gitignore */,
BE2C5A0B1ED8450C00E9FAFA /* beat2.wav */,
BE2C5A0C1ED8450C00E9FAFA /* blip.wav */,
BE2C5A0D1ED8450C00E9FAFA /* libs */,
BE2C5A1E1ED8450C00E9FAFA /* main.cpp */,
BE2C5A1F1ED8450C00E9FAFA /* maximilian.cpp */,
BE2C5A201ED8450C00E9FAFA /* maximilian.h */,
BE2C5BB41ED8450D00E9FAFA /* player.cpp */,
BE2C5BB51ED8450D00E9FAFA /* player.h */,
BE2C5BB61ED8450D00E9FAFA /* portaudio.h */,
BE2C5BB71ED8450D00E9FAFA /* README */,
BE2C5BB81ED8450D00E9FAFA /* RtAudio.cpp */,
BE2C5BB91ED8450D00E9FAFA /* RtAudio.h */,
BE2C5BBA1ED8450D00E9FAFA /* RtError.h */,
BE2C5BBB1ED8450D00E9FAFA /* snare.wav */,
BE2C5BBC1ED8450D00E9FAFA /* stb_vorbis.c */,
BE2C5BBD1ED8450D00E9FAFA /* stb_vorbis.h */,
);
path = Maximilian;
sourceTree = "<group>";
};
BE2C5A0D1ED8450C00E9FAFA /* libs */ = {
isa = PBXGroup;
children = (
BE2C5A0E1ED8450C00E9FAFA /* fft.cpp */,
BE2C5A0F1ED8450C00E9FAFA /* fft.h */,
BE2C5A101ED8450C00E9FAFA /* maxiAtoms.cpp */,
BE2C5A111ED8450C00E9FAFA /* maxiAtoms.h */,
BE2C5A121ED8450C00E9FAFA /* maxiBark.cpp */,
BE2C5A131ED8450C00E9FAFA /* maxiBark.h */,
BE2C5A141ED8450C00E9FAFA /* maxiFFT.cpp */,
BE2C5A151ED8450C00E9FAFA /* maxiFFT.h */,
BE2C5A161ED8450C00E9FAFA /* maxiGrains.cpp */,
BE2C5A171ED8450C00E9FAFA /* maxiGrains.h */,
BE2C5A181ED8450C00E9FAFA /* maxim.h */,
BE2C5A191ED8450C00E9FAFA /* maxiMFCC.cpp */,
BE2C5A1A1ED8450C00E9FAFA /* maxiMFCC.h */,
BE2C5A1D1ED8450C00E9FAFA /* sineTable.h */,
);
path = libs;
sourceTree = "<group>";
};
BE2C5BBE1ED8450D00E9FAFA /* RapidLib */ = {
isa = PBXGroup;
children = (
BE2C5DE81ED8450E00E9FAFA /* src */,
);
path = RapidLib;
sourceTree = "<group>";
};
BE2C5DE81ED8450E00E9FAFA /* src */ = {
isa = PBXGroup;
children = (
BEF47B1F1F7A74FC005B0C35 /* warpPath.cpp */,
BEF47B201F7A74FC005B0C35 /* warpPath.h */,
BEF47B1C1F7A74EE005B0C35 /* fastDTW.cpp */,
BEF47B1D1F7A74EE005B0C35 /* fastDTW.h */,
BEF47B191F7A74E5005B0C35 /* searchWindow.cpp */,
BEF47B1A1F7A74E5005B0C35 /* searchWindow.h */,
BE9286571EF01C45006847CF /* dtw.cpp */,
BE9286581EF01C45006847CF /* dtw.h */,
BE9286531EF01A23006847CF /* seriesClassification.cpp */,
BE9286541EF01A23006847CF /* seriesClassification.h */,
BE92864E1EF017E2006847CF /* svmClassification.cpp */,
BE92864F1EF017E2006847CF /* svmClassification.h */,
BE92864A1EF015E7006847CF /* rapidStream.cpp */,
BE92864B1EF015E7006847CF /* rapidStream.h */,
BE2C5DE91ED8450E00E9FAFA /* baseModel.h */,
BE2C5DEA1ED8450E00E9FAFA /* classification.cpp */,
BE2C5DEB1ED8450E00E9FAFA /* classification.h */,
BE2C5DF31ED8450E00E9FAFA /* knnClassification.cpp */,
BE2C5DF41ED8450E00E9FAFA /* knnClassification.h */,
BE2C5DF51ED8450E00E9FAFA /* modelSet.cpp */,
BE2C5DF61ED8450E00E9FAFA /* modelSet.h */,
BE2C5DF71ED8450E00E9FAFA /* neuralNetwork.cpp */,
BE2C5DF81ED8450E00E9FAFA /* neuralNetwork.h */,
BE2C5DF91ED8450E00E9FAFA /* regression.cpp */,
BE2C5DFA1ED8450E00E9FAFA /* regression.h */,
BE2C5DFB1ED8450E00E9FAFA /* trainingExample.h */,
);
path = src;
sourceTree = "<group>";
};
BE2C5E041ED8450E00E9FAFA /* third_party */ = {
isa = PBXGroup;
children = (
BE2C5F0E1EDD74BC00E9FAFA /* libsvm */,
BE2C5ED91ED8471F00E9FAFA /* catch */,
BE2C5E051ED8450E00E9FAFA /* json */,
BE2C5E081ED8450E00E9FAFA /* jsoncpp.cpp */,
);
path = third_party;
sourceTree = "<group>";
};
BE2C5E051ED8450E00E9FAFA /* json */ = {
isa = PBXGroup;
children = (
BE2C5E061ED8450E00E9FAFA /* json-forwards.h */,
BE2C5E071ED8450E00E9FAFA /* json.h */,
);
path = json;
sourceTree = "<group>";
};
BE2C5EBB1ED8459300E9FAFA /* src */ = {
isa = PBXGroup;
children = (
BE2C5EBC1ED8459300E9FAFA /* LICENSE */,
BE2C5EBD1ED8459300E9FAFA /* machineLearning */,
BE2C5EC21ED8459300E9FAFA /* rapidmix.h */,
BE2C5EC31ED8459300E9FAFA /* signalProcessing */,
);
name = src;
path = ../src;
sourceTree = "<group>";
};
BE2C5EBD1ED8459300E9FAFA /* machineLearning */ = {
isa = PBXGroup;
children = (
31A8F1931F4ECD0500CA8CEC /* rapidXMM */,
0BE2E7341EE56F4F00722712 /* rapidGVF */,
BE2C5EBE1ED8459300E9FAFA /* machineLearning.cpp */,
BE2C5EBF1ED8459300E9FAFA /* machineLearning.h */,
BE2C5EC01ED8459300E9FAFA /* trainingData.cpp */,
BE2C5EC11ED8459300E9FAFA /* trainingData.h */,
);
path = machineLearning;
sourceTree = "<group>";
};
BE2C5EC31ED8459300E9FAFA /* signalProcessing */ = {
isa = PBXGroup;
children = (
311BA2A81EDC6ACC00244DAC /* rapidPiPoTools */,
BE2C5EC71ED8459300E9FAFA /* signalProcessing.h */,
);
path = signalProcessing;
sourceTree = "<group>";
};
BE2C5ED91ED8471F00E9FAFA /* catch */ = {
isa = PBXGroup;
children = (
BE2C5EDA1ED8471F00E9FAFA /* catch.hpp */,
BE2C5EDB1ED8471F00E9FAFA /* LICENSE_1_0.txt */,
);
path = catch;
sourceTree = "<group>";
};
BE2C5EDC1ED8480D00E9FAFA /* tests */ = {
isa = PBXGroup;
children = (
311BA3221EDC7B9A00244DAC /* data */,
BE2C5EDD1ED8480D00E9FAFA /* src */,
);
name = tests;
sourceTree = "<group>";
};
BE2C5EDD1ED8480D00E9FAFA /* src */ = {
isa = PBXGroup;
children = (
BE2C5EE01ED8480D00E9FAFA /* test_rapidmix-api.cpp */,
BE2C5EDE1ED8480D00E9FAFA /* test_gvf.cpp */,
BE2C5EDF1ED8480D00E9FAFA /* test_RapidLib.cpp */,
BE2C5EE11ED8480D00E9FAFA /* test_rapidPiPo.cpp */,
BE2C5EE21ED8480D00E9FAFA /* test_rapidXMM.cpp */,
BE2C5EE31ED8480D00E9FAFA /* test_signalProcessing.cpp */,
312C61B71FE958CB0085E283 /* test_trainingData.cpp */,
);
path = src;
sourceTree = "<group>";
};
BE2C5F0E1EDD74BC00E9FAFA /* libsvm */ = {
isa = PBXGroup;
children = (
BE2C5F0F1EDD74BC00E9FAFA /* libsvm.cpp */,
BE2C5F101EDD74BC00E9FAFA /* libsvm.h */,
BE2C5F111EDD74BC00E9FAFA /* LICENSE */,
);
path = libsvm;
sourceTree = "<group>";
};
BE325F281DB50BE100F199A8 = {
isa = PBXGroup;
children = (
BE2C5EDC1ED8480D00E9FAFA /* tests */,
BE2C5EBB1ED8459300E9FAFA /* src */,
BE2C5A081ED8450C00E9FAFA /* dependencies */,
BE325F321DB50BE100F199A8 /* Products */,
311BA31F1EDC7B2400244DAC /* Frameworks */,
);
sourceTree = "<group>";
};
BE325F321DB50BE100F199A8 /* Products */ = {
isa = PBXGroup;
children = (
0BFFEF1B1E56082700EF19A5 /* test_GVF */,
0BFFEF261E56083C00EF19A5 /* test_RapidLib */,
0BFFEF311E56085C00EF19A5 /* test_rapidXMM */,
0BFFEF3F1E5608C000EF19A5 /* test_signalProcessing */,
31D7B72C1E6B048100917757 /* test_rapidPiPo */,
312C61D31FE95A680085E283 /* test_trainingData */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
0BFFEF1A1E56082700EF19A5 /* test_GVF */ = {
isa = PBXNativeTarget;
buildConfigurationList = 0BFFEF1F1E56082700EF19A5 /* Build configuration list for PBXNativeTarget "test_GVF" */;
buildPhases = (
0BFFEF171E56082700EF19A5 /* Sources */,
0BFFEF181E56082700EF19A5 /* Frameworks */,
0BFFEF191E56082700EF19A5 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_GVF;
productName = test_GVF;
productReference = 0BFFEF1B1E56082700EF19A5 /* test_GVF */;
productType = "com.apple.product-type.tool";
};
0BFFEF251E56083C00EF19A5 /* test_RapidLib */ = {
isa = PBXNativeTarget;
buildConfigurationList = 0BFFEF2A1E56083D00EF19A5 /* Build configuration list for PBXNativeTarget "test_RapidLib" */;
buildPhases = (
0BFFEF221E56083C00EF19A5 /* Sources */,
0BFFEF231E56083C00EF19A5 /* Frameworks */,
0BFFEF241E56083C00EF19A5 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_RapidLib;
productName = test_RapidLib;
productReference = 0BFFEF261E56083C00EF19A5 /* test_RapidLib */;
productType = "com.apple.product-type.tool";
};
0BFFEF301E56085C00EF19A5 /* test_rapidXMM */ = {
isa = PBXNativeTarget;
buildConfigurationList = 0BFFEF351E56085C00EF19A5 /* Build configuration list for PBXNativeTarget "test_rapidXMM" */;
buildPhases = (
0BFFEF2D1E56085C00EF19A5 /* Sources */,
0BFFEF2E1E56085C00EF19A5 /* Frameworks */,
0BFFEF2F1E56085C00EF19A5 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_rapidXMM;
productName = test_XMM;
productReference = 0BFFEF311E56085C00EF19A5 /* test_rapidXMM */;
productType = "com.apple.product-type.tool";
};
0BFFEF3E1E5608C000EF19A5 /* test_signalProcessing */ = {
isa = PBXNativeTarget;
buildConfigurationList = 0BFFEF431E5608C000EF19A5 /* Build configuration list for PBXNativeTarget "test_signalProcessing" */;
buildPhases = (
0BFFEF3B1E5608C000EF19A5 /* Sources */,
0BFFEF3C1E5608C000EF19A5 /* Frameworks */,
0BFFEF3D1E5608C000EF19A5 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_signalProcessing;
productName = test_FeatureExtraction;
productReference = 0BFFEF3F1E5608C000EF19A5 /* test_signalProcessing */;
productType = "com.apple.product-type.tool";
};
312C61B91FE95A680085E283 /* test_trainingData */ = {
isa = PBXNativeTarget;
buildConfigurationList = 312C61D01FE95A680085E283 /* Build configuration list for PBXNativeTarget "test_trainingData" */;
buildPhases = (
312C61BA1FE95A680085E283 /* Sources */,
312C61CE1FE95A680085E283 /* Frameworks */,
312C61CF1FE95A680085E283 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_trainingData;
productName = test_XMM;
productReference = 312C61D31FE95A680085E283 /* test_trainingData */;
productType = "com.apple.product-type.tool";
};
31D7B7121E6B048100917757 /* test_rapidPiPo */ = {
isa = PBXNativeTarget;
buildConfigurationList = 31D7B7291E6B048100917757 /* Build configuration list for PBXNativeTarget "test_rapidPiPo" */;
buildPhases = (
31D7B7131E6B048100917757 /* Sources */,
31D7B7271E6B048100917757 /* Frameworks */,
31D7B7281E6B048100917757 /* CopyFiles */,
);
buildRules = (
);
dependencies = (
);
name = test_rapidPiPo;
productName = test_XMM;
productReference = 31D7B72C1E6B048100917757 /* test_rapidPiPo */;
productType = "com.apple.product-type.tool";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
BE325F291DB50BE100F199A8 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0910;
ORGANIZATIONNAME = Goldsmiths;
TargetAttributes = {
0BFFEF1A1E56082700EF19A5 = {
CreatedOnToolsVersion = 7.3.1;
};
0BFFEF251E56083C00EF19A5 = {
CreatedOnToolsVersion = 7.3.1;
};
0BFFEF301E56085C00EF19A5 = {
CreatedOnToolsVersion = 7.3.1;
};
0BFFEF3E1E5608C000EF19A5 = {
CreatedOnToolsVersion = 7.3.1;
};
};
};
buildConfigurationList = BE325F2C1DB50BE100F199A8 /* Build configuration list for PBXProject "test_project" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = BE325F281DB50BE100F199A8;
productRefGroup = BE325F321DB50BE100F199A8 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
0BFFEF1A1E56082700EF19A5 /* test_GVF */,
0BFFEF251E56083C00EF19A5 /* test_RapidLib */,
31D7B7121E6B048100917757 /* test_rapidPiPo */,
0BFFEF301E56085C00EF19A5 /* test_rapidXMM */,
0BFFEF3E1E5608C000EF19A5 /* test_signalProcessing */,
312C61B91FE95A680085E283 /* test_trainingData */,
);
};
/* End PBXProject section */
/* Begin PBXSourcesBuildPhase section */
0BFFEF171E56082700EF19A5 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
BE5733101F505FC80063F4D1 /* svmClassification.cpp in Sources */,
BE57330F1F505FBD0063F4D1 /* knnClassification.cpp in Sources */,
BE57330E1F505FAD0063F4D1 /* modelSet.cpp in Sources */,
BE57330D1F505FAA0063F4D1 /* classification.cpp in Sources */,
BE57330C1F505F9B0063F4D1 /* neuralNetwork.cpp in Sources */,
BE57330A1F505F870063F4D1 /* regression.cpp in Sources */,
BE57330B1F505F920063F4D1 /* dtw.cpp in Sources */,
BEF47B1B1F7A74E5005B0C35 /* searchWindow.cpp in Sources */,
BE92864C1EF015E7006847CF /* rapidStream.cpp in Sources */,
BE5733091F505F7F0063F4D1 /* seriesClassification.cpp in Sources */,
0BA41BAE1EE6E10A00B74667 /* jsoncpp.cpp in Sources */,
0BE2E7381EE56F5800722712 /* GVF.cpp in Sources */,
0BE2E7371EE56F4F00722712 /* rapidGVF.cpp in Sources */,
BEF47B1E1F7A74EE005B0C35 /* fastDTW.cpp in Sources */,
BEF47B211F7A74FC005B0C35 /* warpPath.cpp in Sources */,
BEA7B7211EDD97130003E84B /* test_gvf.cpp in Sources */,
0BA41BAD1EE6E0ED00B74667 /* trainingData.cpp in Sources */,
BE5733061F505ECC0063F4D1 /* machineLearning.cpp in Sources */,
BE5733111F505FDC0063F4D1 /* libsvm.cpp in Sources */,
BE0AC6271FD1768D008056E6 /* BayesianFilter.cpp in Sources */,
BE0AC6281FD17690008056E6 /* filter_utilities.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF221E56083C00EF19A5 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
BEA7B7181EDD7C0E0003E84B /* test_RapidLib.cpp in Sources */,
BEA7B7161EDD7B700003E84B /* regression.cpp in Sources */,
BE92865A1EF01C4A006847CF /* dtw.cpp in Sources */,
BEA7B7151EDD7B6E0003E84B /* neuralNetwork.cpp in Sources */,
BEA7B7141EDD7B6B0003E84B /* modelSet.cpp in Sources */,
BE9286561EF01A2D006847CF /* seriesClassification.cpp in Sources */,
BEA7B7131EDD7B690003E84B /* knnClassification.cpp in Sources */,
BEA7B7121EDD7B660003E84B /* classification.cpp in Sources */,
BEA7B70F1EDD7B350003E84B /* machineLearning.cpp in Sources */,
BEA7B7101EDD7B390003E84B /* trainingData.cpp in Sources */,
BEA7B7171EDD7B7E0003E84B /* jsoncpp.cpp in Sources */,
BE9286511EF01801006847CF /* svmClassification.cpp in Sources */,
BE9286521EF01823006847CF /* libsvm.cpp in Sources */,
BE5733071F505F190063F4D1 /* rapidGVF.cpp in Sources */,
BE5733081F505F310063F4D1 /* GVF.cpp in Sources */,
BEF47B231F7A868B005B0C35 /* warpPath.cpp in Sources */,
BEF47B241F7A8693005B0C35 /* searchWindow.cpp in Sources */,
BEF47B221F7A8685005B0C35 /* fastDTW.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF2D1E56085C00EF19A5 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
31A8F1971F4ECF3300CA8CEC /* rapidXMM.cpp in Sources */,
311BA2A61EDC6A8900244DAC /* test_rapidXMM.cpp in Sources */,
311BA30F1EDC711E00244DAC /* trainingData.cpp in Sources */,
311BA2FE1EDC6FD000244DAC /* xmmKMeans.cpp in Sources */,
311BA2FF1EDC6FD000244DAC /* xmmKMeansParameters.cpp in Sources */,
311BA3001EDC6FD000244DAC /* xmmHierarchicalHmm.cpp in Sources */,
311BA3011EDC6FD000244DAC /* xmmHmmParameters.cpp in Sources */,
311BA3021EDC6FD000244DAC /* xmmHmmSingleClass.cpp in Sources */,
311BA3031EDC6FD000244DAC /* xmmGmm.cpp in Sources */,
311BA3041EDC6FD000244DAC /* xmmGmmParameters.cpp in Sources */,
311BA3051EDC6FD000244DAC /* xmmGmmSingleClass.cpp in Sources */,
311BA3061EDC6FD000244DAC /* xmmPhrase.cpp in Sources */,
311BA3071EDC6FD000244DAC /* xmmTrainingSet.cpp in Sources */,
311BA3081EDC6FD000244DAC /* xmmModelSharedParameters.cpp in Sources */,
311BA3091EDC6FD000244DAC /* xmmModelSingleClass.cpp in Sources */,
311BA30A1EDC6FD000244DAC /* xmmGaussianDistribution.cpp in Sources */,
311BA30B1EDC6FD000244DAC /* xmmAttribute.cpp in Sources */,
311BA30C1EDC6FD000244DAC /* xmmJson.cpp in Sources */,
311BA30D1EDC709900244DAC /* jsoncpp.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
0BFFEF3B1E5608C000EF19A5 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
BEA7B71B1EDD96090003E84B /* maxiFFT.cpp in Sources */,
BEA7B71C1EDD960F0003E84B /* maxiMFCC.cpp in Sources */,
BEA7B71D1EDD96140003E84B /* fft.cpp in Sources */,
BE9286491EF015AE006847CF /* test_signalProcessing.cpp in Sources */,
BEA7B71E1EDD963E0003E84B /* maximilian.cpp in Sources */,
BE92864D1EF01622006847CF /* rapidStream.cpp in Sources */,
BE0AC6251FD17669008056E6 /* BayesianFilter.cpp in Sources */,
BE0AC6261FD1766D008056E6 /* filter_utilities.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
312C61BA1FE95A680085E283 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
312C61D41FE95A8F0085E283 /* test_trainingData.cpp in Sources */,
312C61BD1FE95A680085E283 /* trainingData.cpp in Sources */,
312C61CD1FE95A680085E283 /* jsoncpp.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
31D7B7131E6B048100917757 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
319C94A51FC5C1200055BE40 /* finitedifferences.c in Sources */,
319C94A61FC5C1200055BE40 /* rta_bands.c in Sources */,
319C94A71FC5C1200055BE40 /* rta_biquad.c in Sources */,
319C94A81FC5C1200055BE40 /* rta_correlation.c in Sources */,
319C94A91FC5C1200055BE40 /* rta_cubic.c in Sources */,
319C94AA1FC5C1200055BE40 /* rta_dct.c in Sources */,
319C94AB1FC5C1200055BE40 /* rta_delta.c in Sources */,
319C94AC1FC5C1200055BE40 /* rta_fft.c in Sources */,
319C94AD1FC5C1200055BE40 /* rta_lifter.c in Sources */,
319C94AE1FC5C1200055BE40 /* rta_lpc.c in Sources */,
319C94AF1FC5C1200055BE40 /* rta_mel.c in Sources */,
319C94B11FC5C1200055BE40 /* rta_preemphasis.c in Sources */,
319C94B21FC5C1200055BE40 /* rta_psy.c in Sources */,
319C94B41FC5C1200055BE40 /* rta_window.c in Sources */,
319C94B51FC5C1200055BE40 /* rta_yin.c in Sources */,
319C94B61FC5C1200055BE40 /* rta_mean_variance.c in Sources */,
319C94B71FC5C1200055BE40 /* rta_moments.c in Sources */,
319C94B81FC5C1200055BE40 /* rta_selection.c in Sources */,
319C94B91FC5C1200055BE40 /* rta_svd.c in Sources */,
319C94BA1FC5C1200055BE40 /* rta_bpf.c in Sources */,
319C94BB1FC5C1200055BE40 /* rta_int.c in Sources */,
319C94BC1FC5C1200055BE40 /* rta_util.c in Sources */,
319C94A31FC5C0DE0055BE40 /* BayesianFilter.cpp in Sources */,
319C94A41FC5C0DE0055BE40 /* filter_utilities.cpp in Sources */,
319C94A21FC5C0C10055BE40 /* PiPoCollection.cpp in Sources */,
319C94A11FC5BFA80055BE40 /* PiPoHost.cpp in Sources */,
311BA3101EDC746F00244DAC /* test_rapidPiPo.cpp in Sources */,
311BA3111EDC747A00244DAC /* rapidPiPoHost.cpp in Sources */,
311BA31A1EDC7ADE00244DAC /* fft.cpp in Sources */,
311BA31B1EDC7ADE00244DAC /* maxiBark.cpp in Sources */,
311BA31C1EDC7ADE00244DAC /* maxiFFT.cpp in Sources */,
311BA31D1EDC7ADE00244DAC /* maxiMFCC.cpp in Sources */,
311BA31E1EDC7ADE00244DAC /* maximilian.cpp in Sources */,
311BA3251EDCE80B00244DAC /* jsoncpp.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
0BFFEF201E56082700EF19A5 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_WARN_INT_CONVERSION = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Debug;
};
0BFFEF211E56082700EF19A5 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_WARN_INT_CONVERSION = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = NO;
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
};
name = Release;
};
0BFFEF2B1E56083D00EF19A5 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_C_LANGUAGE_STANDARD = c11;
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
0BFFEF2C1E56083D00EF19A5 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_C_LANGUAGE_STANDARD = c11;
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
0BFFEF361E56085C00EF19A5 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
0BFFEF371E56085C00EF19A5 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
0BFFEF441E5608C000EF19A5 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
0BFFEF451E5608C000EF19A5 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
312C61D11FE95A680085E283 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
312C61D21FE95A680085E283 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
31D7B72A1E6B048100917757 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
31D7B72B1E6B048100917757 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
MACOSX_DEPLOYMENT_TARGET = 10.11;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
BE325F361DB50BE100F199A8 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "c++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
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_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
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;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
};
name = Debug;
};
BE325F371DB50BE100F199A8 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_CXX_LANGUAGE_STANDARD = "c++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
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_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
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;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MTL_ENABLE_DEBUG_INFO = NO;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
0BFFEF1F1E56082700EF19A5 /* Build configuration list for PBXNativeTarget "test_GVF" */ = {
isa = XCConfigurationList;
buildConfigurations = (
0BFFEF201E56082700EF19A5 /* Debug */,
0BFFEF211E56082700EF19A5 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
0BFFEF2A1E56083D00EF19A5 /* Build configuration list for PBXNativeTarget "test_RapidLib" */ = {
isa = XCConfigurationList;
buildConfigurations = (
0BFFEF2B1E56083D00EF19A5 /* Debug */,
0BFFEF2C1E56083D00EF19A5 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
0BFFEF351E56085C00EF19A5 /* Build configuration list for PBXNativeTarget "test_rapidXMM" */ = {
isa = XCConfigurationList;
buildConfigurations = (
0BFFEF361E56085C00EF19A5 /* Debug */,
0BFFEF371E56085C00EF19A5 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
0BFFEF431E5608C000EF19A5 /* Build configuration list for PBXNativeTarget "test_signalProcessing" */ = {
isa = XCConfigurationList;
buildConfigurations = (
0BFFEF441E5608C000EF19A5 /* Debug */,
0BFFEF451E5608C000EF19A5 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
312C61D01FE95A680085E283 /* Build configuration list for PBXNativeTarget "test_trainingData" */ = {
isa = XCConfigurationList;
buildConfigurations = (
312C61D11FE95A680085E283 /* Debug */,
312C61D21FE95A680085E283 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
31D7B7291E6B048100917757 /* Build configuration list for PBXNativeTarget "test_rapidPiPo" */ = {
isa = XCConfigurationList;
buildConfigurations = (
31D7B72A1E6B048100917757 /* Debug */,
31D7B72B1E6B048100917757 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
BE325F2C1DB50BE100F199A8 /* Build configuration list for PBXProject "test_project" */ = {
isa = XCConfigurationList;
buildConfigurations = (
BE325F361DB50BE100F199A8 /* Debug */,
BE325F371DB50BE100F199A8 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = BE325F291DB50BE100F199A8 /* Project object */;
}
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:RapidAPI.xcodeproj">
</FileRef>
</Workspace>
File added
//
// BarChart.cpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#include "BarChart.hpp"
BarChart::BarChart ( GraphState* state ) : RealTimeGraph (state)
{
//
}
BarChart::~BarChart ( void )
{
}
//
// BarChart.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef BarChart_hpp
#define BarChart_hpp
#include <stdio.h>
#include "RealTimeGraph.hpp"
class BarChart : public RealTimeGraph
{
public:
BarChart ( GraphState* state ) : RealTimeGraph (state)
{
//
}
~BarChart ( void )
{
//
}
void updateRep ( void )
{
//
}
void drawSubGraph ( std::string subLabel, DataContainer<std::vector<double>>& data, ofRectangle subLabelRect )
{
double
minIn = 0,
minOut = 0,
maxOut = -subLabelRect.height,
startPosY = subLabelRect.height,
barSize = subLabelRect.width/data.labelData.size(),
separation = barSize/16,
halfSeparation = separation/2;
bool drawZeroSep = false;
if (data.minValue < 0)
{ // Add negative part
startPosY = subLabelRect.height/2;
minIn = -data.maxValue;
minOut = subLabelRect.height/2;
maxOut /= 2;
drawZeroSep = true;
}
for (uint32_t i = 0; i < data.labelData.size(); ++i)
{
double output = mapVals(data.labelData[i], minIn, data.maxValue, minOut, maxOut );
ofSetColor (graphColor);
ofFill();
ofDrawRectangle(subLabelRect.x + barSize * i + halfSeparation, subLabelRect.y + startPosY, barSize - separation, output );
}
if (drawZeroSep)
{
ofSetLineWidth(1.25);
ofSetColor (175,150,150);
ofDrawLine(subLabelRect.x, subLabelRect.y + startPosY,
subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
}
}
void update ( void )
{
//
}
};
#endif /* BarChart_hpp */
//
// Graph.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef Graph_h
#define Graph_h
#include <string>
#include <vector>
#include <list>
#include "ofMain.h"
#include "ofxGui.h"
// TODO: add namespace, move funcs and struct to other header(s)
enum class TextAlignment {
LEFT,
CENTER,
RIGHT
};
static inline void drawTextLabel ( std::string label, ofVec2f position, ofColor labelBackgroundColor, ofColor stringColor, TextAlignment alignment, bool drawAbove )
{
uint32_t strLenPix = label.length()*8;
switch (alignment) {
case TextAlignment::LEFT:
// No exception
break;
case TextAlignment::CENTER:
position.x -= strLenPix / 2;
break;
case TextAlignment::RIGHT:
position.x -= strLenPix;
break;
default:
break;
}
ofSetColor (labelBackgroundColor);
ofRectangle bmpStringRect(position.x - 2,
position.y + ((drawAbove) ? -4 : 12) + 2,
strLenPix + 4, -12);
ofDrawRectangle(bmpStringRect);
ofSetColor (stringColor);
ofDrawBitmapString(label, position.x, position.y + ((drawAbove) ? -4 : 12));
}
static inline double mapVals ( double x, double in_min, double in_max, double out_min, double out_max )
{
return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}
template <typename T>
struct DataContainer {
T labelData;
double minValue = 0.0;
double maxValue = 1.0;
uint32_t iteratorPos = 0;
//ofColor graphColor;
void updateMinMax ( void )
{
auto mm = std::minmax_element(labelData.begin(), labelData.end());
double min = labelData[std::distance(labelData.begin(), mm.first)];
double max = labelData[std::distance(labelData.begin(), mm.second)];
if (min < minValue)
minValue = min;
if (max > maxValue)
maxValue = max;
if (fabs(min) > maxValue)
maxValue = fabs(min);
}
};
class Graph {
public:
enum graphLayout {
GRAPHS_STACKED,
GRAPHS_VERTICAL
};
struct GraphState {
std::string label;
graphLayout layout = graphLayout::GRAPHS_STACKED;
bool hasHistory = false;
ofRectangle positionAndSize;
uint32_t historySize;
};
Graph ( GraphState* state )
: state(state)
{
graphColor = ofColor(24, 219, 92);
textColor = ofColor(255, 157, 117);
}
virtual ~Graph ( void )
{
}
virtual void updateRep ( void ) = 0; // update representation
virtual void addData ( std::string subLabel, std::vector<double>& data ) = 0;
virtual void reset ( void ) = 0;
virtual void update ( void ) = 0;
virtual void draw ( void ) = 0;
virtual uint32_t getNumSubGraphs ( void ) const = 0;
protected:
GraphState *state = nullptr;
ofColor graphColor;
ofColor textColor;
};
#endif /* Graph_h */
//
// HistoryGraph.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef HistoryGraph_h
#define HistoryGraph_h
#include "Graph.hpp"
#include <list>
class HistoryGraph : public Graph
{
public:
HistoryGraph ( GraphState* state )
: Graph(state)
{
}
~HistoryGraph ( void )
{
}
virtual void updateRep ( void ) = 0; // update representation
virtual void drawSubGraph ( std::string subLabel, DataContainer<std::list<double>>& data, ofRectangle subLabelrect ) = 0;
virtual void update ( void ) = 0;
void addData ( std::string subLabel, std::vector<double>& data )
{
if (data.size() < state->historySize)
{
//FIXME: can be sped up by using the result of this search instead of accessing by[] again
if ( subLabelData.find(subLabel) == subLabelData.end() ) {
// not found
DataContainer<std::list<double>> container;
container.labelData.resize(state->historySize);
std::fill(container.labelData.begin(), container.labelData.end(), 0.0);
subLabelData[subLabel] = container;
}
DataContainer<std::list<double>>& dataRef = subLabelData[subLabel];
list<double>& referencedList = dataRef.labelData;
while (referencedList.size() + data.size() >= state->historySize)
{
referencedList.pop_front();
}
for (int32_t i = data.size()-1; i >= 0; --i)
{
double val = data[i];
if (val < dataRef.minValue)
dataRef.minValue = val;
if (val > dataRef.maxValue)
dataRef.maxValue = val;
if (fabs(val) > dataRef.maxValue)
dataRef.maxValue = fabs(val);
referencedList.push_back(val);
}
}
}
void reset ( void )
{
subLabelData.clear();
}
void draw ( void )
{
uint32_t numElements = subLabelData.size();
uint16_t heightBetweenSubLabels = state->positionAndSize.height/numElements;
uint16_t subLabelY = 0;
ofSetColor (graphColor);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y);
std::map<std::string, DataContainer<std::list<double>>>::iterator it;
for(it = subLabelData.begin(); it != subLabelData.end(); ++it)
{
std::string subLabel = it->first;
DataContainer<std::list<double>>& data = it->second;
drawSubGraph (subLabel, data, ofRectangle(state->positionAndSize.x,
state->positionAndSize.y + subLabelY,
state->positionAndSize.width,
heightBetweenSubLabels));
// Draw label and background
drawTextLabel(subLabel, ofVec2f(state->positionAndSize.x + state->positionAndSize.width,
state->positionAndSize.y + subLabelY),
ofColor(100, 100, 100), ofColor(textColor), TextAlignment::RIGHT, false);
// Draw max value
drawTextLabel(ofToString(data.maxValue),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, false);
// Increment Y position
subLabelY += heightBetweenSubLabels;
// Draw min value
// Show actual min value?
drawTextLabel(ofToString((data.minValue < 0) ? -data.maxValue : 0),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, true);
// Draw Line at bottom of graph
ofSetLineWidth(2.0);
ofSetColor (180,180,180);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y + subLabelY,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y + subLabelY);
}
}
uint32_t getNumSubGraphs ( void ) const
{
return subLabelData.size();
}
protected:
std::map <std::string, DataContainer<std::list<double>>> subLabelData;
};
#endif /* HistoryGraph_h */
//
// LineGraph.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef LineGraph_h
#define LineGraph_h
#include <stdio.h>
#include "RealTimeGraph.hpp"
class LineGraph : public RealTimeGraph
{
public:
LineGraph ( GraphState* state ) : RealTimeGraph (state)
{
//
}
~LineGraph ( void )
{
//
}
void updateRep ( void )
{
//
}
void drawSubGraph ( std::string subLabel, DataContainer<std::vector<double>>& data, ofRectangle subLabelRect )
{
double
minIn = 0,
minOut = 0,
maxOut = -subLabelRect.height,
startPosY = subLabelRect.height,
pointDistance = subLabelRect.width/data.labelData.size(),
separation = pointDistance/2;
//halfSeparation = separation/2;
bool drawZeroSep = false;
if (data.minValue < 0)
{ // Add negative part
startPosY = subLabelRect.height/2;
minIn = -data.maxValue;
minOut = subLabelRect.height/2;
maxOut /= 2;
drawZeroSep = true;
}
ofBeginShape();
ofFill();
ofVertex(subLabelRect.x, subLabelRect.y + startPosY);
double output = mapVals(data.labelData[0], minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x, subLabelRect.y + startPosY + output);
for (uint32_t i = 0; i < data.labelData.size(); ++i)
{
output = mapVals(data.labelData[i], minIn, data.maxValue, minOut, maxOut );
ofSetColor (graphColor);
ofVertex(subLabelRect.x + pointDistance * i + separation, subLabelRect.y + startPosY + output);
//ofDrawRectangle(subLabelRect.x + barSize * i + halfSeparation, subLabelRect.y + startPosY, barSize - separation, output );
}
output = mapVals(data.labelData[data.labelData.size()-1], minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY + output);
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
ofEndShape();
if (drawZeroSep)
{
ofSetLineWidth(1.25);
ofSetColor (175,150,150);
ofDrawLine(subLabelRect.x, subLabelRect.y + startPosY,
subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
}
}
void update ( void )
{
//
}
};
#endif /* LineGraph_h */
//
// LineGraphHistory.hpp
// RapidVisualizerOSC
//
// Created by James on 10/11/2017.
//
//
#ifndef LineGraphHistory_h
#define LineGraphHistory_h
#include <stdio.h>
#include "HistoryGraph.hpp"
class LineGraphHistory : public HistoryGraph
{
public:
LineGraphHistory ( GraphState* state ) : HistoryGraph (state)
{
//
}
~LineGraphHistory ( void )
{
//
}
void updateRep ( void )
{
//
}
void drawSubGraph ( std::string subLabel, DataContainer<std::list<double>>& data, ofRectangle subLabelRect )
{
double
minIn = 0,
minOut = 0,
maxOut = -subLabelRect.height,
startPosY = subLabelRect.height,
pointDistance = subLabelRect.width/data.labelData.size(),
separation = pointDistance/2;
//halfSeparation = separation/2;
bool drawZeroSep = false;
if (data.minValue < 0)
{ // Add negative part
startPosY = subLabelRect.height/2;
minIn = -data.maxValue;
minOut = subLabelRect.height/2;
maxOut /= 2;
drawZeroSep = true;
}
ofBeginShape();
ofFill();
ofVertex(subLabelRect.x, subLabelRect.y + startPosY);
double output = mapVals(data.labelData.front(), minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x, subLabelRect.y + startPosY + output);
uint32_t i = 0;
for (double d : data.labelData)
{
output = mapVals(d, minIn, data.maxValue, minOut, maxOut );
ofSetColor (graphColor);
ofVertex(subLabelRect.x + pointDistance * i + separation, subLabelRect.y + startPosY + output);
//ofDrawRectangle(subLabelRect.x + barSize * i + halfSeparation, subLabelRect.y + startPosY, barSize - separation, output );
++i;
}
output = mapVals(data.labelData.back(), minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY + output);
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
ofEndShape();
if (drawZeroSep)
{
ofSetLineWidth(1.25);
ofSetColor (175,150,150);
ofDrawLine(subLabelRect.x, subLabelRect.y + startPosY,
subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
}
}
void update ( void )
{
//
}
};
#endif /* LineGraphHistory_h */
//
// RapidVisualization.cpp
// RapidVisualizerOSC
//
// Created by James on 13/11/2017.
//
//
#include <stdio.h>
#include "RapidVisualization.hpp"
RapidVisualization::RapidVisualization ( void )
{
}
RapidVisualization::~RapidVisualization ( void )
{
std::map<std::string, RapidVisualizer*>::iterator it;
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
if (it->second)
delete it->second;
}
}
void RapidVisualization::setup ( ofRectangle posAndSize, uint32_t defaultHistorySize )
{
this->posAndSize = posAndSize;
this->defaultHistorySize = defaultHistorySize;
}
std::pair<std::string, std::string> RapidVisualization::getRoute(std::string& address)
{
std::pair<std::string, std::string> ret;
size_t delimPos = address.substr(1).find("/");
if (delimPos != std::string::npos)
{
delimPos += 1;
ret.first = address.substr(0, delimPos);
ret.second = address.substr(delimPos);
}
else
{
ret.first = address.substr(0, address.length());
ret.second = "/";
}
return ret;
}
void RapidVisualization::addData ( std::string& address, std::vector<double>& data )
{
std::pair<std::string, std::string> route = getRoute(address);
if ( visualizers.find(route.first) == visualizers.end() ) {
RapidVisualizer* ptr = visualizers[route.first] = new RapidVisualizer(); // Add new graph
ptr->setup(route.first, RapidVisualizer::LINE_GRAPH_WITH_HISTORY, defaultHistorySize, Graph::GRAPHS_STACKED, false, ofRectangle(0,0,100,100));
updateRep();
}
RapidVisualizer* rapidVizPtr = visualizers[route.first];
rapidVizPtr->addData(address, data);
}
void RapidVisualization::addData ( std::string& graphName, std::string& subGraphName, std::vector<double>& data )
{
if ( visualizers.find(graphName) == visualizers.end() ) {
RapidVisualizer* ptr = visualizers[graphName] = new RapidVisualizer(); // Add new graph
ptr->setup(graphName, RapidVisualizer::LINE_GRAPH_WITH_HISTORY, defaultHistorySize, Graph::GRAPHS_STACKED, false, ofRectangle(0,0,100,100));
updateRep();
}
RapidVisualizer* rapidVizPtr = visualizers[graphName];
rapidVizPtr->addData(subGraphName, data);
}
void RapidVisualization::reset ( void )
{
std::map<std::string, RapidVisualizer*>::iterator it;
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
if (it->second)
delete it->second;
}
visualizers.clear();
}
void RapidVisualization::update ( void )
{
uint32_t tempNumGraphs = 0;
bool resetCase = false; // This is terrible (stops jitter when selecting new graph type)
std::map<std::string, RapidVisualizer*>::iterator it;
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
it->second->update();
uint32_t tGraph = it->second->getNumGraphs();
if (tGraph == 0)
{
resetCase = true;
break;
}
tempNumGraphs += tGraph;
}
if (tempNumGraphs != numGraphs && !resetCase)
{
numGraphs = tempNumGraphs;
updateRep();
}
}
void RapidVisualization::draw ( void )
{
std::map<std::string, RapidVisualizer*>::iterator it;
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
it->second->draw();
}
if (!guiHidden)
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
it->second->drawMenu(posAndSize); // Stop menu being behind next graph
}
if (numGraphs == 0)
{
drawTextLabel("Waiting for OSC messages on port 8338", ofVec2f(posAndSize.x+posAndSize.width/2, posAndSize.y), ofColor(24, 219, 92), ofColor(255, 157, 117), TextAlignment::CENTER, false );
}
}
void RapidVisualization::setPos ( ofVec2f pos )
{
posAndSize.x = pos.x;
posAndSize.y = pos.y;
updateRep();
}
void RapidVisualization::setSize ( ofVec2f size )
{
posAndSize.width = size.x;
posAndSize.height = size.y;
updateRep();
}
void RapidVisualization::setPosAndSize ( ofRectangle posAndSize )
{
this->posAndSize = posAndSize;
updateRep();
}
void RapidVisualization::updateRep ( void )
{
double graphHeight = posAndSize.height/numGraphs; // Height of single graph
std::map<std::string, RapidVisualizer*>::iterator it;
double drawHeight = posAndSize.y;
double height;
for(it = visualizers.begin(); it != visualizers.end(); ++it)
{
height = it->second->getNumGraphs()*graphHeight;
it->second->setRect(ofRectangle(posAndSize.x,
drawHeight,
posAndSize.width,
height));
drawHeight += height;
}
}
void RapidVisualization::setGuiHidden ( bool guiHidden )
{
this->guiHidden = guiHidden;
}
//
// RapidVisualization.hpp
// RapidVisualizerOSC
//
// Created by James on 10/11/2017.
//
//
#ifndef RapidVisualization_h
#define RapidVisualization_h
#include "RapidVisualizer.hpp"
class RapidVisualization
{
public:
RapidVisualization ( void );
~RapidVisualization ( void );
void setup ( ofRectangle posAndSize, uint32_t defaultHistorySize=256 );
// Append multiple types of graphs to cycle through as new entry addresses are added
// Implement?
//RapidVisualizer* addGraphType ( RapidVisualizer::graphTypeRealtime graphType );
//RapidVisualizer* addGraphType ( RapidVisualizer::graphTypeWithHistory graphType, uint32_t historySize );
void addData ( std::string& address, std::vector<double>& data );
void addData ( std::string& graphName, std::string& subGraphName, std::vector<double>& data );
void reset ( void );
void update ( void );
void draw ( void );
void setPos ( ofVec2f pos );
void setSize ( ofVec2f size );
void setPosAndSize ( ofRectangle posAndSize );
void setGuiHidden ( bool guiHidden );
private:
bool guiHidden = false;
uint32_t numGraphs = 0;
std::map<std::string, RapidVisualizer*> visualizers;
ofRectangle posAndSize;
uint32_t defaultHistorySize;
std::pair<std::string, std::string> getRoute ( std::string& address );
void updateRep ( void );
};
#endif /* RapidVisualization_h */
//
// RapidVisualizer.cpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#include "RapidVisualizer.hpp"
RapidVisualizer::RapidVisualizer ( void )
{
uint32 initialHistorySize = 256;
minimumGui.setup();
expandedGui.setBackgroundColor(ofColor(0,0,0,127));
expandedGui.setup();
historySizeSlider.addListener(this, &RapidVisualizer::historySizeSliderChanged);
auto gNameRef = expandButton.setup(graphState.label, false);
expandButton.setBackgroundColor(ofColor(0, 0, 0, 127));
minimumGui.add(gNameRef);
expandedGui.add(graphTypesLabel.setup("Graph Type",""));
expandedGui.add(viewTypes[0].setup("Bar Chart", false));
expandedGui.add(viewTypes[1].setup("Line Graph", false));
expandedGui.add(viewTypes[2].setup("Line Graph History", false));
expandedGui.add(viewTypes[3].setup("Scope", false));
expandedGui.add(prefLabel.setup("Preferences",""));
expandedGui.add(splitArrayIntoGraphs.setup("Split Multiple Input", false));
expandedGui.add(historySizeSlider.setup("History Size", initialHistorySize, 4, 4096));
setHistory(initialHistorySize);
setLayout (Graph::GRAPHS_STACKED);
setSplitEachArgument (false);
setRect (ofRectangle(0,0,200,200));
}
RapidVisualizer::~RapidVisualizer ( void )
{
if (currentGraph)
{
delete currentGraph;
}
}
void RapidVisualizer::setup ( std::string label, graphTypeT graphType, Graph::graphLayout layout, bool splitEachArgument, ofRectangle positionAndSize )
{
setLabel (label);
setLayout (layout);
setSplitEachArgument (splitEachArgument);
setRect (positionAndSize);
setGraphType (graphType); // FIXME: Check if successfully initialized
}
void RapidVisualizer::setup ( std::string label, graphTypeT graphType, uint32_t historySize, Graph::graphLayout layout, bool splitEachArgument, ofRectangle positionAndSize )
{
setLabel (label);
setLayout (layout);
setSplitEachArgument (splitEachArgument);
setRect (positionAndSize);
setGraphType (graphType, historySize); // FIXME: Check if successfully initialized
}
void RapidVisualizer::setLabel ( std::string label )
{
graphState.label = label;
expandButton.setName(label);
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::setGraphType ( graphTypeT graphType )
{
if (currentGraphType != graphType)
{
if (currentGraph)
{
// TODO: add lock for when doing this, or have all types loaded?
delete currentGraph;
}
switch (graphType) {
case BAR_CHART:
currentGraph = new BarChart ( &graphState );
graphState.hasHistory = false;
break;
case LINE_GRAPH:
currentGraph = new LineGraph ( &graphState );
graphState.hasHistory = false;
break;
case LINE_GRAPH_WITH_HISTORY:
currentGraph = new LineGraphHistory ( &graphState );
graphState.hasHistory = true;
break;
case SCOPE:
currentGraph = new ScopeWithHistory ( &graphState );
graphState.hasHistory = true;
break;
default:
break;
}
currentGraphType = graphType;
}
}
void RapidVisualizer::setGraphType ( graphTypeT graphType, uint32_t historySize )
{
setHistory(historySize);
setGraphType(graphType);
}
void RapidVisualizer::setLayout ( Graph::graphLayout layout )
{
graphState.layout = layout;
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::setSplitEachArgument ( bool splitEachArgument )
{
this->splitEachArgument = splitEachArgument;
splitArrayIntoGraphs = splitEachArgument;
}
void RapidVisualizer::setPos ( ofVec2f pos )
{
graphState.positionAndSize.x = pos.x;
graphState.positionAndSize.y = pos.y;
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::setSize ( ofVec2f size )
{
graphState.positionAndSize.width = size.x;
graphState.positionAndSize.height = size.y;
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::setRect ( ofRectangle positionAndSize )
{
graphState.positionAndSize = positionAndSize;
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::setHistory( uint32_t historySize )
{
graphState.historySize = historySize;
historySizeSlider = historySize;
if (currentGraph)
currentGraph->updateRep();
}
void RapidVisualizer::historySizeSliderChanged (int32_t &val)
{
setHistory(val);
}
void RapidVisualizer::addData ( std::string subLabel, std::vector<double>& data )
{
if (currentGraph)
{
if (splitEachArgument && data.size() > 1)
{
int16_t currentIndex = 0;
std::vector<double> splitData;
for (double d : data)
{
splitData = {d};
currentGraph->addData (subLabel + ofToString(currentIndex), splitData);
++currentIndex;
}
}
else
currentGraph->addData (subLabel, data);
}
}
void RapidVisualizer::update ( void )
{
if (currentGraph)
{
currentGraph->update();
}
}
void RapidVisualizer::drawMenu ( ofRectangle mainPosAndSize )
{
minimumGui.setPosition(graphState.positionAndSize.x, graphState.positionAndSize.y);
minimumGui.draw();
if (menuActive)
{
double expandedGuiXPos = graphState.positionAndSize.x + minimumGui.getWidth();
double expandedGuiYPos = graphState.positionAndSize.y;
double mainYPlusHeight = mainPosAndSize.y + mainPosAndSize.height;
double check = expandedGuiYPos + expandedGui.getHeight() - mainYPlusHeight;
if (check > 0)
{
expandedGuiYPos -= check;
}
expandedGui.setPosition(expandedGuiXPos, expandedGuiYPos);
expandedGui.draw();
}
}
void RapidVisualizer::draw ( void )
{
if (currentGraph)
{
currentGraph->draw();
}
//drawMenu();
menuActive = expandButton;
if (menuActive)
{
bool noneActive = true;
for (uint8_t i = 0; i < NUMVIEWTYPES; ++i)
{
if (viewTypes[i] && !oldTypeToggles[i])
{
std::fill(viewTypes, viewTypes + NUMVIEWTYPES, false);
viewTypes[i] = true;
setGraphType(static_cast<graphTypeT>(i));
}
if (viewTypes[i])
noneActive = false;
oldTypeToggles[i] = viewTypes[i];
}
if (noneActive && currentGraphType != NOT_INITIALIZED)
{
viewTypes[currentGraphType] = true;
}
if (splitEachArgument != splitArrayIntoGraphs)
{
// Dirty, solution for now
if (currentGraph)
currentGraph->reset();
splitEachArgument = splitArrayIntoGraphs;
}
}
}
uint32_t RapidVisualizer::getNumGraphs ( void ) const
{
if (currentGraph)
{
return currentGraph->getNumSubGraphs();
} else {
return 0;
}
}
#undef NUMVIEWTYPES
//
// RapidVisualizer.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef RapidVisualizer_hpp
#define RapidVisualizer_hpp
#include <stdio.h>
#include <map>
#include "ofMain.h"
#include "Graph.hpp"
#include "BarChart.hpp"
#include "LineGraph.hpp"
#include "LineGraphHistory.hpp"
#include "ScopeWithHistory.hpp"
#define NUMVIEWTYPES 4
// TODO add historySize slider and init with default 256 or so
class RapidVisualizer {
public:
enum graphTypeT {
BAR_CHART,
LINE_GRAPH,
LINE_GRAPH_WITH_HISTORY,
SCOPE,
NOT_INITIALIZED
};
RapidVisualizer ( void );
~RapidVisualizer ( void );
void setup ( std::string label, graphTypeT graphType, Graph::graphLayout layout, bool splitEachArgument, ofRectangle positionAndSize );
void setup ( std::string label, graphTypeT graphType, uint32_t historySize, Graph::graphLayout layout, bool splitEachArgument, ofRectangle positionAndSize );
void setLabel ( std::string label );
void setGraphType ( graphTypeT graphType );
void setGraphType ( graphTypeT graphType, uint32_t historySize );
void setLayout ( Graph::graphLayout layout );
void setSplitEachArgument ( bool splitEachArgument );
void setPos ( ofVec2f pos );
void setSize ( ofVec2f size );
void setRect ( ofRectangle rect );
void setHistory ( uint32_t historySize );
void historySizeSliderChanged (int32_t &val);
void addData ( std::string subLabel, std::vector<double>& data );
void update ( void );
void drawMenu ( ofRectangle mainPosAndSize );
void draw ( void );
uint32_t getNumGraphs ( void ) const;
private:
graphTypeT currentGraphType = NOT_INITIALIZED;
Graph::GraphState graphState;
Graph* currentGraph = nullptr;
bool splitEachArgument = false;
bool menuActive = false;
ofxLabel graphName;
ofxLabel graphTypesLabel;
ofxLabel prefLabel;
ofxPanel minimumGui;
ofxToggle expandButton;
ofxPanel expandedGui;
ofxIntSlider historySizeSlider;
ofxToggle splitArrayIntoGraphs;
bool oldTypeToggles[NUMVIEWTYPES];
ofxToggle viewTypes[NUMVIEWTYPES];
};
#endif /* RapidVisualizer_hpp */
//
// RealTimeGraph.hpp
// RapidVisualizerOSC
//
// Created by James on 09/11/2017.
//
//
#ifndef RealTimeGraph_h
#define RealTimeGraph_h
#include <map>
#include <vector>
#include <string>
#include "Graph.hpp"
class RealTimeGraph : public Graph
{
public:
RealTimeGraph ( GraphState* state )
: Graph(state)
{
}
~RealTimeGraph ( void )
{
}
void addData ( std::string subLabel, std::vector<double>& data )
{
if ( subLabelData.find(subLabel) == subLabelData.end() ) {
// not found
subLabelData[subLabel] = DataContainer<std::vector<double>>();
}
subLabelData[subLabel].labelData = data;
subLabelData[subLabel].updateMinMax();
}
virtual void reset ( void )
{
subLabelData.clear();
}
virtual void updateRep ( void ) = 0; // update representation
virtual void drawSubGraph ( std::string subLabel, DataContainer<std::vector<double>>& data, ofRectangle subLabelrect ) = 0;
virtual void update ( void ) = 0;
void draw ( void )
{
uint32_t numElements = subLabelData.size();
uint16_t heightBetweenSubLabels = state->positionAndSize.height/numElements;
uint16_t subLabelY = 0;
ofSetColor (255,255,255);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y);
std::map<std::string, DataContainer<std::vector<double>>>::iterator it;
for(it = subLabelData.begin(); it != subLabelData.end(); ++it)
{
std::string subLabel = it->first;
DataContainer<std::vector<double>>& data = it->second;
drawSubGraph (subLabel, data, ofRectangle(state->positionAndSize.x,
state->positionAndSize.y + subLabelY,
state->positionAndSize.width,
heightBetweenSubLabels));
// Draw label and background
drawTextLabel(subLabel, ofVec2f(state->positionAndSize.x + state->positionAndSize.width,
state->positionAndSize.y + subLabelY),
ofColor(100, 100, 100), ofColor(textColor), TextAlignment::RIGHT, false);
// Draw max value
drawTextLabel(ofToString(data.maxValue),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, false);
// Increment Y position
subLabelY += heightBetweenSubLabels;
// Draw min value
// Could show actually found min value
drawTextLabel(ofToString((data.minValue < 0) ? -data.maxValue : 0),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, true);
// Draw Line at bottom of graph
ofSetLineWidth(2.0);
ofSetColor (180,180,180);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y + subLabelY,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y + subLabelY);
}
}
uint32_t getNumSubGraphs ( void ) const
{
return subLabelData.size();
}
protected:
std::map <std::string, DataContainer<std::vector<double>>> subLabelData;
};
#endif /* RealTimeGraph_h */
//
// ScopeWithHistory.hpp
// RapidVisualizerOSC
//
// Created by James on 12/11/2017.
//
//
#ifndef ScopeWithHistory_h
#define ScopeWithHistory_h
#include <stdio.h>
#include "Graph.hpp"
class ScopeWithHistory : public Graph
{
public:
ScopeWithHistory ( GraphState* state ) : Graph (state)
{
//
}
~ScopeWithHistory ( void )
{
//
}
void addData ( std::string subLabel, std::vector<double>& data )
{
if (data.size() < state->historySize)
{
//FIXME: can be sped up by using the result of this search instead of accessing by[] again
if ( subLabelData.find(subLabel) == subLabelData.end() ) {
// not found
DataContainer<std::vector<double>> container;
container.labelData.resize(state->historySize);
std::fill(container.labelData.begin(), container.labelData.end(), 0.0);
subLabelData[subLabel] = container;
}
DataContainer<std::vector<double>>& dataRef = subLabelData[subLabel];
std::vector<double>& referencedList = dataRef.labelData;
while (referencedList.size() >= state->historySize)
{
referencedList.pop_back();
}
for (int32_t i = data.size()-1; i >= 0; --i)
{
double val = data[i];
if (val < dataRef.minValue)
dataRef.minValue = val;
if (val > dataRef.maxValue)
dataRef.maxValue = val;
if (fabs(val) > dataRef.maxValue)
dataRef.maxValue = fabs(val);
if (referencedList.size() + data.size() >= state->historySize)
{
referencedList[dataRef.iteratorPos] = val;
dataRef.iteratorPos = (dataRef.iteratorPos + data.size()) % state->historySize;
} else {
referencedList.insert(referencedList.begin(), val);
}
}
}
}
void updateRep ( void )
{
//
}
void drawSubGraph ( std::string subLabel, DataContainer<std::vector<double>>& data, ofRectangle subLabelRect )
{
double
minIn = 0,
minOut = 0,
maxOut = -subLabelRect.height,
startPosY = subLabelRect.height,
pointDistance = subLabelRect.width/data.labelData.size(),
separation = pointDistance/2;
//halfSeparation = separation/2;
bool drawZeroSep = false;
if (data.minValue < 0)
{ // Add negative part
startPosY = subLabelRect.height/2;
minIn = -data.maxValue;
minOut = subLabelRect.height/2;
maxOut /= 2;
drawZeroSep = true;
}
ofBeginShape();
ofFill();
ofVertex(subLabelRect.x, subLabelRect.y + startPosY);
double output = mapVals(data.labelData.front(), minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x, subLabelRect.y + startPosY + output);
uint32_t i = 0;
for (double d : data.labelData)
{
output = mapVals(d, minIn, data.maxValue, minOut, maxOut );
ofSetColor (graphColor);
ofVertex(subLabelRect.x + pointDistance * i + separation, subLabelRect.y + startPosY + output);
//ofDrawRectangle(subLabelRect.x + barSize * i + halfSeparation, subLabelRect.y + startPosY, barSize - separation, output );
++i;
}
output = mapVals(data.labelData.back(), minIn, data.maxValue, minOut, maxOut );
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY + output);
ofVertex(subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
ofEndShape();
if (drawZeroSep)
{
ofSetLineWidth(1.25);
ofSetColor (175,150,150);
ofDrawLine(subLabelRect.x, subLabelRect.y + startPosY,
subLabelRect.x + subLabelRect.width, subLabelRect.y + startPosY);
}
}
void update ( void )
{
//
}
void reset ( void )
{
subLabelData.clear();
}
void draw ( void )
{
uint32_t numElements = subLabelData.size();
uint16_t heightBetweenSubLabels = state->positionAndSize.height/numElements;
uint16_t subLabelY = 0;
ofSetColor (255,255,255);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y);
std::map<std::string, DataContainer<std::vector<double>>>::iterator it;
for(it = subLabelData.begin(); it != subLabelData.end(); ++it)
{
std::string subLabel = it->first;
DataContainer<std::vector<double>>& data = it->second;
drawSubGraph (subLabel, data, ofRectangle(state->positionAndSize.x,
state->positionAndSize.y + subLabelY,
state->positionAndSize.width,
heightBetweenSubLabels));
// Draw label and background
drawTextLabel(subLabel, ofVec2f(state->positionAndSize.x + state->positionAndSize.width,
state->positionAndSize.y + subLabelY),
ofColor(100, 100, 100), ofColor(textColor), TextAlignment::RIGHT, false);
// Draw max value
drawTextLabel(ofToString(data.maxValue),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, false);
// Increment Y position
subLabelY += heightBetweenSubLabels;
// Draw min value
// Show actual min value?
drawTextLabel(ofToString((data.minValue < 0) ? -data.maxValue : 0),
ofVec2f(state->positionAndSize.x + state->positionAndSize.width/2,
state->positionAndSize.y + subLabelY),
ofColor(50, 50, 50), ofColor(255, 255, 255), TextAlignment::CENTER, true);
// Draw Line at bottom of graph
ofSetLineWidth(2.0);
ofSetColor (180,180,180);
ofDrawLine(state->positionAndSize.x, state->positionAndSize.y + subLabelY,
state->positionAndSize.x + state->positionAndSize.width, state->positionAndSize.y + subLabelY);
}
}
uint32_t getNumSubGraphs ( void ) const
{
return subLabelData.size();
}
protected:
std::map <std::string, DataContainer<std::vector<double>>> subLabelData;
};
#endif /* ScopeWithHistory_h */
#include "ofMain.h"
#include "ofApp.h"
//========================================================================
int main( ){
ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context
// this kicks off the running of my app
// can be OF_WINDOW or OF_FULLSCREEN
// pass in width and height too:
ofRunApp(new ofApp());
}
#include "ofApp.h"
//--------------------------------------------------------------
void ofApp::setup(){
receiver.setup ( PORT );
rv.setup(ofRectangle(0,0,1024,768));
current_msg_string = 0;
ofBackground(30, 30, 30);
}
//--------------------------------------------------------------
void ofApp::update(){
static float a = 0;
while( receiver.hasWaitingMessages() )
{
ofxOscMessage m;
receiver.getNextMessage(m);
std::string address = m.getAddress();
std::vector<double> values;
for ( int i=0; i<m.getNumArgs(); i++ )
{
double value = 0.0;
// display the argument - make sure we get the right type
if( m.getArgType( i ) == OFXOSC_TYPE_INT32 )
value = static_cast<double>( m.getArgAsInt32( i ) );
else if( m.getArgType( i ) == OFXOSC_TYPE_INT64 )
value = static_cast<double>( m.getArgAsInt64( i ) );
else if( m.getArgType( i ) == OFXOSC_TYPE_FLOAT )
value = static_cast<double>( m.getArgAsFloat( i ) );
else if( m.getArgType( i ) == OFXOSC_TYPE_DOUBLE)
value = static_cast<double>( m.getArgAsDouble( i ) );
else
printf("Unknown datatype\n");
values.push_back(value);
}
rv.addData(address, values);
}
rv.update();
}
//--------------------------------------------------------------
void ofApp::draw(){
ofBackgroundGradient(ofColor(0,0,0), ofColor(10,10,10));
rv.draw();
}
//--------------------------------------------------------------
void ofApp::keyPressed(int key){
if(key == 'h'){
guiHide = !guiHide;
rv.setGuiHidden(guiHide);
}
if(key == 'c'){
rv.reset();
}
if(key == 'm'){
// Show main menu
}
}
//--------------------------------------------------------------
void ofApp::keyReleased(int key){
}
//--------------------------------------------------------------
void ofApp::mouseMoved(int x, int y ){
}
//--------------------------------------------------------------
void ofApp::mouseDragged(int x, int y, int button){
}
//--------------------------------------------------------------
void ofApp::mousePressed(int x, int y, int button){
}
//--------------------------------------------------------------
void ofApp::mouseReleased(int x, int y, int button){
}
//--------------------------------------------------------------
void ofApp::mouseEntered(int x, int y){
}
//--------------------------------------------------------------
void ofApp::mouseExited(int x, int y){
}
//--------------------------------------------------------------
void ofApp::windowResized(int w, int h){
rv.setSize(ofVec2f(w, h));
}
//--------------------------------------------------------------
void ofApp::gotMessage(ofMessage msg){
}
//--------------------------------------------------------------
void ofApp::dragEvent(ofDragInfo dragInfo){
}
#pragma once
#include "ofMain.h"
#include "ofxOsc.h"
#include "RapidVisualization.hpp"
#define PORT 8338
#define NUM_MSG_STRINGS 20
class ofApp : public ofBaseApp{
public:
void setup();
void update();
void draw();
void keyPressed(int key);
void keyReleased(int key);
void mouseMoved(int x, int y );
void mouseDragged(int x, int y, int button);
void mousePressed(int x, int y, int button);
void mouseReleased(int x, int y, int button);
void mouseEntered(int x, int y);
void mouseExited(int x, int y);
void windowResized(int w, int h);
void dragEvent(ofDragInfo dragInfo);
void gotMessage(ofMessage msg);
private:
bool guiHide = false;
RapidVisualization rv;
ofxOscReceiver receiver;
int current_msg_string;
std::string msg_strings[NUM_MSG_STRINGS];
float timers[NUM_MSG_STRINGS];
};