Glide Plugin GLES2 port from mupen64plus-ae, but with special FrameSkip code
[mupen64plus-pandora.git] / source / gles2glide64 / src / GlideHQ / TxHiResCache.h
1 /*
2  * Texture Filtering
3  * Version:  1.0
4  *
5  * Copyright (C) 2007  Hiroshi Morii   All Rights Reserved.
6  * Email koolsmoky(at)users.sourceforge.net
7  * Web   http://www.3dfxzone.it/koolsmoky
8  *
9  * this is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License as published by
11  * the Free Software Foundation; either version 2, or (at your option)
12  * any later version.
13  *
14  * this is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with GNU Make; see the file COPYING.  If not, write to
21  * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
22  */
23
24 #ifndef __TXHIRESCACHE_H__
25 #define __TXHIRESCACHE_H__
26
27 /* support hires textures
28  *   0: disable
29  *   1: enable
30  */
31 #define HIRES_TEXTURE 1
32
33 #include "TxCache.h"
34 #include "TxQuantize.h"
35 #include "TxImage.h"
36 #include "TxReSample.h"
37 #include <boost/filesystem.hpp>
38
39 class TxHiResCache : public TxCache
40 {
41 private:
42   int _maxwidth;
43   int _maxheight;
44   int _maxbpp;
45   boolean _haveCache;
46   boolean _abortLoad;
47   TxImage *_txImage;
48   TxQuantize *_txQuantize;
49   TxReSample *_txReSample;
50   boolean loadHiResTextures(boost::filesystem::wpath dir_path, boolean replace);
51 public:
52   ~TxHiResCache();
53   TxHiResCache(int maxwidth, int maxheight, int maxbpp, int options,
54                const wchar_t *datapath, const wchar_t *cachepath,
55                const wchar_t *ident, dispInfoFuncExt callback);
56   boolean empty();
57   boolean load(boolean replace);
58 };
59
60 #endif /* __TXHIRESCACHE_H__ */