#include "xsunlightparseparams.h" XSunLightParseParams::XSunLightParseParams() : XAsset() { } void XSunLightParseParams::ParseData(QDataStream *aStream) { if (GetPtr() == -1) { aStream->read(mName, 64 * sizeof(char)); aStream->read((char*)&mAmbientScale, sizeof(float)); aStream->read((char*)mAmbientColor, 3 * sizeof(float)); aStream->read((char*)&mDiffuseFraction, sizeof(float)); aStream->read((char*)&mSunLight, sizeof(float)); aStream->read((char*)mSunColor, 3 * sizeof(float)); aStream->read((char*)mDiffuseColor, 3 * sizeof(float)); aStream->read((char*)&mDiffuseColorHasBeenSet, sizeof(bool)); aStream->read((char*)mAngles, 3 * sizeof(float)); } } const char* XSunLightParseParams::GetName() const { return mName; } void XSunLightParseParams::SetName(const char* name) { strncpy(mName, name, 64); } float XSunLightParseParams::GetAmbientScale() const { return mAmbientScale; } void XSunLightParseParams::SetAmbientScale(float scale) { mAmbientScale = scale; } const float* XSunLightParseParams::GetAmbientColor() const { return mAmbientColor; } void XSunLightParseParams::SetAmbientColor(const float* color, size_t count) { if (count <= 3) { memcpy(mAmbientColor, color, count * sizeof(float)); } } float XSunLightParseParams::GetDiffuseFraction() const { return mDiffuseFraction; } void XSunLightParseParams::SetDiffuseFraction(float fraction) { mDiffuseFraction = fraction; } float XSunLightParseParams::GetSunLight() const { return mSunLight; } void XSunLightParseParams::SetSunLight(float light) { mSunLight = light; } const float* XSunLightParseParams::GetSunColor() const { return mSunColor; } void XSunLightParseParams::SetSunColor(const float* color, size_t count) { if (count <= 3) { memcpy(mSunColor, color, count * sizeof(float)); } } const float* XSunLightParseParams::GetDiffuseColor() const { return mDiffuseColor; } void XSunLightParseParams::SetDiffuseColor(const float* color, size_t count) { if (count <= 3) { memcpy(mDiffuseColor, color, count * sizeof(float)); } } bool XSunLightParseParams::IsDiffuseColorSet() const { return mDiffuseColorHasBeenSet; } void XSunLightParseParams::SetDiffuseColorSet(bool set) { mDiffuseColorHasBeenSet = set; } const float* XSunLightParseParams::GetAngles() const { return mAngles; } void XSunLightParseParams::SetAngles(const float* angles, size_t count) { if (count <= 3) { memcpy(mAngles, angles, count * sizeof(float)); } }