test: pi_basic.h Source File

Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

# pi_basic.h

Go to the documentation of this file.

    00001 /*
    00002         File:           PI_Basic.h
    00003
    00004         Contains:
    00005
    00006         Written by:     U. J. Krabbenhoeft
    00007
    00008         Version:
    00009
    00010         Copyright:      © 1993-1997 by Heidelberger Druckmaschinen AG, all rights reserved.
    00011
    00012 */
    00013
    00014
    00015 #ifndef PI_BasicTypes_h
    00016 #define PI_BasicTypes_h
    00017
    00018 #define TRUE 1
    00019 #define FALSE 0
    00020 #define nil 0
    00021
    00022 #ifndef NULL
    00023 #define NULL 0
    00024 #endif
    00025
    00026 typedef double DREAL;                   /* double Werte fŸr Datenaustausch */
    00027 typedef float REAL;                             /* Floating Werte fŸr Datenaustausch */
    00028
    00029
    00030 typedef unsigned char   UINT8;
    00031 typedef unsigned short  UINT16;
    00032 typedef unsigned int    UINT32;
    00033
    00034 typedef signed char             INT8;
    00035 typedef signed short    INT16;
    00036 typedef signed int              INT32;
    00037
    00038 typedef char    SINT8;
    00039 typedef short   SINT16;
    00040 typedef long    SINT32;
    00041
    00042 typedef char    SInt8;
    00043 typedef short   SInt16;
    00044 typedef long    SInt32;
    00045
    00046 typedef float                   Float32;                        /* IEEE         32bits (04Byte), 1 for sign, 08 for exponent, 23 mantissa */
    00047 typedef double                  Float64;                        /* IEEE         64bits (08Byte), 1 for sign, 11 for exponent, 52 mantissa */
    00048 typedef long double             Float80;                        /* IEEE         80bits (10Byte), 1 for sign, 15 for exponent, 64 mantissa */
    00049
    00050 typedef unsigned char Boolean;
    00051 typedef unsigned char Str255[256], Str63[64], Str32[33], Str31[32], Str27[28], Str15[16];
    00052 typedef char *Ptr;
    00053 typedef char **Handle;
    00054
    00055 struct Point {
    00056     short                                                       v;
    00057     short                                                       h;
    00058 };
    00059 typedef struct Point Point;
    00060
    00061 typedef Point *PointPtr;
    00062 struct Rect {
    00063     short                                                       top;
    00064     short                                                       left;
    00065     short                                                       bottom;
    00066     short                                                       right;
    00067 };
    00068 typedef struct Rect Rect;
    00069 typedef UINT32  Fixed;
    00070 typedef UINT32 OSType;
    00071 typedef short OSErr;
    00072
    00073 typedef Rect *RectPtr;
    00074
    00075 /*
    00076  *      Here ends the list of things that "belong" in Windows.
    00077  */
    00078 struct RGBColor {
    00079     unsigned short                                      red;                                            /*magnitude of red component*/
    00080     unsigned short                                      green;                                          /*magnitude of green component*/
    00081     unsigned short                                      blue;                                           /*magnitude of blue component*/
    00082 };
    00083 typedef struct RGBColor RGBColor, *RGBColorPtr, **RGBColorHdl;
    00084
    00085 struct ColorSpec {
    00086     short                                                       value;                                          /*index or other value*/
    00087     RGBColor                                            rgb;                                            /*true color*/
    00088 };
    00089 typedef struct ColorSpec ColorSpec;
    00090
    00091 typedef ColorSpec *ColorSpecPtr;
    00092
    00093 typedef ColorSpec CSpecArray[1];
    00094
    00095 struct ColorTable {
    00096     long                                                        ctSeed;                                         /*unique identifier for table*/
    00097     short                                                       ctFlags;                                        /*high bit: 0 = PixMap; 1 = device*/
    00098     short                                                       ctSize;                                         /*number of entries in CTTable*/
    00099     CSpecArray                                          ctTable;                                        /*array [0..0] of ColorSpec*/
    00100 };
    00101 typedef struct ColorTable ColorTable, *CTabPtr, **CTabHandle;
    00102
    00103 struct PixMap {
    00104     Ptr                                                         baseAddr;                                       /*pointer to pixels*/
    00105     short                                                       rowBytes;                                       /*offset to next line*/
    00106     Rect                                                        bounds;                                         /*encloses bitmap*/
    00107     short                                                       pmVersion;                                      /*pixMap version number*/
    00108     short                                                       packType;                                       /*defines packing format*/
    00109     long                                                        packSize;                                       /*length of pixel data*/
    00110     Fixed                                                       hRes;                                           /*horiz. resolution (ppi)*/
    00111     Fixed                                                       vRes;                                           /*vert. resolution (ppi)*/
    00112     short                                                       pixelType;                                      /*defines pixel type*/
    00113     short                                                       pixelSize;                                      /*# bits in pixel*/
    00114     short                                                       cmpCount;                                       /*# components in pixel*/
    00115     short                                                       cmpSize;                                        /*# bits per component*/
    00116     long                                                        planeBytes;                                     /*offset to next plane*/
    00117     CTabHandle                                          pmTable;                                        /*color map for this pixMap*/
    00118     long                                                        pmReserved;                                     /*for future use. MUST BE 0*/
    00119 };
    00120 typedef struct PixMap PixMap, *PixMapPtr, **PixMapHandle;
    00121
    00122 struct ColorWorldInstanceRecord {
    00123     long                                                        data[4];
    00124 };
    00125 typedef struct ColorWorldInstanceRecord ColorWorldInstanceRecord;
    00126
    00127 typedef ColorWorldInstanceRecord *ColorWorldInstance;
    00128
    00129 struct BitMap {
    00130     Ptr                                                         baseAddr;
    00131     short                                                       rowBytes;
    00132     Rect                                                        bounds;
    00133 };
    00134 typedef struct BitMap BitMap;
    00135
    00136 typedef BitMap *BitMapPtr, **BitMapHandle;
    00137
    00138 struct Picture {
    00139     short                                                       picSize;
    00140     Rect                                                        picFrame;
    00141 };
    00142 typedef struct Picture Picture;
    00143
    00144 typedef Picture *PicPtr, **PicHandle;
    00145
    00146 struct DateTimeRec {
    00147     short                                                       year;
    00148     short                                                       month;
    00149     short                                                       day;
    00150     short                                                       hour;
    00151     short                                                       minute;
    00152     short                                                       second;
    00153     short                                                       dayOfWeek;
    00154 };
    00155 typedef struct DateTimeRec DateTimeRec;
    00156
    00157 enum {
    00158     noErr                                               = 0,
    00159     unimpErr                                    = -4,           /* unimplemented core routine, should NOT occure */
    00160         notEnoughMemoryErr              = 8L        /* mem Error used in ProfileAccess.c only, from winerror.h          */
    00161 };
    00162
    00163 #endif