A Discrete-Event Network Simulator
API
lte-rlc-tag.h
Go to the documentation of this file.
1/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
2/*
3 * Copyright (c) 2011 CTTC
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation;
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 *
18 * Author: Jaume Nin <jaume.nin@cttc.es>
19 */
20
21#ifndef RLC_TAG_H
22#define RLC_TAG_H
23
24#include "ns3/packet.h"
25#include "ns3/nstime.h"
26
27
28namespace ns3 {
29
30class Tag;
31
36class RlcTag : public Tag
37{
38public:
43 static TypeId GetTypeId (void);
44 virtual TypeId GetInstanceTypeId (void) const;
45
49 RlcTag ();
54 RlcTag (Time senderTimestamp);
55
56 virtual void Serialize (TagBuffer i) const;
57 virtual void Deserialize (TagBuffer i);
58 virtual uint32_t GetSerializedSize () const;
59 virtual void Print (std::ostream &os) const;
60
66 {
67 return m_senderTimestamp;
68 }
69
74 void SetSenderTimestamp (Time senderTimestamp)
75 {
76 this->m_senderTimestamp = senderTimestamp;
77 }
78
79private:
81
82};
83
84} //namespace ns3
85
86#endif /* RLC_TAG_H */
Tag to calculate the per-PDU delay from eNb RLC to UE RLC.
Definition: lte-rlc-tag.h:37
Time m_senderTimestamp
sender timestamp
Definition: lte-rlc-tag.h:80
static TypeId GetTypeId(void)
Get the type ID.
Definition: lte-rlc-tag.cc:44
RlcTag()
Create an empty RLC tag.
Definition: lte-rlc-tag.cc:29
virtual void Serialize(TagBuffer i) const
Definition: lte-rlc-tag.cc:66
virtual void Deserialize(TagBuffer i)
Definition: lte-rlc-tag.cc:73
virtual void Print(std::ostream &os) const
Definition: lte-rlc-tag.cc:82
virtual uint32_t GetSerializedSize() const
Definition: lte-rlc-tag.cc:60
virtual TypeId GetInstanceTypeId(void) const
Get the most derived TypeId for this Object.
Definition: lte-rlc-tag.cc:54
void SetSenderTimestamp(Time senderTimestamp)
Set the sender timestamp.
Definition: lte-rlc-tag.h:74
Time GetSenderTimestamp(void) const
Get the instant when the RLC delivers the PDU to the MAC SAP provider.
Definition: lte-rlc-tag.h:65
read and write tag data
Definition: tag-buffer.h:52
tag a set of bytes in a packet
Definition: tag.h:37
Simulation virtual time values and global simulation resolution.
Definition: nstime.h:103
a unique identifier for an interface.
Definition: type-id.h:59
Every class exported by the ns3 library is enclosed in the ns3 namespace.