SatDump 2.0.0-alpha-520736c72
Loading...
Searching...
No Matches
generic.h
1#pragma once
2
3#include <cstdint>
4
5namespace antenna
6{
16 {
17 public:
18 static int base_unique_id;
19
24 {
25 YAGI,
26 HELIX,
27 PARABOLIC_REFLECTOR,
28 CANTED_TURNSTYLE,
29 CUSTOM,
30 MONOPOLE,
31 DIPOLE,
32 QUADRIFILAR_HELIX
33 };
34
35 uint8_t d_type;
36
37 double d_frequency;
38 double d_pointing_error;
39
40 int d_polarization;
41 int my_id;
42
43 int unique_id();
44
49 double get_frequency();
50
55 void set_pointing_error(double error);
56
61 double get_pointing_error();
62
67 int get_polarization();
68
73 double get_wavelength();
74
80 virtual double get_gain() = 0;
81
87 virtual double get_beamwidth() = 0;
88
93 virtual double get_gain_rolloff() = 0;
94
95 virtual ~GenericAntenna();
96
107 GenericAntenna(uint8_t type, double frequency, int polarization, double pointing_error);
108
109 GenericAntenna(void) {};
110 };
111} // namespace antenna
virtual double get_gain_rolloff()=0
Get the the gain roll-off of the antenna.
void set_pointing_error(double error)
Set the pointing error of the antenna.
Definition generic.cpp:19
antenna_t
Definition generic.h:24
double get_pointing_error()
Get the pointing error of the antenna.
Definition generic.cpp:17
double get_wavelength()
Get the wavelength of the antenna.
Definition generic.cpp:21
GenericAntenna(uint8_t type, double frequency, int polarization, double pointing_error)
The constructor of generic_antenna class.
Definition generic.cpp:7
virtual double get_gain()=0
Get the gain of the antenna. This pure virtual function MUST be implemented by every derived class.
double get_frequency()
Get the frequency of the antenna.
Definition generic.cpp:15
int get_polarization()
Get the polarization of the antenna.
Definition generic.cpp:23
virtual double get_beamwidth()=0
Get the beamwidth of the antenna. This pure virtual function MUST be implemented by every derived cla...