1 #ifndef OSMSCOUT_LOCATIONDESCRIPTIONSERVICE_H 2 #define OSMSCOUT_LOCATIONDESCRIPTIONSERVICE_H 46 explicit LocationCoordDescription(
const GeoCoord& location);
48 GeoCoord GetLocation()
const;
67 const std::string& name,
68 const Distance &distance,
69 const Bearing &bearing,
127 explicit LocationAtPlaceDescription(
const Place& place);
128 LocationAtPlaceDescription(
const Place& place,
129 const Distance &distance,
130 const Bearing &bearing);
181 explicit LocationWayDescription(
const Place& way);
183 LocationWayDescription(
const Place& way,
184 const Distance &distance);
216 std::list<Place> ways;
221 LocationCrossingDescription(
const GeoCoord& crossing,
222 const std::list<Place>& ways);
224 LocationCrossingDescription(
const GeoCoord& crossing,
225 const std::list<Place>& ways,
226 const Distance &distance,
227 const Bearing &bearing);
375 static bool DistanceComparator(
const LocationDescriptionCandicate &a,
376 const LocationDescriptionCandicate &b);
380 Place GetPlace(
const std::list<ReverseLookupResult>& lookupResult);
384 void AddToCandidates(std::vector<LocationDescriptionCandicate>& candidates,
385 const GeoCoord& location,
389 void AddToCandidates(std::vector<LocationDescriptionCandicate>& candidates,
390 const GeoCoord& location,
392 void AddToCandidates(std::vector<LocationDescriptionCandicate>& candidates,
393 const GeoCoord& location,
401 bool ReverseLookupRegion(
const GeoCoord &coord,
402 std::list<ReverseLookupResult>& result)
const;
404 bool ReverseLookupObjects(
const std::list<ObjectFileRef>& objects,
405 std::list<ReverseLookupResult>& result)
const;
406 bool ReverseLookupObject(
const ObjectFileRef&
object,
407 std::list<ReverseLookupResult>& result)
const;
409 bool DescribeLocation(
const GeoCoord& location,
410 LocationDescription& description,
411 const Distance& lookupDistance=Distance::Of<Meter>(100),
412 double sizeFilter=1.0);
414 bool DescribeLocationByName(
const GeoCoord& location,
415 LocationDescription& description,
416 const Distance& lookupDistance=Distance::Of<Meter>(100),
417 double sizeFilter=1.0);
419 bool DescribeLocationByAddress(
const GeoCoord& location,
420 LocationDescription& description,
421 const Distance& lookupDistance=Distance::Of<Meter>(100),
422 double sizeFilter=1.0);
424 bool DescribeLocationByPOI(
const GeoCoord& location,
425 LocationDescription& description,
426 const Distance& lookupDistance=Distance::Of<Meter>(100),
427 double sizeFilter=1.0);
429 bool DescribeLocationByCrossing(
const GeoCoord& location,
430 LocationDescription& description,
431 const Distance& lookupDistance=Distance::Of<Meter>(100));
433 bool DescribeLocationByWay(
const GeoCoord& location,
434 LocationDescription& description,
435 const Distance& lookupDistance=Distance::Of<Meter>(100));
Definition: Database.h:173
Distance GetDistance() const
Definition: LocationDescriptionService.h:92
std::shared_ptr< LocationAtPlaceDescription > LocationAtPlaceDescriptionRef
Definition: LocationDescriptionService.h:167
std::string GetName() const
Definition: LocationDescriptionService.h:87
AdminRegionRef adminRegion
Region the object is in, if set.
Definition: LocationDescriptionService.h:362
bool IsAtPlace() const
Definition: LocationDescriptionService.h:102
ObjectFileRef GetRef() const
Definition: LocationDescriptionService.h:82
double GetSize() const
Definition: LocationDescriptionService.h:107
LocationDescriptionCandicate(const ObjectFileRef &ref, const std::string &name, const Distance &distance, const Bearing &bearing, const bool atPlace, const double size)
Definition: LocationDescriptionService.h:66
std::shared_ptr< LocationWayDescription > LocationWayDescriptionRef
Definition: LocationDescriptionService.h:204
LocationRef location
Location data, if set.
Definition: LocationDescriptionService.h:365
std::shared_ptr< Database > DatabaseRef
Reference counted reference to an Database instance.
Definition: Database.h:555
ObjectFileRef object
object used for lookup
Definition: LocationDescriptionService.h:361
std::shared_ptr< LocationCoordDescription > LocationCoordDescriptionRef
Definition: LocationDescriptionService.h:53
std::shared_ptr< Address > AddressRef
Definition: Location.h:191
std::shared_ptr< FeatureValueBuffer > FeatureValueBufferRef
Definition: TypeConfig.h:871
std::list< Place > GetWays() const
Definition: LocationDescriptionService.h:231
std::shared_ptr< PostalArea > PostalAreaRef
Definition: Location.h:45
Bearing GetBearing() const
Definition: LocationDescriptionService.h:97
Definition: Database.h:271
Definition: LocationDescriptionService.h:359
#define CLASS_FINAL
Definition: Compiler.h:26
#define OSMSCOUT_API
Definition: CoreImportExport.h:45
Place GetPlace() const
Definition: LocationDescriptionService.h:135
std::shared_ptr< ReverseLookupResult > ReverseLookupRef
Definition: LocationDescriptionService.h:369
Definition: Database.h:219
std::shared_ptr< LocationDescriptionService > LocationDescriptionServiceRef
Definition: LocationDescriptionService.h:440
PostalAreaRef postalArea
Postal area the object is in, if set.
Definition: LocationDescriptionService.h:363
std::shared_ptr< POI > POIRef
Definition: Location.h:123
Definition: LocationDescriptionService.h:351
Definition: Location.h:90
Place GetWay() const
Definition: LocationDescriptionService.h:188
Definition: Location.h:253
GeoCoord GetCrossing() const
Definition: LocationDescriptionService.h:260
POIRef poi
POI data, if set.
Definition: LocationDescriptionService.h:364
std::shared_ptr< AdminRegion > AdminRegionRef
Definition: Location.h:83
std::shared_ptr< Location > LocationRef
Definition: Location.h:156
std::shared_ptr< LocationCrossingDescription > LocationCrossingDescriptionRef
Definition: LocationDescriptionService.h:268
AddressRef address
Address data if set.
Definition: LocationDescriptionService.h:366