OSDN Git Service

Eos:Extensible object-oriented system for image analysis of electron micrographs
[eos/hostdependX86LINUX64.git] / src / Objects / DataManip / tgaFile / doc / tgaFile.html
1 <H4> Update Time 02/13/10---03:46:08 </H4>
2 <HR>
3 <A NAME="Information">
4 <H2>Information from source codes</H2>
5 </A>
6 <PRE>
7 </PRE>
8 <HR>
9 <A NAME="include">
10 <H2>tgaFile.h</H2>
11 </A>
12 <PRE>
13 #ifndef   TGA_FILE_H 
14 #define   TGA_FILE_H
15
16 typedef enum tgaFileColorMap {
17         tgaFileColorMapNoColorMap=0,
18         tgaFileColorMapColorMap=1
19 } tgaFileColorMap;
20
21 typedef enum tgaFileImageType {
22         tgaFileImageTypeNoImage  = 0,   
23         tgaFileImageTypeColorMappedImage = 1,
24         tgaFileImageTypeTrueColorImage   = 2,
25         tgaFileImageTypeBlackAndWhite    = 3,
26         tgaFileImageTypeRLEColorMappedImage = 9,
27         tgaFileImageTypeRLETrueColorImage   = 10,
28         tgaFileImageTypeRLEBlackAndWhite    = 11
29 } tgaFileImageType;
30
31 typedef struct tgaFileColorMapSpecification {
32         short FirstEntryIndex;
33         short ColorMapLength;
34         unsigned char ColorMapEntrySize;
35 } tgaFileColorMapSpecification;
36
37 typedef enum tgaFileImageOrigin {
38         tgaFileImageOriginBottomLeft  = 0,
39         tgaFileImageOriginBottomRight = 1,
40         tgaFileImageOriginTopLeft     = 2,
41         tgaFileImageOriginTopRight    = 3 
42 } tgaFileImageOrigin;
43
44 typedef union tgaFileDescriptor {
45         unsigned char All;
46         struct {
47                 unsigned char AlphaChannelBits:4;
48                 unsigned char ImageOrigin:2;
49                 unsigned char Unused:2;
50         } Bit;
51 } tgaFileDescriptor;
52
53 typedef struct tgaFileImageSpecification {
54         short Xorigin;
55         short Yorigin;
56         short Width;
57         short Height;
58         unsigned char Depth;
59         tgaFileDescriptor Descriptor;
60 } tgaFileImageSpecification;
61
62 typedef struct tgaFileHeader {
63         unsigned char IDLength;                        /*  1 Byte */
64         unsigned char ColorMapType;                    /*  1 Byte */              
65         unsigned char ImageType;                       /*  1 Byte */
66         tgaFileColorMapSpecification ColorMapSpec;     /*  5 Bytes */
67         tgaFileImageSpecification ImageSpec;           /* 10 Bytes */
68 } tgaFileHeader;                                   /* 18 Bytes */ 
69
70 typedef unsigned char tgaFileImageID;
71 typedef unsigned char tgaFileColorMapData;
72 typedef unsigned char tgaFileImageData;
73 typedef unsigned char tgaFileDeveloperData;
74
75 typedef struct tgaFile {
76         tgaFileHeader        Header;                   /* Field 1-5 : fixed: 18 Bytes */
77         tgaFileImageID*      ImageID;                  /* Field 6: variable */
78         tgaFileColorMapData* ColorMapData;             /* Field 7: variable */
79         tgaFileImageData*    Image;                /* Field 8: variable */
80         tgaFileDeveloperData* DeveloperData;           /* Field 9: variable */ 
81
82         /* Additional Information */
83         int flagHeader; 
84         int ImageDataOffset;
85         int ImageDataBytes;
86 } tgaFile;
87
88 #ifdef __cplusplust
89 extern "C" {
90 #endif
91 extern tgaFile* tgaFileInit(tgaFile* tga, FILE* fpt, int mode);
92 extern tgaFile* tgaFileImageInit(tgaFile* tga, FILE* fpt, int mode);
93
94 /* in tgaFileRead.c */
95 extern tgaFile* tgaFileHeaderRead(tgaFile* tga, FILE* fpt, int mode);
96 extern tgaFile* tgaFileImageDataRead(tgaFile* tga, FILE* fpt, int mode);
97 extern tgaFile* tgaFileRead(tgaFile* tga, FILE* fpt, int mode);
98
99 /* in tgaFilePrint */
100 extern void tgaFileHeaderPrint(tgaFile* tga, FILE* out, int mode);
101
102 #ifdef __cplusplust
103 };
104 #endif
105
106 #endif /* TGA_FILE_H */
107 </PRE>