LatNet Builder Manual  2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO > Class Template Reference

Evaluator for WeightedFigureOfMerit. More...

#include <WeightedFigureOfMerit.h>

Public Types

typedef Storage< LR, ET, COMPRESS, PLO >::MeritValue MeritValue
 
typedef boost::signals2::signal< bool(const MeritValue &), Functor::AllOfOnProgress
 
typedef boost::signals2::signal< void(const LatDef< LR, ET > &)> OnAbort
 

Public Member Functions

 WeightedFigureOfMeritEvaluator (const FIGURE &figure, Storage< LR, ET, COMPRESS, PLO > storage)
 Constructor.
 
 WeightedFigureOfMeritEvaluator (WeightedFigureOfMeritEvaluator &&)=default
 
template<class CSETS >
MeritValue operator() (const LatDef< LR, ET > &lat, const CSETS &projections, MeritValue initialValue) const
 Returns the square value of the figure of merit applied to the projections projections of the lattice lat. More...
 
Signals
OnProgress & onProgress () const
 Progress signal. More...
 
OnAbort & onAbort () const
 Abort signal. More...
 

Detailed Description

template<class FIGURE, LatticeType LR, EmbeddingType ET, Compress COMPRESS, PerLevelOrder PLO>
class LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >

Evaluator for WeightedFigureOfMerit.

Using an evaluator allows for the WeightedFigureOfMerit object to be instantiated without prior knowledge of the storage class to be used during the evaluation.

Member Function Documentation

◆ onAbort()

template<class FIGURE , LatticeType LR, EmbeddingType ET, Compress COMPRESS, PerLevelOrder PLO>
OnAbort& LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::onAbort ( ) const
inline

Abort signal.

Emitted if the computation of the weighted figure of merit is aborted. The signal argument is the lattice definition for which the computation was aborted.

Referenced by LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::operator()().

◆ onProgress()

template<class FIGURE , LatticeType LR, EmbeddingType ET, Compress COMPRESS, PerLevelOrder PLO>
OnProgress& LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::onProgress ( ) const
inline

Progress signal.

Emitted after each projection-dependent contribution to the weighted figure of merit is processed. The signal argument is the cumulative value of the weighted figure of merit. If any of the signal slots returns false, the computation of the figure of merit will be aborted.

Referenced by LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::operator()().

◆ operator()()

template<class FIGURE , LatticeType LR, EmbeddingType ET, Compress COMPRESS, PerLevelOrder PLO>
template<class CSETS >
MeritValue LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::operator() ( const LatDef< LR, ET > &  lat,
const CSETS &  projections,
MeritValue  initialValue 
) const
inline

Returns the square value of the figure of merit applied to the projections projections of the lattice lat.

Parameters
latLattice for which the figure of merit will be computed.
projectionsSet of projections \(\mathcal J\) (see LatticeTester::CoordinateSets).
initialValueInitial value to put in the accumulator.

References LatBuilder::LatDef< LR, ET >::dimension(), LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::onAbort(), and LatBuilder::WeightedFigureOfMeritEvaluator< FIGURE, LR, ET, COMPRESS, PLO >::onProgress().


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