add code to keep log of user input
[capablanca.git] / lasker-2.2.3 / bots / mamer / Command.hh
1 //--------------------------------------------------------------------------
2 // Command.hh - Class header for the Command class
3 //
4 // Matthew E. Moses
5 //
6 // $Revision: 1.5 $
7 // $Date: 1998/09/10 19:58:31 $
8 //
9 // $Author: mlong $
10 // $Locker:  $
11 //
12 // $Log: Command.hh,v $
13 // Revision 1.5  1998/09/10 19:58:31  mlong
14 // *** empty log message ***
15 //
16 // Revision 1.4  1997/05/15 18:29:12  chess
17 //  added pending and TourneyPlayers support
18 // added HandleGetPlayerInfo & HandleGetGameInfo
19 //
20 // Revision 1.3  1997/04/13 03:21:32  chess
21 // constructor changed to accomodate the params list
22 //
23 // Revision 1.2  1997/04/07 22:21:43  chess
24 // *** empty log message ***
25 //
26 // Revision 1.1  1996/10/01 20:14:43  moses
27 // Initial revision
28 //
29 //
30 //--------------------------------------------------------------------------
31
32 #ifndef _COMMAND_
33 #define _COMMAND_
34
35 extern "C" {
36     #include <stdlib.h>
37     #include <string.h>
38 }
39
40 #include "link.hh"
41 #include "types.h"
42 #include "User.hh"
43
44 class Command : public Link {
45 public:
46   Command();
47   Command(char *, char *, ranks, char *, char *, USERFP);
48   Command(char *, char *, ranks, char *, char *, TOURNFP);
49   ~Command();
50   
51   int IsCommand(char *);
52   ranks GetManagerLevel();
53   void SetManagerLevel(ranks);
54   char *GetCommandName();
55   char *GetCommandAlias();
56   char *GetCommandDescription();
57
58  private:
59     
60  public:
61     USERFP  userFunction;
62     TOURNFP tournFunction;
63
64   char parameterList[MAXNUMPARAMS];
65   param_list params;
66   reasons badUsage;
67
68  private:
69     char *name;
70     char *alias;
71  
72     ranks managerLevel;
73     char *description;
74
75 };
76
77 #endif