Flushage
[mono.git] / mono / metadata / image.h
1 #ifndef _MONONET_METADATA_IMAGE_H_ 
2 #define _MONONET_METADATA_IMAGE_H_
3
4 typedef struct {
5         FILE *f;
6         char *name;
7         void *image_info;
8
9         /*
10          * user_info is a public field and is not touched by the
11          * metadata engine
12          */
13         void *user_info;
14 } MonoImage;
15
16 enum MonoImageOpenStatus {
17         MONO_IMAGE_OK,
18         MONO_IMAGE_ERROR_ERRNO,
19         MONO_IMAGE_IMAGE_INVALID
20 };
21
22 MonoImage    *mono_image_open     (const char *fname,
23                                    enum MonoImageOpenStatus *status);
24 void          mono_image_close    (MonoImage *image);
25 const char   *mono_image_strerror (enum MonoImageOpenStatus status);
26
27
28 int           mono_image_ensure_section     (MonoImage *image,
29                                              const char *section);
30 int           mono_image_ensure_section_idx (MonoImage *image,
31                                              int section);
32         
33 #endif