20 #ifndef _SATELLITE_HPP_ 21 #define _SATELLITE_HPP_ 1 26 #include <QSharedPointer> 28 #include <QStringList> 31 #include "StelObject.hpp" 34 #include "gSatWrapper.hpp" 52 SatIdRole = Qt::UserRole,
70 SatNotDisplayed = 0x2,
76 typedef QFlags<SatFlag> SatFlags;
77 Q_DECLARE_OPERATORS_FOR_FLAGS(SatFlags)
81 Q_DECLARE_METATYPE(SatFlags)
102 StatusOperational = 1,
103 StatusNonoperational = 2,
104 StatusPartiallyOperational = 3,
107 StatusExtendedMission = 6,
115 Satellite(
const QString& identifier,
const QVariantMap& data);
174 void update(
double deltaTime);
176 double getDoppler(
double freq)
const;
177 static float showLabels;
178 static double roundToDp(
float n,
int dp);
181 void recalculateOrbitLines(
void);
183 void setNew() {newlyAdded =
true;}
184 bool isNew()
const {
return newlyAdded;}
189 void setFlags(
const SatFlags& flags);
207 void computeOrbitPoints();
211 float calculateOrbitSegmentIntensity(
int segNum);
239 QString internationalDesignator;
244 double jdLaunchYearJan1;
251 QPair< QByteArray, QByteArray > tleElements;
252 double height, range, rangeRate;
253 QList<CommLink> comms;
258 QDateTime lastUpdated;
262 static float hintBrightness;
263 static float hintScale;
264 static int orbitLineSegments;
265 static int orbitLineFadeSegments;
266 static int orbitLineSegmentDuration;
267 static bool orbitLinesFlag;
268 static bool realisticModeFlag;
271 static Vec3f invisibleSatelliteColor;
279 Vec3d latLongSubPointPosition;
282 #ifdef IRIDIUM_SAT_TEXT_DEBUG 283 static QString myText;
288 static double sunReflAngle;
289 static double timeShift;
294 double lastEpochCompForOrbit;
296 QList<Vec3d> orbitPoints;
297 QList<int> visibilityPoints;
300 typedef QSharedPointer<Satellite> SatelliteP;
301 bool operator<(
const SatelliteP& left,
const SatelliteP& right);
303 #endif // _SATELLITE_HPP_ Main configuration window of the Satellites plugin.
virtual Vec3f getInfoColor(void) const
Get a color used to display info about the object.
Store the informations for a location on a planet.
virtual QString getInfoString(const StelCore *core, const InfoStringGroup &flags) const
Get an HTML string to describe the object.
Wrapper allowing compatibility between gsat and Stellarium/Qt.
QString description
Channel description.
The base abstract class for sky objects used in Stellarium like Stars, Planets, Constellations etc...
Define the StelTextureSP type.
QString modulation
Signal modulation mode.
QString getOperationalStatus() const
Get operational status of satellite.
OptStatus
operational statuses
A SphericalCap is defined by a direction and an aperture.
Satellite(const QString &identifier, const QVariantMap &data)
virtual QString getType(void) const
Return object's type. It should be the name of the class.
Main class for Stellarium core processing.
SatFlag
Flag type reflecting internal flags of Satellite.
SatFlags getFlags()
Get internal flags as a single value.
virtual Vec3d getJ2000EquatorialPos(const StelCore *) const
Get observer-centered equatorial coordinates at equinox J2000.
float calculateIlluminatedFraction() const
Calculation of illuminated fraction of the satellite.
virtual float getSelectPriority(const StelCore *core) const
Return a priority value which is used to discriminate objects by priority As for magnitudes, the lower is the higher priority.
void setNewTleElements(const QString &tle1, const QString &tle2)
Set new tleElements.
InfoStringGroupFlags
Used as named bitfield flags as specifiers to filter results of getInfoString.
Radio communication channel properties.
double frequency
Channel frequency in MHz.
SatelliteDataRole
Description of the data roles used in SatellitesListModel.
Provides functions for performing openGL drawing operations.
void setFlags(const SatFlags &flags)
Sets the internal flags in one operation (only display flags)!
QSet< QString > GroupSet
Type for sets of satellite group IDs.
virtual QString getNameI18n(void) const
Return translated object's name.
void parseInternationalDesignator(const QString &tle1)
Parse TLE line to extract International Designator and launch year.
Main class of the Satellites plugin.
bool operator<(const Satellite &another) const
Needed for sorting lists (if this ever happens...).
QVariantMap getMap(void)
Get a QVariantMap which describes the satellite.
A representation of a satellite in Earth orbit.
A templatized 3d vector compatible with openGL.
virtual QString getEnglishName(void) const
Return object's name in english.
A model encapsulating a satellite list.
QSharedPointer< StelTexture > StelTextureSP
Use shared pointer to simplify memory managment.
virtual double getAngularSize(const StelCore *core) const
Return the angular radius of a circle containing the object as seen from the observer with the circle...
virtual QVariantMap getInfoMap(const StelCore *core) const
Return a map like StelObject::getInfoMap(), but with a few extra tags also available in getInfoString...
Define all SphericalGeometry primitives as well as the SphericalRegionP type.
virtual float getVMagnitude(const StelCore *core) const
Return object's apparent V magnitude as seen from observer, without including extinction.
QString getCatalogNumberString() const
Returns the (NORAD) catalog number. (For now, the ID string.)