载入中...
搜索中...
未找到
PcgPhotoModePhoto.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
6
7#include <string>
8
9namespace eve::ui {
10
12enum class PcgScreenshotFormat { Exr = 0, Jpg = 1, Png = 2, Tga = 3 };
13
15struct PcgScreenshotSize { int width = 0; int height = 0; };
16
30
33public:
37 void setAuthority(bool enabled);
39 const PcgPhotoModePhotoState& state() const noexcept { return state_; }
41 bool lightingProfileMatches(int currentProfile) const noexcept;
43 PcgScreenshotSize screenshotSize() const noexcept;
49 const char* screenshotExtension() const noexcept;
50
52 PhotoModeFieldAcceptance acceptsPhotoModeField(const PhotoModeAssignment& assignment) const noexcept override;
54 [[nodiscard]] Result<void> applyPhotoModeField(const PhotoModeAssignment& assignment) override;
55
56private:
58 bool authority_ = false;
59};
60
61} // namespace eve::ui
#define EVENGINE_API_WORLD
Definition Export.h:109
IPhotoModeFieldSink public API.
Move-only operation result carrying either a value or Status.
Definition Result.h:155
Explicit owner for Pcg's Photo domain fields.
const PcgPhotoModePhotoState & state() const noexcept
Return the complete retained Photo-domain state.
PcgScreenshotFormat
Pcg screenshot output encoding.
PhotoModeFieldAcceptance
Capability implemented by the composition root that routes assignments to domain owners.
bool enabled
One reversible field assignment in a photo-mode transaction.
PhotoMode-local capture, persistence and composition-overlay state.
Resolved screenshot dimensions; zero means the current drawable size.