Microsoft Information Protection (MIP) SDK for C++: Reference 1.15
Doxygen-generated documentation for MIP SDK written in C++
Loading...
Searching...
No Matches
license_descriptor.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 */
27/**
28 * @brief Defines LicenseDescriptor interface
29 *
30 * @file license_descriptor.h
31 */
32#ifndef API_MIP_PROTECTION_LICENSE_DESCRIPTOR_H_
33#define API_MIP_PROTECTION_LICENSE_DESCRIPTOR_H_
34
35#include <memory>
36#include <string>
37#include <vector>
38
39#include "mip/mip_namespace.h"
40
41MIP_NAMESPACE_BEGIN
42
43/**
44 * @brief The descriptor line item from a license
45 */
47public:
48 /**
49 * @brief Gets the lcid
50 *
51 * @return The LCID
52 */
53 virtual uint32_t GetLCID() const = 0;
54
55 /**
56 * @brief Gets the name
57 *
58 * @return The name
59 */
60 virtual const std::string& GetName() const = 0;
61
62 /**
63 * @brief Gets the description
64 *
65 * @return The description
66 */
67 virtual const std::string& GetDescription() const = 0;
68
69 /** @cond DOXYGEN_HIDE */
71 /** @endcond */
72
73};
74
75/**
76 * @brief The descriptor from a license
77 */
79public:
80 /**
81 * @brief Gets the Id
82 *
83 * @return The Id
84 */
85 virtual const std::string& GetId() const = 0;
86
87 /**
88 * @brief Gets the descriptor items
89 *
90 * @return The descriptor items
91 */
92 virtual const std::vector<std::shared_ptr<LicenseNameAndDescriptionItem>>& GetDescriptorItems() const = 0;
93
94 /** @cond DOXYGEN_HIDE */
95 virtual ~LicenseDescriptor() { }
96 /** @endcond */
97};
98
99MIP_NAMESPACE_END
100#endif // API_MIP_PROTECTION_LICENSE_DESCRIPTOR_H_
The descriptor from a license.
virtual const std::string & GetId() const =0
Gets the Id.
virtual const std::vector< std::shared_ptr< LicenseNameAndDescriptionItem > > & GetDescriptorItems() const =0
Gets the descriptor items.
The descriptor line item from a license.
virtual const std::string & GetDescription() const =0
Gets the description.
virtual uint32_t GetLCID() const =0
Gets the lcid.
virtual const std::string & GetName() const =0
Gets the name.
MIP namespace macros.