• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C++ BRANCH函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中BRANCH函数的典型用法代码示例。如果您正苦于以下问题:C++ BRANCH函数的具体用法?C++ BRANCH怎么用?C++ BRANCH使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了BRANCH函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: IsMainProfile

unsigned char IsMainProfile(CIcsInfo *pIcsInfo)
{
  FLC_sub_start("IsMainProfile");
  INDIRECT(1); ADD(1); BRANCH(1);
  FLC_sub_end();

  return (pIcsInfo->Profile == ProfileMain);
}
开发者ID:wonktnodi,项目名称:webrtc_port,代码行数:8,代码来源:channelinfo.c


示例2: GetWindowsPerFrame

int GetWindowsPerFrame(CIcsInfo *pIcsInfo)
{
  FLC_sub_start("GetWindowsPerFrame");
  INDIRECT(1); ADD(1); BRANCH(1);
  FLC_sub_end();

  return (pIcsInfo->WindowSequence == EightShortSequence) ? 8 : 1;
}
开发者ID:wonktnodi,项目名称:webrtc_port,代码行数:8,代码来源:channelinfo.c


示例3: IsShortBlock

unsigned char IsShortBlock(CIcsInfo *pIcsInfo)
{
  FLC_sub_start("IsShortBlock");
  INDIRECT(1); ADD(1); BRANCH(1);
  FLC_sub_end();

  return (pIcsInfo->WindowSequence == EightShortSequence);
}
开发者ID:wonktnodi,项目名称:webrtc_port,代码行数:8,代码来源:channelinfo.c


示例4: resume_suspension_frame

void resume_suspension_frame(susp_fr_ptr resume_fr, or_fr_ptr top_or_fr) {
  CACHE_REGS
  or_fr_ptr or_frame;
  sg_fr_ptr sg_frame;

  /* copy suspended stacks */
  memmove(SuspFr_global_reg(resume_fr),
         SuspFr_global_start(resume_fr),
         SuspFr_global_size(resume_fr));
  memmove(SuspFr_local_reg(resume_fr),
         SuspFr_local_start(resume_fr),
         SuspFr_local_size(resume_fr));
  memmove(SuspFr_trail_reg(resume_fr),
         SuspFr_trail_start(resume_fr),
         SuspFr_trail_size(resume_fr));

  OPTYAP_ERROR_CHECKING(resume_suspension_frame, DepFr_cons_cp(SuspFr_top_dep_fr(resume_fr))->cp_h != SuspFr_global_reg(resume_fr) + SuspFr_global_size(resume_fr));
  OPTYAP_ERROR_CHECKING(resume_suspension_frame, DepFr_cons_cp(SuspFr_top_dep_fr(resume_fr))->cp_tr != SuspFr_trail_reg(resume_fr) + SuspFr_trail_size(resume_fr));
  OPTYAP_ERROR_CHECKING(resume_suspension_frame, DepFr_cons_cp(SuspFr_top_dep_fr(resume_fr)) != SuspFr_local_reg(resume_fr));
  OPTYAP_ERROR_CHECKING(resume_suspension_frame, (void *)Get_LOCAL_top_cp() < SuspFr_local_reg(resume_fr) + SuspFr_local_size(resume_fr));

  /* update shared nodes */
  or_frame = top_or_fr;
  while (or_frame != LOCAL_top_or_fr) {
    LOCK_OR_FRAME(or_frame);
    OrFr_owners(or_frame)++;
    UNLOCK_OR_FRAME(or_frame);
    or_frame = OrFr_next_on_stack(or_frame);
  }  
  or_frame = top_or_fr;
  while (or_frame != LOCAL_top_or_fr) {
    LOCK_OR_FRAME(or_frame);
    BITMAP_insert(OrFr_members(or_frame), worker_id);
    BRANCH(worker_id, OrFr_depth(or_frame)) = 1;
    UNLOCK_OR_FRAME(or_frame);
    or_frame = OrFr_next(or_frame);
  }

  /* adjust top pointers */
  LOCAL_top_or_fr = top_or_fr;
  SetOrFr_node(top_or_fr, Get_LOCAL_top_cp());
  LOCAL_top_sg_fr = SuspFr_top_sg_fr(resume_fr);
  LOCAL_top_dep_fr = SuspFr_top_dep_fr(resume_fr);
  Set_LOCAL_top_cp_on_stack( GetOrFr_node(SuspFr_top_or_fr_on_stack(resume_fr)) );
  sg_frame = LOCAL_top_sg_fr;
  while (sg_frame && YOUNGER_CP(SgFr_gen_cp(sg_frame), Get_LOCAL_top_cp_on_stack())) {
    SgFr_gen_worker(sg_frame) = worker_id;
    sg_frame = SgFr_next(sg_frame);
  }

  /* adjust freeze registers */
  adjust_freeze_registers();

  /* free suspension frame */
  FREE_SUSPENSION_FRAME(resume_fr);

  return;
}
开发者ID:vscosta,项目名称:yap-6.3,代码行数:58,代码来源:tab.completion.c


