te::edit::Repository Class Reference

This class represents a repository of geometries and features. More...

#include <Repository.h>

Public Member Functions

void add (te::gm::Geometry *geom)
 
void add (te::da::ObjectId *id, te::gm::Geometry *geom)
 
void add (Feature *f)
 
void clear ()
 
const std::vector< Feature * > & getAllFeatures () const
 
FeaturegetFeature (const te::gm::Envelope &e, int srid) const
 
FeaturegetFeature (te::da::ObjectId *id) const
 
std::vector< Feature * > getFeatures (const te::gm::Envelope &e, int srid) const
 
std::size_t getPosition (te::da::ObjectId *id)
 
const std::string & getSource () const
 
bool hasIdentifier (te::da::ObjectId *id)
 
void remove (te::da::ObjectId *id)
 
 Repository (const std::string &source)
 
void set (te::da::ObjectId *id, te::gm::Geometry *geom)
 
void set (Feature *f)
 
 ~Repository ()
 

Private Member Functions

void buildIndex ()
 
void buildIndex (const std::size_t &pos, te::gm::Geometry *geom)
 
void clearIndex ()
 
void set (const std::size_t &pos, Feature *f)
 

Private Attributes

std::vector< Feature * > m_features
 The repository features. More...
 
te::sam::rtree::Index< std::size_t, 8 > m_rtree
 Internal index used to retrieve geometries spatially. More...
 
std::string m_source
 The source of the features. More...
 

Detailed Description

This class represents a repository of geometries and features.

Definition at line 63 of file Repository.h.

Constructor & Destructor Documentation

◆ Repository()

te::edit::Repository::Repository ( const std::string &  source)

◆ ~Repository()

te::edit::Repository::~Repository ( )

Member Function Documentation

◆ add() [1/3]

void te::edit::Repository::add ( te::gm::Geometry geom)

◆ add() [2/3]

void te::edit::Repository::add ( te::da::ObjectId id,
te::gm::Geometry geom 
)

◆ add() [3/3]

void te::edit::Repository::add ( Feature f)

◆ buildIndex() [1/2]

void te::edit::Repository::buildIndex ( )
private

◆ buildIndex() [2/2]

void te::edit::Repository::buildIndex ( const std::size_t &  pos,
te::gm::Geometry geom 
)
private

◆ clear()

void te::edit::Repository::clear ( )

◆ clearIndex()

void te::edit::Repository::clearIndex ( )
private

◆ getAllFeatures()

const std::vector<Feature*>& te::edit::Repository::getAllFeatures ( ) const

◆ getFeature() [1/2]

Feature* te::edit::Repository::getFeature ( const te::gm::Envelope e,
int  srid 
) const

◆ getFeature() [2/2]

Feature* te::edit::Repository::getFeature ( te::da::ObjectId id) const

◆ getFeatures()

std::vector<Feature*> te::edit::Repository::getFeatures ( const te::gm::Envelope e,
int  srid 
) const

◆ getPosition()

std::size_t te::edit::Repository::getPosition ( te::da::ObjectId id)

◆ getSource()

const std::string& te::edit::Repository::getSource ( ) const

◆ hasIdentifier()

bool te::edit::Repository::hasIdentifier ( te::da::ObjectId id)

◆ remove()

void te::edit::Repository::remove ( te::da::ObjectId id)

◆ set() [1/3]

void te::edit::Repository::set ( te::da::ObjectId id,
te::gm::Geometry geom 
)

◆ set() [2/3]

void te::edit::Repository::set ( Feature f)

◆ set() [3/3]

void te::edit::Repository::set ( const std::size_t &  pos,
Feature f 
)
private

Member Data Documentation

◆ m_features

std::vector<Feature*> te::edit::Repository::m_features
private

The repository features.

Definition at line 112 of file Repository.h.

◆ m_rtree

te::sam::rtree::Index<std::size_t, 8> te::edit::Repository::m_rtree
private

Internal index used to retrieve geometries spatially.

Definition at line 113 of file Repository.h.

◆ m_source

std::string te::edit::Repository::m_source
private

The source of the features.

Definition at line 111 of file Repository.h.


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