Google OR-Tools v9.15
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
operations_research::LinearSumAssignment< GraphType, CostValue > Class Template Reference

Detailed Description

template<typename GraphType, typename CostValue = int64_t>
class operations_research::LinearSumAssignment< GraphType, CostValue >

Definition at line 225 of file linear_assignment.h.

#include <linear_assignment.h>

Public Types

typedef GraphType::NodeIndex NodeIndex
typedef GraphType::ArcIndex ArcIndex
typedef CostValue CostValueT

Public Member Functions

 LinearSumAssignment (const GraphType &graph, NodeIndex num_left_nodes)
 LinearSumAssignment (NodeIndex num_left_nodes, ArcIndex num_arcs)
 LinearSumAssignment (const LinearSumAssignment &)=delete
LinearSumAssignmentoperator= (const LinearSumAssignment &)=delete
 ~LinearSumAssignment ()
void SetGraph (const GraphType *graph)
void SetCostScalingDivisor (CostValue factor)
operations_research::PermutationCycleHandler< typename GraphType::ArcIndex > * ArcAnnotationCycleHandler ()
const GraphType & Graph () const
NodeIndex Head (ArcIndex arc) const
CostValue ArcCost (ArcIndex arc) const
void SetArcCost (ArcIndex arc, CostValue cost)
bool FinalizeSetup ()
bool ComputeAssignment ()
CostValue GetCost () const
NodeIndex NumNodes () const
NodeIndex NumLeftNodes () const
ArcIndex GetAssignmentArc (NodeIndex left_node) const
CostValue GetAssignmentCost (NodeIndex node) const
NodeIndex GetMate (NodeIndex left_node) const
std::string StatsString () const
::util::IntegerRange< NodeIndexBipartiteLeftNodes () const
bool EpsilonOptimal () const

Member Typedef Documentation

◆ ArcIndex

template<typename GraphType, typename CostValue = int64_t>
typedef GraphType::ArcIndex operations_research::LinearSumAssignment< GraphType, CostValue >::ArcIndex

Definition at line 228 of file linear_assignment.h.

◆ CostValueT

template<typename GraphType, typename CostValue = int64_t>
typedef CostValue operations_research::LinearSumAssignment< GraphType, CostValue >::CostValueT

Definition at line 229 of file linear_assignment.h.

◆ NodeIndex

template<typename GraphType, typename CostValue = int64_t>
typedef GraphType::NodeIndex operations_research::LinearSumAssignment< GraphType, CostValue >::NodeIndex

Definition at line 227 of file linear_assignment.h.

Constructor & Destructor Documentation

◆ LinearSumAssignment() [1/3]

template<typename GraphType, typename CostValue>
operations_research::LinearSumAssignment< GraphType, CostValue >::LinearSumAssignment ( const GraphType & graph,
NodeIndex num_left_nodes )

Definition at line 935 of file linear_assignment.h.

◆ LinearSumAssignment() [2/3]

template<typename GraphType, typename CostValue>
operations_research::LinearSumAssignment< GraphType, CostValue >::LinearSumAssignment ( NodeIndex num_left_nodes,
ArcIndex num_arcs )

Definition at line 958 of file linear_assignment.h.

◆ LinearSumAssignment() [3/3]

template<typename GraphType, typename CostValue = int64_t>
operations_research::LinearSumAssignment< GraphType, CostValue >::LinearSumAssignment ( const LinearSumAssignment< GraphType, CostValue > & )
delete

◆ ~LinearSumAssignment()

template<typename GraphType, typename CostValue = int64_t>
operations_research::LinearSumAssignment< GraphType, CostValue >::~LinearSumAssignment ( )
inline

Definition at line 246 of file linear_assignment.h.

Member Function Documentation

◆ ArcAnnotationCycleHandler()

template<typename GraphType, typename CostValue>
PermutationCycleHandler< typename GraphType::ArcIndex > * operations_research::LinearSumAssignment< GraphType, CostValue >::ArcAnnotationCycleHandler ( )

Definition at line 1057 of file linear_assignment.h.

◆ ArcCost()

template<typename GraphType, typename CostValue = int64_t>
CostValue operations_research::LinearSumAssignment< GraphType, CostValue >::ArcCost ( ArcIndex arc) const
inline

Definition at line 280 of file linear_assignment.h.

