Пример #1
0
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];
}
Пример #2
0
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;
}
Пример #3
0
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;
}
Пример #4
0
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;
}
Пример #5
0
char UmlCom::read_char()
{
  read_if_needed();
  
  return *p_buffer_in++;
}
Пример #6
0
bool UmlCom::read_bool()
{
  read_if_needed();
  
  return *p_buffer_in++ != 0;
}