PLCnext API Documentation 26.0.1.58
SuspendSecurityContext.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6#pragma once
8#include "Arp/Base/Core/PimplPtr.hxx"
9
10namespace Arp::Base::Commons::Security
11{
12
17class ARP_EXPORT SuspendSecurityContext
18{
19public: // Impl forward declaration
20 class Impl;
21
22public: // construction
24
25 // canonical construction/destruction/assignment
27 SuspendSecurityContext(SuspendSecurityContext&& arg)noexcept = delete;
28 SuspendSecurityContext& operator=(const SuspendSecurityContext& arg) = delete;
29 SuspendSecurityContext& operator=(SuspendSecurityContext&& arg)noexcept = delete;
31
32public: // internal operations
33 Impl& GetImpl(void);
34 const Impl& GetImpl(void)const;
35
36private: // Impl usings
37 using Pimpl = PimplPtr<Impl>;
38
39private: // Impl fields
40 Pimpl pimpl;
41};
42
43} // end of namespace Arp::Base::Commons::Security
This class disables a former set SecurityContext on stack.
Definition: SuspendSecurityContext.hpp:18
~SuspendSecurityContext(void)
The default destructor re-enables the suspended security context.
Adapter class to implement PImpl idiom.
Definition: PimplPtr.hxx:15