A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
preamble-detection-model.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2018 University of Washington
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Sébastien Deronne <sebastien.deronne@gmail.com>
7 */
8
9#ifndef PREAMBLE_DETECTION_MODEL_H
10#define PREAMBLE_DETECTION_MODEL_H
11
12#include "wifi-units.h"
13
14#include "ns3/object.h"
15
16namespace ns3
17{
18
19/**
20 * \ingroup wifi
21 * \brief the interface for Wifi's preamble detection models
22 *
23 */
25{
26 public:
27 /**
28 * \brief Get the type ID.
29 * \return the object TypeId
30 */
31 static TypeId GetTypeId();
32
33 /**
34 * A pure virtual method that must be implemented in the subclass.
35 * This method returns whether the preamble detection was successful.
36 *
37 * \param rssi the RSSI of the received signal.
38 * \param snr the SNR of the received signal in linear scale.
39 * \param channelWidth the channel width of the received signal.
40 *
41 * \return true if the preamble has been detected,
42 * false otherwise
43 */
44 virtual bool IsPreambleDetected(dBm_u rssi, double snr, MHz_u channelWidth) const = 0;
45};
46
47} // namespace ns3
48
49#endif /* PREAMBLE_DETECTION_MODEL_H */
A base class which provides memory management and object aggregation.
Definition object.h:78
the interface for Wifi's preamble detection models
virtual bool IsPreambleDetected(dBm_u rssi, double snr, MHz_u channelWidth) const =0
A pure virtual method that must be implemented in the subclass.
static TypeId GetTypeId()
Get the type ID.
a unique identifier for an interface.
Definition type-id.h:48
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Declaration of the SI units (as weak types aliases) used across wifi module.