File indexing completed on 2024-04-28 05:31:34

0001 /*
0002     SPDX-FileCopyrightText: 2007 John Tapsell <tapsell@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #ifndef LSOFWIDGET_H_
0008 #define LSOFWIDGET_H_
0009 
0010 #include <QObject>
0011 #include <QProcess>
0012 #include <QTreeWidget>
0013 
0014 #include "lsofui_export.h"
0015 
0016 struct KLsofWidgetPrivate;
0017 
0018 class LSOFUI_EXPORT KLsofWidget : public QTreeWidget
0019 {
0020     Q_OBJECT
0021     Q_PROPERTY(qlonglong pid READ pid WRITE setPid)
0022 public:
0023     KLsofWidget(QWidget *parent = nullptr);
0024     ~KLsofWidget() override;
0025     bool update();
0026 
0027 private Q_SLOTS:
0028     /* For QProcess *process */
0029     // void error ( QProcess::ProcessError error );
0030     void finished(int exitCode, QProcess::ExitStatus exitStatus);
0031     // void readyReadStandardError ();
0032     // void readyReadStandardOutput ();
0033     // void started ();
0034     qlonglong pid() const;
0035     void setPid(qlonglong pid);
0036 
0037 private:
0038     KLsofWidgetPrivate *const d;
0039 };
0040 
0041 /*  class LsofProcessInfo {
0042     public:
0043     pid_t tpid;
0044     int pidst;
0045     pid_t pid;
0046     pid_t ppid;
0047     pid_t pgrp;
0048     int uid;
0049     QString cmd;
0050     QString login;
0051   };
0052   class LsofFileInfo {
0053     QString file_descriptor;
0054     char access;
0055     int file_struct_share_count;
0056     char device_character_code;
0057     long major_minor;
0058     long file_struct_address;
0059     long file_flags;
0060     long inode;
0061     long link_count;
0062     char lock;
0063     long file_struct_node_id;
0064     long file_offset;
0065     QString protocol_name;
0066     QString stream_module;
0067     QString file_type;
0068     QString tcp_info;
0069   };
0070 */
0071 #endif