30 #include "BcpsBranchObject.h"
51 branchingSet_ =
new std::deque<int>();
56 : BcpsBranchObject(model) {
58 branchingSet_ =
new std::deque<int>();
64 BcpsBranchObject(rhs), branchingSet_(rhs.branchingSet_) {}
70 virtual BcpsBranchObject *
clone()
const {
86 virtual double branch(
bool normalBranch =
false);
89 virtual void print(
bool normalBranch);
94 AlpsReturnStatus
encodeBlis(AlpsEncoded *encoded)
const {
96 AlpsReturnStatus status = AlpsReturnStatusOk;
102 AlpsReturnStatus status = AlpsReturnStatusOk;
109 virtual AlpsReturnStatus
encode(AlpsEncoded *encoded)
const {
110 AlpsReturnStatus status = AlpsReturnStatusOk;
112 status = encodeBcps(encoded);
119 virtual AlpsReturnStatus
decode(AlpsEncoded &encoded) {
121 AlpsReturnStatus status = AlpsReturnStatusOk;
123 status = decodeBcps(encoded);
std::deque< int > * getBranchingSet() const
Get a pointer to the branching set.
AlpsReturnStatus encodeBlis(AlpsEncoded *encoded) const
Pack Blis portion to an encoded object.
std::deque< int > * branchingSet_
The indices of variables in the branching set.
BlisBranchObjectBilevel & operator=(const BlisBranchObjectBilevel &rhs)
Assignment operator.
BlisBranchObjectBilevel(const BlisBranchObjectBilevel &rhs)
Copy constructor.
BlisBranchObjectBilevel(BcpsModel *model)
Another useful constructor.
void addToBranchingSet(int item)
Get a pointer to the branching set.
virtual BcpsBranchObject * clone() const
Clone.
virtual double branch(bool normalBranch=false)
Set the bounds for the variable according to the current arm of the branch and advances the object st...
virtual void print(bool normalBranch)
Print something about branch - only if log level high.
virtual ~BlisBranchObjectBilevel()
Destructor.
BlisBranchObjectBilevel()
Default constructor.
virtual AlpsReturnStatus encode(AlpsEncoded *encoded) const
Pack to an encoded object.
virtual AlpsReturnStatus decode(AlpsEncoded &encoded)
Unpack a branching object from an encoded object.
AlpsReturnStatus decodeBlis(AlpsEncoded &encoded)
Unpack Blis portion from an encoded object.