writer.writeAttribute("mutualedgesenabled", String.valueOf(graphView.getMutualEdgesEnabled()));
writer.writeAttribute("mutualedgestotal", String.valueOf(graphView.getMutualEdgesTotal()));
writer.writeAttribute("nodesenabled", String.valueOf(graphView.getNodesEnabled()));
//Nodes
for (TreeListIterator itr = new TreeListIterator(graphView.getStructure().getTree(), 1); itr.hasNext();) {
AbstractNode node = itr.next();
writer.writeStartElement(ELEMENT_VIEW_NODE);
writer.writeAttribute("mainpre", String.valueOf(node.getInView(0).pre));
writer.writeAttribute("enabled", String.valueOf(node.isEnabled()));
writer.writeAttribute("pre", String.valueOf(node.pre));
writer.writeAttribute("parent", String.valueOf(node.parent.pre));
writer.writeAttribute("enabledindegree", String.valueOf(node.getEnabledInDegree()));
writer.writeAttribute("enabledoutdegree", String.valueOf(node.getEnabledOutDegree()));
writer.writeAttribute("enabledmutualdegree", String.valueOf(node.getEnabledMutualDegree()));
writer.writeEndElement();
}
//Edges
ParamAVLIterator<AbstractEdge> edgeIterator = new ParamAVLIterator<AbstractEdge>();
for (TreeListIterator itr = new TreeListIterator(graphView.getStructure().getTree(), 1); itr.hasNext();) {
AbstractNode node = itr.next();
for (edgeIterator.setNode(node.getEdgesOutTree()); edgeIterator.hasNext();) {
AbstractEdge edge = edgeIterator.next();
writer.writeStartElement(ELEMENT_VIEW_EDGE);
writer.writeAttribute("id", String.valueOf(edge.getId()));
writer.writeEndElement();