public boolean addSelected(Attributes other, String privateCreator, int tag) { int index = other.indexOf(privateCreator, tag); if (index < 0) return false; Object value = other.values[index]; if (value instanceof Sequence) { set(privateCreator, tag, (Sequence) value, null); } else if (value instanceof Fragments) { set(privateCreator, tag, (Fragments) value); } else { VR vr = other.vrs[index]; set(privateCreator, tag, vr, toggleEndian(vr, value, bigEndian != other.bigEndian)); } return true; }
private void set(String privateCreator, int tag, Fragments src) { boolean toogleEndian = src.bigEndian() != bigEndian; VR vr = src.vr(); Fragments dst = newFragments(privateCreator, tag, vr, src.size()); for (Object frag : src) dst.add(toggleEndian(vr, frag, toogleEndian)); }
} else { modified.set(privateCreator, tag, vr, toggleEndian(vr, origValue, modifiedToggleEndian)); } else { set(privateCreator, tag, vr, toggleEndian(vr, value, toggleEndian));