PicoScenes API Docs
Loading...
Searching...
No Matches
MAC80211CSIExtractableNIC.hxx
Go to the documentation of this file.
1
//
2
// Created by Zhiping Jiang on 9/18/21.
3
//
4
5
#ifndef PICOSCENES_PLATFORM_MAC80211CSIEXTRACTABLENIC_HXX
6
#define PICOSCENES_PLATFORM_MAC80211CSIEXTRACTABLENIC_HXX
7
8
9
#include "
AbstractNIC.hxx
"
10
#include "
MAC80211CSIExtractableFrontEnd.hxx
"
11
21
class
MAC80211CSIExtractableNIC
:
virtual
public
AbstractNIC
{
22
23
public
:
31
static
std::shared_ptr<MAC80211CSIExtractableNIC>
getNICInstance
(
const
std::string &
referredInterfaceName
);
32
37
[[nodiscard]]
const
std::string &
getDevId
()
const
;
38
43
[[nodiscard]]
const
std::string &
getMonId
()
const
;
44
49
[[nodiscard]] uint16_t
getPhyIdNumber
()
const
;
50
55
[[nodiscard]]
const
std::string &
getPhyPath
()
const
;
56
61
[[nodiscard]]
const
std::array<uint8_t, 6> &
getMacAddressMon
()
const
;
62
67
[[nodiscard]]
const
std::array<uint8_t, 6> &
getMacAddressDev
()
const
;
68
73
[[nodiscard]]
const
std::shared_ptr<MAC80211CSIExtractableFrontEnd> &
getMacFrontEnd
()
const
;
74
75
protected
:
76
std::string
devId
;
77
std::string
monId
;
78
uint16_t
phyIdNumber
;
79
std::string
phyPath
;
80
85
std::shared_ptr<MAC80211CSIExtractableFrontEnd>
macFrontEnd
;
86
87
std::array<uint8_t, 6>
macAddress_MON
{};
88
std::array<uint8_t, 6>
macAddress_DEV
{};
89
96
explicit
MAC80211CSIExtractableNIC
(
const
std::string &
referredInterfaceName
);
97
};
98
99
100
#endif
//PICOSCENES_PLATFORM_MAC80211CSIEXTRACTABLENIC_HXX
AbstractNIC.hxx
MAC80211CSIExtractableFrontEnd.hxx
AbstractNIC
Abstract base class for Network Interface Card (NIC) operations.
Definition
AbstractNIC.hxx:28
AbstractNIC::referredInterfaceName
std::string referredInterfaceName
Interface name reference.
Definition
AbstractNIC.hxx:329
MAC80211CSIExtractableNIC
Network Interface Card class with CSI extraction capabilities for MAC80211 devices.
Definition
MAC80211CSIExtractableNIC.hxx:21
MAC80211CSIExtractableNIC::macFrontEnd
std::shared_ptr< MAC80211CSIExtractableFrontEnd > macFrontEnd
Frontend instance for CSI operations.
Definition
MAC80211CSIExtractableNIC.hxx:85
MAC80211CSIExtractableNIC::getMacFrontEnd
const std::shared_ptr< MAC80211CSIExtractableFrontEnd > & getMacFrontEnd() const
Get the associated MAC80211 CSI-capable frontend.
MAC80211CSIExtractableNIC::phyIdNumber
uint16_t phyIdNumber
Physical interface number.
Definition
MAC80211CSIExtractableNIC.hxx:78
MAC80211CSIExtractableNIC::getMacAddressDev
const std::array< uint8_t, 6 > & getMacAddressDev() const
Get the MAC address of the device interface.
MAC80211CSIExtractableNIC::getDevId
const std::string & getDevId() const
Get the device interface identifier.
MAC80211CSIExtractableNIC::macAddress_MON
std::array< uint8_t, 6 > macAddress_MON
MAC address of monitor interface.
Definition
MAC80211CSIExtractableNIC.hxx:87
MAC80211CSIExtractableNIC::devId
std::string devId
Device interface identifier.
Definition
MAC80211CSIExtractableNIC.hxx:76
MAC80211CSIExtractableNIC::getPhyPath
const std::string & getPhyPath() const
Get the path to the physical interface in the system.
MAC80211CSIExtractableNIC::MAC80211CSIExtractableNIC
MAC80211CSIExtractableNIC(const std::string &referredInterfaceName)
Protected constructor for MAC80211CSIExtractableNIC.
MAC80211CSIExtractableNIC::getMonId
const std::string & getMonId() const
Get the monitor interface identifier.
MAC80211CSIExtractableNIC::getPhyIdNumber
uint16_t getPhyIdNumber() const
Get the physical interface number.
MAC80211CSIExtractableNIC::monId
std::string monId
Monitor interface identifier.
Definition
MAC80211CSIExtractableNIC.hxx:77
MAC80211CSIExtractableNIC::macAddress_DEV
std::array< uint8_t, 6 > macAddress_DEV
MAC address of device interface.
Definition
MAC80211CSIExtractableNIC.hxx:88
MAC80211CSIExtractableNIC::getMacAddressMon
const std::array< uint8_t, 6 > & getMacAddressMon() const
Get the MAC address of the monitor interface.
MAC80211CSIExtractableNIC::getNICInstance
static std::shared_ptr< MAC80211CSIExtractableNIC > getNICInstance(const std::string &referredInterfaceName)
Get or create a NIC instance for the specified interface.
MAC80211CSIExtractableNIC::phyPath
std::string phyPath
Path to physical interface in system.
Definition
MAC80211CSIExtractableNIC.hxx:79
headers
MAC80211CSIExtractableNIC.hxx
Generated by
1.9.8