libosmscout  1.1.1
Public Member Functions | Public Attributes | Friends | List of all members
osmscout::CLASS_FINAL< DataLoader >::Ring Class Reference

#include <libosmscout/include/osmscout/Area.h>

Collaboration diagram for osmscout::CLASS_FINAL< DataLoader >::Ring:
Collaboration graph
[legend]

Public Member Functions

 Ring ()=default
 
TypeInfoRef GetType () const
 
size_t GetFeatureCount () const
 
bool HasFeature (size_t idx) const
 
bool HasAnyFeaturesSet () const
 
const FeatureInstanceGetFeature (size_t idx) const
 
void UnsetFeature (size_t idx)
 
const FeatureValueBufferGetFeatureValueBuffer () const
 
bool IsMaster () const
 
bool IsTopOuter () const
 
bool IsOuter () const
 
uint8_t GetRing () const
 
Id GetSerial (size_t index) const
 
Id GetId (size_t index) const
 
Id GetFrontId () const
 
Id GetBackId () const
 
bool GetNodeIndexByNodeId (Id id, size_t &index) const
 
const GeoCoordGetCoord (size_t index) const
 
bool GetCenter (GeoCoord &center) const
 
void GetBoundingBox (GeoBox &boundingBox) const
 
GeoBox GetBoundingBox () const
 
void SetType (const TypeInfoRef &type)
 
void SetFeatures (const FeatureValueBuffer &buffer)
 
void CopyMissingValues (const FeatureValueBuffer &buffer)
 
void MarkAsMasterRing ()
 
void MarkAsOuterRing ()
 
void SetRing (uint8_t ring)
 

Public Attributes

std::vector< Pointnodes
 The array of coordinates. More...
 
std::vector< SegmentGeoBoxsegments
 Precomputed (cache) segment bounding boxes for optimisation. More...
 
GeoBox bbox
 Precomputed (cache) bounding box. More...
 

Friends

class Area
 

Constructor & Destructor Documentation

◆ Ring()

template<typename DataLoader >
osmscout::CLASS_FINAL< DataLoader >::Ring::Ring ( )
default

Member Function Documentation

◆ CopyMissingValues()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::CopyMissingValues ( const FeatureValueBuffer buffer)
inline

◆ GetBackId()

template<typename DataLoader >
Id osmscout::CLASS_FINAL< DataLoader >::Ring::GetBackId ( ) const
inline

◆ GetBoundingBox() [1/2]

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::GetBoundingBox ( GeoBox boundingBox) const

◆ GetBoundingBox() [2/2]

template<typename DataLoader >
GeoBox osmscout::CLASS_FINAL< DataLoader >::Ring::GetBoundingBox ( ) const

◆ GetCenter()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::GetCenter ( GeoCoord center) const

◆ GetCoord()

template<typename DataLoader >
const GeoCoord& osmscout::CLASS_FINAL< DataLoader >::Ring::GetCoord ( size_t  index) const
inline

◆ GetFeature()

template<typename DataLoader >
const FeatureInstance& osmscout::CLASS_FINAL< DataLoader >::Ring::GetFeature ( size_t  idx) const
inline

◆ GetFeatureCount()

template<typename DataLoader >
size_t osmscout::CLASS_FINAL< DataLoader >::Ring::GetFeatureCount ( ) const
inline

◆ GetFeatureValueBuffer()

template<typename DataLoader >
const FeatureValueBuffer& osmscout::CLASS_FINAL< DataLoader >::Ring::GetFeatureValueBuffer ( ) const
inline

◆ GetFrontId()

template<typename DataLoader >
Id osmscout::CLASS_FINAL< DataLoader >::Ring::GetFrontId ( ) const
inline

◆ GetId()

template<typename DataLoader >
Id osmscout::CLASS_FINAL< DataLoader >::Ring::GetId ( size_t  index) const
inline

◆ GetNodeIndexByNodeId()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::GetNodeIndexByNodeId ( Id  id,
size_t &  index 
) const

◆ GetRing()

template<typename DataLoader >
uint8_t osmscout::CLASS_FINAL< DataLoader >::Ring::GetRing ( ) const
inline

◆ GetSerial()

template<typename DataLoader >
Id osmscout::CLASS_FINAL< DataLoader >::Ring::GetSerial ( size_t  index) const
inline

◆ GetType()

template<typename DataLoader >
TypeInfoRef osmscout::CLASS_FINAL< DataLoader >::Ring::GetType ( ) const
inline

◆ HasAnyFeaturesSet()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::HasAnyFeaturesSet ( ) const

◆ HasFeature()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::HasFeature ( size_t  idx) const
inline

◆ IsMaster()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::IsMaster ( ) const
inline

◆ IsOuter()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::IsOuter ( ) const
inline

◆ IsTopOuter()

template<typename DataLoader >
bool osmscout::CLASS_FINAL< DataLoader >::Ring::IsTopOuter ( ) const
inline

◆ MarkAsMasterRing()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::MarkAsMasterRing ( )
inline

◆ MarkAsOuterRing()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::MarkAsOuterRing ( )
inline

◆ SetFeatures()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::SetFeatures ( const FeatureValueBuffer buffer)
inline

◆ SetRing()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::SetRing ( uint8_t  ring)
inline

◆ SetType()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::SetType ( const TypeInfoRef type)
inline

◆ UnsetFeature()

template<typename DataLoader >
void osmscout::CLASS_FINAL< DataLoader >::Ring::UnsetFeature ( size_t  idx)
inline

Friends And Related Function Documentation

◆ Area

template<typename DataLoader >
friend class Area
friend

Member Data Documentation

◆ bbox

template<typename DataLoader >
GeoBox osmscout::CLASS_FINAL< DataLoader >::Ring::bbox

Precomputed (cache) bounding box.

◆ nodes

template<typename DataLoader >
std::vector<Point> osmscout::CLASS_FINAL< DataLoader >::Ring::nodes

The array of coordinates.

Note that ring nodes, bbox and segments fields are public for simple manipulation. User that modify it is responsible to keep these values in sync! You should not rely on segments and bbox, it is just a cache used some algorithms. It may be empty/invalid!

◆ segments

template<typename DataLoader >
std::vector<SegmentGeoBox> osmscout::CLASS_FINAL< DataLoader >::Ring::segments

Precomputed (cache) segment bounding boxes for optimisation.


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