mirror of
https://github.com/RT-Thread/rt-thread.git
synced 2025-02-27 23:37:03 +08:00
[finsh] feat: add finsh thread entry hook
Signed-off-by: Shell <smokewood@qq.com>
This commit is contained in:
parent
881c81043d
commit
22106bb8de
@ -448,10 +448,28 @@ static void shell_push_history(struct finsh_shell *shell)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef RT_USING_HOOK
|
||||||
|
static void (*_finsh_thread_entry_hook)(void);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ingroup finsh
|
||||||
|
*
|
||||||
|
* @brief This function set a hook function at the entry of finsh thread
|
||||||
|
*
|
||||||
|
* @param hook the function point to be called
|
||||||
|
*/
|
||||||
|
void finsh_thread_entry_sethook(void (*hook)(void))
|
||||||
|
{
|
||||||
|
_finsh_thread_entry_hook = hook;
|
||||||
|
}
|
||||||
|
#endif /* RT_USING_HOOK */
|
||||||
|
|
||||||
static void finsh_thread_entry(void *parameter)
|
static void finsh_thread_entry(void *parameter)
|
||||||
{
|
{
|
||||||
int ch;
|
int ch;
|
||||||
|
|
||||||
|
RT_OBJECT_HOOK_CALL(_finsh_thread_entry_hook, ());
|
||||||
|
|
||||||
/* normal is echo mode */
|
/* normal is echo mode */
|
||||||
#ifndef FINSH_ECHO_DISABLE_DEFAULT
|
#ifndef FINSH_ECHO_DISABLE_DEFAULT
|
||||||
shell->echo_mode = 1;
|
shell->echo_mode = 1;
|
||||||
|
@ -102,4 +102,8 @@ void finsh_set_prompt_mode(rt_uint32_t prompt_mode);
|
|||||||
const char *finsh_get_password(void);
|
const char *finsh_get_password(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef RT_USING_HOOK
|
||||||
|
void finsh_thread_entry_sethook(void (*hook)(void));
|
||||||
|
#endif /* RT_USING_HOOK */
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user