MobileRT  1.0
A multi platform C++ CPU progressive Ray Tracer.
Components::PointLight Class Referencefinal

#include <PointLight.hpp>

Inheritance diagram for Components::PointLight:
Inheritance graph
Collaboration diagram for Components::PointLight:
Collaboration graph

Public Member Functions

 PointLight ()=delete
 
 PointLight (const ::MobileRT::Material &radiance, const ::glm::vec3 &position)
 
 PointLight (const PointLight &pointLight)=delete
 
 PointLight (PointLight &&pointLight) noexcept=delete
 
 ~PointLight () final=default
 
PointLightoperator= (const PointLight &pointLight)=delete
 
PointLightoperator= (PointLight &&pointLight) noexcept=delete
 
::glm::vec3 getPosition () final
 
void resetSampling () final
 
::MobileRT::Intersection intersect (::MobileRT::Intersection &&intersection) final
 
- Public Member Functions inherited from MobileRT::Light
 Light ()=delete
 
 Light (Material radiance)
 
 Light (const Light &light)=delete
 
 Light (Light &&light) noexcept=delete
 
virtual ~Light ()
 
Lightoperator= (const Light &light)=delete
 
Lightoperator= (Light &&light) noexcept=delete
 
virtual Intersection intersect (Intersection &&intersection)=0
 

Private Attributes

::glm::vec3 position_ {}
 

Additional Inherited Members

- Public Attributes inherited from MobileRT::Light
Material radiance_ {}
 

Detailed Description

A light that gets emitted from a single point in all directions.

Constructor & Destructor Documentation

◆ PointLight() [1/4]

Components::PointLight::PointLight ( )
explicitdelete

◆ PointLight() [2/4]

Components::PointLight::PointLight ( const ::MobileRT::Material radiance,
const ::glm::vec3 &  position 
)
explicit

◆ PointLight() [3/4]

Components::PointLight::PointLight ( const PointLight pointLight)
delete

◆ PointLight() [4/4]

Components::PointLight::PointLight ( PointLight &&  pointLight)
deletenoexcept

◆ ~PointLight()

Components::PointLight::~PointLight ( )
finaldefault

Member Function Documentation

◆ getPosition()

glm::vec3 PointLight::getPosition ( )
finalvirtual

Gets the position of the light.

Returns
The position of the light.

Implements MobileRT::Light.

◆ intersect()

Intersection PointLight::intersect ( ::MobileRT::Intersection &&  intersection)
final

◆ operator=() [1/2]

PointLight& Components::PointLight::operator= ( const PointLight pointLight)
delete

◆ operator=() [2/2]

PointLight& Components::PointLight::operator= ( PointLight &&  pointLight)
deletenoexcept

◆ resetSampling()

void PointLight::resetSampling ( )
finalvirtual

Resets the sampling counter.

Implements MobileRT::Light.

Member Data Documentation

◆ position_

::glm::vec3 Components::PointLight::position_ {}
private

The documentation for this class was generated from the following files: