Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
VolumeBehavior.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <Common/assertion.h>
6
7#include <memory>
8
9namespace ph
10{
11
12class VolumeBehavior final
13{
14public:
15 const VolumeOptics* getOptics() const;
16 void setOptics(const std::shared_ptr<VolumeOptics>& optics);
17
18private:
19 std::shared_ptr<VolumeOptics> m_optics;
20};
21
23{
24 return m_optics.get();
25}
26
27inline void VolumeBehavior::setOptics(const std::shared_ptr<VolumeOptics>& optics)
28{
29 PH_ASSERT(optics);
30
31 m_optics = optics;
32}
33
34}// end namespace ph
Definition VolumeBehavior.h:13
void setOptics(const std::shared_ptr< VolumeOptics > &optics)
Definition VolumeBehavior.h:27
const VolumeOptics * getOptics() const
Definition VolumeBehavior.h:22
Definition VolumeOptics.h:20
The root for all renderer implementations.
Definition EEngineProject.h:6