1 //--------------------------------------------------------------------------
2 // Command.cc - Source file for the Command class
7 // $Date: 2002/07/02 00:05:19 $
12 // $Log: Command.cc,v $
13 // Revision 1.9 2002/07/02 00:05:19 tridge
14 // got rid of a bunch of RCS tags now that its in CVS
16 // Revision 1.8 1998/09/10 19:57:17 mlong
17 // lots of little bug fixes and a few new features
19 // Revision 1.7 1998/04/15 16:56:17 mlong
20 // *** empty log message ***
22 // Revision 1.6 1998/02/12 18:43:26 mlong
23 // *** empty log message ***
25 // Revision 1.5 1997/05/15 18:27:53 chess
26 // added pending and TourneyPlayers support
27 // added HandleGetPlayerInfo & HandleGetGameInfo
29 // Revision 1.4 1997/04/13 03:14:35 chess
30 // command class changed to have a parameter list.
32 // Revision 1.3 1997/04/07 22:21:49 chess
33 // *** empty log message ***
35 // Revision 1.2 1996/10/03 18:11:10 moses
36 // made sure string are null termindated
38 // Revision 1.1 1996/10/01 20:14:43 moses
42 //--------------------------------------------------------------------------
46 //- constructor -----------------------------------------------------------
48 name = alias = description = NULL;
52 } //- End of constructor
54 Command::Command(char *n, char *a, ranks m, char *d, char *paramTypeList, USERFP u) {
55 name = new char[strlen(n)+1];
57 if(NULL == name) return;
58 memset(name, '\0', strlen(n));
59 strncpy(name, n, strlen(n));
60 name[strlen(n)] = '\0';
62 memset(parameterList, '\0', MAXNUMPARAMS);
63 strncpy(parameterList, paramTypeList, strlen(paramTypeList));
64 parameterList[strlen(paramTypeList)] = '\0';
66 alias = new char[strlen(a)+1];
67 if(NULL == alias) return;
68 memset(alias, '\0', strlen(a));
69 strncpy(alias, a, strlen(a));
70 alias[strlen(a)] = '\0';
74 description = new char[strlen(d)+1];
75 if(NULL == description) return;
76 memset(description, '\0', strlen(d));
77 strncpy(description, d, strlen(d));
78 description[strlen(d)] = '\0';
81 } //- End of constructor
83 Command::Command(char *n, char *a, ranks m, char *d, char *paramTypeList, TOURNFP t) {
84 name = new char[strlen(n)+1];
85 if(NULL == name) return;
86 memset(name, '\0', strlen(n));
87 strncpy(name, n, strlen(n));
88 name[strlen(n)] = '\0';
90 memset(parameterList, '\0', MAXNUMPARAMS);
91 strncpy(parameterList, paramTypeList, strlen(paramTypeList));
92 parameterList[strlen(paramTypeList)] = '\0';
94 alias = new char[strlen(a)+1];
95 if(NULL == alias) return;
96 memset(alias, '\0', strlen(a));
97 strncpy(alias, a, strlen(a));
98 alias[strlen(a)] = '\0';
102 description = new char[strlen(d)+1];
103 if(NULL == description) return;
104 memset(description, '\0', strlen(d));
105 strncpy(description, d, strlen(d));
106 description[strlen(d)] = '\0';
109 } //- End of constructor
111 //- deconstructor ---------------------------------------------------------
112 Command::~Command() {
119 if(NULL != description)
120 delete [] description;
121 } //- End of deconstructor
123 //- IsCommand ------------------------------------------------------
124 int Command::IsCommand(char *comm) {
125 int length = strlen(comm);
126 if((0 == strncasecmp(comm, name, MIN(length, (int)strlen(name)))) ||
127 (0 == strncasecmp(comm, alias, MIN(length, (int)strlen(alias)))))
131 } //- End of IsCommand
133 //- GetCommandName ------------------------------------------------
134 char *Command::GetCommandName() {
136 } //- End of GetCommandName
138 //- GetCommandDescription ------------------------------------------------
139 char *Command::GetCommandDescription() {
141 } //- End of GetCommandDescription
143 //- GetCommandAlias ------------------------------------------------
144 char *Command::GetCommandAlias() {
146 } //- End of GetCommandAlias
148 //- GetManagerLevel -----------------------------------------------
149 ranks Command::GetManagerLevel() {
151 } //- End of GetManagerLevel
153 //- SetManagerLevel -----------------------------------------------
154 void Command::SetManagerLevel(ranks newvalue) {
155 managerLevel = newvalue;
156 } //- end of SetManagerLevel