| 128 | } |
| 129 | |
| 130 | void mitk::SegSourceImageRelationRule::Disconnect_datalayer(IPropertyOwner* source, |
| 131 | const RelationUIDType& relationUID) const |
| 132 | { |
| 133 | // GetInstanceIDByRelationUID relies on the base's per-relation properties, |
| 134 | // which Superclass::Disconnect_datalayer below will remove. Resolve and |
| 135 | // clean up our extension first. |
| 136 | try |
| 137 | { |
| 138 | const auto instanceID = this->GetInstanceIDByRelationUID(source, relationUID); |
| 139 | source->RemoveProperty(MakeRelationScopedKey(instanceID, SOURCE_SERIES_UID_KEY)); |
| 140 | } |
| 141 | catch (...) |
| 142 | { |
| 143 | // Pure data-layer relation (no ID-layer instance): our extension is keyed |
| 144 | // by instance ID and was never written, so nothing to clean up. |
| 145 | } |
| 146 | |
| 147 | Superclass::Disconnect_datalayer(source, relationUID); |
| 148 | } |
| 149 | |
| 150 | std::vector<mitk::SegSourceImageRelationRule::SourceImageRelation> |
| 151 | mitk::SegSourceImageRelationRule::GetSourceImageRelations(const MultiLabelSegmentation* seg) |
nothing calls this directly
no test coverage detected