◆ BipartiteLeftNodes()

template<typename GraphType, typename CostValue = int64_t>
::util::IntegerRange< NodeIndex > operations_research::LinearSumAssignment< GraphType, CostValue >::BipartiteLeftNodes ( ) const
inline

Definition at line 349 of file linear_assignment.h.

◆ ComputeAssignment()

template<typename GraphType, typename CostValue>
bool operations_research::LinearSumAssignment< GraphType, CostValue >::ComputeAssignment ( )

Definition at line 1404 of file linear_assignment.h.

◆ EpsilonOptimal()

template<typename GraphType, typename CostValue>
bool operations_research::LinearSumAssignment< GraphType, CostValue >::EpsilonOptimal ( ) const

Definition at line 1314 of file linear_assignment.h.

◆ FinalizeSetup()

template<typename GraphType, typename CostValue>
bool operations_research::LinearSumAssignment< GraphType, CostValue >::FinalizeSetup ( )

Definition at line 1345 of file linear_assignment.h.

◆ GetAssignmentArc()

template<typename GraphType, typename CostValue = int64_t>
ArcIndex operations_research::LinearSumAssignment< GraphType, CostValue >::GetAssignmentArc ( NodeIndex left_node) const
inline

Definition at line 327 of file linear_assignment.h.

◆ GetAssignmentCost()

template<typename GraphType, typename CostValue = int64_t>
CostValue operations_research::LinearSumAssignment< GraphType, CostValue >::GetAssignmentCost ( NodeIndex node) const
inline

Definition at line 334 of file linear_assignment.h.

◆ GetCost()

template<typename GraphType, typename CostValue>
CostValue operations_research::LinearSumAssignment< GraphType, CostValue >::GetCost ( ) const

Definition at line 1429 of file linear_assignment.h.

◆ GetMate()

template<typename GraphType, typename CostValue = int64_t>
NodeIndex operations_research::LinearSumAssignment< GraphType, CostValue >::GetMate ( NodeIndex left_node) const
inline

Definition at line 339 of file linear_assignment.h.

◆ Graph()

template<typename GraphType, typename CostValue = int64_t>
const GraphType & operations_research::LinearSumAssignment< GraphType, CostValue >::Graph ( ) const
inline

Definition at line 270 of file linear_assignment.h.

◆ Head()

template<typename GraphType, typename CostValue = int64_t>
NodeIndex operations_research::LinearSumAssignment< GraphType, CostValue >::Head ( ArcIndex arc) const
inline

Definition at line 276 of file linear_assignment.h.

◆ NumLeftNodes()

template<typename GraphType, typename CostValue = int64_t>
NodeIndex operations_research::LinearSumAssignment< GraphType, CostValue >::NumLeftNodes ( ) const
inline

Definition at line 324 of file linear_assignment.h.

◆ NumNodes()

template<typename GraphType, typename CostValue = int64_t>
NodeIndex operations_research::LinearSumAssignment< GraphType, CostValue >::NumNodes ( ) const
inline

Definition at line 312 of file linear_assignment.h.

◆ operator=()

template<typename GraphType, typename CostValue = int64_t>
LinearSumAssignment & operations_research::LinearSumAssignment< GraphType, CostValue >::operator= ( const LinearSumAssignment< GraphType, CostValue > & )
delete

◆ SetArcCost()

template<typename GraphType, typename CostValue>
void operations_research::LinearSumAssignment< GraphType, CostValue >::SetArcCost ( ArcIndex arc,
CostValue cost )

Definition at line 981 of file linear_assignment.h.

◆ SetCostScalingDivisor()

template<typename GraphType, typename CostValue = int64_t>
void operations_research::LinearSumAssignment< GraphType, CostValue >::SetCostScalingDivisor ( CostValue factor)
inline

Definition at line 258 of file linear_assignment.h.

◆ SetGraph()

template<typename GraphType, typename CostValue = int64_t>
void operations_research::LinearSumAssignment< GraphType, CostValue >::SetGraph ( const GraphType * graph)
inline

Definition at line 251 of file linear_assignment.h.

◆ StatsString()

template<typename GraphType, typename CostValue = int64_t>
std::string operations_research::LinearSumAssignment< GraphType, CostValue >::StatsString ( ) const
inline

Definition at line 346 of file linear_assignment.h.


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