Esempio n. 1
0
//Observer pattern
void pseudoMain2(){
    Subject subject;
    SpecificObserver observer1("Andrey");
    SpecificObserver observer2("Clara");
    subject.registerObserver(&observer1);
    subject.registerObserver(&observer2);
    subject.notifyObservers();
}
Esempio n. 2
0
	StockObserver(Subject *stockGrabber) {
		this->stockGrabber = stockGrabber;
		this->observerID = ++observerIDTracker;
		cout << "New Observer: " << this->observerID << endl;
		stockGrabber->registerObserver(this);
	}
 static void connect_method(Subject& subject, Foo& foo)
 {
     foo.reg = subject.registerObserver(
         std::bind(&Foo::handler, &foo, std::placeholders::_1)
     );
 }
 explicit CurrentConditionsDisplay(Subject* weatherData) :
     _weatherData(weatherData), _temperature(0.0), _humidity(0.0) {
     assert(weatherData);
     _weatherData->registerObserver(this);
 }
	public: HeatIndexDisplay(Subject* weatherData) : heatIndex(0) {
		this->weatherData = weatherData;
		weatherData->registerObserver(this);
	}