/******************************************************************************* * Copyright (c) 2016 Weasis Team and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Nicolas Roduit - initial API and implementation *******************************************************************************/ package org.weasis.dicom.codec.macro; import java.util.ArrayList; import java.util.Collection; import org.dcm4che3.data.Attributes; import org.dcm4che3.data.Sequence; import org.dcm4che3.data.Tag; public class SOPInstanceReferenceAndPurpose extends SOPInstanceReference { public SOPInstanceReferenceAndPurpose(Attributes dcmItems) { super(dcmItems); } public SOPInstanceReferenceAndPurpose() { this(new Attributes()); } public static Collection<SOPInstanceReferenceAndPurpose> toSOPInstanceReferenceAndPurposesMacros(Sequence seq) { if (seq == null || seq.isEmpty()) { return null; } ArrayList<SOPInstanceReferenceAndPurpose> list = new ArrayList<>(seq.size()); for (Attributes attr : seq) { list.add(new SOPInstanceReferenceAndPurpose(attr)); } return list; } public Code getPurposeOfReferenceCode() { Attributes item = dcmItems.getNestedDataset(Tag.PurposeOfReferenceCodeSequence); return item != null ? new Code(item) : null; } public void setPurposeOfReferenceCode(Code code) { updateSequence(Tag.PurposeOfReferenceCodeSequence, code); } }