示例5: prepareSfbPe

/* constants that do not change during successive pe calculations */
void prepareSfbPe(PE_CHANNEL_DATA *peChanData,
                  const float *sfbEnergy,
                  const float *sfbThreshold,
                  const float *sfbFormFactor,
                  const int     *sfbOffset,
                  const int     sfbCnt,
                  const int     sfbPerGroup,
                  const int     maxSfbPerGroup)
{
   int sfbGrp,sfb;
   int sfbWidth;
   float avgFormFactor;

   COUNT_sub_start("prepareSfbPe");

   LOOP(1);
   for(sfbGrp = 0;sfbGrp < sfbCnt;sfbGrp+=sfbPerGroup){

    PTR_INIT(6); /* pointers for sfbEnergy[],
                                 sfbThreshold[],
                                 sfbOffset[],
                                 sfbFormFactor[],
                                 peChanData->sfbNLines[],
                                 peChanData->sfbLdEnergy[]
                 */
    LOOP(1);
    for (sfb=0; sfb<maxSfbPerGroup; sfb++) {

      ADD(1); BRANCH(1);
      if (sfbEnergy[sfbGrp+sfb] > sfbThreshold[sfbGrp+sfb]) {

         ADD(1);
         sfbWidth = sfbOffset[sfbGrp+sfb+1] - sfbOffset[sfbGrp+sfb];

         /* estimate number of active lines */
         DIV(1); TRANS(1);
         avgFormFactor = (float) pow(sfbEnergy[sfbGrp+sfb]/(float)sfbWidth, 0.25f);

         DIV(1); STORE(1);
         peChanData->sfbNLines[sfbGrp+sfb] =

         sfbFormFactor[sfbGrp+sfb]/avgFormFactor;

          /* ld(sfbEn) */
         TRANS(1); MULT(1); STORE(1);
         peChanData->sfbLdEnergy[sfbGrp+sfb] = (float) (log(sfbEnergy[sfbGrp+sfb]) * LOG2_1);
      }
      else {

         MOVE(2);
         peChanData->sfbNLines[sfbGrp+sfb] = 0.0f;
         peChanData->sfbLdEnergy[sfbGrp+sfb] = 0.0f;
      }
    }
   }

   COUNT_sub_end();
}
开发者ID:KISSMonX,项目名称:aacplusenc,代码行数:59,代码来源:line_pe.c


示例6: CAacDecoderInit

int CAacDecoderInit(AACDECODER self,
                    int samplingRate,
                    int bitrate)
{
  int i;
  int numEntries = sizeof(SamplingRateInfoTable)/sizeof(SamplingRateInfo);

  COUNT_sub_start("CAacDecoderInit");

  MOVE(1); /* counting previous operation */

  BRANCH(1);
  if (!self)
  {
    COUNT_sub_end();
    return -1;
  }

  INDIRECT(1); MOVE(1);
  self->pStreamInfo->SamplingRate  = samplingRate;
  
  PTR_INIT(1); /* SamplingRateInfoTable[i] */
  LOOP(1);
  for (i=0; i<numEntries; i++)
  {
    ADD(1); BRANCH(1);
    if (samplingRate == SamplingRateInfoTable[i].SamplingFrequency)
      break;
  }

  ADD(1); BRANCH(1);
  if (i == numEntries)
  {
    COUNT_sub_end();
    return -1;
  }

  MOVE(2);
  self->pStreamInfo->SamplingRateIndex = i;
  self->pStreamInfo->BitRate = bitrate;

  COUNT_sub_end();
  
  return 0;
}
开发者ID:wonktnodi,项目名称:webrtc_port,代码行数:45,代码来源:aacdecoder.c


