OLD | NEW |
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2012 CTTC | 3 * Copyright (c) 2012 CTTC |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 10 matching lines...) Expand all Loading... |
21 #ifndef PARABOLIC_ANTENNA_MODEL_H | 21 #ifndef PARABOLIC_ANTENNA_MODEL_H |
22 #define PARABOLIC_ANTENNA_MODEL_H | 22 #define PARABOLIC_ANTENNA_MODEL_H |
23 | 23 |
24 | 24 |
25 #include <ns3/object.h> | 25 #include <ns3/object.h> |
26 #include <ns3/antenna-model.h> | 26 #include <ns3/antenna-model.h> |
27 | 27 |
28 namespace ns3 { | 28 namespace ns3 { |
29 | 29 |
30 /** | 30 /** |
31 *· | 31 * \ingroup antenna |
32 * \brief Antenna model based on a parabolic approximation of the main lobe rad
iation pattern. | 32 * |
| 33 * \brief Antenna model based on a parabolic approximation of the main lobe radi
ation pattern. |
33 * | 34 * |
34 * This class implements the parabolic model as described in some 3GPP document,
e.g., R4-092042 | 35 * This class implements the parabolic model as described in some 3GPP document,
e.g., R4-092042 |
35 * | 36 * |
36 * A similar model appears in | 37 * A similar model appears in |
37 * | 38 * |
38 * George Calcev and Matt Dillon, "Antenna Tilt Control in CDMA Networks" | 39 * George Calcev and Matt Dillon, "Antenna Tilt Control in CDMA Networks" |
39 * in Proc. of the 2nd Annual International Wireless Internet Conference (WICON)
, 2006 | 40 * in Proc. of the 2nd Annual International Wireless Internet Conference (WICON)
, 2006 |
40 * | 41 * |
41 * though the latter addresses also the elevation plane, which the present model
doesn't. | 42 * though the latter addresses also the elevation plane, which the present model
doesn't. |
42 * | 43 * |
43 * | 44 * |
44 */ | 45 */ |
45 class ParabolicAntennaModel : public AntennaModel | 46 class ParabolicAntennaModel : public AntennaModel |
46 { | 47 { |
47 public: | 48 public: |
48 | 49 /** |
49 // inherited from Object | 50 * \brief Get the type ID. |
| 51 * \return the object TypeId |
| 52 */ |
50 static TypeId GetTypeId (); | 53 static TypeId GetTypeId (); |
51 | 54 |
52 // inherited from AntennaModel | 55 // inherited from AntennaModel |
53 virtual double GetGainDb (Angles a); | 56 virtual double GetGainDb (Angles a); |
54 | 57 |
55 | 58 |
56 // attribute getters/setters | 59 /** |
| 60 * \brief Set the antenna beam width |
| 61 * \param beamwidthDegrees is the beam width in degrees |
| 62 */ |
57 void SetBeamwidth (double beamwidthDegrees); | 63 void SetBeamwidth (double beamwidthDegrees); |
| 64 /** |
| 65 * \brief Get the antenna beam width |
| 66 * \return is the beam width in degrees |
| 67 */ |
58 double GetBeamwidth () const; | 68 double GetBeamwidth () const; |
| 69 /** |
| 70 * \brief Set the antenna orientation |
| 71 * \param orientationDegrees is the orientation in degrees |
| 72 */ |
59 void SetOrientation (double orientationDegrees); | 73 void SetOrientation (double orientationDegrees); |
| 74 /** |
| 75 * \brief Set the antenna orientation |
| 76 * \return is the orientation in degrees |
| 77 */ |
60 double GetOrientation () const; | 78 double GetOrientation () const; |
61 | 79 |
62 private: | 80 private: |
63 | 81 /** |
| 82 * the beam width of the antenna in radians |
| 83 * |
| 84 */ |
64 double m_beamwidthRadians; | 85 double m_beamwidthRadians; |
65 | 86 |
| 87 /** |
| 88 * the orientation of the antenna in radians |
| 89 * |
| 90 */ |
66 double m_orientationRadians; | 91 double m_orientationRadians; |
67 | 92 |
| 93 /** |
| 94 * the maximum attenuation of the antenna in dB |
| 95 * |
| 96 */ |
68 double m_maxAttenuation; | 97 double m_maxAttenuation; |
69 }; | 98 }; |
70 | 99 |
71 | 100 |
72 | 101 |
73 } // namespace ns3 | 102 } // namespace ns3 |
74 | 103 |
75 | 104 |
76 #endif // PARABOLIC_ANTENNA_MODEL_H | 105 #endif // PARABOLIC_ANTENNA_MODEL_H |
OLD | NEW |