Loading...
Searching...
No Matches
idol::BranchingRules::BranchingWithPriority< NodeInfoT > Class Template Reference

Description

template<class NodeInfoT>
class idol::BranchingRules::BranchingWithPriority< NodeInfoT >

Definition at line 21 of file BranchingWithPriority.h.

Public Methods

 BranchingWithPriority (const Optimizers::BranchAndBound< NodeInfoT > &t_parent, const std::list< std::unique_ptr<::idol::BranchingRuleFactory< NodeInfoT > > > &t_factories)
void initialize () override
bool is_valid (const Node< NodeInfoT > &t_node) override
std::list< NodeInfoT * > create_child_nodes (const Node< NodeInfoT > &t_node) override
const Optimizers::BranchAndBound< NodeInfoT > & parent () const
const Modelmodel () const
virtual void on_node_solved (const Node< NodeInfoT > &t_node)
virtual void on_nodes_have_been_created ()
template<class T>
T & as ()
template<class T>
const T & as () const
template<class T>
bool is () const

Protected Methods

std::string name () const

Constructor & Destructor Documentation

◆ BranchingWithPriority()

template<class NodeInfoT>
idol::BranchingRules::BranchingWithPriority< NodeInfoT >::BranchingWithPriority ( const Optimizers::BranchAndBound< NodeInfoT > & t_parent,
const std::list< std::unique_ptr<::idol::BranchingRuleFactory< NodeInfoT > > > & t_factories )
inlineexplicit

Definition at line 28 of file BranchingWithPriority.h.

Methods Documentation

◆ as() [1/2]

template<class NodeInfoT>
template<class T>
T & idol::BranchingRule< NodeInfoT >::as ( )
inlineinherited

Definition at line 47 of file BranchingRule.h.

◆ as() [2/2]

template<class NodeInfoT>
template<class T>
const T & idol::BranchingRule< NodeInfoT >::as ( ) const
inlineinherited

Definition at line 55 of file BranchingRule.h.

◆ create_child_nodes()

template<class NodeInfoT>
std::list< NodeInfoT * > idol::BranchingRules::BranchingWithPriority< NodeInfoT >::create_child_nodes ( const Node< NodeInfoT > & t_node)
inlineoverridevirtual

Implements idol::BranchingRule< NodeInfoT >.

Definition at line 60 of file BranchingWithPriority.h.

◆ initialize()

template<class NodeInfoT>
void idol::BranchingRules::BranchingWithPriority< NodeInfoT >::initialize ( )
inlineoverridevirtual

Reimplemented from idol::BranchingRule< NodeInfoT >.

Definition at line 37 of file BranchingWithPriority.h.

◆ is()

template<class NodeInfoT>
template<class T>
bool idol::BranchingRule< NodeInfoT >::is ( ) const
inlinenodiscardinherited

Definition at line 63 of file BranchingRule.h.

◆ is_valid()

template<class NodeInfoT>
bool idol::BranchingRules::BranchingWithPriority< NodeInfoT >::is_valid ( const Node< NodeInfoT > & t_node)
inlineoverridevirtual

Implements idol::BranchingRule< NodeInfoT >.

Definition at line 47 of file BranchingWithPriority.h.

◆ model()

template<class NodeInfoT>
const Model & idol::BranchingRule< NodeInfoT >::model ( ) const
inlinenodiscardinherited

Definition at line 35 of file BranchingRule.h.

◆ name()

template<class NodeInfoT>
std::string idol::BranchingRule< NodeInfoT >::name ( ) const
inlinenodiscardprotectedinherited

Definition at line 28 of file BranchingRule.h.

◆ on_node_solved()

template<class NodeInfoT>
virtual void idol::BranchingRule< NodeInfoT >::on_node_solved ( const Node< NodeInfoT > & t_node)
inlinevirtualinherited

Definition at line 43 of file BranchingRule.h.

◆ on_nodes_have_been_created()

template<class NodeInfoT>
virtual void idol::BranchingRule< NodeInfoT >::on_nodes_have_been_created ( )
inlinevirtualinherited

Definition at line 45 of file BranchingRule.h.

◆ parent()

template<class NodeInfoT>
const Optimizers::BranchAndBound< NodeInfoT > & idol::BranchingRule< NodeInfoT >::parent ( ) const
inlinenodiscardinherited

Definition at line 33 of file BranchingRule.h.