ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/standard.h
(Generate patch)

Comparing ray/src/common/standard.h (file contents):
Revision 1.3 by greg, Thu Jan 18 23:58:53 1990 UTC vs.
Revision 2.9 by gregl, Tue Nov 11 19:53:29 1997 UTC

# Line 1 | Line 1
1 < /* Copyright (c) 1988 Regents of the University of California */
1 > /* Copyright (c) 1997 Silicon Graphics, Inc. */
2  
3 < /* SCCSid "$SunId$ LBL" */
3 > /* SCCSid "$SunId$ SGI" */
4  
5   /*
6   *      Miscellaneous definitions required by many routines.
# Line 8 | Line 8
8  
9   #include  <stdio.h>
10  
11 + #include  <fcntl.h>
12 +
13   #include  <math.h>
14  
15   #include  <errno.h>
16  
17 < #include  "fvect.h"
17 > #include  "mat4.h"
18 >                                /* regular transformation */
19 > typedef struct {
20 >        MAT4  xfm;                              /* transform matrix */
21 >        FLOAT  sca;                             /* scalefactor */
22 > }  XF;
23 >                                /* complemetary tranformation */
24 > typedef struct {
25 >        XF  f;                                  /* forward */
26 >        XF  b;                                  /* backward */
27 > }  FULLXF;
28  
29 < #define  FHUGE          (1e10)          /* large real number */
30 < #define  FTINY          (1e-6)          /* small real number */
31 <
20 < #ifdef  M_PI
21 < #define  PI             M_PI
29 > #ifndef  PI
30 > #ifdef  M_PI
31 > #define  PI             M_PI
32   #else
33 < #define  PI             3.14159265358979323846
33 > #define  PI             3.14159265358979323846
34   #endif
35 + #endif
36  
37 < #ifndef  F_OK                   /* mode bits for access(2) call */
38 < #define  R_OK           4               /* readable */
39 < #define  W_OK           2               /* writable */
40 < #define  X_OK           1               /* executable */
41 < #define  F_OK           0               /* exists */
37 > #ifndef  F_OK                   /* mode bits for access(2) call */
38 > #define  R_OK           4               /* readable */
39 > #define  W_OK           2               /* writable */
40 > #define  X_OK           1               /* executable */
41 > #define  F_OK           0               /* exists */
42   #endif
43 +
44 + extern int  eputs(), wputs();   /* standard error output functions */
45 +
46                                  /* error codes */
47 < #define  WARNING        1               /* non-fatal error */
48 < #define  USER           2               /* fatal user-caused error */
49 < #define  SYSTEM         3               /* fatal system-related error */
50 < #define  INTERNAL       4               /* fatal program-related error */
51 < #define  CONSISTENCY    5               /* bad consistency check, abort */
52 < #define  COMMAND        6               /* interactive error */
47 > #define  WARNING        1               /* non-fatal error */
48 > #define  USER           2               /* fatal user-caused error */
49 > #define  SYSTEM         3               /* fatal system-related error */
50 > #define  INTERNAL       4               /* fatal program-related error */
51 > #define  CONSISTENCY    5               /* bad consistency check, abort */
52 > #define  COMMAND        6               /* interactive error */
53 > #define  NERRS          7
54 >                                /* error struct */
55 > extern struct erract {
56 >        char    pre[16];                /* prefix message */
57 >        int     (*pf)();                /* put function (resettable) */
58 >        int     ec;                     /* exit code (0 means non-fatal) */
59 > } erract[NERRS];        /* list of error actions */
60  
61 + #define  ERRACT_INIT    {       {"warning - ", wputs, 0}, \
62 +                                {"fatal - ", eputs, 1}, \
63 +                                {"system - ", eputs, 2}, \
64 +                                {"internal - ", eputs, 1}, \
65 +                                {"consistency - ", eputs, -1}, \
66 +                                {"", NULL, 0}   }
67 +
68   extern char  errmsg[];                  /* global buffer for error messages */
69  
42 extern int  errno;                      /* system error number */
43
70                                          /* memory operations */
71 < #ifdef  STRUCTASSIGN
72 < #define  copystruct(d,s)        (*(d) = *(s))
71 > #ifdef  NOSTRUCTASS
72 > #define  copystruct(d,s)        bcopy((char *)(s),(char *)(d),sizeof(*(d)))
73   #else
74 < #define  copystruct(d,s)        bcopy((char *)(s),(char *)(d),sizeof(*(d)))
74 > #define  copystruct(d,s)        (*(d) = *(s))
75   #endif
76 < #ifndef  BSD
77 < #define  bcopy(s,d,n)           (void)memcpy(d,s,n)
78 < #define  bzero(d,n)             (void)memset(d,0,n)
79 < #define  bcmp(b1,b2,n)          memcmp(b1,b2,n)
80 < extern char  *memcpy(), *memset();
76 >
77 > #ifndef  BSD
78 > #define  bcopy(s,d,n)           (void)memcpy(d,s,n)
79 > #define  bzero(d,n)             (void)memset(d,0,n)
80 > #define  bcmp(b1,b2,n)          memcmp(b1,b2,n)
81 > #define  index                  strchr
82 > #define  rindex                 strrchr
83   #endif
84  
85 < extern char  *sskip();
86 < extern char  *getpath();
85 > extern char  *sskip(), *sskip2();
86 > extern char  *getpath(), *getenv();
87 > #ifndef malloc
88   extern char  *malloc(), *calloc(), *realloc();
89 + #endif
90   extern char  *bmalloc(), *savestr(), *savqstr();
91 +
92 + #ifdef  DCL_ATOF
93 + extern double  atof();
94 + #endif
95 +
96 + #ifdef MSDOS
97 + #define NIX 1
98 + #endif
99 + #ifdef AMIGA
100 + #define NIX 1
101 + #endif
102 +

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines