Karte.cpp 803 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #include "Karte.h"
  2. #include <Punkt.h>
  3. // Inhalt der Karte Klasse aus Karte.h
  4. // Konstruktor
  5. Karte::Karte()
  6. {
  7. id = 0;
  8. map = new Bild();
  9. size = Punkt( 0, 0 );
  10. ref = 1;
  11. }
  12. // Destruktor
  13. Karte::~Karte()
  14. {
  15. map->release();
  16. }
  17. // nicht constant
  18. void Karte::setKarteId( int id )
  19. {
  20. this->id = id;
  21. }
  22. void Karte::setSize( int br, int hi )
  23. {
  24. map->neuBild( br, hi, 0 );
  25. size.x = br;
  26. size.y = hi;
  27. }
  28. // constant
  29. int Karte::getKarteId() const
  30. {
  31. return id;
  32. }
  33. int Karte::getBreite() const
  34. {
  35. return size.x;
  36. }
  37. int Karte::getHeight() const
  38. {
  39. return size.y;
  40. }
  41. Bild *Karte::zMap() const
  42. {
  43. return ( map->getBreite() != 0 && map->getHeight() != 0 ) ? map : 0;
  44. }
  45. // Reference Counting
  46. Karte *Karte::getThis()
  47. {
  48. ref++;
  49. return this;
  50. }
  51. Karte *Karte::release()
  52. {
  53. ref--;
  54. if( !ref )
  55. delete this;
  56. return 0;
  57. }