GEOS  3.9.1dev
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
geos::noding::SegmentString Class Referenceabstract

An interface for classes which represent a sequence of contiguous line segments. More...

#include <SegmentString.h>

Inheritance diagram for geos::noding::SegmentString:
[legend]

Public Types

typedef std::vector< const SegmentString * > ConstVect
 
typedef std::vector< SegmentString * > NonConstVect
 

Public Member Functions

 SegmentString (const void *newContext)
 Construct a SegmentString. More...
 
virtual ~SegmentString ()
 
const void * getData () const
 Gets the user-defined data for this segment string. More...
 
void setData (const void *data)
 Sets the user-defined data for this segment string. More...
 
virtual size_t size () const =0
 
virtual const geom::CoordinategetCoordinate (size_t i) const =0
 
virtual geom::CoordinateSequencegetCoordinates () const =0
 Return a pointer to the CoordinateSequence associated with this SegmentString. More...
 
virtual bool isClosed () const =0
 
virtual std::ostream & print (std::ostream &os) const
 

Private Member Functions

 SegmentString (const SegmentString &other)=delete
 
SegmentStringoperator= (const SegmentString &rhs)=delete
 

Private Attributes

const void * context
 

Friends

std::ostream & operator<< (std::ostream &os, const SegmentString &ss)
 

Detailed Description

An interface for classes which represent a sequence of contiguous line segments.

SegmentStrings can carry a context object, which is useful for preserving topological or parentage information.

Definition at line 46 of file SegmentString.h.

Member Typedef Documentation

Definition at line 48 of file SegmentString.h.

Definition at line 49 of file SegmentString.h.

Constructor & Destructor Documentation

geos::noding::SegmentString::SegmentString ( const void *  newContext)
inline

Construct a SegmentString.

Parameters
newContextthe context associated to this SegmentString

Definition at line 58 of file SegmentString.h.

virtual geos::noding::SegmentString::~SegmentString ( )
inlinevirtual

Definition at line 64 of file SegmentString.h.

geos::noding::SegmentString::SegmentString ( const SegmentString other)
privatedelete

Member Function Documentation

virtual const geom::Coordinate& geos::noding::SegmentString::getCoordinate ( size_t  i) const
pure virtual
virtual geom::CoordinateSequence* geos::noding::SegmentString::getCoordinates ( ) const
pure virtual

Return a pointer to the CoordinateSequence associated with this SegmentString.

Note
The CoordinateSequence is owned by this SegmentString!

Implemented in geos::noding::NodedSegmentString, and geos::noding::BasicSegmentString.

const void* geos::noding::SegmentString::getData ( ) const
inline

Gets the user-defined data for this segment string.

Returns
the user-defined data

Definition at line 72 of file SegmentString.h.

virtual bool geos::noding::SegmentString::isClosed ( ) const
pure virtual
SegmentString& geos::noding::SegmentString::operator= ( const SegmentString rhs)
privatedelete
virtual std::ostream& geos::noding::SegmentString::print ( std::ostream &  os) const
virtual
void geos::noding::SegmentString::setData ( const void *  data)
inline

Sets the user-defined data for this segment string.

Parameters
dataan Object containing user-defined data

Definition at line 83 of file SegmentString.h.

virtual size_t geos::noding::SegmentString::size ( ) const
pure virtual

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const SegmentString ss 
)
friend

Member Data Documentation

const void* geos::noding::SegmentString::context
private

Definition at line 107 of file SegmentString.h.


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