23 #ifndef BcpsNodeDesc_h_ 24 #define BcpsNodeDesc_h_ 29 #include "AlpsNodeDesc.h" 146 AlpsNodeDesc(m) { initToNull(); }
155 void setVars(
int numRem,
177 void assignVars(
int numRem,
199 void setCons(
int numRem,
221 void assignCons(
int numRem,
255 void assignVarSoftBound(
int numModSoftVarLB,
263 void setVarSoftBound(
int numModSoftVarLB,
265 const double *varLBv,
268 const double *varUBv);
271 void assignVarHardBound(
int numModHardVarLB,
279 void setConSoftBound(
int numModSoftConLB,
281 const double *conLBv,
284 const double *conUBv);
287 void setVarHardBound(
int numModHardVarLB,
289 const double *varLBv,
292 const double *varUBv);
295 void setConHardBound(
int numModHardConLB,
297 const double *conLBv,
300 const double *conUBv);
305 int numAll = numAdd + cons_->
numAdd;
309 for (k = 0; k < cons_->
numAdd; ++k) {
312 for (k = 0; k < numAdd; ++k) {
313 allAdd[(k+cons_->
numAdd)] = addCons[k];
326 for (
int k = 0; k < cons_->
numAdd; ++k) {
346 for (
int k = 0; k < vars_->
numAdd; ++k) {
366 AlpsReturnStatus encodeDblFieldMods(AlpsEncoded *encoded,
370 AlpsReturnStatus encodeIntFieldMods(AlpsEncoded *encoded,
374 AlpsReturnStatus encodeObjectMods(AlpsEncoded *encoded,
378 AlpsReturnStatus decodeDblFieldMods(AlpsEncoded &encoded,
382 AlpsReturnStatus decodeIntFieldMods(AlpsEncoded &encoded,
386 AlpsReturnStatus decodeObjectMods(AlpsEncoded &encoded,
392 AlpsReturnStatus encodeBcps(AlpsEncoded *encoded)
const;
395 AlpsReturnStatus decodeBcps(AlpsEncoded &encoded);
BcpsObjectListMod * cons_
Constraint objects.
void appendAddedConstraints(int numAdd, BcpsObject **addCons)
Recode the added constraints.
bool relative
How the modification is stored, explicit means complete replacement, relative means relative to some ...
For a given type, the objectVecStorage_ structure holds the description.
int numAdd
The number of objects that are to added.
BcpsFieldListMod< double > lbSoft
Here is the set of vectorMod_ objects that represent the list of objects of a particular type (either...
void addVariables(int numAdd, BcpsObject **addVars)
Record added variables.
BcpsObjectListMod * cons()
Accesss constraints.
BcpsObjectListMod * getCons() const
Get constraint objects.
BcpsFieldListMod< double > ubHard
int numRemove
The number of entries to be deleted.
int * posModify
The positions to be modified.
BcpsFieldListMod< double > lbHard
These are the data structures that store the changes in the individual fields.
BcpsObjectListMod * vars()
Accesss varaibles.
int numModify
The number of entries to be modified.
This class contains modifications for a single std::vector<T> object.
BcpsNodeDesc()
Default constructor.
BcpsObjectListMod * vars_
Variable objects.
BcpsFieldListMod< double > ubSoft
BcpsObject ** objects
The objects to be added.
A class for describing the objects that comprise a BCPS subproblem.
void delConstraints(int numDel, int *indices)
Record the constraints are deleted.
void setAddedConstraints(int numAdd, BcpsObject **addCons)
Recode the added constraints.
BcpsFieldListMod< int > status
int * posRemove
The positions of the entries to be deleted.
BcpsObjectListMod * getVars() const
Get variable objects.
void delVariables(int numDel, int *indices)
Record deleted variables.
BcpsNodeDesc(BcpsModel *m)
Useful constructor.