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

📄 lat_comp_0.cc

📁 这是处理语音信号的程序
💻 CC
字号:
// file: lat_comp_0.cc//// isip include files//#include "lattice.h"#include "lattice_constants.h"// method: reduce_lattice_cc//// arguments://  Lattice*& new_lat: (output) the new compact reduced lattice //// return: a logical_1 indicating status//// this method reduces the lattice to a compact lattice//logical_1 Lattice::reduce_lattice_cc(Lattice*& new_lat_a) {    // define some local variables  //  int_4 node_count = (int_4)0;  int_4 arc_count = (int_4)0;  // memory manager  //  Memory_manager* manager = Link_list::get_manager_cc();    // initialize the lattice nodes of the new lattice to the size of  // the original lattice  //  Lattice_node** new_lnodes = new Lattice_node*[num_nodes_d];    // define a map into the new lattice from each node in the original  // lattice  //  int_4* map_list = new int_4[num_nodes_d];  for (int_4 i = 0; i < num_nodes_d; i++) {    map_list[i] = (int_4)-1;  }    // create the new lattice  //  if (new_lat_a != (Lattice*)NULL) {    delete new_lat_a;    new_lat_a = (Lattice*)NULL;  }  new_lat_a = new Lattice();    // set some lattice parameters  //  new_lat_a->lm_scale_d = lm_scale_d;  new_lat_a->word_penalty_d = word_penalty_d;  // copy the character strings  //  if (lang_model_d != (unsigned char*)NULL) {    new_lat_a->set_lang_model_cc(lang_model_d);  }  if (utterance_d != (unsigned char*)NULL) {    new_lat_a->set_utterance_cc(utterance_d);  }  if (model_set_d != (unsigned char*)NULL) {     new_lat_a->set_model_set_cc(model_set_d);  }  // set the start node of the new lattice to be the same as the start  // node of the original lattice  //  Lattice_node* new_lstart = manager->new_lat_cc();  new_lstart->set_word_cc(start_node_d->get_word_cc());  new_lat_a->start_node_d = new_lstart;    // place the start node at the first position in the new lattice  // array, update the map and increment count  //  new_lnodes[0] = new_lstart;  map_list[start_node_d->get_node_index_cc()] = (int_4)0;  node_count++;  // link all descendants of the lattice node  //  new_lstart->add_node_cc(start_node_d, new_lnodes, map_list,			  node_count, arc_count);  // set the number of nodes in the lattice  //  new_lat_a->num_nodes_d = node_count;  new_lat_a->num_arcs_d = arc_count;  // hash the nodes for the reduced lattice  //  for (int_4 i = 0; i < node_count; i++) {    new_lat_a->set_lat_node_cc(new_lnodes[i]);  }  // clean up memory  //  delete [] new_lnodes;  delete [] map_list;    // exit gracefully  //  return ISIP_TRUE;}

⌨️ 快捷键说明

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