FaceShader Class Reference

#include <brush.h>

Collaboration diagram for FaceShader:
Collaboration graph
[legend]

Data Structures

class  SavedState

Public Member Functions

 FaceShader (const std::string &shader, const ContentsFlagsValue &flags=ContentsFlagsValue(0, 0, 0, false))
 ~FaceShader ()
 FaceShader (const FaceShader &other)
void instanceAttach ()
void instanceDetach ()
void captureShader ()
void releaseShader ()
void realise ()
void unrealise ()
void attach (FaceShaderObserver &observer)
void detach (FaceShaderObserver &observer)
const std::stringgetShader () const
void setShader (const std::string &name)
ContentsFlagsValue getFlags () const
void setFlags (const ContentsFlagsValue &flags)
Shader * state () const
std::size_t width () const
std::size_t height () const
unsigned int shaderFlags () const

Data Fields

std::string m_shader
Shader * m_state
ContentsFlagsValue m_flags
FaceShaderObserverPair m_observers
bool m_instanced
bool m_realised

Detailed Description

Definition at line 288 of file brush.h.


Constructor & Destructor Documentation

FaceShader::FaceShader ( const std::string shader,
const ContentsFlagsValue flags = ContentsFlagsValue(0, 0, 0, false) 
) [inline]

Definition at line 317 of file brush.h.

References captureShader().

FaceShader::~FaceShader (  )  [inline]

Definition at line 322 of file brush.h.

References releaseShader().

FaceShader::FaceShader ( const FaceShader other  ) 

Member Function Documentation

void FaceShader::attach ( FaceShaderObserver observer  )  [inline]
void FaceShader::captureShader (  )  [inline]

Definition at line 340 of file brush.h.

References brush_check_shader(), m_shader, and m_state.

Referenced by FaceShader(), and setShader().

void FaceShader::detach ( FaceShaderObserver observer  )  [inline]
ContentsFlagsValue FaceShader::getFlags (  )  const [inline]

Definition at line 400 of file brush.h.

References m_flags, m_realised, ContentsFlagsValue::m_specified, and m_state.

Referenced by Face::GetFlags().

const std::string& FaceShader::getShader (  )  const [inline]

Definition at line 384 of file brush.h.

References m_shader.

Referenced by Face::GetShader(), and FaceShader::SavedState::SavedState().

std::size_t FaceShader::height (  )  const [inline]
void FaceShader::instanceAttach (  )  [inline]

Definition at line 329 of file brush.h.

References m_instanced, and m_state.

Referenced by Face::instanceAttach().

void FaceShader::instanceDetach (  )  [inline]

Definition at line 334 of file brush.h.

References m_instanced, and m_state.

Referenced by Face::instanceDetach().

void FaceShader::realise (  )  [inline]

Definition at line 355 of file brush.h.

References ReferencePair< Type >::forEach(), m_observers, and m_realised.

void FaceShader::releaseShader (  )  [inline]

Definition at line 347 of file brush.h.

References m_shader, and m_state.

Referenced by setShader(), and ~FaceShader().

void FaceShader::setFlags ( const ContentsFlagsValue flags  )  [inline]
void FaceShader::setShader ( const std::string name  )  [inline]
unsigned int FaceShader::shaderFlags (  )  const [inline]

Definition at line 434 of file brush.h.

References m_realised, and m_state.

Shader* FaceShader::state (  )  const [inline]

Definition at line 415 of file brush.h.

References m_state.

Referenced by Face::render().

void FaceShader::unrealise (  )  [inline]

Definition at line 361 of file brush.h.

References ReferencePair< Type >::forEach(), m_observers, and m_realised.

std::size_t FaceShader::width (  )  const [inline]

Field Documentation

Definition at line 314 of file brush.h.

Referenced by instanceAttach(), instanceDetach(), and setShader().

Definition at line 313 of file brush.h.

Referenced by attach(), detach(), realise(), and unrealise().

Definition at line 315 of file brush.h.

Referenced by attach(), detach(), getFlags(), height(), realise(), setFlags(), shaderFlags(), unrealise(), and width().

Definition at line 310 of file brush.h.

Referenced by captureShader(), getShader(), releaseShader(), and setShader().


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

Generated by  doxygen 1.6.2