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

📄 angr_02.cc

📁 这是一个从音频信号里提取特征参量的程序
💻 CC
📖 第 1 页 / 共 3 页
字号:
    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }      // test the set feature method  //  if (!angr_03.setFeature(newid_00, feat_00, value_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.setFeature(newid_00, feat_01, value_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.setFeature(newid_01, feat_02, value_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.setFeature(newid_01, feat_03, value_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    // test the exists feature method  //  if (!angr_03.existsFeature(newid_00, feat_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_00, feat_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.existsFeature(newid_01, feat_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_01, feat_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // test the delete feature method  //  if (!angr_03.deleteFeature(newid_00, feat_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.deleteFeature(newid_01, feat_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_00, feat_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (angr_03.existsFeature(newid_00, feat_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.existsFeature(newid_01, feat_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (angr_03.existsFeature(newid_01, feat_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.setFeature(newid_00, feat_01, value_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.setFeature(newid_01, feat_03, value_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // test the get feature method  //  if (!angr_03.getFeature(newid_00, feat_00).eq(value_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_00, feat_01).eq(value_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_01, feat_02).eq(value_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_01, feat_03).eq(value_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // test the get feature names method  //  Vector<String> fnames;  if (!angr_03.getFeatureNames(newid_00, fnames)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (fnames.length() != 2) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!fnames.contains(&feat_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!fnames.contains(&feat_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }      if (!angr_03.getFeatureNames(newid_01, fnames)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (fnames.length() != 2) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!fnames.contains(&feat_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!fnames.contains(&feat_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // test the unset features method  //  if (!angr_03.unsetFeatures(newid_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.unsetFeatures(newid_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.getFeature(newid_00, feat_00).eq(String::EMPTY)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_00, feat_01).eq(String::EMPTY)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_01, feat_02).eq(String::EMPTY)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getFeature(newid_01, feat_03).eq(String::EMPTY)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // set the set feature method  //  if (!angr_03.setFeature(anno_06, feat_00, value_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.setFeature(anno_06, feat_01, value_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.setFeature(anno_07, feat_02, value_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.setFeature(anno_07, feat_03, value_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_00, feat_00)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_00, feat_01)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    if (!angr_03.existsFeature(newid_01, feat_02)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.existsFeature(newid_01, feat_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  // test the get annotation set by feature-value pair method  //  if (!angr_03.getAnnotationSetByFeature(feat_00, value_00, anno_list)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (anno_list.length() != 1) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }   if (anno_list.getFirst() != (Annotation*)anno_06) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getAnnotationSetByFeature(feat_01, value_01, anno_list)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (anno_list.length() != 1) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }   if (anno_list.getFirst() != (Annotation*)anno_06) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getAnnotationSetByFeature(feat_02, value_02, anno_list)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (anno_list.length() != 1) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }   if (anno_list.getFirst() != (Annotation*)anno_07) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.getAnnotationSetByFeature(feat_03, value_03, anno_list)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (anno_list.length() != 1) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }   if (anno_list.getFirst() != (Annotation*)anno_07) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }      // test the assign and copy constructor methods  //  AnnotationGraph angr_06;  AnnotationGraph angr_07(angr_03);    angr_06.assign(angr_03);  if (!angr_06.eq(angr_07)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.eq(angr_06)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_03.eq(angr_07)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }      // delete annotations  //  angr_06.getAnnotationSet(anno_list);  for (boolean more = anno_list.gotoFirst(); more;       more = anno_list.gotoNext()) {    angr_06.deleteAnnotation(anno_list.getCurr());  }    // clear the dynamically allocated anchors   //  angr_06.getAnchorSet(anchor_list);  for (boolean more = anchor_list.gotoFirst(); more;       more = anchor_list.gotoNext()) {    angr_06.deleteAnchor(anchor_list.getCurr());  }  // delete annotations  //  angr_07.getAnnotationSet(anno_list);  for (boolean more = anno_list.gotoFirst(); more;       more = anno_list.gotoNext()) {    angr_07.deleteAnnotation(anno_list.getCurr());  }    // clear the dynamically allocated anchors   //  angr_07.getAnchorSet(anchor_list);  for (boolean more = anchor_list.gotoFirst(); more;       more = anchor_list.gotoNext()) {    angr_07.deleteAnchor(anchor_list.getCurr());  }    // reset indentation  //  if (level_a > Integral::NONE) {    Console::decreaseIndention();  }    //---------------------------------------------------------------------  //  // 2. test the i/o methods  //  //---------------------------------------------------------------------  // set indentation  //  if (level_a > Integral::NONE) {    Console::put(L"testing i/o methods...\n");    Console::increaseIndention();   }    // test the i/o methods  //  String gname_04(L"AG2");  String gname_05(L"AG3");  String gtype_05(L"SWB4");  String gtype_06(L"SWB5");    AnnotationGraph angr_04(gname_04, gtype_05);  AnnotationGraph angr_05(gname_05, gtype_06);    // we need binary and text sof files  //  String tmp_filename0;  Integral::makeTemp(tmp_filename0);  String tmp_filename1;  Integral::makeTemp(tmp_filename1);  // open files in write mode  //  Sof tmp_file0;  tmp_file0.open(tmp_filename0, File::WRITE_ONLY, File::TEXT);  Sof tmp_file1;  tmp_file1.open(tmp_filename1, File::WRITE_ONLY, File::BINARY);  angr_03.write(tmp_file0, 0);  angr_03.write(tmp_file1, 0);    // close the files  //  tmp_file0.close();  tmp_file1.close();  // open the files in read mode  //  tmp_file0.open(tmp_filename0);  tmp_file1.open(tmp_filename1);  // read the anchor from the text/binary files  //  angr_04.read(tmp_file0, 0);    angr_05.read(tmp_file1, 0);  // close and  delete the temporary files  //  tmp_file0.close();  tmp_file1.close();    if (!angr_04.eq(angr_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }  if (!angr_05.eq(angr_03)) {    return Error::handle(name(), L"diagnose", Error::TEST, __FILE__, __LINE__);  }    // delete annotations  //  angr_03.getAnnotationSet(anno_list);  for (boolean more = anno_list.gotoFirst(); more;       more = anno_list.gotoNext()) {    angr_03.deleteAnnotation(anno_list.getCurr());  }    // clear the dynamically allocated anchors   //  angr_03.getAnchorSet(anchor_list);  for (boolean more = anchor_list.gotoFirst(); more;       more = anchor_list.gotoNext()) {    angr_03.deleteAnchor(anchor_list.getCurr());  }  // delete annotations  //  angr_04.getAnnotationSet(anno_list);  for (boolean more = anno_list.gotoFirst(); more;       more = anno_list.gotoNext()) {    angr_04.deleteAnnotation(anno_list.getCurr());  }    // clear the dynamically allocated anchors   //  angr_04.getAnchorSet(anchor_list);  for (boolean more = anchor_list.gotoFirst(); more;       more = anchor_list.gotoNext()) {    angr_04.deleteAnchor(anchor_list.getCurr());  }  // delete annotations  //  angr_05.getAnnotationSet(anno_list);  for (boolean more = anno_list.gotoFirst(); more;       more = anno_list.gotoNext()) {    angr_05.deleteAnnotation(anno_list.getCurr());  }    // clear the dynamically allocated anchors   //  angr_05.getAnchorSet(anchor_list);  for (boolean more = anchor_list.gotoFirst(); more;       more = anchor_list.gotoNext()) {    angr_05.deleteAnchor(anchor_list.getCurr());  }    // reset indentation  //  if (level_a > Integral::NONE) {    Console::decreaseIndention();  }    //---------------------------------------------------------------------  //  // 3. print completion message  //  //---------------------------------------------------------------------    // reset indentation  //  if (level_a > Integral::NONE) {    Console::decreaseIndention();  }    if (level_a > Integral::NONE) {    SysString output(L"diagnostics passed for class ");    output.concat(name());    output.concat(L"\n");    Console::put(output);  }  // exit gracefully  //  return true;}

⌨️ 快捷键说明

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