30#include "BcpsBranchObject.h"
50 branchingSet_ =
new std::deque<int>();
55 : BcpsBranchObject(model) {
57 branchingSet_ =
new std::deque<int>();
63 BcpsBranchObject(rhs), branchingSet_(rhs.branchingSet_) {}
69 virtual BcpsBranchObject *
clone()
const {
85 virtual double branch(
bool normalBranch =
false);
88 virtual void print(
bool normalBranch);
93 AlpsReturnStatus
encodeBlis(AlpsEncoded *encoded)
const {
95 AlpsReturnStatus status = AlpsReturnStatusOk;
101 AlpsReturnStatus status = AlpsReturnStatusOk;
108 virtual AlpsReturnStatus
encode(AlpsEncoded *encoded)
const {
109 AlpsReturnStatus status = AlpsReturnStatusOk;
111 status = encodeBcps(encoded);
112 status = encodeBlis(encoded);
118 virtual AlpsReturnStatus
decode(AlpsEncoded &encoded) {
120 AlpsReturnStatus status = AlpsReturnStatusOk;
122 status = decodeBcps(encoded);
123 status = decodeBlis(encoded);
@ BlisBranchingObjectTypeBilevel
BlisBranchObjectBilevel()
Default constructor.
virtual AlpsReturnStatus decode(AlpsEncoded &encoded)
Unpack a branching object from an encoded object.
virtual BcpsBranchObject * clone() const
Clone.
std::deque< int > * getBranchingSet() const
Get a pointer to the branching set.
virtual ~BlisBranchObjectBilevel()
Destructor.
BlisBranchObjectBilevel(const BlisBranchObjectBilevel &rhs)
Copy constructor.
virtual void print(bool normalBranch)
Print something about branch - only if log level high.
void addToBranchingSet(int item)
Get a pointer to the branching set.
AlpsReturnStatus encodeBlis(AlpsEncoded *encoded) const
Pack Blis portion to an encoded object.
AlpsReturnStatus decodeBlis(AlpsEncoded &encoded)
Unpack Blis portion from an encoded object.
std::deque< int > * branchingSet_
The indices of variables in the branching set.
BlisBranchObjectBilevel(BcpsModel *model)
Another useful constructor.
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 AlpsReturnStatus encode(AlpsEncoded *encoded) const
Pack to an encoded object.