WSF
WsfIRST_Sensor.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 WSFIRST_SENSOR_HPP
13#define WSFIRST_SENSOR_HPP
14
15#include "wsf_mil_export.h"
16
18#include "WsfSensor.hpp"
19
21
22class WSF_MIL_EXPORT WsfIRST_Sensor : public WsfSensor
23{
24public:
25 WsfIRST_Sensor(WsfScenario& aScenario);
26 WsfIRST_Sensor(const WsfIRST_Sensor& aSrc);
28
29 WsfSensor* Clone() const override;
30 bool Initialize(double aSimTime) override;
31 void Update(double aSimTime) override;
32
33 size_t GetEM_RcvrCount() const override;
34 WsfEM_Rcvr& GetEM_Rcvr(size_t aIndex) const override;
35
36 // Default copy constructor (for Clone())
37 // WsfIRST_Sensor(const WsfIRST_Sensor& aSrc);
38
41 {
42 public:
43 IRST_Mode(WsfScenario& aScenario);
44 IRST_Mode(const IRST_Mode& aSrc) = default;
45 ~IRST_Mode() override = default;
46
47 WsfMode* Clone() const override;
48 bool Initialize(double aSimTime) override;
49 bool ProcessInput(UtInput& aInput) override;
50
51 bool AttemptToDetect(double aSimTime, WsfPlatform* aTargetPtr, Settings& aSettings, Result& aResult) override;
52 void Deselect(double aSimTime) override;
53 void Select(double aSimTime) override;
54 };
55
56protected:
58 std::vector<IRST_Mode*> mIRST_ModeList;
59};
60
61#endif
Definition WsfEM_Rcvr.hpp:68
WsfSensorResult Result
Definition WsfEOIR_IRST_SensorMode.hpp:37
WsfEOIR_IRST_SensorMode(WsfScenario &aScenario)
Definition WsfEOIR_IRST_SensorMode.cpp:36
WsfSensor::Settings Settings
Definition WsfEOIR_IRST_SensorMode.hpp:38
~IRST_Mode() override=default
bool Initialize(double aSimTime) override
Definition WsfIRST_Sensor.cpp:111
bool ProcessInput(UtInput &aInput) override
Definition WsfIRST_Sensor.cpp:118
void Deselect(double aSimTime) override
Definition WsfIRST_Sensor.cpp:143
bool AttemptToDetect(double aSimTime, WsfPlatform *aTargetPtr, Settings &aSettings, Result &aResult) override
Definition WsfIRST_Sensor.cpp:124
IRST_Mode(const IRST_Mode &aSrc)=default
WsfMode * Clone() const override
Create an exact duplicate of this mode.
Definition WsfIRST_Sensor.cpp:104
IRST_Mode(WsfScenario &aScenario)
Definition WsfIRST_Sensor.cpp:96
void Select(double aSimTime) override
Definition WsfIRST_Sensor.cpp:150
WsfIRST_Sensor(WsfScenario &aScenario)
Definition WsfIRST_Sensor.cpp:25
std::vector< IRST_Mode * > mIRST_ModeList
The sensor-specific list of modes (not valid until Initialize is called).
Definition WsfIRST_Sensor.hpp:58
WsfIRST_Sensor & operator=(const WsfIRST_Sensor &)=delete
WsfMode()
Definition WsfMode.cpp:15
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
void Update(double aSimTime) override
Definition WsfSensor.cpp:497
virtual WsfEM_Rcvr & GetEM_Rcvr(size_t aIndex) const
Definition WsfSensor.cpp:660
WsfSensor(const WsfScenario &aScenario)
Definition WsfSensor.cpp:52
virtual size_t GetEM_RcvrCount() const
Definition WsfSensor.cpp:646
WsfSensor * Clone() const override=0
bool Initialize(double aSimTime) override
Definition WsfSensor.cpp:255
Copyrights Multiple, All Rights Reserved