#pragma once
#include <stdint.h>

struct Color
{
    uint8_t blue;
    uint8_t green;
    uint8_t red;
    uint8_t alpha;

    static Color White;
    static Color Black;
    static Color Red;
    static Color Green;
    static Color Blue;
    static Color Yellow;
    static Color Cyan;
    static Color Magenta;
    static Color Gray;

    static Color from_integer(uint32_t source);
} __attribute__((packed)); // to reinterpret this as a uint32_t AARRGGBB (in reversed order here because endianness)