home *** CD-ROM | disk | FTP | other *** search
/ Dream 52 / Amiga_Dream_52.iso / Linux / Divers / freedraft.tar.gz / freedraft.tar / FREEdraft-050298 / DRAWABLES / tabledrawables.h < prev   
C/C++ Source or Header  |  1998-04-18  |  2KB  |  52 lines

  1. // tabledrawables.h
  2.  
  3. // Copyright (C) 1998  Cliff Johnson                                       //
  4. //                                                                         //
  5. // This program is free software; you can redistribute it and/or           //
  6. // modify it under the terms of the GNU  General Public                    //
  7. // License as published by the Free Software Foundation; either            //
  8. // version 2 of the License, or (at your option) any later version.        //
  9. //                                                                         //
  10. // This software is distributed in the hope that it will be useful,        //
  11. // but WITHOUT ANY WARRANTY; without even the implied warranty of          //
  12. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU       //
  13. // General Public License for more details.                                //
  14. //                                                                         //
  15. // You should have received a copy of the GNU General Public License       //
  16. // along with this software (see COPYING); if not, write to the        //
  17. // Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. //
  18. //
  19.  
  20.  
  21.  
  22.  
  23. //  This is a table of drawables - it does two things: 1) it is where the 
  24. //  drawable objects are actually instansiated and where the sacred pointers are
  25. //  kept and 2) it maps each drawable to a int (enum), which can be used in save/recall
  26. //  as well as at viewer registration to get the pointers.
  27.  
  28. #ifndef TABLEDRAWABLES_H
  29. #define TABLEDRAWABLES_H
  30.  
  31. #include <map>
  32. #include <drawablegeom.h>
  33.  
  34. class DrawableException;
  35.  
  36. class TableDrawables
  37. {
  38.  
  39. public:
  40.  
  41. TableDrawables();
  42. ~TableDrawables();
  43.  
  44. const DrawableGeom* Drawable(const int&) const throw (DrawableException);
  45.  
  46. private:
  47.  
  48.     map<int, const DrawableGeom*, less<int> > drawableMap;
  49. };
  50.  
  51. #endif
  52.