Loading...
Searching...
No Matches
Ogre::MaterialSerializer Class Reference
Core » Materials

Class for serializing Materials to a .material script. More...

`#include <OgreMaterialSerializer.h>`

Inheritance diagram for Ogre::MaterialSerializer:
[legend]

## Classes

class | Listener
| Class that allows listening in on the various stages of material serialization process. More...

## Public Types

enum | SerializeEvent { MSE_PRE_WRITE , MSE_WRITE_BEGIN , MSE_WRITE_END , MSE_POST_WRITE }

## Public Member Functions

| MaterialSerializer ()
| default constructor
virtual | ~MaterialSerializer ()
| default destructor
void | addListener (Listener *listener)
| Register a listener to this Serializer.
void | beginSection (unsigned short level, const bool useMainBuffer=true)
void | clearQueue ()
| Clears the internal buffer.
void | endSection (unsigned short level, const bool useMainBuffer=true)
void | exportMaterial (const MaterialPtr &pMat, const String &filename, bool exportDefaults=false, const bool includeProgDef=false, const String &programFilename="", const String &materialName="")
| Exports a single in-memory Material to the named material script file.
void | exportQueued (const String &filename, const bool includeProgDef=false, const String &programFilename="")
| Exports queued material(s) to a named material script file.
const String & | getQueuedAsString () const
| Returns a string representing the parsed material(s).
void | queueForExport (const MaterialPtr &pMat, bool clearQueued=false, bool exportDefaults=false, const String &materialName="")
| Queue an in-memory Material to the internal buffer for export.
String | quoteWord (const String &val)
void | removeListener (Listener *listener)
| Remove a listener from this Serializer.
void | writeAttribute (unsigned short level, const String &att, const bool useMainBuffer=true)
void | writeComment (unsigned short level, const String &comment, const bool useMainBuffer=true)
void | writeValue (const String &val, const bool useMainBuffer=true)

## Detailed Description

Class for serializing Materials to a .material script.

## Member Enumeration Documentation

## SerializeEvent

enum Ogre::MaterialSerializer::SerializeEvent

Enumerator
MSE_PRE_WRITE |
MSE_WRITE_BEGIN |
MSE_WRITE_END |
MSE_POST_WRITE |

## Constructor & Destructor Documentation

## MaterialSerializer()

Ogre::MaterialSerializer::MaterialSerializer | ( |  | ) |

default constructor

Referenced by Ogre::MaterialSerializer::Listener::gpuProgramRefEventRaised(), Ogre::MaterialSerializer::Listener::materialEventRaised(), Ogre::MaterialSerializer::Listener::passEventRaised(), Ogre::MaterialSerializer::Listener::techniqueEventRaised(), and Ogre::MaterialSerializer::Listener::textureUnitStateEventRaised().

## ~MaterialSerializer()

virtual Ogre::MaterialSerializer::~MaterialSerializer | ( |  | ) |

inline virtual

default destructor

## Member Function Documentation

## queueForExport()

void Ogre::MaterialSerializer::queueForExport | ( | const MaterialPtr & | pMat,
|  | bool | clearQueued = false,
|  | bool | exportDefaults = false,
|  | const String & | materialName = "" )

Queue an in-memory Material to the internal buffer for export.

Parameters

  pMat | Material pointer
  clearQueued | If true, any materials already queued will be removed
  exportDefaults | If true, attributes which are defaulted will be included in the script exported, otherwise they will be omitted
  materialName | Allow exporting the given material under a different name. In case of empty string the original material name will be used.

## exportQueued()

void Ogre::MaterialSerializer::exportQueued | ( | const String & | filename,
|  | const bool | includeProgDef = false,
|  | const String & | programFilename = "" )

Exports queued material(s) to a named material script file.

Parameters

  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.

## exportMaterial()

void Ogre::MaterialSerializer::exportMaterial | ( | const MaterialPtr & | pMat,
|  | const String & | filename,
|  | bool | exportDefaults = false,
|  | const bool | includeProgDef = false,
|  | const String & | programFilename = "",
|  | const String & | materialName = "" )

Exports a single in-memory Material to the named material script file.

Parameters

  pMat | Material pointer
  filename | the file name of the material script to be exported
  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.
  materialName | Allow exporting the given material under a different name. In case of empty string the original material name will be used.

## getQueuedAsString()

const String & Ogre::MaterialSerializer::getQueuedAsString | ( |  | ) | const

Returns a string representing the parsed material(s).

## clearQueue()

void Ogre::MaterialSerializer::clearQueue | ( |  | ) |

Clears the internal buffer.

## addListener()

void Ogre::MaterialSerializer::addListener | ( | Listener * | listener | ) |

Register a listener to this Serializer.

See also
  MaterialSerializer::Listener

## removeListener()

void Ogre::MaterialSerializer::removeListener | ( | Listener * | listener | ) |

Remove a listener from this Serializer.

See also
  MaterialSerializer::Listener

## beginSection()

void Ogre::MaterialSerializer::beginSection | ( | unsigned short | level,
|  | const bool | useMainBuffer = true )

inline

## endSection()

void Ogre::MaterialSerializer::endSection | ( | unsigned short | level,
|  | const bool | useMainBuffer = true )

inline

## writeAttribute()

void Ogre::MaterialSerializer::writeAttribute | ( | unsigned short | level,
|  | const String & | att,
|  | const bool | useMainBuffer = true )

inline

## writeValue()

void Ogre::MaterialSerializer::writeValue | ( | const String & | val,
|  | const bool | useMainBuffer = true )

inline

## quoteWord()

String Ogre::MaterialSerializer::quoteWord | ( | const String & | val | ) |

inline

## writeComment()

void Ogre::MaterialSerializer::writeComment | ( | unsigned short | level,
|  | const String & | comment,
|  | const bool | useMainBuffer = true )

inline

The documentation for this class was generated from the following file:

- OgreMaterialSerializer.h