#include <CbcEventHandler.hpp>
Collaboration diagram for CbcEventHandler:
Public Types | |
typedef std::map< CbcEvent, CbcAction > | eaMapPair |
Data type for event/action pairs. | |
node = 200 | |
treeStatus | |
solution | |
heuristicSolution | |
noAction = -1 | |
stop = 0 | |
restart | |
restartRoot | |
enum | CbcEvent { node = 200, treeStatus, solution, heuristicSolution } |
Events known to cbc. More... | |
enum | CbcAction { noAction = -1, stop = 0, restart, restartRoot } |
Action codes returned by the event handler. More... | |
Public Member Functions | |
Event Processing | |
virtual CbcAction | event (CbcEvent whichEvent) |
Return the action to be taken for an event. | |
Constructors and destructors | |
CbcEventHandler (const CbcModel *model=NULL) | |
Default constructor. | |
CbcEventHandler (const CbcEventHandler &orig) | |
Copy constructor. | |
CbcEventHandler & | operator= (const CbcEventHandler &rhs) |
Assignment. | |
virtual CbcEventHandler * | clone () const |
Clone (virtual) constructor. | |
virtual | ~CbcEventHandler () |
Destructor. | |
Set/Get methods | |
void | setModel (CbcModel *model) |
Set model. | |
const CbcModel * | getModel () const |
Get model. | |
void | setDfltAction (CbcAction action) |
Set the default action. | |
void | setAction (CbcEvent event, CbcAction action) |
Set the action code associated with an event. | |
Protected Attributes | |
Data members | |
Protected (as opposed to private) to allow access by derived classes. | |
const CbcModel * | model_ |
Pointer to associated CbcModel. | |
CbcAction | dfltAction_ |
Default action. | |
eaMapPair * | eaMap_ |
Pointer to a map that holds non-default event/action pairs. |
Up front: We're not talking about unanticipated events here. We're talking about anticipated events, in the sense that the code is going to make a call to event() and is prepared to obey the return value that it receives.
The general pattern for usage is as follows:
The return value associated with an event can be changed at any time.
Definition at line 77 of file CbcEventHandler.hpp.
typedef std::map<CbcEvent,CbcAction> CbcEventHandler::eaMapPair |
Events known to cbc.
node | Processing of the current node is complete. |
treeStatus | A tree status interval has arrived. |
solution | A solution has been found. |
heuristicSolution | A heuristic solution has been found. |
Definition at line 84 of file CbcEventHandler.hpp.
Action codes returned by the event handler.
Specific values are chosen to match ClpEventHandler return codes.
Definition at line 100 of file CbcEventHandler.hpp.
CbcEventHandler::CbcEventHandler | ( | const CbcModel * | model = NULL |
) |
Default constructor.
CbcEventHandler::CbcEventHandler | ( | const CbcEventHandler & | orig | ) |
Copy constructor.
virtual CbcEventHandler::~CbcEventHandler | ( | ) | [virtual] |
Destructor.
Return the action to be taken for an event.
Return the action that should be taken in response to the event passed as the parameter. The default implementation simply reads a return code from a map.
CbcEventHandler& CbcEventHandler::operator= | ( | const CbcEventHandler & | rhs | ) |
Assignment.
virtual CbcEventHandler* CbcEventHandler::clone | ( | ) | const [virtual] |
Clone (virtual) constructor.
void CbcEventHandler::setModel | ( | CbcModel * | model | ) | [inline] |
const CbcModel* CbcEventHandler::getModel | ( | ) | const [inline] |
void CbcEventHandler::setDfltAction | ( | CbcAction | action | ) | [inline] |
Set the action code associated with an event.
Definition at line 177 of file CbcEventHandler.hpp.
References eaMap_.
const CbcModel* CbcEventHandler::model_ [protected] |
Pointer to associated CbcModel.
Definition at line 195 of file CbcEventHandler.hpp.
Referenced by getModel(), and setModel().
CbcAction CbcEventHandler::dfltAction_ [protected] |
eaMapPair* CbcEventHandler::eaMap_ [protected] |
Pointer to a map that holds non-default event/action pairs.
Definition at line 203 of file CbcEventHandler.hpp.
Referenced by setAction().