ISCE_INSAR/components/zerodop/GPUgeo2rdr/include/Orbit.h

35 lines
922 B
C

//
// Author: Joshua Cohen
// Copyright 2016
//
#ifndef ORBIT_H
#define ORBIT_H
struct Orbit {
int nVectors;
int basis;
double *position;
double *velocity;
double *UTCtime;
Orbit();
Orbit(const Orbit&);
~Orbit();
void setOrbit(int,int);
void setOrbit(const char*,int);
void getPositionVelocity(double,double[3],double[3]);
void setStateVector(int,double,double[3],double[3]);
void getStateVector(int,double&,double[3],double[3]);
int interpolateOrbit(double,double[3],double[3],int);
int interpolateSCHOrbit(double,double[3],double[3]);
int interpolateWGS84Orbit(double,double[3],double[3]);
int interpolateLegendreOrbit(double,double[3],double[3]);
int computeAcceleration(double,double[3]);
void orbitHermite(double[4][3],double[4][3],double[3],double,double[3],double[3]);
void dumpToHDR(const char*);
void printOrbit();
};
#endif