/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/utils/eh_io.h

Go to the documentation of this file.
00001 #ifndef __EH_IO_H__
00002 #define __EH_IO_H__
00003 
00004 #include <stdio.h>
00005 #include <glib.h>
00006 
00007 #if G_BYTE_ORDER==G_LITTLE_ENDIAN
00008 
00009 gssize eh_fwrite_int32_to_be ( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00010 gssize eh_fwrite_int64_to_be ( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00011 gssize eh_fread_int32_from_be( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00012 gssize eh_fread_int64_from_be( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00013 
00014 #define eh_fwrite_int32_to_le  ( fwrite )
00015 #define eh_fwrite_int64_to_le  ( fwrite )
00016 #define eh_fread_int32_from_le ( fwrite )
00017 #define eh_fread_int64_from_le ( fwrite )
00018 
00019 #define eh_fwrite_dbl_to_be    ( eh_fwrite_int64_to_be  )
00020 #define eh_fwrite_flt_to_be    ( eh_fwrite_int32_to_be  )
00021 #define eh_fread_dbl_from_be   ( eh_fread_int64_from_be )
00022 #define eh_fread_flt_from_be   ( eh_fread_int32_from_be )
00023 
00024 #define eh_fwrite_int32_swap   ( eh_fwrite_int32_to_be  )
00025 #define eh_fwrite_int64_swap   ( eh_fwrite_int64_to_be  )
00026 #define eh_fread_int32_swap    ( eh_fread_int32_from_be )
00027 #define eh_fread_int64_swap    ( eh_fread_int64_from_be )
00028 
00029 #define eh_fread_flt_swap      ( eh_fread_int32_from_be )
00030 #define eh_fread_dbl_swap      ( eh_fread_int64_from_be )
00031 #define eh_fwrite_flt_swap     ( eh_fwrite_int32_to_be )
00032 #define eh_fwrite_dbl_swap     ( eh_fwrite_int64_to_be )
00033 
00034 #else
00035 
00036 gssize eh_fwrite_int32_to_le ( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00037 gssize eh_fwrite_int64_to_le ( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00038 gssize eh_fread_int32_from_le( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00039 gssize eh_fread_int64_from_le( const void *ptr , gssize size , gssize nitems , FILE* stream  );
00040 
00041 #define eh_fwrite_int32_to_be  ( fwrite )
00042 #define eh_fwrite_int64_to_be  ( fwrite )
00043 #define eh_fread_int32_from_be ( fwrite )
00044 #define eh_fread_int64_from_be ( fwrite )
00045 
00046 #define eh_fwrite_dbl_to_le    ( eh_fwrite_int64_to_le  )
00047 #define eh_fwrite_flt_to_le    ( eh_fwrite_int32_to_le  )
00048 #define eh_fread_dbl_from_le   ( eh_fread_int64_from_le )
00049 #define eh_fread_flt_from_le   ( eh_fread_int32_from_le )
00050 
00051 #define eh_fwrite_int32_swap   ( eh_fwrite_int32_to_le  )
00052 #define eh_fwrite_int64_swap   ( eh_fwrite_int64_to_le  )
00053 #define eh_fread_int32_swap    ( eh_fread_int32_from_le )
00054 #define eh_fread_int64_swap    ( eh_fread_int64_from_le )
00055 
00056 #define eh_fread_flt_swap      ( eh_fread_int32_from_le )
00057 #define eh_fread_dbl_swap      ( eh_fread_int64_from_le )
00058 #define eh_fwrite_flt_swap     ( eh_fwrite_int32_to_le )
00059 #define eh_fwrite_dbl_swap     ( eh_fwrite_int64_to_le )
00060 
00061 #endif
00062 
00063 #if !defined( HAVE_GETLINE )
00064 gssize getline( gchar** lineptr , gsize *n , FILE* stream );
00065 #endif
00066 
00067 gint read_double_vector(FILE *fp,double *val,int len);
00068 gint read_time_vector( FILE *fp , double *val , int len );
00069 gint read_int_vector(FILE *fp,int *val,int len);
00070 
00071 gchar*    eh_scan_str            ( FILE* fp , GError** error );
00072 gchar**   eh_scan_str_array      ( FILE* fp , gint* len , GError** error );
00073 gint*     eh_scan_int_array      ( FILE* fp , gint* len , GError** error );
00074 double*   eh_scan_dbl_array      ( FILE* fp , gint* len , GError** error );
00075 gboolean* eh_scan_boolean_array  ( FILE *fp , gint* len , GError** error );
00076 
00077 void     eh_print_msg            ( int   msg_level , char *function_name , char *msg );
00078 gchar*   eh_input_str            ( char* msg , char *default_str );
00079 gboolean eh_input_boolean        ( char* msg , gboolean default_val );
00080 gchar*   eh_get_input_val        ( FILE* fp  , char *msg , char *default_str );
00081 
00082 #endif

Generated on Fri Jan 4 18:04:16 2008 for sedflux by  doxygen 1.5.2