source: git/kernel/structs.h @ 2e757c

spielwiese
Last change on this file since 2e757c was 1745e5, checked in by Hans Schoenemann <hannes@…>, 13 years ago
int64.* ->misc, rCopy0AndAddA ->ring.h, fix walkSupport.cc
  • Property mode set to 100644
File size: 1.8 KB
Line 
1#ifndef STRUCTS_H
2#define STRUCTS_H
3/****************************************
4*  Computer Algebra System SINGULAR     *
5****************************************/
6/* $Id$ */
7/*
8* ABSTRACT
9*/
10
11/* for omBin */
12#include <omalloc/omalloc.h>
13#include <misc/auxiliary.h>
14#include <polys/polys.h>
15#include <polys/coeffrings.h>
16
17#ifdef HAVE_RINGS
18#include <coeffs/si_gmp.h>
19#endif
20
21/* standard types */
22#ifdef HAVE_RINGS
23typedef unsigned long NATNUMBER;
24typedef mpz_ptr int_number;
25#endif
26
27#define BITSET  unsigned int
28
29
30/* C++-part */
31#ifdef __cplusplus
32class sleftv;
33class procinfo;
34class skStrategy;
35class ssyStrategy;
36class CPolynomialSummator;
37class CGlobalMultiplier;
38class CFormulaPowerMultiplier;
39#endif
40
41struct sip_package;
42typedef struct sip_package ip_package;
43typedef ip_package *       package;
44
45typedef struct  n_Procs_s  n_Procs_s;
46
47// #ifdef HAVE_PLURAL
48struct nc_struct;
49typedef struct nc_struct   nc_struct;
50// #endif
51
52typedef struct sip_link    ip_link;
53
54/* the pointer types */
55typedef char *             char_ptr;
56typedef int  *             int_ptr;
57
58#ifdef __cplusplus
59//typedef ip_link *          si_link;
60typedef sleftv *           leftv;
61//typedef slists *           lists;
62//typedef sattr *            attr;
63typedef skStrategy *       kStrategy;
64typedef ssyStrategy *      syStrategy;
65typedef procinfo *         procinfov;
66
67/* the function pointer types */
68
69class idrec;
70typedef idrec *   idhdl;
71
72#endif /* __cplusplus */
73
74
75
76/*
77**  7. runtime procedures/global data
78*/
79
80/* 7.1 C-routines : */
81
82
83#ifdef __cplusplus
84extern "C" {
85#endif
86void  m2_end(int i) __attribute__((noreturn));
87#ifdef __cplusplus
88}
89#endif
90
91/* 7.2 C++-routines : */
92
93#ifdef __cplusplus
94int   inits(void);
95int   IsPrime(int i);
96extern int siSeed;
97int siRand();
98#endif
99
100#define loop for(;;)
101
102#ifndef ABS
103#define ABS(x) ((x)<0?(-(x)):(x))
104#endif
105
106extern omBin char_ptr_bin;
107
108#endif
109
Note: See TracBrowser for help on using the repository browser.