|
| | IWL5300FrontEnd (const std::string &referredInterfaceName) |
| | Constructor for IWL5300 front-end.
|
| |
| int | startTx () override |
| | Start transmission service.
|
| |
| int | stopTx () override |
| | Stop transmission service.
|
| |
| int | startRx () override |
| | Start reception service.
|
| |
| int | stopRx () override |
| | Stop reception service.
|
| |
| int | transmit (const ModularPicoScenesTxFrame &frame) override |
| | Transmit a single frame.
|
| |
| int | transmitFramesInBatch (const std::vector< const ModularPicoScenesTxFrame * > &frames, uint32_t repeat) override |
| | Transmit multiple frames in batch mode.
|
| |
| int | transmitFramesInBatch (const std::vector< ModularPicoScenesTxFrame > &frames, uint32_t repeat) override |
| | Transmit multiple frames in batch mode (vector version)
|
| |
| | ~MAC80211InjectionOnlyFrontEnd () override |
| | Destructor.
|
| |
| const std::string & | getDevId () const |
| | Get device interface identifier.
|
| |
| const std::string & | getMonId () const |
| | Get monitor interface identifier.
|
| |
| uint16_t | getPhyIdNumber () const |
| | Get physical interface number.
|
| |
| const std::string & | getPhyPath () const |
| | Get physical interface path.
|
| |
| const std::array< uint8_t, 6 > & | getMacAddressMon () const |
| | Get monitor interface MAC address.
|
| |
| const std::array< uint8_t, 6 > & | getMacAddressDev () const |
| | Get device interface MAC address.
|
| |
| std::tuple< double, double, double > | getChannelAndBandwidth () override |
| | Get current channel and bandwidth configuration.
|
| |
| int | setChannelAndBandwidth (double control, double bw, double center) override |
| | Set channel and bandwidth configuration.
|
| |
| int | setChannelAndBandwidth (std::optional< double > control, std::optional< double > bw, std::optional< double > center) override |
| | Set channel and bandwidth with optional parameters.
|
| |
| double | getCarrierFrequency () override |
| | Get carrier frequency.
|
| |
| void | setCarrierFrequency (double carrierFrequency) override |
| | Set carrier frequency.
|
| |
| double | getSamplingRate () override |
| | Get sampling rate.
|
| |
| void | setSamplingRate (double samplingRate) override |
| | Set sampling rate.
|
| |
| double | getControlChannelFrequency () override |
| | Get control channel frequency.
|
| |
| void | setControlChannelFrequency (double controlFrequency) override |
| | Set control channel frequency.
|
| |
| double | getRxChannelBandwidth () override |
| | Get receive channel bandwidth.
|
| |
| void | setRxChannelBandwidth (double rxcbw) override |
| | Set receive channel bandwidth.
|
| |
| double | getTxpower () override |
| | Get transmit power.
|
| |
| void | setTxpower (double txpower) override |
| | Set transmit power.
|
| |
| double | getRxGain () override |
| | Get receive gain.
|
| |
| void | setRxGain (double rxGain) override |
| | Set receive gain.
|
| |
| void | setRxGain (double rxGain, uint8_t channel) override |
| | Set receive gain for specific channel.
|
| |
| uint8_t | getTxChainMask () override |
| | Get transmit chain mask.
|
| |
| void | setTxChainMask (uint8_t txChainMask) override |
| | Set transmit chain mask.
|
| |
| uint8_t | getRxChainMask () override |
| | Get receive chain mask.
|
| |
| void | setRxChainMask (uint8_t rxChainMask) override |
| | Set receive chain mask.
|
| |
| std::vector< size_t > | getTxChannels () override |
| | Get active transmit channels.
|
| |
| void | setTxChannels (const std::vector< size_t > &txChannels) override |
| | Set active transmit channels.
|
| |
| std::vector< size_t > | getRxChannels () override |
| | Get active receive channels.
|
| |
| void | setRxChannels (const std::vector< size_t > &rxChannels) override |
| | Set active receive channels.
|
| |
| uint16_t | getChannelFlags () override |
| | Get channel flags.
|
| |
| ExtraInfo | buildExtraInfo () override |
| | Build extra information about the frontend.
|
| |
| const std::vector< double > & | getSystemSupportedFrequencies () const |
| | Get system supported frequencies.
|
| |
| bool | isMAC80211SupportedCarrierFrequency (double frequency) const |
| | Check if frequency is supported by MAC80211.
|
| |
| void | printStatus () override |
| | Print current frontend status.
|
| |
| | AbstractFrontEnd (const std::string &referredInterfaceName) |
| | Create AbstractFrontEnd object according to the user-specified frontend name referredInterfaceName.
|
| |
| virtual bool | isTxServiceStarted () const |
| | Returns whether Tx service is started.
|
| |
| virtual int | pauseTx () |
| | Pause Tx service loop.
|
| |
| virtual int | resumeTx () |
| | Resume Tx service loop.
|
| |
| template<int repeat = 1, typename ... Frames, typename = std::enable_if_t<(std::is_same_v<std::remove_cvref_t<Frames>, ModularPicoScenesTxFrame *> &&...) || (std::is_same_v<std::remove_cvref_t<Frames>, ModularPicoScenesTxFrame> &&...) || ((std::is_same_v<std::remove_cvref_t<Frames>, std::shared_ptr<ModularPicoScenesTxFrame>> || std::is_same_v<std::remove_cvref_t<Frames>, std::unique_ptr<ModularPicoScenesTxFrame>>) &&...)>> |
| int | transmitFramesInBatch (Frames &&... frames) |
| |
| virtual int | pauseRx () |
| | Pause the Rx service loop, set rxPaused to true.
|
| |
| virtual int | resumeRx () |
| | Resuase the paused Rx service loop, set rxPaused to false.
|
| |
| void | registerRxHandle (const std::function< void(const ModularPicoScenesRxFrame &)> &rxHandle) |
| | Register a handler for the received ModularPicoScenesRxFrame frames.
|
| |
| const std::string & | getReferredInterfaceName () const |
| | Get the user-specified frontend name.
|
| |
| void | setReferredInterfaceName (const std::string &name) |
| | Set the user-specified frontend name.
|
| |
| const std::string & | getPhyId () const |
| | Return the PhyId for NIC frontend. This is a undefined behavior for SDR frontend.
|
| |
| PicoScenesDeviceType | getFrontEndType () const |
| | Return the PicoScenesDeviceType of this frontend.
|
| |
| PicoScenesDeviceSubtype | getFrontEndSubtype () const |
| | Return the PicoScenesDeviceType subtype of this frontend.
|
| |
| const std::array< uint8_t, 6 > & | getMacAddressPhy () const |
| | Return the MAC address of this frontend. For SDR frontend, this method should generate a pseudo-MAC address.
|
| |
| PicoScenesFrameTxParameters & | getUserSpecifiedTxParameters () |
| |
| ModularPicoScenesTxFrame | initializeTxFrame () override |
| |
| virtual | ~AbstractFrontEnd ()=default |
| |
| virtual | ~FrontEndConfigurations ()=default |
| |
| virtual bool | isHardwareSupportedPreset (const std::string &presetName)=0 |
| | Check if a preset configuration is supported by the hardware.
|
| |
| virtual void | applyPreset (const std::string &presetName, bool skipChangeRate=false)=0 |
| | Apply a preset configuration to the frontend hardware.
|
| |
| void | setNumTxChannels (const uint8_t numTxChannels) |
| | Set the number of Tx channels, the active channels start from 0.
|
| |
| void | setNumRxChannels (const uint8_t numRxChannels) |
| | Set the number of Rx channels, the active channels start from 0.
|
| |
| std::vector< size_t > | getAllChannels () |
| |
| virtual void | setSourceMACAddressFilter (const std::vector< std::array< uint8_t, 6 > > &addresses) |
| | Set the SOURCE addresses that will be blocked by the frontend.
|
| |
| virtual void | setDestinationMACAddressFilter (const std::vector< std::array< uint8_t, 6 > > &addresses) |
| | Set the DESTINATION addresses that will be blocked by the frontend.
|
| |
| virtual uint16_t | getAndIncreasePerFrontEndTxFrameSequenceNumber () |
| |
|
| | MAC80211InjectionOnlyFrontEnd (const std::string &referredName) |
| | Protected constructor.
|
| |
| std::string | devId |
| | Device interface identifier.
|
| |
| std::string | monId |
| | Monitor interface identifier.
|
| |
| uint16_t | phyIdNumber = 0 |
| | Physical interface number.
|
| |
| std::string | phyPath |
| | Path to physical interface.
|
| |
| std::shared_ptr< uint8_t > | txContext |
| | Transmission context.
|
| |
| std::array< uint8_t, 6 > | macAddress_MON {0, 0, 0, 0, 0, 0} |
| | Monitor interface MAC address.
|
| |
| std::array< uint8_t, 6 > | macAddress_DEV {0, 0, 0, 0, 0, 0} |
| | Device interface MAC address.
|
| |
| std::vector< double > | systemSupportedFrequencies |
| | List of supported frequencies.
|
| |
| std::string | referredInterfaceName |
| | the user specified frontend name
|
| |
| std::string | phyId |
| | phyId
|
| |
| std::array< uint8_t, 6 > | macAddress_PHY {0, 0, 0, 0, 0, 0} |
| | macAddress of the frontend
|
| |
| PicoScenesDeviceType | frontEndType = PicoScenesDeviceType::Unknown |
| | frontend type
|
| |
| PicoScenesDeviceSubtype | frontEndSubtype = PicoScenesDeviceSubtype::Unknown |
| | frontend subtype
|
| |
| bool | txServiceStarted = false |
| | indicate whether Tx service is running
|
| |
| PicoScenesFrameTxParameters | userSpecifiedTxParameters |
| | user-specified Tx parameters
|
| |
| std::mutex | txPauseMutex |
| |
| std::condition_variable | txPauseCV |
| |
| bool | txPaused = false |
| | indicate whether Tx serivce is paused
|
| |
| std::function< void(const ModularPicoScenesRxFrame &)> | rxHandle = nullptr |
| | The Rx frame handler.
|
| |
| bool | rxPaused = false |
| | indicate whether Rx service loop is paused
|
| |
| bool | rxServiceStarted = false |
| | indicate whether Rx service loop is running
|
| |
| std::vector< std::array< uint8_t, 6 > > | sourceAddressFilterList |
| | the source addresses to be filtered
|
| |
| std::vector< std::array< uint8_t, 6 > > | destinationAddressFilterList |
| | the destination addressed to be filtered
|
| |
| uint16_t | currentTxSequenceNumber {0} |
| | current Tx sequence number
|
| |