00001 /* 00002 * Copyright (c) 2010 Ferruccio Vitale <unixo@devzero.it> 00003 * All rights reserved. 00004 * 00005 * $Id: Observer.h 72 2010-08-03 16:43:52Z unixo $ 00006 */ 00007 00008 #ifndef __OBSERVER_H__ 00009 #define __OBSERVER_H__ 00010 00011 #include <string> 00012 00013 using namespace std; 00014 00015 // Forward declaration 00016 class Observable; 00017 00025 class Observer 00026 { 00027 public: 00028 virtual ~Observer() {} 00029 00030 virtual void willChangeValueForKey(string, Observable *) = 0; 00031 virtual void didChangeValueForKey(string, Observable *) = 0; 00032 }; 00033 00034 #endif /* __OBSERVER_H__ */