#ifndef ABSOBSERVEDGEOMETER_HPP #define ABSOBSERVEDGEOMETER_HPP // // $Id: absObservedGeometer.hpp,v 1.1 2001/06/14 19:10:00 hobbs Exp $ // // File: absObservedGEometer.hpp // Purpose: // Created: 14-JUN-2001 unknown // // $Revision: 1.1 $ // // // Include files #include // Global definitions namespace dgs { class GeometryObserver; class absObservedGeometer { public: absObservedGeometer() {} ~absObservedGeometer(); protected: /// Let all registered observers know that a new geometry is here void notify_observers(); private: friend class GeometryObserver; /// Register a new observer. Called by GeometryObserver constructor void add_observer(GeometryObserver*); /// Unregister an observer void remove_observer(GeometryObserver*); /// Here are the currently registered observers std::vector d_observers; }; } #endif //ABSOBSERVEDGEOMETER_HPP