private Object readValue(String value) { if (!StringUtil.hasText(value)) { return null; } return tag.getValue(value); }
public void readValue(Object data, Tagable tagable) { tagable.setTagNoNull(this, getValue(data)); }
private void writeItem(int tagID, StringBuilder html) { TagW tag = TagD.getNullable(tagID, null); if (tag != null && html != null && dcmItems != null) { html.append("<B>"); //$NON-NLS-1$ html.append(tag.getDisplayedName()); html.append("</B>"); //$NON-NLS-1$ html.append(StringUtil.COLON_AND_SPACE); html.append(tag.getFormattedTagValue(tag.getValue(dcmItems), null)); } }
public static void setShutterColor(Tagable tagable, Attributes attributes) { Integer psVal = (Integer) TagD.get(Tag.ShutterPresentationValue).getValue(attributes); tagable.setTagNoNull(TagW.ShutterPSValue, TagD.get(Tag.ShutterPresentationValue).getValue(attributes)); float[] rgb = CIELab.convertToFloatLab((int[]) TagD.get(Tag.ShutterPresentationColorCIELabValue).getValue(attributes)); Color color = rgb == null ? null : PresentationStateReader.getRGBColor(psVal == null ? 0 : psVal, rgb, (int[]) null); tagable.setTagNoNull(TagW.ShutterRGBColor, color); }
html.append("<BR>"); //$NON-NLS-1$ for (Attributes v : seq) { TemporalAccessor date = (TemporalAccessor) TagD.get(Tag.VerificationDateTime).getValue(v); if (date != null) { html.append(" * "); //$NON-NLS-1$
int[] pSeq = cols[j].getParentSeqTags(); if (pSeq == null || pSeq.length == 0) { row[j] = tags[j].getFormattedTagValue(tags[j].getValue(m), null); } else { Attributes parent = m; row[j] = tags[j].getFormattedTagValue(tags[j].getValue(parent), null); selectedItem = items.get(row); TagW name = TagD.get(Tag.PatientName); StringBuilder buf = new StringBuilder(name.getFormattedTagValue(name.getValue(selectedItem), null)); buf.append(" "); //$NON-NLS-1$ TagW date = TagD.get(Tag.PatientBirthDate); buf.append(date.getFormattedTagValue(date.getValue(selectedItem), null)); selection.setText(buf.toString());
private boolean applySelection() { if (selectedItem != null) { DefaultTagable tagable = new DefaultTagable(); TagW[] addTags = TagD.getTagFromIDs(Tag.AccessionNumber, Tag.IssuerOfAccessionNumberSequence, Tag.ReferringPhysicianName, Tag.PatientName, Tag.PatientID, Tag.IssuerOfPatientID, Tag.PatientBirthDate, Tag.PatientSex, Tag.PatientWeight, Tag.MedicalAlerts, Tag.Allergies, Tag.PregnancyStatus, Tag.StudyInstanceUID, Tag.RequestingPhysician, Tag.RequestingService, Tag.RequestedProcedureDescription, Tag.RequestedProcedureCodeSequence, Tag.AdmissionID, Tag.IssuerOfAdmissionIDSequence, Tag.SpecialNeeds, Tag.CurrentPatientLocation, Tag.PatientState); for (TagW t : addTags) { t.readValue(selectedItem, tagable); } Attributes seq = selectedItem.getNestedDataset(Tag.ScheduledProcedureStepSequence); tagable.setTagNoNull(TagD.get(Tag.StudyDescription), TagD.get(Tag.ScheduledProcedureStepDescription).getValue(seq)); TagW tModality = TagD.get(Tag.Modality); tagable.setTagNoNull(tModality, tModality.getValue(seq)); tagable.setTagNoNull(TagD.get(Tag.StationName), TagD.get(Tag.ScheduledStationName).getValue(seq)); AcquireManager.getInstance().applyToGlobal(tagable); selectedItem = null; selection.setText(""); //$NON-NLS-1$ jtable.getSelectionModel().clearSelection(); return true; } return false; }
private static void readImages(SeriesAndInstanceReference rfSeries, XMLStreamReader xmler, ReaderParams params) throws XMLStreamException { List<SOPInstanceReferenceAndMAC> instances = new ArrayList<>(); BiConsumerWithException<XMLStreamReader, ReaderParams, XMLStreamException> method = (x, r) -> { String sopUID = TagUtil.getTagAttribute(xmler, TagD.get(Tag.ReferencedSOPInstanceUID).getKeyword(), null); String sopClassUID = TagUtil.getTagAttribute(xmler, TagD.get(Tag.ReferencedSOPClassUID).getKeyword(), null); int[] seqFrame = (int[]) TagD.get(Tag.ReferencedFrameNumber).getValue(xmler); SOPInstanceReferenceAndMAC referencedSOP = new SOPInstanceReferenceAndMAC(); referencedSOP.setReferencedSOPInstanceUID(sopUID); referencedSOP.setReferencedSOPClassUID(sopClassUID); referencedSOP.setReferencedFrameNumber(seqFrame); instances.add(referencedSOP); }; readElement(xmler, Xml.Level.INSTANCE.getTagName(), Xml.Level.SERIES.getTagName(), method, params); rfSeries.setReferencedSOPInstances(instances); }
private void parseStudy(MediaSeriesGroup patient, Attributes dcmPatient, DicomDirReader reader) { Attributes dcmStudy = findFirstChildRecord(dcmPatient, reader); while (dcmStudy != null) { if (RecordType.STUDY.name().equals(dcmStudy.getString(Tag.DirectoryRecordType))) { String studyUID = (String) TagD.getUID(Level.STUDY).getValue(dcmStudy); MediaSeriesGroup study = dicomModel.getHierarchyNode(patient, studyUID); if (study == null) { study = new MediaSeriesGroupNode(TagD.getUID(Level.STUDY), studyUID, DicomModel.study.getTagView()); DicomMediaUtils.writeMetaData(study, dcmStudy); dicomModel.addHierarchyNode(patient, study); } parseSeries(patient, study, dcmStudy, reader); } dcmStudy = findNextSiblingRecord(dcmStudy, reader); } }
private static MediaSeriesGroup readStudy(XMLStreamReader xmler, ReaderParams params, MediaSeriesGroup patient, WadoParameters wadoParameters) throws XMLStreamException { DicomModel model = params.getModel(); String studyUID = (String) TagD.getUID(Level.STUDY).getValue(xmler); MediaSeriesGroup study = model.getHierarchyNode(patient, studyUID); if (study == null) { study = new MediaSeriesGroupNode(TagD.getUID(Level.STUDY), studyUID, DicomModel.study.getTagView()); TagW[] tags = TagD.getTagFromIDs(Tag.StudyDate, Tag.StudyTime, Tag.StudyDescription, Tag.AccessionNumber, Tag.StudyID); for (TagW tag : tags) { tag.readValue(xmler, study); } model.addHierarchyNode(patient, study); } final MediaSeriesGroup study2 = study; BiConsumerWithException<XMLStreamReader, ReaderParams, XMLStreamException> method = (x, r) -> readSeries(x, r, patient, study2, wadoParameters); readElement(xmler, TagD.Level.SERIES.getTagName(), TagD.Level.STUDY.getTagName(), method, params); return study; }
String seriesUID = (String) seriesTag.getValue(xmler); Series dicomSeries = (Series) model.getHierarchyNode(study, seriesUID);