Пример #1
0
void print_index_block(FILE *list, struct fcb *f, struct ix_block *b)
{int i,lc,load; unsigned char t[maxkey_lc];

  fprintf(list," keys=%d",b->keys_in_block);
  lc = b->chars_in_use + (b->keys_in_block * sizeof(UINT16));
  load = (lc*100) / (keyspace_lc);
  fprintf(list,", chars=%d(%d) %d%% loaded",b->chars_in_use,lc,load);
  fprintf(list,", level=%d",b->level);
  fprintf(list,", ix_type=");
  print_index_type(list,b->index_type);
  fprintf(list,", prefix_lc=%d",b->prefix_lc);
  if ( b->prefix_lc>0 ) {
    fprintf(list,", prefix=");
    mvc(b->keys,keyspace_lc-b->prefix_lc,t,0,b->prefix_lc);
    print_text_or_binary(list,t,b->prefix_lc);
    /*    for (i=0; i<b->prefix_lc; i++) 
      if ( b->index_type==user_ix ) fprintf(list,"%c",t[i]);
      else fprintf(list,"%2x ",t[i]);*/
    fprintf(list,"\n");
  }
  print_leveln_pntr(list,"   next=",&(b->next));
  print_leveln_pntr(list," prev=",&(b->prev));
  fprintf(list,"\n");
  if ( b->keys_in_block<50 ) {
    for (i=0; i<b->keys_in_block; i++) print_ix_block_entry(list,f,b,i);
  }
  else {
    for (i=0; i<20; i++) print_ix_block_entry(list,f,b,i);
    fprintf(list,"    ...\n");
    for (i=b->keys_in_block-20; i<b->keys_in_block; i++) print_ix_block_entry(list,f,b,i);
  }
}
Пример #2
0
MStatus
YarnCurve::addCV(float cvX, float cvY, float cvZ)
{
	MPoint cv(cvX, 0.0, cvZ);

	// create new set of MVC weights for CV
	MVCWeights weights;
	MVC mvc(cageVertices);
	mvc.computeMVCWeights(weights, cv);

	// add CV to curve
	CVweights.push_back(weights);
	CVoffsets.push_back(cvY);

	// return success
	return MStatus::kSuccess;
}