5#ifndef PICOSCENES_PLATFORM_ABSTRACTPICOSCENESPLUGIN_HXX
6#define PICOSCENES_PLATFORM_ABSTRACTPICOSCENESPLUGIN_HXX
10#include "ModularPicoScenesFrame.hxx"
12namespace pos = boost::program_options::command_line_style;
26 return std::vector{PicoScenesDeviceType::USRP, PicoScenesDeviceType::QCA9300, PicoScenesDeviceType::IWL5300, PicoScenesDeviceType::MAC80211Compatible};
35 virtual void rxHandle(
const ModularPicoScenesRxFrame &rxs) {}
41 void setNIC(
const std::shared_ptr<AbstractNIC> &nicV) {
50 std::shared_ptr<AbstractNIC>
nic;
virtual void parseAndExecuteCommands(const std::string &commandString)
virtual std::string getPluginName()=0
virtual std::string getPluginDescription()=0
virtual void rxHandle(const ModularPicoScenesRxFrame &rxs)
virtual std::shared_ptr< po::options_description > pluginOptionsDescription()
void setNIC(const std::shared_ptr< AbstractNIC > &nicV)
virtual std::string pluginStatus()=0
virtual std::vector< PicoScenesDeviceType > getSupportedDeviceTypes()
virtual ~AbstractPicoScenesPlugin()=default
std::shared_ptr< AbstractNIC > nic
virtual void initialization()