OR-Tools  8.2
SharedLPSolutionRepositoryabstract

Detailed Description

Definition at line 135 of file synchronization.h.

Public Member Functions

 SharedLPSolutionRepository (int num_solutions_to_keep)
 
void NewLPSolution (std::vector< double > lp_solution)
 
int NumSolutions () const
 
Solution GetSolution (int index) const
 
double GetVariableValueInSolution (int var_index, int solution_index) const
 
Solution GetRandomBiasedSolution (absl::BitGenRef random) const
 
void Add (const Solution &solution)
 
void Synchronize ()
 

Protected Member Functions

void AddInternal (const Solution &solution) ABSL_EXCLUSIVE_LOCKS_REQUIRED(mutex_)
 
int64 num_synchronization_ ABSL_GUARDED_BY (mutex_)=0
 
std::vector< int > tmp_indices_ ABSL_GUARDED_BY (mutex_)
 
std::vector< Solution > solutions_ ABSL_GUARDED_BY (mutex_)
 
std::vector< Solution > new_solutions_ ABSL_GUARDED_BY (mutex_)
 

Protected Attributes

const int num_solutions_to_keep_
 
absl::Mutex mutex_
 

Constructor & Destructor Documentation

◆ SharedLPSolutionRepository()

SharedLPSolutionRepository ( int  num_solutions_to_keep)
inlineexplicit

Definition at line 137 of file synchronization.h.

Member Function Documentation

◆ ABSL_GUARDED_BY() [1/4]

std::vector< int > tmp_indices_ ABSL_GUARDED_BY ( mutex_  )
mutableprotectedinherited

◆ ABSL_GUARDED_BY() [2/4]

std::vector< Solution > solutions_ ABSL_GUARDED_BY ( mutex_  )
protectedinherited

◆ ABSL_GUARDED_BY() [3/4]

std::vector< Solution > new_solutions_ ABSL_GUARDED_BY ( mutex_  )
protectedinherited

◆ ABSL_GUARDED_BY() [4/4]

int64 num_synchronization_ ABSL_GUARDED_BY ( mutex_  )
protectedpure virtualinherited

◆ Add()

void Add ( const Solution &  solution)
inherited

Definition at line 98 of file synchronization.h.

◆ AddInternal()

void AddInternal ( const Solution &  solution)
protectedinherited

Definition at line 110 of file synchronization.h.

◆ GetRandomBiasedSolution()

SharedSolutionRepository< double >::Solution GetRandomBiasedSolution ( absl::BitGenRef  random) const
inherited

Definition at line 92 of file synchronization.h.

◆ GetSolution()

SharedSolutionRepository< double >::Solution GetSolution ( int  index) const
inherited

Definition at line 84 of file synchronization.h.

◆ GetVariableValueInSolution()

double GetVariableValueInSolution ( int  var_index,
int  solution_index 
) const
inherited

Definition at line 89 of file synchronization.h.

◆ NewLPSolution()

void NewLPSolution ( std::vector< double >  lp_solution)

Definition at line 66 of file synchronization.cc.

◆ NumSolutions()

int NumSolutions
inherited

Definition at line 81 of file synchronization.h.

◆ Synchronize()

void Synchronize
inherited

Definition at line 106 of file synchronization.h.

Member Data Documentation

◆ mutex_

absl::Mutex mutex_
mutableprotectedinherited

Definition at line 114 of file synchronization.h.

◆ num_solutions_to_keep_

const int num_solutions_to_keep_
protectedinherited

Definition at line 113 of file synchronization.h.


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