Play-/Source/ui_qt/DebugSupport/FrameDebugger/GsPacketListModel.h

42 lines
1 KiB
C
Raw Normal View History

2020-02-02 19:46:03 +00:00
#pragma once
#include <QAbstractItemModel>
#include <QModelIndex>
#include <QVariant>
#include <QWidget>
#include "FrameDump.h"
#include <QMetaObject>
class GsPacketData;
class PacketTreeModel : public QAbstractItemModel
{
Q_OBJECT
public:
explicit PacketTreeModel(QWidget* = nullptr);
~PacketTreeModel();
2021-01-10 11:31:59 +00:00
struct DrawKickIndexInfo
{
uint32 parentIndex;
uint32 childIndex;
uint32 cmdIndex;
};
2020-02-02 19:46:03 +00:00
QVariant data(const QModelIndex&, int) const override;
Qt::ItemFlags flags(const QModelIndex&) const override;
QVariant headerData(int, Qt::Orientation, int = Qt::DisplayRole) const override;
QModelIndex index(int, int, const QModelIndex& = QModelIndex()) const override;
QModelIndex parent(const QModelIndex&) const override;
int rowCount(const QModelIndex& = QModelIndex()) const override;
int columnCount(const QModelIndex& = QModelIndex()) const override;
void setupModelData(CFrameDump&);
2021-01-10 11:31:59 +00:00
const std::vector<DrawKickIndexInfo>& GetDrawKickIndexes();
2020-02-02 19:46:03 +00:00
2020-02-06 12:39:36 +00:00
private:
2020-02-06 14:06:28 +00:00
GsPacketData* m_rootItem;
2021-01-10 11:31:59 +00:00
std::vector<DrawKickIndexInfo> m_drawKickIndexInfo;
2020-02-02 19:46:03 +00:00
};