Fluid3dSolver::FluidFactoryImpl Class Reference

#include <FluidFactory.h>

Inheritance diagram for Fluid3dSolver::FluidFactoryImpl:

Fluid3dSolver::FluidFactory List of all members.

Public Member Functions

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

Detailed Description

An implementation of FluidFactory which can separate between full 3d simulation and slice (volumetric extrusion) simulation.


Constructor & Destructor Documentation

Fluid3dSolver::FluidFactoryImpl::FluidFactoryImpl bool  slice  ) 
 

Constructs a FluidFactoryImpl for either a full 3d simulation or a slice (volumetric extrusion) simulation.

Parameters:
slice if the FluidFactoryImpl should be used with a slice simulation.


Member Function Documentation

std::auto_ptr< Advection > Fluid3dSolver::FluidFactoryImpl::createAdvection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  valueTexture,
OpenGL::CgProgram cgBoundary
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< Advection > Fluid3dSolver::FluidFactoryImpl::createAdvection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  valueTexture,
BoundaryType  boundaryType
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< Diffusion > Fluid3dSolver::FluidFactoryImpl::createDiffusion OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
BoundaryType  boundaryType
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< Diffusion > Fluid3dSolver::FluidFactoryImpl::createDiffusion OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  tempTexture,
BoundaryType  boundaryType
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< ForceAdder > Fluid3dSolver::FluidFactoryImpl::createForceAdder OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  forceTexture,
OpenGL::CgProgram cgBoundary
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< ForceAdder > Fluid3dSolver::FluidFactoryImpl::createForceAdder OpenGL::Flat3dTextureSet textures,
unsigned int  valueTexture,
unsigned int  forceTexture,
BoundaryType  boundaryType
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< Projection > Fluid3dSolver::FluidFactoryImpl::createProjection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
OpenGL::CgProgram cgVelocityBoundary
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< Projection > Fluid3dSolver::FluidFactoryImpl::createProjection OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
BoundaryType  velocityBoundary
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< VorticityConfinement > Fluid3dSolver::FluidFactoryImpl::createVorticityConfinement OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  velocityForceTexture
[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.

Implements Fluid3dSolver::FluidFactory.

std::auto_ptr< VorticityConfinement > Fluid3dSolver::FluidFactoryImpl::createVorticityConfinement OpenGL::Flat3dTextureSet textures,
unsigned int  velocityTexture,
unsigned int  velocityForceTexture,
unsigned int  vorticityTexture
[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.

Implements Fluid3dSolver::FluidFactory.

bool Fluid3dSolver::FluidFactoryImpl::isSliceSimulation  )  const [virtual]
 

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

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

Implements Fluid3dSolver::FluidFactory.


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