VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtKeyedSignalConnectionManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
10 
11 #pragma once
12 
13 #include <vrvUtil/vrvUtil.h>
15 
16 #include <boost/unordered_map.hpp>
17 
18 namespace makVrv
19 {
24  template <typename KeyType>
26  {
27  public:
28 
31 
34 
36  void manageConnection(KeyType key, const boost::signalslib::connection& conn);
37 
39  void disconnectSignals();
40 
42  void disconnectSignal(KeyType key);
43 
45  bool hasSignal(KeyType key);
46 
49  bool blockConnections(bool blocked);
50 
52  bool connectionsBlocked() const;
53 
57  bool blockConnection(KeyType key, bool blocked );
58 
60  bool connectionBlocked(KeyType key) const;
61 
62  protected:
64  typedef boost::unordered_map<KeyType, boost::signalslib::connection> KeyedConnectionsMap;
65 
68 
69  private:
70 
73 
76  };
77 
78 }
79 
80 #define keyed_signal_connection_manager_INL_
81 #include <vrvUtil/DtKeyedSignalConnectionManager.inl>
82 #undef keyed_signal_connection_manager_INL_
83 
boost::unordered_map< KeyType, boost::signalslib::connection > KeyedConnectionsMap
A collection of keyed signals.
Definition: DtKeyedSignalConnectionManager.h:64
bool hasSignal(KeyType key)
Check if a signal for this key value already exists.
Contains DLL export macros.
void disconnectSignals()
Disconnect all signals AND removes them.
DtKeyedSignalConnectionManager extends DtSignalConnectionManager to allow access to managed signals v...
Definition: DtKeyedSignalConnectionManager.h:25
bool connectionBlocked(KeyType key) const
check whether connections are blocked.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
void manageConnection(KeyType key, const boost::signalslib::connection &conn)
Connect a signal.
DtKeyedSignalConnectionManager & operator=(DtKeyedSignalConnectionManager asn)
Assignment.
KeyedConnectionsMap myKeyedConnections
The connected signals.
Definition: DtKeyedSignalConnectionManager.h:67
bool connectionsBlocked() const
check whether connections are blocked.
Base class to provide boost signal/slot management.
bool blockConnection(KeyType key, bool blocked)
Blocks/unblocks connections. Returns current state connection blocking, This function will cause the ...
void disconnectSignal(KeyType key)
Disconnect and remove a signal.
bool blockConnections(bool blocked)
Blocks/unblocks connections. Returns current state connection blocking.

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)