Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

GraphicsViewportI Class Reference

Device interface for graphics viewport. More...

#include <GraphicsViewportI.h>

Inheritance diagram for GraphicsViewportI:

DeviceInterfaceI DataBlockI OpenGLViewportC List of all members.

Public Methods

virtual PluginClass::SuperClassIdC get_super_class_id () const
 Returns super class ID.

virtual PajaTypes::uint32 save (FileIO::SaveC *pSave)
 Serialize device settings to a Demopaja output stream.

virtual PajaTypes::uint32 load (FileIO::LoadC *pLoad)
 Serialize device settings from a Demopaja input stream.

virtual void set_perspective (const PajaTypes::BBox2C &rBBox, PajaTypes::float32 f32FOV, PajaTypes::float32 f32Aspect, PajaTypes::float32 f32ZNear, PajaTypes::float32 f32ZFar)=0
 Sets perspective viewport and projection matrix.

virtual void set_ortho (const PajaTypes::BBox2C &rBBox, PajaTypes::float32 f32Left, PajaTypes::float32 f32Right, PajaTypes::float32 f32Top, PajaTypes::float32 f32Bottom, PajaTypes::float32 f32ZNear=-1, PajaTypes::float32 f32ZFar=1)=0
 Sets orthographic viewport and projection matrix.

virtual void set_ortho_pixel (const PajaTypes::BBox2C &rBBox, PajaTypes::float32 f32ZNear=-1, PajaTypes::float32 f32ZFar=1)=0
 Sets orthographic viewport and projection matrix.

virtual PajaTypes::Vector2C client_to_layout (const PajaTypes::Vector2C &rVec)=0
 Converts positions in screen pixels to the layout coordinate system.

virtual PajaTypes::Vector2C layout_to_client (const PajaTypes::Vector2C &rVec)=0
 Converts positions in layout coordinate system uints to the screen pixels.

virtual PajaTypes::Vector2C delta_client_to_layout (const PajaTypes::Vector2C &rVec)=0
 Converts delta values of screen pixels to the layout coordinate system.

virtual PajaTypes::Vector2C delta_layout_to_client (const PajaTypes::Vector2C &rVec)=0
 Converts delta values layout coordinate system uints to the screen pixels.

virtual const PajaTypes::BBox2Cget_viewport ()=0
 Returns the viewport (visible are of the demo).

virtual const PajaTypes::BBox2Cget_layout ()=0
 Returns the layout (rendering are of the demo).

virtual PajaTypes::int32 get_width ()=0
 Returns the width of the screen in pixels.

virtual PajaTypes::int32 get_height ()=0
 Returns the height of the screen in pixels.

virtual PajaTypes::float32 get_pixel_aspect_ratio ()=0
 Returns the pixel aspect ratio.

virtual void set_pixel_aspect_ratio (PajaTypes::float32 f32PixelAspect)=0
 Sets the pixel aspect ratio.

virtual void set_dimension (PajaTypes::int32 i32PosX, PajaTypes::int32 i32PosY, PajaTypes::int32 i32Width, PajaTypes::int32 i32Height)=0
 Sets the dimension of the OpenGL rendering are in pixels (used internally).

virtual void set_viewport (const PajaTypes::BBox2C &rViewport)=0
 Sets the viewport (used internally).

virtual void set_layout (const PajaTypes::BBox2C &rLayout)=0
 Sets the layout (used internally).

virtual void activate ()=0
 Resets the last set viewport to the device.


Protected Methods

 GraphicsViewportI ()
 Default constructor.

virtual ~GraphicsViewportI ()
 Default destructor.


Detailed Description

Device interface for graphics viewport.

The purpose of the device interface is to setup the area where an effect can draw and to convert coordinates from screen (pixel) coordinates to the layout.


Constructor & Destructor Documentation

GraphicsViewportI   [protected]
 

Default constructor.

virtual ~GraphicsViewportI   [protected, virtual]
 

Default destructor.


Member Function Documentation

virtual void activate   [pure virtual]
 

Resets the last set viewport to the device.

Implemented in OpenGLViewportC.

virtual PajaTypes::Vector2C client_to_layout const PajaTypes::Vector2C   rVec [pure virtual]
 

Converts positions in screen pixels to the layout coordinate system.

Implemented in OpenGLViewportC.

virtual PajaTypes::Vector2C delta_client_to_layout const PajaTypes::Vector2C   rVec [pure virtual]
 

Converts delta values of screen pixels to the layout coordinate system.

Implemented in OpenGLViewportC.

virtual PajaTypes::Vector2C delta_layout_to_client const PajaTypes::Vector2C   rVec [pure virtual]
 

Converts delta values layout coordinate system uints to the screen pixels.

Implemented in OpenGLViewportC.

