WSF
WsfScriptDisseminateC2Class.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: WsfScriptDisseminateC2Class.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: This is an abstract script base class for all disseminate C2 processor
23* script classes to inherit from. It provides necessary common functionality.
24* It's not pure abstract in the sense that we actually instantiate an object of this
25* type purely for type registration purposes with the sole intent of giving AFSIM
26* scripts the ability to up/down cast to and from the inherited types.
27*
28*******************************************************************************/
29
30#ifndef WSF_SCRIPT_DISSEMINATE_C2_CLASS_HPP
31#define WSF_SCRIPT_DISSEMINATE_C2_CLASS_HPP
32
34#include <WsfBMCommon.hpp>
35
37{
38 public:
39
40 WsfScriptDisseminateC2Class(const std::string& aClassName, UtScriptTypes* aScriptTypesPtr);
41
42 void* Create(const UtScriptContext& aContext) override;
43 void* Clone(void* aObjectPtr) override;
44 void Destroy(void* aObjectPtr) override;
45
46 static const char* SCRIPT_CLASS_NAME;
47 static const char* BASE_CLASS_NAME;
48
49 // Plugin API.
50 static WSF_IADS_C2_LIB_EXPORT const char* GetScriptClassName();
51 static WSF_IADS_C2_LIB_EXPORT const char* GetBaseClassName();
52
53 UT_DECLARE_SCRIPT_METHOD(SetAssetManager);
55 UT_DECLARE_SCRIPT_METHOD(ClearOutgoingMessages);
56 UT_DECLARE_SCRIPT_METHOD(GetOutgoingAssignmentMessages);
57 UT_DECLARE_SCRIPT_METHOD(GetOutgoingAssignmentStatusMessages);
58 UT_DECLARE_SCRIPT_METHOD(GetOutgoingStatusMessages);
59 UT_DECLARE_SCRIPT_METHOD(GetOutgoingTrackMessages);
60};
61
62#endif
UT_DECLARE_SCRIPT_METHOD(GetOutgoingAssignmentMessages)
WsfScriptDisseminateC2Class(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfScriptDisseminateC2Class.cpp:59
void * Create(const UtScriptContext &aContext) override
Definition WsfScriptDisseminateC2Class.cpp:73
void Destroy(void *aObjectPtr) override
Definition WsfScriptDisseminateC2Class.cpp:85
UT_DECLARE_SCRIPT_METHOD(GetOutgoingStatusMessages)
UT_DECLARE_SCRIPT_METHOD(GetOutgoingTrackMessages)
static const char * BASE_CLASS_NAME
Definition WsfScriptDisseminateC2Class.hpp:47
static const char * SCRIPT_CLASS_NAME
Definition WsfScriptDisseminateC2Class.hpp:46
static WSF_IADS_C2_LIB_EXPORT const char * GetScriptClassName()
Definition WsfScriptDisseminateC2Class.cpp:91
void * Clone(void *aObjectPtr) override
Definition WsfScriptDisseminateC2Class.cpp:79
UT_DECLARE_SCRIPT_METHOD(GetOutgoingAssignmentStatusMessages)
UT_DECLARE_SCRIPT_METHOD(SetAssetManager)
UT_DECLARE_SCRIPT_METHOD(ClearOutgoingMessages)
static WSF_IADS_C2_LIB_EXPORT const char * GetBaseClassName()
Definition WsfScriptDisseminateC2Class.cpp:96
WsfScriptProcessorClass(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfScriptProcessorClass.cpp:31
Copyrights Multiple, All Rights Reserved