コード例 #1
0
        /// <summary>
        /// Creates a single instance of a SourceInstanceSequence item. Does not modify the SourceInstanceSequence in the underlying collection.
        /// </summary>
        public ISopInstanceReferenceMacro CreateSourceInstanceSequence()
        {
            var iodBase = new SopInstanceReferenceMacro(new DicomSequenceItem());

            iodBase.InitializeAttributes();
            return(iodBase);
        }
コード例 #2
0
        /// <summary>
        /// Creates the ReferencedPerformedProcedureStepSequence in the underlying collection. Type 3.
        /// </summary>
        public ISopInstanceReferenceMacro CreateReferencedPerformedProcedureStepSequence()
        {
            DicomAttribute dicomAttribute = base.DicomAttributeProvider[DicomTags.ReferencedPerformedProcedureStepSequence];

            if (dicomAttribute.IsNull || dicomAttribute.Count == 0)
            {
                DicomSequenceItem dicomSequenceItem = new DicomSequenceItem();
                dicomAttribute.Values = new DicomSequenceItem[] { dicomSequenceItem };
                ISopInstanceReferenceMacro sequenceType = new SopInstanceReferenceMacro(dicomSequenceItem);
                sequenceType.InitializeAttributes();
                return(sequenceType);
            }
            return(new SopInstanceReferenceMacro(((DicomSequenceItem[])dicomAttribute.Values)[0]));
        }
コード例 #3
0
        /// <summary>
        /// Creates the ReferencedPatientSequence in the underlying collection. Type 3.
        /// </summary>
        public ISopInstanceReferenceMacro CreateReferencedPatientSequence()
        {
            DicomElement dicomElement = base.DicomElementProvider[DicomTags.ReferencedPatientSequence];

            if (dicomElement.IsNull || dicomElement.Count == 0)
            {
                DicomSequenceItem dicomSequenceItem = new DicomSequenceItem();
                dicomElement.Values = new DicomSequenceItem[] { dicomSequenceItem };
                ISopInstanceReferenceMacro sequenceType = new SopInstanceReferenceMacro(dicomSequenceItem);
                sequenceType.InitializeAttributes();
                return(sequenceType);
            }
            return(new SopInstanceReferenceMacro(((DicomSequenceItem[])dicomElement.Values)[0]));
        }
コード例 #4
0
        /// <summary>
        /// Creates the ReferencedPerformedProcedureStepSequence in the underlying collection. Type 1C.
        /// </summary>
        public ISopInstanceReferenceMacro CreateReferencedPerformedProcedureStepSequence()
        {
            var dicomAttribute = DicomElementProvider[DicomTags.ReferencedPerformedProcedureStepSequence];

            if (dicomAttribute.IsNull || dicomAttribute.IsEmpty)
            {
                var dicomSequenceItem = new DicomSequenceItem();
                dicomAttribute.Values = new[] { dicomSequenceItem };
                var sequenceType = new SopInstanceReferenceMacro(dicomSequenceItem);
                sequenceType.InitializeAttributes();
                return(sequenceType);
            }
            return(new SopInstanceReferenceMacro(((DicomSequenceItem[])dicomAttribute.Values)[0]));
        }
コード例 #5
0
        /// <summary>
        /// Creates the ReferencedPerformedProcedureStepSequence in the underlying collection.
        /// </summary>
        public ISopInstanceReferenceMacro CreateReferencedPerformedProcedureStepSequence()
        {
            DicomElement referencedPerformedProcedureStepSequence = base.DicomElementProvider[DicomTags.ReferencedPerformedProcedureStepSequence];

            if (referencedPerformedProcedureStepSequence.IsNull || referencedPerformedProcedureStepSequence.Count == 0)
            {
                DicomSequenceItem dicomSequenceItem = new DicomSequenceItem();
                referencedPerformedProcedureStepSequence.Values = new DicomSequenceItem[] { dicomSequenceItem };
                SopInstanceReferenceMacro sopInstanceReference = new SopInstanceReferenceMacro(dicomSequenceItem);
                sopInstanceReference.InitializeAttributes();
                return(sopInstanceReference);
            }
            return(new SopInstanceReferenceMacro(((DicomSequenceItem[])referencedPerformedProcedureStepSequence.Values)[0]));
        }