示例7: IIR21_Downsample

int 
IIR21_Downsample(IIR21_RESAMPLER *DownSampler,
                 float *inSamples,
                 int numInSamples,
                 int inStride,
                 float *outSamples,
                 int *numOutSamples,
                 int outStride
               )
{
  int i;
  *numOutSamples=0;

  COUNT_sub_start("Downsample");

  MOVE(1); /* counting previous operations */

  PTR_INIT(2); /* pointer for inSamples[],
                              outSamples[]
               */
  LOOP(1); 
  for(i=0;i<numInSamples;i++){
    float iirOut;

#ifdef NEWIIR
    FUNC(2);
    AdvanceARFilter(&(DownSampler->iirFilter), inSamples[i*inStride]);
#else
    FUNC(2);
    iirOut = AdvanceIIRFilter(&(DownSampler->iirFilter), inSamples[i*inStride]);
#endif

    ADD(1);
    DownSampler->pending++;

    ADD(1); BRANCH(1);
    if(DownSampler->pending == DownSampler->ratio){

#ifdef NEWIIR
      FUNC(1);
      outSamples[(*numOutSamples)*outStride] = AdvanceMAFilter(&(DownSampler->iirFilter));;
#else
      MOVE(1);
      outSamples[(*numOutSamples)*outStride] = iirOut;
#endif

      (*numOutSamples)++;

      MOVE(1);
      DownSampler->pending=0;
    }
  }

  COUNT_sub_end();

  return 1;
}
开发者ID:cpopescu,项目名称:whispermedialib,代码行数:57,代码来源:resampler.c


示例8: bcf_trim_alleles

int bcf_trim_alleles(const bcf_hdr_t *header, bcf1_t *line)
{
    int i;
    bcf_fmt_t *gt = bcf_get_fmt(header, line, "GT");
    if ( !gt ) return 0;

    int *ac = (int*) calloc(line->n_allele,sizeof(int));

    // check if all alleles are populated
    #define BRANCH(type_t,vector_end) { \
        for (i=0; i<line->n_sample; i++) \
        { \
            type_t *p = (type_t*) (gt->p + i*gt->size); \
            int ial; \
            for (ial=0; ial<gt->n; ial++) \
            { \
                if ( p[ial]==vector_end ) break; /* smaller ploidy */ \
                if ( bcf_gt_is_missing(p[ial]) ) continue; /* missing allele */ \
                if ( (p[ial]>>1)-1 >= line->n_allele ) { free(ac); return -1; } \
                ac[(p[ial]>>1)-1]++; \
            } \
        } \
    }
    switch (gt->type) {
        case BCF_BT_INT8:  BRANCH(int8_t,  bcf_int8_vector_end); break;
        case BCF_BT_INT16: BRANCH(int16_t, bcf_int16_vector_end); break;
        case BCF_BT_INT32: BRANCH(int32_t, bcf_int32_vector_end); break;
        default: fprintf(stderr, "[E::%s] todo: %d at %s:%d\n", __func__, gt->type, header->id[BCF_DT_CTG][line->rid].key, line->pos+1); exit(1); break;
    }
    #undef BRANCH

    int nrm = 0;
    kbitset_t *rm_set = kbs_init(line->n_allele);
    for (i=1; i<line->n_allele; i++)
    {
        if ( !ac[i] ) { kbs_insert(rm_set, i); nrm++; }
    }
    free(ac);

    if ( nrm ) bcf_remove_allele_set(header, line, rm_set);
    kbs_destroy(rm_set);
    return nrm;
}
开发者ID:AndreasHegerGenomics,项目名称:agg,代码行数:43,代码来源:vcfutils.c


示例9: findRegion

