SatDump 2.0.0-alpha-520736c72
Loading...
Searching...
No Matches
antenna::GenericAntenna Class Referenceabstract

Parent class for antenna objects. More...

#include <generic.h>

Inheritance diagram for antenna::GenericAntenna:
antenna::DipoleAntenna antenna::HelixAntenna antenna::ParabolicReflectorAntenna antenna::QuadrifilarHelixAntenna

Public Types

enum  antenna_t {
  YAGI , HELIX , PARABOLIC_REFLECTOR , CANTED_TURNSTYLE ,
  CUSTOM , MONOPOLE , DIPOLE , QUADRIFILAR_HELIX
}

Public Member Functions

int unique_id ()
double get_frequency ()
 Get the frequency of the antenna.
void set_pointing_error (double error)
 Set the pointing error of the antenna.
double get_pointing_error ()
 Get the pointing error of the antenna.
int get_polarization ()
 Get the polarization of the antenna.
double get_wavelength ()
 Get the wavelength of the antenna.
virtual double get_gain ()=0
 Get the gain of the antenna. This pure virtual function MUST be implemented by every derived class.
virtual double get_beamwidth ()=0
 Get the beamwidth of the antenna. This pure virtual function MUST be implemented by every derived class.
virtual double get_gain_rolloff ()=0
 Get the the gain roll-off of the antenna.
 GenericAntenna (uint8_t type, double frequency, int polarization, double pointing_error)
 The constructor of generic_antenna class.

Public Attributes

uint8_t d_type
double d_frequency
double d_pointing_error
int d_polarization
int my_id

Static Public Attributes

static int base_unique_id = 1

Detailed Description

Parent class for antenna objects.

Parent of an antenna class that will simulate different types of antennas.

Member Enumeration Documentation

◆ antenna_t

The enumeration that defines the type of the antenna

Constructor & Destructor Documentation

◆ GenericAntenna()

antenna::GenericAntenna::GenericAntenna ( uint8_t type,
double frequency,
int polarization,
double pointing_error )

The constructor of generic_antenna class.

Parameters
typeThe enumeration that defines the type of the antenna
frequencyThe frequency of the antenna in Hz
polarizationThe enumeration that defines the antenna polarization
Returns
a std::shared_ptr to the constructed tracker object.

Member Function Documentation

◆ get_beamwidth()

virtual double antenna::GenericAntenna::get_beamwidth ( )
pure virtual

Get the beamwidth of the antenna. This pure virtual function MUST be implemented by every derived class.

Returns
the beamwidth in degrees.

Implemented in antenna::DipoleAntenna, antenna::HelixAntenna, antenna::ParabolicReflectorAntenna, and antenna::QuadrifilarHelixAntenna.

◆ get_frequency()

double antenna::GenericAntenna::get_frequency ( )

Get the frequency of the antenna.

Returns
the frequency in Hz.

◆ get_gain()

virtual double antenna::GenericAntenna::get_gain ( )
pure virtual

Get the gain of the antenna. This pure virtual function MUST be implemented by every derived class.

Returns
the gain in dBiC.

Implemented in antenna::DipoleAntenna, antenna::HelixAntenna, antenna::ParabolicReflectorAntenna, and antenna::QuadrifilarHelixAntenna.

◆ get_gain_rolloff()

virtual double antenna::GenericAntenna::get_gain_rolloff ( )
pure virtual

Get the the gain roll-off of the antenna.

Returns
the gain roll-off in dB.

Implemented in antenna::DipoleAntenna, antenna::HelixAntenna, antenna::ParabolicReflectorAntenna, and antenna::QuadrifilarHelixAntenna.

◆ get_pointing_error()

double antenna::GenericAntenna::get_pointing_error ( )

Get the pointing error of the antenna.

Returns
the pointing error in degrees.

◆ get_polarization()

int antenna::GenericAntenna::get_polarization ( )

Get the polarization of the antenna.

Returns
the gr::leo::generic_antenna::Polarization enum.

◆ get_wavelength()

double antenna::GenericAntenna::get_wavelength ( )

Get the wavelength of the antenna.

Returns
the wavelength in meters.

◆ set_pointing_error()

void antenna::GenericAntenna::set_pointing_error ( double error)

Set the pointing error of the antenna.

Parameters
errorthe pointing error in degrees.

The documentation for this class was generated from the following files:
  • src-core/dsp/channel_model/model/antenna/generic.h
  • src-core/dsp/channel_model/model/antenna/generic.cpp