1 #ifndef OSDIMAGEBASEDWIDGET_HH
2 #define OSDIMAGEBASEDWIDGET_HH
19 using namespace std::literals;
23 "-rgba"sv,
"-rgb"sv,
"-alpha"sv,
24 "-fadePeriod"sv,
"-fadeTarget"sv,
30 [[nodiscard]] uint32_t
getRGBA(uint32_t corner)
const {
return rgba[corner]; }
31 [[nodiscard]] std::span<const uint32_t, 4>
getRGBA4()
const {
return rgba; }
35 [[nodiscard]] std::span<const std::string_view>
getProperties()
const override {
39 std::string_view name,
const TclObject& value)
override;
42 [[nodiscard]]
bool isVisible()
const override;
57 [[nodiscard]]
bool hasError()
const {
return error; }
59 std::unique_ptr<BaseImage>
image;
62 void setRGBA(
const uint32_t newRGBA[4]);
63 [[nodiscard]]
bool isFading()
const;
64 [[nodiscard]]
float getCurrentFadeValue()
const;
65 [[nodiscard]]
float getCurrentFadeValue(uint64_t now)
const;
66 void updateCurrentFadeValue();
72 uint64_t startFadeTime;
75 mutable float startFadeValue;
Represents the output window/screen of openMSX.
A frame buffer where pixels can be written to.
This file implemented 3 utility functions:
constexpr auto concatArray(const std::array< T, X > &x, const std::array< T, Y > &y)