Mercurial > libanimone
annotate include/animone/fd.h @ 27:13b647714159
*: megacommit that probably breaks things
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Wed, 02 Oct 2024 23:06:43 -0400 |
parents | 27b988a1048c |
children |
rev | line source |
---|---|
14
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
1 #ifndef ANIMONE_ANIMONE_FD_H_ |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
2 #define ANIMONE_ANIMONE_FD_H_ |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
3 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
4 #include <functional> |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
5 #include <set> |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
6 #include <string> |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
7 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
8 #include "animone/types.h" |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
9 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
10 namespace animone { |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
11 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
12 struct Process; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
13 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
14 namespace internal { |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
15 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
16 struct OpenFile { |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
17 pid_t pid = 0; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
18 std::string path; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
19 }; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
20 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
21 using process_proc_t = std::function<bool(const Process&)>; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
22 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
23 using open_file_proc_t = std::function<bool(const OpenFile&)>; |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
24 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
25 bool GetProcessName(pid_t pid, std::string& name); |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
26 bool EnumerateOpenProcesses(process_proc_t process_proc); |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
27 bool EnumerateOpenFiles(const std::set<pid_t>& pids, open_file_proc_t open_file_proc); |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
28 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
29 } // namespace internal |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
30 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
31 } // namespace animone |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
32 |
27b988a1048c
*: convert all files CRLF -> LF
Paper <paper@paper.us.eu.org>
parents:
2
diff
changeset
|
33 #endif // ANIMONE_ANIMONE_FD_H_ |