#include <OgreD3D9GpuProgram.h>
Inheritance diagram for Ogre::D3D9GpuFragmentProgram:
Public Methods | |
D3D9GpuFragmentProgram (const String &name, const String &syntaxCode, LPDIRECT3DDEVICE9 pDev) | |
void | unload (void) |
@copydoc Resource::unload | |
LPDIRECT3DPIXELSHADER9 | getPixelShader (void) const |
Gets the pixel shader. | |
void | setExternalMicrocode (LPD3DXBUFFER pMicrocode) |
Tells the program to load from some externally created microcode instead of a file or source. | |
LPD3DXBUFFER | getExternalMicrocode (void) |
Gets the external microcode buffer, if any. | |
void | load (void) |
Override load function to allow load direct from external microcode. | |
virtual void | setSourceFile (const String &filename) |
Sets the filename of the source assembly for this program. | |
virtual void | setSource (const String &source) |
Sets the source assembly for this program from an in-memory string. | |
virtual const String & | getSyntaxCode (void) const |
Gets the syntax code for this program e.g. | |
virtual const String & | getSourceFile (void) const |
Gets the name of the file used as source for this program. | |
virtual const String & | getSource (void) const |
Gets the assembler source for this program. | |
virtual GpuProgramType | getType (void) const |
Get the program type. | |
virtual GpuProgram * | _getBindingDelegate (void) |
Returns the GpuProgram which should be bound to the pipeline. | |
virtual bool | isSupported (void) const |
Returns whether this program can be supported on the current renderer and hardware. | |
virtual GpuProgramParametersSharedPtr | createParameters (void) |
Creates a new parameters object compatible with this program definition. | |
virtual size_t | getSize (void) const |
Retrieves info about the size of the resource. | |
virtual void | touch (void) |
'Touches' the resource to indicate it has been used. | |
time_t | getLastAccess (void) const |
Gets the last time the resource was 'touched'. | |
const String & | getName (void) const |
Gets resource name. | |
ResourceHandle | getHandle (void) const |
bool | isLoaded (void) const |
Returns true if the Resource has been loaded, false otherwise. | |
virtual void | destroy () |
A method to make the resource delete itself. | |
Protected Methods | |
void | loadFromMicrocode (LPD3DXBUFFER microcode) |
Internal method to load from microcode, must be overridden by subclasses. | |
void | loadFromSource (void) |
Overridden from GpuProgram. | |
Protected Attributes | |
LPDIRECT3DPIXELSHADER9 | mpPixelShader |
LPDIRECT3DDEVICE9 | mpDevice |
LPD3DXBUFFER | mpExternalMicrocode |
GpuProgramType | mType |
The type of the program. | |
String | mFilename |
The name of the file to load source from (may be blank). | |
String | mSource |
The assembler source of the program (may be blank until file loaded). | |
bool | mLoadFromFile |
Whether we need to load source from file or not. | |
String | mSyntaxCode |
Syntax code eg arbvp1, vs_2_0 etc. | |
String | mName |
ResourceHandle | mHandle |
bool | mIsLoaded |
time_t | mLastAccess |
size_t | mSize |
Definition at line 78 of file OgreD3D9GpuProgram.h.
|
Definition at line 127 of file OgreD3D9GpuProgram.cpp. References Ogre::GPT_FRAGMENT_PROGRAM. |
|
Returns the GpuProgram which should be bound to the pipeline.
Reimplemented in Ogre::HighLevelGpuProgram. Definition at line 465 of file OgreGpuProgram.h. Referenced by Ogre::SceneManager::setPass(). |
|
Creates a new parameters object compatible with this program definition.
Reimplemented in Ogre::HighLevelGpuProgram, and Ogre::D3D9HLSLProgram. Definition at line 84 of file OgreGpuProgram.cpp. References Ogre::GpuProgramParametersSharedPtr. Referenced by Ogre::GpuProgramUsage::setProgram(), and Ogre::GpuProgramUsage::setProgramName(). |
|
A method to make the resource delete itself.
Definition at line 137 of file OgreResource.h. |
|
Gets the external microcode buffer, if any.
Definition at line 49 of file OgreD3D9GpuProgram.h. References Ogre::D3D9GpuProgram::mpExternalMicrocode. |
|
Definition at line 120 of file OgreResource.h. References Ogre::ResourceHandle. Referenced by Ogre::Material::clone(), Ogre::BspLevel::loadQuake3Level(), and Ogre::ResourceManager::unload(). |
|
Gets the last time the resource was 'touched'.
Definition at line 108 of file OgreResource.h. |
|
|
Gets the pixel shader.
Definition at line 87 of file OgreD3D9GpuProgram.h. References mpPixelShader. |
|
Retrieves info about the size of the resource.
Definition at line 93 of file OgreResource.h. Referenced by Ogre::ResourceManager::unload(). |
|
Gets the assembler source for this program.
Definition at line 455 of file OgreGpuProgram.h. |
|
Gets the name of the file used as source for this program.
Definition at line 453 of file OgreGpuProgram.h. |
|
Gets the syntax code for this program e.g. arbvp1, fp20, vs_1_1 etc Definition at line 450 of file OgreGpuProgram.h. |
|
Get the program type.
Definition at line 457 of file OgreGpuProgram.h. Referenced by Ogre::GLRenderSystem::bindGpuProgram(), and Ogre::D3D9RenderSystem::bindGpuProgram(). |
|
Returns true if the Resource has been loaded, false otherwise.
Definition at line 127 of file OgreResource.h. Referenced by Ogre::GpuProgramUsage::_load(), Ogre::Technique::isLoaded(), Ogre::D3D9Texture::load(), Ogre::D3D9Texture::unload(), and Ogre::D3D9Texture::~D3D9Texture(). |
|
Returns whether this program can be supported on the current renderer and hardware.
Reimplemented in Ogre::CgProgram, and Ogre::D3D9HLSLProgram. Definition at line 79 of file OgreGpuProgram.cpp. References Ogre::GpuProgram::mSyntaxCode. Referenced by Ogre::Technique::_compile(), Ogre::HighLevelGpuProgram::createParameters(), Ogre::parseFragmentProgramRef(), Ogre::parseParamIndexed(), Ogre::parseParamIndexedAuto(), Ogre::parseParamNamed(), Ogre::parseParamNamedAuto(), and Ogre::parseVertexProgramRef(). |
|
Override load function to allow load direct from external microcode.
Reimplemented from Ogre::GpuProgram. Definition at line 42 of file OgreD3D9GpuProgram.cpp. References Ogre::DataChunk::getAsString(), Ogre::D3D9GpuProgram::loadFromMicrocode(), Ogre::D3D9GpuProgram::loadFromSource(), Ogre::GpuProgram::mFilename, Ogre::Resource::mIsLoaded, Ogre::D3D9GpuProgram::mpExternalMicrocode, Ogre::GpuProgram::mSource, and Ogre::Resource::unload(). |
|
Internal method to load from microcode, must be overridden by subclasses.
Implements Ogre::D3D9GpuProgram. Definition at line 133 of file OgreD3D9GpuProgram.cpp. References Except, Ogre::Resource::mName, Ogre::D3D9GpuProgram::mpDevice, and mpPixelShader. |
|
Overridden from GpuProgram.
Implements Ogre::GpuProgram. Definition at line 72 of file OgreD3D9GpuProgram.cpp. References Except, Ogre::D3D9GpuProgram::loadFromMicrocode(), Ogre::Resource::mName, Ogre::GpuProgram::mSource, and SAFE_RELEASE. Referenced by Ogre::D3D9GpuProgram::load(). |
|
Tells the program to load from some externally created microcode instead of a file or source.
Definition at line 47 of file OgreD3D9GpuProgram.h. References Ogre::D3D9GpuProgram::mpExternalMicrocode. |
|
Sets the source assembly for this program from an in-memory string.
Definition at line 51 of file OgreGpuProgram.cpp. References Ogre::GpuProgram::mFilename, Ogre::GpuProgram::mLoadFromFile, and Ogre::GpuProgram::mSource. Referenced by Ogre::GpuProgramManager::createProgramFromString(), and Ogre::GpuProgramManager::loadFromString(). |
|
Sets the filename of the source assembly for this program.
Definition at line 44 of file OgreGpuProgram.cpp. References Ogre::GpuProgram::mFilename, Ogre::GpuProgram::mLoadFromFile, and Ogre::GpuProgram::mSource. Referenced by Ogre::GpuProgramManager::createProgram(), Ogre::MaterialSerializer::finishProgramDefinition(), and Ogre::GpuProgramManager::load(). |
|
'Touches' the resource to indicate it has been used.
Reimplemented in Ogre::Material. Definition at line 100 of file OgreResource.h. Referenced by Ogre::ResourceManager::load(). |
|
@copydoc Resource::unload
Reimplemented from Ogre::Resource. Definition at line 148 of file OgreD3D9GpuProgram.cpp. References mpPixelShader, and SAFE_RELEASE. |
|
The name of the file to load source from (may be blank).
Definition at line 424 of file OgreGpuProgram.h. Referenced by Ogre::GpuProgram::load(), Ogre::D3D9GpuProgram::load(), Ogre::HighLevelGpuProgram::loadHighLevelImpl(), Ogre::GpuProgram::setSource(), and Ogre::GpuProgram::setSourceFile(). |
|
Definition at line 57 of file OgreResource.h. Referenced by Ogre::ResourceManager::add(), Ogre::Material::clone(), Ogre::Material::copyDetailsTo(), and Ogre::Material::operator=(). |
|
|
Definition at line 59 of file OgreResource.h. Referenced by Ogre::Material::operator=(). |
|
Whether we need to load source from file or not.
Definition at line 428 of file OgreGpuProgram.h. Referenced by Ogre::GpuProgram::setSource(), and Ogre::GpuProgram::setSourceFile(). |
|
|
Definition at line 38 of file OgreD3D9GpuProgram.h. Referenced by loadFromMicrocode(), and Ogre::D3D9GpuVertexProgram::loadFromMicrocode(). |
|
Definition at line 39 of file OgreD3D9GpuProgram.h. Referenced by Ogre::D3D9GpuProgram::getExternalMicrocode(), Ogre::D3D9GpuProgram::load(), and Ogre::D3D9GpuProgram::setExternalMicrocode(). |
|
Definition at line 81 of file OgreD3D9GpuProgram.h. Referenced by getPixelShader(), loadFromMicrocode(), and unload(). |
|
Definition at line 60 of file OgreResource.h. Referenced by Ogre::D3D9Texture::_setFinalAttributes(), Ogre::D3DTexture::loadImage(), Ogre::D3DTexture::loadImage3D(), Ogre::GLTexture::loadImages(), and Ogre::Material::operator=(). |
|
The assembler source of the program (may be blank until file loaded).
Definition at line 426 of file OgreGpuProgram.h. Referenced by Ogre::GpuProgram::load(), Ogre::D3D9GpuProgram::load(), Ogre::GLArbGpuProgram::loadFromSource(), Ogre::GLGpuNvparseProgram::loadFromSource(), Ogre::D3D9HLSLProgram::loadFromSource(), Ogre::D3D9GpuProgram::loadFromSource(), Ogre::CgProgram::loadFromSource(), Ogre::HighLevelGpuProgram::loadHighLevelImpl(), Ogre::GpuProgram::setSource(), and Ogre::GpuProgram::setSourceFile(). |
|
Syntax code eg arbvp1, vs_2_0 etc.
Definition at line 430 of file OgreGpuProgram.h. Referenced by Ogre::GpuProgram::isSupported(). |
|
The type of the program.
Definition at line 422 of file OgreGpuProgram.h. Referenced by Ogre::GLArbGpuProgram::bindProgramParameters(), Ogre::D3D9HLSLProgram::createLowLevelImpl(), and Ogre::CgProgram::createLowLevelImpl(). |
Copyright © 2002-2003 by The OGRE Team
Last modified Wed Jan 21 00:12:07 2004