VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtDynamicOceanObjectManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 #pragma once
10 
11 #include <vrvCore/vrvCore.h>
13 
14 #include <vrvUtil/signalslib.h>
15 
16 #include <set>
17 #include <string>
18 
19 namespace makVrv
20 {
21  class DtDe;
22  class DtDynamicOceanObject;
23 
28  {
29  public:
31  virtual ~DtDynamicOceanObjectManager();
32 
33  typedef std::set<DtDynamicOceanObject*> DynamicOceanObjectSet;
34 
36  virtual const DynamicOceanObjectSet& dynamicOceanObjects() const;
37 
39  virtual bool hasDynamicOceanObjects() const;
40 
42  virtual void registerDynamicOceanObject(DtDynamicOceanObject* obj);
43 
45  virtual void unregisterDynamicOceanObject(DtDynamicOceanObject* obj);
46 
48  static DtDynamicOceanObjectManager& instance(DtDe& de);
49 
51  static const std::string& theClassName();
52 
53  boost::signalslib::signal<void(DtDynamicOceanObject*)> signal_dynamicOceanObjectAdded;
54  boost::signalslib::signal<void(DtDynamicOceanObject*)> signal_dynamicOceanObjectAboutToBeRemoved;
55 
56 
57  protected:
60 
62  };
63 }
std::set< DtDynamicOceanObject * > DynamicOceanObjectSet
Definition: DtDynamicOceanObjectManager.h:33
DynamicOceanObjectSet myDynamicOceanObjects
Definition: DtDynamicOceanObjectManager.h:61
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
boost::signalslib::signal< void(DtDynamicOceanObject *)> signal_dynamicOceanObjectAdded
Definition: DtDynamicOceanObjectManager.h:53
boost::signalslib::signal< void(DtDynamicOceanObject *)> signal_dynamicOceanObjectAboutToBeRemoved
Definition: DtDynamicOceanObjectManager.h:54
Manager that provides direct access to the dynamic ocean objects in use within a display engine...
Definition: DtDynamicOceanObjectManager.h:27
Contains makVrv::DtVirtualBaseClass class.
The base dynamic ocean object. An actual (do-nothing) implementation is provided so that an implement...
Definition: DtDynamicOceanObject.h:29
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
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:70
Contains DLL export macros.

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)