MCPcopy Create free account
hub / github.com/LibreSprite/LibreSprite / get_image_composition

Function get_image_composition

src/render/render.cpp:401–434  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

399}
400
401CompositeImageFunc get_image_composition(PixelFormat dstFormat,
402 PixelFormat srcFormat,
403 const Zoom& zoom)
404{
405 switch (srcFormat) {
406
407 case IMAGE_RGB:
408 switch (dstFormat) {
409 case IMAGE_RGB: return get_image_composition_impl<RgbTraits, RgbTraits>(zoom);
410 case IMAGE_GRAYSCALE: return get_image_composition_impl<GrayscaleTraits, RgbTraits>(zoom);
411 case IMAGE_INDEXED: return get_image_composition_impl<IndexedTraits, RgbTraits>(zoom);
412 }
413 break;
414
415 case IMAGE_GRAYSCALE:
416 switch (dstFormat) {
417 case IMAGE_RGB: return get_image_composition_impl<RgbTraits, GrayscaleTraits>(zoom);
418 case IMAGE_GRAYSCALE: return get_image_composition_impl<GrayscaleTraits, GrayscaleTraits>(zoom);
419 case IMAGE_INDEXED: return get_image_composition_impl<IndexedTraits, GrayscaleTraits>(zoom);
420 }
421 break;
422
423 case IMAGE_INDEXED:
424 switch (dstFormat) {
425 case IMAGE_RGB: return get_image_composition_impl<RgbTraits, IndexedTraits>(zoom);
426 case IMAGE_GRAYSCALE: return get_image_composition_impl<GrayscaleTraits, IndexedTraits>(zoom);
427 case IMAGE_INDEXED: return get_image_composition_impl<IndexedTraits, IndexedTraits>(zoom);
428 }
429 break;
430 }
431
432 ASSERT(false && "Invalid pixel formats");
433 return NULL;
434}
435
436} // anonymous namespace
437

Callers 3

renderLayerMethod · 0.85
renderSpriteMethod · 0.85
renderImageMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected