13 #ifndef mitkSegSourceImageRelationRule_h
14 #define mitkSegSourceImageRelationRule_h
23 class MultiLabelSegmentation;
97 static std::vector<SourceImageRelation>
135 const std::string& sourceSeriesInstanceUID)
const;
153 const Image* source_image);
#define MITKMULTILABEL_EXPORT
Interface implemented by classes that provide write/read access to property information.
Interface implemented by classes that provide access to property information.
Image class for storing multi-dimensional medical image data.
MultiLabelSegmentation class for handling labels and layers in a segmentation session.
Identifiable::UIDType RelationUIDType
std::string InstanceIDType
Relation rule for referencing a segmentation to a source-image derivations.
static std::vector< SourceImageRelation > GetSourceImageRelations(const MultiLabelSegmentation *seg)
Enumerates the seg-source relations established on seg.
mitkClassMacro(SegSourceImageRelationRule, SourceImageRelationRule)
void Disconnect_datalayer(IPropertyOwner *source, const RelationUIDType &relationUID) const override
Removes this rule's SourceSeriesInstanceUID extension before delegating to the base.
SegSourceImageRelationRule(const SegSourceImageRelationRule &other)
RelationUIDType Connect(MultiLabelSegmentation *seg, const IPropertyProvider *sourceProvider) const
Connects a segmentation to a source represented as an IPropertyProvider.
void Connect_datalayer(IPropertyOwner *source, const IPropertyProvider *destination, const InstanceIDType &instanceID) const override
Extends the base data-layer Connect by capturing the source SeriesInstanceUID per relation.
static RelationUIDType Connect(MultiLabelSegmentation *seg, const Image *source_image)
Static convenience that constructs an instance of this rule and connects seg to source_image.
static const std::string & CanonicalPurposeTag()
Returns the canonical DICOM Code Value used in the SEG's Source Image Sequence Purpose Of Reference C...
RelationUIDType Connect(MultiLabelSegmentation *seg, TemporoSpatialStringProperty *instanceUIDsPerSlice, TemporoSpatialStringProperty *classUIDsPerSlice, const std::string &sourceSeriesInstanceUID) const
Connects seg to a source described by its per-slice DICOM UID properties, assembling the intermediate...
SegSourceImageRelationRule()
Relation rule for referencing an image as the source of a destination entity.
Property for storing string values resolved by time step and slice index.
Find image slices visible on a given plane.
One seg-source relation as the DICOM SEG writer needs to see it.
TemporoSpatialStringProperty::ConstPointer classUIDsPerSlice
std::string sourceSeriesInstanceUID
TemporoSpatialStringProperty::ConstPointer instanceUIDsPerSlice