79 virtual void BlitForward(
void * dest,
void const * source,
int length)
const {memcpy(dest, source, length*
sizeof(T));}
80 virtual void BlitBackward(
void * dest,
void const * source,
int length)
const {memmove(dest, source, length*
sizeof(T));}
91 virtual void BlitForward(
void * dest,
void const * source,
int len)
const
93 for (
int index = 0; index < len; index++) {
94 T color = *(T
const *)source;
95 source = ((T *)source) + 1;
96 if (color != 0) *((T *)dest) = color;
97 dest = ((T *)dest) + 1;
118 BlitPlainXlat(T
const * translator) : TranslateTable(translator) {assert(TranslateTable !=
NULL);}
119 virtual void BlitForward(
void * dest,
void const * source,
int len)
const
121 for (
int index = 0; index < len; index++) {
122 unsigned char color = *(
unsigned char const *)source;
123 source = ((
unsigned char const *)source)+1;
124 *((T *)dest) = TranslateTable[color];
125 dest = ((T *)dest) + 1;
137 T
const * TranslateTable;
149 BlitTransXlat(T
const * translator) : TranslateTable(translator) {assert(TranslateTable !=
NULL);}
150 virtual void BlitForward(
void * dest,
void const * source,
int len)
const
152 for (
int index = 0; index < len; index++) {
153 unsigned char color = *(
unsigned char const *)source;
154 source = ((
unsigned char const *)source)+1;
156 *((T *)dest) = TranslateTable[color];
158 dest = ((T *)dest) + 1;
170 T
const * TranslateTable;
183 BlitTransRemapXlat(
unsigned char const * remapper, T
const * translator) : RemapTable(remapper), TranslateTable(translator) {assert(RemapTable !=
NULL);assert(TranslateTable !=
NULL);}
184 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
186 for (
int index = 0; index < length; index++) {
187 unsigned char color = *(
unsigned char const *)source;
188 source = ((
unsigned char const *)source)+1;
190 *((T *)dest) = TranslateTable[RemapTable[color]];
192 dest = ((T *)dest) + 1;
204 unsigned char const * RemapTable;
205 T
const * TranslateTable;
219 BlitTransZRemapXlat(
unsigned char const *
const * remapper, T
const * translator) : RemapTable(remapper), TranslateTable(translator) {assert(RemapTable !=
NULL);assert(TranslateTable !=
NULL);}
220 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
222 unsigned char const * rtable = *RemapTable;
223 for (
int index = 0; index < length; index++) {
224 unsigned char color = *(
unsigned char const *)source;
225 source = ((
unsigned char const *)source)+1;
227 *((T *)dest) = TranslateTable[rtable[color]];
229 dest = ((T *)dest) + 1;
241 unsigned char const *
const * RemapTable;
242 T
const * TranslateTable;
256 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
258 for (
int index = 0; index < length; index++) {
259 unsigned char color = *(
unsigned char const *)source;
260 source = ((
unsigned char const *)source)+1;
262 *((T *)dest) = (T)((((*(T *)dest) >> 1) & Mask));
264 dest = ((T *)dest) + 1;
289 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
291 for (
int index = 0; index < length; index++) {
292 unsigned char color = *(
unsigned char const *)source;
293 source = ((
unsigned char const *)source)+1;
295 *((T *)dest) = RemapTable[*((T *)dest)];
297 dest = ((T *)dest) + 1;
309 T
const * RemapTable;
322 virtual void BlitForward(
void * dest,
void const * ,
int length)
const
324 for (
int index = 0; index < length; index++) {
325 *((T *)dest) = (T)(((*(T *)dest) >> 1) & Mask);
326 dest = ((T *)dest) + 1;
350 BlitTransLucent50(T
const * translator, T mask) : TranslateTable(translator), Mask(mask) {assert(TranslateTable !=
NULL);}
351 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
353 for (
int index = 0; index < length; index++) {
354 unsigned char color = *(
unsigned char const *)source;
355 source = ((
unsigned char *)source) + 1;
357 *((T *)dest) = (T)((((*(T *)dest) >> 1) & Mask) + ((TranslateTable[color] >> 1) & Mask));
359 dest = ((T *)dest) + 1;
371 T
const * TranslateTable;
383 BlitTransLucent25(T
const * translator, T mask) : TranslateTable(translator), Mask(mask) {assert(TranslateTable !=
NULL);}
384 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
386 for (
int index = 0; index < length; index++) {
387 unsigned char color = *(
unsigned char const *)source;
388 source = ((
unsigned char *)source) + 1;
390 T qsource = (T)(((TranslateTable[color] >> 2) & Mask));
391 T qdest = (T)((((*(T *)dest) >> 2) & Mask));
392 *((T *)dest) = (T)(qdest + qsource + qsource + qsource);
394 dest = ((T *)dest) + 1;
406 T
const * TranslateTable;
419 BlitTransLucent75(T
const * translator, T mask) : TranslateTable(translator), Mask(mask) {assert(TranslateTable !=
NULL);}
420 virtual void BlitForward(
void * dest,
void const * source,
int length)
const
422 for (
int index = 0; index < length; index++) {
423 unsigned char color = *(
unsigned char const *)source;
424 source = ((
unsigned char *)source) + 1;
426 T qsource = (T)(((TranslateTable[color] >> 2) & Mask));
427 T qdest = (T)(((*(T *)dest) >> 2) & Mask);
428 *((T *)dest) = (T)(qdest + qdest + qdest + qsource);
430 dest = ((T *)dest) + 1;
442 T
const * TranslateTable;
482 unsigned short const * xlator = TranslateTable;
512 unsigned short const * translator = TranslateTable;
513 unsigned char const * remapper = RemapTable;
549 unsigned short const * translator = TranslateTable;
550 unsigned char const * remapper = *RemapTable;
586 unsigned short const * remapper = TranslateTable;
void add(float *sum, float *addend)
virtual void BlitForward(void *dest, void const *, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const
BlitPlainXlat(T const *translator)
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int len) const
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int len) const
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int length) const
BlitTransLucent25(T const *translator, T mask)
BlitTransLucent50(T const *translator, T mask)
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const
BlitTransLucent75(T const *translator, T mask)
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int length) const
BlitTransRemapDest(T const *remap)
virtual void BlitBackward(void *dest, void const *source, int length) const
BlitTransRemapXlat(unsigned char const *remapper, T const *translator)
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const
virtual void BlitForward(void *dest, void const *source, int len) const
BlitTransXlat(T const *translator)
virtual void BlitBackward(void *dest, void const *source, int length) const
BlitTransZRemapXlat(unsigned char const *const *remapper, T const *translator)
virtual void BlitForward(void *dest, void const *source, int length) const
virtual void BlitBackward(void *dest, void const *source, int length) const