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

📄 slev_07.cc

📁 这是一个从音频信号里提取特征参量的程序
💻 CC
字号:
// file: $isip/class/search/SearchLevel/slev_07.cc// version: $Id: slev_07.cc,v 1.7 2002/08/15 21:29:58 alphonso Exp $//// isip include files//#include "SearchLevel.h"// method: setBeam//// arguments://  float beam_threshold: (input) the desired beam threshold//// return: logical error status//// set the beam pruning threshold for this level//boolean SearchLevel::setBeam(float beam_threshold_a) {  // range check the beam threshold  //  if (beam_threshold_a >= 0.0) {    beam_threshold_d = beam_threshold_a;  }  else {    return Error::handle(name(), L"setBeam", Error::ARG, __FILE__,                         __LINE__);  }    // exit gracefully  //  return true;}// method: setContext//// arguments://  long left_context: (input) the left context lenght//  long right_context: (input) the right context length//// return: logical error status//// set the context lengths for this level//boolean SearchLevel::setContext(long left_context_a, long right_context_a) {  // range check the left and right context  //  if ((left_context_a >= 0) && (right_context_a >= 0)) {    left_context_d = left_context_a;    right_context_d = right_context_a;  }  else {    return Error::handle(name(), L"setContext", Error::ARG, __FILE__,                         __LINE__);  }  // exit gracefully  //  return true;}// method: setInstance//// arguments://  boolean use_instance_prune: (input) should this level use instance pruning//  long instance_threshold: (input) the desired instance threshold//// return: logical error status//// set the instance pruning parameters for this level//boolean SearchLevel::setInstance(boolean use_instance_prune_a,				 long instance_threshold_a) {  // set the instance pruning flag  //  use_instance_prune_d = use_instance_prune_a;  // range check the instance threshold  //  if (instance_threshold_a >= 0) {    instance_threshold_d = instance_threshold_a;  }  else {    return Error::handle(name(), L"setInstance", Error::ARG, __FILE__,                         __LINE__);  }    // exit gracefully  //  return true;}// method: setInstance//// arguments://  long instance_threshold: (input) the desired instance threshold//// return: logical error status//// set the instance pruning threshold for this level//boolean SearchLevel::setInstance(long instance_threshold_a) {  // range check the instance threshold  //  if (instance_threshold_a >= 0) {    instance_threshold_d = instance_threshold_a;  }  else {    return Error::handle(name(), L"setInstance", Error::ARG, __FILE__,                         __LINE__);  }    // exit gracefully  //  return true;}// method: setNSymbol//// arguments://  boolean use_nsymbol: (input) should this level use nsymbol probabilities//  long nsymbol_order: (input) the desired nsymbol order//// return: logical error status//// set the nsymbol parameters for this level//boolean SearchLevel::setNSymbol(boolean use_nsymbol_a,				long nsymbol_order_a) {  // set the nsymbol flag  //  use_nsymbol_d = use_nsymbol_a;  // range check the nsymbol order  //  if (nsymbol_order_a > 0) {    nsymbol_order_d = nsymbol_order_a;  }  else {    return Error::handle(name(), L"setNSymbol", Error::ARG, __FILE__,                         __LINE__);  }    // exit gracefully  //  return true;}// method: setNSymbol//// arguments://  long nsymbol_order: (input) the desired nsymbol order//// return: logical error status//// set the nsymbol order for this level//boolean SearchLevel::setNSymbol(long nsymbol_order_a) {  // range check the nsymbol order  //  if (nsymbol_order_a > 0) {    nsymbol_order_d = nsymbol_order_a;  }  else {    return Error::handle(name(), L"setNSymbol", Error::ARG, __FILE__,                         __LINE__);  }    // exit gracefully  //  return true;}// method: setNumSubGraphs//// arguments://  long num: (input) the number of subgraphs////  return: a boolean indicating status//boolean SearchLevel::setNumSubGraphs(long num_a) {  // make sure the number of sub graphs is greater than 0  //  if (num_a <= 0) {    String output(L"setNumSubgraphs - level ");    output.concat(level_index_d);    return Error::handle(name(), output, Error::ARG, __FILE__, __LINE__);      }    sub_graphs_d.setLength(num_a);  // set the memory allocation mode of each graph to be false  //  for (long i = 0; i < num_a; i++) {    sub_graphs_d(i).setAllocationMode(DstrBase::USER);  }  // exit gracefully  //  return true;}// method: getSymbolIndex//// arguments://  const SearchSymbol& input_symbol: (input) the symbol to lookup//// return: index of the input symbol, -1 if not found//// find the index of the given symbol//long SearchLevel::getSymbolIndex(const SearchSymbol& input_symbol_a) const {  // initialize the output index  //  long out_ind = -1;  // loop over the symbol table until the input symbol is found  //  long max_loops = symbol_table_d.length();  boolean found = false;    for (long i = 0; (i < max_loops) && !found; i++) {    if (symbol_table_d(i).eq(input_symbol_a)) {      out_ind = i;      found = true;    }  }  // return the index  //  return out_ind;}

⌨️ 快捷键说明

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