102 lines
1.9 KiB
C
102 lines
1.9 KiB
C
#include "smartbox/func_cmd/linein_func.h"
|
|
#include "smartbox/func_cmd_common.h"
|
|
#include "smartbox/function.h"
|
|
#include "smartbox/config.h"
|
|
#include "smartbox/event.h"
|
|
#include "app_action.h"
|
|
|
|
#include "app_msg.h"
|
|
#include "key_event_deal.h"
|
|
|
|
#if SMART_BOX_EN
|
|
|
|
#if (TCFG_APP_LINEIN_EN && !SOUNDCARD_ENABLE)
|
|
#include "linein/linein.h"
|
|
#include "tone_player.h"
|
|
|
|
#define LINEIN_INFO_ATTR_STATUS (0)
|
|
bool linein_func_set(void *priv, u8 *data, u16 len)
|
|
{
|
|
if (0 != tone_get_status()) {
|
|
return true;
|
|
}
|
|
u8 fun_cmd = data[0];
|
|
u16 param_len = len - 1;
|
|
switch (fun_cmd) {
|
|
case 1:
|
|
app_task_put_key_msg(KEY_MUSIC_PP, 0); //test demo
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
u32 linein_func_get(void *priv, u8 *buf, u16 buf_size, u32 mask)
|
|
{
|
|
u16 offset = 0;
|
|
if (mask & BIT(LINEIN_INFO_ATTR_STATUS)) {
|
|
u8 status = linein_get_status();
|
|
offset = add_one_attr(buf, buf_size, offset, LINEIN_INFO_ATTR_STATUS, (u8 *)&status, sizeof(status));
|
|
}
|
|
return offset;
|
|
}
|
|
|
|
void smartbox_linein_msg_deal(int msg, u8 ret)
|
|
{
|
|
struct smartbox *smart = smartbox_handle_get();
|
|
if (smart == NULL) {
|
|
return ;
|
|
}
|
|
switch (msg) {
|
|
case KEY_VOL_DOWN:
|
|
case KEY_VOL_UP:
|
|
smartbox_function_update(COMMON_FUNCTION, BIT(COMMON_FUNCTION_ATTR_TYPE_VOL));
|
|
break;
|
|
case (int)-1:
|
|
case KEY_MUSIC_PP:
|
|
case KEY_LINEIN_START:
|
|
smartbox_function_update(LINEIN_FUNCTION_MASK, BIT(LINEIN_INFO_ATTR_STATUS));
|
|
break;
|
|
}
|
|
}
|
|
|
|
void linein_func_stop(void)
|
|
{
|
|
if (linein_get_status()) {
|
|
app_task_put_key_msg(KEY_MUSIC_PP, 0);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
bool linein_func_set(void *priv, u8 *data, u16 len)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
u32 linein_func_get(void *priv, u8 *buf, u16 buf_size, u32 mask)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
void smartbox_linein_msg_deal(int msg, u8 ret)
|
|
{
|
|
|
|
}
|
|
|
|
void smartbot_linein_msg_deal(int msg)
|
|
{
|
|
|
|
}
|
|
|
|
void linein_func_stop(void)
|
|
{
|
|
|
|
}
|
|
#endif
|
|
#endif
|