Fluid3dSolver::FluidFactory Class Reference

#include <FluidFactory.h>

Inheritance diagram for Fluid3dSolver::FluidFactory:

Fluid3dSolver::FluidFactoryImpl List of all members.

Public Member Functions

virtual bool isSliceSimulation () const =0
virtual std::auto_ptr< AdvectioncreateAdvection (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, unsigned int valueTexture, BoundaryType boundaryType)=0
virtual std::auto_ptr< AdvectioncreateAdvection (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, unsigned int valueTexture, OpenGL::CgProgram *cgBoundary)=0
virtual std::auto_ptr< DiffusioncreateDiffusion (OpenGL::Flat3dTextureSet *textures, unsigned int valueTexture, unsigned int tempTexture, BoundaryType boundaryType)=0
virtual std::auto_ptr< DiffusioncreateDiffusion (OpenGL::Flat3dTextureSet *textures, unsigned int valueTexture, BoundaryType boundaryType)=0
virtual std::auto_ptr< ForceAddercreateForceAdder (OpenGL::Flat3dTextureSet *textures, unsigned int valueTexture, unsigned int forceTexture, BoundaryType boundaryType)=0
virtual std::auto_ptr< ForceAddercreateForceAdder (OpenGL::Flat3dTextureSet *textures, unsigned int valueTexture, unsigned int forceTexture, OpenGL::CgProgram *cgBoundary)=0
virtual std::auto_ptr< ProjectioncreateProjection (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, BoundaryType velocityBoundary)=0
virtual std::auto_ptr< ProjectioncreateProjection (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, OpenGL::CgProgram *cgVelocityBoundary)=0
virtual std::auto_ptr< VorticityConfinementcreateVorticityConfinement (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, unsigned int velocityForceTexture, unsigned int vorticityTexture)=0
virtual std::auto_ptr< VorticityConfinementcreateVorticityConfinement (OpenGL::Flat3dTextureSet *textures, unsigned int velocityTexture, unsigned int velocityForceTexture)=0

Detailed Description

The FluidFactory class is an abstract factory used to create various abstract Fluid3dSolver objects.


Member Function Documentation

virtual std::auto_ptr<Advection> Fluid3dSolver::FluidFactory::createAdvection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  valueTexture,
OpenGL::CgProgram cgBoundary
[pure virtual]
 

Creates an Advection object.

Parameters:
textures the texture set containing the velocity and value texture.
velocityTexture the identifier of the velocity texture.
valueTexture the identifier of the value texture.
cgBoundary the boundary's CgProgram.
Returns:
an auto pointer to the Advection object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<Advection> Fluid3dSolver::FluidFactory::createAdvection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  valueTexture,
BoundaryType  boundaryType
[pure virtual]
 

Creates an Advection object.

Parameters:
textures the texture set containing the velocity and value texture.
velocityTexture the identifier of the velocity texture.
valueTexture the identifier of the value texture.
boundaryType enum specifying which boundary condition to be used.
Returns:
an auto pointer to the Advection object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<Diffusion> Fluid3dSolver::FluidFactory::createDiffusion OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
BoundaryType  boundaryType
[pure virtual]
 

Creates a Diffusion object where the temporary texture is created and added to the texture set.

Parameters:
textures the texture set containing the value texture.
valueTexture the identifier of the value texture.
boundaryType enum specifying which boundary condition to be used.
Returns:
an auto pointer to the Diffusion object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<Diffusion> Fluid3dSolver::FluidFactory::createDiffusion OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  tempTexture,
BoundaryType  boundaryType
[pure virtual]
 

Creates a Diffusion object.

Parameters:
textures the texture set containing the value and temporary texture.
valueTexture the identifier of the value texture.
tempTexture the identifier of the temporary texture used when solving the set of linear equations.
boundaryType enum specifying which boundary condition to be used.
Returns:
an auto pointer to the Diffusion object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<ForceAdder> Fluid3dSolver::FluidFactory::createForceAdder OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  forceTexture,
OpenGL::CgProgram cgBoundary
[pure virtual]
 

Creates a ForceAdder object.

Parameters:
textures the texture set containing the value and force texture.
valueTexture the identifier of the value texture.
forceTexture the identifier of the force texture.
cgBoundary the boundary's CgProgram.
Returns:
an auto pointer to the ForceAdder object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<ForceAdder> Fluid3dSolver::FluidFactory::createForceAdder OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  forceTexture,
BoundaryType  boundaryType
[pure virtual]
 

Creates a ForceAdder object.

Parameters:
textures the texture set containing the value and force texture.
valueTexture the identifier of the value texture.
forceTexture the identifier of the force texture.
boundaryType enum specifying which boundary condition to be used.
Returns:
an auto pointer to the ForceAdder object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<Projection> Fluid3dSolver::FluidFactory::createProjection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
OpenGL::CgProgram cgVelocityBoundary
[pure virtual]
 

Creates a Projection object.

Parameters:
textures the texture set containing the velocity texture.
velocityTexture the identifier of the velocity texture.
cgVelocityBoundary the velocity boundary's CgProgram.
Returns:
an auto pointer to the Projection object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<Projection> Fluid3dSolver::FluidFactory::createProjection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
BoundaryType  velocityBoundary
[pure virtual]
 

Creates a Projection object.

Parameters:
textures the texture set containing the velocity texture.
velocityTexture the identifier of the velocity texture.
velocityBoundary enum specifying which boundary condition to be used.
Returns:
an auto pointer to the Projection object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<VorticityConfinement> Fluid3dSolver::FluidFactory::createVorticityConfinement OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  velocityForceTexture
[pure virtual]
 

Creates a VorticityConfinement object where the vorticity texture is created and added to the texture set.

Parameters:
textures the texture set containing the velocity and velocity force texture.
velocityTexture the identifier of the velocity texture.
velocityForceTexture the identifier of the velocity force texture.
Returns:
an auto pointer to the VorticityConfinement object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual std::auto_ptr<VorticityConfinement> Fluid3dSolver::FluidFactory::createVorticityConfinement OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  velocityForceTexture,
unsigned int  vorticityTexture
[pure virtual]
 

Creates a VorticityConfinement object.

Parameters:
textures the texture set containing the velocity, velocity force, and vorticity texture.
velocityTexture the identifier of the velocity texture.
velocityForceTexture the identifier of the velocity force texture.
vorticityTexture the identifier of the temporary vorticity texture used.
Returns:
an auto pointer to the VorticityConfinement object.

Implemented in Fluid3dSolver::FluidFactoryImpl.

virtual bool Fluid3dSolver::FluidFactory::isSliceSimulation  )  const [pure virtual]
 

Check if the fluid factory is for slice or 3d fluid simulations.

Returns:
if the fluid factory generates slice or 3d fluid operations.

Implemented in Fluid3dSolver::FluidFactoryImpl.


The documentation for this class was generated from the following file:
Generated on Fri Jun 16 08:42:49 2006 for GPU Thesis by  doxygen 1.4.6-NO