1 #ifndef DL_DVI_STACK_HH
2 #define DL_DVI_STACK_HH
4 #include "dl-refcounted.hh"
5 #include "dl-dvi-fontdefinition.hh"
10 class DviRuntime : public RefCounted
13 virtual void set_char (int ch) = 0; // typeset ch, move w
14 virtual void put_char (int ch) = 0; // typeset ch, don't move
15 virtual void set_rule (int height,
16 int width) = 0; // rule, move (height, width)
17 virtual void put_rule (int height,
18 int width) = 0; // rule, don't move
19 virtual void push (void) = 0; // push current context
20 virtual void pop (void) = 0; // pop ccontext
21 virtual void right (int len) = 0; // move right len
22 virtual void w (int len) = 0; // move right len, set w = len
23 virtual void w_rep () = 0; // move right w
24 virtual void x (int len) = 0; // move right len, set x = len
25 virtual void x_rep () = 0; // move right x
26 virtual void down (int len) = 0; // move down len
27 virtual void y (int len) = 0; // move down len, set y = len
28 virtual void y_rep () = 0; // move down y
29 virtual void z (int len) = 0; // move down len, set z = len
30 virtual void z_rep () = 0; // move down z
31 virtual void push_fontmap (std::map<int, DviFontdefinition *> fontmap) = 0;
32 virtual void font_num (int num) = 0; // f = num
33 virtual void special (std::string spc) = 0; // do something special
35 virtual void paint_bitmap (const unsigned char *data,
41 virtual ~DviRuntime () {};