unsigned int UmlCom::read_unsigned() { read_if_needed(); p_buffer_in += 4; return (((unsigned char *) p_buffer_in)[-4] << 24) + (((unsigned char *) p_buffer_in)[-3] << 16) + (((unsigned char *) p_buffer_in)[-2] << 8) + ((unsigned char *) p_buffer_in)[-1]; }
void * UmlCom::read_id() { read_if_needed(); void * a; // sizeof(void *) must be the same for bouml and // the plug-out, bypass it memcpy((char *) &a, p_buffer_in + 1, sizeof(void *)); p_buffer_in += sizeof(void *) + 1; return a; }
const char * UmlCom::read_string() { read_if_needed(); unsigned len = strlen(p_buffer_in) + 1; p_buffer_in += len; #ifdef TRACE //cout << "UmlCom::read_string : \"" << p_buffer_in - len << "\"\n"; #endif return p_buffer_in - len; }
const char * UmlCom::read_string() { read_if_needed(); size_t len = strlen(p_buffer_in) + 1; p_buffer_in += len; #ifdef TRACE //qDebug() << "UmlCom::read_string : \"" << p_buffer_in - len << "\"\n"; #endif return p_buffer_in - len; }
char UmlCom::read_char() { read_if_needed(); return *p_buffer_in++; }
bool UmlCom::read_bool() { read_if_needed(); return *p_buffer_in++ != 0; }