annotate trunk/doc/ModuleTemplate.h @ 316:66a23c0545b6

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