BlitterFactoryBase Class Reference

The base factory, keeping track of all blitters. More...

#include <factory.hpp>

Inheritance diagram for BlitterFactoryBase:

BlitterFactory< T > BlitterFactory< FBlitter_32bppAnim > BlitterFactory< FBlitter_32bppOptimized > BlitterFactory< FBlitter_32bppSimple > BlitterFactory< FBlitter_8bppDebug > BlitterFactory< FBlitter_8bppOptimized > BlitterFactory< FBlitter_8bppSimple > BlitterFactory< FBlitter_Null >

Public Member Functions

 BlitterFactoryBase ()
virtual ~BlitterFactoryBase ()
virtual const char * GetDescription ()=0
 Get a nice description of the blitter-class.
virtual BlitterCreateInstance ()=0
 Create an instance of this Blitter-class.

Static Public Member Functions

static BlitterSelectBlitter (const char *name)
 Find the requested blitter and return his class.
static BlitterGetCurrentBlitter ()
 Get the current active blitter (always set by calling SelectBlitter).
static char * GetBlittersInfo (char *p, const char *last)

Protected Member Functions

void RegisterBlitter (const char *name)
 Register a blitter internally, based on his name.

Private Types

typedef std::map< const char *,
BlitterFactoryBase *, StringCompare
Blitters

Static Private Member Functions

static BlittersGetBlitters ()
static Blitter ** GetActiveBlitter ()

Private Attributes

const char * name

Data Structures

struct  StringCompare

Detailed Description

The base factory, keeping track of all blitters.

Definition at line 20 of file factory.hpp.


Member Function Documentation

void BlitterFactoryBase::RegisterBlitter ( const char *  name  )  [inline, protected]

Register a blitter internally, based on his name.

Parameters:
name the name of the blitter.
Note:
an assert() will be trigger if 2 blitters with the same name try to register.

Definition at line 51 of file factory.hpp.

References assert, GetBlitters(), and P.

Referenced by BlitterFactory< FBlitter_8bppOptimized >::BlitterFactory().

static Blitter* BlitterFactoryBase::SelectBlitter ( const char *  name  )  [inline, static]

Find the requested blitter and return his class.

Parameters:
name the blitter to select.
Postcondition:
Sets the blitter so GetCurrentBlitter() returns it too.

Definition at line 80 of file factory.hpp.

References DEBUG, GetActiveBlitter(), GetBlitters(), and StrEmpty().

Referenced by VideoDriver_Null::Start(), and ttd_main().


The documentation for this class was generated from the following file:
Generated on Sat Sep 6 20:15:59 2008 for openttd by  doxygen 1.4.7