static int
findRegion(float currVal,
           const float* borders,
           const int numBorders,
           int prevRegion
           )
{
  int i;

  COUNT_sub_start("findRegion");

  ADD(1); BRANCH(1);
  if(currVal < borders[0])
  {
    COUNT_sub_end();
    return 0;
  }

  PTR_INIT(1); /* borders[] */
  LOOP(1);
  for(i = 1; i < numBorders; i++){

    ADD(2); LOGIC(1); BRANCH(1);
    if( currVal >= borders[i-1] && currVal < borders[i])
    {
      COUNT_sub_end();
      return i;
    }
  }

  ADD(1); BRANCH(1);
  if(currVal > borders[numBorders-1])
  {
    COUNT_sub_end();
    return numBorders;
  }

  COUNT_sub_end();
  return 0;
}
开发者ID:cpopescu,项目名称:whispermedialib,代码行数:40,代码来源:invf_est.c


示例10: bcf_fmt_array

void bcf_fmt_array(kstring_t *s, int n, int type, void *data)
{
	int j = 0;
	if (n == 0) {
		kputc('.', s);
		return;
	}
    if (type == BCF_BT_CHAR) 
    {
        char *p = (char*)data;
        for (j = 0; j < n && *p; ++j, ++p) kputc(*p, s);
    }
    else
    {
        #define BRANCH(type_t, is_missing, kprint) {\
            type_t *p = (type_t *) data; \
            for (j=0; j<n && !(is_missing); j++) p++; \
            if ( j ) \
            { \
                p = (type_t *) data; \
                for (j=0; j<n; j++, p++) \
                { \
                    if ( j ) kputc(',', s); \
                    if ( is_missing ) kputc('.', s); \
                    else kprint; \
                } \
                if (n && j == 0) kputc('.', s); \
            } \
            else kputc('.', s); \
        }
        switch (type) {
            case BCF_BT_INT8:  BRANCH(int8_t,  *p==INT8_MIN,  kputw(*p, s)); break;
            case BCF_BT_INT16: BRANCH(int16_t, *p==INT16_MIN, kputw(*p, s)); break;
            case BCF_BT_INT32: BRANCH(int32_t, *p==INT32_MIN, kputw(*p, s)); break;
            case BCF_BT_FLOAT: BRANCH(float,  *(uint32_t*)p==bcf_missing_float, ksprintf(s, "%g", *p)); break;
            default: fprintf(stderr,"todo: type %d\n", type); exit(1); break;
        }
        #undef BRANCH
    }
}
开发者ID:goshng,项目名称:cocoa,代码行数:40,代码来源:vcf.c


示例11: bcf_get_format_values

bcf1_t *process(bcf1_t *rec)
{
    int nval = 0, i, j, nret = bcf_get_format_values(in_hdr,rec,"GP",(void**)&buf,&nbuf,gp_type);
    if ( nret<0 )
    {
        if (!nskip_gp) fprintf(stderr, "[impute-info.c] Warning: info tag not added to sites without GP tag\n");
        nskip_gp++;
        return rec; // require FORMAT/GP tag, return site unchanged
    }

    nret /= rec->n_sample;
    if ( nret != 3 )
    {
        if (!nskip_dip) fprintf(stderr, "[impute-info.c] Warning: info tag not added to sites that are not biallelic diploid\n");
        nskip_dip++;
        return rec; // require biallelic diploid, return site unchanged
    }

    double esum = 0, e2sum = 0, fsum = 0;
    #define BRANCH(type_t,is_missing,is_vector_end) \
    { \
        type_t *ptr = (type_t*) buf; \
        for (i=0; i<rec->n_sample; i++) \
        { \
            double vals[3] = {0,0,0}; \
            for (j=0; j<nret; j++) \
            { \
                if ( is_missing || is_vector_end ) break; \
                vals[j] = ptr[j]; \
            } \
            esum  += vals[1] + 2*vals[2]; \
            e2sum += (vals[1] + 2*vals[2]) * (vals[1] + 2*vals[2]); \
            fsum  += vals[1] + 4*vals[2]; \
            ptr   += nret; \
            nval++; \
        } \
    }
    switch (gp_type)
    {
        case BCF_HT_INT:  BRANCH(int32_t,ptr[j]==bcf_int32_missing,ptr[j]==bcf_int32_vector_end); break;
        case BCF_HT_REAL: BRANCH(float,bcf_float_is_missing(ptr[j]),bcf_float_is_vector_end(ptr[j])); break;
    }
    #undef BRANCH

    double theta = esum / (2 * (double)nval);
    float info  = (theta>0 && theta<1) ? (float)(1 - (fsum - e2sum) / (2 * (double)nval * theta * (1.0 - theta))) : 1;

    bcf_update_info_float(out_hdr, rec, "INFO", &info, 1);
    nrec++;
    return rec;
}
开发者ID:Genomicsplc,项目名称:bcftools,代码行数:51,代码来源:impute-info.c


