Mercurial > fife-parpg
view engine/core/vfs/raw/rawdata.i @ 144:d2f1e81fbe2c
* Fixed a scons issue, where libraries checked for C instead of C++
* Fixed a shutdown order problem - deleting a GLImage will reference the RenderBackend, thus image pools must be deleted first.
* Added an explicit Engine.destroy method to force the shutdown, in case python fails to do so. Necessary - see above.
* The Pool::printStatistics now gives out information how many resources are loaded. Called before destruction. Add 'pool' to the LogModules to check memory pooling issues.
author | phoku@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Thu, 09 Oct 2008 06:18:36 +0000 |
parents | 90005975cdbb |
children | 5bb52a43f48b |
line wrap: on
line source
/*************************************************************************** * Copyright (C) 2005-2008 by the FIFE team * * http://www.fifengine.de * * This file is part of FIFE. * * * * FIFE is free software; you can redistribute it and/or * * modify it under the terms of the GNU Lesser General Public * * License as published by the Free Software Foundation; either * * version 2.1 of the License, or (at your option) any later version. * * * * This library is distributed in the hope that it will be useful, * * but WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * * Lesser General Public License for more details. * * * * You should have received a copy of the GNU Lesser General Public * * License along with this library; if not, write to the * * Free Software Foundation, Inc., * * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * ***************************************************************************/ %module fife %{ #include "vfs/raw/rawdata.h" %} %include "vfs/raw/rawdatasource.h" namespace FIFE { %apply std::string &OUTPUT { std::string& outbuffer }; class RawData { public: RawData(RawDataSource* datasource); virtual ~RawData(); std::vector<uint8_t> getDataInBytes(); std::vector<std::string> getDataInLines(); unsigned int getDataLength() const; unsigned int getCurrentIndex() const; void setIndex(unsigned int index); void moveIndex(int offset); void readInto(uint8_t* buffer, size_t len); uint8_t read8(); uint16_t read16Little(); uint32_t read32Little(); uint16_t read16Big(); uint32_t read32Big(); void read(std::string& outbuffer, int size=-1); std::string readString(size_t len); bool getLine(std::string& buffer); }; %clear std::string& outbuffer; }