VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
systemListRequestor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vrfGuiCore/vrfGuiCore.h>
16 
18 
19 #include <vector>
20 #include <list>
21 
22 #include <boost/noncopyable.hpp>
23 #include <boost/signals2.hpp>
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtSimObjectEntry;
29 }
30 
31 class DtVrfObjectMessage;
32 class DtEntityType;
33 class DtString;
34 class DtUUID;
35 
36 namespace makVrf
37 {
39  class DT_DLL_VRFGUICORE DtSystemListRequestor : public makVrv::DtVirtualBaseClass , private boost::noncopyable
40  {
41  public:
43  virtual ~DtSystemListRequestor() override;
44 
45  static DtSystemListRequestor& instance(makVrv::DtDe& de);
46 
49  virtual const DtSystemVector& systemsForEntityType(const DtEntityType&) const;
50 
52  virtual bool hasSystemsForEntityType(const DtEntityType&) const;
53 
55  virtual void systems(const std::vector<DtEntityType>& types, DtSystemVector& systems) const;
56 
58  virtual void updateSystems(const DtUUID&, DtSystemListRequestSubscriptionType subscribe);
59  virtual void updateSystems(const std::list<DtUUID>& name);
60 
64  virtual void clearEntityTypeEntry(const DtEntityType&);
65 
66  boost::signals2::signal<void(const DtUUID&)> signal_systemListReceived;
67  boost::signals2::signal<void(const DtUUID&, const DtSystemVector&)> signal_systemListAndStateReceived;
68 
69  protected:
70 
71  virtual void slot_onSimDataRemoved(makVrv::DtSimObjectEntry&);
72 
77  virtual void processSystemListResponse(const DtVrfObjectMessage* msg);
78 
80 
81  typedef std::map<DtEntityType, DtSystemVector> SystemsListTable;
82 
84 
86  };
87 }
makVrv::DtDe & myDe
Definition: systemListRequestor.h:79
UUID is a unique ID wrapper class.
Definition: uuid.h:59
boost::signals2::signal< void(const DtUUID &)> signal_systemListReceived
Definition: systemListRequestor.h:66
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
boost::signals2::signal< void(const DtUUID &, const DtSystemVector &)> signal_systemListAndStateReceived
Definition: systemListRequestor.h:67
SystemsListTable myTable
Definition: systemListRequestor.h:83
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
Contains makVrv::DtVirtualBaseClass class.
std::map< DtEntityType, DtSystemVector > SystemsListTable
Definition: systemListRequestor.h:81
The class that is the interface between the GUI and the back-end.
Definition: systemListRequestor.h:39
std::vector< ComponentSystem > DtSystemVector
Definition: systemListResponseAdmin.h:39
The base class for all messages to/from a specific DtVrfObject. Various subclasses of this class will...
Definition: vrfObjectMessage.h:30
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
static const DtSystemVector theEmptySystemVector
Definition: systemListRequestor.h:85
DtSystemListRequestSubscriptionType
Definition: systemListRequestAdmin.h:22

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)