Changeset 97c955 in git for Singular/links/ssiLink.cc


Ignore:
Timestamp:
Nov 29, 2013, 3:41:32 PM (10 years ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
d349786aef1f8f2b89aa38d805322367d4c96364
Parents:
c42a9f75e7b92be96e4b082346d946500227e213
git-author:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2013-11-29 15:41:32+01:00
git-committer:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2013-11-29 15:41:51+01:00
Message:
fix: ring dep. stuff in newstruct: send/receive via links (ssi:6)

from master
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/links/ssiLink.cc

    rc42a9f r97c955  
    5353#include <Singular/si_signals.h>
    5454
    55 #define SSI_VERSION 5
     55#define SSI_VERSION 6
     56// 5->6: changed newstruct representation
    5657
    5758// 64 bit version:
     
    163164      {
    164165        mpz_t tmp;
    165         mpz_init_set_si(tmp,nn);
     166        mpz_init_set_si(tmp,nn);
    166167        fputs("8 ",d->f_write);
    167168        mpz_out_str (d->f_write,32, tmp);
    168169        fputc(' ',d->f_write);
    169         mpz_clear(tmp);
     170        mpz_clear(tmp);
    170171      }
    171172      #endif
     
    434435       {
    435436         LONG dd=s_readlong(d->f_read);
    436         //#if SIZEOF_LONG == 8
     437        //#if SIZEOF_LONG == 8
    437438         return INT_TO_SR(dd);
    438         //#else
    439         //return nlInit(dd,NULL);
    440         //#endif
     439        //#else
     440        //return nlInit(dd,NULL);
     441        //#endif
    441442       }
    442443     case 5:
     
    12301231             // we are in the top-level, so set the basering to d->r:
    12311232             if (d->r!=NULL)
    1232              {
    1233                d->r->ref++;
     1233             {
     1234               d->r->ref++;
    12341235               ssiSetCurrRing(d->r);
    1235              }
     1236             }
    12361237             if (t==15) return ssiRead1(l);
    12371238           }
     
    12891290    case 19: res->rtyp=BIGINTMAT_CMD;
    12901291             res->data=ssiReadBigintmat(d);
    1291              break;
     1292             break;
    12921293    case 20: ssiReadBlackbox(res,l);
    12931294             break;
     
    13111312                #endif
    13121313                si_opt_1=n98_o1;
    1313                 si_opt_2=n98_o2;
     1314                si_opt_2=n98_o2;
    13141315                return ssiRead1(l);
    13151316             }
     
    13321333}
    13331334//**************************************************************************/
     1335BOOLEAN ssiSetRing(si_link l, ring r, BOOLEAN send)
     1336{
     1337  if(SI_LINK_W_OPEN_P(l)==0)
     1338     if (slOpen(l,SI_LINK_OPEN|SI_LINK_WRITE,NULL)) return TRUE;
     1339  ssiInfo *d = (ssiInfo *)l->data;
     1340  if (d->r!=r)
     1341  {
     1342    if (send)
     1343    {
     1344      fputs("15 ",d->f_write);
     1345      ssiWriteRing(d,r);
     1346    }
     1347    d->r=r;
     1348  }
     1349  if (currRing!=r) rChangeCurrRing(r);
     1350  return FALSE;
     1351}
     1352//**************************************************************************/
     1353
    13341354BOOLEAN ssiWrite(si_link l, leftv data)
    13351355{
     
    14631483
    14641484  s->Status=slStatusSsi;
     1485  s->SetRing=ssiSetRing;
    14651486  s->type="ssi";
    14661487  return s;
     
    20102031// 19 bigintmat <r> <c> ...
    20112032//
    2012 // 20 blackbox <name> ...
     2033// 20 blackbox <name> 1 <len> ...
    20132034//
    20142035// 98: verify version: <ssi-version> <MAX_TOK> <OPT1> <OPT2>
Note: See TracChangeset for help on using the changeset viewer.