diff CollidoscopeApp/include/BufferToWaveRecorderNode.h @ 5:75b744078d66

added license
author Fiore Martin <f.martin@qmul.ac.uk>
date Wed, 13 Jul 2016 16:06:46 +0200
parents dd889fff8423
children 4dad0b810f18
line wrap: on
line diff
--- a/CollidoscopeApp/include/BufferToWaveRecorderNode.h	Wed Jul 13 12:31:37 2016 +0200
+++ b/CollidoscopeApp/include/BufferToWaveRecorderNode.h	Wed Jul 13 16:06:46 2016 +0200
@@ -1,3 +1,48 @@
+/*
+
+ Copyright (C) 2016  Queen Mary University of London 
+ Author: Fiore Martin
+
+ This file is part of Collidoscope.
+ 
+ Collidoscope is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ This file incorporates work covered by the following copyright and permission notice: 
+
+    Copyright (c) 2014, The Cinder Project
+
+    This code is intended to be used with the Cinder C++ library, http://libcinder.org
+
+    Redistribution and use in source and binary forms, with or without modification, are permitted provided that
+    the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice, this list of conditions and
+    the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
+    the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
+    WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+    PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+    ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+    TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+    HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+    NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+    POSSIBILITY OF SUCH DAMAGE.
+ 
+*/
+
 #pragma once
 
 #include "cinder/Cinder.h"
@@ -8,7 +53,7 @@
 
 #include "Messages.h"
 
-typedef std::shared_ptr<class BufferToWaveRecorderNode>	BufferToWaveRecorderNodeRef;
+typedef std::shared_ptr<class BufferToWaveRecorderNode> BufferToWaveRecorderNodeRef;
 
 typedef ci::audio::dsp::RingBufferT<RecordWaveMsg> RecordWaveMsgRingBuffer;
 
@@ -43,14 +88,14 @@
     void setNumSeconds(double numSeconds, bool shrinkToFit = false);
 
     //! Returns the length of the recording buffer in frames.
-    size_t		getNumFrames() const	{ return mRecorderBuffer.getNumFrames(); }
+    size_t      getNumFrames() const    { return mRecorderBuffer.getNumFrames(); }
     //! Returns the length of the recording buffer in seconds.
-    double		getNumSeconds() const;
+    double      getNumSeconds() const;
 
     //! \brief Returns a copy of the recored samples, up to the current write position.
     //!
     //! This method is non locking, and as such any resizing calls must be performed on the same thread or be otherwise synchronized.
-    ci::audio::BufferRef	getRecordedCopy() const;
+    ci::audio::BufferRef    getRecordedCopy() const;
 
     //! \brief Writes the currently recorded samples to a file at \a filePath
     //!
@@ -69,17 +114,17 @@
 
 
 protected:
-    void initialize()				override;
-    void process(ci::audio::Buffer *buffer)	override;
+    void initialize()               override;
+    void process(ci::audio::Buffer *buffer) override;
 
     void initBuffers(size_t numFrames);
 
     static const float kMinAudioVal; 
     static const float kMaxAudioVal;
 
-    ci::audio::BufferDynamic		mRecorderBuffer;
-    ci::audio::BufferDynamicRef		mCopiedBuffer;
-    std::atomic<uint64_t>	mLastOverrun;
+    ci::audio::BufferDynamic        mRecorderBuffer;
+    ci::audio::BufferDynamicRef     mCopiedBuffer;
+    std::atomic<uint64_t>   mLastOverrun;
 
     RecordWaveMsgRingBuffer mRingBuffer;