source: toilet/trunk/src/toilet.h @ 1367

Last change on this file since 1367 was 1243, checked in by Sam Hocevar, 17 years ago
  • Make filters line-feed aware.
  • Property svn:keywords set to Id
File size: 1.3 KB
Line 
1/*
2 *  TOIlet        The Other Implementation’s letters
3 *  Copyright (c) 2006 Sam Hocevar <sam@zoy.org>
4 *                All Rights Reserved
5 *
6 *  $Id: toilet.h 1243 2006-10-26 13:30:14Z sam $
7 *
8 *  This program is free software; you can redistribute it and/or
9 *  modify it under the terms of the Do What The Fuck You Want To
10 *  Public License, Version 2, as published by Sam Hocevar. See
11 *  http://sam.zoy.org/wtfpl/COPYING for more details.
12 */
13
14/*
15 * This header defines global variables.
16 */
17
18struct toilet_context
19{
20    char const *export;
21    char const *font;
22    char const *dir;
23
24    unsigned int term_width;
25
26    cucul_canvas_t *cv;
27    cucul_canvas_t *torender;
28    unsigned int w, h, ew, eh, x, y, lines;
29
30    /* Render methods */
31    int (*feed)(struct toilet_context *, uint32_t);
32    int (*flush)(struct toilet_context *);
33    int (*end)(struct toilet_context *);
34
35    /* Used by the big driver */
36    cucul_font_t *f;
37    cucul_canvas_t *onechar;
38    unsigned char *buf;
39
40    /* Used by the FIGlet driver */
41    unsigned long int hardblank;
42    unsigned int height, baseline, max_length;
43    int old_layout;
44    unsigned int print_direction, full_layout, codetag_count;
45    unsigned int glyphs;
46    cucul_canvas_t *image;
47    unsigned int *lookup;
48
49    /* Render filters */
50    void (**filters)(struct toilet_context *);
51    unsigned int nfilters;
52};
53
54typedef struct toilet_context context_t;
55
Note: See TracBrowser for help on using the repository browser.