/* Copyright 1997, 1998, 1999 University Corporation for Atmospheric Research This software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Author: Louis H. Estey Date: July 1999 part of the BINEX source code release, see also: http://www.unavco.ucar.edu/software/binex */ #ifndef _GENERAL_H #define _GENERAL_H #if KR_C /* K&R C function prototypes: */ extern unsigned long read_ubnxi (); extern unsigned long ubnxi_to_uint4 (); extern void binex_f_stx (); extern void binex_append_time (); extern void binex_append_mGFZi (); extern void binex_append_mGFZI (); extern double binex_extract_mGFZi (); extern double binex_extract_mGFZI (); extern void append_uint1 (); extern void append_uint2 (); extern void append_sint2 (); extern void append_uint3 (); extern void append_uint4 (); extern void append_sint4 (); extern void append_real4 (); extern void append_real8 (); extern void extract_uint1 (); extern void extract_uint2 (); extern void extract_sint2 (); extern void extract_uint3 (); extern void extract_uint4 (); extern void extract_sint4 (); extern void extract_real4 (); extern void extract_real8 (); extern unsigned char binex_build_SV_id (); extern bool binex_extract_SV_id (); extern unsigned long uint4_to_ubnxi (); extern void binex_crc (); extern void reverse_bytes (); extern void swap_pp (); extern void swap_c (); extern void swap_uc (); extern void swap_i (); extern void swap_d (); #else /* ANSI C function prototypes: */ extern unsigned long read_ubnxi (FILE_INFO *, unsigned char *, unsigned char *); extern unsigned long ubnxi_to_uint4 (unsigned char *, unsigned char); extern void binex_f_stx (FILE *); extern void binex_append_time (unsigned char *, unsigned long *, unsigned char); extern void binex_append_mGFZi (unsigned char *, unsigned long *, double, bool); extern void binex_append_mGFZI (unsigned char *, unsigned long *, double); extern double binex_extract_mGFZi (unsigned char *, unsigned long *, bool *, bool); extern double binex_extract_mGFZI (unsigned char *, unsigned long *, bool *); extern void append_uint1 (unsigned char *, unsigned long *, unsigned char); extern void append_uint2 (unsigned char *, unsigned long *, unsigned short); extern void append_sint2 (unsigned char *, unsigned long *, short); extern void append_uint3 (unsigned char *, unsigned long *, unsigned long); extern void append_uint4 (unsigned char *, unsigned long *, unsigned long); extern void append_sint4 (unsigned char *, unsigned long *, long); extern void append_real4 (unsigned char *, unsigned long *, float); extern void append_real8 (unsigned char *, unsigned long *, double); extern void extract_uint1 (unsigned char *, unsigned long *, unsigned char *); extern void extract_uint2 (unsigned char *, unsigned long *, unsigned short *); extern void extract_sint2 (unsigned char *, unsigned long *, short *); extern void extract_uint3 (unsigned char *, unsigned long *, unsigned long *); extern void extract_uint4 (unsigned char *, unsigned long *, unsigned long *); extern void extract_sint4 (unsigned char *, unsigned long *, long *); extern void extract_real4 (unsigned char *, unsigned long *, float *); extern void extract_real8 (unsigned char *, unsigned long *, double *); extern unsigned char binex_build_SV_id (SAT_ID *); extern bool binex_extract_SV_id (unsigned char, SAT_ID *); extern unsigned long uint4_to_ubnxi (unsigned char *, unsigned long *, unsigned long); extern void binex_crc (unsigned char *, unsigned char *, unsigned char *, unsigned long *, unsigned long, unsigned long, bool); extern void reverse_bytes (unsigned char *, int); extern void swap_pp (void **, void **); extern void swap_c (char *, char *); extern void swap_uc (unsigned char *, unsigned char *); extern void swap_i (int *, int *); extern void swap_d (double *, double *); #endif #endif