15 namespace MAKVRinTerra
20 typedef std::shared_ptr<DtPathFeature>
Ptr;
21 typedef std::shared_ptr<const DtPathFeature>
CPtr;
37 virtual boost::optional<unsigned> numLanes()
const;
39 virtual boost::optional<double> width()
const;
40 virtual boost::optional<double> laneWidth()
const;
41 virtual boost::optional<double> medianWidth()
const;
42 virtual boost::optional<double> flowSpeed()
const;
43 virtual boost::optional<std::string> roadName()
const;
44 virtual bool isClosed()
const;
64 virtual boost::optional<Attribute>
attribute(
const Key& key)
const override {
return myFeature.attribute(key); }
70 return myFeature.numberOfAttributes(name);
77 return myFeature.addDeleteCallback(callback);
81 return myFeature.isDeleted();
86 : myFeature(from.myFeature)
87 , myPathGeometry(from.myPathGeometry)
110 void findClosestPointOnFeature();
112 bool foundClosestFeature()
const;
Represents a set of DtFeature objects or others which conform to the DtFeature concept.
Definition: featureSet.h:105
#define DT_DLL_features
stop complaining about multiple independent base classes for boost::noncopyable this should probably ...
Definition: featuresDefines.h:41
double myClosestDistance
Definition: pathFeature.h:116
std::vector< DtPoint > PointVector
Definition: featureGeometry.h:76
DtPoint myClosestEdgeB
Definition: pathFeature.h:119
DtProj::CPtr myTopoProj
Definition: pathFeature.h:121
virtual bool isDeleted() const override
Check to see if feature has been deleted. Note: this is not related to C++ delete or destructors...
Definition: pathFeature.h:80
Key used to lookup attributes. The DtFeature interface is a dictionary that maps Key objects to attri...
Definition: feature.h:67
std::shared_ptr< const DtProj > CPtr
Definition: proj.h:56
virtual DtFeatureGeometry geometry() const override
Get the geometry associated with this feature. GIS features each typically each associated with one g...
Definition: pathFeature.h:58
Definition: pathFeature.h:49
DtPoint myClosestPoint
Definition: pathFeature.h:117
DtPathFeature::CPtr myClosestFeature
Definition: pathFeature.h:115
DtFeatureGeometry::Path myPathGeometry
Definition: pathFeature.h:92
DtFeatureGeometry::Point myEntityPoint
Definition: pathFeature.h:114
boost::function< void()> DetachCallback
Callback used to detach the user from a feature so the users callback is not called anymore...
Definition: feature.h:179
virtual boost::optional< Attribute > attribute(const Key &key) const override
have to implement all the DtFeature and functions to call the same function on myFeature, like...
Definition: pathFeature.h:64
DtPoint myClosestEdgeA
Definition: pathFeature.h:118
DtFeatureGeometry::PointVector PointVector
Definition: pathFeature.h:102
Direction
Definition: pathFeature.h:23
boost::function< void(const Key &, const Attribute &)> ForEachFunction
Callback used to iterating through attributes with ForEachAttribute.
Definition: feature.h:150
Handle< PointType > Point
Definition: featureGeometry.h:70
Represents some coordinate system. The terms "coordinate system", "projection", "spatial reference"...
Definition: proj.h:52
virtual unsigned numberOfAttributes(const Key::String &name) const override
Definition: pathFeature.h:68
boost::function< void()> DeleteCallback
User supplied callback called when feature is deleted.
Definition: feature.h:182
static const char * TypeName
Definition: pathFeature.h:30
virtual DtFeatureGeometry::Path pathGeometry() const override
Definition: pathFeature.h:59
Definition: pathFeature.h:25
DtSimplePathFeature(const DtSimplePathFeature &from)
Definition: pathFeature.h:85
std::shared_ptr< DtPathFeature > Ptr
Definition: pathFeature.h:20
Definition: pathFeature.h:26
Handle< PathType > Path
Definition: featureGeometry.h:71
virtual void forEachAttribute(ForEachFunction f) const override
Calls the provided callback on each attribute.
Definition: pathFeature.h:66
std::shared_ptr< const DtPathFeature > CPtr
Definition: pathFeature.h:21
DtFeatureSetTemplate< DtPathFeature > DtPathFeatureSet
Definition: pathFeature.h:47
Definition: pathFeature.h:99
Definition: pathFeature.h:17
DtProj::CPtr myLocalProj
Definition: pathFeature.h:120
virtual DtSimplePathFeature * clone() const override
Return a pointer to an object which represents the current feature. In order to enable paging and eff...
Definition: pathFeature.h:73
DtFeatureWrapper< DtFeature > myFeature
Definition: pathFeature.h:91
Represents a GIS feature. Features consist of a DtFeatureGeometry (2.5D geometric vector data) and a ...
Definition: feature.h:36
virtual DetachCallback addDeleteCallback(const DeleteCallback &callback) const override
Add a user supplied callback to the feature to be called when the feature is deleted. If the feature is already deleted the callback may or may not be called by the implementation of this function. The callback is guaranteed to only be called once.
Definition: pathFeature.h:75
Represents a feature geometry.
Definition: featureGeometry.h:40