1. -- 
  2. -- Copyright (c) 2012 Kevin Wellwood 
  3. -- All rights reserved. 
  4. -- 
  5. -- This source code is distributed under the Modified BSD License. For terms and 
  6. -- conditions, see license.txt. 
  7. -- 
  8.  
  9. package Maps.Keen is 
  10.  
  11. private 
  12.  
  13.     -- Keen maps have three layers and the two background layers are physical. 
  14.     type Keen_Map is new Map_Object with null record; 
  15.     type A_Keen_Map is access all Keen_Map'Class; 
  16.  
  17.     -- This constructor is called to create a new empty map. 
  18.     procedure Construct( this : access Keen_Map; width, height : Positive ); 
  19.  
  20.     function Object_Input( stream : access Root_Stream_Type'Class ) return Keen_Map; 
  21.     for Keen_Map'Input use Object_Input; 
  22.  
  23.     procedure Object_Read( stream : access Root_Stream_Type'Class; obj : out Keen_Map ); 
  24.     for Keen_Map'Read use Object_Read; 
  25.  
  26.     procedure Object_Write( stream : access Root_Stream_Type'Class; obj : Keen_Map ); 
  27.     for Keen_Map'Write use Object_Write; 
  28.  
  29. end Maps.Keen;