[BACK]Return to iarray.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / builtin

Diff for /OpenXM_contrib2/asir2000/builtin/iarray.c between version 1.1 and 1.2

version 1.1, 2004/12/18 16:50:10 version 1.2, 2005/01/17 07:43:24
Line 1 
Line 1 
 /*  /*
  * $OpenXM$   * $OpenXM: OpenXM_contrib2/asir2000/builtin/iarray.c,v 1.1 2004/12/18 16:50:10 saito Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "base.h"  #include "base.h"
Line 91  Obj body;
Line 91  Obj body;
                 m->root = (pointer)Im;                  m->root = (pointer)Im;
                 m->toor = (pointer)Im;                  m->toor = (pointer)Im;
                 m->clen = 1;                  m->clen = 1;
                 MEnt(row * m->row + col, row, col, body, &Im->ient[0]);                  MEnt(row * m->col + col, row, col, body, &Im->ient[0]);
                 Im->ient[1] = zent;                  Im->ient[1] = zent;
         } else {          } else {
                 Im = (pointer)m->toor;                  Im = (pointer)m->toor;
Line 104  Obj body;
Line 104  Obj body;
                         ++(m->clen);                          ++(m->clen);
                         Imt->fore = (pointer)Im;                          Imt->fore = (pointer)Im;
                         Imt->next = 0;                          Imt->next = 0;
                         MEnt(row * m->row + col, row, col, body, &Im->ient[d]);                          MEnt(row *  m->col + col, row, col, body, &Im->ient[d]);
                         Imt->ient[0] = zent;                          Imt->ient[0] = zent;
                 } else {                  } else {
                         MEnt(row * m->row + col, row, col, body, &Im->ient[d]);                          MEnt(row * m->col + col, row, col, body, &Im->ient[d]);
                         Im->ient[d + 1] = zent;                          Im->ient[d + 1] = zent;
                 }                  }
         }          }
Line 125  Obj trg;
Line 125  Obj trg;
   
         if ( m->row <= row || m->col <= col || row < 0 || col < 0 )          if ( m->row <= row || m->col <= col || row < 0 || col < 0 )
                 error("putim : Out of rage");                  error("putim : Out of rage");
         cr = row * m->row + col;          cr = row * m->col + col;
   printf("cr = %d\n",cr);
         if ( ! m->clen ) {          if ( ! m->clen ) {
                 if( trg == 0 ) return;                  if( trg == 0 ) return;
                 AppendIent(m, row, col, trg);                  AppendIent(m, row, col, trg);
Line 209  Obj *trg;
Line 210  Obj *trg;
         /* zero matrix case */          /* zero matrix case */
                 *trg = (Obj)0;                  *trg = (Obj)0;
         } else {          } else {
                 cr = row * m->row + col;                  cr = row * m->col + col;
                 c = -1;                  c = -1;
                 Im = (pointer)m->root;                  Im = (pointer)m->root;
                 GetNextIent( &Im, &ent, &c);                  GetNextIent( &Im, &ent, &c);

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>