8#include <Common/assertion.h>
9#include <Common/primitive_type.h>
23 int64 actualHeightPx);
69 PH_ASSERT_GE(actualResPx.
x(), 0);
70 PH_ASSERT_GE(actualResPx.
y(), 0);
72 m_actualResPx = actualResPx;
77 PH_ASSERT(!effectiveWindow.
isEmpty());
79 m_effectiveWindowPx = effectiveWindow;
95 return m_effectiveWindowPx;
A camera film that receives any quantity.
Definition Film.h:17
virtual void setEffectiveWindowPx(const math::TAABB2D< int64 > &effectiveWindow)
Set the region where the film will be used. Implementation is advised to take advantage of this and o...
Definition Film.h:75
const math::TVector2< int64 > & getActualResPx() const
Definition Film.h:82
math::TVector2< int64 > getEffectiveResPx() const
Definition Film.h:87
virtual void clear()=0
Set all pixel data to its initial state.
Film()
Definition Film.cpp:8
Film & operator=(Film &&other)=default
Film(Film &&other)=default
void develop(HdrRgbFrame &out_frame) const
Definition Film.cpp:36
virtual void setActualResPx(const math::TVector2< int64 > &actualResPx)
Set the apparent size of the film. If only a sub-region of the film is going to be used,...
Definition Film.h:67
const math::TAABB2D< int64 > & getEffectiveWindowPx() const
Definition Film.h:92
Marks the derived class as move only.
Definition IMoveOnly.h:23
A 2-D Axis-Aligned Bounding Box (AABB).
Definition TAABB2D.h:26
T getHeight() const
Definition TAABB2D.ipp:144
T getWidth() const
Definition TAABB2D.ipp:138
bool isEmpty() const
Definition TAABB2D.ipp:193
Represents a 2-D vector.
Definition TVector2.h:19
T & x()
Definition TVector2.ipp:38
T & y()
Definition TVector2.ipp:44
The root for all renderer implementations.
Definition EEngineProject.h:6