00001 /********************************************************************************/ 00002 /* */ 00003 /* Netrinjo-Engine - a library for game-development */ 00004 /* Copyright (C) 2005 by Tobias Nadler */ 00005 /* */ 00006 /* This library is free software; you can redistribute it and/or */ 00007 /* modify it under the terms of the GNU Lesser General Public */ 00008 /* License as published by the Free Software Foundation; either */ 00009 /* version 2.1 of the License, or (at your option) any later version. */ 00010 /* */ 00011 /* This library is distributed in the hope that it will be useful, */ 00012 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ 00013 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU */ 00014 /* Lesser General Public License for more details. */ 00015 /* */ 00016 /* You should have received a copy of the GNU Lesser General Public */ 00017 /* License along with this library; if not, write to the Free Software */ 00018 /* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ 00019 /* */ 00020 /********************************************************************************/ 00021 00022 #ifndef SDLSURFACECONTAINER_H 00023 #define SDLSURFACECONTAINER_H 00024 00025 #include <vector> 00026 #include "sdlmanager.h" 00027 00028 using namespace std; 00029 00043 class DECLSPEC SdlSurfaceContainer 00044 { 00045 public: 00052 DECLSPEC SdlSurfaceContainer( const char *name ); 00053 virtual DECLSPEC ~SdlSurfaceContainer(); 00054 00056 const char *getName() const { return chName; } 00063 DECLSPEC SdlSurface *getSurface( unsigned int i ); 00065 unsigned int numSurfaces() { return lSurfaces.size(); } 00066 00068 bool isFailed() { return bFailed; } 00069 00070 protected: 00075 virtual void onRefresh() {} 00077 DECLSPEC void failed(); 00079 vector<SdlSurface *> lSurfaces; 00080 private: 00081 char *chName; 00082 bool bFailed; 00083 }; 00084 00085 #endif