#include <OgreMaterialSerializer.h>
Public Member Functions | |
MaterialSerializer () | |
default constructor | |
virtual | ~MaterialSerializer () |
default destructor | |
void | queueForExport (const MaterialPtr &pMat, bool clearQueued=false, bool exportDefaults=false) |
Queue an in-memory Material to the internal buffer for export. | |
void | exportQueued (const String &filename, const bool includeProgDef=false, const String &programFilename="") |
Exports queued material(s) to a named material script file. | |
void | exportMaterial (const MaterialPtr &pMat, const String &filename, bool exportDefaults=false, const bool includeProgDef=false, const String &programFilename="") |
Exports a single in-memory Material to the named material script file. | |
const String & | getQueuedAsString () const |
Returns a string representing the parsed material(s). | |
void | clearQueue () |
Clears the internal buffer. | |
void | parseScript (DataStreamPtr &stream, const String &groupName) |
Parses a Material script file passed as a stream. | |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
void * | operator new[] (size_t sz) |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
Protected Types | |
typedef std::map < String, ATTRIBUTE_PARSER > | AttribParserList |
Keyword-mapped attribute parsers. | |
typedef std::multimap < TextureUnitState::TextureEffectType, TextureUnitState::TextureEffect > | EffectMap |
Protected Member Functions | |
bool | parseScriptLine (String &line) |
internal method for parsing a material | |
bool | invokeParser (String &line, AttribParserList &parsers) |
internal method for finding & invoking an attribute parser. | |
void | finishProgramDefinition (void) |
Internal method for saving a program definition which has been built up. | |
void | writeMaterial (const MaterialPtr &pMat) |
void | writeTechnique (const Technique *pTech) |
void | writePass (const Pass *pPass) |
void | writeVertexProgramRef (const Pass *pPass) |
void | writeShadowCasterVertexProgramRef (const Pass *pPass) |
void | writeShadowReceiverVertexProgramRef (const Pass *pPass) |
void | writeShadowReceiverFragmentProgramRef (const Pass *pPass) |
void | writeFragmentProgramRef (const Pass *pPass) |
void | writeGpuProgramRef (const String &attrib, const GpuProgramPtr &program, const GpuProgramParametersSharedPtr ¶ms) |
void | writeGpuPrograms (void) |
void | writeGPUProgramParameters (const GpuProgramParametersSharedPtr ¶ms, GpuProgramParameters *defaultParams, const int level=4, const bool useMainBuffer=true) |
void | writeNamedGpuProgramParameters (const GpuProgramParametersSharedPtr ¶ms, GpuProgramParameters *defaultParams, const int level=4, const bool useMainBuffer=true) |
void | writeLowLevelGpuProgramParameters (const GpuProgramParametersSharedPtr ¶ms, GpuProgramParameters *defaultParams, const int level=4, const bool useMainBuffer=true) |
void | writeGpuProgramParameter (const String &commandName, const String &identifier, const GpuProgramParameters::AutoConstantEntry *autoEntry, const GpuProgramParameters::AutoConstantEntry *defaultAutoEntry, bool isFloat, size_t physicalIndex, size_t physicalSize, const GpuProgramParametersSharedPtr ¶ms, GpuProgramParameters *defaultParams, const int level, const bool useMainBuffer) |
void | writeTextureUnit (const TextureUnitState *pTex) |
void | writeSceneBlendFactor (const SceneBlendFactor c_src, const SceneBlendFactor c_dest, const SceneBlendFactor a_src, const SceneBlendFactor a_dest) |
void | writeSceneBlendFactor (const SceneBlendFactor sbf_src, const SceneBlendFactor sbf_dest) |
void | writeSceneBlendFactor (const SceneBlendFactor sbf) |
void | writeCompareFunction (const CompareFunction cf) |
void | writeColourValue (const ColourValue &colour, bool writeAlpha=false) |
void | writeLayerBlendOperationEx (const LayerBlendOperationEx op) |
void | writeLayerBlendSource (const LayerBlendSource lbs) |
void | writeRotationEffect (const TextureUnitState::TextureEffect &effect, const TextureUnitState *pTex) |
void | writeTransformEffect (const TextureUnitState::TextureEffect &effect, const TextureUnitState *pTex) |
void | writeScrollEffect (const TextureUnitState::TextureEffect &effect, const TextureUnitState *pTex) |
void | writeEnvironmentMapEffect (const TextureUnitState::TextureEffect &effect, const TextureUnitState *pTex) |
String | convertFiltering (FilterOptions fo) |
Protected Attributes | |
MaterialScriptContext | mScriptContext |
AttribParserList | mRootAttribParsers |
Parsers for the root of the material script. | |
AttribParserList | mMaterialAttribParsers |
Parsers for the material section of a script. | |
AttribParserList | mTechniqueAttribParsers |
Parsers for the technique section of a script. | |
AttribParserList | mPassAttribParsers |
Parsers for the pass section of a script. | |
AttribParserList | mTextureUnitAttribParsers |
Parsers for the texture unit section of a script. | |
AttribParserList | mProgramRefAttribParsers |
Parsers for the program reference section of a script. | |
AttribParserList | mProgramAttribParsers |
Parsers for the program definition section of a script. | |
AttribParserList | mProgramDefaultParamAttribParsers |
Parsers for the program definition section of a script. | |
Private Types | |
typedef std::set < String > | GpuProgramDefinitionContainer |
typedef GpuProgramDefinitionContainer::iterator | GpuProgramDefIterator |
Private Member Functions | |
void | beginSection (unsigned short level, const bool useMainBuffer=true) |
void | endSection (unsigned short level, const bool useMainBuffer=true) |
void | writeAttribute (unsigned short level, const String &att, const bool useMainBuffer=true) |
void | writeValue (const String &val, const bool useMainBuffer=true) |
void | writeComment (unsigned short level, const String &comment, const bool useMainBuffer=true) |
Private Attributes | |
String | mBuffer |
String | mGpuProgramBuffer |
GpuProgramDefinitionContainer | mGpuProgramDefinitionContainer |
bool | mDefaults |
Definition at line 99 of file OgreMaterialSerializer.h.
typedef std::map<String, ATTRIBUTE_PARSER> Ogre::MaterialSerializer::AttribParserList [protected] |
typedef std::multimap<TextureUnitState::TextureEffectType, TextureUnitState::TextureEffect> Ogre::MaterialSerializer::EffectMap [protected] |
Definition at line 167 of file OgreMaterialSerializer.h.
typedef std::set<String> Ogre::MaterialSerializer::GpuProgramDefinitionContainer [private] |
Definition at line 224 of file OgreMaterialSerializer.h.
typedef GpuProgramDefinitionContainer::iterator Ogre::MaterialSerializer::GpuProgramDefIterator [private] |
Definition at line 225 of file OgreMaterialSerializer.h.
Ogre::MaterialSerializer::MaterialSerializer | ( | ) |
default constructor
virtual Ogre::MaterialSerializer::~MaterialSerializer | ( | ) | [virtual] |
bool Ogre::MaterialSerializer::parseScriptLine | ( | String & | line | ) | [protected] |
internal method for parsing a material
bool Ogre::MaterialSerializer::invokeParser | ( | String & | line, | |
AttribParserList & | parsers | |||
) | [protected] |
internal method for finding & invoking an attribute parser.
void Ogre::MaterialSerializer::finishProgramDefinition | ( | void | ) | [protected] |
Internal method for saving a program definition which has been built up.
void Ogre::MaterialSerializer::writeMaterial | ( | const MaterialPtr & | pMat | ) | [protected] |
void Ogre::MaterialSerializer::writeTechnique | ( | const Technique * | pTech | ) | [protected] |
void Ogre::MaterialSerializer::writePass | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeVertexProgramRef | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeShadowCasterVertexProgramRef | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeShadowReceiverVertexProgramRef | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeShadowReceiverFragmentProgramRef | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeFragmentProgramRef | ( | const Pass * | pPass | ) | [protected] |
void Ogre::MaterialSerializer::writeGpuProgramRef | ( | const String & | attrib, | |
const GpuProgramPtr & | program, | |||
const GpuProgramParametersSharedPtr & | params | |||
) | [protected] |
void Ogre::MaterialSerializer::writeGpuPrograms | ( | void | ) | [protected] |
void Ogre::MaterialSerializer::writeGPUProgramParameters | ( | const GpuProgramParametersSharedPtr & | params, | |
GpuProgramParameters * | defaultParams, | |||
const int | level = 4 , |
|||
const bool | useMainBuffer = true | |||
) | [protected] |
void Ogre::MaterialSerializer::writeNamedGpuProgramParameters | ( | const GpuProgramParametersSharedPtr & | params, | |
GpuProgramParameters * | defaultParams, | |||
const int | level = 4 , |
|||
const bool | useMainBuffer = true | |||
) | [protected] |
void Ogre::MaterialSerializer::writeLowLevelGpuProgramParameters | ( | const GpuProgramParametersSharedPtr & | params, | |
GpuProgramParameters * | defaultParams, | |||
const int | level = 4 , |
|||
const bool | useMainBuffer = true | |||
) | [protected] |
void Ogre::MaterialSerializer::writeGpuProgramParameter | ( | const String & | commandName, | |
const String & | identifier, | |||
const GpuProgramParameters::AutoConstantEntry * | autoEntry, | |||
const GpuProgramParameters::AutoConstantEntry * | defaultAutoEntry, | |||
bool | isFloat, | |||
size_t | physicalIndex, | |||
size_t | physicalSize, | |||
const GpuProgramParametersSharedPtr & | params, | |||
GpuProgramParameters * | defaultParams, | |||
const int | level, | |||
const bool | useMainBuffer | |||
) | [protected] |
void Ogre::MaterialSerializer::writeTextureUnit | ( | const TextureUnitState * | pTex | ) | [protected] |
void Ogre::MaterialSerializer::writeSceneBlendFactor | ( | const SceneBlendFactor | c_src, | |
const SceneBlendFactor | c_dest, | |||
const SceneBlendFactor | a_src, | |||
const SceneBlendFactor | a_dest | |||
) | [protected] |
void Ogre::MaterialSerializer::writeSceneBlendFactor | ( | const SceneBlendFactor | sbf_src, | |
const SceneBlendFactor | sbf_dest | |||
) | [protected] |
void Ogre::MaterialSerializer::writeSceneBlendFactor | ( | const SceneBlendFactor | sbf | ) | [protected] |
void Ogre::MaterialSerializer::writeCompareFunction | ( | const CompareFunction | cf | ) | [protected] |
void Ogre::MaterialSerializer::writeColourValue | ( | const ColourValue & | colour, | |
bool | writeAlpha = false | |||
) | [protected] |
void Ogre::MaterialSerializer::writeLayerBlendOperationEx | ( | const LayerBlendOperationEx | op | ) | [protected] |
void Ogre::MaterialSerializer::writeLayerBlendSource | ( | const LayerBlendSource | lbs | ) | [protected] |
void Ogre::MaterialSerializer::writeRotationEffect | ( | const TextureUnitState::TextureEffect & | effect, | |
const TextureUnitState * | pTex | |||
) | [protected] |
void Ogre::MaterialSerializer::writeTransformEffect | ( | const TextureUnitState::TextureEffect & | effect, | |
const TextureUnitState * | pTex | |||
) | [protected] |
void Ogre::MaterialSerializer::writeScrollEffect | ( | const TextureUnitState::TextureEffect & | effect, | |
const TextureUnitState * | pTex | |||
) | [protected] |
void Ogre::MaterialSerializer::writeEnvironmentMapEffect | ( | const TextureUnitState::TextureEffect & | effect, | |
const TextureUnitState * | pTex | |||
) | [protected] |
String Ogre::MaterialSerializer::convertFiltering | ( | FilterOptions | fo | ) | [protected] |
void Ogre::MaterialSerializer::queueForExport | ( | const MaterialPtr & | pMat, | |
bool | clearQueued = false , |
|||
bool | exportDefaults = false | |||
) |
void Ogre::MaterialSerializer::exportQueued | ( | const String & | filename, | |
const bool | includeProgDef = false , |
|||
const String & | programFilename = "" | |||
) |
Exports queued material(s) to a named material script file.
filename | the file name of the material script to be exported | |
includeProgDef | If true, vertex program and fragment program definitions will be written at the top of the material script | |
programFilename | the file name of the vertex / fragment program script to be exported. This is only used if there are program definitions to be exported and includeProgDef is false when calling queueForExport. |
void Ogre::MaterialSerializer::exportMaterial | ( | const MaterialPtr & | pMat, | |
const String & | filename, | |||
bool | exportDefaults = false , |
|||
const bool | includeProgDef = false , |
|||
const String & | programFilename = "" | |||
) |
Exports a single in-memory Material to the named material script file.
exportDefaults | if true then exports all values including defaults | |
includeProgDef | if true includes Gpu shader program definitions in the export material script otherwise if false then program definitions will be exported to a separate file with name programFilename if programFilename is not empty | |
programFilename | the file name of the vertex / fragment program script to be exported. This is only used if includeProgDef is false. |
const String& Ogre::MaterialSerializer::getQueuedAsString | ( | ) | const |
Returns a string representing the parsed material(s).
void Ogre::MaterialSerializer::clearQueue | ( | ) |
Clears the internal buffer.
void Ogre::MaterialSerializer::parseScript | ( | DataStreamPtr & | stream, | |
const String & | groupName | |||
) |
Parses a Material script file passed as a stream.
void Ogre::MaterialSerializer::beginSection | ( | unsigned short | level, | |
const bool | useMainBuffer = true | |||
) | [private] |
Definition at line 229 of file OgreMaterialSerializer.h.
void Ogre::MaterialSerializer::endSection | ( | unsigned short | level, | |
const bool | useMainBuffer = true | |||
) | [private] |
Definition at line 239 of file OgreMaterialSerializer.h.
void Ogre::MaterialSerializer::writeAttribute | ( | unsigned short | level, | |
const String & | att, | |||
const bool | useMainBuffer = true | |||
) | [private] |
Definition at line 250 of file OgreMaterialSerializer.h.
void Ogre::MaterialSerializer::writeValue | ( | const String & | val, | |
const bool | useMainBuffer = true | |||
) | [private] |
Definition at line 261 of file OgreMaterialSerializer.h.
void Ogre::MaterialSerializer::writeComment | ( | unsigned short | level, | |
const String & | comment, | |||
const bool | useMainBuffer = true | |||
) | [private] |
Definition at line 267 of file OgreMaterialSerializer.h.
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, | |
const char * | file, | |||
int | line, | |||
const char * | func | |||
) | [inherited] |
operator new, with debug line info
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) | [inherited] |
void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz, | |
void * | ptr | |||
) | [inherited] |
placement operator new
void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz, | |
const char * | file, | |||
int | line, | |||
const char * | func | |||
) | [inherited] |
array operator new, with debug line info
void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) | [inherited] |
void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) | [inherited] |
void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr, | |
const char * | , | |||
int | , | |||
const char * | ||||
) | [inherited] |
void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) | [inherited] |
void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr, | |
const char * | , | |||
int | , | |||
const char * | ||||
) | [inherited] |
Definition at line 105 of file OgreMaterialSerializer.h.
Parsers for the root of the material script.
Definition at line 118 of file OgreMaterialSerializer.h.
Parsers for the material section of a script.
Definition at line 120 of file OgreMaterialSerializer.h.
Parsers for the technique section of a script.
Definition at line 122 of file OgreMaterialSerializer.h.
Parsers for the texture unit section of a script.
Definition at line 126 of file OgreMaterialSerializer.h.
Parsers for the program reference section of a script.
Definition at line 128 of file OgreMaterialSerializer.h.
Parsers for the program definition section of a script.
Definition at line 130 of file OgreMaterialSerializer.h.
Parsers for the program definition section of a script.
Definition at line 132 of file OgreMaterialSerializer.h.
String Ogre::MaterialSerializer::mBuffer [private] |
Definition at line 222 of file OgreMaterialSerializer.h.
Definition at line 223 of file OgreMaterialSerializer.h.
Definition at line 226 of file OgreMaterialSerializer.h.
bool Ogre::MaterialSerializer::mDefaults [private] |
Definition at line 227 of file OgreMaterialSerializer.h.
Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Thu Aug 28 20:56:50 2008