linux-wallpaperengine/src/WallpaperEngine/Core/Scenes/CProjection.cpp
Alexis Maiquez 3587fdec1e ~ changed all iterators to auto
~ changed most pointers to const references to prevent modification, specially from the background parser

Signed-off-by: Alexis Maiquez <almamu@almamu.com>
2019-09-10 11:02:45 +02:00

41 lines
813 B
C++

#include "CProjection.h"
#include "WallpaperEngine/Core/Core.h"
using namespace WallpaperEngine::Core::Scenes;
CProjection::CProjection (irr::u32 width, irr::u32 height) :
m_width (width),
m_height (height)
{
}
const irr::u32& CProjection::getWidth () const
{
return this->m_width;
}
const irr::u32& CProjection::getHeight () const
{
return this->m_height;
}
CProjection* CProjection::fromJSON (json data)
{
auto width_it = data.find ("width");
auto height_it = data.find ("height");
if (width_it == data.end ())
{
throw std::runtime_error ("Projection must have width");
}
if (height_it == data.end ())
{
throw std::runtime_error ("Projection must have height");
}
return new CProjection (
*width_it,
*height_it
);
}