Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(973)

Side by Side Diff: third_party/lcov-1.9/contrib/galaxy/posterize.pl

Issue 23189008: Upgrades lcov to 1.10, removes lcov-1.9 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Re-adds UNKNOWN suppression Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/lcov-1.9/contrib/galaxy/genflat.pl ('k') | third_party/lcov-1.9/descriptions.tests » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 #!/usr/bin/perl
2 #
3 # Copyright (c) International Business Machines Corp., 2002
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or (at
8 # your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 #
19 #
20 # posterize.pl
21 #
22 # This script generates a postscript file from output generated from the
23 # fcgp http://sourceforge.net/projects/fcgp/ for plotting
24 #
25 #
26 # History:
27 # 2003-09-04 wrote - James M Kenefick Jr. <jkenefic@us.ibm.com>
28 #
29
30
31
32 # a good deal of this could be turned in to cli
33 # arguments.
34
35 # Constants
36 my $Title = "Linux Kernel Coverage";
37 my $KernelVersion = "2.5.73";
38 my $TestDescription = "A Sample Print";
39 my $Image = "../lgp/image.ps";
40
41 # Variables
42 my $Bounds = "";
43 # Paper sizes in inches
44 my $PAPER_WIDTH = 34;
45 my $PAPER_HEIGHT = 42;
46
47 # points per inch
48 my $ppi = 72;
49
50 # Margins
51 my $TopMargin = 1;
52 my $BottomMargin = 1.5;
53 my $LeftMargin = 1;
54 my $RightMargin = 1;
55
56
57 $RightMargin = $PAPER_WIDTH - $RightMargin;
58 $TopMargin = $PAPER_HEIGHT - $TopMargin;
59
60 my $filename = "poster.ps";
61
62 # Sizes in ppi
63 my $PPI_WIDTH = ($PAPER_WIDTH * $ppi);
64 my $PPI_HEIGHT = ($PAPER_HEIGHT * $ppi);
65
66 # Date we create poster
67 my $date = `date`;
68
69 print STDERR "Creating Poster\n";
70
71 open POSTER, ">$filename";
72
73
74
75 print(POSTER <<END_OF_USAGE);
76 %!PS-Adobe-1.0
77 %%DocumentFonts: Helvetica Helvetica-Bold
78 %%Title: Linux 2.4.0 Kernel Poster
79 %%Creator: Rusty's scripts and postersize (GPL)
80 %%CreationDate: $date
81 %%Pages: 1
82 %%BoundingBox: 0 0 $PPI_WIDTH $PPI_HEIGHT
83 %%EndComments
84 %!
85 /PRorig_showpage_x178313 /showpage load def /showpage{
86 errordict /handleerror {} put
87 }def
88 /initgraphics{}def/setpagedevice{pop}def
89 statusdict begin /a4tray{}def /lettertray{}def end
90 /a4{}def/a3{}def/a0{}def/letter{}def/legal{}def
91 /a4small{}def /lettersmall{}def /a4tray{}def /lettertray{}def
92 /setscreen{pop pop pop}def
93 /ColorManagement {pop} def
94
95
96 /A {gsave newpath 0 360 arc stroke grestore} bind def
97 /M {moveto} bind def
98 /L {lineto} bind def
99 /D {[] 0 setdash} bind def
100 /D5 {[5] 0 setdash} bind def
101 /C0 {0 0 0 setrgbcolor} bind def
102 /C1 {.8 .4 .4 setrgbcolor} bind def
103 /C2 {.5 1 .5 setrgbcolor} bind def
104 /C3 {0 .7 0 setrgbcolor} bind def
105 /C4 {1 0 0 setrgbcolor} bind def
106 /C5 {0 0 1 setrgbcolor} bind def
107 /R {grestore} bind def
108 /S {0 0 M stroke} bind def
109 /T {gsave translate} bind def
110 /U {C0 newpath 4 copy 4 2 roll 8 7 roll M L L L closepath stroke
111 C1 findfont exch scalefont setfont M show} bind def
112
113 % Added James M Kenefick Jr.
114 /Hi_Color {0 0 1} def
115 /Med_Color {0 .60 1} def
116 /Lo_Color {0 1 1} def
117 /None_Color {.75 .75 .75} def
118 /Hi {newpath 4 copy 4 2 roll 8 7 roll M L L L Hi_Color setrgbcolor fill closepat h} bind def
119 /Med {newpath 4 copy 4 2 roll 8 7 roll M L L L Med_Color setrgbcolor fill closep ath} bind def
120 /Lo {newpath 4 copy 4 2 roll 8 7 roll M L L L Lo_Color setrgbcolor fill closepat h} bind def
121 /None {newpath 4 copy 4 2 roll 8 7 roll M L L L None_Color setrgbcolor fill clos epath} bind def
122
123 /inch
124 {
125 72 mul
126 }
127 def
128
129 /LeftMargin $LeftMargin inch def
130 /RightMargin $RightMargin inch def
131 /TopMargin $TopMargin inch def
132 /BottomMargin $BottomMargin inch def
133 /FontScale 25 def
134 /AuthorFontScale 70 def
135
136 /centerText
137 {
138 dup
139 stringwidth pop
140 2 div
141 RightMargin LeftMargin sub 2 div
142 exch sub
143 LeftMargin add
144 NextLine moveto
145 show
146 }
147 def
148
149 /upLine
150 {
151 /NextLine
152 NextLine LineSpace2 add
153 def
154 }
155 def
156
157 /advanceLine
158 {
159 /NextLine
160 NextLine LineSpace sub
161 def
162 }
163 def
164
165 /fontScale
166 {
167 TopMargin BottomMargin sub FontScale div
168 }
169 def
170
171 /authorfontScale
172 {
173 TopMargin BottomMargin sub AuthorFontScale div
174 }
175 def
176
177 /rightJustify
178 {
179 dup
180 stringwidth pop
181 RightMargin 1 inch sub
182 exch sub
183 NextLine moveto
184 show
185 }
186 def
187
188 /usableY
189 {
190 TopMargin LineSpace 3 mul sub BottomMargin sub
191 }
192 def
193
194 /usableX
195 {
196 RightMargin LeftMargin sub
197 }
198 def
199 gsave
200 /Times-Roman findfont fontScale scalefont setfont
201 /LineSpace fontScale def
202 /NextLine (B) stringwidth pop TopMargin exch sub def
203
204 %%EndProlog
205 %%Page 1
206 % title
207
208 ($Title) centerText advanceLine
209 (Kernel: $KernelVersion) centerText advanceLine
210 ($TestDescription) centerText
211
212 % Author Block
213 LeftMargin BottomMargin translate
214 /Times-Roman findfont authorfontScale scalefont setfont
215 /LineSpace2 authorfontScale def
216 /NextLine 0 def
217 (Based on work by Rusty Russell, Christian Reiniger) rightJustify
218 upLine
219 (By James M. Kenefick Jr.) rightJustify
220
221 grestore
222 LeftMargin BottomMargin translate
223
224 % Key Block
225 15 15 scale
226 % This is the key for the graph.
227
228 /box { newpath moveto 0 1 rlineto 2 0 rlineto 0 -1 rlineto closepath } def
229 /key { setrgbcolor 2 copy box gsave fill grestore 0 0 0 setrgbcolor strokepath f ill moveto 2.4 0.25 rmoveto show } def
230
231 /Helvetica-Oblique findfont
232 1 scalefont setfont
233 0.1 setlinewidth
234
235 (static functions) 1 5 0.5 1 0.5 key % Light green.
236 (indirectly called functions) 1 7 0 0.7 0 key % green
237 (exported functions) 1 9 1 0 0 key % red
238 (other functions) 1 11 0 0 1 key % blue
239
240 (Low Coverage) 1 15 Lo_Color key % blue
241 (Medium Coverage) 1 17 Med_Color key % blue
242 (Hi Coverage) 1 19 Hi_Color key % blue
243 (No Coverage) 1 21 None_Color key % blue
244 1 3.25 moveto
245 0.8 0.4 0.4 setrgbcolor
246 /Helvetica findfont
247 1 scalefont setfont
248 (xxx) show
249 1 3 moveto
250 2.4 0.25 rmoveto
251 0 0 0 setrgbcolor
252 /Helvetica-Oblique findfont
253 1 scalefont setfont
254 (function name) show
255
256 1 1.25 moveto
257 0.8 0.4 0.4 setrgbcolor
258 /Helvetica-Bold findfont
259 1 scalefont setfont
260 (xxx) show
261 1 1 moveto
262 2.4 0.25 rmoveto
263 0 0 0 setrgbcolor
264 /Helvetica-Oblique findfont
265 1 scalefont setfont
266 (source filename) show
267
268 6 24 moveto
269 /Helvetica-Bold findfont
270 2 scalefont setfont
271 (Key) show
272
273 % Box around it
274 newpath
275 0.2 0.2 moveto
276 0.2 27 lineto
277 17 27 lineto
278 17 0.2 lineto
279 closepath
280 strokepath fill
281
282
283 1 15 div 1 15 div scale
284
285 % find and move to center
286 END_OF_USAGE
287
288 # Find the bounds for the image
289
290 $Bounds = `tail -1 $Image`;
291 ($Junk, $Junk, $minX, $minY, $maxX, $maxY) = split / /, $Bounds;
292
293 my $xRange = $maxX - $minX;
294 my $yRange = $maxY - $minY;
295
296 if ($xRange < $yRange){
297 $Range = $xRange;
298 } else {
299 $Range = $yRange;
300 }
301 print POSTER " 0 usableY usableX sub 2 div translate\n";
302 print POSTER "usableX $Range div usableX $Range div scale\n";
303 print POSTER "$Range 2 div $Range 2 div translate\n";
304 print POSTER "gsave\n";
305 # Paste in actual image.
306 print POSTER `cat /home/lgp/image.ps`;
307 print POSTER "%%Trailer\n";
308 print POSTER "grestore\n";
309 print POSTER "showpage\n";
310 print POSTER "PRorig_showpage_x178313\n";
311 print POSTER "/showpage /PRorig_showpage_x178313 load def\n";
312
OLDNEW
« no previous file with comments | « third_party/lcov-1.9/contrib/galaxy/genflat.pl ('k') | third_party/lcov-1.9/descriptions.tests » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698