annotate doc/ModuleTemplate.h @ 30:5b1586a234f1

-More updates for EC2
author tomwalters
date Wed, 24 Feb 2010 15:08:55 +0000
parents e361baf69120
children c5f5e9569863
rev   line source
tomwalters@11 1 // Copyright #YEAR#, #AUTHOR_NAME#
tomwalters@11 2 //
tomwalters@11 3 // AIM-C: A C++ implementation of the Auditory Image Model
tomwalters@11 4 // http://www.acousticscale.org/AIMC
tomwalters@11 5 //
tomwalters@11 6 // This program is free software: you can redistribute it and/or modify
tomwalters@11 7 // it under the terms of the GNU General Public License as published by
tomwalters@11 8 // the Free Software Foundation, either version 3 of the License, or
tomwalters@11 9 // (at your option) any later version.
tomwalters@11 10 //
tomwalters@11 11 // This program is distributed in the hope that it will be useful,
tomwalters@11 12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
tomwalters@11 13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
tomwalters@11 14 // GNU General Public License for more details.
tomwalters@11 15 //
tomwalters@11 16 // You should have received a copy of the GNU General Public License
tomwalters@11 17 // along with this program. If not, see <http://www.gnu.org/licenses/>.
tomwalters@11 18
tomwalters@11 19 /*!
tomwalters@11 20 * \author #AUTHOR_NAME# <#AUTHOR_EMAIL_ADDRESS#>
tomwalters@11 21 * \date created #TODAYS_DATE#
tomwalters@11 22 * \version \$Id$
tomwalters@11 23 */
tomwalters@11 24
tomwalters@11 25 #ifndef AIMC_MODULES_#MODULE_TYPE_CAPS#_#MODULE_ID_CAPS#_H_
tomwalters@11 26 #define AIMC_MODULES_#MODULE_TYPE_CAPS#_#MODULE_ID_CAPS#_H_
tomwalters@11 27
tomwalters@11 28 #include "Support/Module.h"
tomwalters@11 29
tomwalters@11 30 namespace aimc {
tomwalters@11 31 class #MODULE_NAME# : public Module {
tomwalters@11 32 public:
tomwalters@11 33 explicit #MODULE_NAME#(Parameters *pParam);
tomwalters@11 34 virtual ~#MODULE_NAME#();
tomwalters@11 35
tomwalters@11 36 /*! \brief Process a buffer
tomwalters@11 37 */
tomwalters@11 38 virtual void Process(const SignalBank &input);
tomwalters@11 39
tomwalters@11 40 private:
tomwalters@11 41 /*! \brief Reset the internal state of the module
tomwalters@11 42 */
tomwalters@11 43 virtual void ResetInternal();
tomwalters@11 44
tomwalters@11 45 /*! \brief Prepare the module
tomwalters@11 46 * \param input Input signal
tomwalters@11 47 * \param output true on success false on failure
tomwalters@11 48 */
tomwalters@11 49 virtual bool InitializeInternal(const SignalBank &input);
tomwalters@11 50
tomwalters@11 51 float sample_rate_;
tomwalters@11 52 int buffer_length_;
tomwalters@11 53 int channel_count_;
tomwalters@11 54 };
tomwalters@11 55 } // namespace aimc
tomwalters@11 56
tomwalters@11 57 #endif // AIMC_MODULES_#MODULE_TYPE_CAPS#_#MODULE_ID_CAPS#_H_