source: git/kernel/options.h @ c1b9927

spielwiese
Last change on this file since c1b9927 was 750e70, checked in by Oleksandr Motsak <motsak@…>, 13 years ago
ADD: new option(notSyzMinim) should switch off all resolution minimizations (lres/nres/mres) From: Oleksandr Motsak <motsak@mathematik.uni-kl.de> git-svn-id: file:///usr/local/Singular/svn/trunk@14204 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 4.2 KB
Line 
1#ifndef OPTIONS_H
2#define OPTIONS_H
3/*****************************************
4 * *  Computer Algebra System SINGULAR      *
5 * *****************************************/
6/* $Id$ */
7/*
8 * ABSTRACT: macros for global options
9 */
10
11#include <kernel/structs.h>
12/*the general set of std-options : test */
13/*the general set of verbose-options : verbose */
14#ifdef __cplusplus
15extern "C" BITSET test;
16extern "C" BITSET verbose;
17#else
18extern BITSET test;
19extern BITSET verbose;
20#endif
21
22/*
23**  Set operations (small sets only)
24*/
25
26#define Sy_bit(x)     ((unsigned)1<<(x))
27#define Sy_inset(x,s) ((Sy_bit(x)&(s))?TRUE:FALSE)
28#define BTEST1(a)     Sy_inset((a), test)
29#define BVERBOSE(a)   Sy_inset((a), verbose)
30
31/*
32** defines for BITSETs
33*/
34
35#define V_QUIET       0
36#define V_QRING       1
37#define V_SHOW_MEM    2
38#define V_YACC        3
39#define V_REDEFINE    4
40#define V_READING     5
41#define V_LOAD_LIB    6
42#define V_DEBUG_LIB   7
43#define V_LOAD_PROC   8
44#define V_DEF_RES     9
45
46#define V_SHOW_USE   11
47#define V_IMAP       12
48#define V_PROMPT     13
49#define V_NSB        14
50#define V_CONTENTSB  15
51#define V_CANCELUNIT 16
52#define V_MODPSOLVSB 17
53#define V_UPTORADICAL 18
54#define V_FINDMONOM  19
55#define V_COEFSTRAT  20
56#define V_IDLIFT     21
57#define V_LENGTH     22
58/*23: kDebugPrint */
59#define V_ALLWARN    24
60#define V_INTERSECT_ELIM 25
61#define V_INTERSECT_SYZ 26
62/* for tests: 27-30 */
63#define V_DEG_STOP   31
64
65
66#define OPT_PROT           0
67#define OPT_REDSB          1
68#define OPT_NOT_BUCKETS    2
69#define OPT_NOT_SUGAR      3
70#define OPT_INTERRUPT      4
71#define OPT_SUGARCRIT      5
72#define OPT_DEBUG          6
73#define OPT_REDTHROUGH     7
74#define OPT_NO_SYZ_MINIM   8
75#define OPT_RETURN_SB      9
76#define OPT_FASTHC        10
77#define OPT_OLDSTD        20
78
79#define OPT_STAIRCASEBOUND 22
80#define OPT_MULTBOUND     23
81#define OPT_DEGBOUND      24
82#define OPT_REDTAIL       25
83#define OPT_INTSTRATEGY   26
84#define OPT_FINDET        27
85#define OPT_INFREDTAIL    28
86#define OPT_SB_1          29
87#define OPT_NOTREGULARITY 30
88#define OPT_WEIGHTM       31
89
90/* define ring dependent options */
91#define TEST_RINGDEP_OPTS \
92 (Sy_bit(OPT_INTSTRATEGY) | Sy_bit(OPT_REDTHROUGH) | Sy_bit(OPT_REDTAIL))
93
94#define TEST_OPT_PROT              BTEST1(OPT_PROT)
95#define TEST_OPT_REDSB             BTEST1(OPT_REDSB)
96#define TEST_OPT_NOT_BUCKETS       BTEST1(OPT_NOT_BUCKETS)
97#define TEST_OPT_NOT_SUGAR         BTEST1(OPT_NOT_SUGAR)
98#define TEST_OPT_SUGARCRIT         BTEST1(OPT_SUGARCRIT)
99#define TEST_OPT_DEBUG             BTEST1(OPT_DEBUG)
100#define TEST_OPT_FASTHC            BTEST1(OPT_FASTHC)
101#define TEST_OPT_INTSTRATEGY       BTEST1(OPT_INTSTRATEGY)
102#define TEST_OPT_FINDET            BTEST1(OPT_FINDET)
103#define TEST_OPT_RETURN_SB         BTEST1(OPT_RETURN_SB)
104#define TEST_OPT_DEGBOUND          BTEST1(OPT_DEGBOUND)
105#define TEST_OPT_MULTBOUND         BTEST1(OPT_MULTBOUND)
106#define TEST_OPT_STAIRCASEBOUND    BTEST1(OPT_STAIRCASEBOUND)
107#define TEST_OPT_REDTAIL           BTEST1(OPT_REDTAIL)
108#define TEST_OPT_INFREDTAIL        BTEST1(OPT_INFREDTAIL)
109#define TEST_OPT_SB_1              BTEST1(OPT_SB_1)
110#define TEST_OPT_NOTREGULARITY     BTEST1(OPT_NOTREGULARITY)
111#define TEST_OPT_WEIGHTM           BTEST1(OPT_WEIGHTM)
112#define TEST_OPT_REDTHROUGH        BTEST1(OPT_REDTHROUGH)
113#define TEST_OPT_OLDSTD            BTEST1(OPT_OLDSTD)
114#define TEST_OPT_NO_SYZ_MINIM      BTEST1(OPT_NO_SYZ_MINIM)
115
116
117#define TEST_OPT_CONTENTSB         BVERBOSE(V_CONTENTSB)
118#define TEST_OPT_CANCELUNIT        BVERBOSE(V_CANCELUNIT)
119#define TEST_OPT_IDLIFT            BVERBOSE(V_IDLIFT)
120#define TEST_OPT_LENGTH            BVERBOSE(V_LENGTH)
121#define TEST_V_QRING               BVERBOSE(V_QRING)
122#define TEST_V_NSB                 BVERBOSE(V_NSB)
123#define TEST_V_QUIET               BVERBOSE(V_QUIET)
124
125#define TEST_VERB_NSB              BVERBOSE(V_NSB)
126#define TEST_V_DEG_STOP            BVERBOSE(V_DEG_STOP)
127#define TEST_V_MODPSOLVSB          BVERBOSE(V_MODPSOLVSB)
128#define TEST_V_COEFSTRAT           BVERBOSE(V_COEFSTRAT)
129#define TEST_V_UPTORADICAL         BVERBOSE(V_UPTORADICAL)
130#define TEST_V_FINDMONOM           BVERBOSE(V_FINDMONOM)
131#define TEST_V_ALLWARN             BVERBOSE(V_ALLWARN)
132#define TEST_V_INTERSECT_ELIM      BVERBOSE(V_INTERSECT_ELIM)
133#define TEST_V_INTERSECT_SYZ       BVERBOSE(V_INTERSECT_SYZ)
134
135
136#endif
Note: See TracBrowser for help on using the repository browser.