WSF
WsfCyberEvent.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 2016 Infoscitex, a DCS 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 WSFCYBEREVENT_HPP
13#define WSFCYBEREVENT_HPP
14
15#include "wsf_cyber_export.h"
16
17#include <string>
18
19#include "WsfEvent.hpp"
20
21namespace wsf
22{
23namespace cyber
24{
25
29class WSF_CYBER_EXPORT Event : public WsfEvent
30{
31public:
32 enum class Type : int
33 {
34 cSCAN_DELAY,
35 cATTACK_DELAY,
36 cATTACK_DETECTION_DELAY,
37 cATTACK_RECOVERY_DELAY,
38 cOTHER,
39 cNONE
40 };
41
42 Event(double aSimTime, Type aEventType, std::string aVictim, size_t aKey);
43
44 ~Event() override = default;
45
46 EventDisposition Execute() override;
47
48 Type GetType() const { return mEventType; }
49 const std::string& GetVictim() const { return mVictim; }
50 size_t GetKey() const { return mKey; }
51
52private:
53 Type mEventType;
54 std::string mVictim;
55 size_t mKey;
56};
57
58} // namespace cyber
59} // namespace wsf
60
61#endif
WsfEvent()=default
EventDisposition
Definition WsfEvent.hpp:37
Definition WsfCyberEvent.hpp:30
const std::string & GetVictim() const
Definition WsfCyberEvent.hpp:49
~Event() override=default
EventDisposition Execute() override
Definition WsfCyberEvent.cpp:34
Type GetType() const
Definition WsfCyberEvent.hpp:48
Type
Definition WsfCyberEvent.hpp:33
Event(double aSimTime, Type aEventType, std::string aVictim, size_t aKey)
Definition WsfCyberEvent.cpp:25
size_t GetKey() const
Definition WsfCyberEvent.hpp:50
Definition WsfCyberApplicationExtension.cpp:24
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32
Copyrights Multiple, All Rights Reserved