PICCANTE  0.4
The hottest HDR imaging library!
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
pic::QuadGL Class Reference

The QuadGL class. More...

#include <quad.hpp>

Public Member Functions

 QuadGL ()
 
 QuadGL (bool bTextureCoordinates, float halfSizeX=1.0f, float halfSizeY=1.0f)
 
 ~QuadGL ()
 
void init (bool bTexCoordinates, float halfSizeX=1.0f, float halfSizeY=1.0f)
 init initializates the QuadGL by allocating memory on the GPU. More...
 
void Render ()
 Render draws a quad on screen. More...
 
void Render (TechniqueGL &technique, GLuint texture)
 Render. More...
 

Static Public Member Functions

static float * createPosCoord (float halfSizeX=1.0f, float halfSizeY=1.0f)
 createPosCoord allocates memory for a position buffer. More...
 
static float * createTexCoord ()
 createTexCoord allocates memory for a texture coordinates buffer. More...
 
static std::string getVertexProgramV3 ()
 getVertexProgramV3 creates a simple vertex program. More...
 
static std::string getVertexProgramV2 ()
 getVertexProgramV2 creates a simple vertex program. More...
 
static std::string getVertexProgramWithTexCoordinates ()
 getVertexProgramWithTexCoordinates creates a simple vertex program with texture coordinates as input. More...
 
static std::string getFragmentProgram ()
 getFragmentProgram More...
 
static std::string getFragmentProgramForView ()
 getFragmentProgramForView More...
 
static void getTechnique (TechniqueGL &technique, std::string vp_src="", std::string fp_src="", bool bTextureCoordinates=false)
 getProgram creates a simple program. More...
 

Protected Attributes

GLuint vao
 
GLuint vbo [2]
 

Detailed Description

The QuadGL class.

Constructor & Destructor Documentation

◆ QuadGL() [1/2]

pic::QuadGL::QuadGL ( )
inline

◆ QuadGL() [2/2]

pic::QuadGL::QuadGL ( bool  bTextureCoordinates,
float  halfSizeX = 1.0f,
float  halfSizeY = 1.0f 
)
inline

◆ ~QuadGL()

pic::QuadGL::~QuadGL ( )
inline

Member Function Documentation

◆ createPosCoord()

static float* pic::QuadGL::createPosCoord ( float  halfSizeX = 1.0f,
float  halfSizeY = 1.0f 
)
inlinestatic

createPosCoord allocates memory for a position buffer.

Returns

◆ createTexCoord()

static float* pic::QuadGL::createTexCoord ( )
inlinestatic

createTexCoord allocates memory for a texture coordinates buffer.

Returns

◆ getFragmentProgram()

static std::string pic::QuadGL::getFragmentProgram ( )
inlinestatic

getFragmentProgram

Returns

◆ getFragmentProgramForView()

static std::string pic::QuadGL::getFragmentProgramForView ( )
inlinestatic

getFragmentProgramForView

Returns

◆ getTechnique()

static void pic::QuadGL::getTechnique ( TechniqueGL technique,
std::string  vp_src = "",
std::string  fp_src = "",
bool  bTextureCoordinates = false 
)
inlinestatic

getProgram creates a simple program.

Parameters
ret
vp_src
fp_src

◆ getVertexProgramV2()

static std::string pic::QuadGL::getVertexProgramV2 ( )
inlinestatic

getVertexProgramV2 creates a simple vertex program.

Returns

◆ getVertexProgramV3()

static std::string pic::QuadGL::getVertexProgramV3 ( )
inlinestatic

getVertexProgramV3 creates a simple vertex program.

Returns

◆ getVertexProgramWithTexCoordinates()

static std::string pic::QuadGL::getVertexProgramWithTexCoordinates ( )
inlinestatic

getVertexProgramWithTexCoordinates creates a simple vertex program with texture coordinates as input.

Returns

◆ init()

void pic::QuadGL::init ( bool  bTexCoordinates,
float  halfSizeX = 1.0f,
float  halfSizeY = 1.0f 
)
inline

init initializates the QuadGL by allocating memory on the GPU.

Parameters
bTextCoordinates

◆ Render() [1/2]

void pic::QuadGL::Render ( )
inline

Render draws a quad on screen.

◆ Render() [2/2]

void pic::QuadGL::Render ( TechniqueGL technique,
GLuint  texture 
)
inline

Render.

Parameters
technque
texture

Member Data Documentation

◆ vao

GLuint pic::QuadGL::vao
protected

◆ vbo

GLuint pic::QuadGL::vbo[2]
protected

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