![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00008 00011 00012 #pragma once 00013 00014 #include <vrvUtil/signalslib.h> 00015 #include <vrfGuiCore/vrfGuiCore.h> 00016 #include <vrfGuiCore/DtAggregateState.h> 00017 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 00020 #include <vrvCore/DtSimEntry.h> 00021 00022 #include <vector> 00023 00024 namespace makVrv 00025 { 00026 class DtSimEntry; 00027 class DtDe; 00028 class DtSimObjectEntry; 00029 } 00030 00031 class DtVrfObjectMessage; 00032 00033 namespace makVrf 00034 { 00036 class DT_DLL_VRFGUICORE DtVrfFormationRequestor : public makVrv::DtVirtualBaseClass 00037 { 00038 public: 00039 DtVrfFormationRequestor(makVrv::DtDe&); 00040 virtual ~DtVrfFormationRequestor(); 00041 00043 static DtVrfFormationRequestor& instance(makVrv::DtDe& de); 00044 00045 virtual void updateAvailableFormations(makVrv::DtSimEntry* data); 00046 00047 std::vector<std::string> formationsFor(const std::string&) const; 00048 00049 boost::signal<void (const std::string&)> signal_formationsReceived; 00050 00051 virtual bool hasFormationsFor(makVrv::DtSimEntry* data) const; 00052 00053 protected: 00054 00055 virtual void processAvailableFormations(const DtVrfObjectMessage* msg); 00056 00057 virtual void slot_onSimDataRemoved(makVrv::DtSimObjectEntry&); 00058 00059 protected: 00060 makVrv::DtDe& myDe; 00061 std::map<std::string, std::vector<std::string> > myFormationTable; 00062 }; 00063 }