1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- #ifndef ALMOND_VIDEORECIPE_H
- #define ALMOND_VIDEORECIPE_H
- #include <optional>
- #include "MandelUtil.h"
- #include "Gradient.h"
- namespace alm
- {
- enum class Interpolation
- {
- NONE,
- LINEAR,
- SINE
- };
- template<typename T>
- struct Change
- {
- T newValue;
- Interpolation interpolation;
- };
- template<typename T>
- using MaybeChange = std::optional<Change<T>>;
- struct VideoPoint;
- struct VideoRecipe;
- }
- struct alm::VideoPoint
- {
- MaybeChange<int> maxIterations;
- MaybeChange<mnd::MandelViewport> view;
- MaybeChange<Gradient> gradient;
- };
- class alm::VideoRecipe
- {
- int width;
- int height;
- };
- #endif // ALMOND_VIDEORECIPE_H
|