OR-Tools  8.2
SharedRelaxationSolutionRepositoryabstract

Detailed Description

Definition at line 126 of file synchronization.h.

Public Member Functions

 SharedRelaxationSolutionRepository (int num_solutions_to_keep)
 
void NewRelaxationSolution (const CpSolverResponse &response)
 
int NumSolutions () const
 
Solution GetSolution (int index) const
 
int64 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

◆ SharedRelaxationSolutionRepository()

SharedRelaxationSolutionRepository ( int  num_solutions_to_keep)
inlineexplicit

Definition at line 129 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< int64 >::Solution GetRandomBiasedSolution ( absl::BitGenRef  random) const
inherited

Definition at line 92 of file synchronization.h.

◆ GetSolution()

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

Definition at line 84 of file synchronization.h.

◆ GetVariableValueInSolution()

int64 GetVariableValueInSolution ( int  var_index,
int  solution_index 
) const
inherited

Definition at line 89 of file synchronization.h.

◆ NewRelaxationSolution()

void NewRelaxationSolution ( const CpSolverResponse &  response)

Definition at line 46 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: