libintrovirt v0.57.4
IntroVirt introspection library
Loading...
Searching...
No Matches
ObjectType.hh
Go to the documentation of this file.
1/*
2 * Copyright 2021 Assured Information Security, Inc.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16#pragma once
17
18#include <ostream>
19#include <string>
20
21namespace introvirt {
22namespace windows {
23namespace nt {
24
31enum class ObjectType : int {
32 None = 0,
33 Unknown = 1,
34 Type = 2,
35 Directory = 3,
36 SymbolicLink = 4,
37 Token = 5,
38 Job = 6,
39 Process = 7,
40 Thread = 8,
41 Partition = 9,
42 UserApcReserve = 10,
47 DebugObject = 15,
48 Event = 16,
49 Mutant = 17,
50 Callback = 18,
51 Semaphore = 19,
52 Timer = 20,
53 IRTimer = 21,
54 Profile = 22,
55 KeyedEvent = 23,
56 WindowStation = 24,
57 Desktop = 25,
58 Composition = 26,
59 RawInputManager = 27,
60 CoreMessaging = 28,
61 TpWorkerFactory = 29,
62 Adapter = 30,
63 Controller = 31,
64 Device = 32,
65 Driver = 33,
66 IoCompletion = 34,
68 File = 36,
69 TmTm = 37,
70 TmTx = 38,
71 TmRm = 39,
72 TmEn = 40,
73 Section = 41,
74 Session = 42,
75 Key = 43,
77 ALPCPort = 45,
78 EnergyTracker = 46,
79 PowerRequest = 47,
80 WmiGuid = 48,
81 EtwRegistration = 49,
83 EtwConsumer = 51,
84 CoverageSampler = 52,
85 DmaAdapter = 53,
86 PcwObject = 54,
89 NdisCmState = 57,
100 EventPair = 68,
101 DmaDomain = 69,
102 NetworkNamespace = 70,
103 Port = 71,
104 VirtualKey = 72,
105 WaitablePort = 73,
106
108};
109
116const std::string& to_string(ObjectType index);
117
121std::ostream& operator<<(std::ostream&, ObjectType index);
122
129ObjectType object_type_from_name(const std::string& object_name);
130
131} // namespace nt
132} // namespace windows
133} // namespace introvirt
Interface class for hypervisor events.
Definition Event.hh:43
std::ostream & operator<<(std::ostream &, APPHELPCACHESERVICECLASS val)
ObjectType
Enum for Windows kernel object types.
Definition ObjectType.hh:31
ObjectType object_type_from_name(const std::string &object_name)
Get an ObjectType by name.
const std::string & to_string(APPHELPCACHESERVICECLASS val)
Core IntroVirt classes.
Definition Cr0.hh:20