VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtChannelManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 /******************************************************************************
6 ** $RCSfile: DtChannelManager.h,v $ $Revision: 1.35 $ $State: Exp $
7 ******************************************************************************/
8 
12 
13 #ifndef DtChannelManager_H_
14 #define DtChannelManager_H_
15 
16 #include <vrvCore/vrvCore.h>
19 #include <boost/signals.hpp>
20 
21 #include <map>
22 
23 namespace makVrv
24 {
25  class DtDe;
26  class DtChannel;
27  class DtChannelConfiguration;
28  class DtWindow;
29  class DtAgentManager;
30  class DtChannelManagerSignaler;
31 
36  {
37 
38  protected:
39 
41  DtChannelManager(DtDe& anIG,DtWindow* window,
42  DtChannelConfigurations& channelConfigs);
43 
44  public:
45  typedef std::map<std::string,DtChannel*> ChannelMap;
46 
48  virtual ~DtChannelManager();
49 
54  virtual DtChannel& addChannel(const std::string& displayName, const std::string& windowName,
55  const DtChannelConfiguration& wc);
56 
58  virtual void destroyChannels();
59 
61  virtual void destroyChannel(const std::string& displayName, const std::string& windowName,
62  const std::string& channelName);
63 
65  virtual bool modifyChannel(const std::string& displayName, const std::string& windowName,
66  const std::string& oldChannelName, const DtChannelConfiguration& config);
67 
69  DtChannel* findChannelByName(const std::string& name);
71  const DtChannel* findChannelByName(const std::string& name) const;
73 
75  virtual const ChannelMap& channels() const;
76 
78  virtual ChannelMap& channels();
79 
82  virtual bool tick();
83 
85  virtual void realizeChannels( const std::string& windowName );
86 
88  virtual void updateAllChannelProjections();
89 
91  virtual void setMaxPagedLODs( int maxPagedLODs )
92  {
93  }
94 
95  protected:
96 
98  virtual DtChannel* realizeConfiguration(DtChannelConfiguration&);
99 
105  };
106 
110  {
111  public:
113  static DtChannelManagerSignaler& instance(DtDe& anIG);
114 
116  virtual ~DtChannelManagerSignaler();
117 
119  boost::signal<void (DtChannelManager*, DtChannel*)> signal_channelCreated;
120 
122  boost::signal<void (DtChannelManager*, DtChannel*)> signal_channelToBeDestroyed;
123 
125  boost::signal<void (DtChannelManager*, DtChannel*)> signal_channelUpdated;
126 
127  protected:
129 
130  };
131 
132 
136  {
137  public:
139  static DtChannelManagerCreator& instance(DtDe& anIG);
140 
142  static void registerInstance(DtDe& anIG,DtChannelManagerCreator* anInstance);
143 
145  virtual DtChannelManager* create(DtDe& anIG,DtWindow* window,
146  DtChannelConfigurations& channelConfigs) = 0;
147  };
148 }
149 
150 #endif
151 
DtWindow * myWindow
Definition: DtChannelManager.h:102
Abstract Base class.
Definition: DtWindow.h:25
Virtual base class.
Definition: DtVirtualBaseClass.h:22
DtDe & myDe
Definition: DtChannelManager.h:100
Creator for a DtChannelManager.
Definition: DtChannelManager.h:135
boost::signal< void(DtChannelManager *, DtChannel *)> signal_channelUpdated
Signals when a channel is updated.
Definition: DtChannelManager.h:125
ChannelMap myChannels
Definition: DtChannelManager.h:104
A class which contains the signals used by the channel manager classes.
Definition: DtChannelManager.h:109
The abstract Channel Class.
Definition: DtChannel.h:29
virtual void setMaxPagedLODs(int maxPagedLODs)
This actually does something in the OSG implementation.
Definition: DtChannelManager.h:91
Contains makVrv::DtVirtualBaseClass class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtChannelConfigurations & myChannelConfigurations
Definition: DtChannelManager.h:103
Base class for handling DtChannels.
Definition: DtChannelManager.h:35
Configuration for a single channel Serialized and sent to remote displays as necessary to configure r...
Definition: DtChannelConfiguration.h:26
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
boost::signal< void(DtChannelManager *, DtChannel *)> signal_channelToBeDestroyed
Signals when a channel is about to be destroyed.
Definition: DtChannelManager.h:122
DtChannelManagerSignaler & mySignaler
Definition: DtChannelManager.h:101
boost::signal< void(DtChannelManager *, DtChannel *)> signal_channelCreated
Signals when a new channel is created.
Definition: DtChannelManager.h:119
Contains makVrv::DtViewConfiguration class.
std::map< std::string, DtChannel * > ChannelMap
Definition: DtChannelManager.h:45
Contains DLL export macros.

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)