#include "xmaterialtechnique.h" XMaterialTechnique::XMaterialTechnique() : XAsset() , mTechniqueName() , mFlags(0) , mPassCount(0) , mPassArray() { SetName("Material Technique"); } void XMaterialTechnique::ParseData(XDataStream *aStream) { if (IsDebug()) { qDebug() << QString("[%1] Parsing data for %2").arg(aStream->device()->pos(), 10, 10, QChar('0')).arg(GetName()); } mTechniqueName.ParsePtr(aStream, false); mFlags = aStream->ParseUInt16(QString("%1 flags").arg(GetName())); mPassCount = aStream->ParseUInt16(QString("%1 pass count").arg(GetName())); mPassArray = QVector(mPassCount); for (int i = 0; i < mPassCount; i++) { mPassArray[i].SetCommonInfo(GetCommonInfo()); mPassArray[i].ParseData(aStream); } mTechniqueName.ParseDataSafe(aStream); } void XMaterialTechnique::Clear() { mTechniqueName.Clear(); mFlags = 0; mPassCount = 0; mPassArray.clear(); } XString XMaterialTechnique::TechniqueName() const { return mTechniqueName; } void XMaterialTechnique::SetTechniqueName(const XString &aName) { mTechniqueName = aName; } quint16 XMaterialTechnique::Flags() const { return mFlags; } void XMaterialTechnique::SetFlags(quint16 aFlags) { mFlags = aFlags; } quint16 XMaterialTechnique::PassCount() const { return mPassCount; } void XMaterialTechnique::SetPassCount(quint16 aPassCount) { mPassCount = aPassCount; } QVector XMaterialTechnique::PassArray() const { return mPassArray; } void XMaterialTechnique::SetPassArray(const QVector &aPassArray) { mPassArray = aPassArray; }