Beispiel #1
0
static void swap_struct(ng_t *ng)
{
    int i;
    ngram_sz_t j;
    for (i=1;i<=ng->n-1;i++) {
        for (j=0;j<=ng->num_kgrams[i];j++){
            SWAPWORD(&ng->word_id[i][j]);
        }
        
        if (ng->four_byte_counts) {
            for (j=0;j<=ng->num_kgrams[i];j++)
                SWAPWORD(&ng->count4[i][j]);
        }else {
            for (j=0;j<=ng->num_kgrams[i];j++)
                SWAPHALF(&ng->count[i][j]);
        }
    }
    
    for (i=1;i<=ng->n-2;i++) {
        for (j=0;j<=ng->num_kgrams[i];j++) {
            if (ng->four_byte_alphas){
                SWAPWORD(&ng->bo_weight4[i][j]);
            }else{
                SWAPHALF(&ng->bo_weight[i][j]);
            }
        }
        for (j=0;j<=ng->num_kgrams[i];j++) {
            SWAPWORD(&ng->ind[i][j]);
        }
    }
} 
Beispiel #2
0
void *rr_fread(char *ptr, int elsize, int n_elem, FILE *fp,
	       char *header, int not_more)
{
  int n_read, i;
  char dummychar;

  if (n_elem > 0) {
     n_read = fread(ptr,elsize,n_elem,fp);
     if (n_read != n_elem) quit(-1,
	"rr_fread: problems reading %s.  Only %d of %d elements were read\n",
	 header, n_read, n_elem);

     if (elsize == sizeof(int)) {
        for (i=0; i<n_elem; i++) {
	   SWAPWORD(ptr+(elsize*i));
	}
     }
     else if (elsize == sizeof(short)) {
        for (i=0; i<n_elem; i++) {
	   SWAPHALF(ptr+(elsize*i));
        }
     }
     else if (elsize == sizeof(double)) {
        for (i=0; i<n_elem; i++) {
	   SWAPDOUBLE(ptr+(elsize*i));
	}
     }
  }

  if (not_more) {
     if (fread(&dummychar,1,1,fp) != 0)
       quit(-1,"rr_fread: more data after %s - should not be there\n",header);
  }

  return(0); /* Not relevant, but stops compilation warnings. */

}