int recievedata::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QWidget::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: ReadCom(); break; case 1: back(); break; default: ; } _id -= 2; } return _id; }
M4Err ParseCommand(BitStream *bs, ODCommand **com, u32 *com_size) { u32 val, size, sizeHeader; u8 tag; M4Err err; ODCommand *newCom; if (!bs) return M4BadParam; *com_size = 0; //tag tag = BS_ReadInt(bs, 8); sizeHeader = 1; //size size = 0; do { val = BS_ReadInt(bs, 8); sizeHeader++; size <<= 7; size |= val & 0x7F; } while ( val & 0x80 ); *com_size = size; newCom = CreateCom(tag); if (! newCom) { *com = NULL; return M4OutOfMem; } newCom->tag = tag; err = ReadCom(bs, newCom, *com_size); //little trick to handle lazy bitstreams that encode //SizeOfInstance on a fix number of bytes //This nb of bytes is added in Read methods *com_size += sizeHeader - GetSizeFieldSize(*com_size); *com = newCom; if (err) { DelCom(newCom); *com = NULL; } return err; }
U8 _fast COMPORT::readChar(){ while(!IsCom(port)) SYS::sleep(1); return ReadCom(port); }