source: git/libpolys/polys/prCopyMacros.h @ 75e126

spielwiese
Last change on this file since 75e126 was fea494, checked in by Hans Schoenemann <hannes@…>, 9 years ago
format
  • Property mode set to 100644
File size: 1.5 KB
Line 
1#undef PR_DELETE_MONOM
2#if PR_DELETE_SRC > 0
3#define PR_DELETE_MONOM(src, r_src)             \
4do                                              \
5{                                               \
6  PR_NDELETE(&pGetCoeff(src), r_src);           \
7  p_LmFree(src, r_src);            \
8}                                               \
9while (0)
10#else
11#define PR_DELETE_MONOM(src, r_src) do {} while (0)
12#endif
13
14#undef PR_INIT_EVECTOR_COPY
15#undef PR_CPY_EVECTOR
16#undef PR_ALLOC_MONOM
17#if PR_RING_EQUAL > 0
18#undef PR_NO_SORT
19#define PR_NO_SORT 1
20#define PR_INIT_EVECTOR_COPY(r_src, r_dest) do {} while (0)
21#define PR_CPY_EVECTOR(dest, dest_r, src, src_r) \
22  omMemcpyW(dest->exp, src->exp, dest_r->ExpL_Size)
23#define PR_ALLOC_MONOM(r) p_New(r)
24#undef PR_ALLOC_MONOM
25#define PR_ALLOC_MONOM(r) p_Init(r)
26#else
27#define  PR_INIT_EVECTOR_COPY(r_src, r_dest) int _min = si_min(r_dest->N, r_src->N)
28#define  PR_CPY_EVECTOR(dest, dest_r, src, src_r) \
29  prCopyEvector(dest, dest_r, src, src_r, _min)
30#define PR_ALLOC_MONOM(r) p_Init(r)
31#endif
32
33#undef PR_NCOPY
34#undef PR_NDELETE
35#undef PR_NUMBER_SIMPLE_NAME
36#if PR_NUMBER_SIMPLE > 0
37#define PR_NCOPY(n, r) n
38#define PR_NDELETE(n, r) do {} while (0)
39#define PR_NUMBER_SIMPLE_NAME NSimple
40#else
41#define PR_NCOPY(n, r) n_Copy(n,r->cf)
42#define PR_NDELETE(n, r) n_Delete(n,r->cf)
43#define PR_NUMBER_SIMPLE_NAME NoNSimple
44#endif
45
46#undef PR_SORT_POLY
47#if PR_NO_SORT > 0
48#define PR_SORT_POLY(p, d_r, s_r) do {} while (0)
49#else
50#define PR_SORT_POLY(p, d_r, s_r) p = p_SortMerge(p, d_r, d_r->OrdSgn == s_r->OrdSgn)
51#endif
52
Note: See TracBrowser for help on using the repository browser.