Fawkes API  Fawkes Development Version
SkelGuiTextureDrawer Class Referenceabstract

Draw images from camera in texture. More...

#include "texture_drawer.h"

Inheritance diagram for SkelGuiTextureDrawer:

Public Member Functions

 SkelGuiTextureDrawer (unsigned int width, unsigned int height)
 Constructor. More...
 
virtual ~SkelGuiTextureDrawer ()
 Destructor. More...
 
virtual void fill_texture ()=0
 Fill texture with data. More...
 
void draw ()
 Draw texture to screen. More...
 

Protected Member Functions

void copy_rgb_to_texture (const unsigned char *rgb_buf)
 Copy an RGB buffer to texture. More...
 

Protected Attributes

unsigned char * __texture
 Texture buffer. More...
 
const unsigned int __width
 Width of visible area from texture. More...
 
const unsigned int __height
 Height of visible area from texture. More...
 
const unsigned int __texture_width
 Real texture width. More...
 
const unsigned int __texture_height
 Real texture height. More...
 

Detailed Description

Draw images from camera in texture.

Uses texture mapping to show an image acquired from a camera in the background.

Author
Tim Niemueller

Definition at line 30 of file texture_drawer.h.

Constructor & Destructor Documentation

◆ SkelGuiTextureDrawer()

SkelGuiTextureDrawer::SkelGuiTextureDrawer ( unsigned int  width,
unsigned int  height 
)

Constructor.

Parameters
widthwidth of visible area
heightheight of visible area

Definition at line 54 of file texture_drawer.cpp.

References __texture, __texture_height, and __texture_width.

◆ ~SkelGuiTextureDrawer()

SkelGuiTextureDrawer::~SkelGuiTextureDrawer ( )
virtual

Destructor.

Definition at line 66 of file texture_drawer.cpp.

References __height, __texture, __texture_height, __texture_width, and __width.

Member Function Documentation

◆ copy_rgb_to_texture()

void SkelGuiTextureDrawer::copy_rgb_to_texture ( const unsigned char *  rgb_buf)
protected

Copy an RGB buffer to texture.

Parameters
rgb_bufthe RGB buffer to copy, it must exactly of dimensions __width and __height.

Definition at line 138 of file texture_drawer.cpp.

References __height, __texture, __texture_width, and __width.

Referenced by SkelGuiImageDrawer::fill_texture(), and SkelGuiDepthDrawer::fill_texture().

◆ draw()

void SkelGuiTextureDrawer::draw ( )

Draw texture to screen.

Definition at line 112 of file texture_drawer.cpp.

References __height, __texture, __texture_height, __texture_width, __width, and fill_texture().

◆ fill_texture()

SkelGuiTextureDrawer::fill_texture ( )
pure virtual

Fill texture with data.

This function is called during draw() and the sub-class shall implement it to fill the texture with the data to show. Be aware that the texture size and the actually shown size will likely differ.

Implemented in SkelGuiDepthDrawer, and SkelGuiImageDrawer.

Referenced by draw().

Member Data Documentation

◆ __height

const unsigned int SkelGuiTextureDrawer::__height
protected

◆ __texture

unsigned char* SkelGuiTextureDrawer::__texture
protected

Texture buffer.

Definition at line 51 of file texture_drawer.h.

Referenced by copy_rgb_to_texture(), draw(), SkelGuiTextureDrawer(), and ~SkelGuiTextureDrawer().

◆ __texture_height

const unsigned int SkelGuiTextureDrawer::__texture_height
protected

Real texture height.

Definition at line 57 of file texture_drawer.h.

Referenced by draw(), SkelGuiTextureDrawer(), and ~SkelGuiTextureDrawer().

◆ __texture_width

const unsigned int SkelGuiTextureDrawer::__texture_width
protected

Real texture width.

Definition at line 56 of file texture_drawer.h.

Referenced by copy_rgb_to_texture(), draw(), SkelGuiTextureDrawer(), and ~SkelGuiTextureDrawer().

◆ __width

const unsigned int SkelGuiTextureDrawer::__width
protected

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