-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hydrofabric refactor to support latest hydrofabric data model #665
Conversation
93ae187
to
1b2fd81
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a few small changes/clarification. Other than that, it looks good to me.
92eaa39
to
e430048
Compare
|
||
destinations = network.get_destination_ids(feat_id); | ||
if(feat_type == "cat" || feat_type == "agg") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just noticed - this same change (and the one below in else if
) should have been made for HY_Features_MPI as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix in #674
Properly handle latest stable hydrofabric representations based on the hydrfabric datamodel.
Closes #619 #649
I believe this also address some of the segmentation faults reported, and I expect this to resolve
#658
CIROH-UA/NGIAB-CloudInfra#21
Since the segfault (based on the valgrind backtrace in #658) is showing the fault happening when accessing a nexus (that was a nullptr). This PR should prevent that nexus from being null, and if it is, should should throw an approriate runtime error.
Allows #604 and #659 to be addressed by simply doing
collection.update_ids("id");
after the nexus and catchment collections are read and combined (in whatever format)
This may partially and/or indirectly address #529
Additions
hy_features::identifiers
namespace with static representations of hydrofabric feature identity prefixes and some helper functions for determining if an identifier represents a particular concept.Removals
Changes
FeatureCollection
to maintain an identity map for an alternate id, e.g. bothdivide_id
andid
Testing
Todos
Feature::get_id(const std::string& alt_id)
and FeatureCollectionupdate_ids( const std::string& alt_id )
Checklist
Target Environment support