// // Class processing user input // #include "User.h" #include using namespace std; // Branch table for command evaluation static const struct CL_Struct { const char *Name; void (User::*CommandPointer)(); unsigned int MinNumParameter; bool NeedCrate; const char *Parameters; const char *Help; } CommandList[] = {{"pixel", &User::cmd_hv, 2, true, " ", "Change bias of pixels (to default)"}, {"channel", &User::cmd_hv, 2, true, " ", "Change bias of channels of active crate (to default)"}, {"gs", &User::cmd_gs, 1, true, "[crate] ", "Global voltage set active crate"}, {"reset", &User::cmd_reset, 0, true, "", "Reset active crate"}, {"synch", &User::cmd_synch, 0, true, "", "Synchronize active crate"}, {"crate", &User::cmd_crate, 1, true, "", "Select active crate"}, {"status", &User::cmd_status, 0, false, "[dac|current]", "Show status information (DAC values if requested)"}, {"mode", &User::cmd_mode, 1, false, "", "Set voltage stabilization mode (experimental)"}, {"load", &User::cmd_load, 1, true, "", "Load and set bias settings from file"}, {"save", &User::cmd_save, 1, true, "", "Save current bias settings to file"}, {"rate", &User::cmd_rate, 1, false, "", "Set refresh rate in Hz"}, {"timeout", &User::cmd_timeout, 1, false, "