WSF
WsfSimpleSensorsManagerImpl.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// The use, dissemination or disclosure of data in this file is subject to
7// limitation or restriction. See accompanying README and LICENSE for details.
8// ****************************************************************************
9/*******************************************************************************
10*
11* File: WsfSimpleSensorsManagerImpl.hpp
12*
13* Classification: UNCLASSIFIED
14*
15* Details:
16*
17* Contract Number:
18* Contractor Name: Radiance Technologies
19* Address: 350 Wynn Drive
20* Huntsville, AL 35805
21*
22* Abstract: Since what differentiates the simple sensor manager from the FOV,
23* is mostly AFSIM-implementation details, we bubble the nuances between the
24* two up to the AFSIM glue level while keeping all commonality in the core
25* IADSLib.
26*
27*******************************************************************************/
28
29#ifndef WSF_SIMPLE_SENSORS_MANAGER_IMPL_HPP
30#define WSF_SIMPLE_SENSORS_MANAGER_IMPL_HPP
31
32#include <WsfBMCommon.hpp>
33#include <iadsLib/sensorsManagerInterface.hpp>
34
35class WsfSimpleSensorsManagerImpl : public il::SensorsManagerInterface
36{
37 public:
40
42
43
44 protected:
46
47 // hijaack outgoing sensor manager cues for direct cueing in AFSIM
48 bool SendSensorCueMessage(il::moeLoggingInterface& aMOELogger,
49 const double sim_time,
50 const std::shared_ptr<const il::trackRecord>& master_track,
51 const std::shared_ptr<const il::assignmentMessage>& assignment,
52 const std::shared_ptr<il::sensorRecord>& sensor,
53 const il::cueMessage::CueReason& reason) override;
54 virtual bool ProcessCurrentCueAssignment( il::moeLoggingInterface& aMOELogger,
55 const double sim_time,
56 const std::shared_ptr<const il::trackRecord>& master_track,
57 const std::shared_ptr<const il::assignmentMessage>& assignment,
58 const std::shared_ptr<il::sensorRecord>& sensor);
59 virtual bool ProcessDropCue(il::moeLoggingInterface& aMOELogger,
60 const double sim_time,
61 const std::shared_ptr<const il::trackRecord>& master_track,
62 const std::shared_ptr<const il::assignmentMessage>& assignment,
63 const std::shared_ptr<il::sensorRecord>& sensor);
64 virtual void TurnOffSensorIfNoTracks(il::moeLoggingInterface& aMOELogger,
65 const double sim_time,
66 const std::shared_ptr<il::sensorRecord>& sensor);
67
68 private:
69 WsfSimpleSensorsManagerImpl& operator=(const WsfSimpleSensorsManagerImpl& rhs) = delete;
70};
71
72#endif
WsfSimpleSensorsManagerImpl * Clone() override
Definition WsfSimpleSensorsManagerImpl.cpp:42
virtual ~WsfSimpleSensorsManagerImpl()
Definition WsfSimpleSensorsManagerImpl.cpp:47
virtual bool ProcessDropCue(il::moeLoggingInterface &aMOELogger, const double sim_time, const std::shared_ptr< const il::trackRecord > &master_track, const std::shared_ptr< const il::assignmentMessage > &assignment, const std::shared_ptr< il::sensorRecord > &sensor)
Definition WsfSimpleSensorsManagerImpl.cpp:100
bool SendSensorCueMessage(il::moeLoggingInterface &aMOELogger, const double sim_time, const std::shared_ptr< const il::trackRecord > &master_track, const std::shared_ptr< const il::assignmentMessage > &assignment, const std::shared_ptr< il::sensorRecord > &sensor, const il::cueMessage::CueReason &reason) override
Definition WsfSimpleSensorsManagerImpl.cpp:51
WsfSimpleSensorsManagerImpl()
Definition WsfSimpleSensorsManagerImpl.cpp:32
virtual void TurnOffSensorIfNoTracks(il::moeLoggingInterface &aMOELogger, const double sim_time, const std::shared_ptr< il::sensorRecord > &sensor)
Definition WsfSimpleSensorsManagerImpl.cpp:132
virtual bool ProcessCurrentCueAssignment(il::moeLoggingInterface &aMOELogger, const double sim_time, const std::shared_ptr< const il::trackRecord > &master_track, const std::shared_ptr< const il::assignmentMessage > &assignment, const std::shared_ptr< il::sensorRecord > &sensor)
Definition WsfSimpleSensorsManagerImpl.cpp:72
Copyrights Multiple, All Rights Reserved