TTK
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
ttk::AssignmentSolver< dataType > Class Template Referenceabstract

#include <AssignmentSolver.h>

Inheritance diagram for ttk::AssignmentSolver< dataType >:
ttk::Debug ttk::BaseClass ttk::AssignmentAuction< dataType > ttk::AssignmentExhaustive< dataType > ttk::AssignmentMunkres< dataType >

Public Member Functions

 AssignmentSolver ()=default
 
 ~AssignmentSolver () override=default
 
virtual int run (std::vector< MatchingType > &matchings)=0
 
virtual void clear ()
 
virtual void clearMatrix ()
 
virtual int setInput (std::vector< std::vector< dataType > > &C_)
 
virtual void setBalanced (bool balanced)
 
virtual std::vector< std::vector< dataType > > getCostMatrix ()
 
virtual std::vector< std::vector< dataType > > * getCostMatrixPointer ()
 
void printTableVector (std::vector< std::vector< dataType > > &table)
 
- Public Member Functions inherited from ttk::Debug
 Debug ()
 
 ~Debug () override
 
virtual int setDebugLevel (const int &debugLevel)
 
int setWrapper (const Wrapper *wrapper) override
 
int printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
int printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const
 
void setDebugMsgPrefix (const std::string &prefix)
 
- Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
 
virtual ~BaseClass ()=default
 
int getThreadNumber () const
 
virtual int setThreadNumber (const int threadNumber)
 
virtual int setWrapper (const Wrapper *wrapper)
 

Protected Attributes

std::vector< std::vector< dataType > > costMatrix
 
int rowSize = 0
 
int colSize = 0
 
bool balancedAssignment
 
- Protected Attributes inherited from ttk::Debug
int debugLevel_
 
std::string debugMsgPrefix_
 
std::string debugMsgNamePrefix_
 
- Protected Attributes inherited from ttk::BaseClass
bool lastObject_
 
int threadNumber_
 
Wrapperwrapper_
 

Additional Inherited Members

- Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
 
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
 
int welcomeMsg (std::ostream &stream)
 
- Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW
 

Detailed Description

template<class dataType>
class ttk::AssignmentSolver< dataType >
Author
Mathieu Pont (mathi.nosp@m.eu.p.nosp@m.ont@l.nosp@m.ip6..nosp@m.fr)

Assignment Problem Solver abstract class

For the unbalanced problem: The cost matrix in input has a size of (n + 1) x (m + 1)

Definition at line 22 of file AssignmentSolver.h.

Constructor & Destructor Documentation

◆ AssignmentSolver()

template<class dataType >
ttk::AssignmentSolver< dataType >::AssignmentSolver ( )
default

◆ ~AssignmentSolver()

template<class dataType >
ttk::AssignmentSolver< dataType >::~AssignmentSolver ( )
overridedefault

Member Function Documentation

◆ clear()

template<class dataType >
virtual void ttk::AssignmentSolver< dataType >::clear ( )
inlinevirtual

Reimplemented in ttk::AssignmentMunkres< dataType >.

Definition at line 31 of file AssignmentSolver.h.

◆ clearMatrix()

template<class dataType >
virtual void ttk::AssignmentSolver< dataType >::clearMatrix ( )
inlinevirtual

Definition at line 36 of file AssignmentSolver.h.

◆ getCostMatrix()

template<class dataType >
virtual std::vector< std::vector< dataType > > ttk::AssignmentSolver< dataType >::getCostMatrix ( )
inlinevirtual

Definition at line 58 of file AssignmentSolver.h.

◆ getCostMatrixPointer()

template<class dataType >
virtual std::vector< std::vector< dataType > > * ttk::AssignmentSolver< dataType >::getCostMatrixPointer ( )
inlinevirtual

Definition at line 62 of file AssignmentSolver.h.

◆ printTableVector()

template<class dataType >
void ttk::AssignmentSolver< dataType >::printTableVector ( std::vector< std::vector< dataType > > &  table)
inline

Definition at line 66 of file AssignmentSolver.h.

◆ run()

template<class dataType >
virtual int ttk::AssignmentSolver< dataType >::run ( std::vector< MatchingType > &  matchings)
pure virtual

◆ setBalanced()

template<class dataType >
virtual void ttk::AssignmentSolver< dataType >::setBalanced ( bool  balanced)
inlinevirtual

Reimplemented in ttk::AssignmentAuction< dataType >.

Definition at line 54 of file AssignmentSolver.h.

◆ setInput()

template<class dataType >
virtual int ttk::AssignmentSolver< dataType >::setInput ( std::vector< std::vector< dataType > > &  C_)
inlinevirtual

Reimplemented in ttk::AssignmentMunkres< dataType >.

Definition at line 43 of file AssignmentSolver.h.

Member Data Documentation

◆ balancedAssignment

template<class dataType >
bool ttk::AssignmentSolver< dataType >::balancedAssignment
protected

Definition at line 83 of file AssignmentSolver.h.

◆ colSize

template<class dataType >
int ttk::AssignmentSolver< dataType >::colSize = 0
protected

Definition at line 81 of file AssignmentSolver.h.

◆ costMatrix

template<class dataType >
std::vector<std::vector<dataType> > ttk::AssignmentSolver< dataType >::costMatrix
protected

Definition at line 78 of file AssignmentSolver.h.

◆ rowSize

template<class dataType >
int ttk::AssignmentSolver< dataType >::rowSize = 0
protected

Definition at line 80 of file AssignmentSolver.h.


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