libosmscout
0.1
|
Custom data structure to efficiently handle a set of TypeInfoRef. More...
#include <TypeInfoSet.h>
Public Member Functions | |
void | Adapt (const TypeConfig &typeConfig) |
void | Add (const TypeInfoSet &types) |
TypeInfoSetConstIterator | begin () const |
void | Clear () |
bool | Empty () const |
TypeInfoSetConstIterator | end () const |
void | Intersection (const TypeInfoSet &otherTypes) |
bool | Intersects (const TypeInfoSet &otherTypes) const |
Returns 'true' if at least one type is set in both Sets. More... | |
bool | IsSet (const TypeInfoRef &type) const |
bool | operator!= (const TypeInfoSet &other) const |
TypeInfoSet & | operator= (const TypeInfoSet &other) |
bool | operator== (const TypeInfoSet &other) const |
void | Remove (const TypeInfoRef &type) |
void | Remove (const TypeInfoSet &otherTypes) |
void | Set (const std::vector< TypeInfoRef > &types) |
void | Set (const TypeInfoRef &type) |
void | Set (const TypeInfoSet &other) |
size_t | Size () const |
TypeInfoSet ()=default | |
TypeInfoSet (const std::vector< TypeInfoRef > &types) | |
TypeInfoSet (const TypeConfig &typeConfig) | |
TypeInfoSet (const TypeInfoSet &other)=default | |
TypeInfoSet (TypeInfoSet &&other) noexcept | |
~TypeInfoSet ()=default | |
Custom data structure to efficiently handle a set of TypeInfoRef.
All operations on the set are O(1) using the fact, that TypeInfo internally have a continuously running index variable (Set may be slower if the internal array was not preinitialized to it maximum size by passing a TypeConfig or another TypeInfoSet in the constructor.
|
default |
|
default |
|
explicit |
References osmscout::TypeConfig::GetTypeCount().
|
explicit |
References Set().
|
default |
|
noexcept |
void osmscout::TypeInfoSet::Adapt | ( | const TypeConfig & | typeConfig | ) |
References osmscout::TypeConfig::GetTypeCount().
void osmscout::TypeInfoSet::Add | ( | const TypeInfoSet & | types | ) |
References Set().
Referenced by osmscout::TileData< NodeRef >::AddData(), and osmscout::TileData< NodeRef >::AddPrefillData().
|
inline |
|
inline |
Referenced by osmscout::LocationDescriptionService::DescribeLocationByAddress(), osmscout::LocationDescriptionService::DescribeLocationByName(), osmscout::LocationDescriptionService::DescribeLocationByPOI(), osmscout::OptimizeAreasLowZoom::GetAreas(), osmscout::AreaAreaIndex::GetAreasInArea(), osmscout::AreaIndex::GetOffsets(), osmscout::AreaNodeIndex::GetOffsets(), osmscout::OptimizeWaysLowZoom::GetTypes(), osmscout::OptimizeAreasLowZoom::GetTypes(), osmscout::OptimizeWaysLowZoom::GetWays(), and Set().
|
inline |
Referenced by osmscout::oss::Parser::AddFeatureToFilter(), osmscout::TileData< NodeRef >::AddPrefillData(), osmscout::LocationDescriptionService::DescribeLocationByAddress(), osmscout::LocationDescriptionService::DescribeLocationByCrossing(), osmscout::LocationDescriptionService::DescribeLocationByName(), osmscout::LocationDescriptionService::DescribeLocationByPOI(), osmscout::LocationDescriptionService::DescribeLocationByWay(), osmscout::SimpleRoutingService::GetClosestRoutableObject(), and osmscout::TileData< NodeRef >::IsEmpty().
|
inline |
void osmscout::TypeInfoSet::Intersection | ( | const TypeInfoSet & | otherTypes | ) |
bool osmscout::TypeInfoSet::Intersects | ( | const TypeInfoSet & | otherTypes | ) | const |
Returns 'true' if at least one type is set in both Sets.
Else 'false' is returned.
|
inline |
Referenced by osmscout::MapService::AddTileDataToMapData(), osmscout::OptimizeAreasLowZoom::GetAreas(), osmscout::AreaIndex::GetOffsets(), osmscout::OptimizeWaysLowZoom::GetTypes(), osmscout::OptimizeAreasLowZoom::GetTypes(), osmscout::OptimizeWaysLowZoom::GetWays(), osmscout::StyleFilter::HasType(), and osmscout::oss::Parser::STYLEFILTER_GROUP().
bool osmscout::TypeInfoSet::operator!= | ( | const TypeInfoSet & | other | ) | const |
|
inline |
bool osmscout::TypeInfoSet::operator== | ( | const TypeInfoSet & | other | ) | const |
void osmscout::TypeInfoSet::Remove | ( | const TypeInfoRef & | type | ) |
Referenced by osmscout::oss::Parser::STYLEFILTER_GROUP().
void osmscout::TypeInfoSet::Remove | ( | const TypeInfoSet & | otherTypes | ) |
void osmscout::TypeInfoSet::Set | ( | const std::vector< TypeInfoRef > & | types | ) |
void osmscout::TypeInfoSet::Set | ( | const TypeInfoRef & | type | ) |
Referenced by Add(), osmscout::oss::Parser::AddFeatureToFilter(), osmscout::ElevationModule::DataLoader::DataLoader(), osmscout::LocationDescriptionService::DescribeLocationByAddress(), osmscout::LocationDescriptionService::DescribeLocationByCrossing(), osmscout::LocationDescriptionService::DescribeLocationByName(), osmscout::LocationDescriptionService::DescribeLocationByPOI(), osmscout::LocationDescriptionService::DescribeLocationByWay(), osmscout::OptimizeAreasLowZoom::GetAreas(), osmscout::SimpleRoutingService::GetClosestRoutableNode(), osmscout::SimpleRoutingService::GetClosestRoutableObject(), osmscout::AreaIndex::GetOffsets(), osmscout::AreaNodeIndex::GetOffsets(), osmscout::OptimizeWaysLowZoom::GetTypes(), osmscout::OptimizeAreasLowZoom::GetTypes(), osmscout::OptimizeWaysLowZoom::GetWays(), osmscout::NavigationModule::loadRoutableObjects(), osmscout::RoutePostprocessor::POIsPostprocessor::Process(), Set(), osmscout::oss::Parser::STYLEFILTER_GROUP(), osmscout::oss::Parser::STYLEFILTER_PATH(), osmscout::oss::Parser::STYLEFILTER_TYPE(), and TypeInfoSet().
void osmscout::TypeInfoSet::Set | ( | const TypeInfoSet & | other | ) |
|
inline |