#include "commnd.h"
#include "aimhelp.h"

typedef int (FNC)(char *s);

typedef struct {
        FNC    *Estruct;        /* function to be executed        */
        char   *Ename;          /* command name                   */
        int    Help;            /* index in help table            */
} CIENTRY;


CIENTRY Mainlist[] = {
        {QuitCi,           "exit",             HELP_HELP},
        {QuitCi,           "quit",             HELP_HELP},
        {HistCi,           "hist",             HELP_HELP},
        {FnoiseCi,         "fnoise",           HELP_HELP},
        {RealCi,           "real",             HELP_HELP},
        {ImagCi,           "imaginary",        HELP_HELP},
        {FsineCi,          "fsine",            HELP_HELP},
        {WriteCi,          "writf",            HELP_HELP},
        {ReadCi,           "readf",            HELP_HELP},
        {CopyCi,           "copy",             HELP_HELP},
        {XscaleCi,         "xscale",           HELP_HELP},
        {FsquarewaveCi,    "fsquarewave",      HELP_HELP},
        {FtriangleCi,      "ftriangle",        HELP_HELP},
        {FconstCi,         "fconst",           HELP_HELP},
        {FstepCi,          "fstep",            HELP_HELP},
        {FdeltaCi,         "fdelta",           HELP_HELP},
        {FrampCi,          "framp",            HELP_HELP},
        {FexpCi,           "fexp",             HELP_HELP},
        {FFTCi,            "fft",              HELP_HELP},
        {IFFTCi,           "ifft",             HELP_HELP},
        {CorrelationCi,    "correlation",      HELP_HELP},
        {ConvolutionCi,    "convolution",      HELP_HELP},
        {WhanningCi,       "whanning",         HELP_HELP},
        {WhammingCi,       "whamming",         HELP_HELP},
        {WgaussCi,         "wgauss",           HELP_HELP},
        {WblackmanCi,      "wblackman",        HELP_HELP},
        {WkaiserCi,        "wkaiser",          HELP_HELP},
        {WtriangleCi,      "wtriangle",        HELP_HELP},
        {CmultiplyCi,      "cmultiply",        HELP_HELP},
        {CdivideCi,        "cdivide",          HELP_HELP},
        {CabsCi,           "cabs",             HELP_HELP},
        {CaddCi,           "cadd",             HELP_HELP},
        {InvCi,            "inv",              HELP_HELP},
        {ConjugateCi,      "conjugate",        HELP_HELP},
        {ClearCi,          "clear",            HELP_HELP},
        {AssignCi,         "assign",           HELP_HELP},
        {AddCi,            "add",              HELP_HELP},
        {SubCi,            "substract",        HELP_HELP},
        {AbsoluteCi,       "absolute",         HELP_HELP},
        {MultiplyCi,       "multiply",         HELP_HELP},
        {LnCi,             "ln",               HELP_HELP},
        {LogCi,            "log",              HELP_HELP},
        {EpowCi,           "epow",             HELP_HELP},
        {TenpowCi,         "tenpow",           HELP_HELP},
        {MaximumCi,        "maximum",          HELP_HELP},
        {MinimumCi,        "minimum",          HELP_HELP},
        {FcosineCi,        "fcosine",          HELP_HELP},
        {FsinecCi,         "fsinc",            HELP_HELP},
        {MagnitudeCi,      "magnitude",        HELP_HELP},
        {PhaseCi,          "phase",            HELP_HELP},
        {BodeCi,           "bode",             HELP_HELP},
        {ZeropadCi,        "zeropad",          HELP_HELP},
        {RenameCi,         "rename",           HELP_HELP},
        {DonCi,            "don",              HELP_HELP},
        {DoffCi,           "doff",             HELP_HELP},
        {BonCi,            "bon",              HELP_HELP},
        {BoffCi,           "boff",             HELP_HELP},
        {SineCi,           "sine",             HELP_HELP},
        {CosineCi,         "cosine",           HELP_HELP},
        {InfoCi,           "info",             HELP_HELP},
        {PrintCi,          "print",            HELP_HELP},
        {DisplayCi,        "display",          HELP_HELP},
        {DivideCi,         "divide",           HELP_HELP},
        {ListCi,           "list",             HELP_HELP},
        {ShiftCi,          "shift",            HELP_HELP},
        {RotateCi,         "rotate",           HELP_HELP},
        {ClipCi,           "clip",             HELP_HELP}
        };

#define N_CMDS (sizeof(Mainlist) / sizeof(CIENTRY))


