WSF
SOSM_SimpleInteraction.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef SOSM_SIMPLEINTERACTION_HPP
13#define SOSM_SIMPLEINTERACTION_HPP
14
15#include "SOSM_Interaction.hpp"
16
24{
25public:
27
29
30 float GetSlantRange() override { return mSlantRange; }
31 float GetSensorAltitude() override { return mSensorAltitude; }
32 virtual float GetSensorSpeed() { return mSensorSpeed; }
33 float GetTargetAltitude() override { return mTargetAltitude; }
34 float GetTargetSpeed() override { return mTargetSpeed; }
35 float GetTargetThrottle() override { return mTargetThrottle; }
36 float GetAbsoluteTargetElevation() override { return mAbsoluteTargetElevation; }
37 void GetSensorToTargetAspect(float& aAzimuth, float& aElevation) override
38 {
39 aAzimuth = mSensorToTargetAzimuth;
40 aElevation = mSensorToTargetElevation;
41 }
42 void GetTargetToSensorAspect(float& aAzimuth, float& aElevation) override
43 {
44 aAzimuth = mTargetToSensorAzimuth;
45 aElevation = mTargetToSensorElevation;
46 }
47
48
49 void ComputeGeometry(float aRange,
50 float aSensorAltitude,
51 float aTargetAltitude,
52 float aTargetHeading,
53 float aTargetPitch,
54 float aTargetRoll);
55
56 void ComputeGeometry(double aSensorLatitude,
57 double aSensorLongitude,
58 float aSensorAltitude,
59 float aSensorHeading,
60 float aSensorPitch,
61 float aSensorRoll,
62 double aTargetLatitude,
63 double aTargetLongitude,
64 float aTargetAltitude,
65 float aTargetHeading,
66 float aTargetPitch,
67 float aTargetRoll);
68
70
71 void SetSlantRange(float aSlantRange) { mSlantRange = aSlantRange; }
72 void SetSensorAltitude(float aAltitude) { mSensorAltitude = aAltitude; }
73 void SetSensorSpeed(float aSpeed) { mSensorSpeed = aSpeed; }
74 void SetTargetAltitude(float aAltitude) { mTargetAltitude = aAltitude; }
75 void SetTargetSpeed(float aSpeed) { mTargetSpeed = aSpeed; }
76 void SetTargetThrottle(float aThrottle) { mTargetThrottle = aThrottle; }
77 void SetAbsoluteTargetElevation(float aElevation) { mAbsoluteTargetElevation = aElevation; }
78 void SetSensorToTargetAspect(float aAzimuth, float aElevation)
79 {
80 mSensorToTargetAzimuth = aAzimuth;
81 mSensorToTargetElevation = aElevation;
82 }
83 void SetTargetToSensorAspect(float aAzimuth, float aElevation)
84 {
85 mTargetToSensorAzimuth = aAzimuth;
86 mTargetToSensorElevation = aElevation;
87 }
88
89
90private:
91 float mSlantRange;
92 float mSensorAltitude;
93 float mSensorSpeed;
94 float mTargetAltitude;
95 float mTargetSpeed;
96 float mTargetThrottle;
97 float mAbsoluteTargetElevation;
98 float mSensorToTargetAzimuth;
99 float mSensorToTargetElevation;
100 float mTargetToSensorAzimuth;
101 float mTargetToSensorElevation;
102};
103
104#endif
SOSM_Interaction()
Definition SOSM_Interaction.cpp:23
void SetTargetSpeed(float aSpeed)
Definition SOSM_SimpleInteraction.hpp:75
void GetSensorToTargetAspect(float &aAzimuth, float &aElevation) override
Definition SOSM_SimpleInteraction.hpp:37
float GetTargetSpeed() override
Definition SOSM_SimpleInteraction.hpp:34
float GetTargetAltitude() override
Definition SOSM_SimpleInteraction.hpp:33
void GetTargetToSensorAspect(float &aAzimuth, float &aElevation) override
Definition SOSM_SimpleInteraction.hpp:42
void SetSlantRange(float aSlantRange)
Definition SOSM_SimpleInteraction.hpp:71
void ComputeGeometry(float aRange, float aSensorAltitude, float aTargetAltitude, float aTargetHeading, float aTargetPitch, float aTargetRoll)
Definition SOSM_SimpleInteraction.cpp:47
void SetSensorSpeed(float aSpeed)
Definition SOSM_SimpleInteraction.hpp:73
virtual float GetSensorSpeed()
Definition SOSM_SimpleInteraction.hpp:32
float GetSensorAltitude() override
Definition SOSM_SimpleInteraction.hpp:31
void SetTargetAltitude(float aAltitude)
Definition SOSM_SimpleInteraction.hpp:74
float GetTargetThrottle() override
Definition SOSM_SimpleInteraction.hpp:35
void SetSensorAltitude(float aAltitude)
Definition SOSM_SimpleInteraction.hpp:72
void SetTargetThrottle(float aThrottle)
Definition SOSM_SimpleInteraction.hpp:76
float GetSlantRange() override
Definition SOSM_SimpleInteraction.hpp:30
float GetAbsoluteTargetElevation() override
Definition SOSM_SimpleInteraction.hpp:36
void SetAbsoluteTargetElevation(float aElevation)
Definition SOSM_SimpleInteraction.hpp:77
SOSM_SimpleInteraction()
Definition SOSM_SimpleInteraction.cpp:23
void SetTargetToSensorAspect(float aAzimuth, float aElevation)
Definition SOSM_SimpleInteraction.hpp:83
void SetSensorToTargetAspect(float aAzimuth, float aElevation)
Definition SOSM_SimpleInteraction.hpp:78
Copyrights Multiple, All Rights Reserved