示例12: gmStage1

static void
gmStage1(SECTION_INFO * section,
         int bitLookUp[MAX_SFB_LONG][CODE_BOOK_ESC_NDX + 1],
         const int maxSfb,
         const int *sideInfoTab)
{
  int mergeStart = 0, mergeEnd;

  COUNT_sub_start("gmStage1");

  MOVE(1); /* counting previous operations */

  LOOP(1);
  do
  {

    PTR_INIT(4); /* pointers for section[mergeStart]
                                 section[mergeEnd]
                                 bitLookUp[mergeStart]
                                 bitLookUp[mergeEnd]
                 */
    ADD(1); LOOP(1);
    for (mergeEnd = mergeStart + 1; mergeEnd < maxSfb; mergeEnd++)
    {
      ADD(1); BRANCH(1);
      if (section[mergeStart].codeBook != section[mergeEnd].codeBook)
        break;

      ADD(1); STORE(1);
      section[mergeStart].sfbCnt++;

      ADD(1); STORE(1);
      section[mergeStart].sectionBits += section[mergeEnd].sectionBits;

      FUNC(2);
      mergeBitLookUp(bitLookUp[mergeStart], bitLookUp[mergeEnd]);
    }

    INDIRECT(1); ADD(1); STORE(1);
    section[mergeStart].sectionBits += sideInfoTab[section[mergeStart].sfbCnt];

    MOVE(1);
    section[mergeEnd - 1].sfbStart = section[mergeStart].sfbStart;

    MOVE(1);
    mergeStart = mergeEnd;

  } while (mergeStart < maxSfb);

  COUNT_sub_end();
}
开发者ID:cpopescu,项目名称:whispermedialib,代码行数:51,代码来源:dyn_bits.c


示例13: q_share_work

int q_share_work(int worker_p) {
  LOCK_OR_FRAME(LOCAL_top_or_fr);
  if (Get_REMOTE_prune_request(worker_p)) {
    /* worker p with prune request */
    UNLOCK_OR_FRAME(LOCAL_top_or_fr);
    return FALSE;
  }
#ifdef YAPOR_ERRORS
  if (OrFr_pend_prune_cp(LOCAL_top_or_fr) &&
      BRANCH_LTT(worker_p, OrFr_depth(LOCAL_top_or_fr)) < OrFr_pend_prune_ltt(LOCAL_top_or_fr))
    YAPOR_ERROR_MESSAGE("prune ltt > worker_p branch ltt (q_share_work)");
#endif /* YAPOR_ERRORS */
  /* there is no pending prune with worker p at right --> safe move to worker p branch */
  BRANCH(worker_id, OrFr_depth(LOCAL_top_or_fr)) = BRANCH(worker_p, OrFr_depth(LOCAL_top_or_fr));
  LOCAL_prune_request = NULL;
  UNLOCK_OR_FRAME(LOCAL_top_or_fr);

  /* make sharing request */
  LOCK_WORKER(worker_p);
  if (BITMAP_member(GLOBAL_bm_idle_workers, worker_p) || 
      REMOTE_share_request(worker_p) != MAX_WORKERS) {
    /* worker p is idle or has another request */
    UNLOCK_WORKER(worker_p);
    return FALSE;
  }
  REMOTE_share_request(worker_p) = worker_id;
  UNLOCK_WORKER(worker_p);

  /* wait for an answer */
  while (LOCAL_reply_signal == ready);
  if (LOCAL_reply_signal == no_sharing) {
    /* sharing request refused */
    LOCAL_reply_signal = ready;
    return FALSE;
  }
  /* exit this process */
  exit(0);
}
开发者ID:edechter,项目名称:yap,代码行数:38,代码来源:or.cowengine.c


