1 76193d7c 2003-09-30 devnull #include <u.h>
2 76193d7c 2003-09-30 devnull #include <libc.h>
3 76193d7c 2003-09-30 devnull #include <draw.h>
7 76193d7c 2003-09-30 devnull unitsperline(Rectangle r, int d, int bitsperunit)
9 76193d7c 2003-09-30 devnull ulong l, t;
11 76193d7c 2003-09-30 devnull if(d <= 0 || d > 32) /* being called wrong. d is image depth. */
14 76193d7c 2003-09-30 devnull if(r.min.x >= 0){
15 76193d7c 2003-09-30 devnull l = (r.max.x*d+bitsperunit-1)/bitsperunit;
16 76193d7c 2003-09-30 devnull l -= (r.min.x*d)/bitsperunit;
17 76193d7c 2003-09-30 devnull }else{ /* make positive before divide */
18 76193d7c 2003-09-30 devnull t = (-r.min.x*d+bitsperunit-1)/bitsperunit;
19 76193d7c 2003-09-30 devnull l = t+(r.max.x*d+bitsperunit-1)/bitsperunit;
21 76193d7c 2003-09-30 devnull return l;
25 76193d7c 2003-09-30 devnull wordsperline(Rectangle r, int d)
27 76193d7c 2003-09-30 devnull return unitsperline(r, d, 8*sizeof(ulong));
31 76193d7c 2003-09-30 devnull bytesperline(Rectangle r, int d)
33 76193d7c 2003-09-30 devnull return unitsperline(r, d, 8);