summaryrefslogtreecommitdiffstats
path: root/funtools/filter/column.c
blob: a1ad02778aad9630c5e835e668a4892124f9b8d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
 *	Copyright (c) 1999-2003 Smithsonian Astrophysical Observatory
 */
#include <column.h>

#ifdef ANSI_FUNC
void
ColumnLoad(char *ibuf, int size, int n, int convert, void *obuf)
#else
void ColumnLoad(ibuf, size, n, convert, obuf)
     char *ibuf;
     int size;
     int n;
     int convert;
     void *obuf;
#endif
{
  register char *iptr;
  register char *optr;
  int i, j;

  if( convert ){
    optr = (char *)obuf;
    iptr = (char *)ibuf;
    for(i=0; i<n; i++){  
      for(j=size-1; j>=0; j--){
	*optr++ = *(iptr+j);
      }
      iptr += size;
    }
  }
  else{
    memcpy(obuf, ibuf, n*size);
  }
}