diff options
Diffstat (limited to 'omega/omega_lib/include')
-rw-r--r-- | omega/omega_lib/include/omega/omega_core/oc.h | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/omega/omega_lib/include/omega/omega_core/oc.h b/omega/omega_lib/include/omega/omega_core/oc.h index e12491a..e4f5444 100644 --- a/omega/omega_lib/include/omega/omega_core/oc.h +++ b/omega/omega_lib/include/omega/omega_core/oc.h @@ -66,8 +66,29 @@ extern FILE *outputFile; /* printProblem writes its output to this file */ // #define eqnnzero(e,s) {int *p00,*r00; p00 = (int *)(e); r00 = &p00[headerWords+1+(s)]; while(p00 < r00) *p00++ = 0;} // #define eqnzero(e) eqnnzero(e,nVars) -void eqnncpy(eqn *dest, eqn *src, int); -void eqnnzero(eqn *e, int); +//void eqnncpy(eqn *dest, eqn *src, int); +//void eqnnzero(eqn *e, int); + +inline void eqnncpy(eqn *dest, eqn *src, int nVars) { + dest->key = src->key; + dest->touched = src->touched; + dest->color = src->color; + dest->essential = src->essential; + dest->varCount = src->varCount; + for (int i = 0; i <= nVars; i++) + dest->coef[i] = src->coef[i]; +} + + +inline void eqnnzero(eqn *e, int nVars) { + e->key = 0; + e->touched = 0; + e->color = EQ_BLACK; + e->essential = 0; + e->varCount = 0; + for (int i = 0; i <= nVars; i++) + e->coef[i] = 0; +} extern int mayBeRed; |