Medical Imaging Interaction Toolkit
2024.12.99-0da743f6
Medical Imaging Interaction Toolkit
|
#include <mitkSourceImageRelationRule.h>
Public Types | |
typedef SourceImageRelationRule | Self |
typedef PropertyRelationRuleBase | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
using | RuleIDType = PropertyRelationRuleBase::RuleIDType |
using | RelationUIDType = PropertyRelationRuleBase::RelationUIDType |
using | RelationUIDVectorType = PropertyRelationRuleBase::RelationUIDVectorType |
Public Types inherited from mitk::PropertyRelationRuleBase | |
enum | RelationType { RelationType::None, RelationType::Data, RelationType::ID, RelationType::Complete } |
typedef PropertyRelationRuleBase | Self |
typedef itk::Object | Superclass |
typedef itk::SmartPointer< Self > | Pointer |
typedef itk::SmartPointer< const Self > | ConstPointer |
using | RuleIDType = std::string |
using | RelationUIDType = Identifiable::UIDType |
using | RelationUIDVectorType = std::vector< RelationUIDType > |
using | RelationVectorType = std::vector< RelationType > |
using | InstanceIDType = std::string |
Static Public Member Functions | |
static const char * | GetStaticNameOfClass () |
static Pointer | New () |
static Pointer | New (const RuleIDType &_arg) |
static Pointer | New (const RuleIDType &_arga, const std::string &_argb) |
static Pointer | New (const RuleIDType &_arga, const std::string &_argb, const std::string &_argc, const std::string &_argd) |
Static Public Member Functions inherited from mitk::PropertyRelationRuleBase | |
static const char * | GetStaticNameOfClass () |
static PropertyKeyPath | GetRootKeyPath () |
static PropertyKeyPath | GetRIIPropertyKeyPath (const std::string propName, const InstanceIDType &instanceID) |
static PropertyKeyPath | GetRIIRelationUIDPropertyKeyPath (const InstanceIDType &instanceID="") |
static PropertyKeyPath | GetRIIRuleIDPropertyKeyPath (const InstanceIDType &instanceID="") |
static PropertyKeyPath | GetRIIDestinationUIDPropertyKeyPath (const InstanceIDType &instanceID="") |
Protected Types | |
using | InstanceIDType = PropertyRelationRuleBase::InstanceIDType |
using | InstanceIDVectorType = PropertyRelationRuleBase::InstanceIDVectorType |
using | DataRelationUIDVectorType = PropertyRelationRuleBase::DataRelationUIDVectorType |
Protected Types inherited from mitk::PropertyRelationRuleBase | |
using | InstanceIDVectorType = std::vector< InstanceIDType > |
using | DataRelationUIDVectorType = std::vector< std::pair< RelationUIDType, RuleIDType > > |
Protected Member Functions | |
SourceImageRelationRule () | |
SourceImageRelationRule (const RuleIDType &purposeTag) | |
SourceImageRelationRule (const RuleIDType &purposeTag, const std::string &displayName) | |
SourceImageRelationRule (const RuleIDType &purposeTag, const std::string &displayName, const std::string &sourceRole, const std::string &destinationRole) | |
~SourceImageRelationRule () override=default | |
std::vector< std::pair< size_t, std::string > > | GetReferenceSequenceIndices (const IPropertyProvider *source, const IPropertyProvider *destination=nullptr, InstanceIDVectorType ignoreInstances={}) const |
virtual DataRelationUIDVectorType | GetRelationUIDs_DataLayer (const IPropertyProvider *source, const IPropertyProvider *destination, const InstanceIDVectorType &instances_IDLayer) const override |
void | Connect_datalayer (IPropertyOwner *source, const IPropertyProvider *destination, const InstanceIDType &instanceID) const override |
void | Disconnect_datalayer (IPropertyOwner *source, const RelationUIDType &relationUID) const override |
bool | IsSupportedRuleID (const RuleIDType &ruleID) const override |
itk::LightObject::Pointer | InternalClone () const override |
PropertyKeyPath::ItemSelectionIndex | CreateNewSourceImageSequenceItem (IPropertyOwner *source) const |
std::string | GenerateRuleID (const std::string &purpose) const |
Protected Member Functions inherited from mitk::PropertyRelationRuleBase | |
PropertyRelationRuleBase ()=default | |
~PropertyRelationRuleBase () override=default | |
InstanceIDVectorType | GetInstanceID_IDLayer (const IPropertyProvider *source, const IPropertyProvider *destination) const |
RelationUIDType | GetRelationUIDByInstanceID (const IPropertyProvider *source, const InstanceIDType &instanceID) const |
InstanceIDType | GetInstanceIDByRelationUID (const IPropertyProvider *source, const RelationUIDType &relationUID) const |
RelationUIDType | Connect (IPropertyOwner *source, const IPropertyProvider *destination) const |
std::string | GetRIIPropertyRegEx (const std::string propName="", const InstanceIDType &instanceID="") const |
RuleIDType | GetRuleIDByInstanceID (const IPropertyProvider *source, const InstanceIDType &instanceID) const |
std::string | GetDestinationUIDByInstanceID (const IPropertyProvider *source, const InstanceIDType &instanceID) const |
itk::LightObject::Pointer | InternalClone () const override |
const Identifiable * | CastProviderAsIdentifiable (const mitk::IPropertyProvider *provider) const |
Additional Inherited Members | |
Static Protected Member Functions inherited from mitk::PropertyRelationRuleBase | |
static InstanceIDType | NULL_INSTANCE_ID () |
static InstanceIDType | GetInstanceIDByPropertyName (const std::string propName) |
static std::vector< std::string > | GetPropertyKeys (const IPropertyProvider *owner) |
This rule class can be used for relations that reference an image as source for a destination entity. (e.g. an image that is used to generate the relation source). The ID-layer is supported like for GenericIDRelations. So it can be used for all ID based relations between PropertyProviders that also implement the interface identifiable. In addition the rule uses the data-layer to deduce/define relations. For this layer it uses properties compliant to DICOM. Thus (1) the information is stored in a DICOM Source Image Sequence item (0x0008,0x2112) and (2) the destination must have properties DICOM SOP Instance UIDs (0x0008, 0x0018) and DICOM SOP Class UID (0x0008, 0x0016). If the destination does not have this properties, no connection can be made on the data-layer.
Definition at line 44 of file mitkSourceImageRelationRule.h.
typedef itk::SmartPointer<const Self> mitk::SourceImageRelationRule::ConstPointer |
Definition at line 47 of file mitkSourceImageRelationRule.h.
|
protected |
Definition at line 97 of file mitkSourceImageRelationRule.h.
|
protected |
Definition at line 89 of file mitkSourceImageRelationRule.h.
|
protected |
Definition at line 90 of file mitkSourceImageRelationRule.h.
Definition at line 47 of file mitkSourceImageRelationRule.h.
Definition at line 54 of file mitkSourceImageRelationRule.h.
using mitk::SourceImageRelationRule::RelationUIDVectorType = PropertyRelationRuleBase::RelationUIDVectorType |
Definition at line 55 of file mitkSourceImageRelationRule.h.
Definition at line 53 of file mitkSourceImageRelationRule.h.
Definition at line 47 of file mitkSourceImageRelationRule.h.
Definition at line 47 of file mitkSourceImageRelationRule.h.
|
protected |
|
protected |
|
protected |
|
protected |
|
overrideprotecteddefault |
RelationUIDType mitk::SourceImageRelationRule::Connect | ( | Image * | source, |
const Image * | destination | ||
) | const |
Connects to passed images.
|
overrideprotectedvirtual |
Is called by Connect() to ensure that source has correctly set properties to resemble the relation on the data layer. This means that the method should set the properties that describe and encode the relation on the data layer (data-layer-specific relation properties). If the passed instance are already connected, the old settings should be overwritten. Connect() will ensure that source and destination are valid pointers.
source | |
destination | |
instanceID | is the ID for the relation instance that should be connected. Existence of the relation instance is ensured. |
Implements mitk::PropertyRelationRuleBase.
|
protected |
Prepares a new reference to an image on the data layer. Therefore an unused and valid sequence item index for the passed source will be generated and a relationUID property with the relationUID will be set to block the instance ID. The instance ID will be returned.
|
overrideprotectedvirtual |
This method is called by Disconnect() to remove all properties of the relation from the source that are set by Connect_datalayer().
Implements mitk::PropertyRelationRuleBase.
Reimplemented in mitk::ModelFitResultRelationRule.
|
protected |
|
inlineoverridevirtual |
Reimplemented from mitk::PropertyRelationRuleBase.
Definition at line 47 of file mitkSourceImageRelationRule.h.
|
virtual |
Reimplemented from mitk::PropertyRelationRuleBase.
|
overridevirtual |
Returns a human readable string that can be used to describe the role of a destination in context of the rule instance.
Implements mitk::PropertyRelationRuleBase.
|
overridevirtual |
Returns a human readable string that can be used to describe the rule. Does not need to be unique.
Implements mitk::PropertyRelationRuleBase.
|
protected |
Helper function that returns a vector of all selections of the property DICOM.0008.2112 (and its associated ruleID) that refer to destination or all (if no destination is passed) with a supported RuleID and which are not already covered by the ignoreInstances.
|
overrideprotectedvirtual |
Returns the RelationUIDs of all relations that are defined by the data layer of source for this rule instance and, if defined, destination. If the passed source (and destination) instance has no relation on the data layer, an empty vector will be returned.
source | |
destination | Destination the find relations should point to. If destination is NULL any relation on the data layer for this rule and source are wanted. |
instances_IDLayer | List of relation instances that are already defined by the ID layer. The implementation of this function should only cover relations that are not already resembled in the passed relarions_IDLayer. |
Implements mitk::PropertyRelationRuleBase.
Reimplemented in mitk::ModelFitResultRelationRule.
|
overridevirtual |
Returns an ID string that identifies the rule class
Implements mitk::PropertyRelationRuleBase.
|
overridevirtual |
Returns a human readable string that can be used to describe the role of a source in context of the rule instance.
Implements mitk::PropertyRelationRuleBase.
|
inlinestatic |
Definition at line 47 of file mitkSourceImageRelationRule.h.
|
overrideprotected |
|
overridevirtual |
Returns if the instance is a abstract rule (true). Default implementation is true. Overwrite and reimplement if another behavior is needed.
Reimplemented from mitk::PropertyRelationRuleBase.
|
overridevirtual |
This method checks if owner is eligible to be a Destination for the rule. The default implementation returns a True for every valid IPropertyProvider (so only a null_ptr results into false). May be reimplement by derived rules if they have requirements on potential Sources).
Reimplemented from mitk::PropertyRelationRuleBase.
Reimplemented in mitk::ModelFitResultRelationRule.
|
overrideprotectedvirtual |
Returns if the passed rule ID is supported/relevant for the rule. Either because it is the very ID of the rule (default implementation) or because it is an abstract rule which also supports the rule ID.
Reimplemented from mitk::PropertyRelationRuleBase.
|
static |
|
inlinestatic |
Definition at line 49 of file mitkSourceImageRelationRule.h.
|
inlinestatic |
Definition at line 50 of file mitkSourceImageRelationRule.h.
|
inlinestatic |
Definition at line 51 of file mitkSourceImageRelationRule.h.