WSF
WsfInfraredSignature.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
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 WSFINFRAREDSIGNATURE_HPP
13#define WSFINFRAREDSIGNATURE_HPP
14
15#include "wsf_mil_export.h"
16
17class UtScriptTypes;
18#include "WsfEM_Types.hpp"
19class WsfPlatform;
20class WsfScenario;
21#include "WsfSignature.hpp"
22
24class WSF_MIL_EXPORT WsfInfraredSignature : public WsfSignature
25{
26public:
27 enum
28 {
30 };
31
33 WsfInfraredSignature* Clone() const override = 0;
34
42 virtual float GetSignature(double aSimTime,
43 WsfStringId aStateId,
45 double aAzimuth,
46 double aElevation) = 0;
47
52
53 static WsfStringId GetInputType(WsfPlatform* aPlatformPtr);
54
55 static WsfStringId GetState(WsfPlatform* aPlatformPtr);
56
57 static bool SetState(WsfPlatform* aPlatformPtr, WsfStringId aState);
58
59 static float GetScaleFactor(WsfPlatform* aPlatformPtr);
60
61 static bool SetScaleFactor(WsfPlatform* aPlatformPtr, float aScaleFactor);
62
63 static float GetValue(double aSimTime,
64 WsfPlatform* aPlatformPtr,
66 double aAzimuth,
67 double aElevation);
69
70 static void RegisterScriptMethods(UtScriptTypes& aScriptTypes);
71 static void RegisterInterface(WsfScenario& aScenario);
72};
73
74#endif
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
An object that represents the infrared signature of a platform.
Definition WsfInfraredSignature.hpp:25
WsfInfraredSignature * Clone() const override=0
static WsfStringId GetState(WsfPlatform *aPlatformPtr)
Definition WsfInfraredSignature.cpp:99
static float GetValue(double aSimTime, WsfPlatform *aPlatformPtr, WsfEM_Types::InfraredBand aBand, double aAzimuth, double aElevation)
Definition WsfInfraredSignature.cpp:142
WsfInfraredSignature()
Definition WsfInfraredSignature.cpp:28
static void RegisterScriptMethods(UtScriptTypes &aScriptTypes)
Definition WsfInfraredSignature.cpp:225
static WsfStringId GetInputType(WsfPlatform *aPlatformPtr)
Definition WsfInfraredSignature.cpp:90
static float GetScaleFactor(WsfPlatform *aPlatformPtr)
Definition WsfInfraredSignature.cpp:118
static void RegisterInterface(WsfScenario &aScenario)
Register the platform interface object on the prototype signature list in the specified scenario.
Definition WsfInfraredSignature.cpp:237
virtual float GetSignature(double aSimTime, WsfStringId aStateId, WsfEM_Types::InfraredBand aBand, double aAzimuth, double aElevation)=0
static bool SetState(WsfPlatform *aPlatformPtr, WsfStringId aState)
Definition WsfInfraredSignature.cpp:109
@ cSIGNATURE_INDEX
Index of signature within WsfSignatureList (must be unique).
Definition WsfInfraredSignature.hpp:29
static bool SetScaleFactor(WsfPlatform *aPlatformPtr, float aScaleFactor)
Definition WsfInfraredSignature.cpp:128
Platforms represent a entity within the simulation.
Definition WsfPlatform.hpp:115
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
WsfSignature()
Definition WsfSignature.cpp:19
InfraredBand
Infrared band names.
Definition WsfEM_Types.hpp:34
Copyrights Multiple, All Rights Reserved