![]() |
Rosetta
2019.07
|
ObserverGraph: Observer Graph Representation. More...
#include <ObserverGraph.hh>
Public Types | |
typedef std::size_t | size_type |
typedef std::size_t | Size |
typedef std::map< Observer *, size_type > | Graph |
typedef std::vector < Graph::iterator > | Sources |
Public Member Functions | |
ObserverGraph (Subject const &s) | |
Subject Constructor. More... | |
~ObserverGraph () | |
Destructor. More... | |
bool | empty () const |
Empty? More... | |
bool | push (Subject const &s_root, Subject const &s) |
Push a Subject's Transitive Observers onto Graph and Return Acyclicity. More... | |
Observer * | pop () |
Pop a Source Observer from Graph. More... | |
Private Attributes | |
Graph | graph_ |
Graph representation. More... | |
Sources | sources_ |
Source Observers with in-degree == zero. More... | |
ObserverGraph: Observer Graph Representation.
typedef std::map< Observer *, size_type > ObjexxFCL::internal::ObserverGraph::Graph |
typedef std::size_t ObjexxFCL::internal::ObserverGraph::Size |
typedef std::size_t ObjexxFCL::internal::ObserverGraph::size_type |
typedef std::vector< Graph::iterator > ObjexxFCL::internal::ObserverGraph::Sources |
ObjexxFCL::internal::ObserverGraph::ObserverGraph | ( | Subject const & | s | ) |
Subject Constructor.
References utility::io::oc::cerr, utility::options::OptionKeys::options::exit, graph_, push(), and sources_.
|
inline |
Destructor.
|
inline |
Observer * ObjexxFCL::internal::ObserverGraph::pop | ( | ) |
Pop a Source Observer from Graph.
References graph_, and sources_.
Referenced by ObjexxFCL::internal::ObserverMediator::notify().
Push a Subject's Transitive Observers onto Graph and Return Acyclicity.
References graph_.
Referenced by ObserverGraph().
|
private |
Graph representation.
Referenced by empty(), ObserverGraph(), pop(), and push().
|
private |
Source Observers with in-degree == zero.
Referenced by ObserverGraph(), and pop().