示例14: ZBRANCH

void ZBRANCH()
{
    SWAP();

    if (pop(PSP) == 0)
    {
        BRANCH();
    }

    else
    {
	DROP();
    }
}
开发者ID:free-inode,项目名称:froth,代码行数:14,代码来源:zbranch.c


示例15: calcPeNoAH

/* sum the pe data only for bands where avoid hole is inactive */
static void calcPeNoAH(float *pe,
                       float *constPart,
                       float  *nActiveLines,
                       PE_DATA *peData,
                       int ahFlag[MAX_CHANNELS][MAX_GROUPED_SFB],
                       PSY_OUT_CHANNEL  psyOutChannel[MAX_CHANNELS],
                       const int nChannels)
{
   int ch, sfb,sfbGrp;

   COUNT_sub_start("calcPeNoAH");

   MOVE(3);
   *pe = 0.0f;
   *constPart = 0.0f;
   *nActiveLines = 0;

   LOOP(1);
   for(ch=0; ch<nChannels; ch++) {
      PSY_OUT_CHANNEL *psyOutChan = &psyOutChannel[ch];
      PE_CHANNEL_DATA *peChanData = &peData->peChannelData[ch];

      PTR_INIT(2); /* counting previous operations */

      INDIRECT(2); LOOP(1);
      for(sfbGrp = 0;sfbGrp < psyOutChan->sfbCnt;sfbGrp+= psyOutChan->sfbPerGroup){

        PTR_INIT(4); /* pointers for ahFlag[ch][sfbGrp+sfb],
                                     peChanData->sfbPe[sfbGrp+sfb],
                                     peChanData->sfbConstPart[sfbGrp+sfb],
                                     peChanData->sfbNActiveLines[sfbGrp+sfb]
                     */
        INDIRECT(1); LOOP(1);
        for (sfb=0; sfb<psyOutChan->maxSfbPerGroup; sfb++) {

          ADD(1); BRANCH(1);
          if(ahFlag[ch][sfbGrp+sfb] < AH_ACTIVE) {

            ADD(3); STORE(3);
            *pe += peChanData->sfbPe[sfbGrp+sfb];
            *constPart += peChanData->sfbConstPart[sfbGrp+sfb];
            *nActiveLines += peChanData->sfbNActiveLines[sfbGrp+sfb];
          }
        }
      }
   }

   COUNT_sub_end();
}
开发者ID:KISSMonX,项目名称:aacplusenc,代码行数:50,代码来源:adj_thr.c


示例16: SpreadingMax

void SpreadingMax(const int    pbCnt,
                  const float *maskLowFactor,
                  const float *maskHighFactor,
                  float       *pbSpreadedEnergy)
{
   int i;

   COUNT_sub_start("SpreadingMax");

   /* slope to higher frequencies */
   PTR_INIT(2); /* pointers for pbSpreadedEnergy[],
                                maskHighFactor[]
                */
   LOOP(1);
   for (i=1; i<pbCnt; i++) {

      MULT(1); ADD(1); BRANCH(1); MOVE(1);
      pbSpreadedEnergy[i] = max(pbSpreadedEnergy[i],
                                maskHighFactor[i] * pbSpreadedEnergy[i-1]);
   }

   /* slope to lower frequencies */
   PTR_INIT(2); /* pointers for pbSpreadedEnergy[],
                                maskLowFactor[]
                */
   LOOP(1);
   for (i=pbCnt-2; i>=0; i--) {

      MULT(1); ADD(1); BRANCH(1); MOVE(1);
      pbSpreadedEnergy[i] = max(pbSpreadedEnergy[i],
                                maskLowFactor[i] * pbSpreadedEnergy[i+1]);
   }

   COUNT_sub_end();

}
开发者ID:KISSMonX,项目名称:aacplusenc,代码行数:36,代码来源:spreading.c


示例17: make_root_choice_point

