WSF
WsfIADSC2ScenarioExtension.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#ifndef WSF_IADS_C2_SCENARIO_EXTENSION_HPP
11#define WSF_IADS_C2_SCENARIO_EXTENSION_HPP
12
13#include <memory>
14
15#include "wsf_iads_c2_lib_export.h"
16
17#include "logger.hpp"
18
19#include "WsfScenario.hpp"
21
22class WSF_IADS_C2_LIB_EXPORT IADSC2ScenarioExtension : public WsfScenarioExtension
23{
24 public:
25 void AddedToScenario() override;
26 void SimulationCreated(WsfSimulation& aSimulation) override;
27
28 static const std::string cNAME;
29
30 std::weak_ptr<il::logger::GlobalLogger> GetGlobalLogger() const { return std::weak_ptr<il::logger::GlobalLogger>(mGlobalLogger); }
31
32 static std::weak_ptr<il::logger::GlobalLogger> GetGlobalLogger(const WsfScenario& aScenario)
33 {
34 return static_cast<IADSC2ScenarioExtension&>(aScenario.GetExtension(cNAME)).GetGlobalLogger();
35 }
36
37 private:
38 std::shared_ptr<il::logger::GlobalLogger> mGlobalLogger;
39};
40
41#endif
Definition WsfIADSC2ScenarioExtension.hpp:23
std::weak_ptr< il::logger::GlobalLogger > GetGlobalLogger() const
Definition WsfIADSC2ScenarioExtension.hpp:30
static std::weak_ptr< il::logger::GlobalLogger > GetGlobalLogger(const WsfScenario &aScenario)
Definition WsfIADSC2ScenarioExtension.hpp:32
static const std::string cNAME
Definition WsfIADSC2ScenarioExtension.hpp:28
WsfScenarioExtension()
Definition WsfScenarioExtension.cpp:21
virtual void AddedToScenario()
Definition WsfScenarioExtension.cpp:50
virtual void SimulationCreated(WsfSimulation &aSimulation)
Definition WsfScenarioExtension.cpp:119
friend class WsfScenario
Definition WsfScenarioExtension.hpp:39
WsfScenarioExtension & GetExtension(const std::string &aName) const
Definition WsfScenario.cpp:814
The main controller for a simulation.
Definition WsfSimulation.hpp:109
Copyrights Multiple, All Rights Reserved