virtual PajaTypes::int32 get_height   [pure virtual]
 

Returns the height of the screen in pixels.

Implemented in OpenGLViewportC.

virtual const PajaTypes::BBox2C& get_layout   [pure virtual]
 

Returns the layout (rendering are of the demo).

Implemented in OpenGLViewportC.

virtual PajaTypes::float32 get_pixel_aspect_ratio   [pure virtual]
 

Returns the pixel aspect ratio.

Implemented in OpenGLViewportC.

virtual PluginClass::SuperClassIdC get_super_class_id   const [virtual]
 

Returns super class ID.

Implements DeviceInterfaceI.

virtual const PajaTypes::BBox2C& get_viewport   [pure virtual]
 

Returns the viewport (visible are of the demo).

Implemented in OpenGLViewportC.

virtual PajaTypes::int32 get_width   [pure virtual]
 

Returns the width of the screen in pixels.

Implemented in OpenGLViewportC.

virtual PajaTypes::Vector2C layout_to_client const PajaTypes::Vector2C   rVec [pure virtual]
 

Converts positions in layout coordinate system uints to the screen pixels.

Implemented in OpenGLViewportC.

virtual PajaTypes::uint32 load FileIO::LoadC   pLoad [virtual]
 

Serialize device settings from a Demopaja input stream.

Implements DeviceInterfaceI.

virtual PajaTypes::uint32 save FileIO::SaveC   pSave [virtual]
 

Serialize device settings to a Demopaja output stream.

Implements DeviceInterfaceI.

virtual void set_dimension PajaTypes::int32    i32PosX,
PajaTypes::int32    i32PosY,
PajaTypes::int32    i32Width,
PajaTypes::int32    i32Height
[pure virtual]
 

Sets the dimension of the OpenGL rendering are in pixels (used internally).

Implemented in OpenGLViewportC.

virtual void set_layout const PajaTypes::BBox2C   rLayout [pure virtual]
 

Sets the layout (used internally).

Implemented in OpenGLViewportC.

virtual void set_ortho const PajaTypes::BBox2C   rBBox,
PajaTypes::float32    f32Left,
PajaTypes::float32    f32Right,
PajaTypes::float32    f32Top,
PajaTypes::float32    f32Bottom,
PajaTypes::float32    f32ZNear = -1,
PajaTypes::float32    f32ZFar = 1
[pure virtual]
 

Sets orthographic viewport and projection matrix.

Parameters:
rBBox  the bounding box of the effect.
f32Width  Width of the viewport.
f32Height  Height of the viewport.
f32ZNear  Near clipping plane.
f32ZFar  Far clipping plane.
This method is a replacement for glOrtho. Scrissor testing is enabled and the bounding box is used to define the scissor box.

Implemented in OpenGLViewportC.

virtual void set_ortho_pixel const PajaTypes::BBox2C   rBBox,
PajaTypes::float32    f32ZNear = -1,
PajaTypes::float32    f32ZFar = 1
[pure virtual]
 

Sets orthographic viewport and projection matrix.

Parameters:
rBBox  the bounding box of the effect.
f32ZNear  Near clipping plane.
f32ZFar  Far clipping plane.
This method sets the orthographic projection to match the pixel dimensions of the current rendering output. The origin is set to the lower left corner of the whole rendering area.

This method is equivalent to call glOrtho with: glOrtho( 0, <viewport width>, 0, <viewport height>, f32ZNear, f32ZFar );

Scrissor testing is enabled and the bounding box is used to define the scissor box.

Implemented in OpenGLViewportC.

virtual void set_perspective const PajaTypes::BBox2C   rBBox,
PajaTypes::float32    f32FOV,
PajaTypes::float32    f32Aspect,
PajaTypes::float32    f32ZNear,
PajaTypes::float32    f32ZFar
[pure virtual]
 

Sets perspective viewport and projection matrix.

Parameters:
rBBox  the bounding box of the effect.
f32FOV  FOV on x-axis.
f32Aspect  Aspect ration of the viewport.
f32ZNear  Near clipping plane.
f32ZFar  Far clipping plane.
This method is a replacement for gluPerspective. Note that the FOV is different. Scrissor testing is enabled and the bounding box is used to define the scissor box.

Implemented in OpenGLViewportC.

virtual void set_pixel_aspect_ratio PajaTypes::float32    f32PixelAspect [pure virtual]
 

Sets the pixel aspect ratio.

Implemented in OpenGLViewportC.

virtual void set_viewport const PajaTypes::BBox2C   rViewport [pure virtual]
 

Sets the viewport (used internally).

Implemented in OpenGLViewportC.


Moppi Demopaja SDK Documentation -- Copyright © 2000-2002 Moppi Productions