#ifndef XCLEAFBRUSHNODEDATA_H
#define XCLEAFBRUSHNODEDATA_H

#include "xasset.h"
#include "xcleafbrushnodeleaf.h"
#include "xcleafbrushnodechildren.h"

class XCLeafBrushNodeData : public XAsset
{
public:
    explicit XCLeafBrushNodeData();
    virtual ~XCLeafBrushNodeData() override;

    void ParseData(QDataStream *aStream) override;
    void Clear() override;

    // Option 1: Leaf data
    const XCLeafBrushNodeLeaf& GetLeaf() const;
    void SetLeaf(const XCLeafBrushNodeLeaf& leaf);

    // Option 2: Children data
    const XCLeafBrushNodeChildren& GetChildren() const;
    void SetChildren(const XCLeafBrushNodeChildren& children);

private:
    XCLeafBrushNodeLeaf mLeaf;
    XCLeafBrushNodeChildren mChildren;
};

#endif // XCLEAFBRUSHNODEDATA_H





