Exemple #1
0
/*!
 * Initialisiert das Display
 */
void display_init(void)
{
   commandMQ = msgQueueAdd();
   dataMQ = msgQueueAdd();
   shift_init();

   DISPLAY_DDR |= DISPLAY_OUT; // Ausgaenge
   DISPLAY_DDR = (BK_U8B) (DISPLAY_DDR & ~DISPLAY_IN); // Eingaenge
   _delay_ms(12); // Display steht erst 10ms nach dem Booten bereit hier kann nicht die ctbotKernel wait funktion genutzt werden da die interrupts erst später aktiviert werden und somit die wait funktion noch nicht funktioniert
   /* Register in 8-Bit-Modus 3x uebertragen, dazwischen warten */
   BK_U8B i;
   for (i = 3; i > 0; --i)
   {
      shift_data_out(0x38, SHIFT_LATCH, SHIFT_REGISTER_DISPLAY);
      DISPLAY_PORT = DPC;
      _delay_ms(5);
   }
   display_cmd(DISPLAY_MODE); // Display an und Cursor-Modus setzen

   display_cmd(DISPLAY_CLEAR); // Display loeschen, Cursor Home
}
int GuestDnDBase::sendCancel(void)
{
    int rc;
    try
    {
        GuestDnDMsg *pMsgCancel = new GuestDnDMsg();
        pMsgCancel->setType(DragAndDropSvc::HOST_DND_HG_EVT_CANCEL);

        rc = msgQueueAdd(pMsgCancel);
    }
    catch(std::bad_alloc & /*e*/)
    {
        rc = VERR_NO_MEMORY;
    }

    LogFlowFunc(("Generated cancelling request, rc=%Rrc\n", rc));
    return rc;
}