This file is indexed.

/usr/include/astro/planetarySats.h is in libastro-dev 4:4.14.2-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
//
// This file is part of the Marble Virtual Globe.
//
// This program is free software licensed under the GNU LGPL. You can
// find a copy of this license in LICENSE.txt in the top directory of
// the source code.
//
// Copyright 2012 Gerhard HOLTKAMP
//

#if !defined(__planetarysats_h)
#define __planetarysats_h

#include "attlib.h"
#include "astrolib_export.h"

class ASTROLIB_EXPORT PlanetarySats     // Calculate spacecraft around other planets
{
  public:
    PlanetarySats();
    ~PlanetarySats();

    void setStepWidth(double s);  // set the step width (seconds)
    void setDeltaTAI_UTC(double d);  // set IERS Parameter TAI - UTC
    void setAutoTAI_UTC();  // IERS Parameter TAI - UTC to auto
    void getTime ();  // Get System Time and Date
    void setDeltaRT(double drt);
    void setMJD(int year, int month, int day, int hour, int min, double sec);// set time
    static void getDatefromMJD(double mjd, int &year, int &month, int &day, int &hour, int &min, double &sec);
    void setSatFile(char* fname);
    void setPlanet(char* pname);
    int selectSat(char* sname);
    void getSatName(char* sname) const;
    void setStateVector(double mjd, double x, double y, double z, double vx, double vy, double vz);
    int getStateVector(int nsat);
    void stateToKepler();
    void getKeplerElements(double &perc, double &apoc, double &inc, double &ecc, double &ra, double &tano, double &m0, double &a, double &n0);
    void getPlanetographic(double &lng, double &lat, double &height) const;
    void getFixedFrame(double &x, double &y, double &z, double &vx, double &vy, double &vz);
    void currentPos();
    void nextStep();
    double getLastMJD() const;

  private:  
    void plsatinit();  // initialize PlanetarySats
    static double atan23 (double y, double x);  // atan without singularity for x,y=0
    void getMercury();
    void getVenus();
    void getMoon();
    void getMars();
    void getSatPos (double t);
    static Mat3 getSelenographic (double jd);

   // data fields
      
      char pls_satelmfl[205];  // name of file for satellite state vectors
      char pls_satname[40];  // name of satellite
      char pls_plntname[40]; // name of planet

      bool pls_moonflg;  // true if Moon, false if other body

      int pls_day;           // date
      int pls_month;
      int pls_year;
      int pls_hour;
      int pls_minute;
      int pls_second;
      double pls_time;     // current time in MJD (UTC)
      double pls_del_tdut;   // TDT - UT in sec
      int pls_del_auto;      // 1 = automatic del_tdut,  0 = manual
      double pls_step;       // stepwidth in sec
      double pls_delta_rt;   // delta time to R/T in hours
      
      double pls_tepoch;  // MJD epoch of state vector (TT)
      Vec3 pls_rep;  // state vector km and km/s
      Vec3 pls_vep;
      
      double pls_ra; // Right Ascension
      double pls_per; // argument of perige center
      double pls_m0;  // mean anomaly
      double pls_ecc; // eccentricity
      double pls_inc; // inclination
      double pls_a;  // semi-major axis (km)
      double pls_n0;  // mean motion  (rev/day)
      
      double pls_GM;  // graviatational constant (m^3/s^2)
      double pls_J2;  // J2 gravitational term
      double pls_R0; // equatorial radius (km)
      double pls_flat;  // flattening factor
      double pls_axl0;  // l-direction of rotation axis
      double pls_axl1;  // delta of axl0
      double pls_axb0;  // b-direction of rotation axis
      double pls_axb1;  // delta of axb0
      double pls_W;    // location of prime meridian
      double pls_Wd;   // daily variation of W.

      Vec3 pls_r;  // current state vector  m and m/s
      Vec3 pls_v;     
      double pls_lat;  // planetary latitude (decimal degrees)
      double pls_lng;  // planetary longitude (decimal degrees)
      double pls_height; // height above reference ellipsoid (km)    
};

#endif         // __planetarysats_h sentry.