ITS
BasicHeader.h
Go to the documentation of this file.
1
14
#ifndef BASICHEADER_H
15
#define BASICHEADER_H
16
17
#include <QByteArray>
18
#include <
LifeTime.h
>
19
#include <QDataStream>
20
#include <
constantes.h
>
21
25
typedef
struct
sniff_basicHeader_s
26
{
27
quint8
version_nextHeader
;
28
quint8
reserved
;
29
sniff_lifeTime_t
lifeTime
;
30
quint8
rhl
;
31
}
sniff_basicHeader_t
;
32
33
class
BasicHeader
34
{
35
public
:
36
37
41
enum
e_helper
42
{
43
helper_size
= 4
44
};
45
49
enum
e_nextHeader
50
{
51
nextHeader_any
= 0,
52
nextHeader_commonHeader
= 1,
53
nextHeader_securedPacket
= 2
54
};
55
59
BasicHeader
();
67
BasicHeader
(quint8
version
,
enum
e_nextHeader
nextHeader
,
LifeTime
lifeTime
, quint8
rhl
);
74
BasicHeader
(quint8 version_nextHeader,
LifeTime
lifeTime
, quint8
rhl
);
78
BasicHeader
(uchar*);
83
BasicHeader
(
const
BasicHeader
&other);
88
BasicHeader
(
sniff_basicHeader_t
bh);
89
90
/* Getters */
95
quint8
version
()
const
{
return
(
m_version_nextHeader
& 0xF0) >> 4;}
100
quint8
nextHeader
()
const
{
return
(
m_version_nextHeader
& 0x0F);}
105
LifeTime
lifeTime
()
const
{
return
m_lifeTime
;}
110
quint8
rhl
()
const
{
return
m_rhl
;}
111
112
/* Setters */
117
void
setVersion
(quint8 v) {
m_version_nextHeader
&= 0xF;
m_version_nextHeader
|= ((v & 0xF) << 4);}
122
void
setNextHeader
(
enum
e_nextHeader
n) {
m_version_nextHeader
&= 0xF0;
m_version_nextHeader
|= (n & 0xF);}
127
void
setVersionNextHeader
(quint8 vnh) {
m_version_nextHeader
= vnh;}
132
void
setLifeTime
(
LifeTime
l) {
m_lifeTime
= l;}
137
void
setRHL
(quint8 r) {
m_rhl
= r;}
138
139
/* API */
144
QByteArray
toHex
();
145
146
private
:
147
quint8
m_version_nextHeader
;
148
quint8
m_reserved
;
149
LifeTime
m_lifeTime
;
150
quint8
m_rhl
;
151
};
152
153
#endif // BASICHEADER_H
BasicHeader::nextHeader_any
Definition:
BasicHeader.h:51
BasicHeader::BasicHeader
BasicHeader()
BasicHeader BasicHeader constructor.
Definition:
BasicHeader.cpp:3
sniff_basicHeader_s::rhl
quint8 rhl
Definition:
BasicHeader.h:30
BasicHeader::m_rhl
quint8 m_rhl
Definition:
BasicHeader.h:150
sniff_basicHeader_s
The sniff_basicHeader_t is a C version of the class.
Definition:
BasicHeader.h:25
BasicHeader::m_version_nextHeader
quint8 m_version_nextHeader
Definition:
BasicHeader.h:147
sniff_basicHeader_t
struct sniff_basicHeader_s sniff_basicHeader_t
The sniff_basicHeader_t is a C version of the class.
BasicHeader
Definition:
BasicHeader.h:33
BasicHeader::setRHL
void setRHL(quint8 r)
setRHL Router hop limit field setter.
Definition:
BasicHeader.h:137
BasicHeader::nextHeader
quint8 nextHeader() const
nextHeader Next header field getter.
Definition:
BasicHeader.h:100
BasicHeader::setVersion
void setVersion(quint8 v)
setVersion Version field setter.
Definition:
BasicHeader.h:117
sniff_lifeTime_s
sniff_lifeTime_t structure is the C style of the class.
Definition:
LifeTime.h:16
sniff_basicHeader_s::lifeTime
sniff_lifeTime_t lifeTime
Definition:
BasicHeader.h:29
BasicHeader::version
quint8 version() const
version Version field getter.
Definition:
BasicHeader.h:95
sniff_basicHeader_s::reserved
quint8 reserved
Definition:
BasicHeader.h:28
BasicHeader::helper_size
Definition:
BasicHeader.h:43
BasicHeader::e_nextHeader
e_nextHeader
The e_nextHeader enum defines the Next header values.
Definition:
BasicHeader.h:49
constantes.h
Constantes used everywhere.
BasicHeader::toHex
QByteArray toHex()
toHex Byte array translator
Definition:
BasicHeader.cpp:43
BasicHeader::rhl
quint8 rhl() const
rhl Router hop limit field getter.
Definition:
BasicHeader.h:110
BasicHeader::e_helper
e_helper
The e_helper enum is used to help to have sizes.
Definition:
BasicHeader.h:41
BasicHeader::lifeTime
LifeTime lifeTime() const
lifeTime Life time field getter.
Definition:
BasicHeader.h:105
sniff_basicHeader_s::version_nextHeader
quint8 version_nextHeader
Definition:
BasicHeader.h:27
LifeTime
Definition:
LifeTime.h:21
BasicHeader::setLifeTime
void setLifeTime(LifeTime l)
setLifeTime Life time field setter.
Definition:
BasicHeader.h:132
BasicHeader::m_lifeTime
LifeTime m_lifeTime
Definition:
BasicHeader.h:149
BasicHeader::nextHeader_commonHeader
Definition:
BasicHeader.h:52
LifeTime.h
Life time definition.
BasicHeader::m_reserved
quint8 m_reserved
Definition:
BasicHeader.h:148
BasicHeader::nextHeader_securedPacket
Definition:
BasicHeader.h:53
BasicHeader::setVersionNextHeader
void setVersionNextHeader(quint8 vnh)
setVersionNextHeader Version + Next header fields setter.
Definition:
BasicHeader.h:127
BasicHeader::setNextHeader
void setNextHeader(enum e_nextHeader n)
setNextHeader Next header field setter.
Definition:
BasicHeader.h:122
network
include
BasicHeader.h
Generated by
1.8.14