Annotation of researchv10no/cmd/vsw/switch.h, revision 1.1.1.1

1.1       root        1: #define                MAXLABEL        36
                      2: 
                      3: class Line
                      4: {
                      5:        char *name[2];          /* short/verbose */
                      6:        Crossbar *c;
                      7:        int line;
                      8:        char label;
                      9:        friend class Switch;
                     10:        friend class Rgb;
                     11: public:
                     12:        Line(char, char *, char *, Crossbar *, int);
                     13:        int pr(int n, char *buf, int len);
                     14: };
                     15: 
                     16: class Switch
                     17: {
                     18:        char *name;
                     19:        int nwires;             /* number of wires per input/output */
                     20:        int maxlines;           /* high water mark */
                     21:        Line *lines[MAXLABEL][2];
                     22:        void add(int inout, char label, char *n1, char *n2, Crossbar *c, int l);
                     23:        void addl(int inout, char *n1, char *n2, Crossbar *c, int l);
                     24:        int lineofcl(int output, Crossbar *, int);
                     25: public:
                     26:        Switch(char *nam, int n);
                     27:        void addi(char label, char *n1, char *n2, Crossbar *c, int l) { add(0, label, n1, n2, c, l); }
                     28:        void addo(char label, char *n1, char *n2, Crossbar *c, int l) { add(1, label, n1, n2, c, l); }
                     29:        void reinit();
                     30:        void describe();
                     31:        void connect(char input, char output);
                     32:        void pr(char);
                     33: };
                     34: extern int labeltoint(char);
                     35: extern char inttolabel(int);
                     36: extern void blank(int fd, int n);

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.