Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
RenderRegionStatus.h
Go to the documentation of this file.
1#pragma once
2
5
6#include <algorithm>
7
8namespace ph
9{
10
12{
13public:
16
17 Region getRegion() const;
20
21private:
22 Region m_region;
23 ERegionStatus m_status;
24};
25
29
31 : m_region(region)
32 , m_status(status)
33{}
34
36{
37 return m_region;
38}
39
41{
42 return m_status;
43}
44
46{
47 // Larger status value take precedence, see `ERegionStatus`
48 return RenderRegionStatus(
49 m_region.getUnioned(other.m_region),
50 std::max(m_status, other.m_status));
51}
52
53}// end namespace ph
Definition RenderRegionStatus.h:12
ERegionStatus getStatus() const
Definition RenderRegionStatus.h:40
Region getRegion() const
Definition RenderRegionStatus.h:35
RenderRegionStatus getMerged(const RenderRegionStatus &other) const
Definition RenderRegionStatus.h:45
RenderRegionStatus()
Definition RenderRegionStatus.h:26
TAABB2D getUnioned(const TAABB2D &other) const
Definition TAABB2D.ipp:181
The root for all renderer implementations.
Definition EEngineProject.h:6
ERegionStatus
Status of a rendering region. Note that when adding new entries, the order is important: later entrie...
Definition ERegionStatus.h:12