VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtBuoyLayer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 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 DtBuoyOrBeaconFacade;
30  class DtBuoyMarkerStringParser;
31  class DtBuoyTextureAtlasFileParser;
32 
37  {
38  public:
40  typedef std::map<DtUniqueID, DtBuoyOrBeaconFacade*> BuoyMap;
41 
43  DtBuoyLayer(DtDe& de, DtAgentManagerInterface& sceneInterface);
44 
46  virtual ~DtBuoyLayer();
47 
55  virtual void addBuoy( DtBuoyOrBeaconFacade* buoy,
56  const DtVector& initialPosition, bool hasNavLights=false,
57  bool hasNavDaymarks = false );
58 
61  virtual bool destroyBuoy( DtUniqueID id );
62 
65  virtual DtBuoyOrBeaconFacade* findBuoy( DtUniqueID elementId );
66 
68  const BuoyMap& buoys() const;
69 
73  DtUniqueID findBuoyWithLightPosition( const DtVector& lightPosition );
74 
78  void moveBuoyToDetachedFromLightList( DtUniqueID buoyId );
79 
83  void moveBuoyToAttachedToLightList( DtUniqueID buoyId );
84 
88  DtUniqueID findBuoyWithDaymarkPosition( const DtVector& daymarkPosition );
89 
94  void moveBuoyToDetachedFromDaymarkList( DtUniqueID buoyId );
95 
100  void moveBuoyToAttachedToDaymarkList( DtUniqueID buoyId );
101 
104  void set2dIconsEnabled(bool enabled);
105 
106  protected:
107 
111  void slot_sceneCreated();
112 
114  void slot_postInitialize();
115 
118  virtual void initializeFeatureCreators();
119 
121  typedef boost::unordered_multimap<std::string, std::string> StylesMap;
122 
126  bool readStyleListFile( const std::string& path,
127  const std::string& layerListFileName, StylesMap& map );
128 
129  protected:
130  static const char* S57AttrMapFilename;
131  static const char* S57ModelDefByNameMap;
132  static const char* S57LayerList;
133  static const char* S57Defaults;
134  static const char* S57IconMap;
135 
136  protected:
143  std::string myName;
144 
146 
149  typedef boost::unordered_map<DtUniqueID, DtVector>
151 
154 
158 
162 
166 
167  boost::signals::connection myPostInitializeConnection;
168  };
169 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)