亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? priorityqueue.h

?? 這是一個從音頻信號里提取特征參量的程序
?? H
?? 第 1 頁 / 共 2 頁
字號:
// file: $isip/class/dstr/PriorityQueue/PriorityQueue.h// version: $Id: PriorityQueue.h,v 1.5 2002/08/13 14:19:43 alphonso Exp $//// make sure definitions are made only once//#ifndef ISIP_PRIORITY_QUEUE#define ISIP_PRIORITY_QUEUE// isip include files//#ifndef ISIP_DSTR_BASE#include <DstrBase.h>#endif#ifndef ISIP_LONG#include <Long.h>#endif#ifndef ISIP_STRING#include <String.h>#endif#ifndef ISIP_CHAR#include <Char.h>#endif#ifndef ISIP_CONSOLE#include <Console.h>#endif// forward class definitions//template<class TObject> class PriorityQueueDiagnose;// PriorityQueue: this class implements a standard priority queue// using a vector to implement the underlying heap data structure.//template<class TObject>class PriorityQueue : public DstrBase {    //---------------------------------------------------------------------------  //  // public constants  //  //---------------------------------------------------------------------------public:    // define the class name  //  static const String CLASS_NAME;  //----------------------------------------  //  // i/o related constants  //  //----------------------------------------      static const String DEF_PARAM;    //----------------------------------------  //  // default values and arguments  //  //----------------------------------------    // default values  //  static const long DEF_END_POS = -1;    // default arguments to methods  //    //----------------------------------------  //  // error codes  //  //----------------------------------------      //---------------------------------------------------------------------------  //  // protected data  //  //---------------------------------------------------------------------------protected:  // comparison function for the items in the priority queue  //  typedef Integral::COMPARE (*COMPARE_FUNC)(TObject* item1, TObject* item2);    // the internal structure of the priority queue  //  TObject** v_d;  // the allocation mode  //  ALLOCATION alloc_d;  // number of elements of this vector  //  Long length_d;  // the maximum number of elements  //  Long capacity_d;    // debugging parameters  //  static Integral::DEBUG debug_level_d;  // define the memory manager  //    static MemoryManager mgr_d;    //---------------------------------------------------------------------------  //  // required public methods  //  //---------------------------------------------------------------------------public:    // static methods:  //  the diagnose method is moved outside the class header file and  //  defined in the PriorityQueueDiagnose.h in order to avoid issues  //  with preprocessing of the diagnose code.  //  static const String& name();    // method: setDebug  //  static boolean setDebug(Integral::DEBUG debug_level) {    debug_level_d = debug_level;    return true;  }  // other debug methods  //  boolean debug(const unichar* message) const;       // destructor/constructor(s)  //  ~PriorityQueue();  PriorityQueue(ALLOCATION alloc = DEF_ALLOCATION);  PriorityQueue(const PriorityQueue<TObject>& copy_queue);  // assign method  //  boolean assign(const PriorityQueue<TObject>& copy_stack);    // method: operator=  //  PriorityQueue<TObject>& operator=(const PriorityQueue<TObject>& arg) {    assign(arg);    return *this;  }  // method: eq  //  boolean eq(const PriorityQueue<TObject>& arg) const;    // method: read  //  boolean read(Sof& sof, long tag) {    return read(sof, tag, name());  }  // method: write  //  boolean write(Sof& sof, long tag) const {    return write(sof, tag, name());  }  // method: sofSize  //  long sofSize() const {    return 0;  }  // method: read  //    boolean read(Sof& sof, long tag, const String& name) {    return Error::handle(name(), L"read", Error::ARG, __FILE__, __LINE__);  }  // method: write  //    boolean write(Sof& sof, long tag, const String& name) const {    return Error::handle(name(), L"write", Error::ARG, __FILE__, __LINE__);  }  // method: readData  //    boolean readData(Sof& sof, const String& pname = DEF_PARAM,		   long size = SofParser::FULL_OBJECT,                   boolean param = true,		   boolean nested = true) {    return Error::handle(name(), L"readData", Error::ARG, __FILE__, __LINE__);  }  // method: writeData  //    boolean writeData(Sof& sof, const String& pname = DEF_PARAM) const {    return Error::handle(name(), L"writeData", Error::ARG, __FILE__, __LINE__);  }  // method: new  //  static void* operator new(size_t size) {    return mgr_d.get();  }  // method: new[]  //  static void* operator new[](size_t size) {    return mgr_d.getBlock(size);  }  // method: delete  //  static void operator delete(void* ptr) {    mgr_d.release(ptr);  }  // method: delete[]  //  static void operator delete[](void* ptr) {    mgr_d.releaseBlock(ptr);  }  // method: setGrowSize  //  static boolean setGrowSize(long grow_size) {    return mgr_d.setGrow(grow_size);  }      // method: clear  //  boolean clear(Integral::CMODE cmode = Integral::DEF_CMODE);    //---------------------------------------------------------------------------  //  // class-specific public methods:  //  priority queue push, pop and top methods  //  //---------------------------------------------------------------------------  // method inserts an intem into the priority queue  //  boolean push(TObject* item, COMPARE_FUNC comp_func = compare);  // method removes the largest item from the priority queue  //  TObject* pop(TObject* item = (TObject*)NULL);    // method: top  //  const TObject* top() const;  TObject* top();    //---------------------------------------------------------------------------  //  // class-specific public methods:  //  size-related methods  //  //--------------------------------------------------------------------------  // method: isEmpty  //  boolean isEmpty() const {    return ((long)length_d == 0);  }  // method: length  //  long length() const {    return (long)length_d;  }  // method: getCapacity  //  long getCapacity() const {    return (long)capacity_d;  }    // resize methods  //  boolean setLength(long length, boolean preserve_values = true);  boolean setCapacity(long capacity, boolean preserve_values = true);  //---------------------------------------------------------------------------  //  // private methods  //  //---------------------------------------------------------------------------private:  //---------------------------------------------------------------------------  //  // class-specific public methods:  //  priority queue property methods  //  //---------------------------------------------------------------------------    // method: parent  //  long parent(long val) {    return (val - 1) / 2;  }  // method: left  //  long left(long val) {    return  (2 * val) + 1;  }  // method: right  //  long right(long val) {    return (2 * val) + 2;  }    //---------------------------------------------------------------------------  //  // class-specific public methods:  //  heap manipulation methods  //  //--------------------------------------------------------------------------   // this method evaluates the kernel for the input vectors  //  static Integral::COMPARE compare(TObject* item1, TObject* item2);    // method to reorder the heap and maintain the heap property  //  boolean heapify(long index, COMPARE_FUNC comp_func = compare);  // method to construct a heap out of an existing array  //  boolean buildHeap();  // method to sort an existing heap  //  boolean heapSort();  // method to access the heap based on the mode  //  TObject* accessByMode(TObject* item);};//-----------------------------------------------------------------------------//// we define non-integral constants at the end of class definition for// templates (for non-templates these are defined in the default constructor)//      //-----------------------------------------------------------------------------// constants: required constants such as the class name//template <class TObject>const String PriorityQueue<TObject>::CLASS_NAME(L"PriorityQueue");template <class TObject>const String PriorityQueue<TObject>::DEF_PARAM(L"values");// static instantiations: debug level//template <class TObject>Integral::DEBUG PriorityQueue<TObject>::debug_level_d = Integral::NONE;// static instantiations: the memory manager//template <class TObject>MemoryManager PriorityQueue<TObject>::mgr_d(sizeof(PriorityQueue<TObject>), CLASS_NAME);// below are all the methods for the Queue template class//      // ---------------------------------------------------------------------//// required static methods////----------------------------------------------------------------------// method: name//// arguments: none//// return: a static String& containing the class name//// this method returns the class name//template<class TObject>const String& PriorityQueue<TObject>::name() {    // create the static name string for this class and return it  //  static String cname(CLASS_NAME);  cname.clear();  cname.concat(CLASS_NAME);  cname.concat(L"<");  cname.concat(TObject::name());  cname.concat(L">");    // return the name  //  return cname;}// ---------------------------------------------------------------------//// required debug methods////----------------------------------------------------------------------// method: debug//// arguments://  unichar* message: (input) information message//// return: a boolean value indicating status//// this method dumps the contents of an object to the console// template<class TObject>boolean PriorityQueue<TObject>::debug(const unichar* message_a) const {  // declare temporary strings to hold class data  //  String output;  String value;  String param;  String numeric;    // dump the length  //  value.assign((long)length_d);  output.debugStr(name(), message_a, L"length_d", value);  Console::put(output);  // dump the capacity  //  value.assign((long)capacity_d);  output.debugStr(name(), message_a, L"capacity_d", value);  Console::put(output);  // dump the values  //  for (long i = 0; i < (long)length_d; i++) {    param.assign(L"v_d[");    value.assign(i);    param.concat(value);    param.concat(L"]");    output.debugStr(name(), message_a, param);    Console::put(output);    // increase indention    //    Console::increaseIndention();        // call the debug method of the element    //    if (v_d[i] != (TObject*)NULL) {      v_d[i]->debug(L"");    }    Console::decreaseIndention();  }    // exit gracefully  //   return true;}//------------------------------------------------------------------------//// required destructor/constructor(s)////-----------------------------------------------------------------------// method: destructor//// arguments: none//// return: none//template<class TObject>PriorityQueue<TObject>::~PriorityQueue() {  // free memory  //  clear(Integral::RELEASE);}// method: default constructor//// arguments://  ALLOCATION alloc: (input) the flag to specify whether or not the item//                     memory is allocated by the node itself//// return: none//template<class TObject>PriorityQueue<TObject>::PriorityQueue(ALLOCATION alloc_a) {  // initialize data  //   length_d = (long)0;  capacity_d = (long)0;  v_d = (TObject**)NULL;    // set the allocation flag  //  alloc_d = alloc_a;}// method: copy constructor//// arguments://  const PriorityQueue<TObject>& copy_queue: (input) the queue to copy//// return: none//template<class TObject>PriorityQueue<TObject>::PriorityQueue(const PriorityQueue<TObject>& copy_queue_a) {  // initialize data  //   length_d = (long)0;  capacity_d = (long)0;  v_d = (TObject**)NULL;    // call the assign method to copy the queue  //  assign(copy_queue_a);}//------------------------------------------------------------------------//// required assign methods////-------------------------------------------------------------------------// method: assign//// arguments://  const PriorityQueue<TObject>& copy_queue: (input) the queue to copy//// return: a boolean value indicating status//// this method copies the contents of the input to this queue//template<class TObject>boolean PriorityQueue<TObject>::assign(const PriorityQueue<TObject>& copy_queue_a) {  // resize the vector  //   if (!setLength(copy_queue_a.length(), false)) {    return Error::handle(name(), L"assign", Error::NOMEM, __FILE__, __LINE__);  }    // copy the data  //   for (long index = 0; index < (long)length_d; index++) {    v_d[index] = accessByMode(copy_queue_a.v_d[index]);  }  // exit gracefully  //  return true;}//------------------------------------------------------------------------//// required equality methods////------------------------------------------------------------------------// method: eq//// arguments://  const PriorityQueue<TObject>& compare_queue: (input) the queue to compare//// return: a boolean value indicating status//// this method compares two queues for equivalence. two queues are equivalent// if all corresponding items are equivalent//template<class TObject>boolean PriorityQueue<TObject>::eq(const PriorityQueue<TObject>& compare_queue_a) const {    // declare the output variable  //  boolean are_equal = true;  // two PriorityQueues can not be equivalent if they are of differing lengths  //  if ((long)length_d != (long)compare_queue_a.length_d) {        // set the break flag    //    are_equal = false;  }  // loop over each element and see if each is equivalent  //  for (long i = 0; are_equal && (i < (long)length_d); i++) {        // see if the current items are equal    //    if (alloc_d == SYSTEM) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu色噜噜精品一区| 亚洲高清视频的网址| 亚洲午夜激情网站| k8久久久一区二区三区| 日韩一区二区精品在线观看| 亚洲色图色小说| 国产麻豆欧美日韩一区| 欧美日韩高清影院| 18成人在线观看| 成人晚上爱看视频| 久久亚洲春色中文字幕久久久| 亚洲h精品动漫在线观看| av男人天堂一区| 欧美国产精品一区二区三区| 韩国女主播一区| 日韩欧美中文字幕精品| 亚洲国产日产av| 在线观看欧美黄色| 国产精品国产馆在线真实露脸 | 国产三级欧美三级| 日韩成人一级片| 欧美精品v国产精品v日韩精品| 日韩一区有码在线| 成人aa视频在线观看| 国产精品素人一区二区| 成人午夜电影小说| 1024精品合集| 99久久99久久免费精品蜜臀| 国产精品护士白丝一区av| 成人激情小说乱人伦| 日本一区二区高清| 成人激情黄色小说| 亚洲免费观看高清完整版在线| 99视频精品免费视频| 亚洲欧美福利一区二区| 色综合久久综合| 一区二区高清视频在线观看| 色噜噜夜夜夜综合网| 亚洲自拍都市欧美小说| 欧美日韩免费一区二区三区视频| 亚洲一区二区三区四区的 | 91美女在线看| 一区二区三区四区国产精品| 欧美午夜精品一区二区蜜桃| 亚洲二区在线视频| 日韩手机在线导航| 国产剧情一区二区| 国产精品久久影院| 欧美视频一区二区三区四区| 日日夜夜免费精品视频| 精品女同一区二区| 成人黄色大片在线观看| 一区二区三区在线视频免费观看| 欧美日韩dvd在线观看| 九九九精品视频| 椎名由奈av一区二区三区| 欧美色偷偷大香| 久久成人麻豆午夜电影| 国产精品久久久久久久久免费丝袜 | 欧美日韩免费高清一区色橹橹| 日韩电影一区二区三区四区| 久久久精品天堂| 一本色道久久综合亚洲91| 日韩激情在线观看| 欧美极品少妇xxxxⅹ高跟鞋| 欧美撒尿777hd撒尿| 国产乱码精品一区二区三区五月婷| 国产精品美女久久久久久2018| 欧美唯美清纯偷拍| 国产成人三级在线观看| 亚洲成人第一页| 中文字幕免费观看一区| 欧美一级二级在线观看| 99国产精品视频免费观看| 免费看黄色91| 亚洲一区二区三区自拍| 国产精品成人免费| 日韩三级免费观看| 91老师片黄在线观看| 国模大尺度一区二区三区| 亚洲一区二区欧美日韩 | 欧美xxx久久| 欧美日韩三级视频| 97成人超碰视| 国产一区二区福利| 同产精品九九九| 曰韩精品一区二区| 日本一区二区三区视频视频| 日韩一级二级三级精品视频| 色婷婷久久久亚洲一区二区三区| 国产精品99久久久久久久女警| 日韩av电影免费观看高清完整版在线观看 | 国产精品乡下勾搭老头1| 日本中文字幕一区二区视频| 一区二区在线观看免费视频播放| 国产欧美中文在线| 精品国产污污免费网站入口 | 性欧美疯狂xxxxbbbb| 日韩毛片高清在线播放| 欧美国产精品v| 久久精品一区二区三区不卡| 欧美成人a∨高清免费观看| 欧美日韩亚洲综合一区二区三区| 91麻豆自制传媒国产之光| 丰满岳乱妇一区二区三区 | 日本一区中文字幕| 亚洲综合999| 亚洲国产精品久久人人爱蜜臀| 亚洲人精品午夜| 亚洲综合图片区| 亚洲最快最全在线视频| 一级女性全黄久久生活片免费| 亚洲人成网站色在线观看| 亚洲欧美日韩国产一区二区三区| 亚洲三级理论片| 亚洲一区在线看| 天天操天天色综合| 免费人成网站在线观看欧美高清| 五月婷婷欧美视频| 日本一不卡视频| 久久疯狂做爰流白浆xx| 国产一区二区三区免费播放| 国产aⅴ综合色| 99久久婷婷国产综合精品电影 | 91碰在线视频| 欧美视频一区二区三区四区 | 国产一区二区三区免费在线观看| 国产精品一区二区三区99| 国产成人99久久亚洲综合精品| 国产伦精品一区二区三区免费迷 | 日韩一区精品字幕| 麻豆国产精品777777在线| 国产成人在线视频网站| 不卡在线视频中文字幕| 欧美日韩国产大片| 久久综合丝袜日本网| 中文字幕一区二区三区在线播放| 亚洲人成在线观看一区二区| 日本免费新一区视频| 国产成a人亚洲精| 色婷婷精品久久二区二区蜜臀av | 久久国产三级精品| 成人黄色片在线观看| 精品1区2区3区| 精品国产乱码久久久久久图片| 国产精品国产精品国产专区不片| 亚洲午夜日本在线观看| 韩国成人精品a∨在线观看| 99久久国产综合精品色伊| 日韩一区二区在线免费观看| 国产精品视频第一区| 日本成人在线一区| 色综合久久综合| 久久精品视频网| 日韩主播视频在线| 成人av第一页| 精品国产91亚洲一区二区三区婷婷| 中文字幕在线不卡一区二区三区 | 久久婷婷国产综合精品青草| 亚洲欧美日韩久久精品| 九色|91porny| 欧美日韩免费一区二区三区视频| 中文字幕二三区不卡| 奇米四色…亚洲| 欧美亚洲一区三区| 国产精品国产精品国产专区不片| 老司机午夜精品99久久| 欧美日韩国产一级| 最新成人av在线| 国产宾馆实践打屁股91| 日韩色在线观看| 亚洲成av人片在线观看| youjizz久久| 国产视频一区二区三区在线观看| 日日嗨av一区二区三区四区| 欧洲一区二区av| 中文字幕一区二区三区不卡| 国产毛片精品国产一区二区三区| 91精品国产丝袜白色高跟鞋| 亚洲综合久久av| 99精品欧美一区二区三区小说| 久久久亚洲精品一区二区三区| 麻豆91小视频| 日韩欧美在线影院| 亚洲一卡二卡三卡四卡| 91麻豆高清视频| 亚洲色图在线看| 91在线一区二区三区| 国产精品欧美一区二区三区| 国产黄人亚洲片| 久久久夜色精品亚洲| 国产精品一级二级三级| 欧美极品少妇xxxxⅹ高跟鞋| 国产高清无密码一区二区三区| 久久久av毛片精品| 丰满少妇久久久久久久| 久久久99久久精品欧美| 国产盗摄女厕一区二区三区| 久久久久久久av麻豆果冻| 国产一区二区免费视频|