VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDynamicFeatureLayer.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 DtEntityFacade;
30 
35  {
36  public:
38  typedef std::map<DtUniqueID, DtEntityFacade*> DynamicFeatureEntityMap;
39 
42 
44  virtual ~DtDynamicFeatureLayer();
45 
48  virtual void addDynamicFeature( DtEntityFacade* dynamicEntity);
49 
52  virtual bool destroyDyanmicFeature( DtUniqueID id );
53 
56  const DynamicFeatureEntityMap& dynamicFeatures() const;
57 
58  protected:
59 
63  void slot_sceneCreated();
64 
66  void slot_postInitialize();
67 
70  virtual void initializeFeatureCreators();
71 
73  typedef boost::unordered_multimap<std::string, std::string> StylesMap;
74 
78  bool readStyleListFile( const std::string& path,
79  const std::string& layerListFileName, StylesMap& map );
80 
81  protected:
82  static const char* theDynamicFeaturesLayerList;
83 
84  protected:
89  std::string myName;
90 
92 
93  boost::signalslib::connection myPostInitializeConnection;
94 
95  };
96 }
std::map< DtUniqueID, DtEntityFacade * > DynamicFeatureEntityMap
List of features.
Definition: DtDynamicFeatureLayer.h:38
boost::signalslib::connection myPostInitializeConnection
Definition: DtDynamicFeatureLayer.h:93
StylesMap myStylesMap
Definition: DtDynamicFeatureLayer.h:91
static const char * theDynamicFeaturesLayerList
Definition: DtDynamicFeatureLayer.h:82
DtAgentManagerInterface & mySceneInterface
Definition: DtDynamicFeatureLayer.h:86
DtSignalConnectionManager myConnections
Definition: DtDynamicFeatureLayer.h:88
The DtDynamicFeatureLayer is the base implementation of a layer of data which contains features that ...
Definition: DtDynamicFeatureLayer.h:34
The DtEntityFacade is a facade around agents that make up an entity. This entity facade represents a ...
Definition: DtEntityFacade.h:35
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
boost::unordered_multimap< std::string, std::string > StylesMap
Type for sets of style names (layers) we listen to.
Definition: DtDynamicFeatureLayer.h:73
Base class to provide boost signal/slot management.
DynamicFeatureEntityMap myDynamicFeatureEntities
Definition: DtDynamicFeatureLayer.h:87
Contains makVrv::DtUniqueID type.
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
std::string myName
Definition: DtDynamicFeatureLayer.h:89
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
DtDe & myDe
Definition: DtDynamicFeatureLayer.h:85
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)