From 324ea624724d8fa1ce203c120546cb09f1ef6a1d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20Zbyszy=C5=84ski?= <m.zbyszynski@gold.ac.uk>
Date: Thu, 18 May 2017 14:21:36 +0200
Subject: [PATCH] adding a file and organizing docs

---
 docs/rapidmix.doxyfile  |  12 ++++++------
 docs/rapidmix_small.png | Bin 0 -> 11271 bytes
 src/rapidmix.h          |  28 ++++++++++++++++++++++++++++
 3 files changed, 34 insertions(+), 6 deletions(-)
 create mode 100644 docs/rapidmix_small.png
 create mode 100644 src/rapidmix.h

diff --git a/docs/rapidmix.doxyfile b/docs/rapidmix.doxyfile
index 66eb95d..5368831 100644
--- a/docs/rapidmix.doxyfile
+++ b/docs/rapidmix.doxyfile
@@ -32,33 +32,33 @@ DOXYFILE_ENCODING      = UTF-8
 # title of most generated pages and in a few other places.
 # The default value is: My Project.
 
-PROJECT_NAME           = "Rapid-API-Internal"
+PROJECT_NAME           = "Rapid-Mix API"
 
 # The PROJECT_NUMBER tag can be used to enter a project or revision number. This
 # could be handy for archiving the generated documentation or if some version
 # control system is used.
 
-PROJECT_NUMBER         = "v0.2"
+PROJECT_NUMBER         = "v2.0.0"
 
 # Using the PROJECT_BRIEF tag one can provide an optional one line description
 # for a project that appears at the top of each page and should give viewer a
 # quick idea about the purpose of the project. Keep the description short.
 
-PROJECT_BRIEF          = "A simple library for interactive machine learning"
+PROJECT_BRIEF          = "A simple library for machine learning & signal processing"
 
 # With the PROJECT_LOGO tag one can specify a logo or an icon that is included
 # in the documentation. The maximum height of the logo should not exceed 55
 # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
 # the logo to the output directory.
 
-PROJECT_LOGO           = "rapidmix_small.png"
+PROJECT_LOGO           = "docs/rapidmix_small.png"
 
 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
 # into which the generated documentation will be written. If a relative path is
 # entered, it will be relative to the location where doxygen was started. If
 # left blank the current directory will be used.
 
-OUTPUT_DIRECTORY       = "docs_doxygen"
+OUTPUT_DIRECTORY       = "docs/doxygen"
 
 # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
 # directories (in 2 levels) under the output directory of each output format and
@@ -792,7 +792,7 @@ WARN_LOGFILE           =
 # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
 # Note: If this tag is empty the current directory is searched.
 
-INPUT                  = ./rapidmix_api
+INPUT                  = ./src
 
 # This tag can be used to specify the character encoding of the source files
 # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
diff --git a/docs/rapidmix_small.png b/docs/rapidmix_small.png
new file mode 100644
index 0000000000000000000000000000000000000000..9f3c0d9c99873b6c1d1f7be758738a18a9cc095d
GIT binary patch
literal 11271
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
Z5Yum9@@EqY_5Yl`Nr}sg)rc4b{x6N*kA46E

literal 0
HcmV?d00001

diff --git a/src/rapidmix.h b/src/rapidmix.h
new file mode 100644
index 0000000..3138488
--- /dev/null
+++ b/src/rapidmix.h
@@ -0,0 +1,28 @@
+/////////////////////////////////////////////////////////////////////////////
+//  ______            _     _       ___  ____         ___  ______ _____    //
+//  | ___ \          (_)   | |      |  \/  (_)       / _ \ | ___ \_   _|   //
+//  | |_/ /__ _ _ __  _  __| |______| .  . |___  __ / /_\ \| |_/ / | |     //
+//  |    // _` | '_ \| |/ _` |______| |\/| | \ \/ / |  _  ||  __/  | |     //
+//  | |\ \ (_| | |_) | | (_| |      | |  | | |>  <  | | | || |    _| |_    //
+//  \_| \_\__,_| .__/|_|\__,_|      \_|  |_/_/_/\_\ \_| |_/\_|    \___/    //
+//             | |                                                         //
+//             |_|                                                         //
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef rapidmix_h
+#define rapidmix_h
+
+#define RAPIDMIX_VERSION_MAJOR 2
+#define RAPIDMIX_VERSION_MINOR 0
+#define RAPIDMIX_VERSION_PATCH 0
+#define RAPIDMIX_VERSION "2.0.0"
+#define RAPIDMIX_REVISION "31-May-2017"
+
+#define RAPIDMIX_BEGIN_NAMESPACE namespace rapidmix {
+#define RAPIDMIX_END_NAMESPACE }
+
+#include "machineLearning.h"
+#include "trainingData.h"
+#include "signalProcessing.h"
+
+#endif
-- 
GitLab