Index: /trunk/nv/interface/map_area.hh
===================================================================
--- /trunk/nv/interface/map_area.hh	(revision 297)
+++ /trunk/nv/interface/map_area.hh	(revision 298)
@@ -15,4 +15,5 @@
 #include <nv/common.hh>
 #include <nv/string.hh>
+#include <nv/array.hh>
 #include <nv/position.hh>
 
@@ -34,4 +35,6 @@
 		virtual bool is_visible( const position& ) const { return true; }
 		virtual bool is_explored( const position& ) const { return true; }
+		virtual void set_visible( const position&, bool ) {};
+		virtual bool is_transparent( const position& ) const { return true; };
 		virtual ~map_area(){}
 	};
Index: /trunk/nv/rogue/fov.hh
===================================================================
--- /trunk/nv/rogue/fov.hh	(revision 297)
+++ /trunk/nv/rogue/fov.hh	(revision 298)
@@ -12,4 +12,5 @@
 #include <nv/common.hh>
 #include <nv/position.hh>
+#include <nv/interface/map_area.hh>
 
 namespace nv
@@ -19,16 +20,8 @@
 	{
 
-		class fov_interface
-		{
-		public:
-			virtual void set_visible( const position& p, bool visible ) = 0;
-			virtual bool is_visible( const position& p ) const = 0;
-			virtual bool is_transparent( const position& p ) const = 0;
-		};
-
 		class fov_algorithm
 		{
 		public:
-			virtual void initialize( fov_interface*, const dimension& size ) = 0;
+			virtual void initialize( map_area*, const dimension& size ) = 0;
 			virtual void run( const position& p, uint16 radius ) = 0;
 
Index: /trunk/nv/rogue/fov_recursive_shadowcasting.hh
===================================================================
--- /trunk/nv/rogue/fov_recursive_shadowcasting.hh	(revision 297)
+++ /trunk/nv/rogue/fov_recursive_shadowcasting.hh	(revision 298)
@@ -23,5 +23,5 @@
 			fov_recursive_shadowcasting( bool light_walls = true ) 
 				: m_light_walls( light_walls ) {}
-			virtual void initialize( fov_interface* map, const dimension& size )
+			virtual void initialize( map_area* map, const dimension& size )
 			{
 				m_map  = map;
@@ -32,10 +32,10 @@
 			void cast_light( int row,float start, float end, int oct );
 
-			bool           m_light_walls;
-			int            m_radius;
-			int            m_radius2;
-			position       m_position;
-			dimension      m_size;
-			fov_interface* m_map;
+			bool      m_light_walls;
+			int       m_radius;
+			int       m_radius2;
+			position  m_position;
+			dimension m_size;
+			map_area* m_map;
 		};
 
