package ua.stu.scplib.attribute; import java.util.HashMap; import java.util.Map; /** * <p>A class to lookup the DICOM Transfer Syntax UID from a string name.</p> * * @author dclunie */ public class TransferSyntaxFromName { static protected Map map = new HashMap(); static { map.put("ImplicitVRLittleEndian",TransferSyntax.ImplicitVRLittleEndian); map.put("ExplicitVRLittleEndian",TransferSyntax.ExplicitVRLittleEndian); map.put("ExplicitVRBigEndian",TransferSyntax.ExplicitVRBigEndian); map.put("Default",TransferSyntax.Default); map.put("DeflatedExplicitVRLittleEndian",TransferSyntax.DeflatedExplicitVRLittleEndian); map.put("JPEGBaseline",TransferSyntax.JPEGBaseline); map.put("JPEGExtended",TransferSyntax.JPEGExtended); map.put("JPEGLossless",TransferSyntax.JPEGLossless); map.put("JPEGLosslessSV1",TransferSyntax.JPEGLosslessSV1); map.put("JPEGLS",TransferSyntax.JPEGLS); map.put("JPEGNLS",TransferSyntax.JPEGNLS); map.put("JPEG2000Lossless",TransferSyntax.JPEG2000Lossless); map.put("JPEG2000",TransferSyntax.JPEG2000); map.put("MPEG2MPML",TransferSyntax.MPEG2MPML); map.put("PixelMedBzip2ExplicitVRLittleEndian",TransferSyntax.PixelMedBzip2ExplicitVRLittleEndian); map.put("PixelMedEncapsulatedRawLittleEndian",TransferSyntax.PixelMedEncapsulatedRawLittleEndian); } private TransferSyntaxFromName() { } /** * <p>Get the Transfer Syntax UID from the name.</p> * * @param name a string name of the transfer syntax * @return the UID if found, else the supplied argument if of UID form, else null */ static public String getUID(String name) { String uid = null; if (name != null) { uid = (String)(map.get(name)); if (uid == null) { // if string is a UID form, just return itself if (name.matches("[0-9.][0-9.]*")) { uid=name; } } } return uid; } /** * <p>Test.</p> * * @param arg none */ public static void main(String arg[]) { System.err.println("Default from name: "+(TransferSyntaxFromName.getUID("Default").equals(TransferSyntax.Default))); System.err.println("Default from uid : "+(TransferSyntaxFromName.getUID(TransferSyntax.Default).equals(TransferSyntax.Default))); System.err.println("Dummy from name : "+(TransferSyntaxFromName.getUID("Dummy") == null)); } }