version 1.12, 2003/08/20 01:39:17 |
version 1.19, 2016/03/31 03:22:54 |
|
|
/* $OpenXM: OpenXM/src/kan96xx/Kan/option.c,v 1.11 2003/08/19 08:02:10 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/Kan/option.c,v 1.18 2011/10/05 05:46:14 takayama Exp $ */ |
#include <stdio.h> |
#include <stdio.h> |
#include "datatype.h" |
#include "datatype.h" |
#include "stackm.h" |
#include "stackm.h" |
|
|
#include "kclass.h" |
#include "kclass.h" |
#include "lookup.h" |
#include "lookup.h" |
#include <signal.h> |
#include <signal.h> |
|
#include "../plugin/mysig.h" |
|
|
extern void ctrlC(); |
extern void ctrlC(); |
|
|
Line 17 struct object KsystemVariable(ob) |
|
Line 18 struct object KsystemVariable(ob) |
|
/* Don't forget to write the keys in usage.c */ |
/* Don't forget to write the keys in usage.c */ |
extern int PrintDollar; |
extern int PrintDollar; |
extern int Wrap; |
extern int Wrap; |
|
extern int COutput; |
extern struct ring *CurrentRingp; |
extern struct ring *CurrentRingp; |
extern int Verbose; |
extern int Verbose; |
extern int UseCriterion1; |
extern int UseCriterion1; |
Line 55 struct object KsystemVariable(ob) |
|
Line 57 struct object KsystemVariable(ob) |
|
extern int EcartAutomaticHomogenization; |
extern int EcartAutomaticHomogenization; |
extern int TraceLift; |
extern int TraceLift; |
extern int DoCancel; |
extern int DoCancel; |
|
extern int DebugContentReduction; |
|
extern int QuoteMode; |
|
extern int RestrictedMode, RestrictedMode_saved; |
|
extern int UseDsmall; |
|
|
int n,i; |
int n,i; |
struct object ob1,ob2,ob3,ob4; |
struct object ob1 = OINIT; |
|
struct object ob2 = OINIT; |
|
struct object ob3 = OINIT; |
|
struct object ob4 = OINIT; |
struct object rob = NullObject; |
struct object rob = NullObject; |
switch (getoaSize(ob)) { |
switch (getoaSize(ob)) { |
case 1: /* get the value */ |
case 1: /* get the value */ |
Line 68 struct object KsystemVariable(ob) |
|
Line 77 struct object KsystemVariable(ob) |
|
rob = KpoInteger(PrintDollar); |
rob = KpoInteger(PrintDollar); |
}else if (strcmp(ob1.lc.str,"Wrap") == 0) { |
}else if (strcmp(ob1.lc.str,"Wrap") == 0) { |
rob = KpoInteger(Wrap); |
rob = KpoInteger(Wrap); |
|
}else if (strcmp(ob1.lc.str,"COutput") == 0) { |
|
rob = KpoInteger(COutput); |
}else if (strcmp(ob1.lc.str,"P") == 0) { |
}else if (strcmp(ob1.lc.str,"P") == 0) { |
rob = KpoInteger(CurrentRingp->p); |
rob = KpoInteger(CurrentRingp->p); |
}else if (strcmp(ob1.lc.str,"N") == 0) { |
}else if (strcmp(ob1.lc.str,"N") == 0) { |
Line 182 struct object KsystemVariable(ob) |
|
Line 193 struct object KsystemVariable(ob) |
|
rob = KpoString(RightBracket); |
rob = KpoString(RightBracket); |
}else if (strcmp(ob1.lc.str,"SecureMode")==0) { |
}else if (strcmp(ob1.lc.str,"SecureMode")==0) { |
rob = KpoInteger(SecureMode); |
rob = KpoInteger(SecureMode); |
|
}else if (strcmp(ob1.lc.str,"RestrictedMode")==0) { |
|
rob = KpoInteger(RestrictedMode); |
}else if (strcmp(ob1.lc.str,"Ecart")==0) { |
}else if (strcmp(ob1.lc.str,"Ecart")==0) { |
rob = KpoInteger(Ecart); |
rob = KpoInteger(Ecart); |
}else if (strcmp(ob1.lc.str,"EcartAutomaticHomogenization")==0) { |
}else if (strcmp(ob1.lc.str,"EcartAutomaticHomogenization")==0) { |
Line 190 struct object KsystemVariable(ob) |
|
Line 203 struct object KsystemVariable(ob) |
|
rob = KpoInteger(TraceLift); |
rob = KpoInteger(TraceLift); |
}else if (strcmp(ob1.lc.str,"DoCancel")==0) { |
}else if (strcmp(ob1.lc.str,"DoCancel")==0) { |
rob = KpoInteger(DoCancel); |
rob = KpoInteger(DoCancel); |
|
}else if (strcmp(ob1.lc.str,"DebugContentReduction")==0) { |
|
rob = KpoInteger(DebugContentReduction); |
|
}else if (strcmp(ob1.lc.str,"QuoteMode")==0) { |
|
rob = KpoInteger(QuoteMode); |
|
}else if (strcmp(ob1.lc.str,"UseDsmall")==0) { |
|
rob = KpoInteger(UseDsmall); |
}else{ |
}else{ |
warningKan("KsystemVariable():Unknown key word.\n"); |
warningKan("KsystemVariable():Unknown key word.\n"); |
} |
} |
Line 214 struct object KsystemVariable(ob) |
|
Line 233 struct object KsystemVariable(ob) |
|
P = ob2.lc.ival; Q should be set here too. |
P = ob2.lc.ival; Q should be set here too. |
CurrentRingp->p = P; |
CurrentRingp->p = P; |
rob = KpoInteger(P); */ |
rob = KpoInteger(P); */ |
|
}else if (strcmp(ob1.lc.str,"COutput") == 0) { |
|
COutput = ob2.lc.ival; |
|
rob = KpoInteger(COutput); |
}else if (strcmp(ob1.lc.str,"NN") == 0) { |
}else if (strcmp(ob1.lc.str,"NN") == 0) { |
if (ob2.lc.ival <= CurrentRingp->n && ob2.lc.ival >= CurrentRingp->m) { |
if (ob2.lc.ival <= CurrentRingp->n && ob2.lc.ival >= CurrentRingp->m) { |
CurrentRingp->nn = ob2.lc.ival; |
CurrentRingp->nn = ob2.lc.ival; |
Line 262 struct object KsystemVariable(ob) |
|
Line 284 struct object KsystemVariable(ob) |
|
rob = KpoInteger(Strict2); |
rob = KpoInteger(Strict2); |
}else if (strcmp(ob1.lc.str,"SigIgn") == 0) { |
}else if (strcmp(ob1.lc.str,"SigIgn") == 0) { |
SigIgn = ob2.lc.ival; |
SigIgn = ob2.lc.ival; |
if (SigIgn) signal(SIGINT,SIG_IGN); |
if (SigIgn) mysignal(SIGINT,SIG_IGN); |
else signal(SIGINT,ctrlC); |
else mysignal(SIGINT,ctrlC); |
rob = KpoInteger(SigIgn); |
rob = KpoInteger(SigIgn); |
}else if (strcmp(ob1.lc.str,"KSPushEnvMode") == 0) { |
}else if (strcmp(ob1.lc.str,"KSPushEnvMode") == 0) { |
KSPushEnvMode = ob2.lc.ival; |
KSPushEnvMode = ob2.lc.ival; |
Line 308 struct object KsystemVariable(ob) |
|
Line 330 struct object KsystemVariable(ob) |
|
errorKan1("%s\n","You cannot weaken the security level."); |
errorKan1("%s\n","You cannot weaken the security level."); |
} |
} |
rob = KpoInteger(SecureMode); |
rob = KpoInteger(SecureMode); |
|
}else if (strcmp(ob1.lc.str,"RestrictedMode") == 0) { |
|
if (KopInteger(ob2) >= RestrictedMode) { |
|
RestrictedMode = KopInteger(ob2); |
|
RestrictedMode_saved = RestrictedMode; |
|
}else{ |
|
errorKan1("%s\n","You cannot weaken the RestrictedMode level."); |
|
} |
|
rob = KpoInteger(RestrictedMode); |
}else if (strcmp(ob1.lc.str,"Ecart") == 0) { |
}else if (strcmp(ob1.lc.str,"Ecart") == 0) { |
Ecart = KopInteger(ob2); |
Ecart = KopInteger(ob2); |
rob = KpoInteger(Ecart); |
rob = KpoInteger(Ecart); |
Line 320 struct object KsystemVariable(ob) |
|
Line 350 struct object KsystemVariable(ob) |
|
}else if (strcmp(ob1.lc.str,"DoCancel") == 0) { |
}else if (strcmp(ob1.lc.str,"DoCancel") == 0) { |
DoCancel = KopInteger(ob2); |
DoCancel = KopInteger(ob2); |
rob = KpoInteger(DoCancel); |
rob = KpoInteger(DoCancel); |
|
}else if (strcmp(ob1.lc.str,"DebugContentReduction") == 0) { |
|
DebugContentReduction = KopInteger(ob2); |
|
rob = KpoInteger(DebugContentReduction); |
|
}else if (strcmp(ob1.lc.str,"QuoteMode") == 0) { |
|
QuoteMode = KopInteger(ob2); |
|
rob = KpoInteger(QuoteMode); |
|
}else if (strcmp(ob1.lc.str,"UseDsmall") == 0) { |
|
UseDsmall = KopInteger(ob2); |
|
rob = KpoInteger(UseDsmall); |
}else{ |
}else{ |
warningKan("KsystemVariable():Unknown key word.\n"); |
warningKan("KsystemVariable():Unknown key word.\n"); |
} |
} |