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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mp_book.c

?? LastWave
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*--------------------------------------------------------------------------*/void AddMolecule2Book(BOOK book, MOLECULE molecule){  /* checking the inputs */  CheckBook(book);  CheckMoleculeNotEmpty(molecule);  CheckTFContentCompat(book,GetMoleculeAtom(molecule,0,0));  // Case where we have to resize the book  if(book->size == book->sizeAlloc) {    if(book->sizeAlloc==0) SizeBook(book,MP_DEFAULT_BOOK_SIZE);    else SizeBook(book,2*book->sizeAlloc); // Nota : it may be a bad strategy to double at each time !  }    // Now we can append the molecule  book->molecules[book->size] = molecule;  book->size++;}void DeleteMoleculeFromBook(BOOK book,unsigned long rank) {  unsigned long n;  CheckBookNotEmpty(book);  if(!INRANGE(0,rank,book->size-1)) Errorf("DeleteMoleculeFromBook : rank %d is not in range [0 %d]",book->size-1);  book->molecules[rank] = DeleteMolecule(book->molecules[rank]);  // Piles up molecules to the left of the array  // TODO : replace the pile up with  // book->molecules[rank] = book->molecules[book->size-1]  // book->molecules[book->size-1] = NULL;  // book->size--;  for(n = rank; n < book->size-1; n++) {    book->molecules[n] = book->molecules[n+1];  }  book->molecules[book->size-1] = NULL;  book->size--;  // Note that we do NOT re-allocate to a smaller size}/* Get the n-th molecule , 0 <= n <= size-1 */MOLECULE GetBookMolecule(const BOOK book,unsigned long n){  // Some checkings  CheckBookNotEmpty(book);  if(n>=book->size)  Errorf("GetBookMolecule : Bad molecule number %d [%d %d]",n,0,book->size-1);  return(book->molecules[n]);}	/* ALLOCATION */void CheckBook(const BOOK book){  CheckTFContent(book);}void CheckBookNotEmpty(const BOOK book){  CheckBook(book);  if(book->size == 0)    Errorf("CheckBookNotEmpty : empty book (run the pursuit first)");}/* * The fields of a book */static char* nameDoc = "{[= <name>]} {Sets/Gets the name of a book}";static char* sizeDoc = "{} {Gets the number of &mol in a book.}";static char* sizeAllocDoc = "{[= <sizeAlloc>]} {Sets/Gets the allocation size for the array of &mol in a book. In case of a Set, <sizeAlloc> must be larger than book.size, else an error is generated. The previously allocated part is kept (book.size is not changed).}";/* * 'name' field */static void * GetNameBookV(BOOK book, void **arg){  /* Documentation */  if (book == NULL) return(nameDoc);  return(GetStrField(book->name,arg));}static void * SetNameBookV(BOOK book, void **arg){  /* doc */  if (book == NULL) return(nameDoc);  if (book->name==defaultName || book->name == NULL) {    book->name=CharAlloc(1);    book->name[0] = '\0';  }  return(SetStrField(&(book->name),arg));}  static void *GetSizeBookV(BOOK book, void **arg){  char *field = ARG_G_GetField(arg);    /* Documentation */  if (book == NULL) {    if(!strcmp(field,"size"))      return(sizeDoc);    if(!strcmp(field,"sizeAlloc")) return(sizeAllocDoc);  }  if(!strcmp(field,"size"))        return(GetIntField(book->size,arg));  if(!strcmp(field,"sizeAlloc"))   return(GetIntField(book->sizeAlloc,arg));}static void * SetSizeAllocBookV(BOOK book, void **arg){  int sizeAlloc;  /* doc */  if (book == NULL) return(sizeAllocDoc);  // Init for += syntax  sizeAlloc = book->sizeAlloc;  if(SetIntField(&sizeAlloc,arg,FieldSPositive)==NULL) return(NULL);  SizeBook(book,sizeAlloc);}  /* 'tfContent' parameters */static char *dxDoc = "{[= <dx>]} {Sets/Gets the abscissa step of the original signal of the book and all its atoms.}";static char *x0Doc = "{[= <x0>]} {Sets/Gets the first abscissa of the original signal of the book and all its atoms.}";void *SetDxBookV(BOOK book, void **arg){  unsigned long n;  MOLECULE molecule;  unsigned short k;  unsigned char channel;  ATOM atom;  /* Documentation */  if (book == NULL) return(dxDoc);  if(SetFloatField(&(book->dx),arg,FieldSPositive)==NULL) return(NULL);  /* Update the atoms dx */  for(n = 0; n < book->size; n++) {    molecule = GetBookMolecule(book,n);    for(channel = 0; channel < molecule->nChannels; channel++) {      for(k = 0; k < molecule->dim; k++) {	atom = GetMoleculeAtom(molecule,channel,k);	atom->dx = book->dx;      }    }  }  return(numType);} void *SetX0BookV(BOOK book, void **arg){  unsigned long n;  MOLECULE molecule;  unsigned short k;  unsigned char channel;  ATOM atom;  /* Documentation */  if (book == NULL) return(x0Doc);  if(SetFloatField(&(book->x0),arg,0)==NULL) return(NULL);  /* Update the atoms x0 */  for(n = 0; n < book->size; n++) {    molecule = GetBookMolecule(book,n);    for(channel = 0; channel < molecule->nChannels; channel++) {      for(k = 0; k < molecule->dim; k++) {	atom = GetMoleculeAtom(molecule,channel,k);	atom->x0 = book->x0;      }    }  }  return(numType);}/* * The extraction of signals that contain the fields of the molecules of a book */ static char* dimDoc        = "{} {Gets a &signal of size book.size containing the list of dimensions  of the molecules of a book (i.e. the number of atoms contained in each molecule). The dimension is larger than 1 only for books built using the Harmonic Matching Pursuit.}";static char* wcoeff2Doc    = "{} {Gets a &signal of size book.size containing the list of 'coeff2' of the molecule in a book.}";static char* windowSizeDoc = "{} {Gets a &signal of size book.size containing the list of 'windowSize' of the first atom of the molecules in a book.}";static char* windowShapeDoc = "{} {Gets a &listv of size book.size containing the list of 'windowShape' of the first atom of the molecules of a book."WindowShapeHelpString"}";static char* timeIdDoc     = "{} {Gets a &signal of size book.size containing the list of 'timeId' of the first atom of the molecules in a book..}";static char* timeDoc       = "{} {Gets a &signal of size book.size containing the list of 'time' of the first atom of the molecules in a book.}";static char* freqIdDoc     = "{} {Gets a &signal of size book.size containing the list of 'freqId' of the first atom of the molecules in a book.}";static char* freqDoc       = "{} {Gets a &signal of size book.size containing the list of 'freq' of the first atom of the molecules in a book.}";static char* chirpIdDoc    = "{} {Gets a &signal of size book.size containing the list of 'chirpId' of the first atom of the molecules in a book.}";static char* chirpDoc      = "{} {Gets a &signal of size book.size containing the list of 'chirp' of the first atom of the molecules in a book.}";static char* phaseDoc      = "{} {Gets a &signal of size book.size containing the list of 'phase' of the first atom of the molecules in a book.}";static char* acoeff2Doc    = "{} {Gets a &signal of size book.size containing the list of 'coeff2' of the first atom of the molecules in a book.}";static char* ggDoc         = "{} {Gets a &listv {real imag} of two &signal of size book.size containing the list of 'gg' of the first atom of the molecules in a book.}";void *GetMoleculeFieldBookV(BOOK book, void **arg){  char *field = ARG_G_GetField(arg);  SIGNAL signal = NULL;  SIGNAL signalIm = NULL;  LISTV lv = NULL;  unsigned long n;  ATOM atom;  LWFLOAT phase;  /* Documentation */  if (book == NULL) {    if(!strcmp(field,"dim")) return(dimDoc);    if(!strcmp(field,"wcoeff2")) return(wcoeff2Doc);    if(!strcmp(field,"windowSize")) return(windowSizeDoc);    if(!strcmp(field,"windowShape")) return(windowShapeDoc);    if(!strcmp(field,"timeId")) return(timeIdDoc);    if(!strcmp(field,"time")) return(timeDoc);    if(!strcmp(field,"freqId")) return(freqIdDoc);    if(!strcmp(field,"freq")) return(freqDoc);    if(!strcmp(field,"chirpId")) return(chirpIdDoc);    if(!strcmp(field,"chirp")) return(chirpDoc);    if(!strcmp(field,"phase")) return(phaseDoc);    if(!strcmp(field,"acoeff2")) return(acoeff2Doc);    if(!strcmp(field,"gg")) return(ggDoc);    Errorf("Weired : GetMoleculeFieldBooV : unknown field %s",field);  }  if(!strcmp(field,"windowShape")) {    lv = TNewListv();    for(n = 0; n < book->size; n++) {      AppendStr2Listv(lv,WindowShape2Name(GetMoleculeAtom(GetBookMolecule(book,n),0,0)->windowShape));    }    return(GetValueField(lv,arg));  }  signal = TNewSignal();  SizeSignal(signal,book->size,YSIG);  signal->dx = 1;  signal->x0 = 0;  if(!strcmp(field,"dim")) {    for(n = 0; n < book->size; n++) {      signal->Y[n] = GetBookMolecule(book,n)->dim;    }  }  if(!strcmp(field,"wcoeff2")) {    for(n = 0; n < book->size; n++) {      signal->Y[n] = GetBookMolecule(book,n)->coeff2;    }  }  if(!strcmp(field,"windowSize")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);      signal->Y[n] = atom->windowSize;    }  }  if(!strcmp(field,"timeId")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = atom->timeId;    }  }  if(!strcmp(field,"time")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = TimeId2Time(book,atom->timeId);    }  }  if(!strcmp(field,"freqId")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = atom->freqId;    }  }  if(!strcmp(field,"freq")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = FreqId2Freq(book,atom->freqId);    }  }  if(!strcmp(field,"chirpId")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = atom->chirpId;    }  }  if(!strcmp(field,"chirp")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = ChirpId2Chirp(book,atom->chirpId);    }  }  if(!strcmp(field,"phase")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       phase = atan2(atom->sinPhase,atom->cosPhase)/(2*M_PI);      if (phase<0)     phase = 1+phase;      if(phase >= 1.0) phase = phase-1.0;      signal->Y[n] = phase;    }  }  if(!strcmp(field,"acoeff2")) {    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = atom->coeff2;    }  }  if(!strcmp(field,"gg")) {    signalIm = TNewSignal();    SizeSignal(signalIm,book->size,YSIG);    signalIm->dx = 1;    signalIm->x0 = 0;    for(n = 0; n < book->size; n++) {      atom = GetMoleculeAtom(GetBookMolecule(book,n),0,0);       signal->Y[n] = atom->realGG;      signalIm->Y[n] = atom->imagGG;    }    lv = TNewListv();    AppendValue2Listv(lv,(VALUE)signal);    AppendValue2Listv(lv,(VALUE)signalIm);    return(GetValueField(lv,arg));  }  return(GetValueField(signal,arg));}  /* * The field list */struct field fieldsBook[] = {  "",GetBookV,SetBookV,GetOptionsBookV,GetExtractInfoBookV,    "sig",GetBookV,SetBookV,GetOptionsBookV,GetExtractInfoBookV,    "name",GetNameBookV,SetNameBookV,NULL,NULL,  // The TFContent fields  "dx",GetDxTFContentV,SetDxBookV,NULL,NULL,  "x0",GetX0TFContentV,SetX0BookV,NULL,NULL,  "signalSize",GetSignalSizeTFContentV,NULL,NULL,NULL,  "freqIdNyquist",GetFreqIdNyquistTFContentV,NULL,NULL,NULL,  // The array fields  "size",GetSizeBookV,NULL,NULL,NULL,  "sizeAlloc",GetSizeBookV,SetSizeAllocBookV,NULL,NULL,  // The molecule fields  "dim",GetMoleculeFieldBookV,NULL,NULL,NULL,  "wcoeff2",GetMoleculeFieldBookV,NULL,NULL,NULL,  "windowSize",GetMoleculeFieldBookV,NULL,NULL,NULL,  "windowShape",GetMoleculeFieldBookV,NULL,NULL,NULL,  "timeId",GetMoleculeFieldBookV,NULL,NULL,NULL,  "time",GetMoleculeFieldBookV,NULL,NULL,NULL,  "freqId",GetMoleculeFieldBookV,NULL,NULL,NULL,  "freq",GetMoleculeFieldBookV,NULL,NULL,NULL,  "chirpId",GetMoleculeFieldBookV,NULL,NULL,NULL,  "chirp",GetMoleculeFieldBookV,NULL,NULL,NULL,  "acoeff2",GetMoleculeFieldBookV,NULL,NULL,NULL,  "phase",GetMoleculeFieldBookV,NULL,NULL,NULL,#ifdef ATOM_ADVANCED  "gg",GetMoleculeFieldBookV,NULL,NULL,NULL,#endif // ATOM_ADVANCED  NULL, NULL, NULL, NULL, NULL};/* * The type structure for BOOK */TypeStruct tsBook = {  "{{{&book} {This type is the basic type for storing the result of Matching Pursuit decompositions as an array of &mol's. \n \- Operator + : book+molecule, appends a molecule at the end of the book.}}}",  /* Documentation */  &bookType,       /* The basic (unique) type name */  NULL,     /* The GetType function */                           DeleteBook,     /* The Delete function */  NewBook,     /* The New function */    CopyBook,       /* The copy function */  ClearBook,       /* The clear function */    ToStrBook,       /* String conversion */  ShortPrintBook,   /* The Print function : print the object when 'print' is called */  PrintInfoBook,   /* The PrintInfo function : called by 'info' */  NumExtractBook,              /* The NumExtract function : used to deal with syntax like 10a */     fieldsBook,      /* The list of fields */};/* EOF */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区国产豹纹内裤在线| 国产精品久久久久9999吃药| 高清shemale亚洲人妖| 亚洲综合小说图片| 制服丝袜成人动漫| 色综合久久久久久久久| 国产在线不卡一卡二卡三卡四卡| 亚洲激情在线激情| 久久久精品日韩欧美| 欧美疯狂做受xxxx富婆| 91麻豆国产精品久久| 国产在线麻豆精品观看| 五月激情六月综合| 一区二区欧美精品| 国产精品伦理一区二区| 久久精品一区二区三区不卡| 在线不卡欧美精品一区二区三区| 91欧美激情一区二区三区成人| 国产精品888| 老司机精品视频一区二区三区| 亚洲国产精品久久人人爱蜜臀| 国产精品每日更新| 精品国产免费久久| 日韩精品中文字幕在线一区| 在线亚洲一区二区| 99re视频这里只有精品| 粉嫩高潮美女一区二区三区| 黄页网站大全一区二区| 免费观看在线色综合| 亚洲一区二区偷拍精品| 一区二区三区精密机械公司| 椎名由奈av一区二区三区| 中文字幕在线观看一区二区| 久久精品一区二区三区不卡| 久久先锋影音av鲁色资源网| 久久综合国产精品| 久久精品夜色噜噜亚洲aⅴ| 精品国产91久久久久久久妲己| 5月丁香婷婷综合| 欧美男男青年gay1069videost | 欧美成人免费网站| 6080yy午夜一二三区久久| 在线成人午夜影院| 91精品国产综合久久精品麻豆| 欧美区视频在线观看| 日韩三级视频中文字幕| 日韩欧美一二三区| 久久久久国产精品麻豆| 日本一区二区三级电影在线观看 | 亚洲色图第一区| 中文字幕在线观看不卡| 一区二区欧美视频| 日韩av高清在线观看| 久久av资源站| 丁香六月综合激情| 色综合久久综合网欧美综合网 | 成人午夜视频在线观看| 91色在线porny| 欧美精选在线播放| 精品欧美一区二区久久| 国产欧美一二三区| 亚洲精品视频在线观看免费| 亚洲无线码一区二区三区| 日韩国产欧美一区二区三区| 久久精品噜噜噜成人88aⅴ| 国产福利一区二区三区视频在线| 99精品国产91久久久久久| 欧美亚洲另类激情小说| 777a∨成人精品桃花网| 国产三区在线成人av| 亚洲美女电影在线| 日本aⅴ精品一区二区三区| 国产精品一区二区果冻传媒| 99久久99久久精品免费观看 | 色噜噜夜夜夜综合网| 制服视频三区第一页精品| 久久久精品欧美丰满| 亚洲激情男女视频| 热久久一区二区| va亚洲va日韩不卡在线观看| 欧美精品黑人性xxxx| 久久久美女毛片| 亚洲自拍偷拍网站| 国产一区在线观看视频| 欧美三级日本三级少妇99| 天天操天天色综合| 国产一本一道久久香蕉| 在线观看免费亚洲| 久久久久九九视频| 亚洲va欧美va人人爽| 成人精品视频一区二区三区尤物| 欧美日韩一二区| 国产精品久线在线观看| 久久99精品一区二区三区| 91免费国产在线| 国产欧美日韩在线| 免费成人在线观看视频| 色一情一伦一子一伦一区| 国产无人区一区二区三区| 亚洲高清免费观看高清完整版在线观看| 国内不卡的二区三区中文字幕 | 丁香啪啪综合成人亚洲小说 | 福利一区二区在线| 欧美一级生活片| 亚洲久草在线视频| 成人动漫一区二区| 欧美va亚洲va香蕉在线| 亚洲电影视频在线| 91麻豆精品秘密| 国产精品九色蝌蚪自拍| 国产在线国偷精品免费看| 欧美顶级少妇做爰| 亚洲一区在线电影| 日本大香伊一区二区三区| 国产精品视频一二三区| 国产成人亚洲精品狼色在线| 日韩午夜激情电影| 日韩av一区二| 911国产精品| 亚洲福利视频一区| 日本道精品一区二区三区| 中文字幕一区二区不卡| 成人一区二区三区视频| 久久久精品人体av艺术| 国产乱子轮精品视频| 欧美大肚乱孕交hd孕妇| 蜜臀91精品一区二区三区| 666欧美在线视频| 免费成人美女在线观看.| 在线电影欧美成精品| 视频一区二区三区在线| 欧美日韩午夜影院| 天堂久久久久va久久久久| 欧美卡1卡2卡| 男女男精品网站| 精品国产乱码久久久久久图片| 久久成人免费电影| 久久久久99精品国产片| 丁香天五香天堂综合| 中文字幕一区二区不卡| 日本久久精品电影| 五月婷婷欧美视频| 欧美一区二区视频网站| 久久电影国产免费久久电影| 久久久精品黄色| 成人中文字幕电影| 一区二区三区久久| 欧美一区二区三区电影| 精品一区二区三区在线播放视频| 欧美精品一区二区三区四区| 国产福利一区二区三区视频在线| 国产欧美精品国产国产专区| 成人高清视频在线| 一级日本不卡的影视| 91麻豆精品国产91久久久久| 精品一区二区影视| 中文字幕av一区 二区| 色欧美片视频在线观看| 午夜免费久久看| 久久精品一区四区| 在线影视一区二区三区| 免费观看30秒视频久久| 亚洲国产高清在线观看视频| 在线观看免费一区| 韩国成人福利片在线播放| 中文一区在线播放| 欧美影院精品一区| 国产一区视频网站| 亚洲欧美激情小说另类| 日韩美女一区二区三区四区| jlzzjlzz国产精品久久| 日韩成人av影视| 国产精品久线在线观看| 欧美一区二区在线观看| 成人av影院在线| 亚洲高清免费在线| 国产欧美日韩亚州综合| 在线观看日韩电影| 国产成人免费视频网站高清观看视频| 亚洲激情六月丁香| 久久久久国产精品厨房| 在线播放日韩导航| 成人av在线播放网站| 日本中文字幕一区二区有限公司| 国产精品天天看| 日韩一区二区三区视频在线 | 久久综合狠狠综合久久激情 | 精品一区二区三区在线播放| 亚洲日穴在线视频| 亚洲精品在线网站| 欧美老年两性高潮| 99精品热视频| 国产乱色国产精品免费视频| 亚洲va天堂va国产va久| 国产精品久久精品日日| 精品国产sm最大网站免费看| 欧美高清精品3d| 欧美在线观看一区| 成人激情视频网站| 国产一区二区福利视频|