23 #include <ns3/double.h> 40 static TypeId tid =
TypeId (
"ns3::ParabolicAntennaModel")
42 .SetGroupName(
"Antenna")
44 .AddAttribute (
"Beamwidth",
45 "The 3dB beamwidth (degrees)",
49 MakeDoubleChecker<double> (0, 180))
50 .AddAttribute (
"Orientation",
51 "The angle (degrees) that expresses the orientation of the antenna on the x-y plane relative to the x axis",
55 MakeDoubleChecker<double> (-360, 360))
56 .AddAttribute (
"MaxAttenuation",
57 "The maximum attenuation (dB) of the antenna radiation pattern.",
60 MakeDoubleChecker<double> ())
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
void SetOrientation(double orientationDegrees)
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
double DegreesToRadians(double degrees)
converts degrees to radians
Class holding the azimuth and inclination angles of spherical coordinates.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
double m_orientationRadians
void SetBeamwidth(double beamwidthDegrees)
virtual double GetGainDb(Angles a)
this method is expected to be re-implemented by each antenna model
double GetAzimuth(void) const
Getter for azimuth angle.
static TypeId GetTypeId()
#define NS_LOG_LOGIC(msg)
Use NS_LOG to output a message of level LOG_LOGIC.
Antenna model based on a parabolic approximation of the main lobe radiation pattern.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
double RadiansToDegrees(double radians)
converts radians to degrees
Ptr< const AttributeAccessor > MakeDoubleAccessor(T1 a1)
Create an AttributeAccessor for a class data member, or a lone class get functor or set method...
double GetBeamwidth() const
This class can be used to hold variables of floating point type such as 'double' or 'float'...
double m_beamwidthRadians
interface for antenna radiation pattern models
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
double GetOrientation() const