#ifndef __URDE_CLAYOUTDESCRIPTION_HPP__ #define __URDE_CLAYOUTDESCRIPTION_HPP__ #include "optional.hpp" #include "CToken.hpp" #include "zeus/CVector3f.hpp" namespace urde { class CCharLayoutInfo; class CLayoutDescription { public: class CScaledLayoutDescription { TLockedToken x0_layoutToken; float xc_scale; std::experimental::optional x10_scaleVec; public: const TLockedToken& GetCharLayoutInfo() const {return x0_layoutToken;} float GetScale() const {return xc_scale;} const std::experimental::optional& GetScaleVec() const {return x10_scaleVec;} }; private: TLockedToken x0_layoutToken; std::experimental::optional xc_scaled; public: CLayoutDescription(const TLockedToken& token) : x0_layoutToken(token) {} const std::experimental::optional& GetScaledLayoutDescription() const {return xc_scaled;} const TLockedToken& GetCharLayoutInfo() const {return x0_layoutToken;} }; } #endif // __URDE_CLAYOUTDESCRIPTION_HPP__