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"); } }
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); } }