ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/hd/sm_usets.c
(Generate patch)

Comparing ray/src/hd/sm_usets.c (file contents):
Revision 3.2 by greg, Sat Feb 22 02:07:25 2003 UTC vs.
Revision 3.5 by schorsch, Mon Jun 30 14:59:12 2003 UTC

# Line 5 | Line 5 | static const char      RCSid[] = "$Id$";
5   * Quadtree-specific set operations with unsorted sets.
6   */
7  
8 + #include <string.h>
9 +
10   #include "standard.h"
11   #include "sm_flag.h"
12   #include "object.h"
# Line 21 | Line 23 | static const char      RCSid[] = "$Id$";
23   OBJECT  **qtsettab= NULL;               /* quadtree leaf node table */
24   QUADTREE  qtnumsets=0;                  /* number of used set indices */
25   static int  qtfreesets = EMPTY;         /* free set index list */
26 < int4 *qtsetflag = NULL;
26 > int32 *qtsetflag = NULL;
27   static int qtallocsets =0;
28  
29   qtclearsetflags()
# Line 30 | Line 32 | qtclearsetflags()
32    if(!qtsetflag)
33      return;
34  
35 <    bzero((char *)qtsetflag,FLAG_BYTES(qtallocsets));
35 >    memset((char *)qtsetflag, '\0', FLAG_BYTES(qtallocsets));
36   }
37  
38  
# Line 46 | Line 48 | OBJECT  *oset;
48                  osi = qtfreesets;
49                  qtfreesets = (int)qtsettab[osi];
50          } else if ((osi = qtnumsets++) % QTSETIBLK == 0) {
51 <                qtsettab = (OBJECT **)realloc((char *)qtsettab,
51 >                qtsettab = (OBJECT **)realloc((void *)qtsettab,
52                                  (unsigned)(osi+QTSETIBLK)*sizeof(OBJECT *));
53                  if (qtsettab == NULL)
54                          goto memerr;
55 <                qtsetflag = (int4 *)realloc((char *)qtsetflag,
55 >                qtsetflag = (int32 *)realloc((void *)qtsetflag,
56                                     FLAG_BYTES(osi+ QTSETIBLK));
57                  if (qtsetflag == NULL)
58                          goto memerr;
59                  if(qtallocsets)
60 <                  bzero((char *)((char *)(qtsetflag)+FLAG_BYTES(qtallocsets)),
60 >                  memset((char *)((char *)(qtsetflag)+FLAG_BYTES(qtallocsets)), '\0',
61                        FLAG_BYTES(osi+QTSETIBLK)-FLAG_BYTES(qtallocsets));
62                  else
63 <                  bzero((char *)(qtsetflag),FLAG_BYTES(osi +QTSETIBLK));
63 >                  memset((char *)(qtsetflag), '\0', FLAG_BYTES(osi +QTSETIBLK));
64  
65                  qtallocsets = osi + QTSETIBLK;
66          }
# Line 126 | Line 128 | OBJECT  id;
128          }
129          deletuelem(qtsettab[lf], id);
130          if (QTONTHRESH(qtsettab[lf][0]))
131 <                qtsettab[lf] = (OBJECT *)realloc((char *)qtsettab[lf],
131 >                qtsettab[lf] = (OBJECT *)realloc((void *)qtsettab[lf],
132                                  QTNODESIZ(qtsettab[lf][0])*sizeof(OBJECT));
133          return(qt);
134   }
# Line 161 | Line 163 | OBJECT  id;
163          }
164          deletelem(qtsettab[lf], id);
165          if (QTONTHRESH(qtsettab[lf][0]))
166 <                qtsettab[lf] = (OBJECT *)realloc((char *)qtsettab[lf],
166 >                qtsettab[lf] = (OBJECT *)realloc((void *)qtsettab[lf],
167                                  QTNODESIZ(qtsettab[lf][0])*sizeof(OBJECT));
168          return(qt);
169   }
# Line 198 | Line 200 | OBJECT  id;
200            return(qt);
201          }
202          if (QTONTHRESH(qtsettab[lf][0])) {
203 <                qtsettab[lf] = (OBJECT *)realloc((char *)qtsettab[lf],
203 >                qtsettab[lf] = (OBJECT *)realloc((void *)qtsettab[lf],
204                                  QTNODESIZ(qtsettab[lf][0]+1)*sizeof(OBJECT));
205                  if (qtsettab[lf] == NULL)
206                          error(SYSTEM, "out of memory in qtaddelem");
# Line 230 | Line 232 | qtcompressuelem(qt,compress_set)
232          osize = os[0];
233          if((i=compress_set(os)) < osize)
234          {
235 <          qtsettab[lf] = (OBJECT *)realloc((char *)qtsettab[lf],
235 >          qtsettab[lf] = (OBJECT *)realloc((void *)qtsettab[lf],
236                                             QTNODESIZ(i+1)*sizeof(OBJECT));
237            if (qtsettab[lf] == NULL)
238              error(SYSTEM, "out of memory in qtaddelem");
# Line 262 | Line 264 | OBJECT  id;
264          lf = QT_SET_INDEX(qt);
265   #endif
266          if (QTONTHRESH(qtsettab[lf][0])) {
267 <                qtsettab[lf] = (OBJECT *)realloc((char *)qtsettab[lf],
267 >                qtsettab[lf] = (OBJECT *)realloc((void *)qtsettab[lf],
268                                  QTNODESIZ(qtsettab[lf][0]+1)*sizeof(OBJECT));
269                  if (qtsettab[lf] == NULL)
270                          error(SYSTEM, "out of memory in qtaddelem");

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines