亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
亚洲综合激情网| 国产精品久久久久久福利一牛影视 | 成人国产在线观看| 欧美激情在线观看视频免费| 国产白丝精品91爽爽久久| 中文字幕av免费专区久久| 99视频国产精品| 一区二区三区国产豹纹内裤在线| 欧美三级三级三级| 蜜臀av性久久久久av蜜臀妖精| 日韩欧美123| 国产成人激情av| 一区二区三区中文在线观看| 欧美精品在线一区二区| 久久av老司机精品网站导航| 国产女同性恋一区二区| 91久久精品一区二区二区| 日本伊人午夜精品| 国产精品系列在线| 欧美日本一道本| 狠狠色丁香婷婷综合| 亚洲欧美影音先锋| 在线不卡欧美精品一区二区三区| 精品一区二区三区久久| 国产精品乱人伦中文| 欧美群妇大交群中文字幕| 久久不见久久见免费视频7| 国产精品视频一二三区| 91.麻豆视频| 99久久久国产精品免费蜜臀| 免费视频最近日韩| 亚洲日本成人在线观看| 欧美成人伊人久久综合网| 91视视频在线直接观看在线看网页在线看 | 欧美日韩成人在线一区| 国产成人自拍高清视频在线免费播放| 亚洲一区在线视频| 国产亚洲一区二区三区四区| 欧美怡红院视频| 国产经典欧美精品| 蜜桃视频在线一区| 一区二区三区日韩欧美精品| 国产视频一区二区在线| 91精品国产入口在线| 99免费精品在线| 国产一区二区三区视频在线播放| 亚洲123区在线观看| 自拍偷在线精品自拍偷无码专区| 精品噜噜噜噜久久久久久久久试看 | 日韩一区精品视频| 一区二区三区小说| 中文字幕久久午夜不卡| 日韩免费高清视频| 欧美一区二区三区免费| 欧美亚洲尤物久久| 99久久婷婷国产| 高清国产一区二区三区| 紧缚捆绑精品一区二区| 视频一区二区三区在线| 一区二区免费视频| 亚洲人精品午夜| 中文字幕制服丝袜成人av| 久久综合av免费| 日韩精品在线看片z| 欧美一区在线视频| 91精品国产欧美日韩| 欧美日韩1区2区| 欧美精品第1页| 欧美精品在线视频| 欧美丰满一区二区免费视频| 欧美综合天天夜夜久久| 欧美日韩视频一区二区| 欧美精选在线播放| 91精品国产高清一区二区三区 | 国产99久久久国产精品免费看| 国产精品自拍在线| 国产成人8x视频一区二区| 国产激情一区二区三区| 国产成人在线观看| 国产成人丝袜美腿| 99久久亚洲一区二区三区青草| 国产69精品一区二区亚洲孕妇| 国产精品77777| 99九九99九九九视频精品| 97se亚洲国产综合在线| 在线国产电影不卡| 日韩一区二区精品在线观看| 日韩精品中文字幕一区| 国产午夜一区二区三区| 国产精品久久久久影院色老大| 亚洲柠檬福利资源导航| 亚洲一区二区影院| 日日摸夜夜添夜夜添精品视频| 琪琪一区二区三区| 久久se精品一区二区| 国产成人综合亚洲91猫咪| 91一区二区三区在线播放| 欧美色综合天天久久综合精品| 3atv一区二区三区| www激情久久| 亚洲免费观看高清完整版在线观看熊 | 4438x亚洲最大成人网| 26uuu欧美| 亚洲免费av高清| 日韩成人av影视| 国产精品自拍毛片| 91福利在线观看| 精品国产乱码久久久久久浪潮 | 大尺度一区二区| 色婷婷av一区二区三区gif | 丝袜亚洲精品中文字幕一区| 九九热在线视频观看这里只有精品| 国产风韵犹存在线视精品| 色婷婷久久综合| 日韩欧美一级精品久久| 亚洲天堂福利av| 麻豆成人免费电影| 91蜜桃网址入口| 精品国精品自拍自在线| 一区二区三区免费看视频| 激情综合色丁香一区二区| 色综合天天综合网国产成人综合天| 欧美高清视频不卡网| 国产精品妹子av| 久久综合综合久久综合| 色婷婷综合中文久久一本| 久久久影视传媒| 五月天亚洲婷婷| 成年人国产精品| 久久综合九色综合97婷婷女人| 亚洲第一福利一区| 99久久婷婷国产精品综合| 26uuuu精品一区二区| 日韩精品成人一区二区三区| bt欧美亚洲午夜电影天堂| 精品久久久久久久人人人人传媒| 亚洲一区在线视频| 99久久精品99国产精品| 欧美精品一区二区三区高清aⅴ| 亚洲一区二区三区国产| av高清久久久| 国产清纯白嫩初高生在线观看91| 日韩国产在线一| 欧美三级电影网站| 亚洲日本va午夜在线电影| 成人在线一区二区三区| 精品国内片67194| 麻豆精品新av中文字幕| 在线电影国产精品| 亚洲午夜免费福利视频| av电影天堂一区二区在线观看| 欧美videos中文字幕| 日韩电影免费在线看| 欧美亚洲综合久久| 亚洲国产一区二区在线播放| 色域天天综合网| 亚洲美女电影在线| 波多野结衣一区二区三区| 欧美韩国日本综合| 高清不卡在线观看av| 中文字幕欧美国产| 粉嫩aⅴ一区二区三区四区| 久久久综合视频| 成人蜜臀av电影| 中国av一区二区三区| 成人激情免费电影网址| 中文无字幕一区二区三区| 国产v日产∨综合v精品视频| 国产欧美视频在线观看| 成人中文字幕电影| 亚洲少妇中出一区| 欧美在线看片a免费观看| 亚洲电影一区二区| 3atv在线一区二区三区| 裸体一区二区三区| 久久日韩精品一区二区五区| 国产乱子伦一区二区三区国色天香| 精品美女在线播放| 国产成a人无v码亚洲福利| 成人欧美一区二区三区白人 | 国产精品久久99| 色综合久久久久网| 亚欧色一区w666天堂| 日韩一区二区免费在线电影 | 日韩精品中文字幕在线一区| 日本不卡视频在线| 久久久久久一二三区| 不卡一卡二卡三乱码免费网站| 亚洲精品精品亚洲| 91精品国产综合久久蜜臀| 国产在线精品一区二区三区不卡| 国产欧美精品一区| 精品视频一区二区三区免费| 日本成人在线网站| 中文字幕高清一区| 欧美日韩一区二区三区高清| 激情文学综合网| 亚洲精品亚洲人成人网在线播放| 欧美精品第一页| 成人激情小说网站|