src/blitter/32bpp_optimized.hpp
author truelight
Sun, 09 Sep 2007 23:57:47 +0000
changeset 8051 ec4e97b7b70c
parent 8049 00faaf0c0b52
child 10429 1b99254f9607
permissions -rw-r--r--
(svn r11080) -Fix r11079: fix it, still dirty, correctly, as the last commit was ... wrong ;)
8049
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     1
/* $Id$ */
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     2
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     3
/** @file 32bpp_optimized.hpp */
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     4
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     5
#ifndef BLITTER_32BPP_OPTIMIZED_HPP
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     6
#define BLITTER_32BPP_OPTIMIZED_HPP
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     7
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     8
#include "32bpp_simple.hpp"
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
     9
#include "factory.hpp"
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    10
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    11
class Blitter_32bppOptimized : public Blitter_32bppSimple {
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    12
public:
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    13
	/* virtual */ void Draw(Blitter::BlitterParams *bp, BlitterMode mode, ZoomLevel zoom);
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    14
	/* virtual */ Sprite *Encode(SpriteLoader::Sprite *sprite, Blitter::AllocatorProc *allocator);
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    15
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    16
	/* virtual */ const char *GetName() { return "32bpp-optimized"; }
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    17
};
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    18
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    19
class FBlitter_32bppOptimized: public BlitterFactory<FBlitter_32bppOptimized> {
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    20
public:
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    21
	/* virtual */ const char *GetName() { return "32bpp-optimized"; }
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    22
	/* virtual */ const char *GetDescription() { return "32bpp Optimized Blitter (no palette animation)"; }
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    23
	/* virtual */ Blitter *CreateInstance() { return new Blitter_32bppOptimized(); }
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    24
};
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    25
00faaf0c0b52 (svn r11078) -Add: added 32bpp-optimized, which is almost twice as fast as 32bpp-simple (based on the work of frosch)
truelight
parents:
diff changeset
    26
#endif /* BLITTER_32BPP_OPTIMIZED_HPP */