41std::string
get_next_param(
const std::string &cmd,
size_t &
pos,
char separate =
' ');
75 const char *
const key;
80 Param(
const char *ky,
void *pD,
Type tp,
bool ignore =
true,
const char *error =
nullptr) :
98 m_param.emplace_back(
Param{key, pD, tp, ignore_case, err});
101 virtual int parser(
char *p =
nullptr);
136 int parser(
char *p =
nullptr)
override;
147 int parser(
char *p =
nullptr)
override;
159 int parser(
char *p =
nullptr)
override;
173 int parser(
char *p =
nullptr)
override;
188 int parser(
char *p =
nullptr)
override;
195class CmdList :
public std::vector<std::shared_ptr<CmdBase>>
201class CmdMap :
public std::map<std::string, std::shared_ptr<CmdList>>
204 int run_all(
const std::string &protocol,
CmdCtx *p,
bool dry_run =
false);
212 int parser(
char * )
override {
return 0; }
int run(CmdCtx *p) override
Definition config.cpp:124
int parser(char *) override
Definition cmd.h:212
CfgCmd(char *cmd)
Definition cmd.h:210
bool m_bCheckTotalParam
Definition cmd.h:105
std::vector< Param > m_param
Definition cmd.h:112
bool m_NoKeyParam
Definition cmd.h:108
virtual int parser(char *p=nullptr)
Definition cmd.cpp:99
int m_timeout
Definition cmd.h:109
virtual ~CmdBase()
Definition cmd.cpp:95
bool m_lastcmd
Definition cmd.h:107
const std::string & get_cmd() const noexcept
Definition cmd.h:94
virtual int run(CmdCtx *p)=0
CmdBase(char *p)
Definition cmd.h:90
std::string m_cmd
Definition cmd.h:106
virtual int parser_protocol(char *p, size_t &pos)
Definition cmd.cpp:205
virtual int dump()
Definition cmd.cpp:240
void insert_param_info(const char *key, void *pD, Param::Type tp, bool ignore_case=true, const char *err=nullptr)
Definition cmd.h:96
bool get_lastcmd() const noexcept
Definition cmd.h:95
virtual ~CmdCtx()
Definition cmd.cpp:91
void * m_dev
Definition cmd.h:52
CmdCtx(const CmdCtx &)=delete
ConfigItem * m_config_item
Definition cmd.h:51
CmdCtx & operator=(const CmdCtx &)=delete
short m_current_bcd
Definition cmd.h:53
int m_ms
Definition cmd.h:140
CmdDelay(char *p)
Definition cmd.h:134
int parser(char *p=nullptr) override
Definition cmd.cpp:608
int run(CmdCtx *p) override
Definition cmd.cpp:629
CmdDone(char *p)
Definition cmd.h:126
int run(CmdCtx *p) override
Definition cmd.cpp:600
std::string m_unfold_cmd
Definition cmd.h:192
int parser(char *p=nullptr) override
Definition cmd.cpp:743
int run(CmdCtx *p) override
Definition cmd.cpp:915
int parser(char *p=nullptr) override
Definition cmd.cpp:635
std::string m_error
Definition cmd.h:151
CmdError(char *p)
Definition cmd.h:146
int run(CmdCtx *p) override
Definition cmd.cpp:653
void build_map(CmdCtx *p)
Definition cmd.cpp:850
std::string m_condition
Definition cmd.h:177
CmdIf(char *p)
Definition cmd.h:171
std::string m_protocol
Definition cmd.h:178
int parser(char *p=nullptr) override
Definition cmd.cpp:809
std::string m_true_cmd
Definition cmd.h:179
int run(CmdCtx *p) override
Definition cmd.cpp:867
int run_all(CmdCtx *p, bool dry_run=false)
Definition cmd.cpp:253
int run_all(const std::string &protocol, CmdCtx *p, bool dry_run=false)
Definition cmd.cpp:294
CmdObjCreateMap()
Definition cmd.cpp:420
std::string m_protocol
Definition cmd.h:164
bool m_dyn
Definition cmd.h:163
int run(CmdCtx *p) override
Definition cmd.cpp:682
CmdShell(char *p)
Definition cmd.h:157
std::string m_shellcmd
Definition cmd.h:165
int parser(char *p=nullptr) override
Definition cmd.cpp:659
~CmdUsbCtx() override
Definition usbhotplug.cpp:510
int look_for_match_device(const char *protocol)
Definition usbhotplug.cpp:519
int run_cmds(const char *protocol, CmdCtx *p)
Definition cmd.cpp:920
int clear_env()
Definition cmd.cpp:70
int insert_env_variable(std::string key, std::string value)
Definition cmd.cpp:59
bool is_evn_exist(std::string key)
std::shared_ptr< CmdBase >(*)(char *) CreateCmdObj
Definition cmd.h:115
std::string get_env_variable(std::string key)
Definition cmd.cpp:65
std::string get_next_param(const std::string &cmd, size_t &pos, char separate=' ')
Definition cmd.cpp:308
int run_cmd(CmdCtx *pCtx, const char *cmd, int dry)
Definition cmd.cpp:538
void * pData
Definition cmd.h:77
Param(const char *ky, void *pD, Type tp, bool ignore=true, const char *error=nullptr)
Definition cmd.h:80
const char *const key
Definition cmd.h:75
const Type type
Definition cmd.h:78
const char *const Error
Definition cmd.h:76
@ e_string_filename
Definition cmd.h:72
@ e_uint32
Definition cmd.h:67
@ e_null
Definition cmd.h:71
@ e_string
Definition cmd.h:70
@ e_bool
Definition cmd.h:69
@ e_uint64
Definition cmd.h:68
const bool ignore_case
Definition cmd.h:79
auto pos
Definition usbhotplug.cpp:159