X2HandoverDataMsg.h Source File

Simu5G: X2HandoverDataMsg.h Source File
Simu5G
X2HandoverDataMsg.h
1//
2// Simu5G
3//
4// Copyright (C) 2012-2021 Giovanni Nardini, Giovanni Stea, Antonio Virdis et al. (University of Pisa)
5// Copyright (C) 2022-2026 Giovanni Nardini, Giovanni Stea et al. (University of Pisa)
6//
7// This file is part of a software released under the license included in file
8// "license.pdf". Please read LICENSE and README files before using it.
9// The above files and the present reference are part of the software itself,
10// and cannot be removed from it.
11//
12
13#ifndef _LTE_X2HANDOVERDATAMSG_H_
14#define _LTE_X2HANDOVERDATAMSG_H_
15
16#include "simu5g/x2/packet/LteX2Message.h"
17#include "simu5g/common/LteCommon.h"
18
19namespace simu5g {
20
25class X2HandoverDataMsg : public LteX2Message
26{
27 protected:
28 // QoS flow of the forwarded datagram (QFI_NONE on bearers without one, i.e. EPC).
29 // In 3GPP the forwarding tunnel carries the QFI too (TS 38.425); the receiving
30 // side restores it as the QfiReq tag, which the target's SDAP needs to map the
31 // datagram back onto a DRB. Carried as a C++ field of the header chunk, like
32 // GtpUserMsg's qfi; it does not add to the message length.
33 Qfi qfi_ = QFI_NONE;
34
35 public:
36
37 X2HandoverDataMsg() :
38 LteX2Message()
39 {
40 type = X2_HANDOVER_DATA_MSG;
41 }
42
43 X2HandoverDataMsg(const X2HandoverDataMsg& other) : LteX2Message() { operator=(other); }
44
45 X2HandoverDataMsg& operator=(const X2HandoverDataMsg& other)
46 {
47 if (&other == this)
48 return *this;
49 LteX2Message::operator=(other);
50 qfi_ = other.qfi_;
51 return *this;
52 }
53
54 X2HandoverDataMsg *dup() const override { return new X2HandoverDataMsg(*this); }
55
56 Qfi getQfi() const { return qfi_; }
57 void setQfi(Qfi qfi) { qfi_ = qfi; }
58
59};
60
61} //namespace
62
63#endif
64
Definition AlertReceiver.h:24
constexpr Qfi QFI_NONE
Logical Connection Identifier (used in MAC layer)
Definition LteTypes.h:82