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"
11
12class MAC80211CSIExtractableNIC : virtual public AbstractNIC {
13
14public:
15 static std::shared_ptr<MAC80211CSIExtractableNIC> getNICInstance(const std::string &referredInterfaceName);
16
17 [[nodiscard]] const std::string &getDevId() const;
18
19 [[nodiscard]] const std::string &getMonId() const;
20
21 [[nodiscard]] uint16_t getPhyIdNumber() const;
22
23 [[nodiscard]] const std::string &getPhyPath() const;
24
25 [[nodiscard]] const std::array<uint8_t, 6> &getMacAddressMon() const;
26
27 [[nodiscard]] const std::array<uint8_t, 6> &getMacAddressDev() const;
28
29 [[nodiscard]] const std::shared_ptr<MAC80211CSIExtractableFrontEnd> &getMacFrontEnd() const;
30
31protected:
32 std::string devId;
33 std::string monId;
34 uint16_t phyIdNumber;
35 std::string phyPath;
36 std::shared_ptr<MAC80211CSIExtractableFrontEnd> macFrontEnd;
37
38 std::array<uint8_t, 6> macAddress_MON{};
39 std::array<uint8_t, 6> macAddress_DEV{};
40
42};
43
44
45#endif //PICOSCENES_PLATFORM_MAC80211CSIEXTRACTABLENIC_HXX
std::string referredInterfaceName
std::shared_ptr< MAC80211CSIExtractableFrontEnd > macFrontEnd
const std::shared_ptr< MAC80211CSIExtractableFrontEnd > & getMacFrontEnd() const
const std::array< uint8_t, 6 > & getMacAddressDev() const
const std::string & getDevId() const
std::array< uint8_t, 6 > macAddress_MON
const std::string & getPhyPath() const
MAC80211CSIExtractableNIC(const std::string &referredInterfaceName)
const std::string & getMonId() const
uint16_t getPhyIdNumber() const
std::array< uint8_t, 6 > macAddress_DEV
const std::array< uint8_t, 6 > & getMacAddressMon() const
static std::shared_ptr< MAC80211CSIExtractableNIC > getNICInstance(const std::string &referredInterfaceName)