96 void addCandidatePosition( std::unique_ptr< LabelPosition > position );
111 LabelPosition *
featureCandidate(
int feature,
int candidate )
const {
return mLabelPositions[ mFirstCandidateIndexForFeature[feature] + candidate ].get(); }
135 QList<LabelPosition *> getSolution(
bool returnInactive, QList<LabelPosition *> *unlabeled =
nullptr );
140 void init_sol_falp();
150 return &mPositionsWithNoCandidates;
173 QStringList labelledLayersName;
178 int mTotalCandidates = 0;
188 std::size_t mFeatureCount = 0;
193 bool mDisplayAll =
false;
198 double mMapExtentBounds[4] = {0, 0, 0, 0};
200 std::vector< std::unique_ptr< LabelPosition > > mLabelPositions;
205 std::vector< std::unique_ptr< LabelPosition > > mPositionsWithNoCandidates;
208 std::vector< int > mFirstCandidateIndexForFeature;
210 std::vector< int > mCandidateCountForFeature;
212 std::vector< double > mUnlabeledCostForFeature;
219 std::vector< int > activeLabelIds;
221 void init( std::size_t featureCount )
223 activeLabelIds.resize( featureCount, -1 );
228 double mNbOverlap = 0.0;
231 Chain *chain(
int seed );
235 void solution_cost();
Contains information about the context of a rendering operation.