31 #pragma pack (push, 1)
39 return (
x >> 8) & 0x00ff00ff;
117 template <
class Pixel>
139 template <
class Pixel>
142 auto rb = src.getEvenBytes();
143 auto ag = src.getOddBytes();
145 const auto alpha = 0x100 - (ag >> 16);
166 template <
class Pixel>
172 const auto alpha = 0x100 - (ag >> 16);
183 template <
class Pixel>
187 dEvenBytes += (((src.getEvenBytes() - dEvenBytes) * amount) >> 8);
188 dEvenBytes &= 0x00ff00ff;
191 dOddBytes += (((src.getOddBytes() - dOddBytes) * amount) >> 8);
192 dOddBytes &= 0x00ff00ff;
195 dOddBytes |= dEvenBytes;
294 enum { indexA = 0, indexR = 3, indexG = 2, indexB = 1 };
296 enum { indexA = 3, indexR = 0, indexG = 1, indexB = 2 };
300 enum { indexA = 0, indexR = 1, indexG = 2, indexB = 3 };
391 return (
uint32) ((
b << 24) | (
g << 16) | (
r << 8) | 0xff);
429 template <
class Pixel>
451 template <
class Pixel>
454 const auto alpha = (
uint32) (0x100 - src.getAlpha());
482 template <
class Pixel>
488 const auto alpha = 0x100 - (ag >> 16);
507 template <
class Pixel>
511 dEvenBytes += (((src.getEvenBytes() - dEvenBytes) * amount) >> 8);
514 dOddBytes += (((src.getOddBytes() - dOddBytes) * amount) >> 8);
516 g = (
uint8) (dOddBytes & 0xff);
519 r = (
uint8) (dEvenBytes & 0xff);
520 b = (
uint8) (dEvenBytes >> 16);
522 b = (
uint8) (dEvenBytes & 0xff);
523 r = (
uint8) (dEvenBytes >> 16);
545 r =
g =
b = (
uint8) (((
int)
r + (
int)
g + (
int)
b) / 3);
551 enum { indexR = 0, indexG = 1, indexB = 2 };
645 template <
class Pixel>
663 template <
class Pixel>
666 const auto srcA = src.getAlpha();
667 a = (
uint8) ((
a * (0x100 - srcA) >> 8) + srcA);
675 template <
class Pixel>
679 const auto srcAlpha = (
int) ((extraAlpha * src.getAlpha()) >> 8);
680 a = (
uint8) ((
a * (0x100 - srcAlpha) >> 8) + srcAlpha);
686 template <
class Pixel>
689 a += ((src.getAlpha() -
a) * amount) >> 8;
703 a = (
uint8) ((
a * multiplier) >> 8);
#define noexcept
Definition DistrhoDefines.h:72
uint8_t a
Definition Spc_Cpu.h:141
forcedinline void tween(const Pixel &src, uint32 amount) noexcept
Definition juce_PixelFormats.h:184
forcedinline void set(const Pixel &src) noexcept
Definition juce_PixelFormats.h:118
PixelARGB() noexcept=default
uint32 getInARGBMemoryOrder() const noexcept
Definition juce_PixelFormats.h:89
PixelARGB(uint32 internalValue) noexcept
Definition juce_PixelFormats.h:308
forcedinline uint8 getGreen() const noexcept
Definition juce_PixelFormats.h:109
forcedinline uint32 getNativeARGB() const noexcept
Definition juce_PixelFormats.h:74
forcedinline void setAlpha(uint8 newAlpha) noexcept
Definition juce_PixelFormats.h:201
forcedinline void blend(const Pixel &src) noexcept
Definition juce_PixelFormats.h:140
forcedinline void desaturate() noexcept
Definition juce_PixelFormats.h:274
forcedinline void unpremultiply() noexcept
Definition juce_PixelFormats.h:253
forcedinline void multiplyAlpha(float multiplier) noexcept
Definition juce_PixelFormats.h:217
forcedinline uint32 getInARGBMaskOrder() const noexcept
Definition juce_PixelFormats.h:78
forcedinline uint8 getAlpha() const noexcept
Definition juce_PixelFormats.h:107
uint32 internal
Definition juce_PixelFormats.h:333
forcedinline void blend(const Pixel &src, uint32 extraAlpha) noexcept
Definition juce_PixelFormats.h:167
Components components
Definition juce_PixelFormats.h:334
void setARGB(uint8 a, uint8 r, uint8 g, uint8 b) noexcept
Definition juce_PixelFormats.h:125
forcedinline void premultiply() noexcept
Definition juce_PixelFormats.h:231
forcedinline uint32 getEvenBytes() const noexcept
Definition juce_PixelFormats.h:100
@ indexG
Definition juce_PixelFormats.h:302
@ indexA
Definition juce_PixelFormats.h:302
@ indexR
Definition juce_PixelFormats.h:302
@ indexB
Definition juce_PixelFormats.h:302
PixelARGB getUnpremultiplied() const noexcept
Definition juce_PixelFormats.h:223
forcedinline uint8 getRed() const noexcept
Definition juce_PixelFormats.h:108
forcedinline void multiplyAlpha(int multiplier) noexcept
Definition juce_PixelFormats.h:207
forcedinline uint8 getBlue() const noexcept
Definition juce_PixelFormats.h:110
forcedinline uint32 getOddBytes() const noexcept
Definition juce_PixelFormats.h:104
uint8 a
Definition juce_PixelFormats.h:729
PixelAlpha(uint32 internal) noexcept
Definition juce_PixelFormats.h:725
forcedinline void setARGB(uint8 a_, uint8, uint8, uint8) noexcept
Definition juce_PixelFormats.h:652
uint32 getInARGBMemoryOrder() const noexcept
Definition juce_PixelFormats.h:618
forcedinline void desaturate() noexcept
Definition juce_PixelFormats.h:717
forcedinline void tween(const Pixel &src, uint32 amount) noexcept
Definition juce_PixelFormats.h:687
forcedinline void multiplyAlpha(int multiplier) noexcept
Definition juce_PixelFormats.h:700
forcedinline uint32 getEvenBytes() const noexcept
Definition juce_PixelFormats.h:625
forcedinline void setAlpha(uint8 newAlpha) noexcept
Definition juce_PixelFormats.h:694
forcedinline uint8 getBlue() const noexcept
Definition juce_PixelFormats.h:638
forcedinline void premultiply() noexcept
Definition juce_PixelFormats.h:712
@ indexA
Definition juce_PixelFormats.h:721
forcedinline uint8 getRed() const noexcept
Definition juce_PixelFormats.h:636
forcedinline void blend(const Pixel &src) noexcept
Definition juce_PixelFormats.h:664
forcedinline uint8 getAlpha() const noexcept
Definition juce_PixelFormats.h:635
forcedinline uint32 getInARGBMaskOrder() const noexcept
Definition juce_PixelFormats.h:614
forcedinline void multiplyAlpha(float multiplier) noexcept
Definition juce_PixelFormats.h:706
forcedinline void set(const Pixel &src) noexcept
Definition juce_PixelFormats.h:646
forcedinline uint32 getOddBytes() const noexcept
Definition juce_PixelFormats.h:632
forcedinline void unpremultiply() noexcept
Definition juce_PixelFormats.h:715
PixelAlpha() noexcept=default
forcedinline void blend(const Pixel &src, uint32 extraAlpha) noexcept
Definition juce_PixelFormats.h:676
forcedinline uint8 getGreen() const noexcept
Definition juce_PixelFormats.h:637
forcedinline uint32 getNativeARGB() const noexcept
Definition juce_PixelFormats.h:610
Definition juce_PixelFormats.h:354
PixelRGB(uint32 internal) noexcept
Definition juce_PixelFormats.h:558
forcedinline uint8 getBlue() const noexcept
Definition juce_PixelFormats.h:420
forcedinline void premultiply() noexcept
Definition juce_PixelFormats.h:538
forcedinline void setAlpha(uint8) noexcept
Definition juce_PixelFormats.h:529
forcedinline uint32 getInARGBMaskOrder() const noexcept
Definition juce_PixelFormats.h:375
forcedinline uint8 getGreen() const noexcept
Definition juce_PixelFormats.h:419
forcedinline uint32 getOddBytes() const noexcept
Definition juce_PixelFormats.h:414
void setARGB(uint8, uint8 red, uint8 green, uint8 blue) noexcept
Definition juce_PixelFormats.h:438
uint8 g
Definition juce_PixelFormats.h:575
forcedinline void set(const Pixel &src) noexcept
Definition juce_PixelFormats.h:430
forcedinline void blend(const Pixel &src, uint32 extraAlpha) noexcept
Definition juce_PixelFormats.h:483
uint8 r
Definition juce_PixelFormats.h:575
forcedinline void blend(const Pixel &src) noexcept
Definition juce_PixelFormats.h:452
forcedinline void blend(PixelRGB src) noexcept
Definition juce_PixelFormats.h:472
forcedinline void desaturate() noexcept
Definition juce_PixelFormats.h:543
forcedinline void multiplyAlpha(int) noexcept
Definition juce_PixelFormats.h:532
uint32 getInARGBMemoryOrder() const noexcept
Definition juce_PixelFormats.h:386
@ indexG
Definition juce_PixelFormats.h:553
@ indexR
Definition juce_PixelFormats.h:553
@ indexB
Definition juce_PixelFormats.h:553
uint8 b
Definition juce_PixelFormats.h:575
forcedinline uint8 getRed() const noexcept
Definition juce_PixelFormats.h:418
forcedinline uint8 getAlpha() const noexcept
Definition juce_PixelFormats.h:417
forcedinline uint32 getEvenBytes() const noexcept
Definition juce_PixelFormats.h:400
forcedinline void tween(const Pixel &src, uint32 amount) noexcept
Definition juce_PixelFormats.h:508
PixelRGB() noexcept=default
forcedinline void unpremultiply() noexcept
Definition juce_PixelFormats.h:541
forcedinline void multiplyAlpha(float) noexcept
Definition juce_PixelFormats.h:535
forcedinline uint32 getNativeARGB() const noexcept
Definition juce_PixelFormats.h:364
int g
Definition inflate.c:1573
unsigned x[BMAX+1]
Definition inflate.c:1586
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition juce_CharacterFunctions.h:68
Definition carla_juce.cpp:31
constexpr Type jmin(Type a, Type b)
Definition juce_MathsFunctions.h:106
class JUCE_API juce::PixelARGB JUCE_PACKED
unsigned int uint32
Definition juce_MathsFunctions.h:45
uint32 clampPixelComponents(uint32 x) noexcept
Definition juce_PixelFormats.h:42
uint32 maskPixelComponents(uint32 x) noexcept
Definition juce_PixelFormats.h:37
unsigned char uint8
Definition juce_MathsFunctions.h:37
png_structrp int png_fixed_point red
Definition png.h:1083
Definition juce_PixelFormats.h:315
uint8 r
Definition juce_PixelFormats.h:326
uint8 b
Definition juce_PixelFormats.h:326
uint8 g
Definition juce_PixelFormats.h:326
uint8 a
Definition juce_PixelFormats.h:326
uch * p
Definition crypt.c:594
int r
Definition crypt.c:458
typedef int(UZ_EXP MsgFn)()
#define const
Definition zconf.h:137