Microsoft Information Protection SDK - C++ 1.17
API Reference Documentation for C++
Loading...
Searching...
No Matches
diagnostic_types.h
Go to the documentation of this file.
1/*
2 *
3 * Copyright (c) Microsoft Corporation.
4 * All rights reserved.
5 *
6 * This code is licensed under the MIT License.
7 *
8 * Permission is hereby granted, free of charge, to any person obtaining a copy
9 * of this software and associated documentation files(the "Software"), to deal
10 * in the Software without restriction, including without limitation the rights
11 * to use, copy, modify, merge, publish, distribute, sublicense, and / or sell
12 * copies of the Software, and to permit persons to whom the Software is
13 * furnished to do so, subject to the following conditions :
14 *
15 * The above copyright notice and this permission notice shall be included in
16 * all copies or substantial portions of the Software.
17 *
18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE
21 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24 * THE SOFTWARE.
25 *
26 */
33#ifndef API_MIP_DIAGNOSTIC_TYPES_H_
34#define API_MIP_DIAGNOSTIC_TYPES_H_
35
36#include <stdint.h>
37
38#include "mip/mip_namespace.h"
39
40MIP_NAMESPACE_BEGIN
41
47enum class Pii {
48 None = 0,
49 SmtpAddress = 1,
50 Identity = 2,
51 Uri = 3,
52 Fqdn = 4,
53 EUPI = 5,
54 OII = 6,
55 EUII = 7,
56 CustomerContent = 8,
57};
58
62enum class CombinationPii : uint32_t {
63 None = 0,
64 SmtpAddress = 1 << 0,
65 Identity = 1 << 1,
66 Uri = 1 << 2,
67 Fqdn = 1 << 3,
68 EUPI = 1 << 4,
69 OII = 1 << 5,
70 EUII = 1 << 6,
71 CustomerContent = 1 << 7,
72 All = 0xFFFFFFFF,
73};
74
75inline constexpr enum CombinationPii operator|(const enum CombinationPii selfValue, const enum CombinationPii inValue) {
76 return static_cast<enum CombinationPii>(uint32_t(selfValue) | uint32_t(inValue));
77}
78
79inline constexpr enum CombinationPii operator&(const enum CombinationPii selfValue, const enum CombinationPii inValue) {
80 return static_cast<enum CombinationPii>(uint32_t(selfValue) & uint32_t(inValue));
81}
82
86enum class EventLevel {
87 Basic = 0,
90};
91
96 Double,
97 Int64,
98 String,
99};
100
101MIP_NAMESPACE_END
102
103#endif // API_MIP_DIAGNOSTIC_TYPES_H_
Abstraction for identity.
Definition common_types.h:270
EventLevel
Description of event importance.
Definition diagnostic_types.h:86
@ ImportantServiceData
@ NecessaryServiceData
Pii
Description of PII data, if any.
Definition diagnostic_types.h:47
@ CustomerContent
@ Fqdn
@ EUII
@ EUPI
@ SmtpAddress
@ None
constexpr enum CombinationPii operator|(const enum CombinationPii selfValue, const enum CombinationPii inValue)
Definition diagnostic_types.h:75
CombinationPii
Complete description of PII data types, if any.
Definition diagnostic_types.h:62
constexpr enum CombinationPii operator&(const enum CombinationPii selfValue, const enum CombinationPii inValue)
Definition diagnostic_types.h:79
EventPropertyType
Underlying event property data type.
Definition diagnostic_types.h:95
MIP namespace macros.