Blame view
sources/3rdparty/phpdocx/pdf/lib/ttf2ufm/src/windows.h
1.74 KB
|
31b7f2792
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 |
/*
* Implementation of things missing in Windows
*/
#ifndef M_PI
#define M_PI 3.14159265358979323846
#endif
#undef ntohs
#undef ntohl
#undef htonl
#ifdef WINDOWS_FUNCTIONS
/* byte order */
static unsigned short StoM(unsigned short inv) {
union iconv {
unsigned short ui;
unsigned char uc[2];
} *inp, outv;
inp = (union iconv *)&inv;
outv.uc[0] = inp->uc[1];
outv.uc[1] = inp->uc[0];
return (outv.ui);
}
static unsigned int ItoM(unsigned int inv) {
union iconv {
unsigned int ui;
unsigned char uc[4];
} *inp, outv;
inp = (union iconv *)&inv;
outv.uc[0] = inp->uc[3];
outv.uc[1] = inp->uc[2];
outv.uc[2] = inp->uc[1];
outv.uc[3] = inp->uc[0];
return (outv.ui);
}
unsigned short ntohs(unsigned short inv) { return StoM(inv); }
unsigned long ntohl(unsigned long inv) { return ItoM(inv); }
unsigned long htonl(unsigned long inv) { return ItoM(inv); }
char *optarg;
int optind=1;
char getopt(int argc, char **argv, char *args) {
int n,nlen=strlen(args),nLen=0;
char nCmd;
if (argv[optind] && *argv[optind]=='-') {
nCmd=*((argv[optind]+1));
for (n=0;n<nlen;n++) {
if (args[n] == ':') continue;
if (args[n] == nCmd) {
if (args[n+1]==':') {
char retVal;
retVal=*(argv[optind]+1);
optarg=argv[optind+1];
if (!optarg) optarg="";
optind+=2;
return retVal;
} else {
char retVal;
retVal=*(argv[optind]+1);
optarg=NULL;
optind+=1;
return retVal;
}
}
}
}
return -1;
}
#else
unsigned short ntohs(unsigned short inv);
unsigned long ntohl(unsigned long inv);
unsigned long htonl(unsigned long inv);
extern char *optarg;
extern int optind;
char getopt(int argc, char **argv, char *args);
#endif
|