Index: trunk/nv/interface/map_area.hh
===================================================================
--- trunk/nv/interface/map_area.hh	(revision 454)
+++ trunk/nv/interface/map_area.hh	(revision 455)
@@ -34,5 +34,4 @@
 		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 454)
+++ trunk/nv/rogue/fov.hh	(revision 455)
@@ -12,5 +12,4 @@
 #include <nv/common.hh>
 #include <nv/core/position.hh>
-#include <nv/interface/map_area.hh>
 
 namespace nv
@@ -19,9 +18,15 @@
 	namespace rogue
 	{
+		class fov_interface
+		{
+		public:
+			virtual bool is_transparent( const position& ) const = 0;
+			virtual void set_visible( const position&, bool ) = 0;
+		};
 
 		class fov_algorithm
 		{
 		public:
-			virtual void initialize( map_area*, const dimension& size ) = 0;
+			virtual void initialize( fov_interface*, const dimension& size ) = 0;
 			virtual void run( const position& p, uint16 radius ) = 0;
 			virtual ~fov_algorithm() {}
Index: trunk/nv/rogue/fov_recursive_shadowcasting.hh
===================================================================
--- trunk/nv/rogue/fov_recursive_shadowcasting.hh	(revision 454)
+++ trunk/nv/rogue/fov_recursive_shadowcasting.hh	(revision 455)
@@ -17,5 +17,4 @@
 	namespace rogue
 	{
-
 		class fov_recursive_shadowcasting : public fov_algorithm
 		{
@@ -23,5 +22,5 @@
 			fov_recursive_shadowcasting( bool light_walls = true ) 
 				: m_light_walls( light_walls ) {}
-			virtual void initialize( map_area* map, const dimension& size )
+			virtual void initialize( fov_interface* map, const dimension& size )
 			{
 				m_map  = map;
@@ -32,10 +31,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;
-			map_area* m_map;
+			bool           m_light_walls;
+			int            m_radius;
+			int            m_radius2;
+			position       m_position;
+			dimension      m_size;
+			fov_interface* m_map;
 		};
 
