Rosetta
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Observer.cc
Go to the documentation of this file.
1 // Observer: Combined Subject + Observer Abstract Base Class
2 //
3 // Project: Objexx Fortran Compatibility Library (ObjexxFCL)
4 //
5 // Version: 3.0.0
6 //
7 // Language: C++
8 //
9 // Copyright (c) 2000-2009 Objexx Engineering, Inc. All Rights Reserved.
10 // Use of this source code or any derivative of it is restricted by license.
11 // Licensing is available from Objexx Engineering, Inc.: http://objexx.com Objexx@objexx.com
12 
13 
14 // ObjexxFCL Headers
15 #include <ObjexxFCL/Observer.hh>
17 
18 
19 namespace ObjexxFCL {
20 
21 
22 // Observer: Combined Subject + Observer Abstract Base Class
23 
24 
25  /// @brief Notify Observers That This Subject Has Changed
26  void
28  {
30  }
31 
32 
33  /// @brief Acyclic After Adding an Observer of This Subject?
34  bool
36  {
37  return internal::ObserverMediator::acyclic( *this, observer );
38  }
39 
40 
41 // Observer
42 
43 
44 } // namespace ObjexxFCL
bool acyclic(Subject const &s, Observer &o)
Acyclic After Adding a Subject-Observer Relation?
virtual bool has_observer() const =0
Has At Least One Observer?
void notify() const
Notify Observers That This Subject Has Changed.
Definition: Observer.cc:27
Observer: Combined Subject + Observer Abstract Base Class.
Definition: Observer.hh:26
bool acyclic(Observer &) const
Acyclic After Adding an Observer of This Subject?
Definition: Observer.cc:35
void notify(Subject const &s)
Notify Observers About Change in a Subject.