X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=plugins%2Fimage%2Fbmp.h;h=bbb0714e5742165c2bb9478093194c3db4deeacf;hb=a68115c805c158e21a4b6574026a91e0ae58bfac;hp=ea93165cdb58e61b336a40bfcdcfb8809037a6db;hpb=5265d3cc1517566910718738ee6fa48e2466d3ea;p=xonotic%2Fnetradiant.git diff --git a/plugins/image/bmp.h b/plugins/image/bmp.h index ea93165c..bbb0714e 100644 --- a/plugins/image/bmp.h +++ b/plugins/image/bmp.h @@ -1,100 +1,30 @@ /* -Copyright (C) 1999-2007 id Software, Inc. and contributors. -For a list of contributors, see the accompanying CONTRIBUTORS file. + Copyright (C) 2001-2006, William Joseph. + All Rights Reserved. -This file is part of GtkRadiant. + This file is part of GtkRadiant. -GtkRadiant is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. + GtkRadiant is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. -GtkRadiant 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 General Public License for more details. + GtkRadiant 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 General Public License for more details. -You should have received a copy of the GNU General Public License -along with GtkRadiant; if not, write to the Free Software -Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -*/ + You should have received a copy of the GNU General Public License + along with GtkRadiant; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ -#ifndef _BMP_H -#define _BMP_H +#if !defined ( INCLUDED_BMP_H ) +#define INCLUDED_BMP_H -#define xBI_NONE 0 -#define xBI_RGB 0 -#define xBI_RLE4 2 -#define xBI_RLE8 1 +class Image; +class ArchiveFile; -#define BMP_SIGNATURE_WORD 0x4d42 - -#pragma pack(push) -#pragma pack(1) - -typedef struct { - unsigned short bfType; // signature - 'BM' - unsigned long bfSize; // file size in bytes - unsigned short bfReserved1; // 0 - unsigned short bfReserved2; // 0 - unsigned long bfOffBits; // offset to bitmap -} bmphd_t; - - - -typedef struct { - unsigned long biSize; // size of this struct - long biWidth; // bmap width in pixels - long biHeight; // bmap height in pixels - unsigned short biPlanes; // num planes - always 1 - unsigned short biBitCount; // bits perpixel - unsigned long biCompression; // compression flag - unsigned long biSizeImage; // image size in bytes - long biXPelsPerMeter; // horz resolution - long biYPelsPerMeter; // vert resolution - unsigned long biClrUsed; // 0 -> color table size - unsigned long biClrImportant; // important color count -} binfo_t; - - -typedef struct { - unsigned char blue; - unsigned char green; - unsigned char red; - unsigned char reserved; -} drgb_t; - - -// quake expects its palette to be bgr -// this is totally backwards but what can you do -typedef struct { - unsigned char r; - unsigned char g; - unsigned char b; -} rgb_t; - - -typedef struct { - unsigned char b; - unsigned char g; - unsigned char r; -} bgr_t; - - -typedef struct { - int bpp; // bits per pixel - int width; - int height; - unsigned char *data; - rgb_t *palette; -} bitmap_t; - - -void LoadBMP(char *filename, bitmap_t *bit); -void FreeBMP(bitmap_t *bitmap); -void WriteBMP(char *filename, bitmap_t *bit); -void NewBMP(int width, int height, int bpp, bitmap_t *bit); - -#pragma pack(pop) +Image* LoadBMP( ArchiveFile& file ); #endif