36 #include "qgis_core.h" 
   97       void addCandidatePosition( std::unique_ptr< LabelPosition > position ) { mLabelPositions.emplace_back( std::move( position ) ); }
 
  133       QList<LabelPosition *> getSolution( 
bool returnInactive, QList<LabelPosition *> *unlabeled = 
nullptr );
 
  138       void init_sol_falp();
 
  148         return &mPositionsWithNoCandidates;
 
  166       QStringList labelledLayersName;
 
  171       int mTotalCandidates = 0;
 
  181       std::size_t mFeatureCount = 0;
 
  186       bool mDisplayAll = 
false;
 
  191       double mMapExtentBounds[4] = {0, 0, 0, 0};
 
  193       std::vector< std::unique_ptr< LabelPosition > > mLabelPositions;
 
  198       std::vector< std::unique_ptr< LabelPosition > > mPositionsWithNoCandidates;
 
  200       std::vector< int > mFeatStartId;
 
  201       std::vector< int > mFeatNbLp;
 
  202       std::vector< double > mInactiveCost;
 
  209           std::vector< int > activeLabelIds;
 
  211           double totalCost = 0;
 
  213           void init( std::size_t featureCount )
 
  215             activeLabelIds.resize( featureCount, -1 );
 
  221       double mNbOverlap = 0.0;
 
  223       Chain *chain( 
int seed );
 
  227       void solution_cost();
 
A rtree spatial index for use in the pal labeling engine.
A rectangle specified with double values.
LabelPosition is a candidate feature label position.
Representation of a labeling problem.
LabelPosition * featureCandidate(int feature, int candidate) const
Returns the candidate corresponding to the specified feature and candidate index.
std::vector< std::unique_ptr< LabelPosition > > * positionsWithNoCandidates()
Returns a reference to the list of label positions which correspond to features with no candidates.
Problem & operator=(const Problem &other)=delete
Problem cannot be copied.
void addCandidatePosition(std::unique_ptr< LabelPosition > position)
Adds a candidate label position to the problem.
int featureCandidateCount(int feature) const
Returns the number of candidates generated for the feature at the specified index.
std::size_t featureCount() const
Returns the total number of features considered during the labeling problem.
PalRtree< LabelPosition > & allCandidatesIndex()
Returns the index containing all label candidates.
Problem(const Problem &other)=delete
Problem cannot be copied.
Chain solution parameters.