1 #ifndef DRCE_READ_PROCESS_DATA
2 #define DRCE_READ_PROCESS_DATA
9 #define EXTERN_C_BEGIN extern "C" {
10 #define EXTERN_C_END }
11 #define EXTERN_C extern "C"
13 #define EXTERN_C_BEGIN
22 #define restrict __restrict__
24 #define likely(x) __builtin_expect(!!(x),1)
25 #define unlikely(x) __builtin_expect(!!(x),0)
26 #define expected(x,y) __builtin_expect((x),(y))
131 #include <sys/types.h>
135 #define PROCPATHLEN 64
173 #define PROC_FILLMEM 0x0001 // read statm
174 #define PROC_FILLSTATUS 0x0020 // read status -- currently unconditional
175 #define PROC_FILLSTAT 0x0040 // read stat -- currently unconditional
176 #define PROC_FILLARG 0x0100 // alloc and fill in `cmdline'
178 #define PROC_PID 0x1000 // process id numbers ( 0 terminated)
179 #define PROC_UID 0x4000 // user id numbers ( length needed )
183 #include <Poco/ThreadPool.h>
184 #include <Poco/Task.h>
185 #include <Poco/TaskManager.h>
186 #include <Poco/Mutex.h>
187 #include <Poco/ScopedLock.h>
188 #include <Poco/Logger.h>
216 DRCEReadProcessData(
const DRCEReadProcessData&);
217 DRCEReadProcessData& operator=(
const DRCEReadProcessData&);
218 static void getChildrenList(pid_t pid, std::vector<pid_t>& children);
225 #endif // DRCE_READ_PROCESS_DATA