#include "comprimarylight.h" ComPrimaryLight::ComPrimaryLight(QObject *aParent) : XAsset(aParent) , mType(-1) , mCanUseShadowMap(-1) , mExponent(-1) , mUnused(-1) , mColor(0, 0, 0) , mDir(0, 0, 0) , mOrigin(0, 0, 0) , mRadius(0.0) , mCosHalfFovOuter(0.0) , mCosHalfFovInner(0.0) , mCosHalfFovExpanded(0.0) , mRotationLimit(0.0) , mTranslationLimit(0.0) , mDefName(new XString(this)) { } void ComPrimaryLight::Clear() { delete mDefName; } ComPrimaryLightArray *ComPrimaryLight::ParseArray(QDataStream *aStream, int aCount) { ComPrimaryLightArray* result = new ComPrimaryLightArray(); for (int i = 0; i < aCount; i++) { ComPrimaryLight* comPrimaryLight = new ComPrimaryLight(); comPrimaryLight->ParseData(aStream); result->append(comPrimaryLight); } return result; } void ComPrimaryLight::ParseData(QDataStream *aStream) { *aStream >> mType >> mCanUseShadowMap >> mExponent >> mUnused >> mColor >> mDir >> mOrigin >> mRadius >> mCosHalfFovOuter >> mCosHalfFovInner >> mCosHalfFovExpanded >> mRotationLimit >> mTranslationLimit; mDefName->ParseData(aStream); } quint8 ComPrimaryLight::GetType() const { return mType; } quint8 ComPrimaryLight::GetCanUseShadowMap() const { return mCanUseShadowMap; } quint8 ComPrimaryLight::GetExponent() const { return mExponent; } quint8 ComPrimaryLight::GetUnused() const { return mUnused; } QColor ComPrimaryLight::GetColor() const { return mColor; } QVector3D ComPrimaryLight::GetDir() const { return mDir; } QVector3D ComPrimaryLight::GetOrigin() const { return mOrigin; } float ComPrimaryLight::GetRadius() const { return mRadius; } float ComPrimaryLight::GetCosHalfFovOuter() const { return mCosHalfFovOuter; } float ComPrimaryLight::GetCosHalfFovInner() const { return mCosHalfFovInner; } float ComPrimaryLight::GetCosHalfFovExpanded() const { return mCosHalfFovExpanded; } float ComPrimaryLight::GetRotationLimit() const { return mRotationLimit; } float ComPrimaryLight::GetTranslationLimit() const { return mTranslationLimit; } XString* ComPrimaryLight::GetDefName() const { return mDefName; } void ComPrimaryLight::SetType(quint8 aType) { mType = aType; } void ComPrimaryLight::SetCanUseShadowMap(quint8 aCanUseShadowMap) { mCanUseShadowMap = aCanUseShadowMap; } void ComPrimaryLight::SetExponent(quint8 aExponent) { mExponent = aExponent; } void ComPrimaryLight::SetUnused(quint8 aUnused) { mUnused = aUnused; } void ComPrimaryLight::SetColor(const QColor aColor) { mColor = aColor; } void ComPrimaryLight::SetDir(const QVector3D aDir) { mDir = aDir; } void ComPrimaryLight::SetOrigin(const QVector3D aOrigin) { mOrigin = aOrigin; } void ComPrimaryLight::SetRadius(float aRadius) { mRadius = aRadius; } void ComPrimaryLight::SetCosHalfFovOuter(float aCosHalfFovOuter) { mCosHalfFovOuter = aCosHalfFovOuter; } void ComPrimaryLight::SetCosHalfFovInner(float aCosHalfFovInner) { mCosHalfFovInner = aCosHalfFovInner; } void ComPrimaryLight::SetCosHalfFovExpanded(float aCosHalfFovExpanded) { mCosHalfFovExpanded = aCosHalfFovExpanded; } void ComPrimaryLight::SetRotationLimit(float aRotationLimit) { mRotationLimit = aRotationLimit; } void ComPrimaryLight::SetTranslationLimit(float aTranslationLimit) { mTranslationLimit = aTranslationLimit; } void ComPrimaryLight::SetDefName(XString* aDefName) { mDefName = aDefName; } void ComPrimaryLight::SetDefName(const QString aDefName) { if (mDefName != nullptr) { mDefName->SetString(aDefName); } }