public boolean canNodeAppear(String elementName, ImageTypeSpecifier imageType) { ColorModel cm = imageType.getColorModel(); if (!(cm instanceof IndexColorModel)) if ("JPEG2000PaletteBox".equals(elementName)) return false; if (!cm.hasAlpha()) if ("JPEG2000ChannelDefinitionBox".equals(elementName)) return false; if (getParent(elementName) != null) return true; return false; }
private void mergeNativeTree(Node root) throws IIOInvalidTreeException { NodeList list = root.getChildNodes(); for (int i = list.getLength() - 1; i >= 0; i--) { Node node = list.item(i); String name = node.getNodeName(); if (format.getParent(name) != null) { if (format.isLeaf(name)) { String s = (String)Box.getAttribute(node, "Type"); Box box = Box.createBox(Box.getTypeInt(s), node); if (format.singleInstance(name)&&getElement(name) != null) { replace(name, box); } else boxes.add(box); } else { mergeNativeTree(node); } } } }
private IIOMetadataNode createNodeIntoTree(IIOMetadataNode root, String name) { IIOMetadataNode node = getNodeFromTree(root, name, null); if (node != null) return node; node = new IIOMetadataNode(name); String parent = format.getParent(name); IIOMetadataNode parentNode = createNodeIntoTree(root, parent); parentNode.appendChild(node); return node; }
private boolean insertNodeIntoTree(IIOMetadataNode root, IIOMetadataNode node) { String name = node.getNodeName(); String parent = format.getParent(name); if (parent == null) return false; IIOMetadataNode parentNode = getNodeFromTree(root, parent, name); if (parentNode == null) parentNode = createNodeIntoTree(root, parent); parentNode.appendChild(node); return true; }
getParent("JPEG2000SignatureBox"), CHILD_POLICY_EMPTY); getParent("JPEG2000FileTypeBox"), CHILD_POLICY_ALL); addElement("OtherBoxes", getParent("OtherBoxes"), CHILD_POLICY_CHOICE); getParent("JPEG2000HeaderSuperBox"), CHILD_POLICY_CHOICE); addElement("JPEG2000CodeStreamBox", getParent("JPEG2000CodeStreamBox"), CHILD_POLICY_EMPTY); addElement("JPEG2000IntellectualPropertyRightsBox", getParent("JPEG2000IntellectualPropertyRightsBox"), CHILD_POLICY_ALL); addElement("JPEG2000XMLBox", getParent("JPEG2000XMLBox"), CHILD_POLICY_ALL); addElement("JPEG2000UUIDBox", getParent("JPEG2000UUIDBox"), CHILD_POLICY_ALL); addElement("JPEG2000UUIDInfoBox", getParent("JPEG2000UUIDInfoBox"), CHILD_POLICY_ALL);