WSF
WsfBMAssignmentTrackMessage.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: WsfBMAssignmentTrackMessage.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:
23*
24*******************************************************************************/
25
26#ifndef WSF_BM_ASSIGNMENT_TRACK_MESSAGE_HPP
27#define WSF_BM_ASSIGNMENT_TRACK_MESSAGE_HPP
28
29#include <WsfBMCommon.hpp>
30#include <WsfMessage.hpp>
31#include <WsfTrack.hpp>
32#include <WsfCovariance.hpp>
34
35#include <iadsLib/assignmentTrackMessage.hpp>
36
37class WsfSimulation;
38class WsfLocalTrack;
39
40class WsfBMAssignmentTrackMessage : public WsfMessage, public WsfBMManagedTypeWrapper<il::baseMessage>
41{
42 public:
45 WsfBMAssignmentTrackMessage(WsfPlatform* plat, const std::shared_ptr<il::baseMessage>& message);
46
48
50
51 WsfBMAssignmentTrackMessage* Clone() const override;
52
53 const char* GetScriptClassName() const override;
54 virtual const char* GetBaseClassName();
55 static WsfStringId GetTypeId();
56
57 public:
58 void SetTrack(WsfSimulation* sim, const WsfLocalTrack& track);
59 const WsfTrack& GetTrack() const;
60
61 void SetAssignedPlatform(const WsfPlatform* plat);
63 public:
64 inline std::shared_ptr<const il::assignmentTrackMessage> GetRawMessagePtr() const { return std::static_pointer_cast <il::assignmentTrackMessage>(m_wrapped_ptr); }
65
66 private:
67 WsfTrack m_track;
68
69 private:
70 inline std::shared_ptr<il::assignmentTrackMessage> GetMutableRawMessagePtr() { return std::static_pointer_cast <il::assignmentTrackMessage>(m_wrapped_ptr); }
71};
72
73#endif
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
static WsfStringId GetTypeId()
Definition WsfBMAssignmentTrackMessage.cpp:86
const WsfTrack & GetTrack() const
Definition WsfBMAssignmentTrackMessage.cpp:102
const char * GetScriptClassName() const override
Definition WsfBMAssignmentTrackMessage.cpp:76
WsfBMAssignmentTrackMessage * Clone() const override
Definition WsfBMAssignmentTrackMessage.cpp:71
virtual ~WsfBMAssignmentTrackMessage()
Definition WsfBMAssignmentTrackMessage.cpp:67
WsfPlatform * GetAssignedPlatform(WsfSimulation *sim) const
Definition WsfBMAssignmentTrackMessage.cpp:112
void SetTrack(WsfSimulation *sim, const WsfLocalTrack &track)
Definition WsfBMAssignmentTrackMessage.cpp:91
virtual const char * GetBaseClassName()
Definition WsfBMAssignmentTrackMessage.cpp:81
void SetAssignedPlatform(const WsfPlatform *plat)
Definition WsfBMAssignmentTrackMessage.cpp:107
WsfBMAssignmentTrackMessage(WsfSimulation *simPtr)
Definition WsfBMAssignmentTrackMessage.cpp:36
std::shared_ptr< const il::assignmentTrackMessage > GetRawMessagePtr() const
Definition WsfBMAssignmentTrackMessage.hpp:64
WsfBMManagedTypeWrapper(const std::string &script_class_name)
Definition WsfBMGenericTypeWrapper.hpp:58
std::shared_ptr< il::baseMessage > m_wrapped_ptr
Definition WsfBMGenericTypeWrapper.hpp:48
Definition WsfLocalTrack.hpp:32
WsfMessage(WsfStringId aType)
Constructor for XIO (de)serialization.
Definition WsfMessage.cpp:25
Platforms represent a entity within the simulation.
Definition WsfPlatform.hpp:115
The main controller for a simulation.
Definition WsfSimulation.hpp:109
An object that represents an 'track' (perception) of something.
Definition WsfTrack.hpp:120
Copyrights Multiple, All Rights Reserved