Isis Developer Reference
|
Feature nomenclature database querier. More...
#include <FeatureNomenclature.h>
Classes | |
class | Feature |
A named feature on a target. More... | |
Public Types | |
enum | IAUStatus { NoStatus, Approved, Dropped, Unapproved } |
Enumeration of approval statuses. More... | |
Signals | |
void | featuresIdentified (FeatureNomenclature *) |
This is emitted when a query is completed. More... | |
Public Member Functions | |
FeatureNomenclature () | |
Instantiate a feature nomenclature. More... | |
FeatureNomenclature (const FeatureNomenclature &other) | |
Copy a feature nomenclature. More... | |
~FeatureNomenclature () | |
Frees allocated memory. More... | |
void | queryFeatures (QString target, Latitude startLat, Longitude startLon, Latitude endLat, Longitude endLon) |
Makes sure the longitudinal ranges are correct. More... | |
QList< Feature > | features () const |
This gives you the features found in all of the queries so far. More... | |
bool | hasResult () const |
Test if any understandable results have been received from the nomenclature database. More... | |
void | swap (FeatureNomenclature &other) |
Swap the instances *this and other. More... | |
FeatureNomenclature & | operator= (const FeatureNomenclature &other) |
This takes on the data from rhs. More... | |
Static Public Member Functions | |
static bool | featureDiameterGreaterThan (const FeatureNomenclature::Feature &lhs, const FeatureNomenclature::Feature &rhs) |
Compare the diameter of two features. More... | |
Feature nomenclature database querier.
This class queries the nomenclature database for features. To use this class, you create a blank instance. Then you connect to the featuresIdentified() signal. Finally, you call query with the appropriate input data. You can call query as many times as you want; featuresIdentified() will be emitted the same number of times. Finally, you can access the features with features().
Enumeration of approval statuses.
Isis::FeatureNomenclature::FeatureNomenclature | ( | ) |
Instantiate a feature nomenclature.
This prepares to make network requests.
Isis::FeatureNomenclature::FeatureNomenclature | ( | const FeatureNomenclature & | other | ) |
Copy a feature nomenclature.
Data being queried currently will not be available in the copy, but ready results will be available.
other | The feature nomenclature to copy |
Isis::FeatureNomenclature::~FeatureNomenclature | ( | ) |
Frees allocated memory.
|
static |
Compare the diameter of two features.
This is very useful for sorting with qSort(). If lhs > rhs, then this returns true. This considers valid data
invalid data.
lhs | The left hand side of the '>' operator |
rhs | The right hand side of the '>' operator |
References Isis::FeatureNomenclature::Feature::diameter(), and Isis::Distance::isValid().
QList< FeatureNomenclature::Feature > Isis::FeatureNomenclature::features | ( | ) | const |
This gives you the features found in all of the queries so far.
If all of the queries are finished, then this list will contain all of the results. The list will be empty if no queries have succeeded so far.
|
signal |
This is emitted when a query is completed.
When emitted, the this pointer is provided.
bool Isis::FeatureNomenclature::hasResult | ( | ) | const |
Test if any understandable results have been received from the nomenclature database.
FeatureNomenclature & Isis::FeatureNomenclature::operator= | ( | const FeatureNomenclature & | rhs | ) |
This takes on the data from rhs.
Active queries will not be copied. This is exception safe.
rhs | The FeatureNomenclature on the right hand side of the '=' |
References swap().
void Isis::FeatureNomenclature::queryFeatures | ( | QString | target, |
Latitude | startLat, | ||
Longitude | startLon, | ||
Latitude | endLat, | ||
Longitude | endLon | ||
) |
Makes sure the longitudinal ranges are correct.
If the range intersects with the 0 line the range is split into two ranges, the minimum to 360 and 0 to the maximum. Then it runs a query on each range.
target | The target for which features might be present |
startLat | The minimum latitude of the ground range to search |
startLon | The minimum longitude of the ground range to search |
endLat | The maximum latitude of the ground range to search |
endLon | The maximum longitude of the ground range to search |
References Isis::Longitude::to360Range().
void Isis::FeatureNomenclature::swap | ( | FeatureNomenclature & | other | ) |
Swap the instances *this and other.
This cannot throw an exception.
other | The FeatureNomenclature to trade data with. |
Referenced by Isis::FeatureNomenclature::Feature::operator=(), and operator=().