coin-Bcp
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
BB_indexed_cut Class Reference

When doing a sprint sort of algorithm on the cuts (i.e., leave out a number of cuts at the beginning and add them only as necessary) this object represents one of these cuts. More...

#include <BB_cut.hpp>

Inheritance diagram for BB_indexed_cut:
Inheritance graph
[legend]
Collaboration diagram for BB_indexed_cut:
Collaboration graph
[legend]

Public Member Functions

void pack (BCP_buffer &buf) const
 Packing cut to a buffer. More...
 
Constructors and destructors
 BB_indexed_cut (BCP_buffer &buf)
 Constructor from content of buffer. More...
 
 BB_indexed_cut (int index, double lb, double ub)
 Constructor from the index itself. More...
 
 ~BB_indexed_cut ()
 Destructor. More...
 
int index () const
 Constructor from content of buffer. More...
 
- Public Member Functions inherited from BCP_cut_algo
 BCP_cut_algo (const double lb, const double ub)
 This constructor just sets the data members to the given values. More...
 
virtual ~BCP_cut_algo ()=0
 The destructor deletes the object. More...
 
BCP_object_t obj_type () const
 Return BCP_AlgoObj indicating that the object is an algorithmic cut. More...
 
- Public Member Functions inherited from BCP_cut
 BCP_cut (const double lb, const double ub)
 The constructor sets the internal index of the cut to zero and the other data members to the given arguments. More...
 
virtual ~BCP_cut ()
 The destructor is virtual so that the appropriate destructor is invoked for every cut. More...
 
int effective_count () const
 Return the effectiveness count of the cut (only in LP process). More...
 
double lb () const
 Return the lower bound on the cut. More...
 
double ub () const
 Return the upper bound on the cut. More...
 
int bcpind () const
 Return the internal index of the cut. More...
 
BCP_obj_status status () const
 Return the status of the cut. More...
 
bool dont_send_to_pool () const
 Return whether the cut should be sent to the Cut Pool process. More...
 
bool is_non_removable () const
 Return whether the cut marked as NotRemovable. More...
 
bool is_to_be_removed () const
 Return whether the cut must be removed from the formulation. More...
 
void set_effective_count (const int cnt)
 Set the effectiveness count to the given value. More...
 
int increase_effective_count ()
 Increase the effectiveness count by 1 (or to 1 if it was negative). More...
 
int decrease_effective_count ()
 Decrease the effectiveness count by 1 (or to -1 if it was positive). More...
 
void set_lb (const double lb)
 Set the lower bound on the cut. More...
 
void set_ub (const double ub)
 Set the upper bound on the cut. More...
 
void change_lb_ub_st (const BCP_obj_change &change)
 Set the lower/upper bounds and the status of the cut simultaneously to the values given in the data members of the argument. More...
 
void change_bounds (const double lb, const double ub)
 Change just the lower/upper bounds. More...
 
void set_bcpind (const int bcpind)
 Set the internal index of the cut. More...
 
void set_bcpind_flip ()
 Flip the internal index of the variable to its negative. More...
 
void set_status (const BCP_obj_status stat)
 Set the status of the cut. More...
 
void dont_send_to_pool (bool flag)
 Set/unset the flag controlling whether the cut could be sent to the Cut Pool process. More...
 
void make_active ()
 Mark the cut as active. More...
 
void make_non_removable ()
 Mark the cut as NotRemovable. More...
 
void make_to_be_removed ()
 Mark the cut as ToBeRemoved. More...
 
- Public Member Functions inherited from Coin::ReferencedObject
 ReferencedObject ()
 
virtual ~ReferencedObject ()
 
int ReferenceCount () const
 
void AddRef () const
 
void ReleaseRef () const
 

Static Public Member Functions

static void * operator new (size_t size)
 
static void operator delete (void *p, size_t size)
 

Private Member Functions

 BB_indexed_cut ()
 
 BB_indexed_cut (const BB_indexed_cut &)
 
BB_indexed_cutoperator= (const BB_indexed_cut &)
 

Private Attributes

int index_
 

Static Private Attributes

static BCP_MemPool memPool
 

Additional Inherited Members

- Protected Attributes inherited from BCP_cut
double _lb
 Lower bound of the cut. More...
 
double _ub
 Upper bound of the cut. More...
 

Detailed Description

When doing a sprint sort of algorithm on the cuts (i.e., leave out a number of cuts at the beginning and add them only as necessary) this object represents one of these cuts.

Only the index of the cut needs to be stored.

Definition at line 19 of file BB_cut.hpp.

Constructor & Destructor Documentation

BB_indexed_cut::BB_indexed_cut ( )
private
BB_indexed_cut::BB_indexed_cut ( const BB_indexed_cut )
private
BB_indexed_cut::BB_indexed_cut ( BCP_buffer buf)

Constructor from content of buffer.

BB_indexed_cut::BB_indexed_cut ( int  index,
double  lb,
double  ub 
)

Constructor from the index itself.

BB_indexed_cut::~BB_indexed_cut ( )
inline

Destructor.

Definition at line 55 of file BB_cut.hpp.

Member Function Documentation

BB_indexed_cut& BB_indexed_cut::operator= ( const BB_indexed_cut )
private
static void* BB_indexed_cut::operator new ( size_t  size)
inlinestatic

Definition at line 35 of file BB_cut.hpp.

References BCP_MemPool::alloc(), and memPool.

static void BB_indexed_cut::operator delete ( void *  p,
size_t  size 
)
inlinestatic

Definition at line 39 of file BB_cut.hpp.

References BCP_MemPool::free(), and memPool.

void BB_indexed_cut::pack ( BCP_buffer buf) const

Packing cut to a buffer.

int BB_indexed_cut::index ( ) const
inline

Constructor from content of buffer.

Definition at line 57 of file BB_cut.hpp.

References index_.

Member Data Documentation

BCP_MemPool BB_indexed_cut::memPool
staticprivate

Definition at line 29 of file BB_cut.hpp.

Referenced by operator delete(), and operator new().

int BB_indexed_cut::index_
private

Definition at line 31 of file BB_cut.hpp.

Referenced by index().


The documentation for this class was generated from the following file: