summaryrefslogtreecommitdiff
path: root/sys/src/cmd/unix/drawterm/include/memdraw.h
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2013-11-23 01:05:33 +0100
committercinap_lenrek <cinap_lenrek@felloff.net>2013-11-23 01:05:33 +0100
commit2f9ae0f8ac8610e13ced184847b57b87fe5db580 (patch)
treef9ad2223d518585a2cfe9ea1c73e1e37d07bf637 /sys/src/cmd/unix/drawterm/include/memdraw.h
parentea5797c0731203c09ec5fb7172e77eab2750f1a9 (diff)
removing (outdated) drawterm
drawterm is much better maintained by russ cox, so removing this outdated copy. for a more recent version, go to: http://swtch.com/drawterm/
Diffstat (limited to 'sys/src/cmd/unix/drawterm/include/memdraw.h')
-rw-r--r--sys/src/cmd/unix/drawterm/include/memdraw.h210
1 files changed, 0 insertions, 210 deletions
diff --git a/sys/src/cmd/unix/drawterm/include/memdraw.h b/sys/src/cmd/unix/drawterm/include/memdraw.h
deleted file mode 100644
index ba0c2dad2..000000000
--- a/sys/src/cmd/unix/drawterm/include/memdraw.h
+++ /dev/null
@@ -1,210 +0,0 @@
-#ifdef PLAN9
-#pragma src "/sys/src/libmemdraw"
-#pragma lib "libmemdraw.a"
-#endif
-
-typedef struct Memimage Memimage;
-typedef struct Memdata Memdata;
-typedef struct Memsubfont Memsubfont;
-typedef struct Memlayer Memlayer;
-typedef struct Memcmap Memcmap;
-typedef struct Memdrawparam Memdrawparam;
-
-/*
- * Memdata is allocated from main pool, but .data from the image pool.
- * Memdata is allocated separately to permit patching its pointer after
- * compaction when windows share the image data.
- * The first word of data is a back pointer to the Memdata, to find
- * The word to patch.
- */
-
-struct Memdata
-{
- ulong *base; /* allocated data pointer */
- uchar *bdata; /* pointer to first byte of actual data; word-aligned */
- int ref; /* number of Memimages using this data */
- void* imref;
- int allocd; /* is this malloc'd? */
-};
-
-enum {
- Frepl = 1<<0, /* is replicated */
- Fsimple = 1<<1, /* is 1x1 */
- Fgrey = 1<<2, /* is grey */
- Falpha = 1<<3, /* has explicit alpha */
- Fcmap = 1<<4, /* has cmap channel */
- Fbytes = 1<<5, /* has only 8-bit channels */
-};
-
-struct Memimage
-{
- Rectangle r; /* rectangle in data area, local coords */
- Rectangle clipr; /* clipping region */
- int depth; /* number of bits of storage per pixel */
- int nchan; /* number of channels */
- ulong chan; /* channel descriptions */
- Memcmap *cmap;
-
- Memdata *data; /* pointer to data; shared by windows in this image */
- int zero; /* data->bdata+zero==&byte containing (0,0) */
- ulong width; /* width in words of a single scan line */
- Memlayer *layer; /* nil if not a layer*/
- ulong flags;
-
- int shift[NChan];
- int mask[NChan];
- int nbits[NChan];
-
- void *X;
-};
-
-struct Memcmap
-{
- uchar cmap2rgb[3*256];
- uchar rgb2cmap[16*16*16];
-};
-
-/*
- * Subfonts
- *
- * given char c, Subfont *f, Fontchar *i, and Point p, one says
- * i = f->info+c;
- * draw(b, Rect(p.x+i->left, p.y+i->top,
- * p.x+i->left+((i+1)->x-i->x), p.y+i->bottom),
- * color, f->bits, Pt(i->x, i->top));
- * p.x += i->width;
- * to draw characters in the specified color (itself a Memimage) in Memimage b.
- */
-
-struct Memsubfont
-{
- char *name;
- short n; /* number of chars in font */
- uchar height; /* height of bitmap */
- char ascent; /* top of bitmap to baseline */
- Fontchar *info; /* n+1 character descriptors */
- Memimage *bits; /* of font */
-};
-
-/*
- * Encapsulated parameters and information for sub-draw routines.
- */
-enum {
- Simplesrc=1<<0,
- Simplemask=1<<1,
- Replsrc=1<<2,
- Replmask=1<<3,
- Fullmask=1<<4,
-};
-struct Memdrawparam
-{
- Memimage *dst;
- Rectangle r;
- Memimage *src;
- Rectangle sr;
- Memimage *mask;
- Rectangle mr;
- int op;
-
- ulong state;
- ulong mval; /* if Simplemask, the mask pixel in mask format */
- ulong mrgba; /* mval in rgba */
- ulong sval; /* if Simplesrc, the source pixel in src format */
- ulong srgba; /* sval in rgba */
- ulong sdval; /* sval in dst format */
-};
-
-/*
- * Memimage management
- */
-
-extern Memimage* allocmemimage(Rectangle, ulong);
-extern Memimage* _allocmemimage(Rectangle, ulong);
-extern Memimage* allocmemimaged(Rectangle, ulong, Memdata*, void*);
-extern Memimage* readmemimage(int);
-extern Memimage* creadmemimage(int);
-extern int writememimage(int, Memimage*);
-extern void freememimage(Memimage*);
-extern void _freememimage(Memimage*);
-extern int _loadmemimage(Memimage*, Rectangle, uchar*, int);
-extern int _cloadmemimage(Memimage*, Rectangle, uchar*, int);
-extern int _unloadmemimage(Memimage*, Rectangle, uchar*, int);
-extern int loadmemimage(Memimage*, Rectangle, uchar*, int);
-extern int cloadmemimage(Memimage*, Rectangle, uchar*, int);
-extern int unloadmemimage(Memimage*, Rectangle, uchar*, int);
-extern ulong* wordaddr(Memimage*, Point);
-extern uchar* byteaddr(Memimage*, Point);
-extern int drawclip(Memimage*, Rectangle*, Memimage*, Point*, Memimage*, Point*, Rectangle*, Rectangle*);
-extern void memfillcolor(Memimage*, ulong);
-extern void _memfillcolor(Memimage*, ulong);
-extern int memsetchan(Memimage*, ulong);
-extern ulong _rgbatoimg(Memimage*, ulong);
-
-/*
- * Graphics
- */
-extern void memdraw(Memimage*, Rectangle, Memimage*, Point, Memimage*, Point, int);
-extern void memline(Memimage*, Point, Point, int, int, int, Memimage*, Point, int);
-extern void mempoly(Memimage*, Point*, int, int, int, int, Memimage*, Point, int);
-extern void memfillpoly(Memimage*, Point*, int, int, Memimage*, Point, int);
-extern void _memfillpolysc(Memimage*, Point*, int, int, Memimage*, Point, int, int, int, int);
-extern Memdrawparam* _memimagedrawsetup(Memimage*, Rectangle, Memimage*, Point, Memimage*, Point, int);
-extern void _memimagedraw(Memdrawparam*);
-extern void memimagedraw(Memimage*, Rectangle, Memimage*, Point, Memimage*, Point, int);
-extern int hwdraw(Memdrawparam*);
-extern void memimageline(Memimage*, Point, Point, int, int, int, Memimage*, Point, int);
-extern void _memimageline(Memimage*, Point, Point, int, int, int, Memimage*, Point, Rectangle, int);
-extern Point memimagestring(Memimage*, Point, Memimage*, Point, Memsubfont*, char*);
-extern void memellipse(Memimage*, Point, int, int, int, Memimage*, Point, int);
-extern void memarc(Memimage*, Point, int, int, int, Memimage*, Point, int, int, int);
-extern Rectangle memlinebbox(Point, Point, int, int, int);
-extern int memlineendsize(int);
-extern void _memmkcmap(void);
-extern void _memimageinit(void);
-extern void memimageinit(void);
-
-/*
- * Subfont management
- */
-extern Memsubfont* allocmemsubfont(char*, int, int, int, Fontchar*, Memimage*);
-extern Memsubfont* openmemsubfont(char*);
-extern void freememsubfont(Memsubfont*);
-extern Point memsubfontwidth(Memsubfont*, char*);
-extern Memsubfont* getmemdefont(void);
-
-/*
- * Predefined
- */
-extern Memimage* memwhite;
-extern Memimage* memblack;
-extern Memimage* memopaque;
-extern Memimage* memtransparent;
-extern Memcmap *memdefcmap;
-
-/*
- * Kernel interface
- */
-void memimagemove(void*, void*);
-
-/*
- * Kernel cruft
- */
-extern void rdb(void);
-extern int iprint(char*, ...);
-extern int drawdebug;
-
-/*
- * doprint interface: numbconv bit strings
- */
-#ifdef VARARGCK
-#pragma varargck argpos iprint 1
-#pragma varargck type "llb" vlong
-#pragma varargck type "llb" uvlong
-#pragma varargck type "lb" long
-#pragma varargck type "lb" ulong
-#pragma varargck type "b" int
-#pragma varargck type "b" uint
-#endif
-
-extern ulong _pixelbits(Memimage*,Point);
-extern ulong pixelbits(Memimage*, Point);