00001 00033 #ifndef ABA_NUMCON_H 00034 #define ABA_NUMCON_H 00035 00036 #include "abacus/constraint.h" 00037 00038 class ABA_NUMCON : public ABA_CONSTRAINT { 00039 public: 00040 00064 ABA_NUMCON(ABA_MASTER *master, 00065 const ABA_SUB *sub, 00066 ABA_CSENSE::SENSE sense, 00067 bool dynamic, 00068 bool local, 00069 bool liftable, 00070 int number, 00071 double rhs); 00072 00074 virtual ~ABA_NUMCON(); 00075 #ifdef ABACUS_PARALLEL 00076 00081 ABA_NUMCON(const ABA_MASTER *master, ABA_MESSAGE &msg); 00082 00087 virtual void pack(ABA_MESSAGE &msg) const; 00088 00093 virtual int classId() const; 00094 #endif 00095 00103 friend ostream &operator<<(ostream &out, const ABA_NUMCON &rhs); 00104 00110 virtual double coeff(ABA_VARIABLE *v); 00111 00119 virtual void print(ostream &out); 00120 00123 int number() const; 00124 00125 private: 00126 int number_; 00127 }; 00128 00129 00130 inline int ABA_NUMCON::number () const 00131 { 00132 return number_; 00133 } 00134 00135 00136 #endif // ABA_NUMCON_H 00137 00138