VR-Forces 4.2 Class Documentation
DtMissileTargetManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
8 #pragma once
9 
10 #include <vrfGuiCore/vrfGuiCore.h>
11 #include <vrvUtil/DtVirtualBaseClass.h>
12 #include <vrvUtil/DtSignalConnectionManager.h>
13 #include <vrvUtil/DtUnicode.h>
14 #include <vrvCore/DtStateView.h>
15 
16 #include <vrvUtil/signalslib.h>
17 #include <vlpi/entityType.h>
18 
19 namespace makVrv
20 {
21  class DtDe;
22  class DtSimObjectEntry;
23  class DtRecordSettingsBackupInterface;
24  class DtSharedSettingsManager;
25 }
26 
27 class DtSimMessage;
28 
29 namespace makVrf
30 {
31  struct DtVrlinkSimulatedEnvironmentProcess;
32 }
33 
34 namespace makVrf
35 {
36  static const makVrv::DtUnicode DtMissileTargetName = makVrv::DtUnicode::tr("Missile Target");
37 
38  class DT_DLL_VRFGUICORE DtMissileTargetManager : public makVrv::DtVirtualBaseClass
39  {
40  public:
41  typedef std::map<makVrv::DtElementID, makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*> MissileTargetItems;
42 
43  public:
45  DtMissileTargetManager(makVrv::DtDe&);
46 
48  virtual ~DtMissileTargetManager();
49 
51  static DtMissileTargetManager& instance(makVrv::DtDe& de);
52 
54  static void registerInstance(makVrv::DtDe&, DtMissileTargetManager*);
55 
56  const MissileTargetItems& interceptItems() const
57  {
58  return myMissileTargetItems;
59  }
60 
62  virtual bool hasMissileInteceptData(makVrv::DtElementID) const;
63 
64  public:
65  boost::signal<void (makVrv::DtElementID)> signal_removed;
66  boost::signal<void (const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*)> signal_updated;
67 
68  protected:
70  virtual void initInterceptAreas();
71 
74  virtual void slot_simObjectEntryAboutToBeRemoved(makVrv::DtSimObjectEntry& e);
75 
78  virtual void slot_simStateAdded(makVrv::DtSimObjectEntry& e);
79 
82  virtual void waiting();
83 
85  virtual void slot_onBallisticTargetUpdated(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*);
86 
88  virtual void addIfIntercept(const makVrv::DtStateView<DtVrlinkSimulatedEnvironmentProcess>*);
89 
90  protected:
91  makVrv::DtDe& myDe;
92 
93  makVrv::DtSignalConnectionManager myConnectionManager;
94  std::map<makVrv::DtElementID, bool> myWaiting;
96  };
97 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)