changeset 118:36bfbc606642

Move kernel include (not public) to src, remove some unused files
author Chris Cannam <c.cannam@qmul.ac.uk>
date Thu, 15 May 2014 12:06:31 +0100
parents 930ff4ce4018
children a38d6940f8fb
files cpp-qm-dsp/.keep cpp-standalone/.keep cq/CQKernel.h misc/yeti/nbproject/ide-file-targets.xml misc/yeti/nbproject/project.xml src/CQKernel.h
diffstat 4 files changed, 82 insertions(+), 182 deletions(-) [+]
line wrap: on
line diff
--- a/cq/CQKernel.h	Thu May 15 12:04:56 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
-/*
-    Constant-Q library
-    Copyright (c) 2013-2014 Queen Mary, University of London
-
-    Permission is hereby granted, free of charge, to any person
-    obtaining a copy of this software and associated documentation
-    files (the "Software"), to deal in the Software without
-    restriction, including without limitation the rights to use, copy,
-    modify, merge, publish, distribute, sublicense, and/or sell copies
-    of the Software, and to permit persons to whom the Software is
-    furnished to do so, subject to the following conditions:
-
-    The above copyright notice and this permission notice shall be
-    included in all copies or substantial portions of the Software.
-
-    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
-    CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-    WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-    Except as contained in this notice, the names of the Centre for
-    Digital Music; Queen Mary, University of London; and Chris Cannam
-    shall not be used in advertising or otherwise to promote the sale,
-    use or other dealings in this Software without prior written
-    authorization.
-*/
-
-#ifndef CQ_KERNEL_H
-#define CQ_KERNEL_H
-
-#include <vector>
-#include <complex>
-
-class FFT;
-
-class CQKernel
-{
-public:
-    CQKernel(double sampleRate, double maxFreq, int binsPerOctave);
-    ~CQKernel();
-    
-    struct Properties {
-        double sampleRate;
-        double maxFrequency;
-        double minFrequency;
-        int binsPerOctave;
-        int fftSize;
-        int fftHop;
-        int atomsPerFrame;
-        int atomSpacing;
-        int firstCentre;
-        int lastCentre;
-        double Q;
-    };
-
-    Properties getProperties() const { return m_p; }
-
-    std::vector<std::complex<double> > processForward
-        (const std::vector<std::complex<double> > &);
-
-    std::vector<std::complex<double> > processInverse
-        (const std::vector<std::complex<double> > &);
-
-private:
-    Properties m_p;
-    FFT *m_fft;
-
-    struct KernelMatrix {
-        std::vector<int> origin;
-        std::vector<std::vector<std::complex<double> > > data;
-    };
-    KernelMatrix m_kernel;
-
-    void generateKernel();
-    void finaliseKernel();
-};
-
-#endif
--- a/misc/yeti/nbproject/ide-file-targets.xml	Thu May 15 12:04:56 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project basedir=".." name="cqt-IDE">
-    <!-- TODO: edit the following target according to your needs -->
-    <!-- (more info: http://www.netbeans.org/kb/articles/freeform-config.html#debugj2se) -->
-    <property name="maydir" value="${basedir}/../../may"/>
-    <property name="yetidir" value="${basedir}/../../yeti"/>
-    <property name="jardir" value="${maydir}/ext/jar"/>
-        <path id="cp">
-            <fileset dir="${basedir}">
-                <include name="cqt.jar"/>
-            </fileset>
-            <fileset dir="${jardir}">
-                <include name="*.jar"/>
-            </fileset>
-            <fileset dir="${yetidir}">
-                <include name="yeti.jar"/>
-            </fileset>
-            <fileset dir="${maydir}">
-                <include name="may.jar"/>
-            </fileset>
-        </path>
-    <target name="debug-nb">
-        <nbjpdastart addressproperty="jpda.address" name="cqt" transport="dt_socket">
-            <classpath refid="cp"/>
-        </nbjpdastart>
-        <!-- TODO configure the main class for your project here: -->
-        <java classname="plotfile" fork="true">
-            <classpath refid="cp"/>
-            <jvmarg value="-Xdebug"/>
-            <jvmarg value="-Xrunjdwp:transport=dt_socket,address=${jpda.address}"/>
-            <arg value="${basedir}/test.wav"/>
-        </java>
-    </target>
-    <target name="-profile-check">
-        <startprofiler freeform="true"/>
-    </target>
-    <!-- TODO: edit the following target according to your needs -->
-    <!-- (more info: http://netbeans.org/kb/articles/freeform-config.html#profilej2se) -->
-    <target depends="-profile-check" if="profiler.configured" name="profile-nb">
-        <!-- TODO configure the main class for your project here: -->
-        <java classname="plotfile" fork="true">
-            <classpath refid="cp"/>
-            <jvmarg line="${agent.jvmargs}"/>
-            <arg value="${basedir}/test.wav"/>
-        </java>
-    </target>
-</project>
--- a/misc/yeti/nbproject/project.xml	Thu May 15 12:04:56 2014 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://www.netbeans.org/ns/project/1">
-    <type>org.netbeans.modules.ant.freeform</type>
-    <configuration>
-        <general-data xmlns="http://www.netbeans.org/ns/freeform-project/1">
-            <!-- Do not use Project Properties customizer when editing this file manually. 
- To prevent the customizer from showing, create nbproject/project.properties file and enter 
-auxiliary.show.customizer=false 
-property there. Adding 
-auxiliary.show.customizer.message=<message>
- will show your customized message when someone attempts to open the customizer.  -->
-            <name>cqt</name>
-            <properties/>
-            <folders/>
-            <ide-actions>
-                <action name="build">
-                    <target>jar</target>
-                </action>
-                <action name="clean">
-                    <target>clean</target>
-                </action>
-                <action name="rebuild">
-                    <target>clean</target>
-                    <target>jar</target>
-                </action>
-                <action name="debug">
-                    <script>nbproject/ide-file-targets.xml</script>
-                    <target>debug-nb</target>
-                </action>
-                <action name="profile">
-                    <script>nbproject/ide-file-targets.xml</script>
-                    <target>profile-nb</target>
-                </action>
-            </ide-actions>
-            <view>
-                <items>
-                    <source-file>
-                        <location>build.xml</location>
-                    </source-file>
-                </items>
-                <context-menu>
-                    <ide-action name="build"/>
-                    <ide-action name="rebuild"/>
-                    <ide-action name="clean"/>
-                    <ide-action name="debug"/>
-                    <ide-action name="profile"/>
-                </context-menu>
-            </view>
-            <subprojects/>
-        </general-data>
-        <java-data xmlns="http://www.netbeans.org/ns/freeform-project-java/1"/>
-    </configuration>
-</project>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/CQKernel.h	Thu May 15 12:06:31 2014 +0100
@@ -0,0 +1,82 @@
+/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
+/*
+    Constant-Q library
+    Copyright (c) 2013-2014 Queen Mary, University of London
+
+    Permission is hereby granted, free of charge, to any person
+    obtaining a copy of this software and associated documentation
+    files (the "Software"), to deal in the Software without
+    restriction, including without limitation the rights to use, copy,
+    modify, merge, publish, distribute, sublicense, and/or sell copies
+    of the Software, and to permit persons to whom the Software is
+    furnished to do so, subject to the following conditions:
+
+    The above copyright notice and this permission notice shall be
+    included in all copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+    NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+    CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+    WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+    Except as contained in this notice, the names of the Centre for
+    Digital Music; Queen Mary, University of London; and Chris Cannam
+    shall not be used in advertising or otherwise to promote the sale,
+    use or other dealings in this Software without prior written
+    authorization.
+*/
+
+#ifndef CQ_KERNEL_H
+#define CQ_KERNEL_H
+
+#include <vector>
+#include <complex>
+
+class FFT;
+
+class CQKernel
+{
+public:
+    CQKernel(double sampleRate, double maxFreq, int binsPerOctave);
+    ~CQKernel();
+    
+    struct Properties {
+        double sampleRate;
+        double maxFrequency;
+        double minFrequency;
+        int binsPerOctave;
+        int fftSize;
+        int fftHop;
+        int atomsPerFrame;
+        int atomSpacing;
+        int firstCentre;
+        int lastCentre;
+        double Q;
+    };
+
+    Properties getProperties() const { return m_p; }
+
+    std::vector<std::complex<double> > processForward
+        (const std::vector<std::complex<double> > &);
+
+    std::vector<std::complex<double> > processInverse
+        (const std::vector<std::complex<double> > &);
+
+private:
+    Properties m_p;
+    FFT *m_fft;
+
+    struct KernelMatrix {
+        std::vector<int> origin;
+        std::vector<std::vector<std::complex<double> > > data;
+    };
+    KernelMatrix m_kernel;
+
+    void generateKernel();
+    void finaliseKernel();
+};
+
+#endif