ProcessFileDescriptorMapModel.h 876 B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <AK/JsonArray.h>
  3. #include <LibGUI/GModel.h>
  4. class ProcessFileDescriptorMapModel final : public GModel {
  5. public:
  6. enum Column {
  7. FileDescriptor,
  8. Path,
  9. Offset,
  10. Access,
  11. ClassName,
  12. __Count
  13. };
  14. ProcessFileDescriptorMapModel() {}
  15. virtual ~ProcessFileDescriptorMapModel() override {}
  16. virtual int row_count(const GModelIndex& = GModelIndex()) const override;
  17. virtual int column_count(const GModelIndex& = GModelIndex()) const override { return Column::__Count; }
  18. virtual String column_name(int) const override;
  19. virtual ColumnMetadata column_metadata(int) const override;
  20. virtual GVariant data(const GModelIndex&, Role = Role::Display) const override;
  21. virtual void update() override;
  22. void set_pid(pid_t);
  23. private:
  24. JsonArray m_process_fds;
  25. int m_pid { -1 };
  26. };