00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined(CMD_H)
00024
00025 #define CMD_H
00026
00027 #define CMDDOUBLETYPE 1
00028 #define CMDENUMTYPE 2
00029 #define CMDINTTYPE 3
00030 #define CMDSTRINGTYPE 4
00031 #define CMDSUBRANGETYPE 5
00032 #define CMDGTETYPE 6
00033 #define CMDLTETYPE 7
00034 #define CMDSTRARRAYTYPE 8
00035 #define CMDBOOLTYPE 9
00036 #define CMDFLAGTYPE 10
00037 #define CMDINTARRAYTYPE 11
00038 #define CMDDBLARRAYTYPE 12
00039 #define CMDFLOATTYPE 13
00040
00041 #define CMDMSG (1<<31)
00042
00043 #include <stdio.h>
00044
00045 #ifdef __cplusplus
00046 extern "C" {
00047 #endif
00048
00049 typedef struct {
00050 char *Name;
00051 int Idx;
00052 } Enum_T;
00053
00054 typedef struct {
00055 int Type;
00056 int Flag;
00057 char *Name,
00058 *ArgStr;
00059 char *Msg;
00060 void *Val,
00061 *p;
00062 } Cmd_T;
00063
00064 int
00065 DeclareParams(char *,
00066 ...),
00067 GetParams(int *n,
00068 char ***a,
00069 char *CmdFileName),
00070 GetDotParams(char *,
00071 ...),
00072 SPrintParams(char ***a,
00073 char *pfx),
00074 PrintParams(int ValFlag,
00075 FILE *fp),
00076 FullPrintParams(int TypeFlag,
00077 int ValFlag,
00078 int MsgFlag,
00079 FILE *fp),
00080 EnumIdx(Enum_T *en,
00081 char *s);
00082 char
00083 *EnumStr(Enum_T *en,
00084 int i);
00085
00086 #ifdef __cplusplus
00087 }
00088 #endif
00089
00090 #endif
00091