Architecture Class Reference

#include <Architecture.h>

Inheritance diagram for Architecture:

GRAObject EnergyCoatArch GLArch RayTrArch GLVolumesArch PathTrArch PhotonMappingArch IrradCacheVisualizer PhotonMapVisualizer List of all members.

Public Member Functions

 Architecture (Params &params)
virtual ~Architecture ()
virtual RendercreateRender (void)=0
virtual ShadercreateShader (void)=0

Protected Attributes

int * _pStopFlag
DiffuseBRDF * _pDefaultDiffuseBRDF
SpecularBRDF * _pDefaultSpecularBRDF

Classes

struct  Params

Detailed Description

Abstract factory for graphics architectures, which instantiates mutually compatible components.

Definition at line 22 of file Architecture.h.


Constructor & Destructor Documentation

Architecture Params params  )  [inline]
 

Constructor

Parameters:
params parametrs of the architecture

Definition at line 43 of file Architecture.h.

References Architecture::Params::diffBRDF, Architecture::Params::specBRDF, and Architecture::Params::stopFlag.

virtual ~Architecture  )  [inline, virtual]
 

Destructor

Definition at line 52 of file Architecture.h.


Member Function Documentation

virtual Render* createRender void   )  [pure virtual]
 

Returns:
render of this architecture

Implemented in EnergyCoatArch, GLArch, GLVolumesArch, IrradCacheVisualizer, PhotonMapVisualizer, and RayTrArch.

virtual Shader* createShader void   )  [pure virtual]
 

Returns:
shader of this architecture

Implemented in EnergyCoatArch, GLArch, PhotonMappingArch, and RayTrArch.


Member Data Documentation

DiffuseBRDF* _pDefaultDiffuseBRDF [protected]
 

Definition at line 25 of file Architecture.h.

Referenced by RayTrArch::createShader(), and PhotonMappingArch::createShader().

SpecularBRDF* _pDefaultSpecularBRDF [protected]
 

Definition at line 26 of file Architecture.h.

Referenced by RayTrArch::createShader(), and PhotonMappingArch::createShader().

int* _pStopFlag [protected]
 

Definition at line 24 of file Architecture.h.

Referenced by RayTrArch::createRender(), and IrradCacheVisualizer::createRender().


The documentation for this class was generated from the following file:
Generated on Tue Nov 21 15:11:42 2006 for gra by  doxygen 1.4.6