summaryrefslogtreecommitdiff
path: root/src/debug/inc/processdescriptor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/debug/inc/processdescriptor.h')
-rw-r--r--src/debug/inc/processdescriptor.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/debug/inc/processdescriptor.h b/src/debug/inc/processdescriptor.h
new file mode 100644
index 0000000000..89840b26a8
--- /dev/null
+++ b/src/debug/inc/processdescriptor.h
@@ -0,0 +1,38 @@
+// Licensed to the .NET Foundation under one or more agreements.
+// The .NET Foundation licenses this file to you under the MIT license.
+// See the LICENSE file in the project root for more information.
+//*****************************************************************************
+
+#ifndef _PROCESSCONTEXT_H
+#define _PROCESSCONTEXT_H
+
+struct ProcessDescriptor
+{
+ const static DWORD UNINITIALIZED_PID = 0;
+
+ static ProcessDescriptor Create(DWORD pid, LPCSTR applicationGroupId)
+ {
+ ProcessDescriptor pd;
+ pd.m_Pid = pid;
+ pd.m_ApplicationGroupId = applicationGroupId;
+
+ return pd;
+ }
+
+ static ProcessDescriptor FromCurrentProcess();
+ static ProcessDescriptor FromPid(DWORD pid)
+ {
+ return Create(pid, nullptr);
+ }
+ static ProcessDescriptor CreateUninitialized()
+ {
+ return Create(UNINITIALIZED_PID, nullptr);
+ }
+
+ bool IsInitialized() const { return m_Pid != UNINITIALIZED_PID; }
+
+ DWORD m_Pid;
+ LPCSTR m_ApplicationGroupId;
+};
+
+#endif // _PROCESSCONTEXT_H \ No newline at end of file