WSF
WsfIFF_Manager.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 2003-2015 The Boeing 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 WSFIFFMANAGER_HPP
13#define WSFIFFMANAGER_HPP
14
15#include "wsf_export.h"
16
17#include <map>
18#include <string>
19
20#include "WsfCategoryList.hpp"
21#include "WsfTrack.hpp"
22
23class UtInput;
24
27{
28public:
31
33 virtual ~WsfIFF_Manager();
34
36 bool ProcessInput(UtInput& aInput);
37
39 bool DebugEnabled() const { return mDebugEnabled; }
40
43 void SetDebugEnabled(bool aDebugEnabled) { mDebugEnabled = aDebugEnabled; }
44
46
47 WsfTrack::IFF_Status GetIFF_Status(WsfStringId aPlaformSideId,
48 WsfStringId aTgtPlatformSideId,
49 const WsfCategoryList::CategoryList& aTgtCategories) const;
51
52 typedef std::pair<WsfStringId, WsfStringId> SideMapTypePair;
53 typedef std::pair<SideMapTypePair, WsfTrack::IFF_Status> SideIFF_MapTypePair;
54 typedef std::map<SideMapTypePair, WsfTrack::IFF_Status> SideIFF_MapType;
55 typedef std::map<SideMapTypePair, WsfTrack::IFF_Status>::iterator SideIFF_MapTypeIterator;
56
57protected:
58private:
59 WsfIFF_Manager(const WsfIFF_Manager& aSrc);
61 WsfIFF_Manager& operator=(const WsfIFF_Manager& aRhs) = delete;
62
64 bool ConvertIFF_String(const std::string& aIFF_Str, WsfTrack::IFF_Status& aIFF_Status);
65
67 bool GetIFF_StatusP(WsfStringId aPlaformSideId,
68 WsfStringId aTgtPlatformSideId,
69 const WsfCategoryList::CategoryList& aTgtCategories,
70 WsfTrack::IFF_Status& aIFF_Status) const;
71
73 void ProcessSide(UtInput& aInput);
74
76 SideIFF_MapType mIFF_SideData;
77
79 SideIFF_MapType mIFF_CategoryData;
80
82 SideIFF_MapType mIFF_DefaultData;
83
85 bool mDebugEnabled;
86
87 WsfStringId mDefaultId;
88};
89
90#endif
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
std::vector< WsfStringId > CategoryList
Definition WsfCategoryList.hpp:36
bool DebugEnabled() const
Determine if debugging is enabled.
Definition WsfIFF_Manager.hpp:39
std::map< SideMapTypePair, WsfTrack::IFF_Status >::iterator SideIFF_MapTypeIterator
Definition WsfIFF_Manager.hpp:55
std::pair< WsfStringId, WsfStringId > SideMapTypePair
Definition WsfIFF_Manager.hpp:52
std::pair< SideMapTypePair, WsfTrack::IFF_Status > SideIFF_MapTypePair
Definition WsfIFF_Manager.hpp:53
std::map< SideMapTypePair, WsfTrack::IFF_Status > SideIFF_MapType
Definition WsfIFF_Manager.hpp:54
WsfIFF_Manager()
Constructor.
Definition WsfIFF_Manager.cpp:101
bool ProcessInput(UtInput &aInput)
Process the IFF block.
Definition WsfIFF_Manager.cpp:35
void SetDebugEnabled(bool aDebugEnabled)
Definition WsfIFF_Manager.hpp:43
IFF_Status
An enumeration for IFF.
Definition WsfTrack.hpp:149
Copyrights Multiple, All Rights Reserved