void make_root_choice_point(void) {
  if (worker_id == 0) {
    LOCAL_top_cp = GLOBAL_root_cp = OrFr_node(GLOBAL_root_or_fr) = B;
  } else {
    B = LOCAL_top_cp = GLOBAL_root_cp;
    B->cp_tr = TR = ((choiceptr) (worker_offset(0) + (CELL)(B)))->cp_tr;
  }
  B->cp_h = H0;
  B->cp_ap = GETWORK;
  B->cp_or_fr = GLOBAL_root_or_fr;
  LOCAL_top_or_fr = GLOBAL_root_or_fr;
  LOCAL_load = 0;
  LOCAL_prune_request = NULL;
  BRANCH(worker_id, 0) = 0;
  return;
}
开发者ID:edechter,项目名称:yap,代码行数:16,代码来源:or.cowengine.c


示例18: DeleteTonCorrParamExtr

void
DeleteTonCorrParamExtr (HANDLE_SBR_TON_CORR_EST hTonCorr)
{

  COUNT_sub_start("DeleteTonCorrParamExtr");

  BRANCH(1);
  if (hTonCorr) {

   INDIRECT(1); PTR_INIT(1); FUNC(1);
   deleteInvFiltDetector (&hTonCorr->sbrInvFilt);

  }

  COUNT_sub_end();
}
开发者ID:KISSMonX,项目名称:aacplusenc,代码行数:16,代码来源:ton_corr.c


示例19: getbits

/*
 \brief     Reads n bits from Bitbuffer

 \return    bits
*/
unsigned long
getbits (HANDLE_BIT_BUFFER hBitBuf,
         int n)
{
  unsigned long ret_value = 0;

  assert(n <= 32);

  FLC_sub_start("getbits");

  MOVE(1); /* counting previous operation */

  LOOP(1);
  while (n>8) {

    ADD(1);
    n -= 8;

    FUNC(2); SHIFT(1); ADD(1);
    ret_value += getbits(hBitBuf,8) << n;
  }

  INDIRECT(1); ADD(1); BRANCH(1);
  if (hBitBuf->buffered_bits <= 8) {

    INDIRECT(2); SHIFT(1); LOGIC(1); STORE(1);
    hBitBuf->buffer_word = (hBitBuf->buffer_word << 8) | *hBitBuf->char_ptr++;

    ADD(1); STORE(1);
    hBitBuf->buffered_bits += 8;
  }

  ADD(1); STORE(1);
  hBitBuf->buffered_bits -= n;

  SHIFT(2); ADD(2); LOGIC(1);
  ret_value +=
    (hBitBuf->buffer_word >> hBitBuf->buffered_bits) & ((1 << n) - 1);


  INDIRECT(1); ADD(1); STORE(1);
  hBitBuf->nrBitsRead += n;

  FLC_sub_end();

  return (ret_value);
}
开发者ID:wonktnodi,项目名称:webrtc_port,代码行数:52,代码来源:sbr_bitb.cpp


示例20: initElement

static int initElement (ELEMENT_INFO* elInfo, ELEMENT_TYPE elType) {

  int error=0;

  COUNT_sub_start("initElement");

  MOVE(1); /* counting previous operations */

  INDIRECT(1); MOVE(1);
  elInfo->elType=elType;

  BRANCH(2);
  switch(elInfo->elType) {

  case ID_SCE:
    INDIRECT(1); MOVE(1);
    elInfo->nChannelsInEl=1;

    INDIRECT(1); MOVE(1);
    elInfo->ChannelIndex[0]=0;

    INDIRECT(2); STORE(1);
    elInfo->instanceTag=0;
    break;

  case ID_CPE:

    INDIRECT(1); MOVE(1);
    elInfo->nChannelsInEl=2;

    INDIRECT(2); MOVE(2);
    elInfo->ChannelIndex[0]=0;
    elInfo->ChannelIndex[1]=1;

    INDIRECT(1); STORE(1);
    elInfo->instanceTag=0;
    break;

  default:
    MOVE(1);
    error=1;
  }

  COUNT_sub_end();

  return error;
}
开发者ID:KISSMonX,项目名称:aacplusenc,代码行数:47,代码来源:channel_map.c



注:本文中的BRANCH函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ BRCM_READ_REG函数代码示例发布时间:2022-05-30
下一篇:
C++ BP_IS_HOLE函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap