A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
erp-ofdm-ppdu.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2020 Orange Labs
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation;
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 *
17 * Author: Rediet <getachew.redieteab@orange.com>
18 * Muhammad Iqbal Rochman <muhiqbalcr@uchicago.edu>
19 */
20
21#ifndef ERP_OFDM_PPDU_H
22#define ERP_OFDM_PPDU_H
23
24#include "ofdm-ppdu.h"
25
26/**
27 * \file
28 * \ingroup wifi
29 * Declaration of ns3::ErpOfdmPpdu class.
30 */
31
32namespace ns3
33{
34
35class WifiPsdu;
36
37/**
38 * \brief ERP-OFDM PPDU (11g)
39 * \ingroup wifi
40 *
41 * ErpOfdmPpdu stores a preamble, PHY headers and a PSDU of a PPDU with non-HT header,
42 * i.e., PPDU that uses ERP-OFDM modulation.
43 */
44class ErpOfdmPpdu : public OfdmPpdu
45{
46 public:
47 /**
48 * Create an ERP-OFDM PPDU.
49 *
50 * \param psdu the PHY payload (PSDU)
51 * \param txVector the TXVECTOR that was used for this PPDU
52 * \param channel the operating channel of the PHY used to transmit this PPDU
53 * \param uid the unique ID of this PPDU
54 */
56 const WifiTxVector& txVector,
57 const WifiPhyOperatingChannel& channel,
58 uint64_t uid);
59
60 Ptr<WifiPpdu> Copy() const override;
61
62 private:
63 void SetTxVectorFromLSigHeader(WifiTxVector& txVector, const LSigHeader& lSig) const override;
64}; // class ErpOfdmPpdu
65
66} // namespace ns3
67
68#endif /* ERP_OFDM_PPDU_H */
ERP-OFDM PPDU (11g)
Definition: erp-ofdm-ppdu.h:45
Ptr< WifiPpdu > Copy() const override
Copy this instance.
void SetTxVectorFromLSigHeader(WifiTxVector &txVector, const LSigHeader &lSig) const override
Fill in the TXVECTOR from L-SIG header.
OFDM and ERP OFDM L-SIG PHY header.
Definition: ofdm-ppdu.h:54
OFDM PPDU (11a)
Definition: ofdm-ppdu.h:47
Smart pointer class similar to boost::intrusive_ptr.
Definition: ptr.h:77
Class that keeps track of all information about the current PHY operating channel.
This class mimics the TXVECTOR which is to be passed to the PHY in order to define the parameters whi...
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Declaration of ns3::OfdmPpdu class.