File indexing completed on 2024-04-28 05:41:32

0001 /*
0002     This file is part of KCachegrind.
0003 
0004     SPDX-FileCopyrightText: 2003-2016 Josef Weidendorfer <Josef.Weidendorfer@gmx.de>
0005 
0006     SPDX-License-Identifier: GPL-2.0-only
0007 */
0008 
0009 /*
0010  * Items of event type view.
0011  */
0012 
0013 #ifndef EVENTTYPEITEM_H
0014 #define EVENTTYPEITEM_H
0015 
0016 #include <QTreeWidgetItem>
0017 
0018 #include "tracedata.h"
0019 
0020 class EventTypeItem: public QTreeWidgetItem
0021 {
0022 public:
0023     EventTypeItem(TraceCostItem* costItem,
0024                   EventType* ct, ProfileContext::Type gt);
0025 
0026     bool operator<(const QTreeWidgetItem &other) const override;
0027     void setGroupType(ProfileContext::Type);
0028     TraceCostItem* costItem() { return _costItem; }
0029     EventType* eventType() { return _eventType; }
0030     void update();
0031 
0032     QVariant data(int column, int role) const override;
0033 
0034 private:
0035     SubCost _sum, _pure;
0036     EventType* _eventType;
0037     TraceCostItem* _costItem;
0038     ProfileContext::Type _groupType;
0039 };
0040 
0041 #endif // EVENTTYPEITEM_H