00001
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef _GAN_IMAGE_SGI_IO_H
00030 #define _GAN_IMAGE_SGI_IO_H
00031
00032 #include <stdio.h>
00033 #include <gandalf/common/misc_defs.h>
00034 #include <gandalf/image/image_defs.h>
00035
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif
00039
00053 typedef struct Gan_SGIHeaderStruct
00054 {
00056 Gan_Bool dummy;
00057 } Gan_SGIHeaderStruct;
00058
00059
00060 struct Gan_ImageReadControlStruct;
00061 struct Gan_ImageHeaderStruct;
00062 struct Gan_ImageWriteControlStruct;
00063
00064
00065 Gan_Bool gan_image_is_sgi(const unsigned char *magic_string, size_t length);
00066 Gan_Image *gan_read_sgi_image_stream ( FILE *infile, Gan_Image *image,
00067 const struct Gan_ImageReadControlStruct *ictrlstr, struct Gan_ImageHeaderStruct *header );
00068 Gan_Image *gan_read_sgi_image ( const char *filename, Gan_Image *image,
00069 const struct Gan_ImageReadControlStruct *ictrlstr, struct Gan_ImageHeaderStruct *header );
00070 void gan_initialise_sgi_header_struct(Gan_SGIHeaderStruct *octrlstr);
00071 Gan_Bool gan_write_sgi_image_stream ( FILE *outfile, const Gan_Image *image, Gan_Bool new_file, const struct Gan_ImageWriteControlStruct *octrlstr );
00072 Gan_Bool gan_write_sgi_image ( const char *filename, const Gan_Image *image, const struct Gan_ImageWriteControlStruct *octrlstr );
00073
00082 #ifdef __cplusplus
00083 }
00084 #endif
00085
00086 #endif