te::da::ObjectIdSet Class Reference

This class represents a set of unique ids created in the same context. i.e. from the same data set. More...

#include <ObjectIdSet.h>

Public Member Functions

void add (ObjectId *oid)
 It adds an object id to this object id set. More...
 
void addProperty (const std::string &name, std::size_t pos, int type)
 It adds a property that will be used to generate the unique ids. More...
 
std::set< ObjectId *, te::common::LessCmp< ObjectId * > >::const_iterator begin () const
 Returns an iterator for the object ids in container. More...
 
void clear ()
 It clears this object id set. More...
 
ObjectIdSetclone () const
 
bool contains (ObjectId *oid) const
 It returns if the object id set contains the given oid. More...
 
void difference (const ObjectIdSet *rhs)
 It performs the difference operation between this ObjectIdSet and the given ObjectIdSet. More...
 
std::set< ObjectId *, te::common::LessCmp< ObjectId * > >::const_iterator end () const
 Returns an iterator for the object ids in container. More...
 
ExpressiongetExpression () const
 It returns the expression that can be used to retrieve the data set that contains the all indentified elements. More...
 
ExpressiongetExpressionByInClause (const std::string source="") const
 
const std::vector< std::string > & getPropertyNames () const
 It returns the property names used to generated the oids. More...
 
const std::vector< std::size_t > & getPropertyPos () const
 It returns the property positions used to generated the oids. More...
 
const std::vector< int > & getPropertyTypes () const
 It returns the property types used to generated the oids. More...
 
bool isExpressionClauseIn () const
 
 ObjectIdSet ()
 Constructor. More...
 
 ObjectIdSet (const ObjectIdSet &rhs, bool copyOids=true)
 Copy Constructor. More...
 
void remove (ObjectId *oid)
 Removes the object id from set. More...
 
void setExpression (te::da::Expression *expression, bool isClauseIn)
 It set the expression that can be used to retrieve the data set that contains the all indentified elements. More...
 
void setExpressionByInClause (const std::string source="")
 
void setExpressionByIntersection (std::string geomAttrName, te::gm::Envelope env, int srid)
 
std::size_t size () const
 It returns the object id set size. More...
 
void symDifference (const ObjectIdSet *rhs)
 It performs the symmetric difference operation between this ObjectIdSet and the given ObjectIdSet. More...
 
void Union (ObjectIdSet *rhs)
 It performs the union operation between this ObjectIdSet and the given ObjectIdSet. More...
 
 ~ObjectIdSet ()
 Destructor. More...
 

Private Attributes

bool m_expByClauseIn
 
te::da::Expressionm_expression
 The expression that can be used to retrieve the data set that contains the all indentified elements. More...
 
std::set< ObjectId *, te::common::LessCmp< ObjectId * > > m_oids
 The set of unique ids. More...
 
std::vector< std::string > m_pnames
 The list of property names used to generate the unique ids. More...
 
std::vector< std::size_t > m_ppos
 The list of property positions used to generate the unique ids. More...
 
std::vector< int > m_ptypes
 The list of property types used to generate the unique ids. More...
 

Detailed Description

This class represents a set of unique ids created in the same context. i.e. from the same data set.

See also
DataSet, DataSetType, ObjectId

Definition at line 55 of file ObjectIdSet.h.

Constructor & Destructor Documentation

te::da::ObjectIdSet::ObjectIdSet ( )

Constructor.

te::da::ObjectIdSet::ObjectIdSet ( const ObjectIdSet rhs,
bool  copyOids = true 
)

Copy Constructor.

te::da::ObjectIdSet::~ObjectIdSet ( )

Destructor.

Member Function Documentation

void te::da::ObjectIdSet::add ( ObjectId oid)

It adds an object id to this object id set.

Parameters
Theobject id that will be added.
Note
This class will take the ownership of the given pointer.
void te::da::ObjectIdSet::addProperty ( const std::string &  name,
std::size_t  pos,
int  type 
)

It adds a property that will be used to generate the unique ids.

Parameters
nameA property name that will be used to generate the unique ids.
nameThe property position.
typeThe property data type.
std::set<ObjectId*, te::common::LessCmp<ObjectId*> >::const_iterator te::da::ObjectIdSet::begin ( ) const

Returns an iterator for the object ids in container.

Returns
Iterator for the begin element of the container.
Note
When using the iterators it WILL NOT give the ownership of the pointers. This means that the caller MUST NOT delete the pointers or it will lead to an inconsistent state.
void te::da::ObjectIdSet::clear ( )

