Пример #1
0
static void jump_to_prog(control_t *p_cont)
{
  control_t *p_ctrl, *p_subctrl;
  control_t *p_root = NULL;
  u16 curn,curn_prog_id;
  u16 prog_id;
  control_t *p_mute;
  customer_cfg_t cus_cfg = {0};
  p_ctrl = ctrl_get_child_by_id(p_cont, IDC_NUM_FRM);
  p_subctrl = ctrl_get_child_by_id(p_ctrl, IDC_NUM_TXT);

  curn = (u16)nbox_get_num(p_subctrl);
  curn_prog_id = sys_status_get_curn_group_curn_prog_id();
  get_customer_config(&cus_cfg);
  
  /* jump to prog */
  if (curn > g_prog_cnt || curn == 0)
  {
    ctrl_process_msg(p_cont, MSG_EXIT, 0, 0);
    manage_open_menu(ROOT_ID_PROG_BAR, V_KEY_9, (u32)curn_prog_id);
	p_mute = fw_find_root_by_id(ROOT_ID_MUTE);
	update_signal();  
	
 	if(fw_find_root_by_id(ROOT_ID_PASSWORD) != NULL) // already opened
	{
		ui_comm_pwdlg_close();
	}	
	ui_comm_prompt_open(&dlg_data);
	if(fw_find_root_by_id(ROOT_ID_FAV_LIST) != NULL){
		ui_comm_prompt_close();
	}
	if(p_mute != NULL)
  	{
    	open_mute(0,0);
 	}
	update_signal();
    manage_close_menu(ROOT_ID_PROG_BAR, V_KEY_9, (u32)curn_prog_id);
    return;
  }
  
  if(is_fullsrc)
  {
    prog_id = db_dvbs_get_id_by_view_pos(ui_dbase_get_pg_view_id(), curn - 1 /* base on 1*/);
    manage_open_menu(ROOT_ID_PROG_BAR, V_KEY_9, (u32)prog_id);
  }
  else
  {
    fw_notify_parent(ROOT_ID_NUM_PLAY, NOTIFY_T_MSG, 
      FALSE, MSG_NUM_SELECT, (curn - 1), 0);
  }
  
  /* close */
  p_root = fw_find_root_by_id(ROOT_ID_NUM_PLAY);
  if(p_root != NULL)
  {
    ctrl_process_msg(p_cont, MSG_EXIT, 0, 0);
  }
  return;
}
Пример #2
0
static void jump_to_prog_with_logic_num(control_t *p_cont)
{
  control_t *p_ctrl, *p_subctrl;
  u16 curn;
  u16 prog_id;
  u16 prog_pos;
  control_t *p_mute;
  p_ctrl = ctrl_get_child_by_id(p_cont, IDC_NUM_FRM);
  p_subctrl = ctrl_get_child_by_id(p_ctrl, IDC_NUM_ICON);

  curn = (u16)nbox_get_num(p_subctrl);
 
  /* jump to prog */                    
  prog_pos = get_pos_by_logic_num(curn);
  if(prog_pos == INVALIDPOS)
  {
    if(fw_find_root_by_id(ROOT_ID_DIALOG) != NULL)
    { 
      return;
    }
	p_mute = fw_find_root_by_id(ROOT_ID_MUTE);
	update_signal();
    ui_comm_prompt_open(&dlg_data);
	if(fw_find_root_by_id(ROOT_ID_FAV_LIST) != NULL){
		ui_comm_prompt_close();
	}
	if(p_mute != NULL)
  	{
    	open_mute(0,0);
 	}
	update_signal();
    ctrl_process_msg(p_cont, MSG_EXIT, 0, 0);
    return;
  }
  
  if(is_fullsrc)
  {
    prog_id = db_dvbs_get_id_by_view_pos(ui_dbase_get_pg_view_id(), prog_pos);
    ui_play_prog(prog_id, FALSE);
  }
  else
  {
    fw_notify_parent(ROOT_ID_NUM_PLAY, NOTIFY_T_MSG, 
      FALSE, MSG_NUM_SELECT, (curn - 1), 0);
  }
  
  /* close */
  ctrl_process_msg(p_cont, MSG_EXIT, 0, 0);
  return;
}
Пример #3
0
void vectrex_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)
{
	switch (id)
	{
	case TIMER_VECTREX_IMAGER_CHANGE_COLOR:
		vectrex_imager_change_color(ptr, param);
		break;
	case TIMER_UPDATE_LEVEL:
		update_level(ptr, param);
		break;
	case TIMER_VECTREX_IMAGER_EYE:
		vectrex_imager_eye(ptr, param);
		break;
	case TIMER_LIGHTPEN_TRIGGER:
		lightpen_trigger(ptr, param);
		break;
	case TIMER_VECTREX_REFRESH:
		vectrex_refresh(ptr, param);
		break;
	case TIMER_VECTREX_ZERO_INTEGRATORS:
		vectrex_zero_integrators(ptr, param);
		break;
	case TIMER_UPDATE_SIGNAL:
		update_signal(ptr, param);
		break;
	default:
		assert_always(FALSE, "Unknown id in vectrex_state::device_timer");
	}
}
static RET_CODE on_ca_clear_OSD(control_t *p_ctrl, u16 msg,
                             u32 para1, u32 para2)
{
   ui_set_playpg_scrambled(FALSE);
   update_signal();
   return SUCCESS;
}
Пример #5
0
void CBar::setBGColour( const QColor & new_colour )
{
	if ( theBGColour == new_colour ) return;

	theBGColour = new_colour;
	emit update_signal();
}
Пример #6
0
void CBar::switchColours()
{
	QColor tmp = theFGColour;
	theFGColour = theBGColour;
	theBGColour = tmp;

	emit update_signal();
}
Пример #7
0
void CBar::setText( const std::string & new_text )
{
	QString new_text_2 = QString::fromUtf8( new_text.c_str() );;
	if ( theText == new_text_2 ) return;
	theText = new_text_2;

	emit update_signal();
}
Пример #8
0
void remote488_device::ieee488_ifc(int state)
{
	update_signal(SIGNAL_IFC_BIT , state);
	if (!state) {
		LOG("IFC\n");
		bus_reset();
	}
}
Пример #9
0
CBar::CBar( const unsigned int a_size, const QColor & fg, const QColor & bg )
	: QWidget()
	, theSize( QSize(a_size,4*a_size) )
	, theText("")
	, theFGColour( fg )
	, theBGColour( bg )
	, theFilledFraction( 1.0 )
{
	setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::MinimumExpanding ) );

	QFont new_font( "Helvetica", 24, QFont::Bold );
	setFont( new_font );

	// nice signal to communicate across threads
	connect( this, SIGNAL(update_signal()), this, SLOT(update()) );

	emit update_signal();
}
Пример #10
0
static RET_CODE on_pwdlg_save(control_t *p_ctrl, u16 msg, 
                                  u32 para1, u32 para2)
{
  g_chkpwd_info.is_passchk = FALSE;
  /* only lock */
  do_lock_pg(g_chkpwd_info.passchk_pg);

  update_signal();

  return SUCCESS;
}
Пример #11
0
static RET_CODE on_pwdlg_correct_in_scrn(control_t *p_ctrl, u16 msg, 
                                  u32 para1, u32 para2)
{
  g_chkpwd_info.is_passchk = TRUE;
  /* to play */
  do_play_pg(g_chkpwd_info.passchk_pg);

  ui_comm_pwdlg_close();

  update_signal();
  if(fw_find_root_by_id(ROOT_ID_PROG_BAR) != NULL) 
  {
    manage_tmr_reset();
  }
  return SUCCESS;
}
Пример #12
0
static RET_CODE on_pwdlg_correct_in_list(control_t *p_ctrl, u16 msg, 
                                  u32 para1, u32 para2)
{
  /* if get correct pwd then don't check again in list
     and enable it when leave list */
  ui_enable_chk_pwd(FALSE);
  g_chkpwd_info.is_passchk = TRUE;
  /* to play */
  do_play_pg(g_chkpwd_info.passchk_pg);

  ui_comm_pwdlg_close();

  update_signal();
  
  return SUCCESS;
}
Пример #13
0
void remote488_device::ieee488_atn(int state)
{
	update_signal(SIGNAL_ATN_BIT , state);
	update_sh_fsm();
	update_pp();
}
Пример #14
0
void remote488_device::ieee488_ren(int state)
{
	update_signal(SIGNAL_REN_BIT , state);
}
Пример #15
0
int main(int argc, char **argv) {
    int my_rank;
    float * p1;
    float * p2;
    float * ptemp;
    int i, j;
    MPI_Status  stats[2*NUM_SLICES+2];
    MPI_Request requests[2*NUM_SLICES+2];
    int ierr;

    MPI_Init(&argc, &argv);
    MPI_Comm_rank(MPI_COMM_WORLD, &my_rank); /*DETERMINE RANK OF THIS PROCESSOR*/
    printf("Hello Paul %d\n", my_rank);

    if (my_rank == 0)
    {
        init_signal(un);
        p1 = un;    
        for (j = 0; j < SLICE_WIDTH; j++)
        {
            local_data[j] = *(un+j);
        }

        // send starting data to other processes
        for (i= 1; i < NUM_SLICES; i++)
        {
            MPI_Isend(un + (SLICE_WIDTH-2* OVERLAP) * i, SLICE_WIDTH, MPI_FLOAT, i, 0, MPI_COMM_WORLD, &requests[i]);
        }
        MPI_Waitall(NUM_SLICES-1, &requests[1], &stats[1]);

        for (j=0; j< 8192; j++)
        {
           //printf("process 0 step %d\n", j);

           // update from A to B
           for (i=0; i < OVERLAP/2; i++)
           {
              update_signal(local_data, local_data_1, 0, SLICE_WIDTH);
           }

           // update from B to A
           for (i=0; i < OVERLAP/2; i++)
           {
              update_signal(local_data_1, local_data, 0, SLICE_WIDTH);
           }

           // send/receive overlaps
           MPI_Isend(local_data + (SLICE_WIDTH- 2 * OVERLAP), OVERLAP, MPI_FLOAT, 1, 0, MPI_COMM_WORLD, &requests[0]);
           MPI_Irecv(local_data + (SLICE_WIDTH -   OVERLAP), OVERLAP, MPI_FLOAT, 1, 1, MPI_COMM_WORLD, &requests[1]);
           MPI_Waitall(2, &requests[0], &stats[0]);
        }

        for (i= 1; i < NUM_SLICES; i++)
        {
            MPI_Irecv(un_1 + (SLICE_WIDTH-2* OVERLAP) * i, SLICE_WIDTH, MPI_FLOAT, i, 0, MPI_COMM_WORLD, &requests[i]);
        }
        MPI_Waitall(NUM_SLICES-1, &requests[1], &stats[1]);

        for (j = 0; j< SLICE_WIDTH; j++)
        {
             *(un_1 +j) = local_data[j];
        }
        display_signal(un_1);
    }
    else
    {
        MPI_Irecv(local_data, SLICE_WIDTH, MPI_FLOAT, 0, 0, MPI_COMM_WORLD, &requests[0]);
        MPI_Wait(&requests[0], &stats[0]);

       for (j=0; j< 8192; j++)
       {
         //printf("process  step %d\n", j);
        for (i=0; i < OVERLAP/2; i++)
        {
            update_signal(local_data, local_data_1, 0, SLICE_WIDTH);
        }

        for (i=0; i < OVERLAP/2; i++)
        {
            update_signal(local_data_1, local_data, 0, SLICE_WIDTH);
        }
        if (my_rank == (NUM_SLICES-1))
        {
            MPI_Isend(local_data + OVERLAP, OVERLAP, MPI_FLOAT, my_rank-1, 2*my_rank -1, MPI_COMM_WORLD, &requests[0]);
            MPI_Irecv(local_data, OVERLAP, MPI_FLOAT, my_rank-1, 2* my_rank-2, MPI_COMM_WORLD, &requests[1]);
            MPI_Waitall(2, &requests[0], &stats[0]);
        }
        else
        {
            MPI_Isend(local_data + OVERLAP, OVERLAP, MPI_FLOAT, my_rank-1, 2*my_rank-1, MPI_COMM_WORLD, &requests[0]);
            MPI_Irecv(local_data, OVERLAP, MPI_FLOAT, my_rank-1, 2*my_rank-2, MPI_COMM_WORLD, &requests[1]);
            MPI_Irecv(local_data + SLICE_WIDTH - OVERLAP, OVERLAP, MPI_FLOAT, my_rank+1, 2*my_rank+1, MPI_COMM_WORLD, &requests[2]);
            MPI_Isend(local_data + SLICE_WIDTH - 2 *OVERLAP, OVERLAP, MPI_FLOAT, my_rank+1, 2*my_rank, MPI_COMM_WORLD, &requests[3]);
            MPI_Waitall(4, &requests[0], &stats[0]);

        }
       }
        MPI_Isend(local_data, SLICE_WIDTH, MPI_FLOAT, 0, 0, MPI_COMM_WORLD, &requests[0]);
        MPI_Wait(&requests[0], &stats[0]);
    }

    char processor_name[128];
    int name_len;
    MPI_Get_processor_name(processor_name, &name_len);

    // Print off a hello world message
    printf("Hello world from processor %s\n",
           processor_name);

    MPI_Finalize();
}
Пример #16
0
void CBar::setFilledFraction( const float fraction )
{
	theFilledFraction = fraction;
	emit update_signal();

}
Пример #17
0
void remote488_device::ieee488_srq(int state)
{
	update_signal(SIGNAL_SRQ_BIT , state);
}