#include "xfxelemdef.h"

XFxElemDef::XFxElemDef()
    : XAsset()
    , mFlags(0)
    , mSpawn()
    , mSpawnRange()
    , mFadeInRange()
    , mFadeOutRange()
    , mSpawnFrustumCullRadius(0)
    , mSpawnDelayMsec()
    , mLifeSpanMsec()
    , mSpawnOrigin()
    , mSpawnOffsetRadius()
    , mSpawnOffsetHeight()
    , mSpawnAngles()
    , mAngularVelocity()
    , mInitialRotation()
    , mGravity()
    , mReflectionFactor()
    , mAtlas()
    , mElemType(0)
    , mVisualCount(0)
    , mVelIntervalCount(0)
    , mVisStateIntervalCount(0)
    , mVelSamplesPtr(0)
    , mVelSamples()
    , mVisSamplesPtr(0)
    , mVisSamples()
    , mVisuals()
    , mCollMins()
    , mCollMaxs()
    , mEffectOnImpact()
    , mEffectOnDeath()
    , mEffectEmitted()
    , mEmitDist()
    , mEmitDistVariance()
    , mTrailDefPtr(0)
    , mTrailDef(new XFxTrailDef())
    , mSortOrder(0)
    , mLightingFrac(0)
    , mUseItemClip(0)
{

}

XFxElemDef::~XFxElemDef()
{
    
}

void XFxElemDef::Clear()
{
    mFlags = 0;
    mSpawn.Clear();
    mSpawnRange = FxFloatRange();
    mFadeInRange = FxFloatRange();
    mFadeOutRange = FxFloatRange();
    mSpawnFrustumCullRadius = 0;
    mSpawnDelayMsec = FxIntRange();
    mLifeSpanMsec = FxIntRange();
    mSpawnOrigin = QVector<FxFloatRange>();
    mSpawnOffsetRadius = FxFloatRange();
    mSpawnOffsetHeight = FxFloatRange();
    mSpawnAngles = QVector<FxFloatRange>();
    mAngularVelocity = QVector<FxFloatRange>();
    mInitialRotation = FxFloatRange();
    mGravity = FxFloatRange();
    mReflectionFactor = FxFloatRange();
    mAtlas = FxElemAtlas();
    mElemType = 0;
    mVisualCount = 0;
    mVelIntervalCount = 0;
    mVisStateIntervalCount = 0;
    mVelSamplesPtr = 0;
    mVelSamples = QVector<FxElemVelStateSample>();
    mVisSamplesPtr = 0;
    mVisSamples = QVector<FxElemVisStateSample>();
    mVisuals = FxElemDefVisuals();
    mCollMins = QVector3D();
    mCollMaxs = QVector3D();
    mEffectOnImpact = ;
    mEffectOnDeath = ;
    mEffectEmitted = ;
    mEmitDist = ;
    mEmitDistVariance = ;
    mTrailDefPtr = 0;
    mTrailDef = new XFxTrailDef = ;;
    mSortOrder = 0;
    mLightingFrac = 0;
    mUseItemClip = 0;
}

void XFxElemDef::ParseData(QDataStream *aStream)
{
    
}
