WSF
WsfCommNetworkGeneric.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 2018 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 WSFCOMMNETWORKGENERIC_HPP
13#define WSFCOMMNETWORKGENERIC_HPP
14
15#include "WsfCommNetwork.hpp"
16
17namespace wsf
18{
19namespace comm
20{
21
25{
26public:
27 NetworkGeneric() = default;
28 NetworkGeneric(const std::string& aNetworkName, const Address& aAddress);
29 ~NetworkGeneric() override = default;
30 NetworkGeneric(const NetworkGeneric& aSrc) = default;
31 NetworkGeneric& operator=(const NetworkGeneric& aRhs) = default;
32 NetworkGeneric(NetworkGeneric&& aRhs) = default;
33
34 bool ProcessInput(UtInput& aInput) override;
35 NetworkGeneric* Clone() const override;
36 const char* GetScriptClassName() const override { return "WsfNetworkGeneric"; }
37
38protected:
39 bool InitializeLinkageP(WsfSimulation& aSimulation) override;
40 bool AddLinkP(const Address& aSourceAddress,
41 const Address& aDestinationAddress,
42 WsfSimulation& aSimulation,
43 const Address& aOptionalAddress = Address()) override;
44 bool RemoveLinkP(const Address& aSourceAddress,
45 const Address& aDestinationAddress,
46 WsfSimulation& aSimulation,
47 const Address& aOptionalAddress = Address()) override;
48 bool RemoveMemberP(const Address& aAddress, WsfSimulation& aSimulation, const Address& aOptionalAddress = Address()) override;
49};
50
52{
53public:
56 ScriptNetworkGenericClass(const std::string& aClassName, UtScriptTypes* aTypesPtr);
57
58 void* Create(const UtScriptContext& aInstance) override;
59 void Destroy(void* aNetworkPtr) override;
60};
61
62} // namespace comm
63} // namespace wsf
64
65#endif
wsf::comm::Address Address
Definition WsfScriptCommRouterClass.cpp:29
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
The main controller for a simulation.
Definition WsfSimulation.hpp:109
Definition WsfCommAddress.hpp:57
~NetworkGeneric() override=default
NetworkGeneric(const NetworkGeneric &aSrc)=default
bool ProcessInput(UtInput &aInput) override
Definition WsfCommNetworkGeneric.cpp:36
NetworkGeneric & operator=(const NetworkGeneric &aRhs)=default
NetworkGeneric(NetworkGeneric &&aRhs)=default
NetworkGeneric * Clone() const override
Definition WsfCommNetworkGeneric.cpp:30
const char * GetScriptClassName() const override
Definition WsfCommNetworkGeneric.hpp:36
ScriptNetworkClass(const std::string &aClassName, UtScriptTypes *aTypesPtr)
Definition WsfCommNetwork.cpp:391
ScriptNetworkGenericClass(const std::string &aClassName, UtScriptTypes *aTypesPtr)
Definition WsfCommNetworkGeneric.cpp:131
void * Create(const UtScriptContext &aInstance) override
Definition WsfCommNetworkGeneric.cpp:139
void Destroy(void *aNetworkPtr) override
Definition WsfCommNetworkGeneric.cpp:145
Definition WsfComm.cpp:34
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32
Copyrights Multiple, All Rights Reserved