⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sofs_05.cc

📁 这是一个从音频信号里提取特征参量的程序
💻 CC
字号:
// file: $isip/class/io/SofSymbolTable/sofs_05.cc// version: //// isip include files//#include "SofSymbolTable.h"// method: convert//// arguments://  const SofSymbolTable& old_table: (input) symbol table to reference//  long old_index: (input) reference of symbol in old table//// return: a long index//// this method finds the index in the current symbol table based on an index// in an old symbol table//long SofSymbolTable::convert(const SofSymbolTable& old_table_a,			     long old_index_a) const {    // get the symbol name corresponding to the index  //  SysString old_name;    if (!old_table_a.getSymbol(old_name, old_index_a)) {    return NO_SYMB;  }    // get the index in the current table  //  return getIndex(old_name);}// method: convert//// arguments://  long old_index: (input) index of symbol in the old table//// return: a long index//// this method finds the index in the current object based on an index in// the transform vector. this works only when the transform vector has// been set up//long SofSymbolTable::convert(long old_index_a) const {  // make sure the transform vector has been set up  //    if (transform_d == (long*)NULL) {    Error::handle(name(), L"convert", ERR_NOVECT, __FILE__, __LINE__);    return NO_SYMB;  }  // check the range of the index  //  if ((old_index_a >= transform_size_d) || (old_index_a < 0)) {    Error::handle(name(), L"convert", ERR_SYMB, __FILE__, __LINE__);    return NO_SYMB;  }  // return the new index according to the transform vector  //  return transform_d[old_index_a];}// method: transformInit//// arguments://  const SofSymbolTable& old_table: (input) symbol table to reference//// return: a boolean value indicating status//// this method creates a transform vector between the old indexing scheme// and the new (current) object such that://  new_index = transform_d[old_index]//// this facilitates a fast conversion between the two schemes//boolean SofSymbolTable::transformInit(const SofSymbolTable& old_table_a) {  // setup the memory for the transform  //  transformDelete();  transform_size_d = old_table_a.table_size_d + 1;  transform_d = new long[transform_size_d];  MemoryManager::memset(transform_d, 0, transform_size_d * sizeof(long));    // find the conversion for each index  //  for (long i = 0; i < transform_size_d; i++) {    transform_d[i] = convert(old_table_a, i);  }    // exit gracefully  //  return true;}// method: transformDelete//// arguments: none//// return: a boolean value indicating status//// this method deletes the transform vector//boolean SofSymbolTable::transformDelete() {  // delete the memory  //  if (transform_d != (long*)NULL) {    delete [] transform_d;    transform_d = (long*)NULL;  }  // reset the size  //  transform_size_d = (long)0;    // exit gracefully  //  return true;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -