WSF
WsfScriptAssetManagerClass.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: WsfScriptAssetManagerClass.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 asset manager 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_ASSET_MANAGER_CLASS_HPP
31#define WSF_SCRIPT_ASSET_MANAGER_CLASS_HPP
32
34#include <WsfBMCommon.hpp>
35
37{
38 public:
39
40 WsfScriptAssetManagerClass(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
54
55 UT_DECLARE_SCRIPT_METHOD(GetAssetYellowTime);
56 UT_DECLARE_SCRIPT_METHOD(GetAssetRedTime);
57 UT_DECLARE_SCRIPT_METHOD(GetReportPositionEveryMeters);
58 UT_DECLARE_SCRIPT_METHOD(GetReportPositionEverySeconds);
59 UT_DECLARE_SCRIPT_METHOD(GetReportStatusEverySeconds);
60 UT_DECLARE_SCRIPT_METHOD(GetAggregateUnitStatus);
61 UT_DECLARE_SCRIPT_METHOD(GetStationaryOpnsOnly);
62 UT_DECLARE_SCRIPT_METHOD(GetWeaponRequired);
63 UT_DECLARE_SCRIPT_METHOD(GetRequireAllWeapons);
65 UT_DECLARE_SCRIPT_METHOD(GetTARRequired);
66 UT_DECLARE_SCRIPT_METHOD(GetTTRRequired);
67
73 UT_DECLARE_SCRIPT_METHOD(CheckSubordinateTimeout);
74 UT_DECLARE_SCRIPT_METHOD(ProcessTrackMessage);
75 UT_DECLARE_SCRIPT_METHOD(ProcessStatusMessage);
76 UT_DECLARE_SCRIPT_METHOD(ProcessAssignmentStatusMessage);
77 UT_DECLARE_SCRIPT_METHOD(ProcessAssignmentMessage);
78 UT_DECLARE_SCRIPT_METHOD(ClearProcessedMessages);
80 UT_DECLARE_SCRIPT_METHOD(CreateAssignments);
81 UT_DECLARE_SCRIPT_METHOD(CANTCOAssignment);
82 UT_DECLARE_SCRIPT_METHOD(MonitorAssignments);
83 UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackDropCallback);
84 UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackInitiatedCallback);
85 UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackUpdatedCallback);
86 UT_DECLARE_SCRIPT_METHOD(UpdateOwnStatus);
87 UT_DECLARE_SCRIPT_METHOD(AssessOngoingAssignments);
88 UT_DECLARE_SCRIPT_METHOD(ReadyCompleteAssignments);
89 UT_DECLARE_SCRIPT_METHOD(CalculateTrackStrengths);
90 UT_DECLARE_SCRIPT_METHOD(PrepareTracksForEvaluation);
91 UT_DECLARE_SCRIPT_METHOD(UpdateDefendedAssetsArray);
93};
94
95#endif
UT_DECLARE_SCRIPT_METHOD(GetEWRequired)
UT_DECLARE_SCRIPT_METHOD(PrepareTracksForEvaluation)
UT_DECLARE_SCRIPT_METHOD(GetAggregateUnitStatus)
UT_DECLARE_SCRIPT_METHOD(CANTCOAssignment)
UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackInitiatedCallback)
UT_DECLARE_SCRIPT_METHOD(ProgressTime)
UT_DECLARE_SCRIPT_METHOD(GetAssetYellowTime)
UT_DECLARE_SCRIPT_METHOD(GetReportPositionEverySeconds)
UT_DECLARE_SCRIPT_METHOD(GetReportPositionEveryMeters)
WsfScriptAssetManagerClass(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfScriptAssetManagerClass.cpp:62
UT_DECLARE_SCRIPT_METHOD(MonitorAssignments)
UT_DECLARE_SCRIPT_METHOD(UpdateOwnStatus)
void * Clone(void *aObjectPtr) override
Definition WsfScriptAssetManagerClass.cpp:113
UT_DECLARE_SCRIPT_METHOD(GetAssignment)
UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackDropCallback)
UT_DECLARE_SCRIPT_METHOD(GetRequireAllWeapons)
UT_DECLARE_SCRIPT_METHOD(SetStartTime)
UT_DECLARE_SCRIPT_METHOD(CheckSubordinateTimeout)
UT_DECLARE_SCRIPT_METHOD(CreateAssignments)
UT_DECLARE_SCRIPT_METHOD(CalculateTrackStrengths)
UT_DECLARE_SCRIPT_METHOD(ReadyCompleteAssignments)
UT_DECLARE_SCRIPT_METHOD(ProcessAssignmentStatusMessage)
static WSF_IADS_C2_LIB_EXPORT const char * GetBaseClassName()
Definition WsfScriptAssetManagerClass.cpp:132
UT_DECLARE_SCRIPT_METHOD(GetReportStatusEverySeconds)
UT_DECLARE_SCRIPT_METHOD(InitOwnNode)
UT_DECLARE_SCRIPT_METHOD(PrintStatus)
static WSF_IADS_C2_LIB_EXPORT const char * GetScriptClassName()
Definition WsfScriptAssetManagerClass.cpp:127
static const char * BASE_CLASS_NAME
Definition WsfScriptAssetManagerClass.hpp:47
UT_DECLARE_SCRIPT_METHOD(ProcessTrackMessage)
UT_DECLARE_SCRIPT_METHOD(ConnectLocalTrackUpdatedCallback)
UT_DECLARE_SCRIPT_METHOD(UpdateDefendedAssetsArray)
void Destroy(void *aObjectPtr) override
Definition WsfScriptAssetManagerClass.cpp:120
UT_DECLARE_SCRIPT_METHOD(ProcessAssignmentMessage)
UT_DECLARE_SCRIPT_METHOD(GetTTRRequired)
void * Create(const UtScriptContext &aContext) override
Definition WsfScriptAssetManagerClass.cpp:107
UT_DECLARE_SCRIPT_METHOD(ClearProcessedMessages)
static const char * SCRIPT_CLASS_NAME
Definition WsfScriptAssetManagerClass.hpp:46
UT_DECLARE_SCRIPT_METHOD(GetAssetRedTime)
UT_DECLARE_SCRIPT_METHOD(AssessOngoingAssignments)
UT_DECLARE_SCRIPT_METHOD(GetAssetMap)
UT_DECLARE_SCRIPT_METHOD(ProcessStatusMessage)
UT_DECLARE_SCRIPT_METHOD(GetWeaponRequired)
UT_DECLARE_SCRIPT_METHOD(GetStationaryOpnsOnly)
UT_DECLARE_SCRIPT_METHOD(GetTARRequired)
WsfScriptProcessorClass(const std::string &aClassName, UtScriptTypes *aScriptTypesPtr)
Definition WsfScriptProcessorClass.cpp:31
Copyrights Multiple, All Rights Reserved