43
libsiedler2::ArchivItem *glAllocator(unsigned short type, unsigned short subtype, const libsiedler2::ArchivItem *item)
43
libsiedler2::ArchivItem* glAllocator(unsigned short type, unsigned short subtype, const libsiedler2::ArchivItem* item)
46
type = item->getBobType();
50
case libsiedler2::BOBTYPE_SOUND: // WAVs, MIDIs
52
const libsiedler2::baseArchivItem_Sound *i = dynamic_cast<const libsiedler2::baseArchivItem_Sound*>(item);
54
subtype = i->getType();
58
case libsiedler2::SOUNDTYPE_MIDI: // MIDI
61
return new glArchivItem_Sound_Midi();
63
return new glArchivItem_Sound_Midi( dynamic_cast<const glArchivItem_Sound_Midi*>(item) );
65
case libsiedler2::SOUNDTYPE_WAVE: // WAV
68
return new glArchivItem_Sound_Wave();
70
return new glArchivItem_Sound_Wave( dynamic_cast<const glArchivItem_Sound_Wave*>(item) );
72
case libsiedler2::SOUNDTYPE_XMIDI: // XMIDI
75
return new glArchivItem_Sound_XMidi();
77
return new glArchivItem_Sound_XMidi( dynamic_cast<const glArchivItem_Sound_XMidi*>(item) );
79
case libsiedler2::SOUNDTYPE_OTHER: // Andere
82
return new glArchivItem_Sound_Other();
84
return new glArchivItem_Sound_Other( dynamic_cast<const glArchivItem_Sound_Other*>(item) );
88
return libsiedler2::StandardAllocator(type, subtype, item);
92
case libsiedler2::BOBTYPE_BOB: // Bob-File
95
return new glArchivItem_Bob();
97
return new glArchivItem_Bob( dynamic_cast<const glArchivItem_Bob*>(item) );
99
case libsiedler2::BOBTYPE_BITMAP_RLE: // RLE komprimiertes Bitmap
102
return new glArchivItem_Bitmap_RLE();
104
return new glArchivItem_Bitmap_RLE( dynamic_cast<const glArchivItem_Bitmap_RLE*>(item) );
106
case libsiedler2::BOBTYPE_FONT: // Font
109
return new glArchivItem_Font();
111
return new glArchivItem_Font( dynamic_cast<const glArchivItem_Font*>(item) );
113
case libsiedler2::BOBTYPE_BITMAP_PLAYER: // Bitmap mit spezifischer Spielerfarbe
116
return new glArchivItem_Bitmap_Player();
118
return new glArchivItem_Bitmap_Player( dynamic_cast<const glArchivItem_Bitmap_Player*>(item) );
120
case libsiedler2::BOBTYPE_BITMAP_SHADOW: // Schatten
123
return new glArchivItem_Bitmap_Shadow();
125
return new glArchivItem_Bitmap_Shadow( dynamic_cast<const glArchivItem_Bitmap_Shadow*>(item) );
127
case libsiedler2::BOBTYPE_MAP: // Map
130
return new glArchivItem_Map();
132
return new glArchivItem_Map( dynamic_cast<const glArchivItem_Map*>(item) );
134
case libsiedler2::BOBTYPE_BITMAP_RAW: // unkomprimiertes Bitmap
137
return new glArchivItem_Bitmap_Raw();
139
return new glArchivItem_Bitmap_Raw( dynamic_cast<const glArchivItem_Bitmap_Raw*>(item) );
144
return libsiedler2::StandardAllocator(type, subtype, item);
46
type = item->getBobType();
50
case libsiedler2::BOBTYPE_SOUND: // WAVs, MIDIs
52
const libsiedler2::baseArchivItem_Sound* i = dynamic_cast<const libsiedler2::baseArchivItem_Sound*>(item);
54
subtype = i->getType();
58
case libsiedler2::SOUNDTYPE_MIDI: // MIDI
61
return new glArchivItem_Sound_Midi();
63
return new glArchivItem_Sound_Midi( dynamic_cast<const glArchivItem_Sound_Midi*>(item) );
65
case libsiedler2::SOUNDTYPE_WAVE: // WAV
68
return new glArchivItem_Sound_Wave();
70
return new glArchivItem_Sound_Wave( dynamic_cast<const glArchivItem_Sound_Wave*>(item) );
72
case libsiedler2::SOUNDTYPE_XMIDI: // XMIDI
75
return new glArchivItem_Sound_XMidi();
77
return new glArchivItem_Sound_XMidi( dynamic_cast<const glArchivItem_Sound_XMidi*>(item) );
79
case libsiedler2::SOUNDTYPE_OTHER: // Andere
82
return new glArchivItem_Sound_Other();
84
return new glArchivItem_Sound_Other( dynamic_cast<const glArchivItem_Sound_Other*>(item) );
88
return libsiedler2::StandardAllocator(type, subtype, item);
92
case libsiedler2::BOBTYPE_BOB: // Bob-File
95
return new glArchivItem_Bob();
97
return new glArchivItem_Bob( dynamic_cast<const glArchivItem_Bob*>(item) );
99
case libsiedler2::BOBTYPE_BITMAP_RLE: // RLE komprimiertes Bitmap
102
return new glArchivItem_Bitmap_RLE();
104
return new glArchivItem_Bitmap_RLE( dynamic_cast<const glArchivItem_Bitmap_RLE*>(item) );
106
case libsiedler2::BOBTYPE_FONT: // Font
109
return new glArchivItem_Font();
111
return new glArchivItem_Font( dynamic_cast<const glArchivItem_Font*>(item) );
113
case libsiedler2::BOBTYPE_BITMAP_PLAYER: // Bitmap mit spezifischer Spielerfarbe
116
return new glArchivItem_Bitmap_Player();
118
return new glArchivItem_Bitmap_Player( dynamic_cast<const glArchivItem_Bitmap_Player*>(item) );
120
case libsiedler2::BOBTYPE_BITMAP_SHADOW: // Schatten
123
return new glArchivItem_Bitmap_Shadow();
125
return new glArchivItem_Bitmap_Shadow( dynamic_cast<const glArchivItem_Bitmap_Shadow*>(item) );
127
case libsiedler2::BOBTYPE_MAP: // Map
130
return new glArchivItem_Map();
132
return new glArchivItem_Map( dynamic_cast<const glArchivItem_Map*>(item) );
134
case libsiedler2::BOBTYPE_BITMAP_RAW: // unkomprimiertes Bitmap
137
return new glArchivItem_Bitmap_Raw();
139
return new glArchivItem_Bitmap_Raw( dynamic_cast<const glArchivItem_Bitmap_Raw*>(item) );
144
return libsiedler2::StandardAllocator(type, subtype, item);