All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
Luminous::TransformGuard Class Reference

This class provides a simple guard for setting transformations. More...

#include <Luminous/RenderContext.hpp>

Inheritance diagram for Luminous::TransformGuard:
Patterns::NotCopyable

Classes

class  LeftMul
 This class provides a simple guard for setting transformations. More...
 
class  RightMul
 This class provides a simple guard for setting transformations. More...
 

Public Member Functions

 TransformGuard (Luminous::RenderContext &r, const Nimble::Matrix4f &m)
 Construct a new guard. This calls RenderContext::pushTransform(m)
 
 TransformGuard (Luminous::RenderContext &r, const Nimble::Matrix3f &m)
 Construct a new guard. This calls RenderContext::pushTransform(m) More...
 
 TransformGuard (TransformGuard &&rhs)
 Construct a guard by moving. More...
 

Detailed Description

This class provides a simple guard for setting transformations.

It will automatically pop transforms in its destructor so the user doesn't need to remember to do it manually. It is equivalent to calling "RenderContext::pushTransform(m)" and "RenderContext::popTransform()".

Examples:
Widget3DExample.cpp.

Constructor & Destructor Documentation

Luminous::TransformGuard::TransformGuard ( Luminous::RenderContext r,
const Nimble::Matrix3f m 
)
inline

Construct a new guard. This calls RenderContext::pushTransform(m)

Luminous::TransformGuard::TransformGuard ( TransformGuard &&  rhs)
inline

Construct a guard by moving.

Parameters
rhsguard to move