VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtStreamedFeatureLayer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtUniqueID.h>
14 
16 
17 #include <matrix/vlVector.h>
18 
19 #include <map>
20 #include <list>
21 #include <string>
22 
23 #include <boost/unordered_map.hpp>
24 
25 namespace makVrv
26 {
27  class DtDe;
28  class DtAgentManagerInterface;
29  class DtProp;
30 
35  {
36  public:
38  typedef std::map<DtUniqueID, DtProp*> StreamedFeatureMap;
39 
42 
44  virtual ~DtStreamedFeatureLayer();
45 
50  // The initial (streamed-in) location of the object
54  virtual void addFeature( DtProp* feature, DtUniqueID elementId );
55 
58  virtual bool destroyFeature( DtUniqueID elementId );
59 
62  virtual DtProp* findFeature( DtUniqueID elementId );
63 
65  const StreamedFeatureMap& features() const;
66 
67  protected:
68 
72  void slot_sceneCreated();
73 
75  void slot_postInitialize();
76 
79  virtual void initializeFeatureCreators();
80 
82  typedef boost::unordered_multimap<std::string, std::string> StylesMap;
83 
87  bool readStyleListFile( const std::string& path,
88  const std::string& layerListFileName, StylesMap& map );
89 
90  protected:
95  std::string myName;
96 
98 
99  boost::signalslib::connection myPostInitializeConnection;
100  };
101 }
The DtStreamedFeatureLayer is the base implementation of a layer of data which contains buoys and bea...
Definition: DtStreamedFeatureLayer.h:34
boost::unordered_multimap< std::string, std::string > StylesMap
Type for sets of style names (layers) we listen to.
Definition: DtStreamedFeatureLayer.h:82
boost::signalslib::connection myPostInitializeConnection
Definition: DtStreamedFeatureLayer.h:99
Facade object for a scene prop.
Definition: DtProp.h:34
std::string myName
Definition: DtStreamedFeatureLayer.h:95
std::map< DtUniqueID, DtProp * > StreamedFeatureMap
List of Buoys and Beacons.
Definition: DtStreamedFeatureLayer.h:38
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
StylesMap myStylesMap
Definition: DtStreamedFeatureLayer.h:97
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtSignalConnectionManager myConnections
Definition: DtStreamedFeatureLayer.h:94
StreamedFeatureMap myFeatures
Definition: DtStreamedFeatureLayer.h:93
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Base class to provide boost signal/slot management.
DtDe & myDe
Definition: DtStreamedFeatureLayer.h:91
Contains makVrv::DtUniqueID type.
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
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:72
DtAgentManagerInterface & mySceneInterface
Definition: DtStreamedFeatureLayer.h:92
Contains DLL export macros.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)