ITS
LifeTimeData.cpp
Go to the documentation of this file.
1 #include "LifeTimeData.h"
2 
3 #include <QDataStream>
4 
6 {
7  m_multiplier = 60;
9 }
10 
11 LifeTimeData::LifeTimeData(char *data, int *offset)
12 {
13  m_multiplier = *data & 0xFC;
14  m_base = *data & 0x03;
15 
16  *offset = (*offset) + 1;
17 }
18 
19 LifeTimeData::LifeTimeData(quint64 lifeTime)
20 {
21  if(lifeTime > 6300)
22  {
24  m_multiplier = 63;
25  }
26  else if(!lifeTime % 100)
27  {
29  m_multiplier = lifeTime / 100;
30  }
31  else if(!lifeTime % 10)
32  {
34  m_multiplier = lifeTime / 10;
35  }
36  else
37  {
39  m_multiplier = lifeTime;
40  }
41 }
42 
43 QByteArray LifeTimeData::toBin()
44 {
45  quint8 lt;
46  QByteArray bin;
47  QDataStream ds(&bin, QIODevice::WriteOnly);
48 
49  lt = (m_multiplier << 2) + m_base;
50 
51  ds << lt;
52 
53  return bin;
54 }
LifeTimeData()
LifeTimeData LifeTimeData constructor.
Definition: LifeTimeData.cpp:5
quint8 m_multiplier
Definition: LifeTimeData.h:67
QByteArray toBin()
toBin LifeTimeData encoder.
Life time serializer.
quint8 m_base
Definition: LifeTimeData.h:68