📄 wireless_channel.hpp
字号:
#ifndef WIRELESS_CHANNEL_H #define WIRELESS_CHANNEL_H #include <boost/shared_ptr.hpp> #include "channel.hpp" class PathLoss; typedef boost::shared_ptr<PathLoss> PathLossPtr; class Fading; typedef boost::shared_ptr<Fading> FadingPtr; class WirelessCommSignal; typedef boost::shared_ptr<WirelessCommSignal> WirelessCommSignalPtr; class WirelessChannel : public Channel { public: typedef boost::shared_ptr<WirelessChannel> WirelessChannelPtr; static inline WirelessChannelPtr create(PathLossPtr pathLossModel); static inline WirelessChannelPtr create(PathLossPtr pathLossModel, FadingPtr fadingModel); virtual double getRecvdStrength(const WirelessCommSignal& signal, const PhysicalLayer& receiver) const; virtual bool signalHasError(double signalSinr, const WirelessCommSignal& signal) const; protected: WirelessChannel(PathLossPtr pathLossModel); WirelessChannel(PathLossPtr pathLossModel, FadingPtr fadingModel); private: static const bool m_DEBUG_SIGNAL_STRENGTH = false; PathLossPtr m_pathLossModel; FadingPtr m_fadingModel; }; typedef boost::shared_ptr<WirelessChannel> WirelessChannelPtr; // Inline Functions inline WirelessChannelPtr WirelessChannel::create( PathLossPtr pathLossModel) { WirelessChannelPtr p(new WirelessChannel(pathLossModel)); return p; } inline WirelessChannelPtr WirelessChannel::create( PathLossPtr pathLossModel, FadingPtr fadingModel) { WirelessChannelPtr p(new WirelessChannel(pathLossModel, fadingModel)); return p; } // Overloaded Operators #endif // WIRELESS_CHANNEL_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -