| Earth Observation Mission CFI Software Pointing Software User Manual |

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

# C:/Jenkins/workspace/CPP_create_documentation/slaves/windows8/lib_src/Pointing/include/Target.h

    00001 //--------------------------------------------------------
    00002 // Earth Observation Mission CFI Software. Version 4.11
    00003 //--------------------------------------------------------
    00004
    00005 //--------------------------------------------------------------------
    00006 // CVS Info: $Id: Target.h,v 1.17 2014-02-20 20:02:34 cavm Exp $
    00007 //--------------------------------------------------------------------
    00008
    00009 #ifndef _TARGET_H
    00010 #define _TARGET_H
    00011
    00012 //--INCLUDE-----------------------------------------------------------
    00013 #include <vector>
    00014 #include <string>
    00015
    00016 #include "PointingData.h"
    00017 #include "CfiError.h"
    00018 #include "CfiId.h"
    00019 #include "TimeCorrelation.h"
    00020 #include "Attitude.h"
    00021 #include "SatId.h"
    00022 #include "AtmosId.h"
    00023 #include "DemId.h"
    00024
    00025 //--NAMESPACES--------------------------------------------------------
    00026 using namespace std;
    00027
    00028 namespace EECFI
    00029 {
    00030
    00034   class XP_DECL Target: public CfiId
    00035   {
    00036     public:
    00037
    00038       long numUserTarget;
    00039       long numLosTarget;
    00040
    00042       Target( const Attitude &attitude, const DemId &demId, const AtmosId &atmosId ) throw (CfiError);
    00043
    00045       ~Target() throw (CfiError);
    00046
    00050       void targetInter( const SatId &satId, long deriv, long interFlag, double losAz,
    00051                         double losEl, double geodAlt, double losAzRate, double losElRate,
    00052                         long iray, double freq ) throw (CfiError);
    00053
    00056       void targetTravelTime( const SatId &satId, long deriv, double losAz,
    00057                              double losEl, double travelTime, double losAzRate, double losElRate,
    00058                              double travelTimeRate, long iray, double freq ) throw (CfiError);
    00059
    00063       void targetGroundRange( const SatId &satId, long deriv, double losAz,
    00064                               double losEl, double geodAlt, double distance,
    00065                               double losAzRate, double losElRate ) throw (CfiError);
    00066
    00072      void targetIncidenceAngle( const SatId &satId, long deriv, double losAz,
    00073                                 double incidenceAngle, double geodAlt,
    00074                                 double losAzRate ) throw (CfiError);
    00075
    00080       void targetRange( const SatId &satId, long deriv, double losAz,
    00081                         double range, double geodAlt,
    00082                         double losAzRate, double rangeRate ) throw (CfiError);
    00083
    00087       void targetRangeRate( const SatId &satId, long deriv, double efRangeRate,
    00088                         double range, double geodAlt,
    00089                         double efRangeRateRate, double rangeRate ) throw (CfiError);
    00090
    00094       void targetTangent( const SatId &satId, long deriv, double losAz,
    00095                           double losEl, double losAzRate, double losElRate,
    00096                           long iray, double freq ) throw (CfiError);
    00097
    00102       void targetAltitude( const SatId &satId, long deriv, double losAz,
    00103                            double geodAlt, double losAzRate,
    00104                            long iray, double freq ) throw (CfiError);
    00105
    00109       void targetStar( const SatId &satId, long deriv, double starRa,
    00110                        double starDec, double starRaRate, double starDecRate,
    00111                        long iray, double freq ) throw (CfiError);
    00112
    00118       void targetTangentSun( const SatId &satId, long deriv,
    00119                              long iray, double freq ) throw (CfiError);
    00120
    00123       void targetTangentMoon( const SatId &satId, long deriv,
    00124                               long iray, double freq ) throw (CfiError);
    00125
    00128       void targetStation( const SatId &satId, long deriv, double geocLong,
    00129                           double geodLat, double geodAlt, double minLinkEl ) throw (CfiError);
    00130
    00134       void targetDRS( const SatId &satId, long deriv,
    00135                       double drsPos[3], double drsVel[3] ) throw (CfiError);
    00136
    00139       void targetGeneric( const SatId &satId, long deriv,
    00140                           double targPos[3], double targVel[3], double targAcc[3] ) throw (CfiError);
    00141
    00145       void targetReflected( const SatId &satId,
    00146                             long deriv, double geodAlt, double deflectionNorth,
    00147                             double deflectionEast, long sourceType,
    00148                             vector<double> &sourceParam ) throw (CfiError);
    00149
    00151       void targetSc( const SatId &satId1, const SatId &satId2, const Attitude &att2,
    00152                      long deriv ) throw (CfiError); // Added for AN-353
    00153
    00157       void multiTargetInter( const SatId &satId, long deriv, long interFlag, double losAz,
    00158                              double losEl, long numTarget, vector<double> &geodAlt, double losAzRate,
    00159                              double losElRate, long iray, double freq ) throw (CfiError);
    00160
    00163       void multiTargetTravelTime( const SatId &satId, long deriv, double losAz,
    00164                              double losEl, long numTarget, vector<double> &travelTime,
    00165                              double losAzRate, double losElRate, double travelTimeRate,
    00166                              long iray, double freq ) throw (CfiError);
    00167
    00173       void targetListInter( const SatId &satId, long deriv, long interFlag,
    00174                             const InstrumentData &instrData, double geodAlt,
    00175                             TargetOutput &targOut ) throw (CfiError);
    00176
    00188       void extraVector( long choice, long targetType, long targetNumber,
    00189                         vector<double> &vectorResult, vector<double> &vectorResultRate,
    00190                         vector<double> &vectorResultRateRate) throw (CfiError);
    00191
    00201       void extraMain( long choice, long targetType, long targetNumber,
    00202                       vector<double> &mainResult, vector<double> &mainResultRate,
    00203                       vector<double> &mainResultRateRate ) throw (CfiError);
    00204
    00214       void extraAux( long choice, long targetType, long targetNumber,
    00215                       vector<double> &extraResult, vector<double> &extraResultRate,
    00216                       vector<double> &extraResultRateRate ) throw (CfiError);
    00217
    00231       void extraTargetToSun( long choice, long targetType, long targetNumber,
    00232                              long iray, double freq,
    00233                              vector<double> &sunResult, vector<double> &sunResultRate,
    00234                              vector<double> &sunResultRateRate) throw (CfiError);
    00235
    00245       void extraTargetToMoon( long choice, long targetType, long targetNumber,
    00246                               long iray, double freq,
    00247                               vector<double> &moonResult, vector<double> &moonResultRate,
    00248                               vector<double> &moonResultRateRate ) throw (CfiError);
    00249
    00259       void extraEfTarget( long choice, long targetType, long targetNumber, double freq,
    00260                           vector<double> &efResultRate, vector<double> &efResultRateRate ) throw (CfiError);
    00261
    00271       void extraSpecularReflection( long choice, long targetType, long targetNumber,
    00272                                     double deflectionNorth, double deflectionEast,
    00273                                     vector<double> &specRefResult, vector<double> &specRefResultRate,
    00274                                     vector<double> &specRefResultRateRate ) throw (CfiError);
    00275
    00280       void extraListVector( long choice, long targetType,
    00281                             TargetExtraResultsList &list) throw (CfiError); // AN-471
    00282
    00284       void extraListMain( long choice, long targetType,
    00285                           TargetExtraResultsList &list) throw (CfiError); // AN-471
    00286
    00288       void extraListAux( long choice, long targetType,
    00289                          TargetExtraResultsList &list) throw (CfiError); // AN-471
    00290
    00296       void extraListTargetToSun( long choice, long targetType,
    00297                                  long iray, double freq,
    00298                                  TargetExtraResultsList &list) throw (CfiError); // AN-471
    00299
    00302       void extraListTargetToMoon( long choice, long targetType,
    00303                                   long iray, double freq,
    00304                                   TargetExtraResultsList &list) throw (CfiError); // AN-471
    00305
    00307       void extraListEfTarget( long choice, long targetType, double freq,
    00308                               TargetExtraResultsList &list) throw (CfiError); // AN-471
    00309
    00311       void extraListSpecularReflection( long choice, long targetType,
    00312                                         double deflectionNorth, double deflectionEast,
    00313                                         TargetExtraResultsList &list) throw (CfiError); // AN-471
    00314
    00316       SatId satId() const;
    00317
    00328       TargetIdData* getData() const throw (CfiError);
    00329
    00331       Target const &operator=(Target const &target);
    00332
    00333     protected:
    00334
    00336       GenericId* getId();
    00337
    00338     private:
    00339
    00340       Attitude attitude;
    00341       DemId    demId;
    00342       AtmosId  atmosId;
    00343
    00346       long getTargetListEnumForWrapper(long cFunc);
    00347
    00348   };
    00349
    00350 } // closing namespace
    00351
    00352 #endif