comparison trunk/src/docgen/graphutils/dotwriter.d @ 466:db7e27b5c180

Fixed parts of HTML output, some reorganizing.
author Jari-Matti M?kel? <jmjm@iki.fi>
date Wed, 31 Oct 2007 15:17:20 +0200
parents b7503e02fbe7
children cb8edb09108a
comparison
equal deleted inserted replaced
465:e0d24e05a9ee 466:db7e27b5c180
14 14
15 /** 15 /**
16 * Creates a graph rule file for the dot utility. 16 * Creates a graph rule file for the dot utility.
17 */ 17 */
18 class DotWriter : AbstractGraphWriter { 18 class DotWriter : AbstractGraphWriter {
19 public:
20
19 this(GraphWriterFactory factory, PageWriter writer) { 21 this(GraphWriterFactory factory, PageWriter writer) {
20 super(factory, writer); 22 super(factory, writer);
21 } 23 }
24
25 void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) {
26 generateImageTag(imageFile);
27
28 auto image = generateDepImageFile(vertices, edges);
29 auto printer = new Print!(char)(new Layout!(char), imageFile);
30 printer(image);
31 }
32
33 protected:
22 34
23 char[] generateDepImageFile(Vertex[] vertices, Edge[] edges) { 35 char[] generateDepImageFile(Vertex[] vertices, Edge[] edges) {
24 char[] image; 36 char[] image;
25 auto sprint = new Sprint!(char); 37 auto sprint = new Sprint!(char);
26 38
119 fn = FilePath(fn).file; 131 fn = FilePath(fn).file;
120 132
121 fn = fn[0..$-3] ~ imageFormatExts[factory.options.graph.imageFormat]; 133 fn = fn[0..$-3] ~ imageFormatExts[factory.options.graph.imageFormat];
122 134
123 writer.addGraphics(fn); 135 writer.addGraphics(fn);
124 } 136 }
125
126 protected void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) {
127 generateImageTag(imageFile);
128
129 auto image = generateDepImageFile(vertices, edges);
130 auto printer = new Print!(char)(new Layout!(char), imageFile);
131 printer(image);
132 }
133 } 137 }
134 138
135 class CachingDotWriter : DotWriter { 139 class CachingDotWriter : DotWriter {
140 private:
141
136 CachingGraphWriterFactory factory; 142 CachingGraphWriterFactory factory;
143
144 public:
137 145
138 this(CachingGraphWriterFactory factory, PageWriter writer) { 146 this(CachingGraphWriterFactory factory, PageWriter writer) {
139 super(factory, writer); 147 super(factory, writer);
140 this.factory = factory; 148 this.factory = factory;
141 } 149 }
142 150
143 protected void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) { 151 override void generateDepGraph(Vertex[] vertices, Edge[] edges, OutputStream imageFile) {
144 generateImageTag(imageFile); 152 generateImageTag(imageFile);
145 153
146 auto cached = factory.graphCache.getCachedGraph(vertices, edges, GraphFormat.Dot); 154 auto cached = factory.graphCache.getCachedGraph(vertices, edges, GraphFormat.Dot);
147 155
148 auto printer = new Print!(char)(new Layout!(char), imageFile); 156 auto printer = new Print!(char)(new Layout!(char), imageFile);