Manta Interactive Ray Tracer Development Mailing List

Text archives Help


[MANTA] r439 - branches/itanium2/Model/Groups


Chronological Thread 
  • From: hansong@sci.utah.edu
  • To: manta@sci.utah.edu
  • Subject: [MANTA] r439 - branches/itanium2/Model/Groups
  • Date: Fri, 22 Jul 2005 16:39:56 -0600 (MDT)

Author: hansong
Date: Fri Jul 22 16:39:55 2005
New Revision: 439

Modified:
   branches/itanium2/Model/Groups/varray.h
Log:
add different constructor

Modified: branches/itanium2/Model/Groups/varray.h
==============================================================================
--- branches/itanium2/Model/Groups/varray.h     (original)
+++ branches/itanium2/Model/Groups/varray.h     Fri Jul 22 16:39:55 2005
@@ -34,6 +34,9 @@
        VArray(int initMaxLen) {
                init(initMaxLen);
        }
+       VArray(int initMaxLen, int initVal) {
+               init(initMaxLen, initVal);
+       }
 
        void init(int initMaxLen) {
                curLen = 0;
@@ -42,6 +45,14 @@
                assert (array != NULL);
        }
 
+       void init(int initMaxLen, int initVal) {
+               curLen = 0;
+               curMaxLen = initMaxLen;
+               array = (T*)malloc(curMaxLen * sizeof(T));
+               assert (array != NULL);
+               memset(array, initVal, curMaxLen*sizeof(T));
+       }
+
        inline int getLen() { return curLen; }
        inline int getNum() { return curLen; }
        inline void setLen(int len) {
@@ -51,7 +62,7 @@
                        if (array)
                                array = (T*)realloc(array, 
curMaxLen*sizeof(T));
                        else
-                               array = (T*)calloc(curMaxLen, sizeof(T));
+                               array = (T*)malloc(curMaxLen*sizeof(T));
                }
                assert (array != NULL);
        }
@@ -61,7 +72,7 @@
                assert (array != NULL);
        }
        inline void reset() { curLen=0; }
-       inline void append() { 
+       inline T& append() { 
                if (curLen < curMaxLen)
                        curLen ++; 
                else {
@@ -74,6 +85,7 @@
                        assert(array != NULL);
                        curLen ++;
                }
+               return array[curLen-1];
        }
 
        inline void append(const T& data) {




  • [MANTA] r439 - branches/itanium2/Model/Groups, hansong, 07/22/2005

Archive powered by MHonArc 2.6.16.

Top of page