15 namespace MAKVRinTerra
23 #ifdef DtObjectDebugger_Enable
32 typedef boost::shared_ptr<DtAreaFeature>
Ptr;
33 typedef boost::shared_ptr<const DtAreaFeature>
CPtr;
59 const std::string& type,
double buffer=0,
bool clip=
false);
61 bool operator<(
const Config& other)
const;
69 std::string label()
const;
73 const DtQuery& query,
const boost::optional<DtFeatureGeometry>&,
DtLoadType)
const;
75 bool loaded(
double)
const;
77 unsigned numberOfFeatures()
const;
85 void addEnclosingGeometry(
const boost::optional<DtFeatureGeometry>& geom);
96 #ifdef DtObjectDebugger_Enable
101 typedef boost::shared_ptr<DtFeatureWrapper>
Ptr;
102 typedef boost::shared_ptr<const DtFeatureWrapper>
CPtr;
111 return myWrapper.wrappedFeature().area();
121 myWrapper.forEachAttribute(func);
126 return myWrapper.numberOfAttributes(str);
131 return myWrapper.attribute(key);
136 return myWrapper.addDeleteCallback(callback);
141 return myWrapper.isDeleted();
146 myWrapper.setDeleted();
150 : myWrapper(from.myWrapper)
165 : myWrapper(f.
clone())
Represents a set of DtFeature objects or others which conform to the DtFeature concept.
Definition: featureSet.h:101
boost::function< void(const Feature &)> ForEachFunction
Callback type type for iterating through features.
Definition: featureSet.h:153
#define DT_DLL_features
stop complaining about multiple independent base classes for boost::noncopyable this should probably ...
Definition: featuresDefines.h:41
Feature which has been processed to be an area. They have an additional interface which models areas ...
Definition: areaFeature.h:21
DtFeatureWrapper(const DtFeatureWrapper &from)
Definition: areaFeature.h:149
boost::scoped_ptr< DtFeatureSet > myFeatureSet
Definition: areaFeature.h:87
boost::function< void()> DetachCallback
Callback type for disconnecting other callbacks. Functions which register callbacks return a DetachCa...
Definition: featureSet.h:125
bool clip
Clip features to page table cells.
Definition: areaFeature.h:56
boost::shared_ptr< const DtFeatureWrapper > CPtr
Definition: areaFeature.h:102
Key used to lookup attributes. The DtFeature interface is a dictionary that maps Key objects to attri...
Definition: feature.h:68
DtProj::CPtr myProjection
Definition: areaFeature.h:89
Wraps a feature object and makes sure all the callbacks are unhooked correctly In order to wrap a fea...
Definition: feature.h:301
DtFeatureWrapper * clone() const
Definition: feature.h:376
double buffer
Meters to buffer object.
Definition: areaFeature.h:53
DtFeatureWrapper< DtFeature, DtAreaFeature > myWrapper
Definition: areaFeature.h:170
void forEachAttribute(ForEachFunction func) const
Calls the provided callback on each attribute.
Definition: areaFeature.h:119
DtFeatureWrapper(const DtAreaFeature::Ptr &f)
Definition: areaFeature.h:159
boost::optional< Attribute > attribute(const Key &key) const
Get attribute at a certain key.
Definition: areaFeature.h:129
#define DT_DEFINE_OBJECT_DEBUGGER_NAME(type)
Definition: objectCounter.h:31
Default on in debug, off in release.
Definition: objectCounter.h:27
Definition: featureGeometry.h:60
Config myConfig
Definition: areaFeature.h:90
DtFeatureSetTemplate< DtAreaFeature > DtAreaFeatureSet
Definition: areaFeature.h:41
boost::shared_ptr< const DtAreaFeature > CPtr
Definition: areaFeature.h:33
static const char * TypeName
"area"
Definition: areaFeature.h:30
boost::function< void()> DetachCallback
Callback used to detach the user from a feature so the users callback is not called anymore...
Definition: feature.h:180
DetachCallback addDeleteCallback(const DeleteCallback &callback) const
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: areaFeature.h:134
boost::function< void(const Key &, const Attribute &)> ForEachFunction
Callback used to iterating through attributes with ForEachAttribute.
Definition: feature.h:151
Definition: areaFeature.h:43
Represents some coordinate system. The terms "coordinate system", "projection", "spatial reference"...
Definition: proj.h:44
Represents a set of characeters a DtFeature object can have. DtQuery objects are the way to communica...
Definition: query.h:38
boost::function< void()> DeleteCallback
User supplied callback called when feature is deleted.
Definition: feature.h:183
DtFeatureWrapper * clone() const
Return a pointer to an object which represents the current feature. In order to enable paging and eff...
Definition: areaFeature.h:104
DtFeatureWrapper(const DtAreaFeature &f)
Definition: areaFeature.h:164
void setDeleted()
Definition: areaFeature.h:144
boost::shared_ptr< const DtProj > CPtr
Definition: proj.h:48
unsigned numberOfAttributes(const Key::String &str) const
Definition: areaFeature.h:124
bool isDeleted() const
Check to see if feature has been deleted. Note: this is not related to C++ delete or destructors...
Definition: areaFeature.h:139
DtFeatureGeometry geometry() const
Get the geometry associated with this feature. GIS features each typically each associated with one g...
Definition: areaFeature.h:114
DtFeatureWrapper(const DtFeatureWrapper &from)
Copy constructor.
Definition: feature.h:388
DtFeatureGeometry::Area area() const
Get processed area.
Definition: areaFeature.h:109
std::string type
Query type name.
Definition: areaFeature.h:50
DtLoadType
Used to indicate whether to load features. See DtFeatureSetTemplate::filter.
Definition: featureSet.h:36
DtFeatureWrapper(DtAreaFeature *f)
Definition: areaFeature.h:154
boost::optional< DtFeatureGeometry > myEnclosingGeometry
Definition: areaFeature.h:88
Represents a GIS feature. Features consist of a DtFeatureGeometry (2.5D geometric vector data) and a ...
Definition: feature.h:37
boost::function< void()> LoadedCallback
Callback type type for async notification of feature set loading.
Definition: featureSet.h:156
Configuration object for processing areas.
Definition: areaFeature.h:47
Represents a feature geometry.
Definition: featureGeometry.h:39
boost::shared_ptr< DtAreaFeature > Ptr
Definition: areaFeature.h:32
boost::shared_ptr< DtFeatureWrapper > Ptr
Definition: areaFeature.h:101