It clears this object id set.

ObjectIdSet* te::da::ObjectIdSet::clone ( ) const
bool te::da::ObjectIdSet::contains ( ObjectId oid) const

It returns if the object id set contains the given oid.

Parameters
oidThe object id that will be searched.
Returns
True if the object id set contains the given oid. False, otherwise.
Note
The ObjectIdSet will NOT take the ownership of the given pointer.
void te::da::ObjectIdSet::difference ( const ObjectIdSet rhs)

It performs the difference operation between this ObjectIdSet and the given ObjectIdSet.

Parameters
rhsA valid ObjectIdSet that will be used on difference operation. Do not pass NULL!
Note
The ObjectIdSet will NOT take the ownership of the given pointer.
std::set<ObjectId*, te::common::LessCmp<ObjectId*> >::const_iterator te::da::ObjectIdSet::end ( ) const

Returns an iterator for the object ids in container.

Returns
Iterator for the ending element of the container.
Expression* te::da::ObjectIdSet::getExpression ( ) const

It returns the expression that can be used to retrieve the data set that contains the all indentified elements.

Returns
The expression that can be used to retrieve the data set that contains the all indentified elements.
Note
The caller will take the ownership of the given pointer.
Expression* te::da::ObjectIdSet::getExpressionByInClause ( const std::string  source = "") const
const std::vector<std::string>& te::da::ObjectIdSet::getPropertyNames ( ) const

It returns the property names used to generated the oids.

Returns
The property names used to generated the oids.
const std::vector<std::size_t>& te::da::ObjectIdSet::getPropertyPos ( ) const

It returns the property positions used to generated the oids.

Returns
The property positions used to generated the oids.
const std::vector<int>& te::da::ObjectIdSet::getPropertyTypes ( ) const

It returns the property types used to generated the oids.

Returns
The property types used to generated the oids.
bool te::da::ObjectIdSet::isExpressionClauseIn ( ) const
void te::da::ObjectIdSet::remove ( ObjectId oid)

Removes the object id from set.

Parameters
oidObject id to be removed.
Note
This WILL NOT take the ownership of oid.
void te::da::ObjectIdSet::setExpression ( te::da::Expression expression,
bool  isClauseIn 
)

It set the expression that can be used to retrieve the data set that contains the all indentified elements.

Parameters
expressionThe expression that can be used to retrieve the data set that contains the all indentified elements.
Note
This method will take the ownership of the given pointer.
void te::da::ObjectIdSet::setExpressionByInClause ( const std::string  source = "")
void te::da::ObjectIdSet::setExpressionByIntersection ( std::string  geomAttrName,
te::gm::Envelope  env,
int  srid 
)
std::size_t te::da::ObjectIdSet::size ( ) const

It returns the object id set size.

Returns
The object id set size.
void te::da::ObjectIdSet::symDifference ( const ObjectIdSet rhs)

It performs the symmetric difference operation between this ObjectIdSet and the given ObjectIdSet.

Parameters
rhsA valid ObjectIdSet that will be used on difference operation. Do not pass NULL!
Note
The ObjectIdSet will NOT take the ownership of the given pointer.
void te::da::ObjectIdSet::Union ( ObjectIdSet rhs)

It performs the union operation between this ObjectIdSet and the given ObjectIdSet.

Parameters
rhsA valid ObjectIdSet that will be used on union operation. Do not pass NULL!
Note
The ObjectIdSet will take the ownership of the given pointer.
The given pointer will be invalidated at end of union operation.

Member Data Documentation

bool te::da::ObjectIdSet::m_expByClauseIn
private

Definition at line 222 of file ObjectIdSet.h.

te::da::Expression* te::da::ObjectIdSet::m_expression
private

The expression that can be used to retrieve the data set that contains the all indentified elements.

Definition at line 220 of file ObjectIdSet.h.

std::set<ObjectId*, te::common::LessCmp<ObjectId*> > te::da::ObjectIdSet::m_oids
private

The set of unique ids.

Definition at line 219 of file ObjectIdSet.h.

std::vector<std::string> te::da::ObjectIdSet::m_pnames
private

The list of property names used to generate the unique ids.

Definition at line 216 of file ObjectIdSet.h.

std::vector<std::size_t> te::da::ObjectIdSet::m_ppos
private

The list of property positions used to generate the unique ids.

Definition at line 217 of file ObjectIdSet.h.

std::vector<int> te::da::ObjectIdSet::m_ptypes
private

The list of property types used to generate the unique ids.

Definition at line 218 of file ObjectIdSet.h.


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