diff options
Diffstat (limited to 'src/d_bus_commands.c')
-rw-r--r-- | src/d_bus_commands.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/d_bus_commands.c b/src/d_bus_commands.c index 6c96085..c7878a6 100644 --- a/src/d_bus_commands.c +++ b/src/d_bus_commands.c @@ -24,6 +24,16 @@ int parse_command2enum(const char* command, const universal_command_t* cmds) return result; } +const universal_command_t* get_command_by_enum(int cmd, const universal_command_t* cmds) +{ + for(const universal_command_t* cur_cmd = cmds; cur_cmd->name != NULL; cur_cmd++) + { + if(cur_cmd->command == cmd) + return cur_cmd; + } + return NULL; +} + const string_quadruple_t* get_dbus_command_interface(int cmd, const command_dbus_path_t* pathes) { for(const command_dbus_path_t* current = pathes; current->path!=NULL; current++) @@ -42,6 +52,14 @@ const char* get_dbus_command_member(int cmd, const command_dbus_member_t* values return NULL; } +const command_dbus_member_t* get_dbus_command_by_member(const char* member, const command_dbus_member_t* values) +{ + for(const command_dbus_member_t* current = values; current->member!=NULL; current++) + { + if(strcmp(member, current->member) == 0 )return current; + } + return NULL; +} int com_dbus_property( char *arg, const universal_command_t* commands, const command_dbus_path_t* paths, const command_dbus_member_t* values) { |