VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
emitterModesRequestor.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
10 
11 #pragma once
12 
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
16 #include <vrfutil/rwUUID.h>
18 
20 
21 #include <vector>
22 
23 namespace makVrv
24 {
25  class DtDe;
26  class DtSimObjectEntry;
27 }
28 
29 class DtVrfObjectMessage;
30 class DtRadarModesAdmin;
31 
32 namespace makVrf
33 {
36  {
37  protected:
40  {
41  std::map<int, std::string> emitIdCurrModeMap;
42  std::map<int, std::string> emitIdNameMap;
43  std::map<int, std::vector<std::string> > emitIdModesMap;
44  };
45 
46  public:
49 
51  virtual ~DtEmitterModesRequestor() override;
52 
54  virtual std::string currentModeFor(const DtUUID& entity, int emitterId) const;
55 
57  virtual std::string emitterNameFor(const DtUUID& entity, int emitterId) const;
58 
60  virtual std::vector<int> emitterIdsFor(const DtUUID& entity) const;
61 
63  virtual std::vector<std::string> modesFor(const DtUUID& entity, int emitterId) const;
64 
66  virtual bool hasModesFor(const DtUUID& entity) const;
67 
69  virtual bool hasEmitterFor(const DtUUID& entity, int id) const;
70 
74  struct EmitterInfo
75  {
76  std::vector<std::string> modes;
77  int selectedMode = -1;
78  };
79  typedef std::map<int, EmitterInfo> EmitterModes;
80  virtual EmitterModes groupIdsAndModes(std::vector<DtUUID> entities);
81 
85  virtual int groupModes(std::vector<DtUUID> entities,
86  int emitterId,
87  std::vector<std::string>& returnModes);
88 
90  boost::signals2::signal<void (DtUUID, int)> signal_modesReceived;
91 
93  virtual void requestModes(const DtUUID& entity) = 0;
94 
95  protected:
97  virtual void slot_onSimDataRemoved(DtSimObjectReference state);
98 
101  virtual void processModes(const DtUUID&, const DtRadarModesAdmin&);
102 
103  protected:
105  std::map<DtUUID, DtEmitterModeDataRecord> myEntitiesTable;
106 
108  };
109 }
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
std::vector< std::string > modes
Definition: emitterModesRequestor.h:76
std::map< int, std::vector< std::string > > emitIdModesMap
Definition: emitterModesRequestor.h:43
std::map< int, std::string > emitIdCurrModeMap
Definition: emitterModesRequestor.h:41
Contains the DtUUID class declaration.
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Admin content which contains the list of radar modes for an emitter. This is the response to the DtRe...
Definition: radarModesAdmin.h:19
Contains makVrv::DtVirtualBaseClass class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
The base class for all messages to/from a specific DtVrfObject. Various subclasses of this class will...
Definition: vrfObjectMessage.h:30
The class that is the interface between the GUI and the back-end.
Definition: emitterModesRequestor.h:35
Given a list of entities, gets the intersection of emitter ids and those id&#39;s modes and returns them ...
Definition: emitterModesRequestor.h:74
Data structure used by this class to store entity data.
Definition: emitterModesRequestor.h:39
Base class to provide boost signal/slot management.
makVrv::DtSignalConnectionManager myConnections
Definition: emitterModesRequestor.h:107
makVrv::DtDe & myDe
Definition: emitterModesRequestor.h:104
std::map< int, EmitterInfo > EmitterModes
Definition: emitterModesRequestor.h:79
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
boost::signals2::signal< void(DtUUID, int)> signal_modesReceived
Signal sent when new data has arrived for a particular entity and its emitter id. ...
Definition: emitterModesRequestor.h:90
std::map< DtUUID, DtEmitterModeDataRecord > myEntitiesTable
Definition: emitterModesRequestor.h:105
std::map< int, std::string > emitIdNameMap
Definition: emitterModesRequestor.h:42

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)