home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / docs / apps / tex / lametex_.z / lametex_ / lametex / src / Stack.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-09-02  |  848 b   |  31 lines

  1. /* Stack.h
  2.  *
  3.  * Adjusting the look and feel of the document in a recursive way is done
  4.  * with a stack of Environments, where each environment holds variables such
  5.  * as the current font and margin sizes. This describes the stack.
  6.  *
  7.  * Copyright 1992 Jonathan Monsarrat. Permission given to freely distribute,
  8.  * edit and use as long as this copyright statement remains intact.
  9.  *
  10.  */
  11.  
  12. #include "Environment.h"
  13. #include "Length.h"
  14.  
  15. const MAXNESTING = 100;
  16. class Stack {
  17.    static int level;
  18.    static Environment *environments[MAXNESTING];
  19.  
  20.  public:
  21.    Stack();
  22.    static void push(int, int, float, char *);
  23.    static void pop(int, int, float, char *);
  24.    static void set(int, int, float, char *);
  25.    static void relative_set(int, int, float, char *);
  26.  
  27.    static float get(int, int, char*);
  28.    static void shutdown();
  29.    Length *get_length();
  30. };
  31.