Beispiel #1
0
    static void activateCallback(CoreAPI *This, Header *header, UserData userData)
    {
        This->activateCallback(This, header);

        MyObject* m = (MyObject*)userData;
        volatile unsigned short ack_data;
        if (header->length - EXC_DATA_SIZE <= 2)
        {
            memcpy((unsigned char *)&ack_data, ((unsigned char *)header) + sizeof(Header),
                   (header->length - EXC_DATA_SIZE));
            if (ack_data == ACK_ACTIVE_NEW_DEVICE)
            {
                printf("New Device");
            }
            else
            {
                if (ack_data == ACK_ACTIVE_SUCCESS)
                {
                    m->setControl(true);
                    printf("active Success\n");
                }
                else
                {
                    printf("Error");
                }
            }
        }
        else
        {
            printf("Decode Error");
        }
    }
Beispiel #2
0
    static void landCallBack(CoreAPI* This, Header* header, UserData userData){
        Flight::taskCallback(This, header, userData);

        MyObject* m = (MyObject*)userData;
        unsigned short ack_data;
        if (header->length - EXC_DATA_SIZE <= 2)
        {
            memcpy((unsigned char *)&ack_data, ((unsigned char *)header) + sizeof(Header),
                   (header->length - EXC_DATA_SIZE));

            m->setControl(false);
        }
    }