OpenHantek
rawdeviceslistmodel.h
Go to the documentation of this file.
1 // SPDX-License-Identifier: GPL-2.0+
2 
3 #pragma once
4 
5 #include <QAbstractTableModel>
6 #include "rawdevicelistentry.h"
7 #include "usb/usbdevice.h"
8 
13 class RawDevicesListModel: public QAbstractTableModel {
14 public:
15  RawDevicesListModel(libusb_context *context, QObject *parent = nullptr);
16  // QAbstractItemModel interface
17  int rowCount(const QModelIndex &parent) const override;
18  int columnCount(const QModelIndex &parent) const override;
19  QVariant data(const QModelIndex &index, int role) const override;
20  void updateDeviceList();
21 
22  enum Roles {
23  ProductIDRole = Qt::UserRole+0,
24  VendorIDRole = Qt::UserRole+1,
25  AccessRole = Qt::UserRole+2,
26  DeviceNameRole = Qt::UserRole+3,
27  EntryPointerRole = Qt::UserRole+4
28  };
29 private:
30  std::vector<RawDeviceListEntry> entries;
31  libusb_context *context;
32 };
int columnCount(const QModelIndex &parent) const override
Definition: rawdeviceslistmodel.cpp:15
Definition: rawdeviceslistmodel.h:25
std::vector< RawDeviceListEntry > entries
Definition: rawdeviceslistmodel.h:30
libusb_context * context
Definition: rawdeviceslistmodel.h:31
Definition: rawdeviceslistmodel.h:27
int rowCount(const QModelIndex &parent) const override
Definition: rawdeviceslistmodel.cpp:11
RawDevicesListModel(libusb_context *context, QObject *parent=nullptr)
Definition: rawdeviceslistmodel.cpp:9
QVariant data(const QModelIndex &index, int role) const override
Definition: rawdeviceslistmodel.cpp:19
Roles
Definition: rawdeviceslistmodel.h:22
void updateDeviceList()
Definition: rawdeviceslistmodel.cpp:41
Definition: rawdeviceslistmodel.h:24
Definition: rawdeviceslistmodel.h:23
Definition: rawdeviceslistmodel.h:13
Definition: rawdeviceslistmodel.h:26